@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-BOOGhInR.woff2) format("woff2"),url(/assets/inter-latin-400-normal-gitzw0hO.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-D273HNI0.woff2) format("woff2"),url(/assets/inter-latin-600-normal-B5cFAncS.woff) format("woff")}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/montserrat-latin-700-normal-Dkxlx_w4.woff2) format("woff2"),url(/assets/montserrat-latin-700-normal-o5q9xX7W.woff) format("woff")}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/montserrat-latin-800-normal-DIlMgMlR.woff2) format("woff2"),url(/assets/montserrat-latin-800-normal-Cf8oFnaQ.woff) format("woff")}:root{--blue: #0060a6;--cta: #00aeef;--cta-ink: #000000;--black: #000000;--white: #ffffff;--bg: #ffffff;--surface: #ffffff;--surface-2: rgba(0, 0, 0, .035);--surface-3: rgba(0, 0, 0, .06);--text: #000000;--muted: rgba(0, 0, 0, .64);--line: rgba(0, 0, 0, .12);--heading: var(--blue);--focus: #00aeef;--ring: #0060a6;--danger: #b42318;--ok: #1b7a4b;--shadow: 0 1px 2px rgba(0, 0, 0, .06), 0 8px 24px rgba(0, 0, 0, .06);--font-head: "Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--radius: 14px;--radius-sm: 10px;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #000000;--surface: #0d0d0d;--surface-2: rgba(255, 255, 255, .05);--surface-3: rgba(255, 255, 255, .09);--text: #ffffff;--muted: rgba(255, 255, 255, .68);--line: rgba(255, 255, 255, .14);--heading: #ffffff;--ring: #00aeef;--danger: #ff8a80;--ok: #4cc38a;--shadow: none;color-scheme:dark}}:root[data-theme=dark]{--bg: #000000;--surface: #0d0d0d;--surface-2: rgba(255, 255, 255, .05);--surface-3: rgba(255, 255, 255, .09);--text: #ffffff;--muted: rgba(255, 255, 255, .68);--line: rgba(255, 255, 255, .14);--heading: #ffffff;--ring: #00aeef;--danger: #ff8a80;--ok: #4cc38a;--shadow: none;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-head);color:var(--heading);margin:0;letter-spacing:-.02em}h1{font-weight:800;font-size:clamp(24px,5vw,34px);line-height:1.05}h2{font-weight:800;font-size:clamp(20px,4vw,26px);line-height:1.1}h3{font-weight:700;font-size:17px}h4{font-weight:700;font-size:14px}p{margin:0}a{color:var(--blue)}:root[data-theme=dark] a:not(.btn){color:var(--white);text-decoration:underline}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) a:not(.btn){color:var(--white);text-decoration:underline}}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.topbar{background:var(--black);color:var(--white);position:sticky;top:0;z-index:30;border-bottom:3px solid var(--blue)}.topbar-inner{max-width:1200px;margin:0 auto;padding:8px 16px;display:flex;align-items:center;gap:12px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;min-width:0;flex:1}.brand img{width:44px;height:44px;border-radius:8px}.brand-text{display:flex;flex-direction:column;min-width:0}.brand-text strong{font-family:var(--font-head);font-weight:800;font-size:15px;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 480px){.brand img{width:38px;height:38px}.brand-text strong{font-size:13px}.icon-btn{height:34px;min-width:34px;padding:0 9px}.topbar-inner{gap:8px}}.brand-text span{font-size:11px;opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-spacer{flex:0}.icon-btn svg{width:16px;height:16px}.icon-btn{background:transparent;border:1px solid rgba(255,255,255,.3);color:var(--white);border-radius:999px;height:36px;min-width:36px;padding:0 12px;cursor:pointer;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.icon-btn:hover{border-color:var(--white)}.cohort-band{background:var(--blue);color:var(--white);font-size:12px;font-weight:600;letter-spacing:.04em}.cohort-band-inner{max-width:1200px;margin:0 auto;padding:7px 16px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.cohort-band .dot{width:8px;height:8px;border-radius:50%;background:var(--cta);display:inline-block}.shell{max-width:1200px;margin:0 auto;padding:20px 16px 96px;display:grid;gap:24px}@media (min-width: 960px){.shell{grid-template-columns:220px 1fr;padding-bottom:48px}}.sidenav{display:none}@media (min-width: 960px){.sidenav{display:flex;flex-direction:column;gap:4px;position:sticky;top:100px;align-self:start}}.navlink{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);color:var(--text);text-decoration:none;font-weight:600;font-size:14px}.navlink:hover{background:var(--surface-2)}.navlink.active{background:var(--black);color:var(--white)}:root[data-theme=dark] .navlink.active{background:var(--white);color:var(--black)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .navlink.active{background:var(--white);color:var(--black)}}.navlink svg{width:18px;height:18px;flex-shrink:0}.bottomnav{position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--black);border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-around;padding:6px 4px calc(6px + env(safe-area-inset-bottom))}@media (min-width: 960px){.bottomnav{display:none}}.bottomnav a{color:#ffffffb3;text-decoration:none;font-size:10.5px;font-weight:600;display:flex;flex-direction:column;align-items:center;gap:3px;padding:4px 6px;border-radius:8px;min-width:52px}.bottomnav a.active{color:var(--white);background:#ffffff1f}.bottomnav svg{width:20px;height:20px}main{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-content:start}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);min-width:0}.card.flush{padding:0;overflow:hidden}.card.dark{background:var(--black);color:var(--white);border-color:var(--black)}.card.dark h2,.card.dark h3,.card.dark h4{color:var(--white)}:root[data-theme=dark] .card.dark{border-color:var(--line)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.card.dark .eyebrow{color:#ffffffa6}.muted{color:var(--muted)}.small{font-size:13px}.tiny{font-size:12px}.stack{display:grid;gap:12px}.stack-lg{display:grid;gap:20px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row-between{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.grid-2,.grid-3{display:grid;gap:14px}@media (min-width: 720px){.grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.page-head{display:grid;gap:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border-radius:999px;border:1px solid transparent;cursor:pointer;font-family:var(--font-head);font-weight:700;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;white-space:nowrap}.btn-cta{background:var(--cta);color:var(--cta-ink)}.btn-cta:hover{filter:brightness(.95)}.btn-dark{background:var(--black);color:var(--white)}:root[data-theme=dark] .btn-dark{background:var(--white);color:var(--black)}.btn-ghost{background:transparent;border-color:var(--line);color:var(--text)}.btn-ghost:hover{background:var(--surface-2)}.btn-danger{background:transparent;border-color:var(--danger);color:var(--danger)}.btn-sm{height:34px;padding:0 12px;font-size:11px}.btn:disabled{opacity:.5;cursor:not-allowed}.field{display:grid;gap:6px}.field label{font-size:13px;font-weight:600}.input,.textarea,.select{width:100%;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);padding:10px 12px;min-height:44px;font-size:15px}.textarea{min-height:110px;resize:vertical;line-height:1.5}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--cta);box-shadow:0 0 0 3px #00aeef40}.hint{font-size:12px;color:var(--muted)}.error-box{border:1px solid var(--danger);color:var(--danger);background:transparent;padding:10px 12px;border-radius:var(--radius-sm);font-size:14px}.ok-box{border:1px solid var(--ok);color:var(--ok);padding:10px 12px;border-radius:var(--radius-sm);font-size:14px}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);background:var(--surface-2);white-space:nowrap}.pill.blue{background:var(--blue);color:var(--white);border-color:var(--blue)}.pill.black{background:var(--black);color:var(--white);border-color:var(--black)}.pill.ok{color:var(--ok);border-color:var(--ok);background:transparent}.level-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 4px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;border:1px solid var(--line);background:var(--surface);white-space:nowrap}.level-badge i{width:16px;height:16px;border-radius:50%;display:inline-grid;place-items:center;font-style:normal;font-size:10px}.avatar{width:40px;height:40px;border-radius:50%;background:var(--blue);color:var(--white);display:grid;place-items:center;font-family:var(--font-head);font-weight:800;font-size:14px;flex-shrink:0}.avatar.lg{width:64px;height:64px;font-size:22px}.bar{height:8px;background:var(--surface-3);border-radius:999px;overflow:hidden}.bar>span{display:block;height:100%;background:var(--blue);border-radius:999px;transition:width .3s}:root[data-theme=dark] .bar>span{background:var(--cta)}.tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.tabs::-webkit-scrollbar{display:none}.tab{flex-shrink:0;height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-weight:600;font-size:13px;cursor:pointer;text-decoration:none;color:var(--text);display:inline-flex;align-items:center;gap:6px}.tab.active{background:var(--black);color:var(--white);border-color:var(--black)}:root[data-theme=dark] .tab.active{background:var(--white);color:var(--black);border-color:var(--white)}.week-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}@media (min-width: 720px){.week-strip{grid-template-columns:repeat(6,minmax(0,1fr))}}.week-tile{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);padding:10px;cursor:pointer;text-decoration:none;color:var(--text);display:grid;gap:6px;position:relative;min-width:0;overflow:hidden}.week-tile.active{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue) inset}.week-tile .wk{font-size:10.5px;font-weight:700;letter-spacing:.12em;color:var(--muted)}.week-tile .ttl{font-family:var(--font-head);font-weight:800;font-size:14px}.week-tile .wk{display:flex;align-items:center;justify-content:space-between;gap:4px;white-space:nowrap}.btn svg{width:16px;height:16px;flex-shrink:0}.plan{border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.plan-row{display:grid;grid-template-columns:52px 1fr;border-top:1px solid var(--line)}.plan-row:first-child{border-top:none}.plan-row.head{background:var(--black);color:var(--white);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.plan-row>div{padding:10px 12px}.plan-row>div:first-child{font-family:var(--font-head);font-weight:800}.plan-row:nth-child(2n):not(.head){background:var(--surface-2)}.check{display:flex;gap:12px;align-items:flex-start;padding:10px;border-radius:var(--radius-sm);cursor:pointer}.check:hover{background:var(--surface-2)}.check input{position:absolute;opacity:0;pointer-events:none}.check .box{width:22px;height:22px;border-radius:6px;border:2px solid var(--line);flex-shrink:0;display:grid;place-items:center;margin-top:1px;background:var(--surface)}.check input:checked+.box{background:var(--blue);border-color:var(--blue)}.check input:checked+.box:after{content:"";width:6px;height:11px;border:solid var(--white);border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px)}.check input:focus-visible+.box{outline:3px solid var(--focus);outline-offset:2px}.check.done .label{color:var(--muted)}.palm-grid{display:grid;gap:10px;grid-template-columns:1fr}@media (min-width: 600px){.palm-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (min-width: 1000px){.palm-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.palm{border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px;display:grid;gap:8px;background:var(--surface);break-inside:avoid}.palm .say{background:var(--black);color:var(--white);border-radius:8px;padding:10px;font-size:13px}.timeline{display:flex;height:40px;border-radius:10px;overflow:hidden;min-width:520px}.timeline>div{display:grid;place-items:center;font-size:10.5px;font-weight:700}.scroll-x{overflow-x:auto}.feed-item{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:14px 0;border-top:1px solid var(--line)}.feed-item:first-child{border-top:none;padding-top:0}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{text-align:left;padding:10px 8px;border-top:1px solid var(--line);vertical-align:middle}.table th{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-top:none}.cell-pct{display:inline-grid;place-items:center;min-width:40px;height:26px;border-radius:6px;font-weight:700;font-size:12px;background:var(--surface-3)}.cell-pct.full{background:var(--blue);color:var(--white)}.cell-pct.signed{background:var(--black);color:var(--white)}:root[data-theme=dark] .cell-pct.signed{background:var(--white);color:var(--black)}.toast{position:fixed;left:50%;bottom:84px;transform:translate(-50%);z-index:50;background:var(--black);color:var(--white);padding:10px 16px;border-radius:999px;font-size:14px;font-weight:600;box-shadow:0 8px 24px #0000004d;max-width:calc(100% - 32px)}@media (min-width: 960px){.toast{bottom:24px}}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:60;display:grid;place-items:center;padding:16px}.modal{background:var(--surface);border-radius:var(--radius);padding:20px;width:100%;max-width:520px;max-height:90vh;overflow:auto;display:grid;gap:14px}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:var(--black)}.auth-wrap>*{width:100%;max-width:420px;min-width:0}.auth-card{width:100%;max-width:420px;background:var(--white);color:var(--black);border-radius:18px;padding:24px;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.auth-card h1{color:var(--blue)}.auth-card .input{background:var(--white);color:var(--black);border-color:#0000002e}.auth-logo{display:grid;justify-items:center;gap:10px;color:var(--white);margin-bottom:18px;text-align:center}.auth-logo img{width:120px;height:120px;border-radius:12px}.footer{font-size:12px;color:var(--muted);padding:12px 0;border-top:1px solid var(--line)}.temp-pw{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:18px;font-weight:700;padding:12px;border-radius:10px;background:var(--surface-3);text-align:center;-webkit-user-select:all;user-select:all}.swatch{height:64px;border-radius:10px;border:1px solid var(--line);display:flex;align-items:flex-end;padding:6px}.swatch code{font-size:11px;background:#000000b3;color:#fff;padding:2px 6px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media print{.topbar,.cohort-band,.sidenav,.bottomnav,.no-print,.toast{display:none!important}.shell{display:block;padding:0}.card{box-shadow:none;break-inside:avoid}body{background:#fff;color:#000}}.stage-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.stage{border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px;display:grid;gap:2px;min-width:0}.stage strong{font-family:var(--font-head);font-size:13px}.stage .tiny{color:var(--muted)}.stage-n{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;background:var(--surface-3)}.stage.done .stage-n{background:var(--blue);color:var(--white)}.stage.now{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue) inset}.stage.now .stage-n{background:var(--cta);color:var(--black)}@media (max-width: 480px){.stage .tiny{display:none}.stage strong{font-size:12px}}.stat-tile{border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px;display:grid;gap:2px}.stat-tile b{font-family:var(--font-head);font-weight:800;font-size:26px;font-variant-numeric:tabular-nums}.score-chart{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px;align-items:end;height:140px}.score-col{display:grid;grid-template-rows:1fr auto;gap:4px;height:100%;justify-items:center}.score-bars{display:flex;gap:3px;align-items:flex-end;height:100%;width:100%;justify-content:center;border-bottom:1px solid var(--line)}.sb{width:40%;max-width:18px;border-radius:4px 4px 0 0;min-height:2px}.sb.self,.key.self{background:var(--text)}.sb.mentor,.key.mentor{background:var(--cta)}.key{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:middle}.heat{display:inline-grid;place-items:center;min-width:34px;height:28px;border-radius:6px;font-weight:700;font-size:12px;background:color-mix(in srgb,var(--blue) calc(var(--heat, 0) * 100%),var(--surface-3));color:var(--text)}.heat[style*="--heat: 1"],.heat[style*="--heat:1"]{color:var(--white)}.more-list{display:grid;gap:8px}.more-item{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm);text-decoration:none;color:var(--text);font-weight:600;background:var(--surface)}.more-item svg{width:20px;height:20px;color:var(--blue)}:root[data-theme=dark] .more-item svg{color:var(--cta)}@media (min-width: 960px){.sidenav{max-height:calc(100vh - 110px);overflow-y:auto;gap:14px;padding-bottom:12px;scrollbar-width:thin}}.nav-group{display:grid;gap:2px}.nav-group.resources,.more-list.resources{border-top:1px solid var(--line);padding-top:12px}.nav-head{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:0 12px 4px}.more-list{margin-bottom:14px}.more-list .nav-head{padding:0 2px 2px}.resources .navlink svg,.more-list.resources .more-item svg{color:var(--muted)}.dash-hero{display:flex;align-items:center;justify-content:space-between;gap:16px}.dash-hero-text{display:grid;gap:6px;min-width:0}.ring{position:relative;display:inline-grid;place-items:center;flex-shrink:0}.ring svg{position:absolute;top:0;right:0;bottom:0;left:0}.ring circle+circle{transition:stroke-dashoffset .6s ease}.ring-label{position:relative;display:grid;justify-items:center;line-height:1;font-weight:800;font-family:var(--font-head);font-size:12px}.ring-label b{font-size:22px}.ring-label span{font-size:10px;font-weight:600;color:var(--muted);font-family:var(--font-body);margin-top:2px}.kpi-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media (min-width: 720px){.kpi-row{grid-template-columns:repeat(4,minmax(0,1fr))}}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:grid;gap:6px;text-decoration:none;color:var(--text);box-shadow:var(--shadow);align-content:start}.kpi b{font-family:var(--font-head);font-weight:800;font-size:34px;line-height:1;color:var(--heading);font-variant-numeric:tabular-nums}.kpi span{font-size:12.5px;color:var(--muted);font-weight:600;overflow-wrap:anywhere}a.kpi:hover{border-color:var(--blue)}.team-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}@media (min-width: 720px){.team-tiles{grid-template-columns:repeat(6,minmax(0,1fr))}}.team-tile{border-radius:var(--radius-sm);padding:10px;background:var(--surface-2);text-decoration:none;color:var(--text);display:grid;gap:4px}.team-tile b{font-family:var(--font-head);font-size:26px;line-height:1}.team-tile span{font-size:11.5px;color:var(--muted);font-weight:600}.team-tile.hot{background:var(--black);color:var(--white)}.team-tile.hot span{color:#ffffffbf}:root[data-theme=dark] .team-tile.hot{background:var(--cta);color:var(--black)}:root[data-theme=dark] .team-tile.hot span{color:#000000b3}.week-rings{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.wk-ring{display:grid;justify-items:center;gap:4px;text-decoration:none;color:var(--text);border-radius:10px;padding:6px 0;min-width:0}.wk-ring .ring,.wk-ring svg{max-width:100%;height:auto}@media (max-width: 360px){.week-rings{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:8px}.week-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.wk-ring .tiny,.week-tile .ttl{overflow-wrap:anywhere}.wk-ring.now{background:var(--surface-2)}.wk-ring .tiny{font-size:10px;text-align:center;color:var(--muted)}.stage-mini{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.stage-mini span{text-align:center;font-size:11px;font-weight:700;padding:6px 2px;border-radius:8px;background:var(--surface-2);color:var(--muted)}.stage-mini span.done{background:var(--blue);color:var(--white)}.stage-mini span.now{background:var(--cta);color:var(--black)}.mom-card{display:flex;gap:18px;align-items:center}.mom-kanji{font-size:64px;line-height:1;font-weight:800;color:var(--blue);flex-shrink:0}@media (max-width: 480px){.mom-kanji{font-size:44px}}.mini-bars{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;align-items:end}.mini-col{height:100%;display:grid;grid-template-rows:auto 1fr auto;justify-items:center;gap:2px;min-width:0}.mini-val{font-size:10px;font-weight:700;color:var(--muted)}.mini-bar{align-self:end;width:70%;max-width:28px;border-radius:5px 5px 0 0;background:var(--surface-3);min-height:3px}.mini-bar.now{background:var(--ring)}.mini-lab{font-size:9.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media (min-width: 600px){.quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.quick-btn{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;text-align:left;min-height:58px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--text)}.quick-btn:hover{border-color:var(--blue)}.quick-btn:active{transform:scale(.98)}.quick-n{font-family:var(--font-head);font-weight:800;font-size:22px;min-width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--surface-2)}.quick-l{font-weight:700;font-size:13px;line-height:1.2}.quick-plus{position:absolute;top:6px;right:9px;font-weight:800;color:var(--muted)}.qt-postcard .quick-n,.tl-dot.qt-postcard{background:var(--cta);color:var(--black)}.qt-followup .quick-n,.tl-dot.qt-followup,.qt-parent-chat .quick-n,.tl-dot.qt-parent-chat{background:var(--blue);color:var(--white)}.qt-mat-chat .quick-n,.tl-dot.qt-mat-chat{background:var(--black);color:var(--white)}:root[data-theme=dark] .qt-mat-chat .quick-n,:root[data-theme=dark] .tl-dot.qt-mat-chat{background:var(--white);color:var(--black)}.timeline{list-style:none;margin:0;padding:0;display:grid;gap:0}.timeline li{display:grid;grid-template-columns:14px 1fr auto;gap:12px;align-items:start;padding:10px 0;border-top:1px solid var(--line)}.timeline li:first-child{border-top:none}.tl-dot{width:12px;height:12px;border-radius:50%;margin-top:4px;background:var(--surface-3)}.tl-body{min-width:0}.media-grid{display:grid;gap:12px}@media (min-width: 720px){.media-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.media-item{display:grid;gap:8px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px;min-width:0}.media-view{background:var(--black);border-radius:10px;overflow:hidden;aspect-ratio:16 / 9;display:grid;place-items:center}.media-view video,.media-view img{width:100%;height:100%;object-fit:contain;display:block;background:#000}.media-play{width:100%;height:100%;border:0;background:transparent;color:#fff;display:grid;place-items:center;align-content:center;gap:6px;cursor:pointer}.media-kind{width:56px;height:56px;border-radius:50%;background:var(--cta);color:#000;display:grid;place-items:center;font-weight:800;font-size:18px}.media-thumb{width:40px;height:40px;border-radius:10px;background:var(--black);color:var(--cta);display:grid;place-items:center;font-weight:800;flex-shrink:0;font-size:13px}:root[data-theme=dark] .media-thumb{background:var(--surface-3)}.dash-hero.profile-first{justify-content:flex-start;flex-wrap:wrap}.dash-hero.profile-first .dash-hero-text{flex:1 1 220px}.ev-list,.ev-now{display:grid;gap:8px}.ev{display:grid;gap:2px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);border-left-width:6px;background:var(--surface-2)}.ev strong{font-family:var(--font-head);font-weight:800;font-size:14px}.ev-type{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.ev-when{font-size:12px;font-weight:700}.ev.on{box-shadow:0 0 0 2px var(--blue) inset;background:var(--surface)}.ev-testing{border-left-color:var(--black)}.ev-grading{border-left-color:var(--blue)}.ev-class{border-left-style:dashed;border-left-color:var(--blue)}.ev-event{border-left-color:var(--muted)}.ev-other{border-left-color:var(--line)}:root[data-theme=dark] .ev-testing{border-left-color:var(--white)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .ev-testing{border-left-color:var(--white)}}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal-dow{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center;padding:4px 0}.cal-day{min-height:56px;border:1px solid var(--line);border-radius:8px;padding:4px;display:flex;flex-direction:column;gap:2px;align-items:flex-start;background:var(--surface)}.cal-day.out{background:transparent}.cal-day.out .cal-n{opacity:.6}.cal-day.today{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue) inset}.cal-n{font-size:12px;font-weight:700}.cal-mark{font-size:9.5px;font-weight:800;letter-spacing:.04em;padding:1px 4px;border-radius:4px;border:1px solid var(--line);border-left-width:4px;background:var(--surface-2)}.cal-mark.ev-testing{background:var(--black);color:var(--white);border-color:var(--black)}:root[data-theme=dark] .cal-mark.ev-testing{background:var(--white);color:var(--black);border-color:var(--white)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .cal-mark.ev-testing{background:var(--white);color:var(--black);border-color:var(--white)}}.cal-mark.ev-grading{background:var(--blue);color:var(--white);border-color:var(--blue)}.ed-row{padding:10px 0;border-top:1px solid var(--line)}.level-card.locked{background:var(--surface-2);border-style:dashed}.level-card.current{box-shadow:0 0 0 2px var(--blue) inset}.plain-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}.plain-list li{font-size:14px;line-height:1.45}.gate-line{display:flex;gap:8px;align-items:flex-start}.gate-mark{font-weight:800;width:18px;flex:none}.gate-line.ok .gate-mark{color:var(--ok)}.gate-line.no .gate-mark{color:var(--danger)}.week-tile.locked{opacity:.6;border-style:dashed}.week-tile .ttl svg{width:14px;height:14px;vertical-align:-2px}.pill svg{width:12px;height:12px;margin-right:3px}@media (min-width: 720px){.cal-day{min-height:76px}}.fa-stage{background:var(--black);color:var(--white);border-radius:var(--radius);padding:16px;min-height:68vh;display:grid;grid-template-rows:auto auto 1fr auto auto auto;gap:10px;justify-items:center;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.fa-top{display:flex;justify-content:space-between;align-items:baseline;width:100%}.fa-clock{font-family:var(--font-head);font-weight:800;font-size:34px;font-variant-numeric:tabular-nums}.fa-clock.hot{color:#ff8a80}.fa-bar{width:100%;height:10px;border-radius:6px;background:#ffffff2e;overflow:hidden}.fa-bar i{display:block;height:100%;background:var(--white)}.fa-bar.thin{height:6px}.fa-letter{font-family:var(--font-head);font-weight:800;font-size:clamp(120px,42vw,280px);line-height:1;align-self:center}.fa-word{font-family:var(--font-head);font-weight:800;font-size:clamp(30px,9vw,72px);line-height:1.1;min-height:1.2em}.fa-count{font-family:var(--font-head);font-weight:800;font-size:clamp(140px,50vw,300px);line-height:1;align-self:center}.fa-meter{width:100%;height:8px;border-radius:6px;background:#ffffff2e;overflow:hidden}.fa-meter i{display:block;height:100%;background:var(--cta)}.fa-next{opacity:.7}.fa-words{display:flex;flex-wrap:wrap;gap:6px}.fa-chip{border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:13px}.fa-chip b{font-family:var(--font-head);color:var(--heading);margin-right:4px}.fa-strip{display:grid;grid-template-columns:repeat(13,1fr);gap:4px}.fa-strip span{border:1px solid var(--line);border-radius:6px;text-align:center;font-weight:800;font-size:13px;padding:3px 0;display:grid}.fa-strip span small{font-size:11px;font-weight:700;color:var(--danger)}.fa-strip span.loud{border-color:var(--ok)}.fa-strip span.loud small{color:var(--ok)}.fa-edit{display:grid;gap:8px}.fa-edit-row{display:flex;gap:8px;align-items:center}.fa-edit-row b{width:20px;font-family:var(--font-head)}@media (min-width: 720px){.fa-edit{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion: no-preference){.fa-letter{animation:fa-pop .18s ease-out}}@keyframes fa-pop{0%{transform:scale(.92);opacity:.6}to{transform:scale(1);opacity:1}}.welcome-video{width:100%;max-height:70vh;border-radius:var(--radius-sm);background:var(--black);object-fit:contain}.report-fab{position:fixed;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:40;height:40px;padding:0 14px;font-size:11px;box-shadow:0 6px 18px #00000040}@media (min-width: 960px){.report-fab{bottom:20px;right:20px}}.has-report-fab main{padding-bottom:64px}input[type=checkbox],input[type=radio]{min-width:24px;min-height:24px}input[type=range]{min-height:28px}.pin-input{font-size:24px;letter-spacing:.3em;min-height:52px;font-variant-numeric:tabular-nums}.big-list{margin:0;padding-left:20px;display:grid;gap:10px;font-size:17px;line-height:1.45}.placeholder-box{border:2px dashed var(--line);border-radius:12px;padding:16px;text-align:center;color:var(--muted);font-weight:600;letter-spacing:.02em;background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(0,96,166,.04) 10px,rgba(0,96,166,.04) 20px)}.steps{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.step-dot{width:40px;height:40px;border-radius:50%;border:2px solid var(--line);background:transparent;padding:0;cursor:pointer}.step-dot.done{background:var(--blue);border-color:var(--blue)}.step-dot.on{border-color:var(--cta);box-shadow:0 0 0 3px #00aeef4d}.induction-screen{min-height:50vh;align-content:start;font-size:17px}.check-row{gap:12px;align-items:center;min-height:48px;flex-wrap:nowrap}.check-row input{width:24px;height:24px;flex:none}.level-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.level-card{display:block;color:inherit;text-decoration:none;overflow:hidden}.level-card.locked{opacity:.72}.level-photo{position:relative;height:120px;background:linear-gradient(135deg,#0060a6,#000);display:grid;place-items:center;color:#ffffff8c;font-size:11px;letter-spacing:.12em}.level-photo strong{position:absolute;right:16px;bottom:4px;font-family:var(--font-head);font-size:64px;color:#ffffffe6;line-height:1}.level-card.locked .level-photo{filter:grayscale(1)}.st-done{background:#0060a6;color:#fff}.st-progress{background:#00aeef;color:#000}.lesson-row{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;color:inherit;text-decoration:none}.lesson-thumb{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:var(--blue);color:#fff;flex:none}.layer-tag{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}.video-wrap{position:relative;padding-top:56.25%;border-radius:14px;overflow:hidden;background:#000}.video-wrap iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.checkpoint{display:grid;gap:8px;padding:14px;border-radius:12px;border:2px solid var(--cta)}.score-set{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:8px;margin:0}.score-set legend{font-weight:700;padding:0 4px}.score-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.score-btn{min-height:56px;border-radius:10px;border:1px solid var(--line);background:transparent;color:inherit;display:grid;place-items:center;padding:4px 2px;cursor:pointer}.score-btn span{font-size:9px;line-height:1.1;text-align:center}.score-btn.on{background:var(--blue);color:#fff;border-color:var(--blue)}.feedback-item{display:grid;gap:4px;padding-bottom:8px;border-bottom:1px solid var(--line)}.queue-item{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--line)}.signoff-box{border:2px solid var(--blue);border-radius:12px;padding:12px}.hub-hero{position:relative;overflow:hidden;min-height:220px;display:grid;align-items:end}.hub-hero-photo{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0060a68c,#000 85%);display:grid;place-items:start end;padding:10px 14px;color:#ffffff73;font-size:10px;letter-spacing:.12em}.hero-card{background:linear-gradient(135deg,#0060a6,#000)}.huddle-banner{background:#0060a6;color:#fff;border-radius:12px;padding:10px 14px;font-weight:600;margin-bottom:12px}.huddle-list{max-height:60vh;overflow-y:auto}.huddle-msg{display:grid;gap:4px;padding:10px 12px;border-radius:12px;border:1px solid var(--line)}.huddle-msg.mine{border-color:var(--cta)}.huddle-msg.hidden{opacity:.55}.toolkit-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.toolkit-tile:last-child:nth-child(odd){grid-column:1 / -1}@media (min-width: 720px){.toolkit-row{grid-template-columns:repeat(3,minmax(0,1fr))}.toolkit-tile:last-child:nth-child(odd){grid-column:auto}}.toolkit-tile{display:grid;gap:4px;align-content:center;min-height:88px;padding:14px;border-radius:var(--radius);background:var(--blue);color:#fff;text-decoration:none;box-shadow:0 2px 8px #0000001f}.toolkit-tile b{font-family:Montserrat,Inter,sans-serif;font-size:16px;line-height:1.2}.toolkit-tile span{font-size:13px;opacity:.9}.toolkit-tile:nth-child(2){background:#00aeef;color:#000}.toolkit-tile:nth-child(3){background:var(--black);color:#fff}.toolkit-tile:nth-child(4){background:var(--surface);color:var(--text);border:2px solid var(--blue)}.tick{display:inline-flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;font-weight:600}.tick input{width:22px;height:22px;accent-color:var(--blue)}.tick.disabled{opacity:.55;cursor:not-allowed}.tick-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.tap{min-height:44px}.undo-bar{position:sticky;bottom:76px;z-index:20;display:flex;gap:8px;flex-wrap:nowrap;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 6px 20px #0000002e}.undo-bar .btn{min-height:48px;flex:1 1 0;padding:0 10px;min-width:0}.undo-bar .btn-cta{flex:2.4 1 0}@media (min-width: 960px){.undo-bar{bottom:16px}}.toast-undo{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:14px;bottom:150px;width:calc(100% - 32px);max-width:480px}@media (min-width: 960px){.toast-undo{bottom:96px}}.toast-btn{background:transparent;color:#00aeef;border:0;font-weight:800;min-height:44px;min-width:64px;font-size:15px;cursor:pointer}.term-card{scroll-margin-top:80px}.term-card.ticked{border-color:var(--blue)}.term-tick{align-items:flex-start;gap:12px}.term-tick input{width:28px;height:28px;margin-top:2px;flex-shrink:0}.returned-card{border:2px solid var(--blue)}.review-line{padding:8px 0;border-top:1px solid var(--line);gap:8px}.plain-link{color:inherit;text-decoration:none}.glossary-link{color:var(--blue);text-decoration:underline dotted}.glossary-entry{display:grid;gap:4px;padding:12px 0;border-top:1px solid var(--line);scroll-margin-top:80px}.glossary-entry.current{background:var(--surface-2);margin:0 -12px;padding:12px;border-radius:10px}.media-ph{position:relative;display:flex;align-items:center;gap:14px;padding:18px;border-radius:12px;overflow:hidden;background:radial-gradient(120% 120% at 0% 0%,#00aeef,#0060a6 38%,#000);color:#fff}.media-ph.video{aspect-ratio:16 / 9}.media-ph.picture{aspect-ratio:4 / 3;max-height:320px}.media-ph.compact{min-height:88px}.media-ph img{border-radius:50%;flex-shrink:0}.media-ph-text{display:grid;gap:6px;min-width:0}.media-ph-text b{font-family:Montserrat,Inter,sans-serif;font-size:18px;line-height:1.2;overflow-wrap:anywhere}.media-ph-play{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#ffffff2e;font-size:18px}.media-ph-badge{position:absolute;top:8px;right:10px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffffffb3}
