:root{font-family:DM Sans,ui-sans-serif,system-ui,sans-serif;color:#f7f5ef;background:#0d0d10;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}.wordmark{font-family:Space Grotesk,sans-serif;font-size:1.45rem;font-weight:700;letter-spacing:-.08em;text-decoration:none}.wordmark span{color:#ff5c35}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:700;color:#ff7858}.primary-button{color:#fff;border:0;background:#ff5c35;border-radius:9px;padding:.85rem 1.2rem;font-weight:700}.primary-button:hover{background:#e84b26}.primary-button:disabled,button:disabled{opacity:.55;cursor:wait}.top-ad{width:min(100%,1100px);min-height:110px;margin:1rem auto 0;padding:.3rem 0;position:relative;z-index:1;overflow:hidden}.top-ad>span{display:block;margin-bottom:.25rem;color:#77757c;font-size:.58rem;letter-spacing:.12em;text-align:center;text-transform:uppercase}.top-ad .adsbygoogle{display:block;width:100%;min-height:90px}.home-shell{min-height:100vh;color:#f7f5ef;padding:0 clamp(1.25rem,5vw,5rem);overflow:hidden;position:relative;background:#0d0d10}.home-shell:before{content:"";position:absolute;width:650px;height:650px;border-radius:50%;top:-300px;right:-160px;background:radial-gradient(circle,rgba(255,92,53,.3),transparent 66%);pointer-events:none}.home-shell:after{content:"♪";position:absolute;right:8vw;bottom:-12rem;font-size:min(35rem,55vw);line-height:1;color:#ffffff05;transform:rotate(-12deg);font-family:serif;pointer-events:none}.home-nav{height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #27272d;position:relative;z-index:1}.home-nav>a:last-child{color:#aaa8af;font-size:.86rem;text-decoration:none}.home-nav>a:last-child:hover{color:#fff}.home-hero{max-width:850px;padding:clamp(5rem,12vh,9rem) 0 6rem;position:relative;z-index:1}.home-hero h1{font-family:Space Grotesk;font-size:clamp(3.8rem,9.5vw,8.2rem);line-height:.88;letter-spacing:-.075em;margin:1.2rem 0 2rem}.home-hero h1 em{color:#ff5c35;font-style:normal}.hero-copy{max-width:560px;color:#aaa8af;font-size:clamp(1rem,2vw,1.3rem);line-height:1.6}.calendar-finder{margin-top:3rem;max-width:600px}.calendar-finder>label{display:block;margin-bottom:.6rem;color:#85838a;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}.calendar-finder>div{display:flex;align-items:center;background:#19191e;border:1px solid #313138;border-radius:12px;padding-left:1rem;overflow:hidden}.calendar-finder span{color:#69676e}.calendar-finder input{min-width:100px;flex:1;background:transparent;border:0;outline:0;padding:1rem .2rem;color:#fff}.calendar-finder button{align-self:stretch;padding:0 1.3rem;color:#fff;background:#ff5c35;border:0;font-weight:700}.calendar-directory{position:relative;z-index:1;padding:1rem 0 clamp(4rem,9vw,7rem)}.calendar-directory>header{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.6rem}.calendar-directory>header h2{margin:.5rem 0 0;font:700 clamp(2.2rem,5vw,4.5rem)/1 "Space Grotesk";letter-spacing:-.06em}.calendar-directory>header>span{color:#77757c;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.calendar-directory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:1rem}.calendar-directory-card{min-height:220px;display:grid;grid-template-columns:minmax(110px,34%) 1fr;overflow:hidden;border:1px solid #303037;border-radius:14px;background:#17171c;text-decoration:none;transition:border-color .18s,transform .18s}.calendar-directory-card:hover,.calendar-directory-card:focus-visible{border-color:var(--card-accent, #ff5c35);transform:translateY(-3px);outline:0}.calendar-directory-card>img{width:100%;height:100%;object-fit:cover}.directory-card-art{display:grid;place-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--card-accent, #ff5c35) 40%,#111),#111);color:color-mix(in srgb,var(--card-accent, #ff5c35) 75%,white);font:4rem Georgia,serif}.directory-card-content{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:1.3rem}.directory-card-content small{color:var(--card-accent, #ff7858);font-size:.6rem;letter-spacing:.1em;line-height:1.35;text-transform:uppercase}.directory-card-content strong{margin:.55rem 0;font:700 1.45rem/1.1 Space Grotesk;letter-spacing:-.04em}.directory-card-content>span{display:-webkit-box;overflow:hidden;color:#aaa8af;font-size:.8rem;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}.directory-card-content em{display:flex;justify-content:space-between;gap:1rem;width:100%;margin-top:auto;padding-top:1rem;color:#77757c;font-size:.68rem;font-style:normal}.directory-card-content b{color:#d6d3dc;white-space:nowrap}.directory-state{min-height:140px;display:grid;place-items:center;border:1px dashed #303037;border-radius:14px;color:#77757c}.directory-error{color:#ff9c88;border-color:#56312d}.home-shell footer{border-top:1px solid #27272d;padding:1.5rem 0;color:#615f66;font-size:.8rem;position:relative;z-index:1}.calendar-shell{--bg: #0d0d10;--surface: #19191f;--primary: #ff5c35;--accent: #ffd166;--text: #f8f7f4;--muted: #a5a3ad;--display: sans-serif;min-height:100vh;color:var(--text);background:var(--bg);padding:0 clamp(1rem,3vw,3.5rem) 5rem;transition:background .3s}.calendar-header{min-height:128px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--text) 14%,transparent)}.calendar-header .wordmark span{color:var(--primary)}.genre-title{text-align:center}.genre-title p{margin:0 0 .25rem;text-transform:uppercase;color:var(--muted);font-size:.6rem;letter-spacing:.18em}.genre-title h1{margin:0;font:700 clamp(1.6rem,3vw,2.8rem)/1 var(--display);letter-spacing:-.04em}.today-button{justify-self:end;background:transparent;color:var(--text);border:1px solid color-mix(in srgb,var(--text) 24%,transparent);border-radius:999px;padding:.6rem 1.2rem}.today-button:hover{border-color:var(--primary)}.genre-cover{position:relative;height:clamp(180px,27vw,360px);margin:clamp(1rem,2.5vw,2rem) 0 0;overflow:hidden;border-radius:14px;background:var(--surface)}.genre-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,color-mix(in srgb,var(--bg) 88%,transparent));pointer-events:none}.genre-cover img{width:100%;height:100%;object-fit:cover;display:block}.genre-cover figcaption{position:absolute;z-index:1;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);left:clamp(1rem,3vw,2rem);max-width:680px;color:var(--text);font-size:clamp(.8rem,1.4vw,1rem);line-height:1.5;text-shadow:0 1px 5px rgba(0,0,0,.7)}.week-toolbar{display:flex;align-items:center;justify-content:center;gap:2rem;padding:2.25rem 0}.week-toolbar h2{min-width:350px;text-align:center;margin:0;font:600 clamp(1.05rem,2vw,1.35rem)/1 var(--display)}.week-toolbar h2 span{color:var(--primary)}.week-toolbar button{width:42px;height:42px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text) 16%,transparent);background:var(--surface);color:var(--text)}.week-toolbar button:hover{color:var(--primary);border-color:var(--primary)}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-height:510px;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:14px;overflow:hidden}.day-cell{min-width:0;background:color-mix(in srgb,var(--surface) 72%,var(--bg));border-right:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.day-cell:last-child{border:0}.day-cell>header{height:84px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent);color:var(--muted)}.day-cell>header span{font-size:.64rem;text-transform:uppercase;letter-spacing:.12em}.day-cell>header strong{font:600 1.65rem/1.15 var(--display);color:var(--text)}.day-cell.is-today>header strong{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--primary);color:var(--bg)}.day-events{padding:.6rem;display:flex;flex-direction:column;gap:.5rem}.event-chip{width:100%;overflow:hidden;text-align:left;display:flex;flex-direction:column;gap:.2rem;border:0;border-left:2px solid var(--primary);border-radius:3px 7px 7px 3px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--text);padding:.65rem .6rem}.event-chip:hover{background:color-mix(in srgb,var(--primary) 19%,var(--surface));transform:translateY(-1px)}.event-chip time{font-size:.62rem;font-weight:700;color:var(--accent);text-transform:uppercase}.event-chip>span{overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:.82rem;line-height:1.25}.event-chip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.66rem}.empty-day{display:block;text-align:center;margin-top:2rem;color:color-mix(in srgb,var(--muted) 38%,transparent);font-size:.72rem;font-style:italic}.calendar-note{color:var(--muted);font-size:.72rem;text-align:right}.inline-error{background:color-mix(in srgb,#b43232 30%,var(--surface));padding:.75rem 1rem;margin-bottom:1rem;border-radius:8px}.panel-backdrop,.modal-backdrop{position:fixed;inset:0;z-index:20;background:#000000b3;display:flex;align-items:flex-end;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade-in .18s}.event-panel{width:min(100%,920px);max-height:88vh;overflow:auto;position:relative;display:grid;grid-template-columns:minmax(220px,38%) 1fr;background:var(--surface);border:1px solid color-mix(in srgb,var(--text) 15%,transparent);border-radius:18px 18px 0 0;box-shadow:0 -30px 80px #0006;animation:slide-up .25s ease-out}.event-panel>img{width:100%;height:100%;max-height:500px;object-fit:cover}.event-panel-content{padding:clamp(2rem,5vw,4rem)}.panel-close{position:absolute;z-index:2;right:1rem;top:1rem;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--text) 20%,transparent);color:var(--text);background:color-mix(in srgb,var(--surface) 85%,transparent);border-radius:50%;font-size:1.4rem;line-height:1}.event-date{color:var(--primary);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:700}.event-panel h2{margin:.6rem 0 2rem;font:700 clamp(2rem,5vw,3.7rem)/.98 var(--display);letter-spacing:-.05em}.detail-block{border-top:1px solid color-mix(in srgb,var(--text) 10%,transparent);padding:1rem 0}.detail-block>span{display:block;text-transform:uppercase;color:var(--muted);font-size:.58rem;letter-spacing:.14em;margin-bottom:.4rem}.detail-block p{margin:.2rem 0;color:var(--muted)}.detail-block .lineup{color:var(--text);font-size:1.05rem;line-height:1.6}.panel-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.ticket-button{text-decoration:none;background:var(--primary);color:var(--bg);font-weight:700;border-radius:8px;padding:.8rem 1.1rem}.source-link{color:var(--muted);font-size:.8rem}.state-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;background:#0d0d10;color:#f7f5ef}.state-screen h1{font:700 3rem Space Grotesk;margin:0}.state-screen p{color:#98969d}.pulse{width:24px;height:24px;background:#ff5c35;border-radius:50%;animation:pulse 1.2s infinite}.login-shell{min-height:100vh;background:radial-gradient(circle at 30% 20%,#2a1917,#0d0d10 45%);padding:2rem clamp(1.25rem,5vw,5rem);color:#f7f5ef}.login-card{width:min(100%,430px);margin:clamp(5rem,14vh,10rem) auto;padding:clamp(1.5rem,5vw,3rem);background:#18181d;border:1px solid #2e2e35;border-radius:16px;box-shadow:0 30px 80px #00000059}.login-card h1{font:700 2.5rem Space Grotesk;margin:.5rem 0;letter-spacing:-.05em}.login-card>p:not(.eyebrow){color:#95939a;margin-bottom:2rem}.login-card label,.settings-form label,.event-editor label,.create-genre label{display:flex;flex-direction:column;gap:.4rem;color:#aaa8af;font-size:.75rem;margin-bottom:1rem}.login-card input,.settings-form input,.settings-form textarea,.event-editor input,.event-editor textarea,.create-genre input,.create-genre textarea,.source-form input,.source-form textarea{width:100%;border:1px solid #35353d;border-radius:8px;color:#f7f5ef;background:#101014;padding:.72rem .8rem;outline:0;resize:vertical}.login-card input:focus,.settings-form input:focus,.settings-form textarea:focus,.event-editor input:focus,.event-editor textarea:focus,.create-genre input:focus,.create-genre textarea:focus,.source-form input:focus,.source-form textarea:focus{border-color:#ff5c35}.login-card .primary-button{width:100%;margin-top:.5rem}.form-error{background:#492020;color:#ffb8ae;padding:.75rem;margin-bottom:1rem;border-radius:8px;font-size:.8rem}.admin-shell{min-height:100vh;background:#f2f0eb;color:#1d1d20;padding-bottom:5rem}.admin-header{height:76px;padding:0 clamp(1.25rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;background:#111115;color:#f7f5ef}.admin-header>div{display:flex;align-items:center;gap:1.5rem;color:#88868d;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.admin-header button{background:transparent;border:1px solid #3a3940;border-radius:7px;padding:.55rem .75rem;color:#bbb9c0}.admin-intro,.create-genre,.genre-list,.admin-alert{width:min(1180px,calc(100% - 2rem));margin-left:auto;margin-right:auto}.admin-intro{padding:4rem 0 2rem;display:flex;justify-content:space-between;align-items:end}.admin-intro h1{font:700 clamp(2.8rem,6vw,5rem)/1 "Space Grotesk";letter-spacing:-.07em;margin:.6rem 0}.admin-intro p:last-child{color:#6d6b70;margin-bottom:0}.stat{padding:1rem 1.3rem;border-left:1px solid #c8c5be;color:#7b797e;font-size:.75rem;text-transform:uppercase}.stat strong{display:block;color:#1d1d20;font:700 2rem Space Grotesk}.admin-alert{position:sticky;top:.5rem;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:1rem;margin-bottom:1rem;background:#55231f;color:#fff;border-radius:8px}.admin-alert button{background:none;border:0;color:#fff;font-size:1.4rem}.create-genre{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:1rem;align-items:end;padding:1.5rem;background:#fff;border:1px solid #dcd9d2;border-radius:12px;box-shadow:0 5px 20px #1e19140a}.create-genre h2{font:700 1.2rem Space Grotesk;margin:0}.create-genre p{color:#848187;margin:.3rem 0 0;font-size:.75rem}.create-genre label{color:#68666b;margin:0}.create-genre input,.create-genre textarea{color:#222;background:#f8f7f4;border-color:#d7d4cd}.create-genre .wide-field{grid-column:2 / 4}.create-genre .primary-button{grid-column:4;grid-row:1 / 3;min-height:46px}.genre-list{margin-top:1.2rem;display:flex;flex-direction:column;gap:.75rem}.genre-card{background:#fff;border:1px solid #dcd9d2;border-radius:12px;overflow:hidden}.genre-card.expanded{box-shadow:0 14px 40px #28231e14;border-color:#cbc7bf}.genre-summary{min-height:92px;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:1.2rem;padding:1rem 1.4rem;cursor:pointer}.theme-dots{display:flex}.theme-dots i{width:28px;height:48px;border-radius:4px;border:2px solid #fff;margin-left:-8px;box-shadow:0 2px 8px #0000001f}.theme-dots i:first-child{margin-left:0}.genre-summary-title h2{font:700 1.35rem Space Grotesk;margin:0 0 .2rem}.genre-summary-title a{color:#8a878d;font-size:.75rem;text-decoration:none}.genre-metrics{display:flex;gap:2.5rem;color:#8a878d;font-size:.65rem;text-transform:uppercase;letter-spacing:.09em}.genre-metrics strong{display:block;color:#252429;font:700 1.1rem Space Grotesk;text-align:center}.genre-metrics .active-metric{color:#9a6e1e}.genre-metrics .active-metric strong{height:20px}.genre-metrics .spinner{border-color:#d8c8a7;border-top-color:#a47724;margin:2px 0 0}.expand-button{width:35px;height:35px;border:1px solid #d5d2cc;background:#f8f7f4;border-radius:50%;color:#555258;font-size:1.2rem}.genre-body{border-top:1px solid #e2dfd9;background:#faf9f6;padding:1.5rem}.genre-actions{display:flex;gap:.6rem;flex-wrap:wrap}.genre-actions button,.settings-form button,.source-form button,.event-manager button,.editor-actions>button{background:#fff;color:#3a383d;border:1px solid #d7d3cd;border-radius:7px;padding:.65rem .85rem;font-size:.77rem;font-weight:600}.genre-actions .process-button{background:#1b1a1e;border-color:#1b1a1e;color:#fff}.genre-actions .cleanup-button{color:#7e3e35;border-color:#d9b9b3;background:#fff8f6}.genre-actions .stop-button{color:#9b352c;border-color:#d8a49e;background:#fff3f1}.spinner{display:inline-block;width:12px;height:12px;margin-right:.3rem;border:2px solid #777;border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;vertical-align:-2px}.run-summary{margin-top:1rem;display:flex;align-items:center;gap:1rem;padding:.7rem .9rem;background:#edf6e9;color:#4f6847;border-radius:7px;font-size:.75rem}.run-summary.running{background:#f3eee1;color:#76683f}.run-summary.failed{background:#f8e8e5;color:#884239}.run-summary.stopped{background:#efedf4;color:#655d76}.run-summary small{margin-left:auto;max-width:35%}.genre-columns{display:grid;grid-template-columns:minmax(260px,.72fr) 1.5fr;gap:1.5rem;margin-top:1.5rem}.genre-columns h3,.event-manager h3{font:700 .95rem Space Grotesk;margin:0 0 1rem}.settings-form,.sources-pane{padding:1.2rem;background:#fff;border:1px solid #e0ddd7;border-radius:9px}.settings-form label{color:#77747a}.settings-form input,.settings-form textarea,.event-editor input,.event-editor textarea{background:#faf9f6;color:#242328;border-color:#d8d5cf}.settings-form button{background:#2a292d;color:#fff}.cover-editor{display:grid;grid-template-columns:112px 1fr;gap:.8rem;align-items:center;margin:0 0 1.2rem}.cover-editor>img,.cover-placeholder{width:112px;height:76px;object-fit:cover;border-radius:7px;border:1px solid #d8d5cf;background:#f3f1ed}.cover-placeholder{display:grid;place-items:center;padding:.5rem;color:#99969c;text-align:center;font-size:.68rem}.cover-upload{display:inline-block!important;margin:0 0 .35rem!important;padding:.55rem .7rem;border-radius:7px;background:#2a292d;color:#fff!important;font-weight:600;cursor:pointer}.cover-upload input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.cover-editor small{display:block;color:#99969c;font-size:.65rem}.cover-editor .remove-cover{margin-top:.45rem;padding:0;border:0;background:transparent;color:#a74b42;font-size:.68rem;text-decoration:underline}.sources-pane h3 span{color:#aaa7ad;font-weight:400;margin-left:.3rem}.source-form{display:grid;grid-template-columns:1.7fr 1fr auto;gap:.5rem}.source-form input,.source-form textarea{color:#242328;background:#faf9f6;border-color:#d8d5cf}.source-list{margin-top:1rem}.sources-help{margin:-.65rem 0 1rem;color:#99969c;font-size:.7rem}.classification-banner{display:flex;align-items:center;gap:.75rem;margin-top:1rem;padding:.75rem .85rem;border-radius:7px;font-size:.72rem}.classification-banner.pending{color:#725f34;background:#f5efdd;border:1px solid #eadcb7}.classification-banner.failed{color:#8b4239;background:#f9e9e6;border:1px solid #efcbc5}.classification-banner.failed>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#b95346;font-weight:700}.classification-banner strong,.classification-banner small{display:block}.classification-banner small{margin-top:.15rem;opacity:.8}.classification-banner>div{min-width:0;flex:1}.classification-banner>button{padding:.45rem .65rem;border:1px solid currentColor;border-radius:6px;background:transparent;color:inherit;font-size:.68rem;font-weight:700;white-space:nowrap}.classification-banner .spinner,.classification-copy .spinner{flex:0 0 auto;border-color:#d8c8a7;border-top-color:#a47724}.source-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;gap:.7rem;align-items:center;border-top:1px solid #eeece7;padding:.7rem .2rem}.source-icon{width:26px;height:26px;display:grid;place-items:center;background:#f0eeea;border-radius:6px;color:#77747a}.source-icon.instagram{color:#bd3d74}.source-row>div{min-width:0}.source-label{display:block;margin-bottom:.18rem;color:#343238;font-size:.75rem}.source-row a{display:block;overflow-wrap:anywhere;word-break:break-word;font-size:.76rem;font-weight:600;line-height:1.35;text-decoration:none}.source-row small{display:block;color:#99969c;font-size:.65rem;margin-top:.15rem;max-width:520px}.source-row .classification-copy.pending{display:flex;align-items:center;gap:.35rem;color:#9a6e1e}.source-row .classification-copy.failed{color:#a3473d}.source-type{max-width:150px;padding:.42rem .5rem;border:1px solid #d8d5cf;border-radius:6px;background:#f8f7f4;color:#555258;font-size:.68rem}.source-row>button{border:0;background:none;color:#aaa7ad;font-size:1.1rem}.status-dot{width:7px;height:7px;border-radius:50%;background:#c5c2bc}.status-dot.success{background:#5ca25a}.status-dot.error{background:#d25143}.delete-genre{border:0;background:none;color:#a74b42;padding:.8rem 0 0;font-size:.7rem;text-decoration:underline}.empty-admin{padding:5rem;text-align:center;color:#8c898f}.empty-admin span{font-size:3rem;color:#c2bfb8}.empty-admin h2{color:#444247}.event-manager{margin-top:1.5rem;border:1px solid #dfdcd6;border-radius:9px;background:#fff;padding:1.2rem}.event-manager-head{display:flex;justify-content:space-between;align-items:center}.event-manager-head h3{margin-bottom:.2rem}.event-manager-head p{margin:0;color:#89868c;font-size:.72rem}.event-manager-head button{background:#29282c;color:#fff}.event-table{margin-top:1rem}.event-row{display:grid;grid-template-columns:105px 1fr auto auto;align-items:center;gap:.7rem;padding:.7rem 0;border-top:1px solid #eeeae4}.event-row time{color:#625f65;font-size:.72rem;font-weight:600}.event-row time small,.event-row>div small{display:block;color:#99969c;font-size:.65rem;font-weight:400;margin-top:.2rem}.event-row>div strong{font-size:.85rem}.event-row button{padding:.4rem .6rem}.event-row .danger{color:#a74b42}.empty-events{text-align:center;padding:2rem;color:#99969c;font-size:.8rem}.modal-backdrop{align-items:center;padding:1rem}.event-editor{position:relative;width:min(680px,100%);max-height:92vh;overflow:auto;background:#fff;color:#28272b;border-radius:12px;padding:2rem;box-shadow:0 25px 80px #00000059}.event-editor h2{margin:0 0 1.5rem;font:700 1.6rem Space Grotesk}.event-editor label{color:#747177}.event-editor label small,.create-genre label small{color:#aaa7ad}.event-editor .panel-close{color:#555;background:#f5f3ef;border-color:#ddd}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.editor-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem}.editor-actions .primary-button{color:#fff;background:#ff5c35;border-color:#ff5c35}@keyframes fade-in{0%{opacity:0}}@keyframes slide-up{0%{transform:translateY(50px);opacity:0}}@keyframes pulse{50%{transform:scale(.65);opacity:.45}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:900px){.week-grid{grid-template-columns:repeat(2,1fr);min-height:0;border-bottom:0}.day-cell{min-height:230px;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.day-cell:nth-child(2n){border-right:0}.day-cell:last-child{border-right:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.create-genre{grid-template-columns:1fr 1fr}.create-genre>div{grid-column:1 / -1}.create-genre .wide-field{grid-column:1 / 2}.create-genre .primary-button{grid-column:2;grid-row:auto}.genre-columns{grid-template-columns:1fr}}@media(max-width:600px){.top-ad{min-height:80px;margin-top:.7rem}.top-ad .adsbygoogle{min-height:60px}.calendar-header{min-height:100px;grid-template-columns:auto 1fr auto;gap:.8rem}.calendar-header .wordmark{font-size:0}.calendar-header .wordmark:first-letter{font-size:1.4rem}.genre-title p{display:none}.today-button{padding:.5rem .8rem}.week-toolbar{gap:.7rem;padding:1.5rem 0}.week-toolbar h2{min-width:0;flex:1;font-size:.95rem}.week-grid{display:block;border-bottom:1px solid color-mix(in srgb,var(--text) 12%,transparent)}.day-cell{min-height:0;display:grid;grid-template-columns:70px 1fr;border-right:0!important}.day-cell>header{height:auto;min-height:115px;border-bottom:0;border-right:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.day-events{min-height:115px}.empty-day{margin-top:2rem}.event-panel{display:block}.event-panel>img{height:220px}.event-panel-content{padding:2rem 1.3rem}.home-hero{padding:5rem 0 4rem}.calendar-finder>div>span{display:none}.calendar-directory>header{align-items:flex-start;flex-direction:column;gap:.7rem}.calendar-directory-card{grid-template-columns:96px 1fr;min-height:200px}.directory-card-content{padding:1rem}.directory-card-content em{align-items:flex-start;flex-direction:column;gap:.3rem}.admin-intro{padding-top:2rem}.admin-intro .stat{display:none}.create-genre{grid-template-columns:1fr}.create-genre>*,.create-genre .wide-field,.create-genre .primary-button{grid-column:1}.genre-summary{grid-template-columns:auto 1fr auto}.genre-metrics{display:none}.genre-summary{padding:.8rem;gap:.7rem}.genre-actions button{flex:1}.source-form{grid-template-columns:1fr}.source-row{grid-template-columns:auto minmax(0,1fr) auto auto}.source-type{grid-column:2 / 3;max-width:100%}.status-dot{grid-column:3;grid-row:1}.run-summary{align-items:flex-start;flex-direction:column;gap:.3rem}.run-summary small{margin:0;max-width:100%}.event-row{grid-template-columns:80px 1fr}.event-row>button{grid-row:2}.event-row>button:first-of-type{grid-column:1}.event-row .danger{grid-column:2}.form-pair{grid-template-columns:1fr}.event-editor{padding:1.4rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
