/* Gridcraft · Court-light theme (matches /pickleball/) */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#070b14;--panel:#101825;--stroke:#273647;--white:#f1f8ff;--cyan:#79dff6;--navy:#0b111c;--ink:#f1f8ff;--muted:#a3b4c6;--line:#243445;--lime:#c2fe46;--paper:#070b14}
body{font-family:'DM Sans',Inter,Arial,sans-serif;background:radial-gradient(ellipse at 80% -5%,#14273a 0,transparent 46%),radial-gradient(ellipse at 0% 100%,#c2fe460d 0,transparent 40%),linear-gradient(120deg,#0a101d 0%,#070b14 55%) fixed;color:var(--white)}
h1,h2,.brand,.lab-brand,.lab-heading h1,.advanced-title h1,.plan-stat strong,.lead-story .story-index{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;letter-spacing:.005em}
h1{font-size:clamp(46px,6vw,88px);line-height:.95;text-transform:none}h1 span{color:transparent;-webkit-text-stroke:1.5px #ecf7ff}
@supports not (-webkit-text-stroke:1px #fff){h1 span{color:#aab9c9}}
h2{letter-spacing:.01em;line-height:1.05}.section-heading h2{font-size:clamp(34px,4vw,50px)}.rhythm h2{font-size:42px}
.eyebrow,.nav-label,header{font-family:'DM Sans',Arial,sans-serif;letter-spacing:.22em;font-weight:800;font-size:11px;text-transform:uppercase}.eyebrow{color:var(--lime)}
.brand{font-size:34px;letter-spacing:.02em}.brandmark{color:var(--lime);text-shadow:0 0 18px #c2fe4690}.brand-sub{letter-spacing:.2em;color:#8fa3b8}
aside{background:linear-gradient(180deg,#0b1220,#070b14);border-right:1px solid #223142}
nav a{border-radius:10px;border-left:0}nav a:hover,nav a[aria-current=page]{background:#c2fe4614;color:var(--lime);box-shadow:inset 3px 0 0 var(--lime)}nav a span{color:#6f849a}
nav a[href="/pickleball/"]{color:var(--lime)}
header{color:#8ea2b7;border-color:#223142}
.focus{background:linear-gradient(148deg,#152333,#0d1724);border:1px solid #2b4351;border-radius:16px;position:relative;overflow:hidden;box-shadow:0 20px 60px #0006,0 0 0 1px #c2fe4610}
.focus:after,.service-feature:after{content:"";position:absolute;width:190px;height:190px;right:-90px;top:-90px;border:1px solid #4d6b5c;border-radius:50%;pointer-events:none}
.rhythm,.modules,.side-card,.project,.news-card,.boundary,.news-method,.lab-controls,.network-panel,.plot-panel,.numbers-panel,.calculation-panel,.advanced-inputs,.advanced-network,.study-lesson,.lesson-grid article,.code-lesson{background:linear-gradient(160deg,#111b28,#0b111c);border:1px solid var(--stroke);border-radius:14px}
.rhythm,.lab-controls,.study-lesson{border-top:2px solid var(--lime)}.project{border-top:2px solid #3e5a4a}.project:hover,.news-card:hover{border-color:#58744b;box-shadow:0 0 0 1px #c2fe4622,0 18px 50px #0007}
.modules{overflow:hidden}.news-card,.project{transition:border-color .2s,box-shadow .2s}
.button,.filter.selected,.advanced-toolbar button[aria-selected=true],.bus-buttons button[aria-pressed=true]{background:var(--lime);color:#10170b;border-color:var(--lime)}
.button{border-radius:999px;padding:12px 22px;font-weight:800;letter-spacing:.04em;box-shadow:0 0 24px #c2fe4640}.button:hover{background:#d8ff8a;box-shadow:0 0 34px #c2fe4670}
.filter,.advanced-toolbar button,.bus-buttons button,.quiet-button,.scenario-box button{border-radius:999px}
.filter:hover,.advanced-toolbar button:hover,.bus-buttons button:hover{border-color:var(--lime)}
summary:hover,details[open]>summary{background:#c2fe460d}
.deliver,.study,.insight,.metric-grid>div{background:#c2fe460a;border-left-color:var(--lime);border-radius:10px}
.metric-grid>div{border:1px solid #2f4a3c}
.metric-grid strong{color:#d6ff8f;text-shadow:0 0 18px #c2fe4640}
.deliver strong,.study b,.study small{color:#d6ff8f}
.project-meta span,.story-tags span{background:#16222f;color:#c9d6e2;border-radius:999px}
.checked{background:#c2fe4614;color:var(--lime);border-color:#3a5b4b;border-radius:999px}
.briefing-strip{background:#c2fe460c;border-color:#3a5b4b;border-left-color:var(--lime);border-radius:12px}
.edition-bar b,.story-index,.source,.news-method a,.lesson-link,.code-lesson a,.lesson-scroll a,.lab-brand span{color:var(--lime)}
.plan-stat strong{color:var(--lime);text-shadow:0 0 24px #c2fe4650}
.advanced-inputs input:not([type=checkbox]),.advanced-inputs select,.lab-controls input:not([type=checkbox]):not([type=range]),.lab-controls select{border-radius:8px;background:#070b14}
input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
input[type=range],input[type=checkbox]{accent-color:var(--lime)}
.lab-header{border-bottom:1px solid #223142}.lab-header nav a{color:#99aec3;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.lab-header nav a:hover{box-shadow:none;background:transparent;color:var(--lime)}
.lab-heading h1,.advanced-title h1{font-size:clamp(34px,4vw,60px);line-height:1}
.phase-a{color:#70e9ee}
footer,.lab-footer{border-color:#223142;color:#8ea2b7}
.skip{background:var(--lime);color:#10170b}
@media(max-width:760px){h1{font-size:clamp(42px,12vw,64px);letter-spacing:-.01em}.news-intro h1{font-size:44px}aside{border-right:0;border-bottom:1px solid #223142}nav a{border-radius:999px;border:1px solid #273647;padding:6px 12px}nav a:hover,nav a[aria-current=page]{box-shadow:none;border-color:var(--lime)}.focus,.rhythm,.project,.news-card{border-radius:14px}.lab-heading h1,.advanced-title h1{font-size:38px}}
@media print{body{background:#fff;color:#000}}
.study-lesson details[open]>summary,.study-lesson summary{background:#c2fe460d}
