.event-meta-info{display:flex;flex-wrap:wrap;gap:20px;align-items:center;padding:15px 0;border-bottom:1px solid #e1e1e1}.event-date,.event-cost,.event-timezone{display:flex;align-items:center;font-size:16px;color:#333}.event-time-separator{margin:0 8px;color:#666}.all-day-badge{background:#0073aa;color:#fff;padding:2px 8px;border-radius:12px;font-size:12px;margin-left:10px}.event-actions-top{margin:20px 0}.dropdown .btn-primary{background:#0073aa;border-color:#0073aa;padding:10px 20px;border-radius:4px}.dropdown .btn-primary:hover{background:#005a87;border-color:#005a87}.dropdown-menu{border:1px solid #ddd;box-shadow:0 2px 8px rgb(0 0 0 / .1)}.dropdown-item{padding:8px 16px;color:#333}.dropdown-item:hover{background:#f8f9fa;color:#0073aa}.tickets-section{background:#fff;border:1px solid #e1e1e1;border-radius:8px;padding:25px;margin:30px 0;box-shadow:0 2px 4px rgb(0 0 0 / .05)}.tickets-container h4{margin:0 0 20px 0;color:#23282d;font-size:18px;font-weight:600;padding-bottom:10px;border-bottom:2px solid #0073aa}.ticket-item{display:flex;justify-content:space-between;align-items:center;padding:20px;border:1px solid #e1e1e1;border-radius:6px;margin-bottom:15px;background:#f9f9f9}.ticket-info{flex:1}.ticket-name{margin:0 0 8px 0;color:#23282d;font-size:16px;font-weight:600}.ticket-description{margin:0 0 12px 0;color:#666;font-size:14px;line-height:1.4}.ticket-meta{display:flex;gap:20px;align-items:center}.ticket-price{font-weight:600;color:#0073aa;font-size:16px}.ticket-availability{color:#666;font-size:14px}.ticket-availability.sold-out{color:#dc3232;font-weight:600}.ticket-actions{display:flex;align-items:center}.quantity-selector{display:flex;align-items:center;border:1px solid #ddd;border-radius:4px;overflow:hidden}.qty-btn{background:#f8f9fa;border:none;padding:8px 12px;cursor:pointer;font-size:16px;font-weight:600;color:#333}.qty-btn:hover{background:#e9ecef}.qty-input{border:none;text-align:center;width:50px;padding:8px;font-size:14px}.tickets-footer{text-align:right;margin-top:20px;padding-top:20px;border-top:1px solid #e1e1e1}.get-tickets-btn{background:#0073aa;border-color:#0073aa;padding:12px 24px;font-weight:600;border-radius:4px}.get-tickets-btn:hover{background:#005a87;border-color:#005a87}.rsvp-section{background:#fff;border:1px solid #e1e1e1;border-radius:8px;padding:25px;margin:30px 0;box-shadow:0 2px 4px rgb(0 0 0 / .05)}.rsvp-container h4{margin:0 0 20px 0;color:#23282d;font-size:18px;font-weight:600;padding-bottom:10px;border-bottom:2px solid #28a745}.rsvp-item{display:flex;justify-content:space-between;align-items:flex-start;padding:20px;border:1px solid #e1e1e1;border-radius:6px;margin-bottom:15px;background:#f9f9f9}.rsvp-info{flex:1;margin-right:20px}.rsvp-name{margin:0 0 8px 0;color:#23282d;font-size:16px;font-weight:600}.rsvp-description{margin:0 0 15px 0;color:#666;font-size:14px;line-height:1.4}.rsvp-stats{display:flex;flex-direction:column;gap:8px}.rsvp-going-count{display:flex;flex-direction:column;align-items:flex-start}.count-number{font-size:24px;font-weight:700;color:#28a745;line-height:1}.count-label{font-size:14px;color:#666;font-weight:500}.rsvp-remaining{font-size:14px;color:#666}.rsvp-actions{display:flex;flex-direction:column;align-items:flex-end;min-width:120px}.rsvp-buttons{display:flex;flex-direction:column;gap:8px;width:100%}.rsvp-going-btn{background:#28a745;border-color:#28a745;color:#fff;padding:10px 20px;font-weight:600;border-radius:4px;width:100%}.rsvp-going-btn:hover{background:#218838;border-color:#1e7e34;color:#fff}.rsvp-cant-go-btn{border-color:#6c757d;color:#6c757d;padding:8px 16px;font-weight:500;border-radius:4px;background:#fff0;width:100%}.rsvp-cant-go-btn:hover{background:#6c757d;border-color:#6c757d;color:#fff}.rsvp-form-container{margin-top:15px;padding:20px;background:#fff;border:1px solid #ddd;border-radius:6px;width:100%}.rsvp-form{margin:0}.rsvp-form-title{margin:0 0 20px 0;color:#23282d;font-size:18px;font-weight:600;text-align:center}.rsvp-form .form-group{margin-bottom:15px}.rsvp-form label{display:block;margin-bottom:5px;font-weight:600;color:#23282d}.rsvp-form .form-control{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.rsvp-form .form-control:focus{border-color:#28a745;outline:none;box-shadow:0 0 0 2px rgb(40 167 69 / .25)}.rsvp-form .form-text{font-size:12px;color:#666;margin-top:4px}.rsvp-form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:15px;border-top:1px solid #eee}.rsvp-cancel-btn{background:#6c757d;border-color:#6c757d;color:#fff;padding:8px 16px;font-weight:500;border-radius:4px}.rsvp-cancel-btn:hover{background:#5a6268;border-color:#545b62;color:#fff}.rsvp-submit-btn{background:#28a745;border-color:#28a745;color:#fff;padding:8px 20px;font-weight:600;border-radius:4px}.rsvp-submit-btn:hover{background:#218838;border-color:#1e7e34;color:#fff}.rsvp-unavailable{text-align:center;padding:10px}.rsvp-closed,.rsvp-full{color:#dc3545;font-weight:600;font-size:14px}.rsvp-item.rsvp-submitted .rsvp-actions{display:none}.rsvp-item.rsvp-submitted .rsvp-stats{background:#d4edda;padding:10px;border-radius:4px;border:1px solid #c3e6cb}.rsvp-item.rsvp-submitted .count-number{color:#155724}.rsvp-item.rsvp-submitted .count-label{color:#155724;font-weight:600}.event-details-section{background:#fff;border:1px solid #e1e1e1;border-radius:8px;padding:30px;margin:30px 0;box-shadow:0 2px 4px rgb(0 0 0 / .05)}.details-column,.organizer-column,.venue-column{padding:0 15px}.details-column h5,.organizer-column h5,.venue-column h5{margin:0 0 20px 0;color:#23282d;font-size:16px;font-weight:600;padding-bottom:10px;border-bottom:1px solid #e1e1e1}.details-column ul,.organizer-column ul,.venue-column ul{margin:0;padding:0}.details-column li,.organizer-column li,.venue-column li{margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f1f1f1}.details-column li:last-child,.organizer-column li:last-child,.venue-column li:last-child{border-bottom:none;margin-bottom:0}.details-column strong,.organizer-column strong,.venue-column strong{color:#23282d;font-weight:600;margin-right:8px}.details-column a,.organizer-column a,.venue-column a{color:#0073aa;text-decoration:none}.details-column a:hover,.organizer-column a:hover,.venue-column a:hover{color:#005a87;text-decoration:underline}.venue-map{border-radius:6px;overflow:hidden;box-shadow:0 2px 4px rgb(0 0 0 / .1)}.event-tags{background:#fff;border:1px solid #e1e1e1;border-radius:8px;padding:25px;margin:30px 0;box-shadow:0 2px 4px rgb(0 0 0 / .05)}.event-tags h5{margin:0 0 15px 0;color:#23282d;font-size:16px;font-weight:600}.tags-list{display:flex;flex-wrap:wrap;gap:10px}.tag-item{background:#0073aa;color:#fff;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:500}@media (max-width:768px){.event-meta-info{flex-direction:column;align-items:flex-start;gap:15px}.ticket-item,.rsvp-item{flex-direction:column;align-items:flex-start;gap:15px}.ticket-meta,.rsvp-meta{flex-direction:column;gap:10px}.tickets-footer{text-align:center}.details-column,.organizer-column,.venue-column{margin-bottom:30px}.details-column:last-child,.organizer-column:last-child,.venue-column:last-child{margin-bottom:0}}.rsvp-success-message{background:#d4edda;color:#155724;padding:15px;border-radius:6px;margin-bottom:20px;border:1px solid #c3e6cb}.ticket-success-message{background:#d1ecf1;color:#0c5460;padding:15px;border-radius:6px;margin-bottom:20px;border:1px solid #bee5eb}.tickets-section.loading,.rsvp-section.loading{opacity:.6;pointer-events:none}.loading-spinner{display:none;width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid #0073aa;border-radius:50%;margin-right:10px}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@media print{.event-actions-top,.tickets-section,.rsvp-section,.tickets-footer,.rsvp-actions{display:none}.event-detail{background:#fff;color:#000}}.rsvp-form .form-control.is-invalid{border-color:#dc3545;box-shadow:0 0 0 2px rgb(220 53 69 / .25)}.rsvp-form .form-control.is-invalid:focus{border-color:#dc3545;box-shadow:0 0 0 2px rgb(220 53 69 / .25)}.rsvp-form-container{animation:slideDown 0.3s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.rsvp-buttons{animation:fadeIn 0.3s ease-out}@keyframes fadeIn{from{opacity:0}to{opacity:1}}