:root{--folio-font-display: Charter, "Iowan Old Style", "Hoefler Text", Georgia, serif;--folio-font-mono: ui-monospace, "IBM Plex Mono", "JetBrains Mono", Menlo, monospace;--dr-font-sans: "IBM Plex Sans", system-ui, sans-serif;--dr-font-display: var(--folio-font-display);--tile-radius: 10px;--motion-fast: .14s;--motion-pop: .22s cubic-bezier(.34, 1.56, .64, 1);--bg: #fafaf9;--card: #ffffff;--ink: #1c1b1a;--muted: #6b6964;--soft: #908d86;--line: #e6e4e0;--rule: #d6d4ce;--brand: #c96442;--brand-soft: rgba(201, 100, 66, .13);--brand-tint: rgba(201, 100, 66, .07);--party: #e5297a;--party-soft: rgba(229, 41, 122, .13);--gold: #e8a13a;--party-bg: #17171c;--salsa: #d64b3f;--kizomba: #3f6fb0;--bachata: #b8862f;--latin: #4f8a4a;color-scheme:light}[data-theme=dark]{--bg: #181614;--card: #211e1a;--ink: #ece8e1;--muted: #9c9690;--soft: #6c6862;--line: #2d2a25;--rule: #3c3833;--brand: #e07a55;--brand-soft: rgba(224, 122, 85, .22);--brand-tint: rgba(224, 122, 85, .1);--party: #ff5c9e;--party-soft: rgba(255, 92, 158, .18);--gold: #f4bd5c;--party-bg: #101014;--salsa: #f26b57;--kizomba: #82b0e4;--bachata: #d7a94f;--latin: #79bd72;color-scheme:dark}[data-theme=cursor]{--bg: #1e1e1e;--card: #252526;--ink: #cccccc;--muted: #858585;--soft: #6e6e6e;--line: #3c3c3c;--rule: #454545;--brand: #6eb6ff;--brand-soft: rgba(110, 182, 255, .18);--brand-tint: rgba(110, 182, 255, .1);--party: #ff5c9e;--party-soft: rgba(255, 92, 158, .16);--gold: #dcdcaa;--party-bg: #1a1a1c;--salsa: #f48771;--kizomba: #569cd6;--bachata: #dcdcaa;--latin: #4ec9b0;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 var(--dr-font-sans);letter-spacing:-.005em;transition:background .2s,color .2s}a{color:inherit}.wrap{max-width:820px;margin:0 auto;padding:0 24px 80px}.site-header{padding:24px 0 0;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:0}.site-header-main{min-width:0}.logo-mark{display:inline-block;vertical-align:-5px;margin-right:8px;color:var(--ink)}.site-header h1{font:500 clamp(22px,4.5vw,28px)/1.1 var(--dr-font-display);letter-spacing:-.02em;margin:0}.site-header h1 a{text-decoration:none;display:inline-flex;align-items:center}.site-header h1 .dot{color:var(--brand)}.dancer-mark{color:var(--brand);margin-left:6px;vertical-align:-4px;flex:0 0 auto}.site-header .tag{color:var(--soft);margin:4px 0 0;font-size:12.5px;max-width:34rem}.site-nav{display:flex;gap:0;align-items:center;margin-top:0;padding:8px 0;border-bottom:1px solid var(--line)}.site-nav-link{text-decoration:none;color:var(--muted);font:500 13px/1 var(--dr-font-sans);padding:8px 14px 8px 0;margin-right:6px;border-bottom:1.5px solid transparent;margin-bottom:-1px;transition:color .14s,border-color .14s}.site-nav-link:hover{color:var(--ink)}.site-nav-link.active{color:var(--ink);border-bottom-color:var(--brand)}.site-nav-spacer{flex:1 1 auto}.site-header-actions{display:flex;flex-wrap:wrap;gap:4px;align-items:center;justify-content:flex-end;flex:0 0 auto}.chrome-icon{display:block}.chrome-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer;text-decoration:none;transition:background .14s,border-color .14s,color .14s}.chrome-icon-btn:hover{background:var(--card);border-color:var(--line);color:var(--ink)}.tooltip-host{display:inline-flex;align-items:center;flex:0 0 auto}.ui-tooltip{position:fixed;z-index:10000;transform:translate(-50%);padding:6px 10px;border-radius:6px;border:1px solid var(--line);background:var(--card);color:var(--ink);box-shadow:0 8px 24px #00000047;font:500 12px/1.25 var(--dr-font-sans);white-space:nowrap;pointer-events:none}.ui-tooltip--top{transform:translate(-50%,-100%)}.site-chrome-btn,.theme-btn{border:1px solid transparent;background:transparent;color:var(--muted);border-radius:4px;padding:6px 11px;font:500 12.5px/1 var(--dr-font-sans);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:background .14s,border-color .14s,color .14s}.site-chrome-btn:hover,.theme-btn:hover{background:var(--card);border-color:var(--line);color:var(--ink)}.filters{position:sticky;top:0;background:var(--bg);padding:16px 0 12px;z-index:5;border-bottom:1px solid var(--line)}.filters-toolbar{display:flex;gap:8px;align-items:center;margin-bottom:10px}.filters--bar{padding:16px 0 10px;border-bottom:0}.filters--bar .filters-toolbar{margin-bottom:0}.filters-search{flex:1 1 auto;min-width:0;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:8px 14px;font:400 13px/1.2 var(--dr-font-sans);transition:border-color var(--motion-fast)}.filters-search:focus{outline:none;border-color:var(--party)}.filters-search::placeholder{color:var(--soft)}.calendar-sort{display:inline-flex;flex:0 0 auto;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:var(--card)}.calendar-sort-btn{border:none;background:transparent;color:var(--muted);padding:7px 12px;font:500 11px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;white-space:nowrap;transition:color var(--motion-fast),background var(--motion-fast)}.calendar-sort-btn.active{color:var(--party);background:var(--party-soft)}.filters-sort{display:flex;align-items:center;gap:10px;margin-bottom:12px}.filters-sort-label{flex:0 0 auto;font:500 10.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.filters-toggle{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;border:1px solid var(--line);background:var(--card);color:var(--muted);border-radius:999px;padding:9px 14px;font:500 11px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast)}.filters-toggle.active{color:var(--party);border-color:color-mix(in oklab,var(--party) 55%,var(--line));background:var(--party-soft)}.filters-body{display:none;padding:4px 0 14px}.filters-body.is-open{display:block}.filters-toggle-count{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 5px;border-radius:999px;background:var(--party);color:#fff;font:600 10px/1 var(--dr-font-sans);letter-spacing:0}.chiprow{display:flex;flex-wrap:wrap;gap:6px}.chiprow+.chiprow{margin-top:8px}.chip{flex:0 0 auto;border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:4px 10px;font:500 10.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;display:flex;gap:6px;align-items:center;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast)}.chip .dot{width:6px;height:6px;border-radius:50%;background:var(--c);flex:0 0 auto}.chip:hover{background:var(--card);color:var(--ink)}.chip.active{color:var(--party);border-color:color-mix(in oklab,var(--party) 60%,var(--line));background:var(--party-soft)}.filters-past{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}.calendar-past-btn{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:4px 12px;font:500 10.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast)}.calendar-past-btn:hover:not(:disabled){background:var(--card);color:var(--ink)}.calendar-past-btn.active{color:var(--brand);border-color:var(--brand);background:var(--brand-tint)}.calendar-past-btn:disabled{opacity:.6;cursor:wait}.date-strip-wrap{position:sticky;z-index:4;display:flex;align-items:stretch;gap:6px;background:var(--bg);padding:8px 0 10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.date-strip-arrow{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);cursor:pointer;transition:border-color var(--motion-fast),opacity var(--motion-fast)}.date-strip-arrow:hover:not(:disabled){border-color:var(--rule)}.date-strip-arrow:disabled{opacity:.3;cursor:default}@media(hover:none){.date-strip-arrow{display:none}}.date-strip{position:relative;flex:1 1 auto;min-width:0;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;padding:0 0 2px;margin:0}.date-strip::-webkit-scrollbar{display:none}.date-chip{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:58px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--muted);padding:7px 10px;cursor:pointer;transition:border-color var(--motion-fast),color var(--motion-fast),background var(--motion-fast)}.date-chip:hover{color:var(--ink);border-color:var(--rule)}.date-chip-dow{font:500 10.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.date-chip-count{font:500 12px/1 var(--dr-font-sans);font-feature-settings:"tnum";color:var(--soft)}.date-chip--today{border-color:color-mix(in oklab,var(--party) 50%,var(--line));color:var(--party)}.date-chip--today .date-chip-count{color:var(--party)}.date-chip--active,.date-chip--active:hover{border-color:var(--party);background:var(--party);color:#fff;opacity:1}.date-chip--active .date-chip-count{color:#fff}.date-chip--past{opacity:.6}.day{margin:34px 0 12px;display:flex;align-items:baseline;gap:10px}.day-tonight{display:inline-block;padding:2px 12px;border-radius:999px;background:var(--party-soft);color:var(--party)}.day-section--today .day:after{background:color-mix(in oklab,var(--party) 35%,var(--rule))}.day b{font:500 1.05rem/1.2 var(--dr-font-display);letter-spacing:-.015em}.day span{color:var(--muted);font:400 10.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.1em}.day:after{content:"";flex:1;height:1px;background:var(--rule)}.day-past-label{margin-left:8px;font:500 9.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--soft)}.day-section--past .day b{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.tile-wrap{position:relative;display:flex}.tile{position:relative;flex:1;border:1px solid var(--line);border-left:2px solid var(--c);border-radius:var(--tile-radius);padding:16px 16px 14px;min-height:168px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;background:var(--card);transition:border-color var(--motion-fast),background var(--motion-fast),transform var(--motion-pop),box-shadow var(--motion-pop)}.tile:hover{border-color:color-mix(in oklab,var(--c) 45%,var(--line));background:color-mix(in oklab,var(--c) 4%,var(--card));transform:translateY(-3px);box-shadow:0 12px 28px -14px color-mix(in oklab,var(--c) 60%,transparent)}.tile--past{opacity:.72;border-left-color:var(--rule)}.tile--past:hover{opacity:.88;border-left-color:var(--muted)}.tile-actions{position:absolute;top:8px;right:8px;display:flex;gap:4px;z-index:2}.tile-action{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--line);border-radius:50%;background:color-mix(in oklab,var(--card) 82%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--muted);cursor:pointer;opacity:0;transition:opacity var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast)}.tile-wrap:hover .tile-action,.tile-action:focus-visible,.tile-action.is-saved{opacity:1}.tile-action:hover{color:var(--party);border-color:color-mix(in oklab,var(--party) 45%,var(--line));background:var(--card)}.tile-action.is-saved{color:var(--party);border-color:color-mix(in oklab,var(--party) 45%,var(--line))}@media(hover:none){.tile-action{opacity:1}}.tile .trow{display:flex;justify-content:space-between;align-items:center;gap:10px}.tile .time{font:500 1.2rem/1 var(--dr-font-display);letter-spacing:-.015em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kind{font:500 10px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.1em;padding:3px 8px;border-radius:999px;border:1px solid color-mix(in oklab,var(--c) 50%,var(--line));background:transparent;color:var(--c);display:inline-flex;align-items:center;gap:6px}.intl-badge{font-size:9px;letter-spacing:.06em;padding:2px 6px;border-radius:999px;background:color-mix(in oklab,var(--c) 14%,transparent);color:var(--c)}.verify-mark{display:inline-flex;align-items:center;gap:4px;margin-top:10px;font:500 10px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.08em}.verify-mark--yes{padding:3px 7px;border-radius:999px;background:var(--brand-soft);color:var(--brand)}.tile .verify-mark+.name{margin-top:6px}.detail-body .verify-mark{margin:0 0 0 8px;vertical-align:middle}.detail-unverified-hint{margin:12px 0 0;color:var(--muted);font:400 12.5px/1.5 var(--dr-font-sans)}.kind--party{--c: var(--party)}.tile .name{font:500 1rem/1.35 var(--dr-font-display);margin:10px 0 4px}.tile .venue{color:var(--soft);font-size:12.5px;line-height:1.45}.tile-desc{margin:8px 0 0;color:var(--muted);font:400 12.5px/1.5 var(--dr-font-sans);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tile .tfoot{display:flex;justify-content:space-between;align-items:center;margin-top:12px;gap:8px;padding-top:10px;border-top:1px solid var(--line)}.fams{display:flex;gap:10px;flex-wrap:wrap}.fam{font:500 10px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);display:inline-flex;gap:5px;align-items:center}.fam:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c)}.price{font:500 11.5px/1 var(--folio-font-mono);color:var(--ink);font-feature-settings:"tnum"}.detail{margin-top:20px}.back{display:inline-block;color:var(--muted);font:500 12.5px/1 var(--dr-font-sans);text-decoration:none;margin:0 0 16px}.back:hover{color:var(--ink)}.detail-card{border:1px solid var(--line);border-left:3px solid var(--c);border-radius:var(--tile-radius);overflow:hidden;background:var(--card)}.detail-hero{position:relative;display:block;width:100%;aspect-ratio:16 / 6;max-height:340px;background:var(--party-bg);border-bottom:3px solid var(--c)}.detail-hero-img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.detail-hero--fallback{aspect-ratio:16 / 6;background:#fdf3dd;overflow:hidden}.detail-hero--fallback .detail-hero-img{display:none}.event-banner-svg{display:block;width:100%;height:100%;object-fit:cover}.detail-body{padding:24px 24px 4px}.detail-card h2{font:500 clamp(24px,5vw,32px)/1.15 var(--dr-font-display);letter-spacing:-.02em;margin:12px 0 4px}.detail-when-band{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;padding:14px 16px;margin:16px 0 0;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.detail-when{font:500 1.05rem/1.3 var(--dr-font-display);font-feature-settings:"tnum"}.detail-recurring{margin-left:10px;font:500 11px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--party)}.detail-price{font:600 1.15rem/1 var(--dr-font-display);color:var(--gold);font-feature-settings:"tnum";white-space:nowrap}.detail-venue{color:var(--soft);margin-top:8px;font-size:13.5px;padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.detail-venue a{color:var(--brand);text-decoration:none}.detail-venue a:hover{text-decoration:underline}.detail-venue+.detail-venue{margin-top:6px;border-top:none;border-top-left-radius:0;border-top-right-radius:0}.detail-venue:has(+.detail-venue){margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.school-events{margin-top:28px}.school-events-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.detail-contact{margin:14px 0 0;display:grid;gap:4px;font-size:13.5px}.detail-contact-row{display:flex;gap:8px}.detail-contact-row dt{color:var(--soft);min-width:84px;font-weight:500}.detail-contact-row dd{min-width:0;overflow-wrap:anywhere;margin:0;color:var(--ink)}.detail-contact-row dd a{color:var(--brand);text-decoration:none}.detail-contact-row dd a:hover{text-decoration:underline}.detail-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;align-items:center}.detail-level{font:500 10px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.1em;padding:3px 9px;border-radius:999px;border:1px solid color-mix(in oklab,var(--c) 45%,var(--line));color:var(--c)}.detail-about{margin:18px 0 0;font:400 14.5px/1.6 var(--dr-font-sans);color:var(--ink);white-space:pre-line}.detail-about h3{margin:0 0 6px;font:500 13px/1.3 var(--dr-font-display);color:var(--muted)}.detail-map-block{margin:18px 0 0}.event-map-placeholder{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:120px;border:1px dashed var(--rule);border-radius:8px;background:radial-gradient(120% 160% at 50% 0%,color-mix(in oklab,var(--c) 12%,transparent),transparent 70%),var(--bg);color:var(--muted);font:500 12.5px/1 var(--dr-font-sans);cursor:pointer;transition:border-color var(--motion-fast),color var(--motion-fast)}.event-map-placeholder:hover{border-color:color-mix(in oklab,var(--c) 45%,var(--rule));color:var(--ink)}.event-map-pin{font-size:18px}.event-map{border-radius:8px;overflow:hidden;border:1px solid var(--line)}.event-map iframe{display:block;width:100%;height:220px;border:0}.detail-organizer{min-width:0;overflow-wrap:anywhere;margin:20px 0 0;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.detail-organizer-title{margin:0 0 8px;font:500 12px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.detail-organizer-contact{margin:0;overflow-wrap:anywhere;word-break:break-word;font-size:13.5px;color:var(--ink)}.detail-contact{margin-top:10px}.detail-actionbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:22px;padding:16px 24px 22px;border-top:1px solid var(--line);background:color-mix(in oklab,var(--c) 3%,var(--card))}.actions{margin-top:22px;display:flex;gap:8px;flex-wrap:wrap}.btn{border:1px solid transparent;background:transparent;color:var(--ink);border-radius:6px;padding:9px 14px;font:500 12.5px/1 var(--dr-font-sans);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.btn:hover{background:var(--card);border-color:var(--line)}.btn.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn.primary:hover{opacity:.92}.btn.party{background:var(--party);color:#fff;border-color:var(--party)}.btn.party:hover{background:color-mix(in oklab,var(--party) 88%,black);border-color:color-mix(in oklab,var(--party) 88%,black);transform:translateY(-1px)}.btn.btn-icon{padding:9px 12px}.btn.is-saved{color:var(--party);border-color:color-mix(in oklab,var(--party) 45%,var(--line))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.font-picker-compact{display:inline-flex}.font-picker-select,.admin-topbar .font-picker-select{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:4px;padding:6px 10px;font:500 12.5px/1 var(--dr-font-sans);cursor:pointer;max-width:11rem}.admin-topbar .font-picker-select{border-color:var(--folio-border);background:var(--folio-surface);color:var(--folio-fg);max-width:9.5rem}.settings-page{margin-top:8px}.settings-card{border:1px solid var(--line);border-radius:6px;padding:24px 22px;background:var(--card)}.settings-card h2{font:500 1.5rem/1.2 var(--folio-font-display);letter-spacing:-.015em;margin:0 0 8px}.settings-lead{color:var(--muted);margin:0 0 22px;font-size:13.5px}.settings-group+.settings-group{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.settings-group h3{font:500 1rem/1.3 var(--folio-font-display);margin:0 0 6px}.settings-hint{color:var(--muted);font-size:13px;margin:0 0 12px}.settings-font-list,.settings-theme-list{display:grid;gap:8px}.settings-font-option,.settings-theme-option{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:6px;padding:12px 14px;cursor:pointer;background:var(--bg);transition:border-color .14s,background .14s}.settings-font-option:has(input:checked),.settings-theme-option:has(input:checked){border-color:var(--brand);background:var(--brand-tint)}.settings-font-option input,.settings-theme-option input{accent-color:var(--brand);margin-top:3px;flex:0 0 auto;width:auto}.settings-font-option span{font-size:1rem;font-weight:500;flex:1 1 auto;min-width:0}.settings-theme-copy{display:grid;gap:3px;flex:1 1 auto;min-width:0}.settings-theme-name{font:500 14px/1.3 var(--dr-font-sans);color:var(--ink)}.settings-theme-hint{font:400 12.5px/1.4 var(--dr-font-sans);color:var(--muted)}.font-picker{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.font-picker-label{font-weight:500;font-size:.9rem}.settings-link{color:var(--muted);font-size:.86rem;text-decoration:none}.settings-link:hover{color:var(--ink)}.admin-shell .settings-page{margin-top:0}.admin-shell .settings-card{border-color:var(--folio-border);background:var(--folio-surface);margin-top:0}.admin-shell .settings-group+.settings-group{border-top-color:var(--folio-border)}.admin-shell .settings-group h3{font:500 1rem/1.3 var(--folio-font-display);color:var(--folio-fg)}.admin-shell .settings-hint,.admin-shell .settings-lead{color:var(--folio-muted)}.admin-shell .settings-font-option,.admin-shell .settings-theme-option{border-color:var(--folio-border);background:var(--folio-bg)}.admin-shell .settings-font-option:has(input:checked),.admin-shell .settings-theme-option:has(input:checked){border-color:var(--folio-brand);background:var(--folio-brand-tint)}.admin-shell .settings-theme-name{color:var(--folio-fg)}.admin-shell .settings-theme-hint{color:var(--folio-muted)}.admin-shell .settings-page .back{color:var(--folio-muted);margin-bottom:16px}.admin-shell .settings-page .back:hover{color:var(--folio-fg)}.admin-shell{--folio-bg: var(--bg);--folio-surface: var(--card);--folio-fg: var(--ink);--folio-muted: var(--muted);--folio-soft: var(--soft);--folio-border: var(--line);--folio-rule: var(--rule);--folio-brand: var(--brand);--folio-brand-soft: var(--brand-soft);--folio-brand-tint: var(--brand-tint);--folio-green: #4f7d4a;--folio-green-soft: rgba(79, 125, 74, .12);--folio-red: #b34c3a;--folio-red-soft: rgba(179, 76, 58, .1);--folio-font-display: Charter, "Iowan Old Style", "Hoefler Text", Georgia, serif;--folio-font-sans: var(--dr-font-sans);--folio-font-mono: ui-monospace, "IBM Plex Mono", "JetBrains Mono", Menlo, monospace;min-height:100vh;max-width:100%;overflow-x:clip;background:var(--folio-bg);color:var(--folio-fg);font:13.5px/1.55 var(--folio-font-sans);letter-spacing:-.005em;transition:background .2s,color .2s}[data-theme=dark] .admin-shell{--folio-green: #7fb27a;--folio-green-soft: rgba(127, 178, 122, .18);--folio-red: #d97565;--folio-red-soft: rgba(217, 117, 101, .15)}[data-theme=cursor] .admin-shell{--folio-green: #4ec9b0;--folio-green-soft: rgba(78, 201, 176, .15);--folio-red: #f48771;--folio-red-soft: rgba(244, 135, 113, .15)}.admin-topbar{height:48px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 24px;border-bottom:1px solid var(--folio-border);background:var(--folio-bg)}.admin-topbar-start,.admin-topbar-end{display:flex;align-items:center;gap:4px;min-width:0}.admin-topbar-start{gap:12px}.admin-topbar-vrule{width:1px;height:16px;background:var(--folio-border);flex:0 0 auto}.admin-wordmark{font:500 15px/1 var(--folio-font-display);letter-spacing:-.02em;text-decoration:none;color:var(--folio-fg);white-space:nowrap}.admin-wordmark-dot{color:var(--folio-brand)}.admin-topbar-eyebrow{font:400 10.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--folio-muted)}.admin-topbar-end .chrome-icon-btn{color:var(--folio-muted)}.admin-topbar-end .chrome-icon-btn:hover{background:var(--folio-surface);border-color:var(--folio-border);color:var(--folio-fg)}.admin-topbar-link,.admin-theme-btn{border:1px solid transparent;background:transparent;color:var(--folio-muted);border-radius:4px;padding:6px 11px;font:500 12.5px/1 var(--folio-font-sans);cursor:pointer;text-decoration:none;transition:background .14s,border-color .14s,color .14s}.admin-topbar-link:hover,.admin-theme-btn:hover{background:var(--folio-surface);border-color:var(--folio-border);color:var(--folio-fg)}.admin-tabs{display:flex;align-items:center;gap:2px;padding:8px 24px;border-bottom:1px solid var(--folio-border);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.admin-tabs .admin-tab-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 auto;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--folio-muted);text-decoration:none;transition:background .14s,border-color .14s,color .14s}.admin-tabs .admin-tab-icon:hover{background:var(--folio-surface);border-color:var(--folio-border);color:var(--folio-fg)}.admin-tabs .admin-tab-icon.active{background:var(--folio-brand-tint);border-color:color-mix(in oklab,var(--folio-brand) 35%,var(--folio-border));color:var(--folio-brand)}.admin-main{width:100%;max-width:820px;min-width:0;margin:0 auto;padding:48px 24px 80px;box-sizing:border-box}.admin-main:has(.admin-page-sources),.admin-main:has(.admin-page-classes),.admin-main:has(.admin-page-events),.admin-main:has(.admin-page-venues){max-width:min(1200px,100%)}.admin-main--centered{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 48px);padding-top:24px;padding-bottom:24px}.admin-eyebrow{margin:0 0 8px;font:400 10.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--folio-muted)}.admin-page-title{margin:0 0 24px;font:500 24px/1.2 var(--folio-font-display);letter-spacing:-.015em}.admin-page-head{margin-bottom:24px}.admin-page-head .admin-page-title{margin-bottom:0}.admin-page-head-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.admin-page-head-text .meta{margin:8px 0 0}.admin-login-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.admin-login-head .admin-page-title{margin-bottom:0}.admin-help-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--folio-border);background:var(--folio-surface);color:var(--folio-muted);border-radius:999px;padding:6px 12px;font:500 12px/1 var(--folio-font-sans);cursor:pointer;transition:border-color .14s,color .14s,background .14s}.admin-help-btn:hover{color:var(--folio-fg);border-color:var(--folio-rule)}.admin-help-btn-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;border:1px solid currentColor;font-size:11px;font-weight:700;line-height:1}.admin-help-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px;overflow-y:auto;background:#0c0b0a73}[data-theme=dark] .admin-help-overlay{background:#0000009e}[data-theme=cursor] .admin-help-overlay{background:#000000b8}.admin-help-modal{width:min(640px,100%);max-height:calc(100vh - 96px);overflow:auto;border:1px solid var(--folio-border);border-radius:8px;background:var(--folio-surface);color:var(--folio-fg);box-shadow:0 24px 48px -24px #00000059}.admin-help-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 16px;position:sticky;top:0;background:var(--folio-surface);border-bottom:1px solid var(--folio-border);z-index:1}.admin-help-modal-head .admin-page-title{margin-bottom:0}.admin-help-close{border:1px solid var(--folio-border);background:transparent;color:var(--folio-muted);border-radius:4px;width:32px;height:32px;font-size:22px;line-height:1;cursor:pointer}.admin-help-close:hover{color:var(--folio-fg);border-color:var(--folio-rule)}.admin-help-modal-body{padding:18px 22px 24px}.admin-school-edit-modal{width:min(720px,100%)}.admin-school-edit-modal .admin-help-modal-body{display:grid;gap:12px}.admin-scrape-steps{list-style:none;margin:0;padding:0;display:grid;gap:10px}.admin-scrape-steps li{display:flex;align-items:center;gap:10px;font:400 14px/1.4 var(--folio-font-sans);color:var(--folio-muted)}.admin-scrape-steps li.done{color:var(--folio-fg)}.admin-scrape-steps li.active{color:var(--folio-fg);font-weight:600}.admin-scrape-spinner{width:14px;height:14px;border:2px solid var(--folio-border);border-top-color:var(--folio-accent, var(--folio-fg));border-radius:50%;animation:admin-scrape-spin .8s linear infinite}@keyframes admin-scrape-spin{to{transform:rotate(360deg)}}.admin-help-overview{margin:0 0 20px;font:400 14px/1.55 var(--folio-font-sans);color:var(--folio-fg)}.admin-help-section+.admin-help-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--folio-border)}.admin-help-section h3{margin:0 0 12px;font:500 14px/1.3 var(--folio-font-display)}.admin-help-list{margin:0}.admin-help-item{margin:0 0 14px}.admin-help-item dt{margin:0 0 4px;font:600 13px/1.35 var(--folio-font-sans);color:var(--folio-fg)}.admin-help-item dd{margin:0;font:400 13px/1.5 var(--folio-font-sans);color:var(--folio-muted)}.admin-alias-list{margin:0;padding-left:18px}.admin-alias-list li+li{margin-top:4px}.admin-shell h2{margin:0 0 8px;font:500 24px/1.2 var(--folio-font-display);letter-spacing:-.015em}.admin-shell h3{margin:0 0 8px;font:500 17px/1.3 var(--folio-font-display)}.admin-login{width:100%;max-width:360px;display:flex;flex-direction:column;gap:14px;padding:28px 24px;border:1px solid var(--folio-border);border-radius:6px;background:var(--folio-surface)}.admin-login label{display:flex;flex-direction:column;gap:6px;font:500 12.5px/1 var(--folio-font-sans);color:var(--folio-muted)}.admin-shell input:not([type=radio]):not([type=checkbox]),.admin-shell select,.admin-shell textarea{border:1px solid var(--folio-border);background:var(--folio-surface);color:var(--folio-fg);border-radius:4px;padding:7px 10px;font:400 13px/1.4 var(--folio-font-sans);width:100%;transition:border-color .14s}.admin-shell input[type=radio],.admin-shell input[type=checkbox]{width:auto;margin:0;padding:0;border:none;background:transparent;accent-color:var(--folio-brand);flex:0 0 auto}.admin-shell input:not([type=radio]):not([type=checkbox]):focus,.admin-shell select:focus,.admin-shell textarea:focus{outline:none;border-color:var(--folio-brand)}.admin-shell input.coord{width:84px;margin-right:6px}.admin-card{border:1px solid var(--folio-border);border-radius:6px;padding:22px 18px 18px;margin:20px 0 0;background:var(--folio-surface)}.admin-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--folio-border)}.admin-fields{display:grid;gap:14px;margin:0}.admin-fields label{font:500 12.5px/1 var(--folio-font-sans);color:var(--folio-muted);display:grid;gap:6px}.admin-actions{display:flex;gap:10px;align-items:center;margin-top:16px;flex-wrap:wrap}.admin-models-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px;padding:10px 14px;border:1px solid var(--folio-border);border-radius:6px;background:var(--folio-surface)}.admin-toolbar{display:flex;gap:6px;align-items:center;margin:0 0 16px;flex-wrap:wrap}.admin-toolbar.admin-query-toolbar{display:grid;flex-wrap:nowrap}.admin-toolbar-sep{width:1px;align-self:stretch;margin:2px 6px;background:var(--folio-border, var(--line))}.admin-schools-toolbar{gap:10px}.admin-schools-search{flex:1 1 220px;min-width:180px;max-width:420px}.admin-schools-add{display:flex;gap:6px;align-items:center;flex:1 1 280px}.admin-schools-add input{flex:1;min-width:140px}.admin-filter{flex:0 0 auto;border:1px solid var(--folio-border);background:transparent;color:var(--folio-muted);border-radius:999px;padding:4px 10px;font:500 10.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:background .14s,border-color .14s,color .14s}.admin-filter:hover{background:var(--folio-surface);color:var(--folio-fg)}.admin-filter.active{color:var(--folio-brand);border-color:var(--folio-brand);background:var(--folio-brand-tint)}.admin-shell .btn{border:1px solid transparent;background:transparent;color:var(--folio-fg);border-radius:4px;padding:6px 11px;font:500 12.5px/1 var(--folio-font-sans);cursor:pointer;text-decoration:none;box-shadow:none;transition:background .14s,border-color .14s,color .14s}.admin-shell .btn:hover{background:var(--folio-surface);border-color:var(--folio-border)}.admin-shell .btn.primary{background:var(--folio-fg);color:var(--folio-bg);border-color:var(--folio-fg)}.admin-shell .btn.primary:hover{opacity:.92}.admin-shell .btn.sm{padding:4px 8px;font-size:11.5px}.admin-shell .btn.danger{color:var(--folio-red);border-color:var(--folio-border)}.admin-shell .btn.danger:hover{background:var(--folio-red-soft);border-color:color-mix(in oklab,var(--folio-red) 35%,var(--folio-border))}.admin-row-actions{display:inline-flex;align-items:center;gap:4px}.admin-icon{display:block;flex:0 0 auto}.admin-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--folio-muted);cursor:pointer;transition:background .14s,border-color .14s,color .14s}.admin-icon-btn:hover:not(:disabled){background:var(--folio-surface);border-color:var(--folio-border);color:var(--folio-fg)}.admin-icon-btn:disabled{opacity:.45;cursor:not-allowed}.admin-icon-btn.primary,.admin-icon-btn.active{color:var(--folio-brand)}.admin-icon-btn.primary:hover:not(:disabled),.admin-icon-btn.active:hover:not(:disabled){background:var(--folio-brand-tint);border-color:color-mix(in oklab,var(--folio-brand) 35%,var(--folio-border));color:var(--folio-brand)}.admin-icon-btn.danger{color:var(--folio-red)}.admin-icon-btn.danger:hover:not(:disabled){background:var(--folio-red-soft);border-color:color-mix(in oklab,var(--folio-red) 35%,var(--folio-border));color:var(--folio-red)}.admin-error{color:var(--folio-red);font:500 12.5px/1 var(--folio-font-sans);margin:0}.admin-ok{color:var(--folio-green, #2d6a4f)}.admin-warn{color:var(--folio-amber, #b8860b)}.admin-note{color:var(--folio-green, #2d6a4f);font:500 12.5px/1.4 var(--folio-font-sans);margin:0}.admin-saved-secret{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}.admin-saved-secret input{flex:1 1 220px;min-width:0}.admin-saved-secret code{font:400 12px/1.4 var(--folio-font-mono, monospace);padding:6px 10px;border-radius:4px;background:var(--folio-bg);border:1px solid var(--folio-border)}.admin-empty,.admin-shell .empty{color:var(--folio-muted);text-align:center;padding:48px 0;font:400 13.5px/1.55 var(--folio-font-sans)}.admin-shell .meta{color:var(--folio-soft);font:400 12.5px/1.5 var(--folio-font-sans)}.admin-shell .meta a{color:var(--folio-brand);text-decoration:none}.admin-shell .meta a:hover{text-decoration:underline}.admin-source{margin-top:12px}.admin-source pre{white-space:pre-wrap;background:var(--folio-bg);border:1px solid var(--folio-border);border-radius:4px;padding:10px 12px;font:400 11.5px/1.45 var(--folio-font-mono);max-height:14rem;overflow:auto;color:var(--folio-muted)}.crawl-progress-bar{margin-top:10px;height:6px;border-radius:3px;background:var(--folio-border);overflow:hidden}.crawl-progress-bar__fill{height:100%;background:var(--bachata, #c8963e);transition:width .4s ease}.spend-meter{margin:6px 0 2px;display:flex;flex-direction:column;gap:6px}.spend-meter__row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-school-venues{margin:4px 0 8px;padding:8px 12px;background:var(--folio-bg);border:1px solid var(--folio-border);border-radius:4px}.admin-school-venue{display:flex;align-items:center;gap:8px;padding:3px 0;font:400 12.5px/1.5 var(--folio-font-sans)}.admin-school-venue span{flex:1}.admin-school-details{margin:4px 0 8px;padding:10px 12px;background:var(--folio-bg);border:1px solid var(--folio-border);border-radius:4px;font:400 12.5px/1.5 var(--folio-font-sans)}.admin-school-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.admin-school-scrape-err{color:var(--folio-red, #c0392b);margin:0 0 8px}.admin-style-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.admin-style-chip{font:500 11px/1 var(--folio-font-mono);padding:5px 9px;border-radius:999px;border:1px solid var(--folio-border);background:transparent;color:var(--soft);cursor:pointer}.admin-style-chip.active{border-color:color-mix(in oklab,var(--c) 55%,var(--folio-border));background:color-mix(in oklab,var(--c) 16%,transparent);color:var(--c)}.admin-feedback{margin:10px 0 4px}.admin-feedback-panel{margin-top:10px;padding:12px;border:1px solid var(--folio-border);border-radius:8px;display:flex;flex-direction:column;gap:8px}.admin-feedback-panel .admin-style-chips{margin-bottom:0}.admin-feedback-panel blockquote{margin:4px 0 0;padding-left:10px;border-left:2px solid var(--folio-border);color:var(--soft);white-space:pre-wrap}.admin-feedback-history ul{margin:4px 0 0;padding-left:18px}.admin-feedback-reject{margin-top:10px;display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.admin-school-banner{display:flex;flex-direction:column;gap:4px}.admin-school-banner>span{color:var(--soft)}.admin-school-banner-preview{margin-top:6px;max-width:320px;width:100%;height:120px;object-fit:contain;object-position:center;border-radius:4px;border:1px solid var(--folio-border)}.admin-table{width:100%;border-collapse:collapse;margin-top:4px;font:400 12.5px/1.5 var(--folio-font-sans);font-feature-settings:"tnum"}.admin-table th{text-align:left;font:500 10px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--folio-muted);padding:8px 10px 10px;border-bottom:1px solid var(--folio-rule)}.admin-table td{padding:10px;border-bottom:1px solid var(--folio-border);vertical-align:top}.admin-table tbody tr:hover td{background:var(--folio-brand-tint)}.admin-table tr.disabled{opacity:.5}.admin-table tr.crawl-warn td{background:var(--folio-red-soft)}.admin-table tr.admin-group-row td{background:var(--folio-brand-tint);border-bottom:1px solid var(--folio-rule);font:500 10px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--folio-muted)}.admin-table tr.admin-group-row b{color:var(--folio-fg);letter-spacing:.04em}.admin-table tr.admin-group-row:hover td{background:var(--folio-brand-tint)}.admin-table-wrap{max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:0 4px 4px}.admin-sources-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 16px}.admin-sources-toolbar__primary{display:flex;flex-wrap:wrap;align-items:center;gap:10px;flex:1 1 220px;min-width:0}.admin-sources-toolbar__nav{display:flex;flex-wrap:wrap;gap:6px;flex:0 0 auto}.admin-sources-toolbar__note{flex:1 1 100%;margin:0}.admin-sources-summary{font:400 12px/1.4 var(--folio-font-mono);color:var(--folio-muted);white-space:nowrap}.admin-source-link{display:inline-block;max-width:100%;font:500 13px/1.35 var(--folio-font-sans);color:var(--folio-fg);text-decoration:none;transition:color .14s}.admin-source-link:hover{color:var(--folio-brand);text-decoration:underline;text-underline-offset:2px}.admin-source-name{font:500 13px/1.35 var(--folio-font-sans);color:var(--folio-fg)}.admin-sources-table{table-layout:fixed;min-width:720px}.admin-sources-table tr.admin-source-sub td.col-source{padding-left:1.5rem}.admin-source-sub-marker{margin-right:.4rem;color:var(--folio-soft);font:400 12px/1 var(--folio-font-mono)}.admin-sources-table .col-source{width:auto}.admin-sources-table .col-tier{width:3.25rem}.admin-sources-table .col-every{width:4rem}.admin-sources-table .col-items{width:8rem}.admin-sources-table .col-last{width:10.5rem}.admin-sources-table .col-actions{width:174px}.admin-sources-table td.col-source{overflow:hidden;text-overflow:ellipsis}.admin-sources-table td.col-tier,.admin-sources-table td.col-every,.admin-sources-table th:nth-child(2),.admin-sources-table th:nth-child(3){text-align:center}.admin-sources-table td.col-items{font-feature-settings:"tnum"}.admin-sources-items-count{font-weight:500;color:var(--folio-fg)}.admin-sources-items-queued,.admin-sources-items-failed{display:block;margin-top:2px;font-size:11px;line-height:1.3}.admin-sources-last{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}.admin-sources-last-detail,.admin-sources-last-time{font:400 11px/1.3 var(--folio-font-mono);color:var(--folio-muted)}.admin-sources-last-errors{font:500 10.5px/1 var(--folio-font-mono);color:var(--folio-red)}.admin-sources-never{font:400 12px/1 var(--folio-font-mono);color:var(--folio-soft)}.admin-sources-table td.col-actions{padding-left:4px;padding-right:4px}.admin-sources-table .admin-row-actions{justify-content:flex-end;flex-wrap:nowrap;gap:2px}@media(max-width:760px){.admin-sources-toolbar__nav{width:100%}.admin-sources-summary{white-space:normal}}.admin-query-toolbar{display:grid;grid-template-columns:minmax(8rem,1.2fr) repeat(3,minmax(5.5rem,8rem)) auto;gap:8px 10px;align-items:center}.admin-query-toolbar .admin-events-count{align-self:center;line-height:1}.admin-query-toolbar .admin-events-search,.admin-query-toolbar .admin-schools-search{width:100%;min-width:0;max-width:none;flex:none}.admin-events-select{width:100%;min-width:0;max-width:none}.admin-events-count{margin-left:0;justify-self:end;font:400 11px/1.4 var(--folio-font-mono);color:var(--folio-muted);white-space:nowrap}.admin-events-clear{color:var(--folio-red)}@media(max-width:920px){.admin-query-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-query-toolbar .admin-events-search,.admin-query-toolbar .admin-schools-search{grid-column:1 / -1}.admin-query-toolbar .admin-events-count{grid-column:1 / -1;justify-self:start}}.admin-events-table{width:100%;min-width:760px;table-layout:fixed}.admin-events-table td{vertical-align:top;overflow:hidden}.admin-events-table .col-when{width:6.5rem}.admin-events-table .col-name{width:auto}.admin-events-table .col-country{width:5.5rem}.admin-events-table .col-where{width:5rem}.admin-events-table .col-venue{width:7.5rem}.admin-events-table .col-status{width:5rem}.admin-events-table .col-source{width:4.25rem}.admin-events-table .col-actions{width:7rem}.admin-events-table .col-country,.admin-events-table .col-where,.admin-events-table .col-venue,.admin-events-table .col-source{text-overflow:ellipsis;white-space:nowrap}.admin-events-table .col-country{font-size:12px;color:var(--folio-muted)}.admin-events-table .col-source a,.admin-events-table .col-source .btn{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.admin-events-table td.col-actions{padding-left:4px;padding-right:4px}.admin-events-table .admin-row-actions{flex-wrap:nowrap;justify-content:flex-end;gap:2px;max-width:100%}.admin-events-conf{font:400 11px/1.4 var(--folio-font-mono);color:var(--folio-muted);white-space:nowrap}.admin-events-name-btn{display:inline;margin:0;padding:0;border:0;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.admin-events-name-btn:hover{color:var(--folio-brand)}.admin-events-table .col-when{font-feature-settings:"tnum"}.admin-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:16px;margin-top:16px;align-items:start}.admin-card-grid .admin-card{margin:0}.admin-prompts{display:grid;grid-template-columns:minmax(200px,260px) minmax(0,1fr);gap:16px;align-items:start;margin-top:12px}.admin-prompts-list{display:flex;flex-direction:column;gap:4px}.admin-prompts-item{display:flex;align-items:center;gap:4px;width:100%;padding:4px 4px 4px 8px;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit}.admin-prompts-item:hover{background:color-mix(in srgb,var(--folio-ink) 6%,transparent)}.admin-prompts-item.active{border-color:color-mix(in srgb,var(--folio-ink) 18%,transparent);background:color-mix(in srgb,var(--folio-ink) 8%,transparent)}.admin-prompts-item__select{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:1 1 auto;min-width:0;text-align:left;padding:6px 4px;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit}.admin-prompts-item__label{font-size:14px;line-height:1.3}.admin-prompts-editor{margin:0}.admin-prompts-editor-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-help-btn--compact{flex:0 0 auto;padding:4px;gap:0}.admin-help-btn--compact .admin-help-btn-icon{width:16px;height:16px;font-size:10px}.admin-prompts-textarea{width:100%;min-height:420px;margin-top:10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12.5px;line-height:1.45;resize:vertical}.admin-prompts-editor code{font-size:12px;margin-right:6px}@media(max-width:860px){.admin-prompts{grid-template-columns:1fr}}.admin-sources-filters{gap:8px 10px}.admin-sources-count{margin-left:auto}.admin-coords-row{display:flex;gap:12px}.admin-coords-row label{flex:1 1 0}.admin-coords-row .coord{width:100%}.admin-row-editor td{padding:0 10px 18px;background:var(--folio-brand-tint);border-bottom:1px solid var(--folio-rule)}.admin-fields--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 16px;padding-top:14px}.admin-fields--grid label{display:flex;flex-direction:column;gap:4px;font:500 11px/1.2 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--folio-muted)}.admin-fields--grid label input,.admin-fields--grid label select,.admin-fields--grid label textarea{width:100%;text-transform:none;letter-spacing:normal}.admin-fields--grid label.admin-field-wide{grid-column:1 / -1}.admin-cell-empty{color:var(--folio-soft);font-style:italic}.admin-classes-table{min-width:900px;table-layout:fixed}.admin-classes-table td{vertical-align:top}.admin-classes-table .col-cls-name{width:20%;min-width:150px}.admin-classes-table .col-cls-day{width:6.5rem}.admin-classes-table .col-cls-time{width:7.5rem}.admin-classes-table .col-cls-level{width:7rem}.admin-classes-table .col-cls-school,.admin-classes-table .col-cls-venue{width:13%}.admin-classes-table .col-cls-status{width:6rem;white-space:nowrap}.admin-classes-table .col-actions{width:128px}.admin-classes-table .col-cls-school,.admin-classes-table .col-cls-venue{font-size:12px;color:var(--folio-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-classes-table .col-cls-name{border-left:3px solid var(--c, var(--folio-border));font-weight:500}.admin-classes-table .col-cls-name .meta{margin-top:4px;font-weight:400}.admin-classes-table td.col-actions{padding-left:4px;padding-right:4px}.admin-classes-table .admin-row-actions{flex-wrap:nowrap;justify-content:flex-end;gap:2px}.admin-review-table{width:100%;min-width:860px;table-layout:fixed}.admin-review-table td{vertical-align:top}.admin-review-table .col-when{width:7.5rem;font-feature-settings:"tnum"}.admin-review-table .col-rev-name{width:auto}.admin-review-table .col-rev-country{width:7rem}.admin-review-table .col-rev-where{width:6.5rem}.admin-review-table .col-rev-venue{width:9rem}.admin-review-table .col-rev-country,.admin-review-table .col-rev-where,.admin-review-table .col-rev-venue{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-review-table .col-rev-status{width:6.5rem}.admin-review-table .col-actions{width:11.5rem}.admin-review-table .col-rev-name{border-left:3px solid var(--c, var(--folio-border));font-weight:500}.admin-review-table .col-rev-name .meta{margin-top:4px;font-weight:400}.admin-review-table .col-rev-venue{font-size:12px;color:var(--folio-muted)}.admin-review-table td.col-actions{padding-left:4px;padding-right:4px}.admin-review-table .admin-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:2px}@media(max-width:760px){.admin-tabs{padding:8px 14px}.admin-main:has(.admin-page-events){padding:24px 14px 64px}.admin-page-events .admin-query-toolbar{grid-template-columns:1fr 1fr}.admin-page-events .admin-query-toolbar .admin-events-search,.admin-page-events .admin-query-toolbar .admin-events-count{grid-column:1 / -1}.admin-page-events .admin-query-toolbar .admin-events-select:last-of-type{grid-column:1 / -1}.admin-page-events .admin-events-search,.admin-page-events .admin-events-select{font-size:16px;min-height:40px}.admin-page-events .admin-toolbar:not(.admin-query-toolbar){flex-wrap:nowrap;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-bottom:12px;padding-bottom:2px}.admin-page-events .admin-toolbar:not(.admin-query-toolbar)::-webkit-scrollbar{display:none}.admin-page-events .admin-filter{padding:8px 12px;font-size:11px}.admin-page-events .admin-toolbar-sep{margin:2px}.admin-page-events .admin-table-wrap{overflow:visible;margin:0;padding:0}.admin-page-events .admin-review-table{min-width:0;width:100%;table-layout:auto}.admin-page-events .admin-review-table colgroup,.admin-page-events .admin-review-table thead{display:none}.admin-page-events .admin-review-table,.admin-page-events .admin-review-table tbody,.admin-page-events .admin-review-table tbody tr{display:block}.admin-page-events .admin-review-table tbody>tr:not(.admin-row-editor):not(.admin-row-note){display:flex;flex-direction:column;margin:0 0 12px;padding:12px 14px 10px;border:1px solid var(--folio-border);border-left:3px solid var(--c, var(--folio-border));border-radius:8px;background:var(--folio-surface)}.admin-page-events .admin-review-table tbody>tr:not(.admin-row-editor):not(.admin-row-note):has(+tr.admin-row-editor),.admin-page-events .admin-review-table tbody>tr:not(.admin-row-editor):not(.admin-row-note):has(+tr.admin-row-note){margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.admin-page-events .admin-review-table tbody tr:hover td{background:transparent}.admin-page-events .admin-review-table td{display:grid;grid-template-columns:5.25rem minmax(0,1fr);gap:6px 10px;align-items:start;width:100%;box-sizing:border-box;padding:5px 0;border:0;overflow:visible;white-space:normal;text-overflow:unset}.admin-page-events .admin-review-table td.col-when.nowrap{white-space:normal}.admin-page-events .admin-review-table td[data-label]:before{content:attr(data-label);font:500 10px/1.3 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--folio-muted);padding-top:2px}.admin-page-events .admin-review-table td.col-rev-name{display:block;order:-1;border-left:0;padding-top:0;padding-bottom:8px;font-size:15px;line-height:1.35}.admin-page-events .admin-review-table td.col-rev-name:before{display:none}.admin-page-events .admin-review-table .col-rev-country,.admin-page-events .admin-review-table .col-rev-where,.admin-page-events .admin-review-table .col-rev-venue{white-space:normal}.admin-page-events .admin-review-table .col-rev-venue{font-size:inherit;color:inherit}.admin-page-events .admin-review-table td.col-actions{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:6px;margin-top:6px;padding-top:10px;border-top:1px solid var(--folio-border)}.admin-page-events .admin-review-table td.col-actions:before{display:none}.admin-page-events .admin-review-table .admin-row-actions{justify-content:flex-start;flex-wrap:wrap;gap:6px;width:100%}.admin-page-events .admin-icon-btn{width:36px;height:36px}.admin-page-events .admin-review-table tr.admin-row-editor,.admin-page-events .admin-review-table tr.admin-row-note{margin:0 0 12px;border:1px solid var(--folio-border);border-top:0;border-radius:0 0 8px 8px;overflow:hidden}.admin-page-events .admin-review-table tr.admin-row-editor td,.admin-page-events .admin-review-table tr.admin-row-note td{display:block;padding:12px 14px 16px;background:var(--folio-brand-tint)}.admin-page-events .admin-review-table tr.admin-row-note td{padding-top:0;padding-bottom:12px}.admin-page-events .admin-fields--grid{grid-template-columns:1fr}.admin-page-events .admin-fields--grid label input,.admin-page-events .admin-fields--grid label select,.admin-page-events .admin-fields--grid label textarea{font-size:16px;min-height:40px}.admin-page-events .admin-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-page-events .admin-actions .btn{min-height:40px;padding:10px 14px}}@media(max-width:480px){.admin-page-events .admin-query-toolbar{grid-template-columns:1fr}.admin-page-events .admin-query-toolbar .admin-events-select:last-of-type{grid-column:auto}}.admin-shell .kind{font:500 10.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.1em;padding:3px 8px;border-radius:999px;border:1px solid var(--folio-border);background:transparent;color:var(--folio-muted)}.admin-inline-check{display:flex;align-items:center;gap:8px;font:500 12.5px/1 var(--folio-font-sans);color:var(--folio-fg)}.admin-inline-check input{width:auto}.admin-shell .status{font:500 10.5px/1 var(--folio-font-mono);text-transform:uppercase;letter-spacing:.08em;padding:3px 8px;border-radius:999px;border:1px solid var(--folio-border);color:var(--folio-muted)}.admin-shell .status.published{color:var(--folio-green);border-color:color-mix(in oklab,var(--folio-green) 40%,var(--folio-border));background:var(--folio-green-soft)}.admin-shell .status.review{color:var(--folio-brand);border-color:color-mix(in oklab,var(--folio-brand) 40%,var(--folio-border));background:var(--folio-brand-tint)}.admin-shell .status.rejected{color:var(--folio-soft)}.admin-shell .status.muted{color:var(--folio-muted)}.live-panel__noop{margin:10px 0 4px;color:var(--folio-green);font-size:13px}.live-panel--idle{padding:14px 16px}.live-timeline{margin-top:12px;display:flex;flex-direction:column;gap:2px}.admin-table tr.crawl-run-items-row td{padding:4px 12px 12px;background:color-mix(in oklab,var(--folio-fg) 2%,transparent)}.admin-table tr.crawl-run-items-row .live-timeline{margin-top:0}.admin-table tr.crawl-run-items-row:hover td{background:color-mix(in oklab,var(--folio-fg) 2%,transparent)}.live-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:6px 8px;border-radius:6px}.live-item:nth-child(odd){background:color-mix(in oklab,var(--folio-fg) 3%,transparent)}.live-item__glyph{border:none;background:none;padding:0;font-size:14px;min-width:1.2em;text-align:center}.live-item__title{font-size:13px;color:var(--folio-fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:8px}.live-item__badge{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--folio-muted);border:1px solid var(--folio-border);border-radius:4px;padding:0 4px}.live-item__status{white-space:nowrap}.live-item--timed{grid-template-columns:auto 1fr auto auto}.live-item__time{font-size:11px;color:var(--folio-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.live-item__srclink{color:inherit;text-decoration:none;overflow:hidden;text-overflow:ellipsis}.live-item__srclink:hover{text-decoration:underline}.live-item__event{flex-shrink:0;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--folio-green);text-decoration:none}.live-item__event:hover{text-decoration:underline}.source-activity-modal{width:min(720px,100%)}.source-activity-modal .live-timeline{margin-top:0}.source-activity-summary{margin:6px 0 0}.admin-events-focus{align-items:center;gap:10px}.nowrap{white-space:nowrap}.site-footer{margin-top:52px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.site-footer .feeds{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.site-footer .note{font-size:12px;margin-top:14px;color:var(--soft);line-height:1.5}.empty{color:var(--muted);text-align:center;padding:64px 0;font:400 14px/1.55 var(--dr-font-sans)}.empty:before{content:"✦";display:block;margin-bottom:10px;font-size:22px;color:var(--party)}.tile-skeleton{min-height:168px;border:1px solid var(--line);border-radius:var(--tile-radius);background:linear-gradient(100deg,var(--card) 30%,color-mix(in oklab,var(--muted) 12%,var(--card)) 50%,var(--card) 70%);background-size:200% 100%;animation:dr-shimmer 1.4s ease-in-out infinite}@keyframes dr-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.tile:focus-visible,.tile-action:focus-visible,.chip:focus-visible,.calendar-sort-btn:focus-visible,.date-chip:focus-visible,.date-strip-arrow:focus-visible,.calendar-past-btn:focus-visible,.filters-search:focus-visible,.event-map-placeholder:focus-visible,.btn:focus-visible{outline:2px solid var(--party);outline-offset:2px}@media(max-width:680px){.wrap{padding:0 14px 72px}.site-header{flex-direction:column;align-items:stretch;gap:8px;padding:20px 0 0}.site-header .tag{max-width:none}.site-nav{width:100%;padding:6px 0}.filters{padding:12px 0 10px}.filters-toolbar{gap:8px;margin-bottom:0}.filters-search{flex:1 1 auto;min-width:0;padding:11px 16px;font-size:16px}.calendar-sort{flex:1 1 auto}.calendar-sort-btn{flex:1 1 0;text-align:center;padding:10px 12px}.chip{padding:8px 12px;font-size:11px}.filters-past{flex-wrap:wrap;justify-content:flex-start;gap:8px;margin-top:14px}.calendar-past-btn{padding:9px 14px;font-size:11px}.date-strip{gap:8px}.tile{padding:15px 14px 13px}.tile-actions{top:10px;right:10px;gap:6px}.tile-action{width:34px;height:34px}.tile .trow{padding-right:84px;min-height:34px}}@media(max-width:680px){.detail-body{padding:20px 16px 4px}.detail-actionbar{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:14px 16px 18px}.detail-actionbar::-webkit-scrollbar{display:none}.detail-actionbar .btn{flex:0 0 auto}}@media(prefers-reduced-motion:reduce){.tile:hover,.btn.party:hover{transform:none}.tile,.tile-action,.date-chip,.chip,.btn{transition-property:background,border-color,color}.tile-skeleton{animation:none}}.detail-about-intro{white-space:normal;margin:0 0 10px}.detail-about-section{white-space:normal;margin:12px 0 0}.detail-about-section h4{margin:0 0 4px;font:600 12.5px/1.3 var(--dr-font-display);letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.detail-about-section ul{margin:0;padding-left:18px}.detail-about-section li{margin:2px 0}.detail-about-full{white-space:normal;margin:14px 0 0}.detail-about-toggle{margin:0 0 8px}.detail-organizer-contact a{color:var(--brand);text-decoration:underline}
