:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-ink:#17181c;--color-ink-hover:#2b2d34;--color-gold:#d50355;--color-gold-soft:#d503551f;--color-muted:#6b6d76;--color-muted-strong:#45464d;--color-faint:#9a9ba3;--color-border:#d6d7dd;--color-border-soft:#e5e5e8;--color-bg-subtle:#f7f7f8;--color-bg-hover:#f5f5f6;--color-error:#9c2b1f;--color-error-bg:#fdecea;--color-error-border:#f3c6c1;--color-success:#1e7e42;--color-success-bg:#eaf7ee;--color-success-border:#c3e6cd;--font-serif:Georgia, "Times New Roman", serif;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--ink:#171614;--header-bg:#141311;--header-border:#2a2925;--chip-bg:#211f1c;--chip-border:#3a3834;--text-muted-dark:#b9b6ae;--text-faint-dark:#8b8880;--text-onDark:#edebe6;--accent:#e21c6e;--accent-hover:#b8155a;--accent-soft:#e21c6e1f;--page-bg:#f6f4f0;--card-border:#e9e6df;--panel-chip-bg:#f6f4f0;--text-muted:#6e6b63}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}*{box-sizing:border-box}body{color:var(--color-ink);background:#fff;margin:0;font-family:system-ui,Segoe UI,Roboto,sans-serif}#root{min-height:100svh}::selection{background:var(--color-gold-soft);color:var(--color-ink)}.ui-alert{border-radius:var(--radius-md);border:1px solid #0000;padding:10px 14px;font-size:13px}.ui-alert-error{background:var(--color-error-bg);border-color:var(--color-error-border);color:var(--color-error)}.ui-alert-success{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success)}.admin-page-header{margin-bottom:28px}.admin-page-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--color-gold);margin:0 0 4px;font-size:13px;font-weight:600}.admin-page-header h1{font-family:var(--font-serif);color:var(--color-ink);margin:0;font-size:30px}.admin-page-subtitle{color:var(--color-muted);max-width:640px;margin:6px 0 0;font-size:14px}.admin-dashboard-status{color:var(--color-muted)}@keyframes admin-fade-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.admin-stat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.admin-stat-card{border:1px solid var(--color-border-soft);border-top:3px solid var(--color-gold);border-radius:var(--radius-lg);background:#fff;padding:20px;transition:box-shadow .2s,transform .2s,border-color .2s;animation:.5s backwards admin-fade-slide-up;display:block;position:relative;box-shadow:0 1px 2px #17181c08}.admin-stat-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #d503551a}.admin-stat-card-link{color:inherit;cursor:pointer;text-decoration:none}.admin-stat-icon{background:var(--color-gold-soft);width:24px;height:24px;color:var(--color-gold);border-radius:999px;justify-content:center;align-items:center;margin-bottom:10px;transition:transform .2s;display:inline-flex}.admin-stat-icon svg{width:13px;height:13px}.admin-stat-card:hover .admin-stat-icon{transform:scale(1.08)}.admin-stat-value{font-variant-numeric:proportional-nums;color:var(--color-ink);margin:0 0 4px;font-family:system-ui,Segoe UI,Roboto,sans-serif;font-size:36px;font-weight:700}.admin-stat-label{color:var(--color-muted);margin:0;font-size:15px}.admin-dashboard-sources{margin-top:32px}.admin-dashboard-sources h2{font-family:var(--font-serif);color:var(--color-ink);margin:0 0 12px;font-size:20px}.admin-source-breakdown-list{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:#fff;max-height:740px;margin:0;padding:0;list-style:none;overflow-y:auto}.admin-source-breakdown-list li{border-bottom:1px solid var(--color-border-soft);animation:.4s backwards admin-fade-slide-up}.admin-source-breakdown-list li:last-child{border-bottom:none}.admin-source-breakdown-list li a{color:inherit;justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;text-decoration:none;transition:background-color .1s;display:flex}.admin-source-breakdown-list li a:hover{background:var(--color-bg-subtle)}.admin-source-breakdown-name{color:var(--color-ink);font-size:16px}.admin-source-breakdown-count{font-family:var(--font-serif);color:var(--color-gold);font-size:20px;font-weight:700}@media (prefers-reduced-motion:reduce){.admin-stat-card,.admin-source-breakdown-list li{transition:none!important;animation:none!important}}.ui-button{font:inherit;border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;padding:9px 18px;font-size:13px;font-weight:600;transition:background-color .15s,opacity .15s,border-color .15s}.ui-button:disabled{opacity:.55;cursor:not-allowed}.ui-button-primary{background:var(--color-ink);color:#fff}.ui-button-primary:hover:not(:disabled){background:var(--color-ink-hover)}.ui-button-secondary{color:var(--color-ink);border-color:var(--color-border);background:#fff}.ui-button-secondary:hover:not(:disabled){background:var(--color-bg-hover)}.ui-button-danger{color:var(--color-error);border-color:var(--color-error-border);background:#fff}.ui-button-danger:hover:not(:disabled){background:var(--color-error-bg)}.ui-confirm-overlay{z-index:100;background:#17181c80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.ui-confirm-dialog{border-radius:var(--radius-lg);text-align:center;background:#fff;flex-direction:column;align-items:center;width:100%;max-width:1560px;padding:56px 48px;display:flex;box-shadow:0 20px 60px #00000040}.ui-confirm-dialog h2{font-family:var(--font-serif);color:var(--color-ink);margin:0 0 12px;font-size:26px}.ui-confirm-dialog p{color:var(--color-muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin:0 0 28px;font-size:16px;overflow:hidden}.ui-confirm-actions{justify-content:center;gap:10px;display:flex}.ui-badge{letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.ui-badge-neutral{background:var(--color-bg-subtle);color:var(--color-muted-strong)}.ui-badge-gold{background:var(--color-gold-soft);color:var(--color-gold)}.ui-badge-success{background:var(--color-success-bg);color:var(--color-success)}.ui-badge-muted{color:var(--color-faint);border:1px solid var(--color-border);background:0 0}.admin-form-status{color:var(--color-muted);font-size:15px}.admin-form-locked-note{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 16px;font-size:13px;display:flex}.admin-event-form fieldset{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:#fff;grid-template-columns:repeat(4,1fr);align-items:start;gap:18px;margin:0 0 20px;padding:22px;display:grid}@media (width<=900px){.admin-event-form fieldset{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.admin-event-form fieldset{grid-template-columns:1fr}}.admin-event-form legend{font-family:var(--font-serif);color:var(--color-ink);padding:0 6px;font-size:18px}.admin-event-form label{color:var(--color-muted-strong);flex-direction:column;gap:7px;font-size:15px;font-weight:500;display:flex}.admin-form-full{grid-column:1/-1}.admin-event-form input,.admin-event-form select,.admin-event-form textarea{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--color-border);color:var(--color-ink);background:#fafafb;padding:11px 13px;font-size:16px}.admin-event-form input:focus,.admin-event-form select:focus,.admin-event-form textarea:focus{border-color:var(--color-gold);box-shadow:0 0 0 3px var(--color-gold-soft);background:#fff;outline:none}.admin-event-form input[aria-invalid=true]{border-color:var(--color-error)}.admin-event-form input:disabled{opacity:.55}.admin-form-checkbox{flex-direction:row;align-items:center;gap:8px;margin-top:25px}.admin-form-checkbox span{font-size:15px}.admin-form-error{color:var(--color-error);font-size:13px;font-weight:400}.admin-form-actions{justify-content:flex-end;gap:10px;display:flex}.ui-event-modal-overlay{z-index:100;background:#17181c8c;justify-content:center;align-items:center;padding:48px 24px;display:flex;position:fixed;inset:0}.ui-event-modal{background:var(--color-bg-subtle);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:1560px;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 24px 70px #0000004d}.ui-event-modal-header{border-bottom:1px solid var(--color-border-soft);border-top:3px solid var(--color-gold);background:#fff;flex:none;justify-content:space-between;align-items:center;gap:16px;padding:24px 32px 18px;display:flex}.ui-event-modal-header h2{font-family:var(--font-serif);color:var(--color-ink);margin:0;font-size:26px}.ui-event-modal-close{background:var(--color-bg-subtle);width:36px;height:36px;color:var(--color-muted-strong);cursor:pointer;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:22px;line-height:1;transition:background-color .15s,color .15s;display:inline-flex}.ui-event-modal-close:hover{background:var(--color-gold-soft);color:var(--color-gold)}.ui-event-modal-body{flex:1;padding:24px 32px 32px;overflow-y:auto}@media (width<=640px){.ui-event-modal-overlay{padding:0}.ui-event-modal{border-radius:0;height:100vh;max-height:100vh}.ui-event-modal-header,.ui-event-modal-body{padding-left:18px;padding-right:18px}}.ui-toast-stack{z-index:200;flex-direction:column;gap:10px;max-width:460px;display:flex;position:fixed;top:20px;right:20px}.ui-toast{border-radius:var(--radius-md);border:1px solid #0000;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;font-size:17px;font-weight:500;animation:.2s ui-toast-in;display:flex;box-shadow:0 12px 30px #17181c2e}@keyframes ui-toast-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.ui-toast-success{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success)}.ui-toast-error{background:var(--color-error-bg);border-color:var(--color-error-border);color:var(--color-error)}.ui-toast button{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:none;flex:none;padding:0;font-size:18px;line-height:1}.ui-toast button:hover{opacity:1}@media (width<=480px){.ui-toast-stack{max-width:none;top:12px;left:12px;right:12px}}.admin-page-header-row{justify-content:space-between;align-items:flex-end;display:flex}.admin-back-link{color:var(--color-muted-strong);align-items:center;gap:4px;margin-bottom:10px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.admin-back-link:hover{color:var(--color-gold)}.admin-event-filters{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:#fff;flex-wrap:wrap;gap:10px;margin-bottom:20px;padding:16px;display:flex}.admin-event-filters input,.admin-event-filters select{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:#fff;padding:9px 10px;font-size:14px}.admin-event-filters input[type=search]{flex:200px;min-width:160px}.admin-events-status{text-align:center;color:var(--color-muted);flex-direction:column;align-items:center;gap:12px;padding:40px 16px;display:flex}.admin-table-wrapper{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:#fff;overflow-x:auto}.admin-events-count{color:var(--color-muted);margin:0 0 10px;font-size:13px}.admin-table-scroll{max-height:740px;overflow-y:auto}.admin-table-scroll thead th{z-index:1;background:#fff;position:sticky;top:0}.admin-events-load-more{text-align:center;color:var(--color-muted);padding:14px;font-size:13px}.admin-table{border-collapse:collapse;width:100%;font-size:15px}.admin-table th{text-align:left;color:var(--color-faint);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border-soft);white-space:nowrap;padding:12px 10px;font-size:12.5px}.admin-table td{border-bottom:1px solid var(--color-border-soft);color:var(--color-ink);white-space:nowrap;padding:11px 10px;font-size:14px}.admin-table tr:last-child td{border-bottom:none}.admin-table tbody tr{transition:background-color .1s}.admin-table tbody tr:hover{background:var(--color-bg-subtle)}td.admin-table-title{white-space:normal;overflow-wrap:break-word;min-width:180px;max-width:230px;font-size:15px;font-weight:600}.admin-table-museum-event{text-align:center}.admin-table-actions{gap:10px;display:flex}.admin-table-actions a,.admin-table-actions button{font:inherit;color:var(--color-gold);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:600;text-decoration:none}.admin-table-actions a:hover,.admin-table-actions button:hover{text-decoration:underline}.admin-table-danger{color:var(--color-error)!important}@media (width<=640px){.admin-page-header-row{flex-direction:column;align-items:flex-start;gap:12px}.admin-table-scroll{max-height:70svh}.admin-table th,.admin-table td{padding:10px 8px}}.ui-profile-overlay{z-index:100;background:#17181c80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.ui-profile-dialog{border-top:3px solid var(--color-gold);border-radius:var(--radius-lg);background:#fff;flex-direction:column;align-items:center;width:100%;max-width:640px;max-height:90vh;padding:56px;display:flex;overflow-y:auto;box-shadow:0 20px 60px #00000040}.ui-profile-dialog h2{font-family:var(--font-serif);color:var(--color-ink);width:100%;max-width:560px;margin:0 0 24px;font-size:28px}.ui-profile-dialog .ui-alert{width:100%;max-width:560px;margin-bottom:16px;font-size:14px}.ui-profile-form{flex-direction:column;gap:16px;width:100%;max-width:560px;display:flex}.ui-profile-form label{color:var(--color-muted-strong);flex-direction:column;gap:7px;font-size:14px;font-weight:500;display:flex}.ui-profile-form input{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--color-border);color:var(--color-ink);background:#fafafb;padding:11px 13px;font-size:16px}.ui-profile-form input:focus{border-color:var(--color-gold);box-shadow:0 0 0 3px var(--color-gold-soft);background:#fff;outline:none}.ui-profile-form input:disabled{color:var(--color-muted);cursor:not-allowed}.ui-profile-forgot-link{color:var(--color-gold);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:14px;font-weight:600;text-decoration:underline}.ui-profile-password-fields{border-top:1px solid var(--color-border-soft);flex-direction:column;gap:16px;padding-top:14px;display:flex}.ui-profile-actions{justify-content:flex-end;gap:10px;width:100%;max-width:560px;margin-top:6px;display:flex}@media (width<=560px){.ui-profile-dialog{padding:24px}}.admin-layout{background:var(--color-bg-subtle);min-height:100vh}.admin-nav{z-index:50;background:var(--color-ink);color:#fff;position:sticky;top:0;box-shadow:0 1px #17181c08,0 4px 12px #17181c1f}.admin-nav-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin:0 auto;padding:16px 28px;display:grid}.admin-nav-brand{align-items:center;gap:12px;display:flex}.admin-nav-brand-mark{border-radius:var(--radius-sm);background:var(--color-ink);justify-content:center;align-items:center;height:36px;padding:0 10px;display:inline-flex}.admin-nav-brand-logo{width:auto;height:18px;display:block}.admin-nav-brand-name{font-family:var(--font-serif);white-space:nowrap;font-size:19px}.admin-nav-links{background:#ffffff14;border-radius:999px;justify-self:center;gap:2px;padding:4px;display:flex}.admin-nav-links a{color:#ffffffbf;border-radius:999px;padding:8px 20px;font-size:14px;font-weight:600;text-decoration:none;transition:background-color .15s,color .15s}.admin-nav-links a:hover{color:#fff}.admin-nav-link-active{background:var(--color-gold);color:var(--color-ink)!important}.admin-nav-user{justify-self:end;position:relative}.admin-profile-trigger{font:inherit;color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:8px;padding:6px 16px 6px 6px;font-size:14px;font-weight:600;transition:background-color .15s,border-color .15s;display:flex}.admin-profile-trigger:hover{background:#ffffff24}.admin-profile-avatar{background:var(--color-gold);width:26px;height:26px;color:var(--color-ink);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.admin-profile-menu{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);z-index:60;background:#fff;flex-direction:column;min-width:160px;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 30px #17181c2e}.admin-profile-menu button{text-align:left;width:100%;font:inherit;color:var(--color-ink);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;padding:9px 12px;font-size:14px;font-weight:500;display:block}.admin-profile-menu button:hover{background:var(--color-bg-subtle);color:var(--color-gold)}.admin-main{margin:0 auto;padding:32px 32px 64px}@media (width<=700px){.admin-nav-inner{grid-template-columns:1fr;justify-items:center;gap:12px;padding:16px 20px}.admin-nav-links,.admin-nav-user{justify-self:center}}.admin-login-screen{background:#14151a radial-gradient(circle at top,#1d1f27 0%,#101116 65%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.admin-login-logo{width:auto;height:32px;margin-bottom:28px}.admin-login-card{border-radius:var(--radius-lg);background:#fff;width:100%;max-width:380px;padding:40px 36px;box-shadow:0 20px 60px #00000059}.admin-login-title{font-family:var(--font-serif);color:var(--color-ink);margin:0 0 6px;font-size:26px}.admin-login-subtitle{color:var(--color-muted);margin:0 0 28px;font-size:14px}.admin-login-form{flex-direction:column;gap:18px;display:flex}.admin-login-field{color:var(--color-muted-strong);flex-direction:column;gap:6px;font-size:13px;font-weight:500;display:flex}.admin-login-field input{font:inherit;border-radius:var(--radius-md);border:1px solid var(--color-border);color:var(--color-ink);background:#fafafb;padding:11px 12px;transition:border-color .15s,box-shadow .15s}.admin-login-field input:focus{border-color:var(--color-gold);box-shadow:0 0 0 3px var(--color-gold-soft);background:#fff;outline:none}.admin-login-field input[aria-invalid=true]{border-color:var(--color-error)}.admin-login-field input:disabled{opacity:.6;cursor:not-allowed}.admin-login-field-error{color:var(--color-error);font-size:12px;font-weight:400}.admin-login-error{border-radius:var(--radius-md);background:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error);padding:10px 12px;font-size:13px}.admin-login-submit{border-radius:var(--radius-md);background:var(--color-ink);color:#fff;letter-spacing:.02em;cursor:pointer;border:none;margin-top:6px;padding:12px 16px;font-size:14px;font-weight:600;transition:background-color .15s,opacity .15s}.admin-login-submit:hover:not(:disabled){background:var(--color-ink-hover)}.admin-login-submit:disabled{opacity:.65;cursor:not-allowed}.admin-loading-screen{min-height:100vh;color:var(--color-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.ui-breadcrumbs{justify-content:space-between;align-items:center;gap:16px;display:flex}.ui-breadcrumbs ol{flex-wrap:wrap;align-items:center;margin:0;padding:0;font-size:16px;font-weight:500;list-style:none;display:flex}.ui-breadcrumbs li{align-items:center;display:flex}.ui-breadcrumbs a{color:var(--color-muted-strong);text-decoration:none;transition:color .15s}.ui-breadcrumbs a:hover{color:var(--color-gold);text-decoration:underline}.ui-breadcrumbs span[aria-current=page]{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;max-width:360px;font-weight:700;overflow:hidden}.ui-breadcrumbs-separator{color:var(--color-faint);margin:0 8px;font-weight:400}.ui-breadcrumbs-back{font:inherit;color:var(--color-ink);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px 2px;font-size:15px;font-weight:600}.ui-breadcrumbs-back:hover{color:var(--color-gold);text-decoration:underline}.event-detail-status{text-align:center;color:#6b6d76;flex-direction:column;align-items:center;gap:12px;max-width:640px;margin:64px auto;padding:0 20px;font-family:system-ui,sans-serif;display:flex}.event-detail-status button{cursor:pointer;background:#fff;border:1px solid #d6d7dd;border-radius:8px;padding:9px 18px}.event-detail-error{color:#9c2b1f}.event-detail-page{color:#17181c;max-width:1600px;margin:0 auto;padding:48px 20px 64px;font-family:system-ui,Segoe UI,Roboto,sans-serif}.event-detail-page .ui-breadcrumbs{max-width:1140px;margin:0 auto 16px}.event-detail-top{grid-template-columns:minmax(0,1fr) 340px;align-items:stretch;gap:32px;max-width:1140px;margin:0 auto 40px;display:grid}.event-detail-hero{position:relative}.event-detail-image{object-fit:cover;background:#f0f0f2;border-radius:14px;width:100%;height:480px;display:block}.event-detail-image-placeholder{background-color:#0000;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23b8b9c0' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 20 L24 8 L42 20'/%3E%3Cline x1='4' y1='20' x2='44' y2='20'/%3E%3Cline x1='10' y1='20' x2='10' y2='36'/%3E%3Cline x1='18' y1='20' x2='18' y2='36'/%3E%3Cline x1='26' y1='20' x2='26' y2='36'/%3E%3Cline x1='34' y1='20' x2='34' y2='36'/%3E%3Cline x1='4' y1='36' x2='44' y2='36'/%3E%3Cline x1='2' y1='40' x2='46' y2='40'/%3E%3C/svg%3E"),linear-gradient(135deg,#f0f0f2,#e5e5e8);background-position:50%,50%;background-repeat:no-repeat,no-repeat;background-size:64px 64px,cover;background-attachment:scroll;background-origin:padding-box;background-clip:border-box}.event-detail-hero-category{letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#17181cd9;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600;position:absolute;top:20px;left:20px}.event-detail-main{max-width:1140px;margin:0 auto}.event-detail-main h1{margin:0 0 10px;font-family:Georgia,Times New Roman,serif;font-size:36px;line-height:1.2}.event-detail-date{color:var(--color-gold);margin:0 0 16px;font-size:15px;font-weight:600}.event-detail-tags{flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:0;list-style:none;display:flex}.event-detail-tags li{text-transform:uppercase;letter-spacing:.03em;color:#45464d;background:#f5f5f6;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}.event-detail-description{color:#333;max-width:720px;font-size:16px;line-height:1.7}.event-detail-terms{border-top:1px solid #e5e5e8;max-width:720px;margin-top:40px;padding-top:32px}.event-detail-terms h2{margin:0 0 14px;font-family:Georgia,Times New Roman,serif;font-size:20px}.event-detail-terms p{color:#45464d;margin:0 0 10px;font-size:14px;line-height:1.65}.event-detail-terms p:last-child{margin-bottom:0}.event-detail-description p{margin:0 0 16px}.event-detail-description p:last-child{margin-bottom:0}.event-detail-info-card{border:1px solid #e5e5e8;border-top:3px solid var(--color-gold);background:#fff;border-radius:14px;flex-direction:column;height:100%;padding:24px;display:flex;box-shadow:0 8px 24px #17181c0f}.event-detail-info-row{border-bottom:1px solid #eeeef0;padding:14px 0}.event-detail-info-row:first-child{padding-top:0}.event-detail-info-rows>.event-detail-info-row:last-of-type{border-bottom:none;padding-bottom:0}.event-detail-booking{margin-top:auto;padding-top:18px}.event-detail-info-row strong{text-transform:uppercase;letter-spacing:.04em;color:#6b6d76;margin-bottom:5px;font-size:11.5px;display:block}.event-detail-info-row p{color:#17181c;margin:0;font-size:15px;line-height:1.4}.event-detail-info-secondary{color:#6b6d76!important;margin-top:2px!important;font-size:13px!important}.event-detail-info-row a{color:var(--color-gold);font-size:14px}.event-detail-book-now{text-align:center;color:#fff;background:#17181c;border-radius:8px;margin-top:4px;padding:14px 20px;font-size:15px;font-weight:600;text-decoration:none;display:block}.event-detail-book-now:hover{background:#2b2d34}.event-detail-booking-note{color:#6b6d76;text-align:center;margin:10px 0 0;font-size:12px}@media (width<=860px){.event-detail-top{grid-template-columns:1fr}.event-detail-image{height:300px}}.event-card{background:#fff;border:1px solid #e5e5e8;border-radius:10px;flex-direction:column;transition:box-shadow .25s,transform .25s,border-color .25s;display:flex;overflow:hidden}.event-card:hover{border-color:#d6d7dd;transform:translateY(-4px);box-shadow:0 14px 32px #17181c24}.event-card-image-link{text-decoration:none;display:block;position:relative;overflow:hidden}.event-card-image{aspect-ratio:4/3;object-fit:cover;background:#f0f0f2;width:100%;transition:transform .35s;display:block}.event-card:hover .event-card-image{transform:scale(1.06)}.event-card-image-placeholder{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23c9cad1' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 20 L24 8 L42 20'/%3E%3Cline x1='4' y1='20' x2='44' y2='20'/%3E%3Cline x1='10' y1='20' x2='10' y2='36'/%3E%3Cline x1='18' y1='20' x2='18' y2='36'/%3E%3Cline x1='26' y1='20' x2='26' y2='36'/%3E%3Cline x1='34' y1='20' x2='34' y2='36'/%3E%3Cline x1='4' y1='36' x2='44' y2='36'/%3E%3Cline x1='2' y1='40' x2='46' y2='40'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:40px 40px;justify-content:center;align-items:center;display:flex}.event-card-category{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#17181cd9;border-radius:999px;padding:5px 11px;font-size:11.5px;font-weight:600;position:absolute;top:10px;left:10px}.event-card-body{flex-direction:column;flex:1;gap:6px;padding:16px;display:flex}.event-card-date{color:var(--color-gold);text-transform:uppercase;letter-spacing:.03em;margin:0;font-size:13px;font-weight:600}.event-card-title{margin:0;font-family:Georgia,Times New Roman,serif;font-size:18px;line-height:1.3}.event-card-title a{color:#17181c;text-decoration:none;transition:color .15s}.event-card-title a:hover{color:var(--color-gold);text-decoration:underline}.event-card-venue{color:#6b6d76;margin:0;font-size:14px}.event-card-description{color:#45464d;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 0;font-size:14px;display:-webkit-box;overflow:hidden}.event-card-footer{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:12px;display:flex}.event-card-price{color:#17181c;font-size:14px;font-weight:600}.event-card-details-link{color:#fff;white-space:nowrap;background:#17181c;border-radius:6px;padding:8px 15px;font-size:13px;font-weight:600;text-decoration:none;transition:background-color .15s,transform .15s}.event-card-details-link:hover{background:#2b2d34;transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.event-card,.event-card-image,.event-card-title a,.event-card-details-link{transition:none!important;animation:none!important}.event-card:hover,.event-card:hover .event-card-image{transform:none}}.home-page{color:var(--ink);background:var(--page-bg)}.home-hero{text-align:center;max-width:1100px;margin:0 auto;padding:76px 56px 24px}.home-hero h1{font-family:var(--font-serif);color:var(--ink);margin:0 0 16px;font-size:46px;font-weight:700;line-height:1.2}.home-hero-subtitle{max-width:980px;color:var(--text-muted);margin:0 auto;font-size:16.5px;line-height:1.55}.home-section{max-width:1600px;margin:0 auto;padding:24px 20px 48px}.home-section h2{font-family:var(--font-serif);color:var(--ink);margin:0 0 20px;font-size:26px}.home-status{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:12px;padding:48px 16px;display:flex}.home-status-error{color:var(--color-error)}.home-status button,.home-status-link{border:1px solid var(--card-border);cursor:pointer;color:var(--ink);background:#fff;border-radius:8px;padding:9px 18px;font-size:13px;text-decoration:none}.home-status button:hover,.home-status-link:hover{background:var(--color-bg-hover)}.home-page .event-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;display:grid}.event-grid-loading{opacity:.6;transition:opacity .15s}.event-refresh-error{border:1px solid var(--color-error-border);background:var(--color-error-bg);color:var(--color-error);border-radius:8px;align-items:center;gap:12px;margin:0 0 16px;padding:10px 14px;font-size:14px;display:flex}.event-refresh-error p{margin:0}.event-refresh-error button{border:1px solid var(--color-error-border);color:var(--color-error);cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;padding:6px 14px;font-size:13px;font-weight:600}.event-refresh-error button:hover{background:var(--color-error-bg)}.back-to-top{z-index:40;background:var(--ink);color:#fff;cursor:pointer;border:1px solid #ffffff24;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:background-color .15s,transform .15s,box-shadow .15s;animation:.2s back-to-top-in;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 8px 22px #17181c4d}.back-to-top svg{display:block}.back-to-top:hover{background:var(--color-ink-hover);transform:translate(-50%)translateY(-3px);box-shadow:0 12px 26px #17181c5c}@keyframes back-to-top-in{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@media (width<=640px){.back-to-top{bottom:18px}}@media (prefers-reduced-motion:reduce){.back-to-top{transition:none!important;animation:none!important}}.event-results-count{color:var(--text-muted);margin:0 0 16px;font-size:13px}.event-load-more{justify-content:center;margin-top:32px;display:flex}.event-load-more button{border:1px solid var(--card-border);cursor:pointer;color:var(--ink);background:#fff;border-radius:999px;padding:12px 28px;font-size:14px;font-weight:600;transition:background-color .15s,border-color .15s}.event-load-more button:disabled{opacity:.55;cursor:not-allowed}.event-load-more button:not(:disabled):hover{background:var(--color-bg-hover);border-color:var(--accent)}@media (width<=1023px){.home-hero h1{font-size:36px}}@media (width<=767px){.home-hero{padding:48px 20px 40px}.home-hero h1{font-size:30px}.home-hero-subtitle{font-size:15px}}.ui-select{flex:1;min-width:0;position:relative}.ui-select-trigger{width:100%;color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:0;font-size:13.5px;display:flex}.ui-select-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ui-select-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .15s}.ui-select-trigger[aria-expanded=true] .ui-select-chevron{transform:rotate(180deg)}.ui-select-list{z-index:200;border:1px solid var(--card-border);background:#fff;border-radius:10px;max-height:260px;margin:0;padding:6px;list-style:none;overflow-y:auto;box-shadow:0 14px 32px #1716142e}.ui-select-option{color:#171614;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:7px;padding:10px 14px;font-size:13.5px;line-height:1.3;overflow:hidden}.ui-select-option+.ui-select-option{margin-top:2px}.ui-select-option-active{background:var(--accent-soft)}.ui-select-option[aria-selected=true]{font-weight:600}.ui-select-option[aria-selected=true].ui-select-option-active{background:var(--accent);color:#fff}@media (width<=480px){.ui-select-list{max-height:45vh}}.filter-panel{z-index:60;border:1px solid var(--card-border);background:#fff;border-radius:14px;width:360px;position:absolute;top:calc(100% + 12px);right:0;overflow:hidden;box-shadow:0 16px 40px #1716142e}.filter-panel-pointer{border-left:1px solid var(--card-border);border-top:1px solid var(--card-border);background:#fff;width:12px;height:12px;position:absolute;top:-6px;right:15px;transform:rotate(45deg)}.filter-panel-header{color:#171614;border-bottom:1px solid #f0eee8;padding:14px 18px;font-size:14px;font-weight:600}.filter-panel-body{flex-direction:column;gap:10px;max-height:60vh;padding:14px 16px;display:flex;overflow-y:auto}.filter-panel-row,.filter-panel-row-date{background:var(--panel-chip-bg,#f6f4f0);border:1px solid var(--card-border);color:#171614;cursor:pointer;border-radius:9px;align-items:center;gap:10px;min-height:44px;padding:11px 14px;font-size:13.5px;transition:border-color .15s,background-color .15s;display:flex}.filter-panel-row:hover,.filter-panel-row-date:hover{background:#f0ede4;border-color:#d8d4c9}.filter-panel-row:focus-within,.filter-panel-row-date:focus-within{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #e21c6e1f}.filter-panel-row svg{color:var(--text-muted);flex-shrink:0}.filter-panel-date-select{flex:0 auto;min-width:80px}.filter-panel-date-input{color:#171614;font:inherit;border:none;border-left:1px solid var(--card-border);cursor:pointer;background:0 0;flex-shrink:0;max-width:108px;padding:0 0 0 10px;font-size:12.5px}.filter-panel-date-input:focus{outline:none}.filter-panel-date-input::-webkit-calendar-picker-indicator{opacity:.5;cursor:pointer;transform:scale(.85)}.filter-panel-checkbox-row{background:var(--panel-chip-bg,#f6f4f0);border:1px solid var(--card-border);color:#171614;cursor:pointer;border-radius:9px;align-items:center;gap:10px;min-height:44px;padding:11px 14px;font-size:13.5px;display:flex}.filter-panel-checkbox-row input[type=checkbox]{width:17px;height:17px;accent-color:var(--accent);cursor:pointer}.filter-panel-footer{border-top:1px solid #f0eee8;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.filter-panel-reset{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:8px 4px;font-size:13.5px;font-weight:600}.filter-panel-reset:hover{color:#171614;text-decoration:underline}.filter-panel-apply{background:var(--accent);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:9px;padding:10px 22px;font-size:14px;font-weight:600;transition:background-color .15s}.filter-panel-apply:hover{background:var(--accent-hover)}@media (width<=480px){.filter-panel{border-radius:16px 16px 0 0;width:auto;position:fixed;inset:auto 0 0;box-shadow:0 -12px 32px #17161438}.filter-panel-pointer{display:none}.filter-panel-body{max-height:50vh}}.public-layout{flex-direction:column;min-height:100svh;display:flex}.site-header{z-index:50;background:var(--header-bg);border-bottom:3px solid var(--accent);position:sticky;top:0}.site-header-brand-row{justify-content:space-between;align-items:center;height:76px;padding:0 56px;display:flex}.site-brand{color:#fff;align-items:center;gap:14px;text-decoration:none;display:flex}.site-brand-logo{width:auto;height:30px;display:block}.site-header-actions{align-items:center;gap:10px;display:flex}.header-search{background:var(--chip-bg);border:1px solid var(--chip-border);width:360px;height:42px;color:var(--text-onDark);border-radius:10px;flex-shrink:0;align-items:center;gap:10px;padding:9px 16px;transition:border-color .15s;display:flex}.header-search:focus-within{border-color:var(--accent)}.header-search svg{color:var(--text-faint-dark);flex-shrink:0}.header-search input{color:var(--text-onDark);font:inherit;background:0 0;border:none;flex:1;min-width:0;padding:0;font-size:14px}.header-search input:focus,.header-search input:focus-visible{box-shadow:none;outline:none}.header-search input::placeholder{color:var(--text-faint-dark)}.header-search-submit{cursor:pointer;color:var(--text-faint-dark);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.header-search-submit:hover{color:var(--text-onDark)}.header-chip{background:var(--chip-bg);border:1px solid var(--chip-border);height:42px;color:var(--text-onDark);border-radius:10px;flex-shrink:0;align-items:center;gap:8px;padding:0 14px;transition:border-color .15s;display:flex}.header-chip svg{color:var(--text-faint-dark);flex-shrink:0}.header-state-select{width:168px}.header-state-select .ui-select-trigger{font-size:14px}.header-state-select .ui-select-value{max-width:110px}.header-state-select-active{border-color:var(--accent)}.header-filter-trigger-wrap{flex-shrink:0;position:relative}.header-filter-button{background:var(--chip-bg);border:1px solid var(--chip-border);width:42px;min-width:42px;height:42px;color:var(--text-onDark);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;transition:border-color .15s;display:flex;position:relative}.header-filter-button svg{flex-shrink:0}.header-filter-button:hover{border-color:var(--text-faint-dark)}.header-filter-badge{background:var(--accent);border:2px solid var(--header-bg);border-radius:50%;width:9px;height:9px;position:absolute;top:-2px;right:-2px}.site-header-tabs{border-top:1px solid var(--header-border);gap:36px;padding:0 56px;display:flex;overflow-x:auto}.header-tab{color:var(--text-faint-dark);white-space:nowrap;border-bottom:2px solid #0000;flex-shrink:0;padding:15px 2px;font-size:14px;font-weight:500;text-decoration:none;transition:color .15s,border-color .15s}.header-tab:hover{color:var(--text-onDark)}.header-tab-active{color:#fff;border-bottom-color:var(--accent);font-weight:600}.header-tab-active:hover{color:#fff}.site-header-notice{background:var(--chip-bg);color:var(--text-muted-dark);text-align:center;margin:0;padding:10px 56px;font-size:13px}.site-main{flex:1}.site-footer{border-top:1px solid var(--color-border-soft);background:var(--color-bg-subtle);margin-top:48px}.site-footer-inner{flex-wrap:wrap;justify-content:space-between;gap:24px;max-width:1600px;margin:0 auto;padding:40px 20px 20px;display:flex}.site-footer-brand{font-family:var(--font-serif);color:var(--color-ink);font-size:18px;font-weight:600;display:block}.site-footer-inner p{color:var(--color-muted-strong);max-width:360px;margin:8px 0 0;font-size:14px}.site-footer-links{gap:20px;display:flex}.site-footer-links a{color:var(--color-muted-strong);font-size:14px;font-weight:600;text-decoration:none}.site-footer-links a:hover{color:var(--color-ink)}.site-footer-copyright{max-width:1600px;color:var(--color-muted-strong);margin:0 auto;padding:0 20px 24px;font-size:13px}@media (width<=640px){.site-footer-inner{flex-direction:column}}@media (width<=900px){.site-header-brand-row{height:68px;padding:0 20px}.site-header-tabs{padding:0 20px}.site-header-notice{padding:10px 20px}.header-search{width:240px}.header-state-select{width:132px}.header-state-select .ui-select-value{max-width:74px}}@media (width<=640px){.site-header-actions{gap:8px}.header-search{width:180px}.header-search input{text-overflow:ellipsis}.header-state-select{width:108px;padding:0 10px}.header-state-select .ui-select-value{max-width:54px}}@media (width<=400px){.header-search{width:130px}.header-state-select .ui-select-value{display:none}.header-state-select{width:auto;padding:0 10px}}
