:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.app{color:#1f2937;background:#f5f7fb;min-height:100vh}.navbar{background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:20px 60px;display:flex}.brand{color:#2563eb;align-items:center;gap:10px;font-size:24px;font-weight:700;display:flex}.brand-icon{font-size:28px;line-height:1}.navbar nav{gap:25px;display:flex}.navbar a{color:#374151;font-weight:500;text-decoration:none}.navbar a:hover{color:#2563eb}.hero{text-align:center;color:#fff;background:#2563eb;padding:100px 20px}.hero h2{margin-bottom:20px;font-size:42px}.hero p{max-width:600px;margin:0 auto 30px;font-size:18px}button{color:#2563eb;cursor:pointer;background:#fff;border:none;border-radius:6px;padding:12px 24px;font-size:16px;font-weight:600}button:hover{opacity:.9}.events-section{max-width:1000px;margin:0 auto;padding:60px 20px}.events-section h2{text-align:center;margin-bottom:30px}.event-card{background:#fff;border-radius:10px;max-width:500px;margin:0 auto;padding:25px;box-shadow:0 4px 15px #00000014}.event-card h3{margin-top:0}.home-page{min-height:calc(100vh - 81px)}.hero{text-align:center;color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);justify-content:center;align-items:center;min-height:520px;padding:80px 20px;display:flex}.hero-content{max-width:750px}.hero-badge{background:#ffffff26;border-radius:999px;margin-bottom:20px;padding:8px 16px;font-size:14px;font-weight:600;display:inline-block}.hero h2{margin:0 0 20px;font-size:52px;line-height:1.1}.hero p{max-width:650px;margin:0 auto 32px;font-size:19px;line-height:1.7}.hero button{color:#2563eb;background:#fff;border-radius:8px;padding:14px 28px;font-size:16px;font-weight:700}.home-features{grid-template-columns:repeat(3,1fr);gap:25px;max-width:1100px;margin:0 auto;padding:70px 20px;display:grid}.feature{text-align:center;background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 20px #0000000f}.feature-icon{margin-bottom:15px;font-size:32px}.feature h3{margin-bottom:10px}.feature p{color:#6b7280;margin:0;line-height:1.6}.events-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;margin-top:30px;display:grid}.events-list .event-card{max-width:none;margin:0;transition:transform .2s,box-shadow .2s}.events-list .event-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a}.event-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:28px;box-shadow:0 4px 15px #0000000d}.event-card-icon{background:#eff6ff;border-radius:10px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:15px;font-size:24px;display:flex}.event-label{color:#2563eb;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:13px;font-weight:700;display:inline-block}.event-description{color:#6b7280;margin-bottom:20px;line-height:1.6}.event-info{margin-bottom:22px}.event-button{color:#fff;background:#2563eb;border-radius:7px;padding:11px 18px;font-weight:600;text-decoration:none;transition:background .2s;display:inline-block}.event-button:hover{background:#1d4ed8}.navbar button{color:#fff;background:#2563eb;border-radius:7px;padding:9px 16px;font-size:14px;font-weight:600}.navbar button:hover{opacity:1;background:#1d4ed8}.auth-section{background:#fff;border:1px solid #e5e7eb;border-radius:14px;max-width:420px;margin:80px auto;padding:35px;box-shadow:0 8px 25px #0000000f}.auth-section h2{text-align:center;color:#111827;margin:0 0 25px}.auth-section form{flex-direction:column;gap:16px;display:flex}.auth-section input{box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;padding:13px 14px;font-size:15px}.auth-section input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.auth-section button{color:#fff;background:#2563eb;border-radius:8px;margin-top:5px;padding:13px;font-size:15px;font-weight:700}.auth-section button:hover{opacity:1;background:#1d4ed8}.auth-subtitle{text-align:center;color:#6b7280;margin:-10px 0 25px;font-size:14px;line-height:1.5}.profile-section{max-width:700px;margin:70px auto;padding:20px}.profile-card{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:40px;box-shadow:0 8px 25px #0000000f}.profile-avatar{background:#eff6ff;border-radius:50%;justify-content:center;align-items:center;width:70px;height:70px;margin:0 auto 20px;font-size:32px;display:flex}.profile-card h2{color:#111827;margin-bottom:30px}.profile-info{text-align:left;grid-template-columns:1fr 1fr;gap:20px;display:grid}.profile-info div{background:#f9fafb;border-radius:10px;padding:18px}.profile-info span{color:#6b7280;text-transform:uppercase;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.profile-info p{color:#111827;margin:0;font-size:16px;font-weight:600}.bookings-section{max-width:1000px;margin:0 auto;padding:60px 20px}.bookings-header{text-align:center;margin-bottom:35px}.bookings-header h2{color:#111827;margin-bottom:10px}.bookings-header p{color:#6b7280;margin:0}.bookings-list{flex-direction:column;gap:20px;display:flex}.booking-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;align-items:center;gap:20px;padding:24px;display:flex;box-shadow:0 4px 15px #0000000d}.booking-icon{background:#eff6ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:25px;display:flex}.booking-content{flex:1}.booking-content h3{color:#111827;margin:0 0 10px;font-size:20px}.booking-content p{color:#4b5563;margin:5px 0;font-size:14px}.booking-content span{color:#9ca3af;margin-top:8px;font-size:12px;display:inline-block}.booking-card button{color:#fff;background:#dc2626;border-radius:7px;flex-shrink:0;padding:10px 16px;font-size:14px;font-weight:600}.booking-card button:hover{opacity:1;background:#b91c1c}.empty-bookings{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:14px;max-width:500px;margin:40px auto;padding:45px 30px;box-shadow:0 4px 15px #0000000d}.empty-bookings-icon{margin-bottom:15px;font-size:42px}.empty-bookings h3{color:#111827;margin-bottom:10px}.empty-bookings p{color:#6b7280;margin:0;line-height:1.6}.event-details-section{max-width:850px;margin:0 auto;padding:70px 20px}.event-details-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:40px;box-shadow:0 8px 25px #0000000f}.event-details-card h2{color:#111827;margin:8px 0 18px;font-size:36px}.event-details-description{color:#6b7280;margin-bottom:35px;font-size:17px;line-height:1.7}.event-details-info{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:35px;display:grid}.event-details-info div{background:#f9fafb;border-radius:10px;padding:18px}.event-details-info span{color:#6b7280;text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:600;display:block}.event-details-info p{color:#111827;margin:0;font-size:14px;font-weight:600;line-height:1.5}.booking-button{color:#fff;background:#2563eb;border-radius:8px;width:100%;padding:14px;font-size:16px;font-weight:700}.booking-button:hover{opacity:1;background:#1d4ed8}@media (width<=768px){.navbar{flex-direction:column;gap:15px;padding:18px 20px}.navbar nav{flex-wrap:wrap;justify-content:center;gap:15px}.hero{min-height:450px;padding:60px 20px}.hero h2{font-size:38px}.hero p{font-size:16px}.home-features{grid-template-columns:1fr;padding:45px 20px}.events-section{padding:45px 20px}.profile-section{margin:40px auto}.profile-card{padding:30px 20px}.profile-info{grid-template-columns:1fr}.booking-card{flex-direction:column;align-items:flex-start}.booking-card button{width:100%}.event-details-section{padding:45px 20px}.event-details-card{padding:30px 20px}.event-details-card h2{font-size:30px}.event-details-info{grid-template-columns:1fr}.auth-section{margin:50px 20px}}.session-expired,.login-error{color:#b91c1c;text-align:center;background:#fef2f2;border-radius:8px;margin:-10px 0 20px;padding:12px;font-size:14px}.profile-success{color:#047857;text-align:center;background:#ecfdf5;border-radius:8px;margin:-10px 0 20px;padding:12px;font-size:14px}.profile-error{color:#b91c1c;text-align:center;background:#fef2f2;border-radius:8px;margin:-10px 0 20px;padding:12px;font-size:14px}.profile-edit-button{color:#fff;background:#2563eb;border-radius:8px;width:100%;margin-top:25px;padding:13px;font-size:15px;font-weight:700}.profile-edit-button:hover{opacity:1;background:#1d4ed8}.profile-form{text-align:left;flex-direction:column;gap:20px;display:flex}.profile-field{flex-direction:column;gap:8px;display:flex}.profile-field label{color:#374151;font-size:14px;font-weight:600}.profile-field input{box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;padding:13px 14px;font-size:15px}.profile-field input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.profile-actions{gap:12px;margin-top:5px;display:flex}.profile-save-button,.profile-cancel-button{border-radius:8px;flex:1;padding:13px;font-size:15px;font-weight:700}.profile-save-button{color:#fff;background:#2563eb}.profile-save-button:hover{opacity:1;background:#1d4ed8}.profile-cancel-button{color:#374151;background:#e5e7eb}.profile-cancel-button:hover{opacity:1;background:#d1d5db}.booking-success{color:#047857;text-align:center;background:#ecfdf5;border-radius:8px;margin:25px 0 20px;padding:13px;font-size:14px;font-weight:600}.booking-error{color:#b91c1c;text-align:center;background:#fef2f2;border-radius:8px;margin:25px 0 20px;padding:13px;font-size:14px;font-weight:600}.booking-button:disabled{cursor:not-allowed;background:#93c5fd}.create-event-header{justify-content:space-between;align-items:center;gap:20px;margin:30px 0 20px;display:flex}.create-event-header h3{color:#1f2937;margin:0 0 6px;font-size:22px}.create-event-header p{color:#6b7280;margin:0;font-size:14px}.create-event-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:11px 18px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.create-event-button:hover{background:#1d4ed8;transform:translateY(-1px)}.create-event-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin:0 0 35px;padding:25px;box-shadow:0 4px 14px #0000000f}.create-event-card h3{color:#1f2937;margin:0 0 20px;font-size:20px}.create-event-card form{flex-direction:column;gap:15px;display:flex}.create-event-card input,.create-event-card textarea{box-sizing:border-box;color:#1f2937;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.create-event-card input:focus,.create-event-card textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.create-event-card textarea{resize:vertical;min-height:110px}.create-event-card input::placeholder,.create-event-card textarea::placeholder{color:#9ca3af}.create-event-actions{gap:12px;margin-top:5px;display:flex}.create-event-actions button{cursor:pointer;border:none;border-radius:8px;padding:11px 20px;font-size:14px;font-weight:600;transition:background .2s}.create-event-actions button[type=submit]{color:#fff;background:#2563eb}.create-event-actions button[type=submit]:hover{background:#1d4ed8}.create-event-actions button[type=submit]:disabled{cursor:not-allowed;background:#93c5fd}.create-event-actions button[type=button]{color:#374151;background:#f3f4f6}.create-event-actions button[type=button]:hover{background:#e5e7eb}@media (width<=600px){.create-event-header{flex-direction:column;align-items:flex-start}.create-event-button{width:100%}.create-event-card{padding:18px}.create-event-actions{flex-direction:column}.create-event-actions button{width:100%}}.delete-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.delete-modal{text-align:center;background:#fff;border-radius:14px;width:100%;max-width:430px;padding:30px;animation:.2s ease-out deleteModalAppear;box-shadow:0 20px 50px #0003}.delete-modal-icon{background:#fef2f2;border-radius:50%;justify-content:center;align-items:center;width:55px;height:55px;margin:0 auto 18px;font-size:25px;display:flex}.delete-modal h3{color:#1f2937;margin:0 0 12px;font-size:22px}.delete-modal p{color:#4b5563;margin:0 auto 8px;font-size:15px;line-height:1.6}.delete-modal-warning{color:#dc2626!important;font-size:13px!important}.delete-modal-actions{justify-content:center;gap:12px;margin-top:25px;display:flex}.delete-modal-actions button{cursor:pointer;border:none;border-radius:8px;min-width:120px;padding:11px 18px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.delete-modal-cancel{color:#374151;background:#f3f4f6}.delete-modal-cancel:hover{background:#e5e7eb}.delete-modal-confirm{color:#fff;background:#dc2626}.delete-modal-confirm:hover{background:#b91c1c;transform:translateY(-1px)}.delete-modal-actions button:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes deleteModalAppear{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=600px){.delete-modal{padding:25px 20px}.delete-modal-actions{flex-direction:column-reverse}.delete-modal-actions button{width:100%}}.view-event-button{color:#fff;text-align:center;background:#2563eb;border-radius:8px;margin-top:18px;padding:11px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:background .2s,transform .2s;display:inline-block}.view-event-button:hover{background:#1d4ed8;transform:translateY(-1px)}.view-event-button:active{transform:translateY(0)}.event-search{margin:25px 0 15px}.event-search input{box-sizing:border-box;color:#1f2937;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;padding:13px 16px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.event-search input::placeholder{color:#9ca3af}.event-search input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.events-results-count{color:#6b7280;margin:15px 0;font-size:14px;font-weight:500}.events-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px;display:grid}@media (width<=900px){.events-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.events-grid{grid-template-columns:1fr}}.event-card{box-sizing:border-box;flex-direction:column;height:100%;display:flex}.event-card .view-event-button{align-self:flex-start;margin-top:auto}.event-card{box-sizing:border-box;flex-direction:column;height:100%;transition:transform .2s,box-shadow .2s;display:flex}.event-card .view-event-button{align-self:flex-start;margin-top:auto;transition:background .2s,transform .2s}.event-card .view-event-button:hover{background:#1d4ed8;transform:translateY(-2px)}.events-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:20px;display:grid}.event-card{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;height:100%;padding:25px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 14px #0000000f}.event-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0000001f}.event-card-icon{margin-bottom:10px;font-size:28px}.event-label{color:#2563eb;background:#eff6ff;border-radius:6px;width:fit-content;margin-bottom:8px;padding:5px 9px;font-size:12px;font-weight:600;display:inline-block}.event-card h3{color:#1f2937;margin:0 0 10px;font-size:20px}.event-description{color:#6b7280;margin:0 0 18px;font-size:14px;line-height:1.6}.event-info{margin-top:auto}.event-info p{color:#4b5563;margin:7px 0;font-size:13px}.event-button{color:#fff;text-align:center;background:#2563eb;border-radius:8px;width:fit-content;margin-top:18px;padding:11px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:background .2s,transform .2s;display:inline-block}.event-button:hover{background:#1d4ed8;transform:translateY(-2px)}@media (width<=900px){.events-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.events-grid{grid-template-columns:1fr}.event-card{padding:20px}}
