:root{--ink:#1f1230;--muted:#6f6579;--purple:#341453;--purple-2:#6f3aa4;--violet:#9870cc;--coral:#ff6f78;--gold:#f4be47;--cream:#fbf8f2;--paper:#fff;--line:#e9e2ec;--green:#16886b;--shadow:0 18px 55px rgba(45,22,71,.12);--radius:24px;--athlete-primary:#341453;--athlete-secondary:#a57bca;--athlete-accent:#f5bf49}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}
body:before{content:"";position:fixed;z-index:-1;inset:0;background:radial-gradient(circle at 90% -10%,rgba(151,112,204,.18),transparent 32rem),radial-gradient(circle at -10% 30%,rgba(255,111,120,.09),transparent 28rem)}
img{max-width:100%;display:block}
a{color:inherit}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{line-height:1.05;letter-spacing:-.035em}
h1{font-size:clamp(2.5rem,6vw,5.8rem)}
h2{font-size:clamp(2rem,4vw,3.7rem)}
h3{font-size:1.45rem}
.kicker{display:block;color:var(--coral);font-size:.72rem;font-weight:900;letter-spacing:.16em;margin-bottom:.75rem}
.button{align-items:center;border:0;border-radius:999px;display:inline-flex;justify-content:center;min-height:48px;padding:.75rem 1.2rem;text-decoration:none;font-weight:850;transition:.2s transform,.2s box-shadow,.2s background}
.button:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(45,22,71,.16)}
.button.primary,.athlete-primary{background:var(--purple);color:#fff}
.button.secondary{background:#eee6f3;color:var(--purple)}
.button.ghost{border:1.5px solid var(--purple);color:var(--purple)}
.button.light{background:#fff;color:var(--purple)}
.button.tiny{min-height:34px;padding:.4rem .8rem;font-size:.78rem}
.button.wide{width:100%}
.text-link{color:var(--purple-2);font-weight:850}
.actions{display:flex;gap:.75rem;flex-wrap:wrap}
.topbar{height:82px;padding:0 max(24px,calc((100vw - 1220px)/2));display:flex;align-items:center;justify-content:space-between;position:relative;z-index:30;background:rgba(251,248,242,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(52,20,83,.08)}
.brand img{width:180px;max-height:56px;object-fit:contain}
.topbar nav{display:flex;align-items:center;gap:1.55rem}
.topbar nav a{text-decoration:none;font-size:.88rem;font-weight:800}
.topbar nav a.nav-meet-day{padding:.55rem .8rem;border-radius:999px;background:linear-gradient(105deg,var(--coral),#8c48da);color:#fff;box-shadow:0 5px 14px rgba(236,55,138,.28)}
.topbar nav a:last-child{background:var(--purple);color:#fff;border-radius:999px;padding:.65rem 1rem}
.nav-toggle{display:none;border:0;background:transparent;font-size:1.6rem}
.marketing,.athlete-profile{overflow:hidden}
.hero{min-height:700px;max-width:1320px;margin:auto;padding:5rem 4rem 0;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:2rem}
.hero-copy h1{max-width:780px;margin-bottom:1.25rem}
.hero-copy h1 em{font-style:normal;color:var(--purple-2)}
.hero-copy>p{font-size:1.18rem;max-width:640px;color:var(--muted)}
.hero-copy .actions{margin:2rem 0}
.trust-row{display:flex;gap:1rem;flex-wrap:wrap;color:var(--muted);font-size:.78rem;font-weight:800}
.trust-row span:before{content:"✓";color:var(--green);margin-right:.35rem}
.hero-art{align-self:stretch;position:relative;display:flex;align-items:flex-end;justify-content:center;min-height:590px}
.hero-art>img{position:relative;z-index:2;max-height:630px;filter:drop-shadow(0 25px 30px rgba(45,22,71,.2))}
.hero-orbit{position:absolute;inset:10% 4% 3%;border-radius:52% 48% 42% 58%;background:linear-gradient(145deg,var(--purple),#8c62b7 62%,var(--coral));transform:rotate(-4deg)}
.hero-orbit:after{content:"";position:absolute;width:80px;height:80px;border:18px solid var(--gold);border-radius:50%;right:-10px;top:30px}
.floating-score{position:absolute;z-index:5;right:0;bottom:11%;padding:1rem 1.3rem;background:#fff;border-radius:18px;box-shadow:var(--shadow);transform:rotate(3deg)}
.floating-score span,.floating-score small{display:block;color:var(--muted);font-weight:850;font-size:.65rem;letter-spacing:.1em}
.floating-score strong{font-size:2rem;color:var(--purple)}
.live-home,.next-home{max-width:1160px;margin:0 auto 4rem;color:#fff;text-decoration:none;border-radius:22px;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1.2rem;box-shadow:var(--shadow)}
.live-home{background:linear-gradient(100deg,#c42f54,var(--purple))}
.next-home{background:linear-gradient(100deg,var(--purple),var(--purple-2));flex-direction:column;align-items:flex-start;gap:.1rem;border-left:8px solid var(--gold)}
.next-home strong{font-size:1.65rem}
.live-home div{flex:1}
.live-home small,.live-home strong{display:block}
.live-dot{width:12px;height:12px;background:#ff476b;border-radius:50%;display:inline-block;box-shadow:0 0 0 7px rgba(255,71,107,.18);animation:pulse 1.7s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 13px rgba(255,71,107,0)}
}
.story,.feature-intro,.feature-grid,.privacy-band,.sms-promo,.final-cta,.career-strip,.career-bests,.journey,.stats-lab,.awards{max-width:1160px;margin-left:auto;margin-right:auto}
.story{padding:7rem 0;display:grid;grid-template-columns:100px 1fr 1fr;gap:2.5rem;align-items:start}
.story-number{font-size:4.5rem;font-weight:950;color:#ded1e6}
.story h2{margin:0}
.story p{font-size:1.05rem;color:var(--muted)}
.feature-intro{text-align:center;padding:4rem 15% 2.4rem}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;padding-bottom:7rem}
.feature{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:2rem;min-height:290px;box-shadow:0 12px 35px rgba(45,22,71,.05);position:relative;overflow:hidden}
.feature>span{font-size:.7rem;letter-spacing:.14em;font-weight:950;color:var(--coral)}
.feature h3{font-size:2rem;margin:.65rem 0}
.feature p{color:var(--muted)}
.feature-wide{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.feature.dark{background:var(--purple);color:#fff}
.feature.dark p{color:#d9cae3}
.fake-sheet{background:var(--cream);padding:.5rem;border-radius:15px}
.fake-sheet div{display:grid;grid-template-columns:1fr 1fr auto;gap:1rem;padding:.8rem;border-bottom:1px solid var(--line);font-size:.8rem}
.fake-sheet i{font-style:normal;color:var(--green)}
.rotation{display:flex;gap:.4rem;align-items:center;margin-top:2rem}
.rotation b{width:47px;height:47px;display:grid;place-items:center;background:#eee6f3;border-radius:50%;color:var(--purple)}
.rotation i{font-style:normal;color:var(--muted)}
.privacy-band{background:linear-gradient(120deg,var(--purple),#5c2879);color:#fff;border-radius:34px;padding:3.3rem;display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem}
.privacy-options{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.privacy-options div{border:1px solid rgba(255,255,255,.25);padding:1.2rem;border-radius:18px}
.privacy-options p{font-size:.8rem;color:#ddd0e5;margin:.5rem 0 0}
.sms-promo{padding:7rem 0;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4rem}
.phone-mock{background:#20142a;border:9px solid #20142a;border-radius:40px;padding:2rem .8rem;box-shadow:var(--shadow)}
.phone-mock div{background:#f1edf4;border-radius:16px;padding:1rem;font-size:.82rem;margin:.7rem;color:#2a1b34}
.final-cta{text-align:center;background:#eee6f3;border-radius:35px;padding:4rem;margin-bottom:5rem}
.final-cta img{height:72px;margin:0 auto 1.5rem}
.final-cta .actions{justify-content:center}
.footer{background:#1f102b;color:#fff;padding:3rem max(24px,calc((100vw - 1160px)/2));display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:2rem}
.footer img{width:155px}
.footer p{margin:.35rem 0;color:#cabbd3}
.footer-links{display:flex;gap:1rem;flex-wrap:wrap}
.copyright{font-size:.75rem}
.auth-wrap{min-height:calc(100vh - 82px);display:grid;place-items:center;padding:4rem 1rem}
.auth-card{width:min(680px,100%);background:#fff;border-radius:28px;padding:clamp(1.5rem,5vw,3.4rem);box-shadow:var(--shadow)}
.auth-card h1{font-size:clamp(2.3rem,6vw,4rem)}
.auth-card>p{color:var(--muted)}
form{display:grid;gap:1rem}
label{display:grid;gap:.4rem;font-size:.82rem;font-weight:850;color:var(--ink)}
input,select,textarea{width:100%;min-height:48px;border:1.5px solid #ddd4e1;background:#fff;border-radius:12px;padding:.72rem .82rem;color:var(--ink);outline:none}
textarea{min-height:100px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--purple-2);box-shadow:0 0 0 4px rgba(111,58,164,.1)}
input[type=color]{padding:.25rem}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.check{display:flex;grid-template-columns:auto 1fr;align-items:flex-start;gap:.7rem;font-weight:600}
.check input{width:20px;min-height:20px;margin-top:.15rem}
.legal-page{max-width:800px;min-height:65vh;margin:0 auto;padding:6rem 1.3rem}
.legal-page h1{font-size:clamp(3rem,7vw,5rem)}
.legal-page h2{font-size:1.5rem;margin-top:2.5rem}
.legal-lead{font-size:1.25rem;color:var(--muted)}
.access-wall{min-height:75vh;display:grid;place-items:center;padding:2rem}
.access-wall>div{max-width:540px;text-align:center;background:#fff;padding:3rem;border-radius:28px;box-shadow:var(--shadow)}

/* Athlete story */
.athlete-profile{--p:var(--athlete-primary);--s:var(--athlete-secondary);--a:var(--athlete-accent)}
.athlete-hero{min-height:610px;display:grid;grid-template-columns:1fr 1fr;background:linear-gradient(125deg,var(--p),color-mix(in srgb,var(--p),#000 18%));color:#fff}
.athlete-hero-copy{padding:6rem max(3rem,calc((100vw - 1160px)/2));padding-right:4rem;display:flex;flex-direction:column;justify-content:center}
.athlete-hero-copy h1{margin:.2rem 0 1rem}
.athlete-hero-copy>p{max-width:590px;color:#ecdfef}
.athlete-level{font-size:1.2rem!important;color:var(--a)!important;font-weight:900}
.athlete-secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55)}
.athlete-hero-image{position:relative;overflow:hidden;background:var(--s)}
.athlete-hero-image>img{width:100%;height:100%;object-fit:cover;object-position:center 20%}
.athlete-hero-image>div{position:absolute;bottom:2rem;left:2rem;background:rgba(31,16,43,.82);backdrop-filter:blur(10px);padding:1rem 1.2rem;border-left:5px solid var(--a)}
.athlete-hero-image span,.athlete-hero-image strong{display:block}
.athlete-hero-image span{font-size:.65rem;letter-spacing:.13em}
.live-meet,.next-meet{margin:2rem auto;padding:1.5rem 2rem;max-width:1160px;border-radius:24px;display:flex;align-items:center;gap:1.5rem}
.live-meet{background:linear-gradient(100deg,#bd274f,var(--p));color:#fff}
.next-meet{background:#fff;border:2px solid var(--p);box-shadow:var(--shadow);border-left:10px solid var(--a)}
.live-meet>div,.next-meet>div{flex:1}
.live-meet h2,.next-meet h2{font-size:2.1rem;margin:.15rem 0}
.live-meet p,.next-meet p{margin:0}
.career-strip{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:22px;margin-top:2rem;box-shadow:0 12px 30px rgba(30,13,44,.06)}
.career-strip div{padding:1.5rem;border-right:1px solid var(--line)}
.career-strip div:last-child{border:0}
.career-strip strong,.career-strip span{display:block}
.career-strip strong{font-size:2rem;color:var(--p)}
.career-strip span{font-size:.75rem;color:var(--muted);font-weight:800}
.career-bests,.journey,.stats-lab,.awards{padding-top:6rem}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem}
.section-heading h2{max-width:700px}
.best-grid,.average-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.best-grid>div,.average-grid>div{background:#fff;border-radius:20px;padding:1.5rem;border-top:6px solid var(--a)}
.best-grid span,.best-grid small,.average-grid span{display:block;color:var(--muted);font-weight:850;font-size:.68rem;letter-spacing:.08em}
.best-grid strong,.average-grid strong{display:block;font-size:2rem;color:var(--p);margin:.3rem 0}
.season-tabs{display:flex;gap:.8rem;overflow-x:auto;padding:.5rem 0 1.4rem;scrollbar-width:thin}
.season-tabs a{flex:0 0 145px;text-decoration:none;background:#fff;border:1px solid var(--line);border-bottom:6px solid var(--level);border-radius:15px;padding:1rem;opacity:.68}
.season-tabs a.active{opacity:1;box-shadow:0 8px 22px rgba(45,22,71,.12);transform:translateY(-3px)}
.season-tabs b,.season-tabs span{display:block}
.season-tabs span{font-size:.75rem;color:var(--muted)}
.meet-cards{display:grid;gap:1rem}
.meet-card{background:#fff;border:1px solid var(--line);border-radius:23px;padding:1.5rem}
.meet-card.live{border:2px solid #d12d57;box-shadow:0 0 0 5px rgba(209,45,87,.08)}
.meet-card-head{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.meet-card-head>div>span{font-size:.67rem;font-weight:900;letter-spacing:.1em;color:var(--coral)}
.meet-card-head h3{margin:.35rem 0}
.meet-card-head p{color:var(--muted);margin:0}
.aa-score{text-align:right}
.aa-score strong,.aa-score span{display:block}
.aa-score strong{font-size:2rem;color:var(--p)}
.aa-score span{font-size:.6rem;font-weight:900}
.score-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-top:1.3rem}
.score-card{background:#f5f0f6;border-radius:15px;padding:1rem}
.score-card span,.score-card strong,.score-card small{display:block}
.score-card span{font-size:.7rem;font-weight:950;color:var(--p)}
.score-card strong{font-size:1.65rem}
.score-card small{font-size:.68rem;color:var(--muted)}
.live-note{margin-top:1.2rem;color:#b31e48;font-weight:850;font-size:.8rem}
.stats-lab{display:grid;grid-template-columns:1fr 1.15fr;gap:3rem;align-items:center}
.average-grid{grid-template-columns:repeat(2,1fr)}
.awards{padding-bottom:6rem}
.award-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.award-grid article{background:#fff;border-radius:20px;overflow:hidden;padding:1.2rem}
.award-grid img{width:calc(100% + 2.4rem);max-width:none;margin:-1.2rem -1.2rem 1rem;aspect-ratio:4/3;object-fit:cover}
.award-grid article>span{font-size:.65rem;color:var(--coral);font-weight:900}
.award-grid h3{margin:.35rem 0}

/* Parent Studio */
.studio,.meet-mode{max-width:1180px;margin:auto;padding:4rem 1.25rem 7rem}
.studio-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}
.studio-head h1{font-size:clamp(2.6rem,6vw,4.8rem);margin:.2rem 0}
.studio-head p{color:var(--muted)}
.family-section{margin-bottom:3rem}
.section-title{display:flex;justify-content:space-between;align-items:center}
.section-title span{font-size:.65rem;font-weight:900;color:var(--green)}
.section-title h2{font-size:2rem}
.archive-notice{background:#fff0cc;padding:.5rem .8rem;border-radius:10px}
.athlete-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.athlete-card{background:linear-gradient(140deg,var(--p),color-mix(in srgb,var(--p),#000 30%));color:#fff;padding:1.7rem;border-radius:24px;min-height:220px;text-decoration:none;border-bottom:8px solid var(--s);transition:.2s transform}
.athlete-card:hover{transform:translateY(-5px)}
.athlete-card h3{font-size:2.2rem;margin:1rem 0 .4rem}
.athlete-code{font-size:.65rem;letter-spacing:.1em}
.athlete-card b{display:block;margin-top:2.3rem}
.studio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:1.5rem;box-shadow:0 8px 28px rgba(45,22,71,.05)}
.wide-panel{grid-column:1/-1}
.panel h2{font-size:1.55rem}
.panel>p,.panel-heading p{color:var(--muted)}
.panel-heading{display:flex;justify-content:space-between}
.season-admin-list>div{display:grid;grid-template-columns:10px 1fr auto;gap:.8rem;align-items:center;padding:.85rem 0;border-bottom:1px solid var(--line)}
.season-admin-list>div>span{height:38px;border-radius:8px;background:var(--level)}
.season-admin-list b,.season-admin-list small{display:block}
.season-admin-list small{color:var(--muted)}
.season-admin-list em{font-style:normal;font-size:.7rem;font-weight:900}
.meet-admin-row{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}
.meet-admin-list b,.meet-admin-list span{display:block}
.meet-admin-list span{color:var(--muted);font-size:.8rem}
.meet-admin-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}
.status{display:inline-flex;border-radius:999px;padding:.3rem .65rem;background:#eee6f3;font-style:normal;font-size:.67rem;font-weight:900;text-transform:uppercase}
.status.live{background:#ffdce4;color:#a6163e}
.status.complete,.status.active{background:#dff5ed;color:#0a6d54}
.status.read_only{background:#fff0cc;color:#815c00}
dialog{border:0;border-radius:24px;padding:2rem;width:min(530px,calc(100% - 2rem));box-shadow:var(--shadow)}
dialog::backdrop{background:rgba(28,13,39,.7);backdrop-filter:blur(4px)}
.dialog-close{float:right;border:0;background:#eee6f3;width:35px;height:35px;border-radius:50%}
.meet-mode{max-width:980px}
.meet-mode-head>a{text-decoration:none;font-weight:850}
.meet-mode-head h1{font-size:clamp(2.7rem,9vw,5rem);margin:.3rem 0}
.meet-mode-head>p{color:var(--muted);font-weight:700}
.command-picker{position:sticky;top:94px;z-index:12;margin:1.25rem 0 1.5rem;padding:1rem;border-radius:22px;background:linear-gradient(125deg,#100724,#321063 62%,#153886);box-shadow:0 16px 38px rgba(22,5,49,.22)}
.command-picker form{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(260px,1.5fr) auto auto;gap:.7rem;align-items:end}
.command-picker label{color:#fff}.command-picker select{background:#fff;border:0}.command-picker .button{white-space:nowrap}
.selected-meet-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding:1.6rem 1.8rem;margin-bottom:1rem;border-radius:24px;background:#fff;box-shadow:0 10px 30px rgba(31,7,63,.08)}
.selected-meet-head h2{font-size:clamp(2rem,5vw,3.2rem);margin:.55rem 0 .35rem}.selected-meet-head p{margin:0;color:var(--muted);font-weight:750}
.meet-details-priority{position:relative;overflow:hidden;border:2px solid rgba(111,58,164,.16);box-shadow:0 18px 45px rgba(51,15,99,.12)}
.meet-details-priority:before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,var(--coral),#8c48da,#27cfce,var(--gold))}
.meet-details-priority small{display:block;color:var(--muted);font-weight:650}.meet-details-priority .button.primary{background:linear-gradient(105deg,var(--coral),#7a3fc5)}
.command-waiting{display:grid;gap:.2rem;margin:1rem 0;padding:1rem 1.15rem;border:1px solid #e4d09b;border-radius:16px;background:#fff5d9;color:#664900}.command-waiting span{font-size:.82rem}
.meet-status-row{display:flex;align-items:center;justify-content:space-between;margin:1.5rem 0}
.inline-form{display:flex;grid-template-columns:1fr auto;gap:.5rem}
.rotation-board{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem;margin:1rem 0 1.5rem}
.rotation-event{border:2px solid #ded4e2;background:#fff;border-radius:17px;padding:.8rem;text-align:center}
.rotation-event span,.rotation-event strong{display:block}
.rotation-event span{font-size:.62rem;font-weight:900;min-height:1.1rem;color:var(--muted)}
.rotation-event strong{font-size:1.5rem}
.rotation-event.done{background:#e8f8f2;border-color:#6fc0a6}
.rotation-event.up-next{background:var(--purple);color:#fff;border-color:var(--gold);box-shadow:0 0 0 4px rgba(244,190,71,.28)}
.rotation-event.up-next span{color:var(--gold)}
.meet-entry-list{display:grid;gap:.7rem}
.event-entry{display:grid;grid-template-columns:1fr 140px 165px;align-items:end;gap:.8rem;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem}
.event-entry.current{border:2px solid var(--purple);box-shadow:0 7px 25px rgba(52,20,83,.12)}
.event-entry.waiting{opacity:.63}.event-entry button:disabled{cursor:not-allowed;transform:none;box-shadow:none;background:#b7acbf}
.event-entry>div span,.event-entry>div b{display:block}
.event-entry>div span{font-size:1.5rem;font-weight:950;color:var(--purple)}
.placements-panel{margin-top:1rem}
.placements-panel.locked{opacity:.65}
.placement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}
.lock-note{background:#fff0cc;padding:1rem;border-radius:12px}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem}
.metric-grid div{background:var(--purple);color:#fff;border-radius:18px;padding:1.4rem}
.metric-grid strong,.metric-grid span{display:block}
.metric-grid strong{font-size:2.2rem}
.metric-grid span{font-size:.7rem;text-transform:uppercase;font-weight:900}
.admin-table>div{display:grid;grid-template-columns:2fr .7fr .7fr 1fr 1fr;gap:1rem;align-items:center;padding:.8rem;border-bottom:1px solid var(--line)}
.admin-table small{display:block;color:var(--muted)}
.family-access-table>div{grid-template-columns:1.7fr 1.6fr .55fr 1.15fr .8fr 1.1fr;min-width:1050px}
.athlete-access-list,.athlete-access-line{display:grid;gap:.4rem}
.athlete-access-line{grid-template-columns:minmax(110px,1fr) auto;align-items:center;padding:.35rem 0;border-bottom:1px dashed var(--line)}
.athlete-access-line:last-child{border-bottom:0}
.inline-date-form{display:flex;align-items:center;gap:.35rem}
.inline-date-form input{min-width:145px;padding:.55rem .6rem}
.admin-actions{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}
.button.danger{background:#fff0f3;color:#a51f46;border:1px solid #efb7c6}
.table-head{font-size:.68rem;font-weight:900;color:var(--muted);text-transform:uppercase}
.import-summary{margin-top:1rem;background:#f5f0f6;border-radius:15px;padding:1rem}
.import-sheet{border-top:1px solid var(--line);padding:1rem 0}
.import-sheet-controls{display:grid;grid-template-columns:1.05fr .8fr .9fr 1.25fr;gap:.6rem}
.import-sheet p{font-size:.75rem;color:var(--muted)}
#toast{position:fixed;z-index:100;right:1rem;bottom:1rem;max-width:390px;background:#20142a;color:#fff;padding:1rem 1.2rem;border-radius:15px;box-shadow:var(--shadow);transform:translateY(150%);opacity:0;transition:.25s}
#toast.show{transform:translateY(0);opacity:1}
#toast.error{background:#9c2143}
#toast.centered{right:auto;bottom:auto;left:50%;top:50%;width:min(520px,calc(100vw - 2rem));max-width:none;padding:1.6rem 1.8rem;text-align:center;font-size:1.05rem;font-weight:800;border:2px solid rgba(255,255,255,.18);transform:translate(-50%,-50%) scale(.92);box-shadow:0 24px 80px rgba(16,7,36,.4)}
#toast.show.centered{transform:translate(-50%,-50%) scale(1)}
.is-loading{opacity:.6;pointer-events:none}

@media(max-width:900px){.topbar{padding:0 1.2rem}
.nav-toggle{display:block}
.topbar nav{display:none;position:absolute;top:81px;left:0;right:0;background:#fff;padding:1rem 1.3rem;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}
.topbar nav.open{display:flex}
.hero{grid-template-columns:1fr;padding:4rem 1.3rem 0;text-align:center}
.hero-copy .actions,.trust-row{justify-content:center}
.hero-art{min-height:480px}
.hero-art>img{max-height:500px}
.live-home,.next-home{margin:1rem 1rem 3rem}
.story,.sms-promo,.privacy-band,.stats-lab{grid-template-columns:1fr;margin-left:1rem;margin-right:1rem}
.story{padding:5rem 0}
.story-number{display:none}
.feature-intro{padding-left:1rem;padding-right:1rem}
.feature-grid{padding-left:1rem;padding-right:1rem}
.athlete-hero{grid-template-columns:1fr}
.athlete-hero-copy{padding:4rem 1.4rem}
.athlete-hero-image{height:520px}
.career-strip,.career-bests,.journey,.stats-lab,.awards{margin-left:1rem;margin-right:1rem}
.career-strip{grid-template-columns:repeat(2,1fr)}
.best-grid{grid-template-columns:repeat(2,1fr)}
.footer{grid-template-columns:1fr}
.athlete-cards{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:620px){h1{font-size:2.65rem}
.hero{min-height:auto}
.hero-art{min-height:400px}
.floating-score{right:0}
.live-home{align-items:flex-start;flex-wrap:wrap}
.live-home b{width:100%}
.story{gap:1rem}
.feature-grid{grid-template-columns:1fr}
.feature-wide{grid-column:auto;grid-template-columns:1fr}
.privacy-band{padding:2rem 1.2rem}
.privacy-options{grid-template-columns:1fr}
.final-cta{margin:0 1rem 3rem;padding:3rem 1rem}
.form-grid,.studio-grid{grid-template-columns:1fr}
.wide-panel{grid-column:auto}
.athlete-cards{grid-template-columns:1fr}
.studio-head{align-items:flex-start;flex-direction:column}
.meet-admin-row{grid-template-columns:1fr auto}.meet-admin-actions{grid-column:1/-1;justify-content:stretch}.meet-admin-actions .button{flex:1;text-align:center}
.athlete-hero-image{height:430px}
.live-meet,.next-meet{margin:1rem;align-items:flex-start;flex-wrap:wrap}
.live-meet .button,.next-meet .button{width:100%}
.career-strip{margin-top:1rem}
.career-strip div:nth-child(2){border-right:0}
.career-strip div:nth-child(-n+2){border-bottom:1px solid var(--line)}
.score-row{grid-template-columns:repeat(2,1fr)}
.meet-card{padding:1rem}
.meet-card-head{align-items:flex-start}
.best-grid,.average-grid{grid-template-columns:repeat(2,1fr)}
.award-grid{grid-template-columns:1fr}
.rotation-board{position:sticky;top:8px;z-index:10;background:var(--cream);padding:.5rem 0}
.rotation-event{padding:.55rem .2rem}
.event-entry{grid-template-columns:1fr 1fr}
.event-entry .button{grid-column:1/-1;width:100%;min-height:55px}
.event-entry input{font-size:1.25rem}
.placement-grid{grid-template-columns:repeat(2,1fr)}
.metric-grid{grid-template-columns:repeat(2,1fr)}
.admin-table{overflow-x:auto}
.admin-table>div{min-width:760px}
.import-sheet-controls{grid-template-columns:repeat(2,1fr)}
.footer-links{flex-direction:column}
.topbar{height:70px}
.brand img{width:145px}
.topbar nav{top:69px}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}

.post-composer{margin-top:1rem}
.meet-posts{display:grid;gap:.65rem;margin-top:1rem}
.meet-posts>div{background:#fbf7ef;border-left:5px solid var(--a);padding:.85rem 1rem;border-radius:0 12px 12px 0}
.meet-posts p{margin:.25rem 0}
.meet-posts small{color:var(--muted)}

.level-context{grid-column:1/-1;background:#fff;border-radius:22px;padding:1.5rem}
.level-context>div{display:flex;gap:.75rem;overflow-x:auto}
.level-context article{flex:1 0 180px;background:#f5f0f6;border-radius:15px;padding:1rem}
.level-context span,.level-context strong,.level-context small{display:block}
.level-context span,.level-context small{font-size:.7rem;color:var(--muted);font-weight:800}
.level-context strong{font-size:1.8rem;color:var(--p)}

.install-wrap{max-width:900px;margin:auto;padding:3rem 1rem 6rem}
.install-hero{text-align:center;margin-bottom:2rem}
.install-hero img{width:240px;margin:auto}
.install-form fieldset{border:1px solid var(--line);border-radius:16px;padding:1rem;margin:0}
.install-form legend{font-weight:900;color:var(--purple)}
.install-form legend small{font-weight:600;color:var(--muted)}
.alert{padding:1rem;border-radius:12px}
.alert.error{background:#ffe0e7;color:#8d1737}
.success-panel{margin-top:3rem}

.score-card{position:relative}
.score-card.champion{background:linear-gradient(140deg,#fff4c7,#f5be48);border:2px solid #d89b16;box-shadow:0 7px 22px rgba(216,155,22,.22)}
.score-card em{position:absolute;right:.5rem;top:.5rem;background:var(--purple);color:#fff;border-radius:999px;padding:.22rem .42rem;font-size:.48rem;font-style:normal;font-weight:950}
.aa-score.champion{background:linear-gradient(140deg,#fff4c7,#f5be48);border-radius:15px;padding:.65rem}
.aa-score em{display:block;color:#7f5700;font-size:.52rem;font-style:normal;font-weight:950}
.team-result{display:flex;align-items:center;justify-content:space-between;background:#f5f0f6;border-radius:12px;margin-top:.8rem;padding:.75rem 1rem}
.team-result span{font-size:.65rem;font-weight:950}
.team-result.champion{background:linear-gradient(100deg,#fff4c7,#f5be48);color:#563900}

.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}


/* ChalkArc arena presentation */
.marketing .hero{position:relative;isolation:isolate;max-width:none;min-height:760px;margin:0;padding:clamp(4rem,7vw,7rem) max(24px,calc((100vw - 1220px)/2)) 5.5rem;color:#fff;background:
radial-gradient(circle at 78% 24%,rgba(166,89,255,.42) 0 2px,transparent 3px),
radial-gradient(circle at 88% 14%,rgba(255,255,255,.92) 0 1.5px,transparent 2.5px),
radial-gradient(circle at 91% 44%,rgba(24,211,212,.8) 0 1.5px,transparent 2.5px),
radial-gradient(circle at 66% 78%,rgba(244,190,71,.75) 0 1.5px,transparent 2.5px),
radial-gradient(ellipse at 79% 50%,rgba(118,49,199,.38),transparent 48%),
linear-gradient(118deg,#170721 0%,#2b0d45 47%,#401365 76%,#170720 100%);overflow:hidden}

.marketing .hero:before{content:"";position:absolute;z-index:-1;width:76vw;height:76vw;max-width:1050px;max-height:1050px;right:-24vw;top:-35vw;border:2px solid rgba(35,219,219,.28);border-radius:50%;box-shadow:0 0 0 52px rgba(122,62,181,.10),0 0 0 104px rgba(255,255,255,.035),0 0 90px rgba(36,214,214,.16)}

.marketing .hero:after{content:"";position:absolute;z-index:-1;left:-8%;right:-8%;bottom:-68px;height:145px;background:linear-gradient(96deg,transparent 4%,rgba(21,205,211,.55) 30%,rgba(143,74,214,.8) 58%,rgba(244,190,71,.5) 82%,transparent 96%);transform:rotate(-2.5deg);filter:blur(22px);opacity:.72}

.marketing .hero-copy{position:relative;z-index:3}

.marketing .hero-copy:before{content:"✦";position:absolute;left:-2.1rem;top:-1.8rem;color:var(--gold);font-size:1.45rem;text-shadow:28px 14px 0 rgba(31,215,214,.9),12px 46px 0 rgba(255,255,255,.38);animation:twinkle 2.8s ease-in-out infinite}

.marketing .hero .kicker{display:inline-flex;align-items:center;gap:.55rem;color:#fff;background:linear-gradient(90deg,rgba(255,111,120,.22),rgba(151,112,204,.16));border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:.5rem .8rem;box-shadow:inset 0 0 20px rgba(255,255,255,.05)}

.marketing .hero .kicker:before{content:"★";color:var(--gold)}

.marketing .hero-copy h1{font-size:clamp(3.3rem,6.4vw,6.9rem);max-width:760px;margin:.75rem 0 1.4rem;letter-spacing:-.058em;text-wrap:balance;text-shadow:0 12px 34px rgba(0,0,0,.22)}

.marketing .hero-copy h1 em{display:inline;padding-inline-end:.1em;background:linear-gradient(90deg,#bf8dff 0%,#62eef0 48%,#ffd975 100%);-webkit-background-clip:text;background-clip:text;-webkit-box-decoration-break:clone;box-decoration-break:clone;color:transparent;text-shadow:none}

.marketing .hero-copy>p{color:#e7ddee;font-size:1.16rem;max-width:620px}

.marketing .hero-copy .actions{margin:2.1rem 0 1.35rem}

.marketing .hero .button.primary{background:linear-gradient(105deg,#ff5f86,#9b4ee2 55%,#5b25a1);box-shadow:0 12px 36px rgba(180,58,177,.42),inset 0 1px 0 rgba(255,255,255,.35);border:1px solid rgba(255,255,255,.18)}

.marketing .hero .button.primary:after{content:" ✦";color:#fff0a9;margin-left:.4rem}

.marketing .hero .button.ghost{color:#fff;border-color:rgba(255,255,255,.72);background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}

.marketing .hero .button.ghost:hover{background:#fff;color:var(--purple)}

.marketing .hero .trust-row{color:#d9cce3;gap:.55rem}

.marketing .hero .trust-row span{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);border-radius:999px;padding:.38rem .68rem;backdrop-filter:blur(6px)}

.marketing .hero .trust-row span:before{color:#59e3d4}

.marketing .hero-art{min-height:620px;align-items:center;perspective:1200px}

.marketing .hero-art>img{width:min(100%,520px);max-height:none;z-index:3;border:1px solid rgba(255,255,255,.24);border-radius:9px;box-shadow:0 32px 70px rgba(0,0,0,.48),0 0 0 10px rgba(255,255,255,.035),0 0 64px rgba(148,69,230,.36);transform:rotate(1.2deg)}

.marketing .hero-orbit{inset:7% -3% 6% 2%;border-radius:50%;background:conic-gradient(from 202deg,transparent 0 9%,rgba(44,229,225,.9) 10% 12%,transparent 13% 42%,rgba(244,190,71,.95) 43% 45%,transparent 46% 69%,rgba(167,83,242,.95) 70% 74%,transparent 75%);transform:rotate(-9deg);filter:drop-shadow(0 0 15px rgba(98,238,240,.32))}

.marketing .hero-orbit:before{content:"";position:absolute;inset:8%;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:inset 0 0 55px rgba(133,59,208,.24)}

.marketing .hero-orbit:after{width:62px;height:62px;border:12px solid var(--gold);right:4%;top:9%;box-shadow:0 0 28px rgba(244,190,71,.32)}

.marketing .hero-art:before{content:"✦";position:absolute;z-index:5;right:1%;top:12%;color:#fff;font-size:1.5rem;text-shadow:-44px 54px 0 #45dfe0,-12px 128px 0 rgba(255,255,255,.7),-490px 36px 0 rgba(244,190,71,.85),-450px 420px 0 rgba(70,224,221,.55);animation:twinkle 3.2s ease-in-out infinite reverse}

.marketing .hero-art:after{content:"THE STORY THAT STARTED IT ALL";position:absolute;z-index:6;left:0;bottom:10%;padding:.46rem .72rem;color:#fff;font-size:.61rem;font-weight:950;letter-spacing:.16em;background:rgba(20,5,30,.75);border-left:4px solid var(--gold);backdrop-filter:blur(8px);transform:rotate(-3deg)}

.marketing .floating-score{right:-1rem;bottom:12%;border:1px solid rgba(255,255,255,.55);background:linear-gradient(145deg,#fff,#f0e6ff);box-shadow:0 18px 50px rgba(0,0,0,.38),0 0 26px rgba(244,190,71,.22);transform:rotate(3deg)}

.marketing .floating-score:before{content:"★";position:absolute;right:.7rem;top:.55rem;color:var(--gold)}

.marketing .story-number{color:var(--gold);text-shadow:0 5px 0 rgba(52,20,83,.10)}

.marketing .feature{border-top:5px solid var(--purple-2);transition:transform .2s ease,box-shadow .2s ease}

.marketing .feature:nth-child(2){border-top-color:var(--gold)}
.marketing .feature:nth-child(3){border-top-color:#26c7c7}
.marketing .feature:nth-child(4){border-top-color:var(--coral)}

.marketing .feature:hover{transform:translateY(-5px);box-shadow:0 22px 44px rgba(45,22,71,.12)}

.marketing .feature.dark{border-top-color:var(--gold);background:radial-gradient(circle at 90% 10%,rgba(151,112,204,.42),transparent 35%),linear-gradient(130deg,#241032,#461766)}

.marketing .privacy-band{box-shadow:0 22px 60px rgba(52,20,83,.24);background:radial-gradient(circle at 90% 10%,rgba(31,217,216,.22),transparent 28%),linear-gradient(120deg,#281038,#672a8d)}

.marketing .final-cta{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 0,rgba(244,190,71,.25),transparent 34%),linear-gradient(135deg,#ece0f7,#fbf8f2);border:1px solid rgba(111,58,164,.16);box-shadow:0 20px 55px rgba(52,20,83,.10)}
.marketing .final-cta>p{max-width:650px;margin:0 auto 1.7rem;color:var(--muted)}

.real-proof{max-width:1160px;margin:-2.4rem auto 2rem;position:relative;z-index:8;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 22px 65px rgba(31,7,63,.18)}
.real-proof>div,.real-proof>a{min-height:145px;padding:1.35rem 1.45rem;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line);text-decoration:none}
.real-proof>a{color:#fff;background:linear-gradient(135deg,#321063,#7b3fc0)}
.real-proof span{font-size:.61rem;font-weight:950;letter-spacing:.13em;color:var(--coral)}.real-proof>a span{color:#ffd978}
.real-proof strong{font-size:2rem;line-height:1.05;margin:.35rem 0;color:var(--purple)}.real-proof>a strong{color:#fff}
.real-proof small{color:var(--muted);font-weight:700}.real-proof>a small{color:#e6d9ef}

.name-story{max-width:1160px;margin:7rem auto 2rem;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:5rem;padding:4rem;border-radius:38px;color:#fff;background:radial-gradient(circle at 12% 18%,rgba(35,218,216,.22),transparent 29%),radial-gradient(circle at 88% 85%,rgba(244,190,71,.2),transparent 28%),linear-gradient(130deg,#100724,#351164 58%,#15104f);box-shadow:0 28px 75px rgba(25,5,54,.28)}
.name-mark{position:relative;min-height:300px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px solid rgba(255,255,255,.17);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.035),0 0 65px rgba(38,220,216,.15);transform:rotate(-5deg)}
.name-mark:before,.name-mark:after{content:"✦";position:absolute;color:var(--gold);font-size:1.6rem}.name-mark:before{top:10%;right:15%;text-shadow:-210px 175px 0 #39dcda}.name-mark:after{bottom:13%;right:23%;color:#ff6f9d}
.name-mark span{font-size:clamp(2.3rem,5vw,4.4rem);font-weight:1000;line-height:.84;letter-spacing:-.08em}.name-mark span:last-child{color:#69e8e4}.name-mark i{font-style:normal;color:var(--gold);font-weight:1000}
.name-story h2{margin:.2rem 0 1.2rem}.name-story h2 em{font-style:normal;color:#72e4e1}.name-story p{color:#ded2ea;font-size:1.08rem;margin:0}

.how-grid{max-width:1160px;margin:0 auto 3rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.how-grid article{position:relative;overflow:hidden;min-height:330px;padding:2rem;border-radius:26px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 35px rgba(45,22,71,.06)}
.how-grid article:nth-child(2){color:#fff;background:linear-gradient(140deg,#2b0b4e,#6f2fa1)}.how-grid article:nth-child(2) p{color:#dfd1e8}
.how-grid b{position:absolute;right:1rem;top:.25rem;font-size:6.5rem;line-height:1;color:rgba(111,58,164,.09)}.how-grid article:nth-child(2) b{color:rgba(255,255,255,.1)}
.how-grid span{font-size:.66rem;letter-spacing:.14em;font-weight:950;color:var(--coral)}.how-grid h3{font-size:2rem;margin:3.8rem 0 .8rem}.how-grid p{color:var(--muted)}

.difference-band{max-width:1160px;margin:1rem auto 5rem;padding:3.6rem;border-radius:32px;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;background:linear-gradient(105deg,#fff3c8,#fff 55%,#eee2fa);border:1px solid rgba(111,58,164,.12)}
.difference-band h2{margin:0}.difference-band h2 em{font-style:normal;color:var(--purple-2)}.difference-band>p{font-size:1.08rem;color:var(--muted);margin:0}

.audrey-proof{max-width:1160px;margin:0 auto 7rem;padding:4rem;border-radius:36px;display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center;color:#fff;background:radial-gradient(circle at 88% 15%,rgba(37,215,213,.25),transparent 25%),linear-gradient(125deg,#110724,#351064 64%,#123474);box-shadow:0 28px 70px rgba(22,5,50,.28)}
.audrey-proof h2{margin:.2rem 0 1rem}.audrey-proof p{color:#ddd1eb}.audrey-proof .button.ghost{color:#fff;border-color:rgba(255,255,255,.7)}
.audrey-proof-card{min-height:285px;padding:2rem;display:flex;flex-direction:column;justify-content:flex-end;border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(20,5,42,.92)),url('/assets/audrey-hero.webp') center 23%/cover;box-shadow:0 20px 45px rgba(0,0,0,.3)}
.audrey-proof-card span{font-size:.62rem;font-weight:950;letter-spacing:.14em;color:#ffd76a}.audrey-proof-card strong{font-size:2.25rem;line-height:1.05}.audrey-proof-card small{color:#dfd5e8;margin:.35rem 0 1rem}.audrey-proof-card a{font-weight:900;color:#74ebe6}

@keyframes twinkle{0%,100%{opacity:.45;transform:scale(.82) rotate(-7deg)}
50%{opacity:1;transform:scale(1.12) rotate(7deg)}
}

@media(max-width:900px){.marketing .hero{grid-template-columns:1fr;padding:4.5rem 1.3rem 3rem;text-align:center}
.marketing .hero-copy h1{margin-left:auto;margin-right:auto}
.marketing .hero-copy>p{margin-left:auto;margin-right:auto}
.marketing .hero-copy:before{left:8%;top:-2rem}
.marketing .hero-art{min-height:560px}
.marketing .hero-art>img{width:min(92%,520px)}
.marketing .hero-art:after{left:5%;bottom:8%}
.marketing .floating-score{right:6%}
.real-proof{margin:-1rem 1rem 2rem;grid-template-columns:repeat(2,1fr)}
.name-story,.difference-band,.audrey-proof{grid-template-columns:1fr;margin-left:1rem;margin-right:1rem;gap:2rem;padding:2.5rem}
.name-mark{min-height:260px}.how-grid{grid-template-columns:1fr;margin-left:1rem;margin-right:1rem}.how-grid article{min-height:250px}
.command-picker{top:88px}.command-picker form{grid-template-columns:1fr 1fr}.selected-meet-head{align-items:flex-start}
}

@media(max-width:620px){.marketing .hero{padding-top:3.2rem}
.marketing .hero-copy h1{font-size:clamp(2.7rem,13vw,4.1rem)}
.marketing .hero-copy>p{font-size:1rem}
.marketing .hero-copy .actions{display:grid}
.marketing .hero .button{width:100%}
.marketing .hero .trust-row{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}
.marketing .hero .trust-row span:last-child{grid-column:1/-1}
.marketing .hero-art{min-height:445px;margin-top:1rem}
.marketing .hero-art>img{width:90%;transform:none}
.marketing .hero-orbit{inset:6% -15% 3%}
.marketing .hero-art:before{display:none}
.marketing .hero-art:after{font-size:.52rem;left:1%;bottom:8%}
.marketing .floating-score{right:1%;bottom:9%;padding:.75rem .9rem}
.marketing .floating-score strong{font-size:1.55rem}
.real-proof{grid-template-columns:1fr;margin-top:-.5rem}.real-proof>div,.real-proof>a{min-height:110px;border-right:0;border-bottom:1px solid var(--line)}
.name-story{margin-top:4rem;padding:1.4rem;border-radius:26px}.name-mark{min-height:235px}.name-story h2{font-size:2.2rem}
.feature-intro{padding-left:1.2rem;padding-right:1.2rem}.how-grid article{min-height:280px}.difference-band,.audrey-proof{padding:1.6rem;border-radius:25px}.audrey-proof-card{min-height:330px}
.command-picker{position:relative;top:auto;padding:.85rem}.command-picker form{grid-template-columns:1fr}.command-picker .button{width:100%}.selected-meet-head{display:grid;padding:1.25rem}.selected-meet-head .button{width:100%}.meet-details-priority .form-grid{grid-template-columns:1fr}.meet-status-row{align-items:flex-end}.inline-form{width:100%;grid-template-columns:1fr auto}
}

.not-found{min-height:calc(100vh - 82px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 1.3rem;color:#fff;background:radial-gradient(circle at 50% 42%,rgba(126,55,197,.72),transparent 28rem),linear-gradient(135deg,#170721,#3e1262 65%,#170721);overflow:hidden;position:relative}
.not-found:before,.not-found:after{content:"";position:absolute;border:2px solid rgba(50,222,220,.28);border-radius:50%;width:34rem;height:34rem}
.not-found:before{left:-19rem;top:-18rem;box-shadow:0 0 0 55px rgba(151,112,204,.07)}
.not-found:after{right:-20rem;bottom:-20rem;box-shadow:0 0 0 55px rgba(244,190,71,.06)}
.not-found .kicker{color:#ffd96f}
.not-found h1{max-width:820px;margin:.3rem 0 1rem;font-size:clamp(3.2rem,8vw,7rem);text-shadow:0 15px 40px rgba(0,0,0,.35)}
.not-found p{font-size:1.15rem;color:#e4d8eb}
.not-found .actions{justify-content:center;position:relative;z-index:2}
.not-found .button.primary{background:linear-gradient(105deg,#ff5f86,#9b4ee2);box-shadow:0 12px 34px rgba(185,66,183,.4)}
.not-found-sparkles{color:#fff;font-size:1.4rem;letter-spacing:2rem;text-shadow:60px 35px 0 #42dddf,-70px 50px 0 #f4be47;animation:twinkle 3s ease-in-out infinite}
.not-found-beam{width:min(540px,80vw);height:22px;margin:1.6rem auto 2.2rem;position:relative}
.not-found-beam:before{content:"";position:absolute;left:0;right:0;top:2px;height:8px;border-radius:99px;background:linear-gradient(90deg,#36d7d8,#a85ce6,#f4be47);box-shadow:0 0 26px rgba(103,224,224,.4)}
.not-found-beam span:before,.not-found-beam span:after{content:"";position:absolute;top:10px;width:5px;height:25px;background:#bda7cd}
.not-found-beam span:before{left:18%}
.not-found-beam span:after{right:18%}

/* Deep-purple ChalkArc foundation */
:root{--ink:#1b0b32;--purple:#321063;--deep-purple:#100724;--coral:#ff3f81;--cream:#f4f1ff;--line:#e4daf2;--shadow:0 18px 55px rgba(31,7,63,.14)}
.topbar{background:rgba(16,7,36,.97);color:#fff;border-bottom-color:rgba(255,255,255,.11);box-shadow:0 8px 28px rgba(16,7,36,.18)}
.brand{display:block;padding:.2rem 0;background:transparent;border-radius:0;box-shadow:none}
.brand img{width:170px;max-height:48px;filter:none;opacity:1}
.topbar nav a{color:#eee6ff}
.topbar nav a:hover{color:#fff}
.topbar nav a:last-child{background:linear-gradient(105deg,#ff3f81,#8546d8)}
.nav-toggle{color:#fff}
.studio-head{padding:2.2rem 2.4rem;border-radius:28px;background:radial-gradient(circle at 88% 12%,rgba(37,213,214,.18),transparent 25%),linear-gradient(125deg,#100724,#321063 62%,#102b78);color:#fff;box-shadow:0 20px 48px rgba(29,8,61,.2)}
.studio-head h1{color:#fff}
.studio-head p{color:#ddd0f2;margin-bottom:0}
.studio-head .kicker{color:#ffc3e0}
.studio-head .button.secondary{background:#fff;color:var(--purple)}
@media(max-width:900px){.topbar nav{background:#100724}.topbar nav a{color:#fff}}
@media(max-width:760px){.import-sheet-controls{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.brand{padding:.2rem .45rem}.brand img{width:140px}.studio-head{padding:1.6rem 1.25rem}.import-sheet-controls{grid-template-columns:1fr}}

/* Account security, shared meet directory, and provider controls */
.consent-check{margin:1rem 0;padding:1rem;border:1px solid #d8c9ec;border-radius:14px;background:#faf7ff}.consent-check a{font-weight:850}
.account-studio{max-width:1160px}.account-export-list{display:grid;gap:.65rem;margin:1rem 0}.account-export-list a{display:flex;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:14px;background:#fff}.account-export-list span{color:var(--purple);font-weight:850}
.shared-meet-fields{display:grid;gap:.8rem;margin:1rem 0;padding:1rem;border:1px solid var(--line);border-radius:18px;background:#fbf9ff}.shared-meet-fields>.form-grid{margin:0}.athlete-session-fields{padding:1rem;border-radius:18px;background:#f3ecfb}.directory-locked input{background:#eeeaf3;color:#655d6c}.meet-resource-links,.public-meet-resources{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.7rem}.meet-resource-links a,.public-meet-resources a{font-weight:850;text-decoration:none}.public-meet-resources{align-items:center;padding:1rem 1.4rem;border-top:1px solid rgba(255,255,255,.16)}.public-meet-resources span{margin-right:auto}
.directory-date-warning{display:block;margin-top:.55rem;padding:.65rem .75rem;border-radius:12px;background:#fff4cf;color:#604900;font-size:.78rem;font-weight:800;line-height:1.35}
.directory-date-warning[hidden],.shared-meet-fields[hidden]{display:none}.past-meet-check,.verify-meet-check{display:flex!important;align-items:center;gap:.55rem;margin:.75rem 0;font-weight:850}.past-meet-check input,.verify-meet-check input{width:1.15rem;height:1.15rem;flex:0 0 auto}.past-meet-check small{font-weight:650;color:var(--muted)}.meet-directory-admin{display:grid;gap:1rem}.directory-admin-card{padding:0;overflow:hidden}.directory-admin-card summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.25rem;cursor:pointer;list-style:none}.directory-admin-card summary::-webkit-details-marker{display:none}.directory-admin-card summary span:first-child{display:grid;gap:.2rem}.directory-admin-card form{padding:0 1.25rem 1.25rem;border-top:1px solid var(--line)}
.provider-tabs{display:flex;gap:.6rem;margin:1rem 0}.provider-tabs .button{flex:1}.provider-tabs+form>[data-provider-panel]{padding:1rem;border:1px solid var(--line);border-radius:16px;background:#faf8fe;margin-bottom:1rem}.family-access-table .danger{margin-top:.45rem}
.gym-picker{display:grid;gap:.85rem;margin:1rem 0;padding:1rem;border:1px solid var(--line);border-radius:18px;background:#faf8fe}.gym-picker legend{padding:0 .45rem;color:var(--purple);font-weight:950}.gym-picker>.form-grid{margin:0}.gym-picker>small{color:#655d6c}.gym-colors{grid-template-columns:repeat(3,1fr)}.gym-colors input[type=color],.gym-admin-colors input[type=color]{min-height:48px;padding:.25rem}.gym-admin-grid{grid-template-columns:1fr}.gym-admin-list{display:grid;gap:.75rem}.gym-admin-row{display:grid;grid-template-columns:minmax(240px,1.6fr) 1fr 80px minmax(260px,1.2fr) 110px auto;gap:.65rem;align-items:end;padding:1rem;border:1px solid var(--line);border-radius:16px;background:#fff}.gym-admin-name{display:grid;grid-template-columns:40px 1fr;gap:.65rem;align-items:end}.gym-swatch{width:40px;height:48px;border-radius:10px;background:linear-gradient(135deg,var(--gp) 0 43%,var(--gs) 43% 72%,var(--ga) 72%);box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}.gym-admin-colors{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}.gym-admin-colors label{font-size:.65rem}.gym-admin-row .button{margin-bottom:.15rem}
.gym-picker [hidden],[data-provider-panel][hidden]{display:none!important}
@media(max-width:1050px){.gym-admin-row{grid-template-columns:1fr 1fr 90px}.gym-admin-name,.gym-admin-colors{grid-column:span 1}}
@media(max-width:620px){.account-export-list a{display:grid}.public-meet-resources{display:grid}.provider-tabs{display:grid}.shared-meet-fields{padding:.75rem}}
@media(max-width:620px){.gym-colors,.gym-admin-row,.gym-admin-colors{grid-template-columns:1fr}.gym-admin-name,.gym-admin-colors{grid-column:auto}.gym-admin-row{align-items:stretch}}
:where([hidden]){display:none!important}
.hero-editor{margin-top:0}.hero-preview-switch{display:flex;gap:.5rem;margin:1rem 0}.hero-preview-switch [aria-pressed="true"]{background:#32105e;color:white}.hero-preview-stage{--p:var(--athlete-primary);--s:var(--athlete-secondary);--a:var(--athlete-accent);max-width:1096px;margin:1rem auto 1.5rem;transition:max-width .2s}.hero-preview-stage .meet-poster{min-height:500px}.hero-preview-stage .poster-photo img{width:100%;height:100%;max-height:none;object-fit:cover;margin:0;border-radius:0}.hero-preview-stage .cheer-chip{pointer-events:none}.hero-preview-stage .poster-ticket{pointer-events:none}.hero-editor.is-mobile-preview .hero-preview-stage{max-width:390px}.hero-editor.is-mobile-preview .meet-poster{min-height:0;display:flex;flex-direction:column;padding:24px 20px 20px;border-radius:26px}.hero-editor.is-mobile-preview .poster-photo{top:58px;right:0;bottom:auto;width:100%;height:430px;justify-content:center}.hero-editor.is-mobile-preview .poster-copy{max-width:100%;padding-top:405px}.hero-editor.is-mobile-preview .poster-copy h1{font-size:3.75rem}.hero-editor.is-mobile-preview .poster-proof{display:flex;flex-wrap:wrap}.hero-editor.is-mobile-preview .poster-ticket{display:block;position:relative;right:auto;bottom:auto;width:100%;margin-top:18px;transform:none;box-shadow:7px 8px 0 rgba(13,3,46,.28)}.hero-editor.is-mobile-preview .cheer-chip{width:100%;margin-top:18px}.hero-editor input[type="file"]{width:100%}.hero-editor input[type="range"]{width:100%;accent-color:#32105e}.hero-position-controls{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}.hero-editor form[data-api="hero_remove"]{margin-top:1rem}@media(max-width:760px){.hero-position-controls{grid-template-columns:1fr}.hero-editor .hero-preview-stage{max-width:390px}.hero-editor .meet-poster{min-height:0;display:flex;flex-direction:column;padding:24px 20px 20px}.hero-editor .poster-photo{top:58px;right:0;bottom:auto;width:100%;height:430px;justify-content:center}.hero-editor .poster-copy{max-width:100%;padding-top:405px}.hero-editor .poster-copy h1{font-size:3.75rem}.hero-editor .poster-proof{display:flex;flex-wrap:wrap}.hero-editor .poster-ticket{display:block;position:relative;right:auto;bottom:auto;width:100%;margin-top:18px;transform:none}.hero-editor .cheer-chip{width:100%;margin-top:18px}}
.admin-denied{max-width:650px;margin:3rem auto;text-align:center;padding:3rem}
.activity-list{max-height:70vh;overflow:auto}
.activity-list>div{display:grid;grid-template-columns:160px 1fr 1fr;gap:1rem;padding:12px;border-bottom:1px solid #e6dff0}
@media(max-width:650px){.activity-list>div{grid-template-columns:1fr;gap:4px}}

form[data-api="athlete_save"]>.form-grid{align-items:start}
[data-family-code-field][hidden]{display:none!important}

.activity-note{font-size:.85rem;color:var(--muted);margin:.4rem 0 1rem}.activity-ip{display:block;font-size:.73rem;color:var(--muted);margin-top:.3rem;overflow-wrap:anywhere}

.beta-confirmation{padding:1.3rem;border:2px solid #20b8bd;border-radius:18px;background:#eefbfc;color:#251239;font-weight:800;line-height:1.45;margin:1rem 0}

/* Meet day alert readiness and the parent's athlete alert card. */
.sms-state{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin:.75rem 0}.sms-state small{font-weight:650;color:#4c4560}.sms-state-badge{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:999px;padding:.55rem .9rem;color:#fff;font-weight:900;letter-spacing:.06em;box-shadow:0 4px 12px rgba(25,11,45,.16)}.sms-state-badge.is-live{background:#087a3e}.sms-state-badge.is-off{background:#ba2637}
.studio-athlete-unit{width:100%;max-width:390px}.studio-athlete-unit .athlete-card{display:flex;flex-direction:column;min-height:230px}.studio-sms{padding:1rem 1.15rem;border:1px solid #d6cbe0;border-radius:0 0 18px 18px;background:#fff;line-height:1.45}.studio-sms b{color:#32105e}.studio-sms p{margin:.5rem 0}.studio-sms ul{padding-left:1.2rem}.studio-sms a{font-weight:800;color:#32105e}.admin-family-search{display:flex;gap:.8rem;align-items:end;flex-wrap:wrap}.admin-family-search label{flex:1 1 260px}.admin-pages{display:flex;gap:.75rem;margin-top:1rem}.activity-path{display:block;word-break:break-word;font-weight:500;color:#635575}
/* Athlete Studio: keep short season history compact and place text management beside profile settings. */
.studio-grid{align-items:start}.studio-side-stack{display:grid;align-content:start;gap:1rem;min-width:0}.studio-side-stack>.panel{align-self:start}.studio-side-stack .season-admin-list{margin-bottom:1rem}.studio-side-stack .season-admin-list>div{padding:.55rem 0}.studio-side-stack .season-admin-list>div>span{height:28px}.athlete-sms-panel p{line-height:1.5}.athlete-sms-panel a{color:#32105e;font-weight:800}.athlete-sms-panel ul{padding-left:1.2rem}
.admin-studio-link{color:#32105e;font-weight:850;text-decoration:underline;text-underline-offset:3px}
.import-sheet h4{margin:.4rem 0;font-size:1.12rem}
.import-skip{display:inline-flex;align-items:center;gap:.5rem;margin:.5rem 0 1rem}
.import-skip input{width:auto}
.import-map-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:1rem 0}
.import-sample-scroll{overflow-x:auto;max-width:100%;margin:.6rem 0 1rem}
.import-sample-scroll table{border-collapse:collapse;min-width:620px;width:100%;font-size:.83rem}
.import-sample-scroll td,.import-sample-scroll th{padding:.5rem;border:1px solid var(--line);text-align:left;white-space:nowrap}
@media(max-width:760px){.import-map-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.import-map-fields{grid-template-columns:1fr}}

.season-admin-list>div{grid-template-columns:10px minmax(0,1fr) auto auto}.season-edit-button{margin-left:.25rem}.season-edit-dialog form{display:grid;gap:.8rem;min-width:min(410px,82vw)}.season-edit-dialog form>p{margin:0;color:var(--muted);font-size:.84rem}

.existing-account-note{color:#9b2143;font-size:.73rem;line-height:1.4}
