:root,:root[data-theme]{--nt-bg1: #0b0a1f;--nt-bg2: #161230;--nt-surf: #1d1840;--nt-surf-2: #262056;--nt-line: color-mix(in srgb, #c7beff 16%, transparent);--nt-line-strong: color-mix(in srgb, #c7beff 30%, transparent);--nt-text: #f4f1ff;--nt-sub: #bdb6e0;--nt-faint: #8f88b8;--nt-lime: #c6f36b;--nt-violet: #a78bfa;--nt-coral: #ff7f6b;--nt-gold: #f5c451;--nt-cyan: #6fe3ff;--nt-ground: linear-gradient(160deg, var(--nt-bg1) 0%, var(--nt-bg2) 100%);--nt-stars: radial-gradient(1px 1px at 12% 22%, #fff9 50%, transparent 51%), radial-gradient(1px 1px at 34% 68%, #fff6 50%, transparent 51%), radial-gradient(1.5px 1.5px at 58% 14%, #fffa 50%, transparent 51%), radial-gradient(1px 1px at 77% 46%, #fff7 50%, transparent 51%), radial-gradient(1px 1px at 88% 82%, #fff5 50%, transparent 51%), radial-gradient(1.5px 1.5px at 22% 88%, #fff8 50%, transparent 51%), radial-gradient(1px 1px at 66% 92%, #fff5 50%, transparent 51%), radial-gradient(1px 1px at 46% 38%, #fff4 50%, transparent 51%);--rar-common: #b9b3c9;--rar-rare: #6fb6ff;--rar-epic: #a78bfa;--rar-legendary: #f5c451;--rar-mythic: #ff7f6b;--bronze-hi: #f6c49a;--bronze-mid: #c27a44;--bronze-lo: #6e3a1a;--bronze-edge: #3d1e0b;--silver-hi: #ffffff;--silver-mid: #c4c8d4;--silver-lo: #6f7584;--silver-edge: #393d47;--gold-hi: #fff1b8;--gold-mid: #e7b53c;--gold-lo: #8a5a10;--gold-edge: #4a2f05;--platinum-hi: #f2fbff;--platinum-mid: #a9d8e6;--platinum-lo: #4f7f92;--platinum-edge: #213c48;--obsidian-hi: #8a7dd8;--obsidian-mid: #2a2350;--obsidian-lo: #0d0a20;--obsidian-edge: #000000;--aurora-hi: #e6fff0;--aurora-mid: #7be3c4;--aurora-lo: #5a3fb0;--aurora-edge: #22164f;--sh-ease-out: cubic-bezier(.2, 0, 0, 1);--sh-ease-emph: cubic-bezier(.3, 0, 0, 1.15);--sh-ease-spring: cubic-bezier(.34, 1.56, .64, 1)}.sh{--sh-surface: var(--surface);--sh-surface-2: var(--surface-2);--sh-surface-3: var(--surface-3);--sh-line: var(--border);--sh-line-strong: var(--border-strong);--sh-text: var(--text);--sh-text-2: var(--text-2);--sh-text-3: var(--text-3);--sh-track: color-mix(in srgb, var(--text) 11%, transparent);--sh-ok: var(--ok)}@keyframes sh-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes sh-fade{0%{opacity:0}to{opacity:1}}@keyframes sh-pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.12);opacity:1}to{transform:scale(1)}}@keyframes sh-spin{to{transform:rotate(360deg)}}@keyframes sh-spin-rev{to{transform:rotate(-360deg)}}@keyframes sh-glint{0%,70%{transform:translate(-260%) rotate(24deg)}90%,to{transform:translate(260%) rotate(24deg)}}@keyframes sh-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes sh-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@keyframes sh-flicker{0%{transform:scale(1) rotate(-3deg)}to{transform:scale(1.06,1.12) rotate(3deg)}}@keyframes sh-twinkle{0%,to{opacity:.35}50%{opacity:1}}@keyframes sh-drift{0%{transform:translate3d(-12px,0,0)}to{transform:translate3d(12px,0,0)}}@keyframes sh-dash{to{stroke-dashoffset:-60}}@keyframes sh-burst{0%{transform:rotate(var(--a)) translateY(0) scale(1);opacity:1}to{transform:rotate(var(--a)) translateY(calc(-1 * var(--d, 120px))) scale(.2);opacity:0}}@keyframes sh-flip{0%{transform:perspective(800px) rotateY(-540deg) scale(.3);opacity:0}70%{transform:perspective(800px) rotateY(12deg) scale(1.08);opacity:1}to{transform:perspective(800px) rotateY(0) scale(1)}}@keyframes sh-rays{to{transform:rotate(360deg)}}@keyframes sh-lift{0%{transform:translateY(14px) scale(.98);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.sh *,.sh *:before,.sh *:after,.sh-modal-layer *,.sh-modal-layer *:before,.sh-modal-layer *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}.sh-medal{position:relative;display:inline-block;line-height:0}.sh-medal-glint{position:absolute;border-radius:50%;overflow:hidden;pointer-events:none}.sh-medal-glint span{position:absolute;top:-30%;left:30%;width:34%;height:160%;background:linear-gradient(90deg,#fff0,#fff9,#fff0);will-change:transform;animation:sh-glint 5.5s cubic-bezier(.4,0,.2,1) infinite}.sh-frame{position:relative;display:inline-block;flex:none}.sh-frame-glow{position:absolute;top:-22%;right:-22%;bottom:-22%;left:-22%;border-radius:50%;pointer-events:none}.sh-frame-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%}.sh-frame-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.sh-frame-face{position:absolute;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#3a3270,#14102e 75%);box-shadow:inset 0 0 0 1px #ffffff1f,inset 0 -10px 24px #00000059}.sh-frame-face img{width:100%;height:100%;object-fit:cover}.sh-frame-face span{font:700 1em/1 var(--font-display);letter-spacing:-.04em;color:#f4f1ff}.sh-frame-lock{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff}.sh-frame-lock .i{width:34%;height:34%}.sh-night{position:relative;overflow:hidden;isolation:isolate;color:var(--nt-text);background:var(--nt-ground);border-radius:28px}.sh-night :focus-visible{outline-color:var(--nt-lime)}.sh-night .i{stroke-width:1.8}.sh-bloom,.sh-stars{position:absolute;z-index:-1;pointer-events:none}.sh-bloom{top:-10%;right:-10%;bottom:-10%;left:-10%;transform:translate3d(calc(var(--px, 0) * -18px),calc(var(--py, 0) * -12px),0);transition:transform .4s var(--sh-ease-out)}.sh-stars{top:-20px;right:-20px;bottom:-20px;left:-20px;background:var(--nt-stars);background-size:420px 300px;opacity:.8;transform:translate3d(calc(var(--px, 0) * 8px),calc(var(--py, 0) * 6px),0);transition:transform .6s var(--sh-ease-out)}.sh-night-btn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:12px;border:1px solid var(--nt-line-strong);background:none;color:var(--nt-text);font:600 14px var(--font-ui);cursor:pointer;text-decoration:none;transition:background .2s,transform 90ms}.sh-night-btn:hover{background:#ffffff12;color:var(--nt-text)}.sh-night-btn:active{transform:scale(.97)}.sh-night-btn.is-primary{border:0;background:var(--nt-lime);color:#140f26;font-weight:700}.sh-night-btn.is-primary:hover{background:#d7fb8f;color:#140f26}.sh-night-btn .i{width:16px;height:16px}.sh-hero{padding:34px 38px;display:flex;flex-wrap:wrap;gap:28px 40px;align-items:center;animation:sh-rise .32s var(--sh-ease-out) both}.sh-hero-id{display:flex;flex-direction:column;align-items:center;gap:14px}.sh-frame-chip{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 12px;border-radius:999px;background:#ffffff0f;border:1px solid var(--nt-line-strong);color:var(--nt-text);font:600 12.5px/1 var(--font-ui);cursor:pointer}.sh-frame-chip:hover{border-color:var(--nt-lime)}.sh-frame-chip i{width:8px;height:8px;border-radius:50%}.sh-hero-main{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:14px}.sh-rank{display:flex;align-items:center;gap:10px;font:700 12.5px/1 var(--font-ui);letter-spacing:.16em;color:var(--nt-lime);text-transform:uppercase}.sh-rank .i{width:15px;height:15px}.sh-hero h1{font:700 clamp(30px,4.4vw,50px)/1 var(--font-display);letter-spacing:-.035em;text-wrap:balance;margin:0;color:var(--nt-text)}.sh-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;color:var(--nt-sub);font-size:15px}.sh-meta span{display:inline-flex;align-items:center;gap:6px}.sh-meta .i{width:15px;height:15px}.sh-xp{margin-top:4px;display:flex;flex-direction:column;gap:8px;max-width:560px}.sh-xp-row{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;flex-wrap:wrap}.sh-xp-row span:last-child{color:var(--nt-sub)}.sh-xp-bar{position:relative;height:10px;border-radius:999px;background:#ffffff14;overflow:hidden}.sh-xp-bar span{position:absolute;inset:0 auto 0 0;border-radius:999px;background:linear-gradient(90deg,var(--nt-lime),var(--nt-cyan));box-shadow:0 0 16px var(--nt-lime)}.sh-link-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:0;color:var(--nt-sub);font:500 12.5px var(--font-ui);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.sh-link-btn .i{width:13px;height:13px}.sh-note{font-size:12.5px;line-height:1.6;color:var(--nt-sub);padding:10px 12px;border-radius:12px;background:#ffffff0d;border:1px solid var(--nt-line);margin:0}.sh-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.sh-rings{display:flex;flex-direction:column;gap:10px;width:244px;max-width:100%}.sh-rings-dial{position:relative;width:236px;height:236px;align-self:center}.sh-rings-dial svg{display:block;max-width:100%}.sh-rings-mid{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;pointer-events:none}.sh-rings-mid strong{font:700 34px/1 var(--font-display);letter-spacing:-.03em}.sh-rings-mid small{margin-top:6px;font-size:12px;color:var(--nt-sub)}.sh-ring-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.sh-ring-row{width:100%;display:grid;grid-template-columns:10px 1fr auto;gap:10px;align-items:center;padding:7px 10px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--nt-text);text-align:left;cursor:default;font:inherit}.sh-ring-row.is-on{border-color:var(--nt-line-strong);background:#ffffff0f}.sh-ring-row i{width:10px;height:10px;border-radius:3px}.sh-ring-row strong{font-size:13px;font-weight:600}.sh-ring-row b{font:600 13px var(--font-ui)}.sh-ring-row b small{color:var(--nt-faint);font-weight:500}.sh-ring-detail{padding:6px 10px 0;font-size:12px;line-height:1.45;color:var(--nt-sub);min-height:40px}.sh-unavailable{color:var(--nt-sub);font-size:14px;margin:0}.sh-row{display:flex;flex-wrap:wrap;gap:20px;align-items:stretch;margin-top:20px}.sh-card{position:relative;overflow:hidden;border:1px solid var(--sh-line);border-radius:24px;background:var(--sh-surface);padding:24px 26px;display:flex;flex-direction:column;gap:12px}.sh-card h2{font:600 19px/1.25 var(--font-display);margin:0;letter-spacing:-.01em}.sh-card p{margin:0;font-size:13.5px;color:var(--sh-text-2)}.sh-kicker{font:700 11.5px/1 var(--font-ui);letter-spacing:.14em;color:var(--sh-text-3);text-transform:uppercase}.sh-next{flex:2 1 420px}.sh-next .sh-actions{margin-top:2px}.sh-next-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding-top:12px;border-top:1px solid var(--sh-line);font-size:12.5px;color:var(--sh-text-2)}.sh-side{flex:1 1 300px}.sh-goal{flex-direction:row;align-items:center;gap:20px}.sh-goal-dial{position:relative;width:116px;height:116px;flex:none}.sh-goal-mid{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center}.sh-goal-mid strong{font:700 26px var(--font-display);line-height:1}.sh-goal-mid strong small{font-size:14px;color:var(--sh-text-3)}.sh-goal-mid>small{font-size:11.5px;color:var(--sh-text-2)}.sh-goal-tick{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--sh-ok);color:#fff;animation:sh-pop .5s var(--sh-ease-spring) both}.sh-goal-tick .i{width:24px;height:24px;stroke-width:2.6}.sh-burst{position:absolute;left:55px;top:55px;width:6px;height:6px;border-radius:2px;--d: 74px;animation:sh-burst .9s var(--sh-ease-out) both}.sh-check{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.sh-check li{display:flex;align-items:center;gap:10px;min-height:36px;font-size:14px}.sh-check li>span:first-child{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--sh-line-strong);color:#fff;flex:none}.sh-check li.is-done{color:var(--sh-text-2)}.sh-check li.is-done>span:first-child{border-color:var(--sh-ok);background:var(--sh-ok)}.sh-check li.is-done>span:last-child{text-decoration:line-through}.sh-check .i{width:12px;height:12px;stroke-width:3}.sh-bar{height:6px;border-radius:999px;background:var(--sh-track);overflow:hidden}.sh-bar span{display:block;height:100%;background:var(--sh-ok);border-radius:999px}.sh-streak{margin-top:20px;flex-direction:row;align-items:center;flex-wrap:wrap;gap:16px 24px;padding:18px 24px}.sh-flame{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--sh-surface-3);color:var(--sh-text-3)}.sh-flame.is-lit{background:linear-gradient(160deg,#f5c451,#ff7f6b);color:#fff;animation:sh-flicker .6s ease-in-out infinite alternate}.sh-flame .i{width:24px;height:24px}.sh-streak-main{flex:1 1 260px;display:flex;flex-direction:column;gap:8px;min-width:0}.sh-streak-main strong{font:600 16px var(--font-display)}.sh-streak-main strong span{font-weight:500;color:var(--sh-text-2);font-size:13px;margin-left:6px}.sh-ticks{position:relative;height:8px;border-radius:999px;background:var(--sh-track)}.sh-ticks>i{position:absolute;inset:0 auto 0 0;border-radius:999px;background:linear-gradient(90deg,#f5c451,#ff7f6b)}.sh-ticks>b{position:absolute;top:-4px;width:2px;height:16px;border-radius:2px;background:var(--sh-line-strong)}.sh-ticks>b.is-on{background:#ff7f6b}.sh-tick-labels{position:relative;height:14px;font-size:11px;color:var(--sh-text-3)}.sh-tick-labels span{position:absolute;transform:translate(-50%)}.sh-case{margin-top:20px;padding:28px 30px 26px;display:flex;flex-direction:column;gap:20px}.sh-case-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 24px}.sh-case-head>div{flex:1;min-width:240px;display:flex;flex-direction:column;gap:6px}.sh-case-kicker{display:flex;align-items:center;gap:8px;font:700 12px/1 var(--font-ui);letter-spacing:.16em;color:var(--nt-gold)}.sh-case-kicker .i{width:15px;height:15px}.sh-case h2{font:600 26px/1.15 var(--font-display);letter-spacing:-.02em;margin:0;color:var(--nt-text)}.sh-case p{margin:0;font-size:13.5px;color:var(--nt-sub)}.sh-tabs{display:flex;flex-wrap:wrap;gap:8px}.sh-tab{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;border-radius:999px;border:1px solid var(--nt-line);background:#ffffff0a;color:var(--nt-text);font:600 13px var(--font-ui);cursor:pointer}.sh-tab:hover{border-color:var(--nt-lime)}.sh-tab[aria-pressed=true]{background:var(--nt-lime);border-color:var(--nt-lime);color:#140f26}.sh-tab small{font-weight:500;opacity:.75}.sh-case-body{display:flex;flex-wrap:wrap;gap:24px}.sh-case-col{flex:999 1 420px;display:flex;flex-direction:column;gap:18px;min-width:0}.sh-shelf{display:flex;flex-wrap:wrap;gap:6px 4px;padding:0 6px}.sh-plank{height:10px;margin:0 4px;border-radius:4px;background:linear-gradient(180deg,#c7beff38,#c7beff0a);box-shadow:0 -1px #ffffff40,0 14px 30px -10px #a78bfa73}.sh-cell{position:relative;width:112px;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px 12px;border-radius:16px;border:0;background:none;color:var(--nt-text);font:inherit;cursor:pointer;animation:sh-rise .5s var(--sh-ease-out) both}.sh-cell:hover{background:#ffffff0d}.sh-cell-spot{position:absolute;left:50%;top:0;width:120px;height:130px;transform:translate(-50%);pointer-events:none}.sh-cell-art{position:relative;animation:sh-float 5s ease-in-out infinite}.sh-cell-shadow{width:70px;height:6px;margin-top:-4px;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.6),transparent)}.sh-cell strong{font:600 12.5px/1.2 var(--font-ui);text-align:center}.sh-cell small{font-size:11px;color:var(--nt-faint);text-align:center}.sh-cell.is-locked{padding:8px 4px;animation:none}.sh-cell.is-locked strong{font-size:12px;color:var(--nt-sub)}.sh-sub-head{font:600 11.5px/1 var(--font-ui);letter-spacing:.14em;color:var(--nt-faint)}.sh-planned{padding:18px;border-radius:16px;border:1px dashed var(--nt-line-strong);color:var(--nt-sub);font-size:13.5px;margin:0}.sh-closest{flex:1 1 280px;display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:20px;background:#ffffff0a;border:1px solid var(--nt-line);align-self:flex-start}.sh-closest .sh-sub-head{color:var(--nt-lime);font-weight:700}.sh-closest-item{display:grid;grid-template-columns:44px 1fr;gap:4px 12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--nt-line)}.sh-closest-item>.sh-medal{grid-row:span 3}.sh-closest-item div{display:flex;justify-content:space-between;gap:8px}.sh-closest-item strong{font-size:13.5px}.sh-closest-item b{font:600 12.5px var(--font-ui);color:var(--nt-lime)}.sh-closest-item span{font-size:12px;color:var(--nt-sub)}.sh-closest-item .sh-mini{height:5px;border-radius:999px;background:#ffffff14;overflow:hidden;display:block}.sh-closest-item .sh-mini i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--nt-lime),var(--nt-cyan))}.sh-closest small{font-size:11.5px;color:var(--nt-faint)}.sh-foot{font-size:12px;color:var(--nt-faint);margin:0}.sh-modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;display:grid;place-items:center;padding:20px;background:#060512b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:sh-fade .2s ease both}.sh-modal{position:relative;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:30px 30px 26px;border-radius:28px;border:1px solid var(--nt-line-strong);box-shadow:0 40px 100px -20px #000;animation:sh-lift .5s cubic-bezier(.2,0,0,1) both}.sh-modal.is-wide{width:min(900px,100%)}.sh-modal-close{position:absolute;top:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--nt-line);background:#ffffff0d;color:var(--nt-text);cursor:pointer}.sh-modal-close:hover{border-color:var(--nt-lime)}.sh-modal-close .i{width:18px;height:18px}.sh-detail{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.sh-detail-stage{perspective:800px;padding:10px 0 4px}.sh-detail-tilt{transition:transform .12s var(--sh-ease-out);transform-style:preserve-3d}.sh-chip{display:inline-flex;align-items:center;height:26px;padding:0 12px;border-radius:999px;border:1px solid currentColor;font:700 11.5px/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase}.sh-detail h3{font:600 28px/1.1 var(--font-display);margin:0;letter-spacing:-.02em}.sh-detail dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;width:100%;margin:6px 0 0;padding:16px;border-radius:16px;background:#ffffff0d;border:1px solid var(--nt-line);text-align:left;font-size:13.5px}.sh-detail dt{color:var(--nt-faint)}.sh-detail dd{margin:0;color:var(--nt-text)}.sh-celebrate{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;overflow:hidden}.sh-rays{position:absolute;left:50%;top:150px;width:520px;height:520px;margin:-260px 0 0 -260px;z-index:-1;background:repeating-conic-gradient(from 0deg,rgba(245,196,81,.2) 0 6deg,transparent 6deg 24deg);-webkit-mask:radial-gradient(closest-side,#000 10%,transparent 72%);mask:radial-gradient(closest-side,#000 10%,transparent 72%);animation:sh-rays 18s linear infinite}.sh-celebrate .sh-flip{animation:sh-flip 1.2s var(--sh-ease-out) both;padding-top:6px}.sh-celebrate-text{opacity:0;animation:sh-rise .6s var(--sh-ease-out) .9s both;display:flex;flex-direction:column;align-items:center;gap:8px}.sh-celebrate h3{font:700 30px/1.1 var(--font-display);margin:0;letter-spacing:-.02em}.sh-spark{position:absolute;left:50%;top:150px;width:8px;height:8px;border-radius:2px;--d: 190px;animation:sh-burst 1.3s var(--sh-ease-out) .5s both}.sh-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px;margin-top:14px}.sh-pick{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 8px 12px;border-radius:18px;border:1px solid var(--nt-line);background:#ffffff0a;color:var(--nt-text);font:inherit;cursor:pointer}.sh-pick:hover,.sh-pick:focus-visible{border-color:var(--nt-lime)}.sh-pick[aria-pressed=true]{border-color:var(--nt-lime);box-shadow:0 0 0 2px color-mix(in srgb,var(--nt-lime) 40%,transparent)}.sh-pick strong{font-size:13px}.sh-pick small{font-size:11px;color:var(--nt-faint);text-align:center;line-height:1.35}.sh-picker-top{display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin:4px 0 6px}.sh-toast-live{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:410;padding:10px 16px;border-radius:12px;background:var(--nt-bg2);color:var(--nt-text);border:1px solid var(--nt-line-strong);font:600 13px var(--font-ui);box-shadow:0 20px 50px -10px #000;animation:sh-rise .3s var(--sh-ease-out) both}.sh-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:20px}.sh-facts .sh-card h3{font:700 12px/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--sh-text-3);margin:0 0 4px}.sh-stat{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--sh-line);font-size:14px}.sh-stat:last-child{border-bottom:0}.sh-stat .i{color:var(--sh-text-3)}.sh-stat strong{margin-left:auto}.sh-const-wrap{display:flex;flex-direction:column;gap:12px}.sh-seg{display:inline-flex;padding:3px;border-radius:10px;background:var(--sh-surface-3);align-self:flex-start}.sh-seg button{border:0;background:transparent;height:28px;padding:0 12px;border-radius:8px;font:600 12.5px var(--font-ui);color:var(--sh-text-2);cursor:pointer}.sh-seg button[aria-pressed=true]{background:var(--sh-surface);color:var(--sh-text);box-shadow:0 1px 2px #0000001f}.sh-const{width:100%;height:auto;max-height:360px;border:1px solid var(--sh-line);border-radius:20px;background:var(--sh-surface-2)}.sh-const text{font:600 11px var(--font-ui);fill:var(--sh-text-2)}.sh-const a:focus-visible circle{stroke-width:3}.sh-node-att{animation:sh-pulse 2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@media(max-width:720px){.sh-hero{padding:26px 20px;gap:22px}.sh-case{padding:22px 16px}.sh-goal{flex-direction:column;align-items:flex-start}.sh-shelf{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.sh-shelf .sh-cell{scroll-snap-align:start;flex:none}}.sh .progress-day.is-streak{background:linear-gradient(160deg,#f5c451,#ff7f6b)}.sh-night{--sh-surface: #1d1840;--sh-surface-2: #1b1638;--sh-surface-3: #2a2356;--sh-line: rgba(199, 190, 255, .16);--sh-line-strong: rgba(199, 190, 255, .34);--sh-text: #f4f1ff;--sh-text-2: #bdb6e0;--sh-text-3: #8f88b8;--sh-track: rgba(255, 255, 255, .12)}.sh-dashboard-columns{display:grid;grid-template-columns:264px minmax(0,1fr);gap:28px;margin-top:24px;align-items:start}.sh-dashboard-main{min-width:0}.sh-dashboard-columns .sh-facts{display:flex;flex-direction:column;margin:0;gap:24px;min-width:0}.sh-dashboard-columns .sh-facts .sh-card{background:none;padding:0 0 22px;border:0;border-bottom:1px solid var(--border);border-radius:0;gap:12px}.sh-dashboard-columns .sh-facts .sh-card h3{font:600 18px/1.25 var(--font-ui);text-transform:none;letter-spacing:-.02em;color:var(--text)}.sh-dashboard-columns .sh-facts .progress-skill h3{font-size:14px;margin-top:14px}.sh-dashboard-columns .sh-row{margin-top:0}.sh-dashboard-columns .sh-next{flex:1 1 250px}.sh-dashboard-main .sh-row>div{flex-basis:250px!important}.sh-dashboard-main .sh-goal{padding:22px 18px;gap:14px}.sh-dashboard-main .sh-case-body{flex-direction:column}.sh-dashboard-main .sh-case-col{flex:none}.sh-dashboard-main .sh-closest{flex:none;align-self:stretch}.sh-dashboard-main .sh-shelf{gap:6px 2px}.sh-dashboard-main .sh-cell{width:104px}.sh-dashboard-page .launch{background:var(--surface);border:1px solid var(--border);border-radius:24px}.sh-dashboard-page .os-section>.os-section{margin-top:0}.sh-dashboard-page .dash-two>div{min-width:0;border:1px solid var(--border);border-radius:24px;padding:24px}.sh-dashboard-page .dash-two .os-section{margin:0}.sh-dashboard-page .dash-two .os-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.sh-dashboard-page .dash-two .kpi{min-width:0}.sh-avatar-source{padding:14px 0;margin:12px 0;border:0;border-top:1px solid var(--nt-line);display:flex;flex-wrap:wrap;gap:10px}.sh-avatar-source legend{color:var(--nt-sub);padding-right:12px;font-size:13px}.sh-avatar-source button[aria-pressed=true]{border-color:var(--nt-lime)}.sh-character-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;width:100%}.sh-character{height:82px;border-radius:16px;padding:4px;border:1px solid var(--nt-line);background:#ffffff0a;cursor:pointer}.sh-frame-face>.kx-art{font-size:initial}.sh-picker-top>.sh-frame{animation:sh-pop .6s var(--sh-ease-spring) both}.sh-skeleton{display:grid;grid-template-columns:1fr 1fr;gap:24px}.sh-skeleton>div{min-height:180px;border-radius:24px;background:linear-gradient(90deg,var(--surface-2),var(--surface-3),var(--surface-2));background-size:200% 100%;animation:sh-skeleton-shimmer 1.6s linear infinite}.sh-skeleton>div:first-child{grid-column:1 / -1;min-height:320px;background:linear-gradient(90deg,#0b0a1f,#21183f,#0b0a1f);background-size:200% 100%}.sh-skeleton>span{grid-column:1 / -1}@keyframes sh-skeleton-shimmer{to{background-position:-200% 0}}.sh-performance svg{display:block;width:100%;overflow:visible}.sh-performance svg text{font:11px var(--font-ui);fill:var(--text-2)}.sh-performance svg [tabindex]:focus-visible{outline:none;stroke:var(--focus);stroke-width:3px}.sh-chart-meta{display:flex;flex-wrap:wrap;gap:14px;align-items:center;font-size:12px;color:var(--text-2)}.sh-chart-meta>span{display:flex;gap:6px;align-items:center}.sh-chart-meta i{width:9px;height:9px;border-radius:2px}.sh-chart-meta button{margin-left:auto}.sh-chart-status{color:var(--text-2);font-size:12px;min-height:20px}.sh-table-scroll{overflow-x:auto}.sh-performance small{display:block;margin-top:10px;font-size:11px}@media(max-width:1100px){.sh-dashboard-columns{grid-template-columns:210px minmax(0,1fr);gap:20px}}@media(max-width:850px){.sh-dashboard-columns{display:flex;flex-direction:column}.sh-dashboard-main{width:100%;order:0}.sh-dashboard-columns .sh-facts{order:1;width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.sh-dashboard-columns .sh-facts .sh-card{border:1px solid var(--border);border-radius:24px;padding:22px}.sh-character-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:480px){.sh-dashboard-page .dash-two>div{padding:18px}.sh-dashboard-page .dash-two .os-grid-4{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.sh .sh-bloom,.sh .sh-stars{transform:none!important}.sh-celebrate-text{opacity:1;transform:none}}.sh-case.is-expanded .sh-shelf{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));overflow:visible}.sh-case.is-expanded .sh-cell{width:100%;padding:20px 8px;background:#ffffff09;border:1px solid var(--nt-line)}.sh-case.is-expanded .sh-plank{display:none}.sh-unlock-toast{position:fixed;bottom:24px;right:24px;max-width:calc(100vw - 48px);z-index:300;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px;border:1px solid var(--nt-line-strong);border-radius:18px;background:var(--nt-bg2);color:var(--nt-text);box-shadow:0 20px 60px #0005;animation:sh-rise .3s var(--sh-ease-out) both}.sh-unlock-toast>.i{color:var(--nt-gold)}.sh-case-head .sh-actions{gap:8px}.sh-case-head .sh-night-btn{height:36px;font-size:12px;padding:0 12px}.sh-case-head>.sh-actions{flex:0 1 auto;min-width:0;flex-direction:row;align-items:center}.sh-dashboard-page .skillmap{border:1px solid var(--border);border-radius:24px;padding:22px}.sh-dashboard-page .sh-const{background:var(--surface);border:0}.sh-case-gallery{max-width:1200px}.sh-case-gallery>.sh-case{margin-top:20px;padding:0;background:none;border:0;overflow:visible}.sh-case-gallery .sh-case-body{flex-direction:column}.sh-case-gallery .sh-case-col{flex:none}.sh-case-gallery .sh-closest{flex:none;align-self:stretch}@media(prefers-reduced-motion:reduce){.sh-unlock-toast{animation:none}}@media(min-width:768px)and (max-width:1024px){.sh-hero{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding:28px}.sh-hero-id .sh-frame{max-width:150px;max-height:150px}.sh-hero-main{min-width:0}.sh-hero .sh-rings{grid-column:1 / -1;width:100%;display:grid;grid-template-columns:236px minmax(0,1fr);align-items:center;gap:24px}.sh-dashboard-columns{display:flex;flex-direction:column}.sh-dashboard-main{width:100%;order:0}.sh-dashboard-main .sh-row{display:flex;flex-direction:column}.sh-dashboard-main .sh-row>*{width:100%;flex-basis:auto!important;min-width:0}.sh-dashboard-columns .sh-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;order:1}.sh-case-body{flex-direction:column}.sh-case-col,.sh-closest{flex:none;min-width:0;align-self:stretch}.sh-case-head>div{min-width:0}}.social-settings{display:flex;flex-direction:column;gap:18px;color:var(--nt-text)}.social-settings h2,.social-settings h3{color:var(--nt-text);margin:0}.social-settings p{color:var(--nt-sub);line-height:1.6;margin:0}.social-settings label,.social-safety label{display:flex;flex-direction:column;gap:8px;font-weight:600}.social-settings input:not([type=checkbox]),.social-settings select,.social-safety textarea{width:100%;max-width:100%;border:1px solid var(--nt-line-strong);border-radius:10px;padding:12px;background:var(--nt-bg1);color:var(--nt-text);font:inherit}.social-settings .social-toggle{display:flex;flex-direction:row;align-items:center;gap:12px;font-weight:400;line-height:1.4}.social-toggle input{accent-color:#779b34;width:18px;height:18px;flex:none}.social-settings fieldset{display:flex;flex-direction:column;gap:14px;border:1px solid var(--nt-line);border-radius:18px;padding:20px}.social-settings legend{padding:0 8px;color:var(--nt-sub)}.social-preview{padding:18px;border-radius:18px;background:var(--surface-2);color:var(--text);border:1px solid var(--border);line-height:1.6}.sh-night .social-preview{background:#ffffff0a;border-color:var(--nt-line);color:var(--nt-text)}.social-block-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}.social-profile{max-width:1280px;margin:auto;display:flex;flex-direction:column;gap:24px;min-width:0}.social-public-stats{display:grid;grid-template-columns:auto auto;gap:12px 20px;color:var(--nt-sub)}.social-public-stats dd{margin:0;color:var(--nt-text);font-weight:700}.social-people-result{display:flex;align-items:center;gap:12px;min-width:0;width:100%}.social-people-result>span:nth-child(2){display:flex;flex-direction:column;gap:4px;min-width:0}.social-people-result strong{color:var(--text)}.social-people-result small{color:var(--text-2);font-size:11px;white-space:normal}.social-result-medals{margin-left:auto;display:flex;gap:4px;flex:none}.social-calendar{display:flex;flex-wrap:wrap;gap:8px}.social-calendar time{background:var(--surface-2);padding:8px;border-radius:8px}.social-kudos{position:relative;display:flex;flex-direction:column;gap:8px}.social-kudos>span[role=status]{color:var(--nt-sub);font-size:13px}.social-kudos button[aria-pressed=true]{border-color:var(--nt-coral)}.social-heart-burst{position:absolute;left:16px;top:0;color:var(--nt-coral);pointer-events:none;animation:social-heart .65s ease-out both}@keyframes social-heart{0%{transform:translateY(0) scale(.7);opacity:1}to{transform:translateY(-44px) scale(1.7);opacity:0}}.social-profile .sh-cell{cursor:default}.social-safety form{display:flex;flex-direction:column;gap:12px}.social-safety textarea{background:var(--surface);border-color:var(--border);color:var(--text)}@media(max-width:600px){.social-result-medals{display:none}.social-people-result{gap:8px}.social-settings fieldset{padding:14px}}@media(prefers-reduced-motion:reduce){.social-heart-burst{animation:none;display:none}}.sh-modal.sh-night .social-settings input:not([type=checkbox]),.sh-modal.sh-night .social-settings select{background:var(--nt-bg1);color:var(--nt-text);border-color:var(--nt-line-strong)}.social-profile h1,.social-people-result strong,.social-people-result small,.social-safety p{overflow-wrap:anywhere}.platform-nav-disabled{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:9px;color:var(--text-3);font-size:12px;cursor:default}.platform-nav-disabled svg{width:18px;height:18px;flex:none}.platform-nav-disabled small,.platform-nav-state{font-size:8px;letter-spacing:.3px;margin-left:auto;padding:2px 4px;border:1px solid var(--border-strong);border-radius:4px}.platform-nav-state{color:var(--text-3)}.platform-review-notice{padding:12px 16px;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface);color:var(--text-2);font-size:12px}.platform-mobile-close{display:none;position:absolute;top:12px;right:8px;min-width:44px;min-height:44px;z-index:2}@media(max-width:960px){.platform-mobile-close{display:grid;place-items:center}}.platform-nav-group{display:flex;flex-direction:column;gap:2px}.platform-nav-group .nav-label{display:block;padding-top:12px}.platform-nav-group a,.platform-nav-group .platform-nav-disabled{min-height:44px}@media(min-width:961px){.app.is-collapsed .platform-nav-state,.app.is-collapsed .platform-nav-disabled span,.app.is-collapsed .platform-nav-disabled small{display:none}.app.is-collapsed .platform-nav-disabled{justify-content:center;padding-left:10px;padding-right:10px}.app.is-collapsed .platform-nav-group+.platform-nav-group{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(/assets/learn-reference-0-T6up_K_Q.ttf) format("truetype")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/learn-reference-1-CJWdwruJ.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/learn-reference-2-CB7WfZ8W.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/learn-reference-3-DCQhiIS7.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/learn-reference-4-CYvJJk-g.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/learn-reference-5-BQ0abr9c.ttf) format("truetype")}:root[data-theme] body .app.student-shell .sidebar{width:236px;padding:30px 22px 24px;background:radial-gradient(circle at 0 10%,color-mix(in srgb,var(--violet-soft) 65%,transparent),transparent 38%),var(--sidebar);border-color:var(--line)}:root[data-theme] body .app.student-shell .brand{padding:0 8px 34px;height:auto;gap:12px;color:var(--ink)}:root[data-theme] body .app.student-shell .brand-mark{position:relative;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);border-radius:12px;background:var(--surface-solid);color:var(--violet-deep);font:600 25px var(--font-display);box-shadow:0 5px 14px #4c3a4310}:root[data-theme] body .app.student-shell .brand-mark:after{content:"✦";position:absolute;right:-5px;top:-9px;color:var(--gold);font-size:18px}:root[data-theme] body .app.student-shell .brand-text{font:600 21px var(--font-display)}:root[data-theme] body .app.student-shell .brand-text small{font:500 9px var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin-top:5px}:root[data-theme] body .app.student-shell .sidebar .nav{padding:0;gap:0}:root[data-theme] body .app.student-shell .sidebar .nav:before{content:"Your study";display:block;padding:0 12px 16px;text-transform:uppercase;letter-spacing:.18em;font:700 10px var(--font-body);color:var(--ink-faint)}:root[data-theme] body .app.student-shell .sidebar .nav a{font:500 13px var(--font-body);min-height:46px;margin:5px 0;padding:0 13px;border:1px solid transparent;border-radius:12px;color:var(--ink-soft)}:root[data-theme] body .app.student-shell .sidebar .nav a .i{color:var(--ink-soft);font-size:19px}:root[data-theme] body .app.student-shell .sidebar .nav a[aria-current=page]{color:var(--violet-deep);background:linear-gradient(110deg,color-mix(in srgb,var(--violet-soft) 65%,transparent),transparent);border-color:color-mix(in srgb,var(--violet) 25%,transparent);box-shadow:inset 3px 0 var(--violet);font-weight:700}:root[data-theme] body .app.student-shell .sidebar .nav a[aria-current=page] .i{color:var(--violet)}:root[data-theme] body .app.student-shell .sidebar .nav a[aria-current=page]:after{content:"◆";margin-left:auto;color:var(--gold);font-size:9px}:root[data-theme] body .app.student-shell .sidebar-foot{display:none}:root[data-theme] body .app.student-shell .learn-shell-profile{border-top:1px solid var(--line);padding:18px 6px 0}:root[data-theme] body .app.student-shell .learn-shell-profile .identity{border:0;background:none;box-shadow:none;max-width:100%;color:var(--ink);padding:0;font-family:var(--font-body)}:root[data-theme] body .app.student-shell .learn-shell-profile .identity-text{display:block;min-width:0;text-align:left}:root[data-theme] body .app.student-shell .learn-shell-profile .identity-text strong{font:700 11px var(--font-body)}:root[data-theme] body .app.student-shell .learn-shell-profile .identity-text small{font:400 9px var(--font-body);color:var(--ink-faint)}:root[data-theme] body .app.student-shell .learn-shell-profile .avatar{background:var(--violet-deep);color:var(--page);width:34px;height:34px}:root[data-theme] body .app.student-shell .learn-shell-profile .menu{top:auto;bottom:calc(100% + 12px);left:0;right:auto;max-width:min(280px,calc(100vw - 50px))}@media(min-width:961px)and (max-width:1180px){:root[data-theme] body .app.student-shell .sidebar{width:210px;padding-inline:16px}}@media(max-width:960px){:root[data-theme] body .app.student-shell .sidebar{width:236px;position:fixed;transform:translate(-100%)}:root[data-theme] body .app.student-shell.nav-open .sidebar{transform:translate(0)}}:root[data-theme] body .app.student-shell .sidebar{flex:0 0 236px;min-width:0}:root[data-theme] body .app.student-shell .sidebar .nav .icon{width:19px;height:19px}:root[data-theme] body .app.student-shell .learn-shell-profile .identity-text strong,:root[data-theme] body .app.student-shell .learn-shell-profile .identity-text small{display:block}@media(min-width:961px)and (max-width:1180px){:root[data-theme] body .app.student-shell .sidebar{flex-basis:210px}}:root[data-theme] body .app.student-shell .sidebar{--font-display:"Cormorant Garamond",Georgia,serif;--font-body:"DM Sans",system-ui,sans-serif;--ink:#30223d;--ink-soft:#62566a;--ink-faint:#716576;--violet:#694d91;--violet-deep:#4b316f;--violet-soft:#e9e0f2;--gold:#916a2d;--surface:#fff;--surface-solid:#fff;--page:#fff;--line:rgba(74,52,83,.14);--sidebar:#fff;background:#fff;font-family:var(--font-body)}:root[data-theme] body .app.student-shell:not(.is-learn) .sidebar .nav a[aria-current=page]{background:#fff}:root[data-theme] body .app.student-shell.is-learn .sidebar{--surface:rgba(255,253,248,.86);--surface-solid:#fffdf8;--page:#f8f4eb;--sidebar:rgba(245,239,228,.96);background:radial-gradient(circle at 0 10%,color-mix(in srgb,var(--violet-soft) 65%,transparent),transparent 38%),var(--sidebar)}:root[data-theme=dark] body .app.student-shell .sidebar{--ink:#f6eedf;--ink-soft:#c8bdd0;--ink-faint:#b6aabd;--violet:#bda3dc;--violet-deep:#d1b9ed;--violet-soft:#3c2e50;--gold:#d3b16d;--surface:#20283a;--surface-solid:#20283a;--page:#151d2d;--line:rgba(225,205,235,.18);--sidebar:#151d2d;background:var(--sidebar)}:root[data-theme=dark] body .app.student-shell:not(.is-learn) .sidebar .nav a[aria-current=page]{background:var(--sidebar)}:root[data-theme=dark] body .app.student-shell.is-learn .sidebar{--surface:rgba(38,30,51,.84);--surface-solid:#272033;--page:#161321;--sidebar:rgba(24,19,35,.98);background:radial-gradient(circle at 0 10%,color-mix(in srgb,var(--violet-soft) 65%,transparent),transparent 38%),var(--sidebar)}:root[data-theme] body .app.student-shell .sidebar-foot{display:block;position:absolute;top:5px;right:5px;border:0}:root[data-theme] body .app.student-shell .sidebar-foot button{padding:0;min-height:24px;width:24px;justify-content:center;color:var(--ink-faint);border-radius:6px}:root[data-theme] body .app.student-shell .sidebar-foot span{display:none}:root[data-theme] body .app.student-shell.is-collapsed .sidebar{width:64px;flex-basis:64px;padding:30px 10px 20px}:root[data-theme] body .app.student-shell.is-collapsed .brand{padding:0 0 24px;justify-content:center}:root[data-theme] body .app.student-shell.is-collapsed .sidebar .nav:before,:root[data-theme] body .app.student-shell.is-collapsed .learn-shell-profile .identity-text{display:none}:root[data-theme] body .app.student-shell.is-collapsed .sidebar .nav a{padding:0;justify-content:center}:root[data-theme] body .app.student-shell.is-collapsed .sidebar .nav a:after{display:none}:root[data-theme] body .app.student-shell.is-collapsed .learn-shell-profile{padding-inline:0}:root[data-theme] body .app.student-shell .sidebar .nav .icon{stroke:currentColor;fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}:root[data-theme] body .app.student-shell .talence-poster{position:relative;isolation:isolate;display:flex;flex:none;min-height:178px;margin:0 0 20px;overflow:hidden;flex-direction:column;justify-content:space-between;padding:14px 13px 12px;border:1px solid #ffffff30;border-radius:15px;background:#0a0b0f;color:#fff;text-decoration:none;box-shadow:0 10px 26px #1a153a26}:root[data-theme] body .app.student-shell .talence-poster img{position:absolute;z-index:-2;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:68% center;transition:transform .3s ease}:root[data-theme] body .app.student-shell .talence-poster-shade{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#08091050,#08091020 26%,#080910d9 57%,#080910f5)}:root[data-theme] body .app.student-shell .talence-poster-brand{display:grid;gap:3px;align-self:flex-start;text-shadow:0 1px 8px #08091080}:root[data-theme] body .app.student-shell .talence-poster-brand strong{font:800 11px/1 var(--font-body);letter-spacing:.2em;color:#fff}:root[data-theme] body .app.student-shell .talence-poster-brand small{font:600 7px/1.25 var(--font-body);letter-spacing:.12em;color:#e2e6ff}:root[data-theme] body .app.student-shell .talence-poster-copy{display:grid;gap:5px;max-width:100%;text-shadow:0 1px 7px #08091090}:root[data-theme] body .app.student-shell .talence-poster-copy strong{font:600 19px/1.05 var(--font-display);letter-spacing:-.02em;color:#fff}:root[data-theme] body .app.student-shell .talence-poster-copy span{font:500 9px/1.4 var(--font-body);color:#e1e4f1}:root[data-theme] body .app.student-shell .talence-poster-cta{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:7px;padding:8px 9px;border:1px solid #ffffff65;border-radius:8px;background:linear-gradient(100deg,#4f46e5e8,#7c3aeddf 65%,#be2871d9);color:#fff;font:700 10px/1 var(--font-body)}:root[data-theme] body .app.student-shell .talence-poster-cta .i{width:13px;height:13px;color:#fff}:root[data-theme] body .app.student-shell .talence-poster[aria-disabled=true]{cursor:default}:root[data-theme] body .app.student-shell .talence-poster[aria-disabled=true] .talence-poster-cta{justify-content:center;gap:8px}:root[data-theme] body .app.student-shell .talence-poster:focus-visible{outline:3px solid #8175ff;outline-offset:3px}:root[data-theme] body .app.student-shell.is-collapsed .talence-poster{display:none}@media(max-width:960px){:root[data-theme] body .app.student-shell .sidebar-foot{display:none}}:root[data-theme] body .app.student-shell .sidebar{overflow-y:auto}:root[data-theme] body .app.student-shell .talence-poster{min-height:270px}.section-poster{--poster-base:#30213f;position:relative;display:flex;flex:none;flex-direction:column;gap:12px;min-height:300px;margin:0 0 20px;padding:16px 13px 13px;border:1px solid #b99b6560;border-radius:15px;color:#f9efda;background:radial-gradient(ellipse at 80% 10%,#89709c65,transparent 65%),var(--poster-base);text-decoration:none;overflow:hidden;box-shadow:0 10px 26px #1a153a26}.section-poster--aptitude{--poster-base:#482837;color:#fff0dd;background:radial-gradient(ellipse at 10% 0%,#b56c7c65,transparent 65%),var(--poster-base)}.section-poster-kicker{font:600 8px/1.5 var(--font-body);letter-spacing:.15em}.section-poster-art{width:100%;height:130px;color:#e3bd76;flex:none}.section-poster-copy{display:grid;gap:9px}.section-poster-copy strong{font:600 24px/1.05 Cormorant Garamond,Georgia,serif}.section-poster-copy>span{font:400 11px/1.5 DM Sans,sans-serif;color:#eee4ef}.section-poster-cta{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-top:auto;padding:10px 8px;border:1px solid #e3bd7660;border-radius:8px;background:#ffffff12;font:600 11px/1.3 DM Sans,sans-serif}.section-poster-cta .i{width:14px}.section-poster:hover{color:#fff;box-shadow:0 14px 30px #30205b40}.section-poster:focus-visible{outline:3px solid var(--accent);outline-offset:3px}:root[data-theme] body .app.student-shell.is-collapsed .section-poster{display:none}:root[data-theme] body .app.student-shell .section-poster{box-sizing:border-box;height:270px;min-height:270px}.app.student-shell[data-section-theme=dashboard]{--section-base:#ffffff;--section-sidebar:#fbfbfc;--section-tint:#f0f2f5;--section-accent:#334155;--section-strong:#1f2937;--section-glow:#ffffff}.app.student-shell[data-section-theme=practice]{--section-base:#f0f7f1;--section-sidebar:#eaf3eb;--section-tint:#d9ebdd;--section-accent:#286a54;--section-strong:#205542;--section-glow:#e6edce}.app.student-shell[data-section-theme=assessments]{--section-base:#fcf2f3;--section-sidebar:#faecef;--section-tint:#f5dce3;--section-accent:#a3425c;--section-strong:#87344c;--section-glow:#f5e3d8}.app.student-shell[data-section-theme=mentor]{--section-base:#f3f1fc;--section-sidebar:#eeeafa;--section-tint:#e3ddf4;--section-accent:#66509a;--section-strong:#503b7e;--section-glow:#dfe6f7}:root[data-theme=dark] .app.student-shell[data-section-theme=dashboard]{--section-base:#111c2c;--section-sidebar:#132135;--section-tint:#203c5b;--section-accent:#99c5f0;--section-strong:#bad9f7;--section-glow:#193e46}:root[data-theme=dark] .app.student-shell[data-section-theme=practice]{--section-base:#121f1b;--section-sidebar:#14261f;--section-tint:#244737;--section-accent:#9ed6b5;--section-strong:#bce8cd;--section-glow:#35432a}:root[data-theme=dark] .app.student-shell[data-section-theme=assessments]{--section-base:#281820;--section-sidebar:#2d1c26;--section-tint:#503040;--section-accent:#f0adc1;--section-strong:#f7c8d6;--section-glow:#4a302b}:root[data-theme=dark] .app.student-shell[data-section-theme=mentor]{--section-base:#1c182b;--section-sidebar:#221d33;--section-tint:#3c3056;--section-accent:#c8b4ed;--section-strong:#dfcef9;--section-glow:#2a3556}:root[data-theme] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]){--paper:var(--section-base);--bg:var(--section-base);--surface:color-mix(in srgb,#fff 93%,var(--section-base));--surface-2:color-mix(in srgb,var(--section-tint) 60%,#fff);--surface-3:var(--section-tint);--white:var(--surface);--accent:var(--section-accent);--accent-strong:var(--section-strong);--accent-text:var(--section-accent);--accent-soft:var(--section-tint);--accent-soft-2:var(--section-tint);--border:color-mix(in srgb,var(--section-accent) 20%,var(--surface));--border-strong:color-mix(in srgb,var(--section-accent) 48%,var(--surface));--hair:var(--border);--hair-strong:var(--border-strong);--rule-color:var(--border);--cc-card:var(--surface);--cc-hover:var(--surface-2);--cc-line:var(--border);--cc-line-strong:var(--border-strong);--cc-blue-500:var(--section-accent);--cc-blue-600:var(--section-strong);--cc-blue-700:var(--section-accent);--on-accent:#fff;--ring:color-mix(in srgb,var(--section-accent) 28%,transparent);background:var(--section-base)}:root[data-theme=dark] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]){--surface:color-mix(in srgb,var(--section-base) 86%,var(--section-tint));--surface-2:color-mix(in srgb,var(--section-base) 55%,var(--section-tint));--on-accent:#151c29}:root[data-theme] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]) .main{background:radial-gradient(ellipse at 95% 0%,color-mix(in srgb,var(--section-tint) 72%,transparent),transparent 42%),radial-gradient(ellipse at 0% 70%,color-mix(in srgb,var(--section-glow) 42%,transparent),transparent 42%),var(--section-base)}:root[data-theme] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]) .page{flex:1}:root[data-theme] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]) .topbar{background:color-mix(in srgb,var(--section-base) 94%,transparent);border-color:var(--border)}:root[data-theme] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]) .sidebar{--violet:var(--section-accent);--violet-deep:var(--section-strong);--violet-soft:var(--section-tint);--gold:var(--section-accent);--surface:color-mix(in srgb,#fff 88%,var(--section-base));--surface-solid:var(--surface);--page:var(--section-base);--line:color-mix(in srgb,var(--section-accent) 22%,var(--section-sidebar));--sidebar:var(--section-sidebar);background:radial-gradient(circle at 0% 8%,color-mix(in srgb,var(--section-tint) 75%,transparent),transparent 38%),radial-gradient(circle at 80% 90%,color-mix(in srgb,var(--section-glow) 45%,transparent),transparent 42%),var(--section-sidebar);border-color:var(--line)}:root[data-theme=dark] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]) .sidebar{--surface:color-mix(in srgb,var(--section-sidebar) 80%,var(--section-tint));--surface-solid:var(--surface)}:root[data-theme] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]) .sidebar .nav a[aria-current=page]{background:linear-gradient(110deg,color-mix(in srgb,var(--section-tint) 75%,var(--surface)),color-mix(in srgb,var(--surface) 70%,transparent));color:var(--section-strong);border-color:color-mix(in srgb,var(--section-accent) 35%,transparent);box-shadow:inset 3px 0 var(--section-accent)}:root[data-theme] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]) .section-option{--option-ink:var(--section-accent);background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--section-tint) 35%,var(--surface)));border-color:var(--border)}:root[data-theme] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]) .section-option-icon{color:var(--section-accent);background:var(--section-tint)}:root[data-theme] body .app.student-shell[data-section-theme=mentor] .mn.t-mentor{--mn-paper:var(--surface);--mn-ivory:var(--section-base);--mn-plum:var(--section-accent);--mn-plum-deep:var(--section-strong);--mn-gold:var(--section-accent);--mn-line:var(--border);--mn-muted:var(--text-2);color:var(--text)}:root[data-theme] body .app.student-shell[data-section-theme=mentor] :is(.mn-card,.mn-side .card,.mn-step,.mn-list,.mn-sample,.mn-empty,.mn-context,.mn-code){background:var(--surface);border-color:var(--border)}:root[data-theme] body .app.student-shell[data-section-theme=mentor] :is(.mn-panel,.mn-step.is-active){background:color-mix(in srgb,var(--section-tint) 55%,var(--surface));border-color:var(--border-strong)}:root[data-theme] body .app.student-shell[data-section-theme=mentor] .mn-step.is-active{box-shadow:inset 0 3px var(--section-accent)}:root[data-theme] body .app.student-shell[data-section-theme=mentor] :is(.mn-field select,.mn-field textarea,.mn-field input,.mn-codebox,.mn-follow-btn){background:var(--surface);border-color:var(--border);color:var(--text)}:root[data-theme] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]){--tint-violet:color-mix(in srgb,var(--section-tint) 65%,var(--surface));--tint-blue:color-mix(in srgb,var(--section-glow) 60%,var(--surface));--tint-coral:color-mix(in srgb,var(--section-tint) 42%,var(--surface));--tint-green:color-mix(in srgb,var(--section-glow) 42%,var(--surface))}:root[data-theme] body .app.student-shell[data-section-theme]:not([data-section-theme=learn]) .main :is(.kicker,.eyebrow){color:var(--section-accent)}:root[data-theme] body .app.student-shell[data-section-theme=dashboard]:not([data-section-theme=learn]) .main{background:#fff;background-image:none}:root[data-theme] body .app.student-shell[data-section-theme=dashboard]:not([data-section-theme=learn]) .topbar{background:#fff}:root[data-theme=dark] body .app.student-shell[data-section-theme=dashboard]:not([data-section-theme=learn]) .main{background:var(--section-base);background-image:none}:root[data-theme=dark] body .app.student-shell[data-section-theme=dashboard]:not([data-section-theme=learn]) .topbar{background:var(--section-base)}:root[data-theme] body .app.student-shell:not(.is-learn):not([data-section-theme=dashboard]) .main{--font-display:"Cormorant Garamond",Georgia,serif;--font-body:"DM Sans",system-ui,sans-serif;font-family:var(--font-body)}:root[data-theme] body .app.student-shell:not(.is-learn):not([data-section-theme=dashboard]) .main :is(h1,h2,h3,h4,.display,.topbar-title strong){font-family:var(--font-display);letter-spacing:-.025em;font-weight:600}.learn-exact{font-family:var(--font-body);color:var(--ink);line-height:1.5}.learn-exact :is(h1,h2,h3,p,figure){margin:0}.learn-exact a{text-decoration:none;color:inherit}.learn-exact button{font:inherit;cursor:pointer}.app.student-shell.is-learn{--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "DM Sans", system-ui, sans-serif;--page: #f8f4eb;--page-soft: #f2ede3;--sidebar: rgba(245, 239, 228, .96);--surface: rgba(255, 253, 248, .86);--surface-solid: #fffdf8;--surface-raised: #ffffff;--ink: #30223d;--ink-soft: #62566a;--ink-faint: #716576;--violet: #694d91;--violet-deep: #4b316f;--violet-soft: #e9e0f2;--gold: #916a2d;--gold-soft: #f2e5c6;--sage: #dfe9dc;--sage-ink: #4f6b57;--periwinkle: #e2e6f7;--periwinkle-ink: #59648b;--line: rgba(74, 52, 83, .14);--line-strong: rgba(74, 52, 83, .23);--shadow: 0 18px 45px rgba(76, 58, 67, .09), 0 2px 7px rgba(68, 47, 74, .05);--shadow-hover: 0 22px 50px rgba(76, 58, 67, .14), 0 3px 9px rgba(68, 47, 74, .08);--focus: #785ca1;color-scheme:light}:root[data-theme=dark] .app.student-shell.is-learn{--page: #161321;--page-soft: #1c1728;--sidebar: rgba(24, 19, 35, .98);--surface: rgba(38, 30, 51, .84);--surface-solid: #272033;--surface-raised: #30263d;--ink: #f6eedf;--ink-soft: #c8bdd0;--ink-faint: #b6aabd;--violet: #bda3dc;--violet-deep: #d1b9ed;--violet-soft: #3c2e50;--gold: #d3b16d;--gold-soft: #4a3b2b;--sage: #2e4139;--sage-ink: #b6d5bf;--periwinkle: #30364e;--periwinkle-ink: #c2c9ed;--line: rgba(225, 205, 235, .13);--line-strong: rgba(225, 205, 235, .24);--shadow: 0 18px 48px rgba(4, 2, 10, .28), 0 2px 8px rgba(3, 1, 8, .2);--shadow-hover: 0 24px 54px rgba(3, 1, 9, .4), 0 0 0 1px rgba(200, 169, 222, .08);--focus: #d1b9ed;color-scheme:dark}@layer base{.learn-exact *{box-sizing:border-box}.learn-exact html{background:var(--page);scroll-behavior:smooth}.learn-exact body{min-width:320px;margin:0;background:var(--page);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}.learn-exact button{color:inherit}.learn-exact button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}}.learn-exact .app-shell{min-height:100vh;background:var(--page)}.learn-exact .icon{flex:0 0 auto;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}.learn-exact .sidebar{position:fixed;inset:0 auto 0 0;z-index:30;display:flex;width:236px;flex-direction:column;padding:30px 22px 24px;border-right:1px solid var(--line);background:radial-gradient(circle at 0 10%,color-mix(in srgb,var(--violet-soft) 65%,transparent) 0,transparent 38%),var(--sidebar);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.learn-exact .brand{display:flex;align-items:center;gap:12px;padding:0 8px 34px}.learn-exact .brand-mark{position:relative;display:grid;width:38px;height:38px;place-items:center;border:1px solid color-mix(in srgb,var(--gold) 52%,transparent);border-radius:12px;background:linear-gradient(145deg,var(--surface-raised),var(--violet-soft));box-shadow:0 6px 18px color-mix(in srgb,var(--violet) 16%,transparent);color:var(--violet-deep);font-family:var(--font-display);font-size:25px;font-weight:600}.learn-exact .brand-mark i{position:absolute;top:-5px;right:-4px;width:8px;height:8px;transform:rotate(45deg);background:var(--gold);box-shadow:0 0 10px color-mix(in srgb,var(--gold) 70%,transparent)}.learn-exact .brand strong,.learn-exact .brand small,.learn-exact .profile strong,.learn-exact .profile small{display:block}.learn-exact .brand strong{font-family:var(--font-display);font-size:21px;font-weight:600;letter-spacing:-.02em}.learn-exact .brand small{margin-top:1px;color:var(--ink-faint);font-size:10px;letter-spacing:.13em;text-transform:uppercase}.learn-exact .primary-nav{display:flex;flex-direction:column;gap:5px}.learn-exact .nav-label{margin:0 12px 10px;color:var(--ink-faint);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.learn-exact .nav-item{position:relative;display:flex;min-height:46px;align-items:center;gap:12px;padding:0 13px;overflow:hidden;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--ink-soft);cursor:pointer;font-size:13px;font-weight:500;text-align:left;transition:.18s ease}.learn-exact .nav-item:hover{background:color-mix(in srgb,var(--surface-raised) 64%,transparent);color:var(--ink);transform:translate(2px)}.learn-exact .nav-item.active{border-color:color-mix(in srgb,var(--violet) 20%,transparent);background:linear-gradient(100deg,color-mix(in srgb,var(--violet-soft) 75%,transparent),transparent);box-shadow:inset 3px 0 0 var(--violet);color:var(--violet-deep);font-weight:700}.learn-exact .active-glint{position:absolute;right:15px;width:5px;height:5px;transform:rotate(45deg);background:var(--gold)}.learn-exact .sidebar-note{position:relative;margin-top:auto;padding:18px 15px 16px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--surface) 72%,transparent)}.learn-exact .sidebar-note .mini-star{position:absolute;top:-9px;right:14px;color:var(--gold);font-size:17px}.learn-exact .sidebar-note p{margin:0 0 10px;font-family:var(--font-display);font-size:16px;font-style:italic;line-height:1.25}.learn-exact .sidebar-note small{color:var(--ink-faint);font-size:9px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.learn-exact .profile{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:22px;padding:18px 7px 0;border-top:1px solid var(--line)}.learn-exact .avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--violet-deep);color:var(--page);font-size:10px;font-weight:700}.learn-exact .profile strong{font-size:11px}.learn-exact .profile small{margin-top:2px;color:var(--ink-faint);font-size:9px}.learn-exact .profile button{border:0;background:transparent;color:var(--ink-faint);cursor:pointer}.learn-exact .main-content{position:relative;min-height:100vh;margin-left:236px;overflow:hidden;background:radial-gradient(circle at 88% 3%,color-mix(in srgb,var(--periwinkle) 60%,transparent),transparent 27%),radial-gradient(circle at 12% 24%,color-mix(in srgb,var(--gold-soft) 52%,transparent),transparent 21%),var(--page)}.learn-exact .paper-texture{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E");mix-blend-mode:multiply}:root[data-theme=dark] .app.is-learn-home .paper-texture{opacity:.06;mix-blend-mode:screen}.learn-exact .page-inner{position:relative;width:min(100% - 72px,1180px);margin:0 auto;padding:48px 0 46px}.learn-exact .mobile-bar{display:none}.learn-exact .page-header{position:relative;display:flex;min-height:206px;align-items:center;padding:18px 22% 32px 12px;border-bottom:1px solid var(--line)}.learn-exact .header-copy{position:relative;z-index:2;max-width:690px}.learn-exact .eyebrow,.learn-exact .section-kicker{color:var(--violet);font-size:10px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}.learn-exact .eyebrow span{margin-right:7px;color:var(--gold)}.learn-exact .eyebrow.small{font-size:9px}.learn-exact .page-header h1{margin:11px 0 8px;font-family:var(--font-display);font-size:clamp(48px,4.5vw,67px);font-weight:600;letter-spacing:-.045em;line-height:.98}.learn-exact .page-header h1 em{color:var(--violet);font-weight:600}.learn-exact .page-header p{max-width:590px;margin:16px 0 0;color:var(--ink-soft);font-size:14px;line-height:1.75}.learn-exact .theme-toggle{position:absolute;top:0;right:0;display:flex;min-height:38px;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 80%,transparent);color:var(--ink-soft);cursor:pointer;font-size:10px;font-weight:600;transition:.18s ease}.learn-exact .theme-toggle:hover{border-color:var(--line-strong);color:var(--ink);transform:translateY(-1px)}.learn-exact .celestial-compass{position:absolute;right:5%;bottom:23px;width:142px;height:142px;opacity:.7}.learn-exact .orbit{position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:1px solid color-mix(in srgb,var(--violet) 28%,transparent);border-radius:50%}.learn-exact .orbit:before,.learn-exact .orbit:after{position:absolute;top:50%;left:50%;content:"";background:color-mix(in srgb,var(--gold) 38%,transparent);transform:translate(-50%,-50%)}.learn-exact .orbit:before{width:1px;height:124%}.learn-exact .orbit:after{width:124%;height:1px}.learn-exact .orbit-two{top:32px;right:32px;bottom:32px;left:32px;transform:rotate(45deg)}.learn-exact .compass-star{position:absolute;top:50%;left:50%;color:var(--gold);font-size:37px;text-shadow:0 0 18px color-mix(in srgb,var(--gold) 48%,transparent);transform:translate(-50%,-50%)}.learn-exact .satellite{position:absolute;color:var(--violet)}.learn-exact .s1{top:6px;left:67px}.learn-exact .s2{right:1px;bottom:34px}.learn-exact .s3{bottom:2px;left:22px}.learn-exact .continue-section,.learn-exact .destinations-section,.learn-exact .path-card,.learn-exact .resources-section{margin-top:54px}.learn-exact .section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:0 4px 21px}.learn-exact .section-heading.compact{align-items:center}.learn-exact .section-kicker{margin:0 0 6px}.learn-exact .section-heading h2,.learn-exact .path-copy h2{margin:0;font-family:var(--font-display);font-size:33px;font-weight:600;letter-spacing:-.025em;line-height:1.05}.learn-exact .section-heading>p{max-width:320px;margin:0 0 2px;color:var(--ink-faint);font-size:12px;line-height:1.6;text-align:right}.learn-exact .last-studied{color:var(--ink-faint);font-size:10px}.learn-exact .continue-card{position:relative;display:grid;min-height:330px;grid-template-columns:40% 60%;overflow:hidden;border:1px solid var(--line-strong);border-radius:26px;background:linear-gradient(115deg,color-mix(in srgb,var(--violet-soft) 72%,var(--surface-solid)),var(--surface-solid) 58%),var(--surface-solid);box-shadow:var(--shadow)}.learn-exact .continue-card:after{position:absolute;top:12px;right:12px;bottom:12px;left:12px;pointer-events:none;border:1px solid color-mix(in srgb,var(--gold) 17%,transparent);border-radius:18px;content:""}.learn-exact .book-visual{position:relative;min-height:330px;overflow:hidden;border-right:1px solid var(--line);background:radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--gold-soft) 76%,transparent),transparent 35%),linear-gradient(145deg,color-mix(in srgb,var(--periwinkle) 65%,transparent),transparent)}.learn-exact .book-visual:before,.learn-exact .book-visual:after{position:absolute;width:220px;height:220px;border:1px solid color-mix(in srgb,var(--violet) 16%,transparent);border-radius:50%;content:""}.learn-exact .book-visual:before{top:-80px;left:-90px}.learn-exact .book-visual:after{right:-130px;bottom:-120px}.learn-exact .book-glow{position:absolute;top:50%;left:50%;width:190px;height:190px;border-radius:50%;background:color-mix(in srgb,var(--gold) 22%,transparent);filter:blur(35px);transform:translate(-50%,-50%)}.learn-exact .book-cover{position:absolute;top:50%;left:50%;display:flex;width:142px;height:188px;align-items:center;flex-direction:column;justify-content:center;border:1px solid color-mix(in srgb,var(--gold) 55%,transparent);border-radius:5px 14px 14px 5px;background:linear-gradient(140deg,#5c4178,#342344);box-shadow:-10px 13px 22px #23142f40,inset 8px 0 #ffffff0d;color:#f4dfae;transform:translate(-50%,-50%) rotate(-4deg)}.learn-exact .book-cover:before,.learn-exact .book-cover:after{position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(236,206,138,.35);border-radius:3px 10px 10px 3px;content:""}.learn-exact .book-cover:after{top:17px;right:17px;bottom:17px;left:17px}.learn-exact .book-rune{font-family:var(--font-display);font-size:38px}.learn-exact .book-cover i{width:28px;height:1px;margin:12px 0;background:#ecce8ab3}.learn-exact .book-cover small{font-size:7px;font-weight:700;letter-spacing:.25em}.learn-exact .floating-star{position:absolute;color:var(--gold)}.learn-exact .fs1{top:22%;left:21%;font-size:17px}.learn-exact .fs2{top:30%;right:20%;font-size:13px}.learn-exact .fs3{right:26%;bottom:22%;font-size:30px}.learn-exact .continue-content{position:relative;z-index:2;display:flex;align-items:flex-start;flex-direction:column;justify-content:center;padding:38px 48px}.learn-exact .subject-chip,.learn-exact .count-label{display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--violet) 22%,transparent);border-radius:999px;background:color-mix(in srgb,var(--violet-soft) 65%,transparent);color:var(--violet-deep);font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.learn-exact .subject-chip{min-height:25px;padding:0 10px}.learn-exact .continue-content h3{margin:12px 0 2px;font-family:var(--font-display);font-size:39px;font-weight:600;letter-spacing:-.035em;line-height:1}.learn-exact .next-lesson{margin:9px 0 24px;color:var(--ink-soft);font-size:13px}.learn-exact .next-lesson span{margin-right:10px;color:var(--ink-faint);font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.learn-exact .progress-wrap{width:100%}.learn-exact .progress-labels{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;color:var(--ink-soft);font-size:10px;font-weight:600}.learn-exact .progress-labels strong{color:var(--violet-deep);font-size:12px}.learn-exact .progress-track{width:100%;height:7px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--ink) 10%,transparent)}.learn-exact .progress-track span{position:relative;display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet),var(--gold))}.learn-exact .progress-track span:after{position:absolute;top:50%;right:0;width:11px;height:11px;border:2px solid var(--surface-solid);border-radius:50%;background:var(--gold);content:"";transform:translate(50%,-50%)}.learn-exact .progress-wrap>small{display:block;margin-top:7px;color:var(--ink-faint);font-size:9px}.learn-exact .continue-footer{display:flex;width:100%;align-items:center;justify-content:space-between;gap:18px;margin-top:24px}.learn-exact .primary-button,.learn-exact .secondary-button{display:inline-flex;min-height:43px;align-items:center;justify-content:center;gap:10px;padding:0 18px;border-radius:12px;cursor:pointer;font-size:11px;font-weight:700;transition:.18s ease}.learn-exact .primary-button{border:1px solid var(--violet-deep);background:var(--violet-deep);box-shadow:0 8px 18px color-mix(in srgb,var(--violet-deep) 25%,transparent);color:var(--page)}:root[data-theme=dark] .app.is-learn-home .primary-button{color:#21182a}.learn-exact .primary-button:hover,.learn-exact .secondary-button:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.learn-exact .time-meta{display:flex;align-items:center;gap:6px;color:var(--ink-faint);font-size:10px}.learn-exact .destination-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.2fr;gap:14px}.learn-exact .destination-card{position:relative;display:flex;min-height:240px;align-items:flex-start;flex-direction:column;padding:24px;overflow:hidden;border:1px solid var(--line-strong);border-radius:20px;background:var(--surface-solid);box-shadow:0 8px 26px #422e460d;cursor:pointer;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.learn-exact .destination-card:hover{border-color:color-mix(in srgb,var(--violet) 50%,transparent);box-shadow:var(--shadow-hover);transform:translateY(-4px)}.learn-exact .destination-card:hover .card-action .icon{transform:translate(3px)}.learn-exact .destination-decoration{position:absolute;top:-62px;right:-55px;width:150px;height:150px;border:1px solid color-mix(in srgb,var(--violet) 18%,transparent);border-radius:50%}.learn-exact .destination-decoration:before,.learn-exact .destination-decoration:after{position:absolute;border-radius:50%;content:""}.learn-exact .destination-decoration:before{top:16px;right:16px;bottom:16px;left:16px;border:1px solid color-mix(in srgb,var(--gold) 18%,transparent)}.learn-exact .destination-decoration:after{right:35px;bottom:31px;width:6px;height:6px;background:var(--gold);box-shadow:0 0 9px var(--gold)}.learn-exact .destination-card.lilac{background:linear-gradient(145deg,var(--surface-solid),color-mix(in srgb,var(--violet-soft) 56%,var(--surface-solid)))}.learn-exact .destination-card.sage{background:linear-gradient(145deg,var(--surface-solid),color-mix(in srgb,var(--sage) 62%,var(--surface-solid)))}.learn-exact .destination-card.gold{background:linear-gradient(145deg,var(--surface-solid),color-mix(in srgb,var(--gold-soft) 60%,var(--surface-solid)))}.learn-exact .destination-card.periwinkle{background:linear-gradient(145deg,var(--surface-solid),color-mix(in srgb,var(--periwinkle) 65%,var(--surface-solid)))}.learn-exact .destination-top{position:relative;z-index:1;display:flex;width:100%;align-items:flex-start;justify-content:space-between}.learn-exact .destination-emblem{position:relative;display:grid;width:52px;height:52px;place-items:center;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--surface-raised) 78%,transparent);box-shadow:0 7px 18px #402c4a14;color:var(--violet-deep)}.learn-exact .sage .destination-emblem{color:var(--sage-ink)}.learn-exact .gold .destination-emblem{color:var(--gold)}.learn-exact .periwinkle .destination-emblem{color:var(--periwinkle-ink)}.learn-exact .destination-emblem i{position:absolute;top:-7px;right:-6px;color:var(--gold);font-size:12px;font-style:normal}.learn-exact .count-label{min-height:22px;padding:0 8px;border-color:var(--line);background:color-mix(in srgb,var(--surface) 58%,transparent);color:var(--ink-faint);font-size:8px;letter-spacing:.06em;text-transform:none}.learn-exact .destination-copy{position:relative;z-index:1;display:flex;flex-direction:column;margin-top:22px}.learn-exact .destination-copy strong{font-family:var(--font-display);font-size:25px;font-weight:600;letter-spacing:-.02em}.learn-exact .destination-copy>span{margin-top:7px;color:var(--ink-soft);font-size:11px;line-height:1.6}.learn-exact .card-action{position:relative;z-index:1;display:flex;align-items:center;gap:7px;margin-top:auto;padding-top:18px;color:var(--violet-deep);font-size:10px;font-weight:700}.learn-exact .card-action .icon{transition:transform .18s ease}.learn-exact .secondary-destinations{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.learn-exact .secondary-destinations a{display:grid;min-height:82px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 18px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface) 82%,transparent);cursor:pointer;text-align:left;transition:.18s ease}.learn-exact .secondary-destinations a:hover{border-color:var(--line-strong);background:var(--surface-raised);transform:translateY(-2px)}.learn-exact .secondary-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:var(--violet-soft);color:var(--violet-deep)}.learn-exact .secondary-destinations strong,.learn-exact .secondary-destinations small{display:block}.learn-exact .secondary-destinations strong{margin-bottom:4px;font-family:var(--font-display);font-size:18px;font-weight:600}.learn-exact .secondary-destinations small{color:var(--ink-faint);font-size:10px}.learn-exact .secondary-destinations>a>.icon{color:var(--ink-faint)}.learn-exact .path-card{position:relative;display:grid;min-height:280px;grid-template-columns:36% 64%;align-items:center;gap:40px;padding:40px 46px;overflow:hidden;border:1px solid var(--line-strong);border-radius:24px;background:radial-gradient(circle at 88% 18%,color-mix(in srgb,var(--gold-soft) 75%,transparent),transparent 26%),linear-gradient(130deg,color-mix(in srgb,var(--periwinkle) 72%,var(--surface-solid)),var(--surface-solid));box-shadow:var(--shadow)}.learn-exact .path-card:after{position:absolute;top:-80px;right:-80px;width:240px;height:240px;border:1px solid color-mix(in srgb,var(--violet) 12%,transparent);border-radius:50%;content:""}.learn-exact .path-copy{position:relative;z-index:2}.learn-exact .path-copy h2{margin-top:10px;font-size:32px}.learn-exact .path-copy>p{margin:12px 0 20px;color:var(--ink-soft);font-size:11px;line-height:1.7}.learn-exact .secondary-button{border:1px solid var(--line-strong);background:color-mix(in srgb,var(--surface-raised) 70%,transparent);color:var(--violet-deep)}.learn-exact .milestone-map{position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding-top:16px}.learn-exact .map-line{position:absolute;top:31px;right:9%;left:9%;height:1px;background:var(--line-strong)}.learn-exact .map-line:before{display:block;width:50%;height:2px;background:linear-gradient(90deg,var(--violet),var(--gold));content:""}.learn-exact .milestone{position:relative;display:flex;align-items:center;flex-direction:column;text-align:center}.learn-exact .milestone-marker{display:grid;width:31px;height:31px;place-items:center;border:1px solid var(--line-strong);border-radius:50%;background:var(--surface-solid);color:var(--ink-faint);font-size:9px;font-weight:700}.learn-exact .milestone.done .milestone-marker{border-color:var(--violet);background:var(--violet);color:var(--page)}.learn-exact .milestone.current .milestone-marker{border:2px solid var(--gold);box-shadow:0 0 0 5px color-mix(in srgb,var(--gold) 12%,transparent),0 0 15px color-mix(in srgb,var(--gold) 20%,transparent);color:var(--gold)}.learn-exact .milestone>span{margin-top:13px;font-size:9px;font-weight:700}.learn-exact .milestone>small{margin-top:4px;color:var(--ink-faint);font-size:7px}.learn-exact .milestone.current>small{color:var(--gold);font-weight:700}.learn-exact .resources-section{max-width:940px;margin-right:auto;margin-left:auto}.learn-exact .text-button{display:flex;min-height:36px;align-items:center;gap:7px;border:0;background:transparent;color:var(--violet-deep);cursor:pointer;font-size:10px;font-weight:700}.learn-exact .resource-list{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--surface) 78%,transparent);box-shadow:0 8px 28px #422e460a}.learn-exact .resource-row{display:grid;width:100%;min-height:76px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:15px;padding:11px 18px;border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left;transition:.16s ease}.learn-exact .resource-row:last-child{border-bottom:0}.learn-exact .resource-row:hover{background:var(--surface-raised)}.learn-exact .file-badge{display:grid;width:48px;height:48px;place-items:center;border-radius:12px;background:var(--violet-soft);color:var(--violet-deep)}.learn-exact .file-badge .icon{grid-area:1 / 1;transform:translateY(-5px)}.learn-exact .file-badge small{grid-area:1 / 1;align-self:end;margin-bottom:5px;font-size:6px;font-weight:800;letter-spacing:.08em}.learn-exact .file-badge.sage{background:var(--sage);color:var(--sage-ink)}.learn-exact .file-badge.blue{background:var(--periwinkle);color:var(--periwinkle-ink)}.learn-exact .resource-copy strong,.learn-exact .resource-copy small{display:block}.learn-exact .resource-copy strong{font-size:12px;font-weight:600}.learn-exact .resource-copy small{margin-top:5px;color:var(--ink-faint);font-size:9px}.learn-exact .saved-mark{display:grid;width:31px;height:31px;place-items:center;border-radius:9px;color:var(--gold)}.learn-exact .resource-row>.icon{color:var(--ink-faint)}.learn-exact .page-footer{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:60px;color:var(--ink-faint)}.learn-exact .page-footer p{margin:0;font-family:var(--font-display);font-size:16px;font-style:italic}.learn-exact .page-footer span{color:var(--gold);font-size:8px}.learn-exact .nav-scrim{display:none}@media(max-width:1180px){.learn-exact .sidebar{width:210px;padding-right:16px;padding-left:16px}.learn-exact .main-content{margin-left:210px}.learn-exact .page-inner{width:min(100% - 46px,1000px)}.learn-exact .destination-grid{grid-template-columns:repeat(2,1fr)}.learn-exact .destination-card{min-height:225px}.learn-exact .path-card{grid-template-columns:1fr;gap:28px}.learn-exact .continue-content{padding:34px}}@media(max-width:860px){.learn-exact .sidebar{width:78px;align-items:center;padding:24px 11px}.learn-exact .brand{padding:0 0 32px}.learn-exact .brand>div:last-child,.learn-exact .nav-label,.learn-exact .nav-item span,.learn-exact .active-glint,.learn-exact .sidebar-note,.learn-exact .profile>div:nth-child(2),.learn-exact .profile>button{display:none}.learn-exact .nav-item{width:48px;justify-content:center;padding:0}.learn-exact .profile{display:block;margin-top:auto;padding:18px 0 0}.learn-exact .main-content{margin-left:78px}.learn-exact .page-inner{width:min(100% - 40px,720px);padding-top:35px}.learn-exact .page-header{min-height:190px;padding-right:26%}.learn-exact .celestial-compass{right:1%;width:125px;height:125px}.learn-exact .page-header h1{font-size:50px}.learn-exact .continue-card{grid-template-columns:36% 64%}.learn-exact .book-cover{width:116px;height:158px}.learn-exact .continue-content h3{font-size:32px}.learn-exact .continue-footer{align-items:flex-start;flex-direction:column;gap:12px}}@media(max-width:640px){.learn-exact .sidebar{width:264px;align-items:stretch;padding:28px 22px;box-shadow:20px 0 50px #140d1c38;transform:translate(-110%);transition:transform .22s ease}.learn-exact .sidebar.is-open{transform:translate(0)}.learn-exact .sidebar .brand{padding:0 8px 28px}.learn-exact .sidebar .brand>div:last-child,.learn-exact .sidebar .nav-label,.learn-exact .sidebar .nav-item span,.learn-exact .sidebar .active-glint,.learn-exact .sidebar .sidebar-note,.learn-exact .sidebar .profile>div:nth-child(2),.learn-exact .sidebar .profile>button{display:block}.learn-exact .sidebar .nav-item{width:100%;justify-content:flex-start;padding:0 13px}.learn-exact .sidebar .sidebar-note{margin-top:auto}.learn-exact .sidebar .profile{display:grid;margin-top:20px;padding:16px 7px 0}.learn-exact .nav-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:block;visibility:hidden;border:0;background:#120c1961;opacity:0;transition:.2s ease}.learn-exact .nav-scrim.is-open{visibility:visible;opacity:1}.learn-exact .main-content{margin-left:0}.learn-exact .page-inner{width:100%;padding:0 20px 34px}.learn-exact .mobile-bar{display:flex;height:68px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.learn-exact .icon-button{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--surface) 85%,transparent);cursor:pointer}.learn-exact .mobile-brand{font-family:var(--font-display);font-size:21px;font-weight:600}.learn-exact .page-header{min-height:auto;padding:45px 0 38px}.learn-exact .theme-toggle{display:none}.learn-exact .celestial-compass{top:23px;right:-50px;bottom:auto;width:125px;height:125px;opacity:.32}.learn-exact .header-copy{max-width:95%}.learn-exact .page-header h1{max-width:330px;margin-top:13px;font-size:45px;line-height:.98}.learn-exact .page-header p{max-width:330px;font-size:12px;line-height:1.65}.learn-exact .continue-section,.learn-exact .destinations-section,.learn-exact .path-card,.learn-exact .resources-section{margin-top:42px}.learn-exact .section-heading,.learn-exact .section-heading.compact{align-items:flex-start;flex-direction:column;gap:7px;margin-bottom:17px}.learn-exact .section-heading h2,.learn-exact .path-copy h2{font-size:29px}.learn-exact .section-heading>p{max-width:290px;text-align:left}.learn-exact .last-studied{display:none}.learn-exact .continue-card{min-height:0;grid-template-columns:1fr;border-radius:21px}.learn-exact .book-visual{min-height:178px;border-right:0;border-bottom:1px solid var(--line)}.learn-exact .book-cover{width:92px;height:122px}.learn-exact .book-rune{font-size:27px}.learn-exact .book-cover i{margin:7px 0}.learn-exact .continue-content{padding:27px 24px 25px}.learn-exact .continue-content h3{margin-top:11px;font-size:32px}.learn-exact .next-lesson{margin-bottom:22px}.learn-exact .continue-footer{align-items:stretch;margin-top:22px}.learn-exact .primary-button{width:100%}.learn-exact .time-meta{justify-content:center}.learn-exact .destination-grid{grid-template-columns:1fr}.learn-exact .destination-card{min-height:220px;padding:22px}.learn-exact .destination-copy>span{max-width:285px}.learn-exact .secondary-destinations{grid-template-columns:1fr}.learn-exact .secondary-destinations a{min-height:78px;padding:12px 14px}.learn-exact .path-card{display:block;padding:30px 24px;border-radius:21px}.learn-exact .path-copy>p{font-size:11px}.learn-exact .secondary-button{width:100%}.learn-exact .milestone-map{display:flex;align-items:stretch;flex-direction:column;gap:0;margin-top:32px;padding:0}.learn-exact .map-line{top:16px;bottom:16px;left:15px;width:1px;height:auto}.learn-exact .map-line:before{width:2px;height:50%}.learn-exact .milestone{min-height:60px;align-items:center;display:grid;grid-template-columns:31px 1fr;column-gap:13px;text-align:left}.learn-exact .milestone-marker{position:relative;z-index:2;grid-row:1 / 3}.learn-exact .milestone>span,.learn-exact .milestone>small{margin:0}.learn-exact .milestone>span{align-self:end}.learn-exact .milestone>small{align-self:start;margin-top:3px}.learn-exact .resources-heading{display:grid!important;grid-template-columns:1fr auto;align-items:end!important}.learn-exact .text-button{align-self:end}.learn-exact .text-button .icon{display:none}.learn-exact .resource-row{min-height:79px;grid-template-columns:auto 1fr auto;gap:11px;padding:11px 13px}.learn-exact .resource-row>.icon{display:none}.learn-exact .file-badge{width:44px;height:44px}.learn-exact .saved-mark{width:28px}.learn-exact .resource-copy strong{font-size:11px}.learn-exact .page-footer{gap:10px;margin-top:48px;text-align:center}.learn-exact .page-footer p{font-size:14px}}@media(prefers-reduced-motion:reduce){.learn-exact *,.learn-exact *:before,.learn-exact *:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}:root[data-theme] body .app.is-learn-home{font-family:var(--font-body);background:var(--page)}:root[data-theme] body .app.is-learn-home .main{background:var(--page)}:root[data-theme] body .app.is-learn-home .topbar{display:none}:root[data-theme] body .app.is-learn-home .page{max-width:none;margin:0;padding:0;width:100%}.learn-exact .main-content{margin-left:0}.learn-exact :is(.primary-button,.secondary-button,.text-button){display:inline-flex;text-decoration:none;align-items:center;justify-content:center}.learn-exact .section-description{font-size:12px;color:var(--ink-faint)}.learn-exact .resource-copy{min-width:0}.learn-exact .resource-copy strong{overflow-wrap:anywhere}.learn-exact .destination-card[aria-disabled=true]{cursor:default}.learn-exact .destination-card[aria-disabled=true] .card-action{color:var(--ink-soft)}:root[data-theme] body .app.is-learn-home{--ink-faint:#716576;--gold:#916a2d}:root[data-theme=dark] body .app.is-learn-home{--ink-faint:#b6aabd;--gold:#d3b16d}@media(max-width:960px){.learn-exact .mobile-bar{display:flex}.learn-exact .page-inner{width:calc(100% - 40px);padding-top:20px}.learn-exact .theme-toggle{display:none}}@media(max-width:540px){.learn-exact .page-inner{width:calc(100% - 32px)}.learn-exact .milestone-map{overflow-x:auto;justify-content:flex-start}.learn-exact .milestone{min-width:72px}.learn-exact .secondary-destinations a{min-width:0}.learn-exact .continue-content h3{overflow-wrap:anywhere}}:root[data-theme] body .app.student-shell.is-learn .main{background:radial-gradient(ellipse at 95% 0%,color-mix(in srgb,var(--violet-soft) 35%,transparent),transparent 50%),var(--page);font-family:var(--font-body);--text:var(--ink);--text-2:var(--ink-soft);--text-3:var(--ink-faint);--font-ui:var(--font-body);--paper:var(--page);--bg:var(--page);--border:var(--line);--cc-card:var(--surface-solid);--accent:var(--violet);--accent-text:var(--violet-deep);--accent-strong:var(--violet-deep)}:root[data-theme] body .app.student-shell.is-learn .topbar{background:var(--page);border-color:var(--line)}:root[data-theme] body .app.student-shell.is-learn .main :is(h1,h2,h3,h4,.display){font-family:var(--font-display);font-weight:600}:root[data-theme] body .app.student-shell.is-learn .main{--cc-ink:var(--ink);--cc-ink-2:var(--ink-soft);--cc-ink-3:var(--ink-soft);--ink-500:var(--ink-soft);--ink-400:var(--ink-faint)}.learn-exact .courses-single-entry{display:flex;min-height:250px;width:100%}.workspace-fullscreen-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:grid;place-items:center;padding:24px;background:var(--bg, #f9fafc);color:var(--text, #18243b)}.workspace-fullscreen-card{width:min(100%,520px);padding:clamp(24px,5vw,40px);border:1px solid var(--border, #dce3ef);border-radius:16px;background:var(--surface, #fff);box-shadow:0 24px 80px #141f3324}.workspace-fullscreen-card h1{margin:8px 0 12px;font-size:clamp(25px,5vw,34px)}.workspace-fullscreen-card p{color:var(--text-2, #53627a);line-height:1.65}.workspace-fullscreen-card .btn{margin-top:12px}.workspace-fullscreen-error{color:#b42318!important}@media(max-width:390px){.workspace-fullscreen-gate{padding:16px}}.page-return-top{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:30;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:10px 16px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:0 8px 28px #0002;font:inherit;font-weight:650;cursor:pointer}.page-return-top span{color:var(--accent-text);font-size:22px}.page-return-top:hover{border-color:var(--accent)}.page-return-top:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media(max-width:600px){.page-return-top{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}}:root[data-theme] body .app.student-shell .kodex-poster{box-sizing:border-box;display:flex;flex:none;flex-direction:column;justify-content:space-between;gap:8px;min-height:270px;height:270px;margin:0 0 20px;padding:15px 13px 12px;overflow:hidden;border:1px solid #b7c9ff70;border-radius:15px;background:radial-gradient(ellipse at 100% 0%,#74539d80,transparent 70%),#211a35;color:#fffaf2;text-decoration:none;box-shadow:0 10px 26px #1a153a26}.kx-poster-brand{font:900 25px/1 var(--font-body);letter-spacing:-.06em}.kx-poster-brand small{display:block;font:700 6px/2 var(--font-body);letter-spacing:.16em;color:#d9ff80}.kodex-poster svg{height:65px;width:100%}.kodex-poster>strong{font:700 22px/1.08 var(--font-display);color:#fffaf2}.kx-poster-note{font:400 10px/1.5 var(--font-body);color:#d6cde5}.kx-poster-cta{display:flex;justify-content:space-between;padding:10px;border-radius:8px;background:#d9ff80;color:#242231;font:750 11px/1 var(--font-body)}.kodex-poster:focus-visible{outline:3px solid #d9ff80;outline-offset:3px}:root[data-theme] body .app.student-shell.is-collapsed .kodex-poster{display:none}.kx-introduction{box-sizing:border-box;position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;padding:0;width:min(1040px,calc(100% - 40px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #b7a6ed66;border-radius:24px;background:#181224;color:#fffaf2;box-shadow:0 40px 120px #0009;font-family:Figtree,system-ui,sans-serif;animation:kx-intro-arrive .5s ease-out}.kx-introduction::backdrop{background:#100d23b8;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.kx-introduction .kx-intro-close{position:absolute;z-index:3;right:18px;top:18px;display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff55;border-radius:12px;background:#231b38;color:#fff;font:300 30px/1 system-ui;cursor:pointer}.kx-intro-stage{display:grid;grid-template-columns:1.1fr 1fr;position:relative;isolation:isolate;overflow:hidden;padding:64px 48px 0;min-height:430px;background:radial-gradient(ellipse at 90% 25%,#6d45ac70,transparent 60%),radial-gradient(ellipse at 0% 100%,#3a457b50,transparent 60%),#181224}.kx-intro-orbit{position:absolute;z-index:-1;pointer-events:none;border:1px solid #c1abf521;border-radius:50%;width:600px;height:600px;right:-180px;top:-200px}.kx-intro-orbit.orbit-b{width:750px;height:750px;right:-230px;top:-260px}.kx-intro-eyebrow{display:block;color:#d9ff80;font-size:10px;font-weight:800;letter-spacing:.16em;line-height:1.7;padding-right:24px}.kx-introduction h2{color:#fffaf2;font:500 clamp(25px,3vw,36px)/1.15 "Figtree",system-ui,sans-serif;margin:20px 0}.kx-introduction h2 strong{display:block;color:#e2c9ff;font:900 clamp(64px,8vw,104px)/1.1 "Plus Jakarta Sans",system-ui,sans-serif;letter-spacing:-.07em}.kx-intro-copy>p{font:600 clamp(24px,3vw,34px)/1.25 "Figtree",system-ui,sans-serif;color:#fffaf2;margin:12px 0 18px}.kx-intro-copy em{font-style:normal;color:#d9ff80}.kx-intro-summary{display:block;color:#d4cce5;font-size:15px;line-height:1.6;max-width:290px}.kx-intro-arena{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-top:30px;min-width:0}.kx-intro-live{position:absolute;top:0;right:0;display:flex;align-items:center;gap:7px;font-size:9px;font-weight:800;letter-spacing:.12em;color:#e5dcf5}.kx-intro-live i{height:7px;width:7px;border-radius:50%;background:#d9ff80;box-shadow:0 0 12px #d9ff80}.kx-intro-question{width:min(100%,280px);padding:20px;border:1px solid #c2acf255;border-radius:18px;background:linear-gradient(145deg,#51406a,#302540);transform:rotate(4deg);box-shadow:0 24px 55px #0004}.kx-intro-question>span{font-size:8px;letter-spacing:.14em;color:#e1d3f6}.kx-intro-question>strong{display:block;font-size:23px;line-height:1.2;color:#fffaf2;margin:10px 0 18px}.kx-intro-answers{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.kx-intro-answers i{display:grid;place-items:center;height:44px;border-radius:9px;background:#ffb49e;color:#241a35;font-size:24px;font-style:normal}.kx-intro-answers i:nth-child(2){background:#b7c9ff}.kx-intro-answers i:nth-child(3){background:#d9ff80}.kx-intro-answers i:nth-child(4){background:#e8b8e9}.kx-intro-podium{display:flex;align-items:flex-end;justify-content:center;gap:8px;margin-top:12px;width:100%}.kx-intro-place{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;width:30%}.kx-intro-place svg{position:relative;z-index:1;margin-bottom:-5px}.kx-intro-place>span{display:grid;place-items:center;width:100%;height:52px;border:1px solid #b7c9ff66;border-bottom:0;border-radius:12px 12px 0 0;background:linear-gradient(#61557c,#342b48);color:#eee2ff;font:900 30px/1 system-ui}.kx-intro-place.place-1>span{height:84px;background:linear-gradient(#e5c57c,#aa7b3e);border-color:#f4d393;color:#21172d}.kx-intro-place.place-3>span{height:34px}.kx-intro-place>b{position:absolute;top:-22px;color:#ffe19c;font-size:27px;transform:rotate(-8deg)}.kx-intro-spark{position:absolute;color:#dfc18d;font-size:35px}.spark-a{top:26%;left:-12px}.spark-b{top:52%;right:-15px}.kx-intro-bottom{position:relative;padding:28px 48px 30px;background:#211a30;border-top:1px solid #af9fcb33}.kx-intro-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.kx-intro-features span{display:block;font-size:8px;letter-spacing:.12em;font-weight:800;color:#c5b5e2;margin-bottom:8px}.kx-intro-features strong{display:block;font-size:13px;line-height:1.5;color:#fffaf2}.kx-intro-action{display:flex;align-items:center;gap:16px;margin-top:25px;flex-wrap:wrap}.kx-intro-action p{flex:1;margin:0;color:#d4cce5;font-size:12px;min-width:180px}.kx-intro-action a{display:flex;align-items:center;justify-content:space-between;gap:26px;background:#d9ff80;color:#21172d;border-radius:10px;text-decoration:none;padding:15px 20px;font-size:14px;font-weight:850}.kx-intro-action button{background:transparent;color:#e0d6f0;border:0;font:inherit;font-size:12px;padding:14px;cursor:pointer}.kx-introduction :is(a,button):focus-visible{outline:3px solid #e3c6ff;outline-offset:4px}@keyframes kx-intro-arrive{0%{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}@media(max-width:650px){.kx-introduction{width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:18px}.kx-intro-stage{grid-template-columns:1fr;padding:64px 25px 0;gap:22px}.kx-introduction h2{margin:12px 0}.kx-introduction h2 strong{font-size:64px}.kx-intro-copy>p{font-size:26px}.kx-intro-summary{font-size:13px;max-width:none}.kx-intro-arena{padding-top:32px}.kx-intro-question{width:210px;padding:16px}.kx-intro-question>strong{font-size:20px}.kx-intro-podium{max-width:300px}.kx-intro-bottom{padding:22px 24px}.kx-intro-features{grid-template-columns:1fr;gap:15px}.kx-intro-features span{margin-bottom:3px}.kx-intro-action{gap:12px}.kx-intro-action p{flex-basis:100%}.kx-intro-action a{flex:1}.kx-intro-live{right:10px}.spark-a{left:0}.spark-b{right:0}}@media(prefers-reduced-motion:reduce){.kx-introduction{animation:none}}.auth.auth--v2{display:grid;grid-template-columns:minmax(380px,46%) 1fr;min-height:100vh;background:var(--bg, #f6f8ff)}.auth--v2 .auth-aside{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:32px;padding:44px clamp(28px,4.5vw,68px);color:#eef1ff;border:0;background:var(--auth-panel-gradient)}.auth--v2 .auth-aside:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 85%);mask-image:linear-gradient(180deg,#000 0%,transparent 85%);pointer-events:none}.auth--v2 .auth-aside>*{position:relative}.auth--v2 .aside-brand{display:inline-flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:800;font-size:1.25rem;letter-spacing:-.02em}.auth--v2 .aside-brand small{display:block;font-weight:500;font-size:.72rem;letter-spacing:.02em;color:#eef1ffbf}.auth--v2 .aside-mark{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#ffffff29;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.auth--v2 .aside-mark svg{width:24px;height:24px;color:#fff}.auth--v2 .auth-aside h2{font-size:clamp(2.1rem,3.4vw,3rem);line-height:1.08;letter-spacing:-.03em;margin:46px 0 16px;color:#fff;max-width:14ch}.auth--v2 .auth-aside h2 span{background:linear-gradient(90deg,#a5b4ff,#5eead4);-webkit-background-clip:text;background-clip:text;color:transparent}.auth--v2 .auth-aside>.aside-top>p{color:#eef1ffdb;font-size:1.05rem;line-height:1.6;max-width:44ch;margin:0}.auth--v2 .aside-note{color:#dce5ff;font-size:.88rem;line-height:1.6;max-width:44ch;margin:0;padding-top:24px;border-top:1px solid rgba(238,241,255,.24)}.auth--v2 .feature-list{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:18px}.auth--v2 .feature-list li{display:flex;gap:14px;align-items:flex-start}.auth--v2 .feature-list .f-ic{flex:none;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#ffffff24;border:1px solid rgba(255,255,255,.24);color:#fff}.auth--v2 .feature-list .f-ic svg{width:21px;height:21px}.auth--v2 .feature-list strong{display:block;color:#fff;font-size:1.02rem}.auth--v2 .feature-list span:not(.f-ic){display:block;color:#eef1ffcc;font-size:.93rem;line-height:1.45}.auth--v2 .aside-card{max-width:380px;border-radius:16px;overflow:hidden;background:#090e2cb8;border:1px solid rgba(255,255,255,.16);box-shadow:0 24px 50px -24px #0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.auth--v2 .aside-card-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#00000040;font-size:.78rem;color:#aab6f5}.auth--v2 .aside-card-bar i{width:10px;height:10px;border-radius:50%;background:#ff6b6b}.auth--v2 .aside-card-bar i:nth-child(2){background:#ffd166}.auth--v2 .aside-card-bar i:nth-child(3){background:#4ade80}.auth--v2 .aside-card-bar span{margin-left:8px}.auth--v2 .aside-card pre{margin:0;padding:14px 16px;font:13px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#dfe6ff;white-space:pre;overflow:hidden}.auth--v2 .aside-card .k{color:#c4a8ff}.auth--v2 .aside-card .f{color:#7dd3fc}.auth--v2 .aside-card .ok{color:#6ee7a0}.auth--v2 .auth-main-wrap{position:relative;background:radial-gradient(700px 420px at 100% 0%,rgba(79,70,229,.08),transparent 60%),var(--bg, #f6f8ff)}.auth--v2 .auth-main{padding:72px 24px 56px}.auth--v2 .auth-card{width:min(460px,100%);background:var(--surface, #fff);border:1px solid var(--border, #e3e8f7);border-radius:24px;padding:38px 36px 30px;box-shadow:0 30px 60px -34px #28328c73,0 2px 6px #28328c0f}.auth--v2 .auth-card h1{font-size:2rem;letter-spacing:-.03em;margin:0}.auth--v2 .auth-card>p.muted{margin-top:8px;font-size:1rem}.auth--v2 .field>label,.auth--v2 .auth-card label{font-weight:700;font-size:.92rem}.auth--v2 .input{height:50px;border-radius:13px;padding-inline:16px;font-size:1rem;border:1.5px solid var(--border-strong, #cfd7ef);background:var(--surface, #fff);transition:border-color .15s,box-shadow .15s}.auth--v2 .input:hover{border-color:#aab4de}.auth--v2 .input:focus,.auth--v2 .input:focus-visible{outline:0;border-color:#4f46e5;box-shadow:0 0 0 4px #4f46e52e}.auth--v2 .input-group{position:relative}.auth--v2 .input-group .input{padding-right:52px}.auth--v2 .input-group .btn-icon{position:absolute;right:6px;top:50%;transform:translateY(-50%)}.auth--v2 .btn-block,.auth--v2 form .btn-primary{height:52px;font-size:1.05rem;font-weight:700;border-radius:14px;border:0;color:#fff;background:linear-gradient(135deg,#4f46e5,#2f62d6 60%,#0ea5c6);box-shadow:0 14px 26px -14px #4f46e5cc;transition:transform .15s,box-shadow .15s,filter .15s}.auth--v2 .btn-block:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 30px -14px #4f46e5d9;filter:brightness(1.05)}.auth--v2 .btn-block:disabled{opacity:.5;box-shadow:none}.auth--v2 .subtle-link,.auth--v2 .auth-card a:not(.btn){color:#4338ca;font-weight:600}.auth--v2 .hint-text{background:#f1f4ff;border:1px solid #dfe5fb;border-radius:12px;padding:12px 14px;color:#3a4678;font-size:.9rem;line-height:1.5}.auth--v2 .auth-alt{margin-top:18px;padding-top:18px;border-top:1px solid var(--border, #e3e8f7);display:flex;align-items:center;justify-content:space-between;gap:12px}.auth--v2 .auth-alt>span{color:var(--text-2, #4a5578);font-weight:600}.auth--v2 .auth-alt .btn{border-radius:12px;font-weight:700}:root[data-theme=dark] .auth--v2 .auth-main-wrap{background:radial-gradient(700px 420px at 100% 0%,rgba(124,131,255,.14),transparent 60%),var(--bg, #0b1020)}:root[data-theme=dark] .auth--v2 .auth-card{background:#131a33;border-color:#243056;box-shadow:0 30px 60px -34px #000c}:root[data-theme=dark] .auth--v2 .input{background:#0e1429;border-color:#2c3a66}:root[data-theme=dark] .auth--v2 .input:focus{border-color:#8b93ff;box-shadow:0 0 0 4px #8b93ff40}:root[data-theme=dark] .auth--v2 .subtle-link,:root[data-theme=dark] .auth--v2 .auth-card a:not(.btn){color:#a5acff}:root[data-theme=dark] .auth--v2 .hint-text{background:#0e1429;border-color:#243056;color:#b6bfe6}@media(max-width:960px){.auth.auth--v2{grid-template-columns:1fr}.auth--v2 .auth-aside{display:none}.auth--v2 .auth-main{padding-top:64px}}@media(max-width:480px){.auth--v2 .auth-card{padding:28px 20px 24px;border-radius:20px}}body{margin:0;background:var(--bg);color:var(--text);font:400 14px/1.55 var(--font);-webkit-font-smoothing:antialiased;transition:background .2s var(--ease),color .2s var(--ease)}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.01em;line-height:1.25}h1{font-size:24px}h2{font-size:17px}h3{font-size:15px}p{margin:0}a{color:var(--accent-strong);text-decoration:none}a:hover{text-decoration:underline}img,svg{max-width:100%}code,pre,.mono{font-family:var(--mono)}code{font-size:.92em;background:var(--surface-2);padding:1px 6px;border-radius:5px}button,input,select,textarea{font:inherit;color:inherit}::selection{background:var(--accent-soft-2)}:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:8px;top:-48px;background:var(--accent);color:var(--on-accent);padding:8px 14px;border-radius:8px;z-index:200;font-weight:600}.skip-link:focus{top:8px;text-decoration:none}[hidden]{display:none!important}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.nowrap{white-space:nowrap}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.num{font-variant-numeric:tabular-nums}.i{width:1.15em;height:1.15em;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.2em}.i-fill{fill:currentColor;stroke:none}.app{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);flex:none;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:40;transition:width .2s var(--ease),transform .25s var(--ease)}.brand{display:flex;align-items:center;gap:10px;padding:18px 16px;color:var(--text);font-weight:650;font-size:16px}.brand:hover{text-decoration:none}.brand-mark{width:34px;height:34px;border-radius:9px;background:var(--accent-soft);border:1px solid var(--border-strong);display:grid;place-items:center;color:var(--accent-strong);flex:none}.brand-text small{display:block;font-size:10.5px;font-weight:500;color:var(--text-3);letter-spacing:.02em;margin-top:-1px}.nav{flex:1;overflow-y:auto;padding:6px 10px;display:flex;flex-direction:column;gap:2px}.nav-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.09em;color:var(--text-3);padding:14px 10px 6px}.nav a{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:8px;color:var(--text-2);font-weight:500;transition:background .15s,color .15s}.nav a:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent-text)}.nav a .i{font-size:18px}.sidebar-foot{padding:10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:2px}.sidebar-foot button{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:8px;border:0;background:none;color:var(--text-2);cursor:pointer;width:100%;text-align:left;font-weight:500}.sidebar-foot button:hover{background:var(--surface-2);color:var(--text)}.app.is-collapsed .sidebar{width:72px}.app.is-collapsed .brand-text,.app.is-collapsed .nav a span,.app.is-collapsed .nav-label,.app.is-collapsed .sidebar-foot span{display:none}.app.is-collapsed .nav a,.app.is-collapsed .sidebar-foot button{justify-content:center}.topbar{height:var(--topbar-h);position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;padding:0 28px;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.topbar-title{min-width:0;flex:1}.topbar-title .kicker{display:block}.topbar-title strong{display:block;font-size:17px;font-weight:600;letter-spacing:-.01em}.kicker{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-text);font-weight:600}.page{width:100%;max-width:1360px;margin:0 auto;padding:26px 28px 64px}.page--ws{max-width:none;padding:14px 20px 20px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.page-head p{color:var(--text-2);margin-top:4px}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:35;opacity:0;pointer-events:none;transition:opacity .2s}.avatar{width:34px;height:34px;border-radius:50%;background:var(--accent-soft-2);color:var(--accent-text);display:grid;place-items:center;font-weight:650;font-size:13px;border:0;cursor:pointer}.menu{position:absolute;right:0;top:calc(100% + 8px);min-width:230px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r);box-shadow:var(--shadow);padding:6px;z-index:60;animation:pop .14s var(--ease)}.menu-head{padding:10px 12px 8px;border-bottom:1px solid var(--border);margin-bottom:4px}.menu a,.menu button{display:flex;width:100%;align-items:center;gap:10px;padding:8px 12px;border-radius:7px;border:0;background:none;color:var(--text);cursor:pointer;text-align:left}.menu a:hover,.menu button:hover{background:var(--surface-2);text-decoration:none}.menu form{margin:0}.identity{display:flex;align-items:center;gap:10px;padding:3px 10px 3px 3px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer;max-width:260px;text-align:left}.identity:hover{background:var(--surface-2)}.identity-text small{font-size:11.5px;color:var(--text-3);font-family:var(--mono)}.avatar-img{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:none;background:var(--accent-soft-2)}@media(max-width:600px){.identity{padding:0;border:0}.identity-text{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border-radius:9px;border:1px solid transparent;font-weight:600;font-size:13.5px;cursor:pointer;background:transparent;color:var(--text);text-decoration:none;white-space:nowrap;transition:background .15s,border-color .15s,transform .1s,opacity .15s}.btn:hover{text-decoration:none}.btn:active{transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover:not(:disabled){background:var(--accent-strong)}.btn-secondary{background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent)}.btn-secondary:hover:not(:disabled){background:var(--accent-soft-2)}.btn-ghost{border-color:var(--border-strong);color:var(--text)}.btn-ghost:hover:not(:disabled){background:var(--surface-2)}.btn-danger{background:var(--danger-soft);color:var(--danger-text);border-color:var(--danger)}.btn-sm{padding:6px 12px;font-size:12.5px;border-radius:8px}.btn-icon{width:36px;height:36px;padding:0;border-radius:9px;border:1px solid var(--border-strong);background:transparent;color:var(--text-2)}.btn-icon:hover{background:var(--surface-2);color:var(--text)}.btn .spinner{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}.link-btn{background:none;border:0;padding:0;color:var(--accent-strong);cursor:pointer;font-weight:500}.link-btn:hover{text-decoration:underline}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.card-head p{color:var(--text-2);font-size:12.5px;margin-top:2px}a.card{display:block;color:inherit;transition:border-color .15s,transform .15s,box-shadow .15s}a.card:hover{text-decoration:none;border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow)}.hero{background:linear-gradient(135deg,var(--surface) 0%,var(--surface-2) 100%);border:1px solid var(--border);border-radius:16px;padding:28px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;animation:rise .35s var(--ease)}.hero h1{font-size:26px;margin:4px 0 6px}.hero p{color:var(--text-2);max-width:520px}.hero-meta{display:flex;gap:22px;flex-wrap:wrap;margin:18px 0 20px}.hero-meta>div{min-width:0}.label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:3px}.btn-row{display:flex;gap:10px;flex-wrap:wrap}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-auto{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.grid-split{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;align-items:center;gap:10px}.row-wrap{flex-wrap:wrap}.spacer{flex:1}.mt{margin-top:22px}.mt-s{margin-top:10px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:16px 18px;min-width:0;animation:rise .35s var(--ease) backwards}.stat-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;color:var(--text-3)}.stat-top .label{margin:0}.stat-value{font-size:26px;font-weight:600;letter-spacing:-.02em;line-height:1.15}.stat-value small{font-size:14px;color:var(--text-3);font-weight:400}.stat-sub{font-size:12px;color:var(--text-2);margin-top:3px}.stat .i{font-size:17px}.ic-success{color:var(--success)}.ic-warning{color:var(--warning)}.ic-danger{color:var(--danger)}.ic-info{color:var(--info)}.bar{height:6px;border-radius:6px;background:var(--border-strong);overflow:hidden}.bar>span{display:block;height:100%;background:var(--accent);border-radius:6px;transition:width .5s var(--ease)}.bar.is-success>span{background:var(--success)}.ring{--p: 0;--size: 120px;width:var(--size);height:var(--size);border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(var(--accent) calc(var(--p) * 1%),var(--border-strong) 0)}.ring:before{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;background:var(--surface);border-radius:50%}.hero .ring:before{background:var(--surface-2)}.ring>div{position:relative;text-align:center;line-height:1.1}.ring strong{font-size:24px;font-weight:600;display:block}.ring small{font-size:10px;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.ring-sm strong{font-size:12px}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:6px;font-size:11.5px;font-weight:600;background:var(--surface-3);color:var(--text-2);white-space:nowrap}.badge-easy{background:var(--success-soft);color:var(--success-text)}.badge-moderate{background:var(--warning-soft);color:var(--warning-text)}.badge-advanced{background:var(--danger-soft);color:var(--danger-text)}.badge-accent{background:var(--accent-soft);color:var(--accent-text)}.badge-correct,.badge-solved,.badge-submitted{background:var(--success-soft);color:var(--success-text)}.badge-wrong,.badge-error,.badge-terminated{background:var(--danger-soft);color:var(--danger-text)}.badge-simulated,.badge-attempted,.badge-expired{background:var(--warning-soft);color:var(--warning-text)}.badge-active,.badge-hint,.badge-solution,.badge-similar,.badge-info{background:var(--info-soft);color:var(--info)}.badge-new{background:var(--surface-3);color:var(--text-2)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.tab{padding:10px 14px;border:0;border-bottom:2px solid transparent;background:none;color:var(--text-2);font-weight:500;cursor:pointer;white-space:nowrap;display:inline-flex;gap:7px;align-items:center;margin-bottom:-1px}.tab:hover{color:var(--text)}.tab[aria-selected=true]{color:var(--accent-text);border-bottom-color:var(--accent)}.tab-count{font-size:11px;padding:0 7px;border-radius:20px;background:var(--surface-3);color:var(--text-2)}.tabpanel{padding-top:16px}.chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.chip{padding:5px 12px;border-radius:20px;border:1px solid var(--border-strong);background:transparent;color:var(--text-2);font-size:12.5px;font-weight:500;cursor:pointer;text-decoration:none}.chip:hover{background:var(--surface-2);text-decoration:none;color:var(--text)}.chip[aria-pressed=true],.chip.is-on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}.filterbar{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;padding:14px 18px;margin-bottom:16px}.list{display:flex;flex-direction:column;gap:10px}.list-row{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);color:inherit;transition:border-color .15s,background .15s}a.list-row:hover{text-decoration:none;border-color:var(--accent);background:var(--surface-2)}.list-row .title{font-weight:500;display:block}.status-ic{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--surface-3);color:var(--text-3)}.status-ic.is-solved,.status-ic.is-correct{background:var(--success-soft);color:var(--success)}.status-ic.is-attempted,.status-ic.is-wrong,.status-ic.is-error,.status-ic.is-simulated{background:var(--warning-soft);color:var(--warning)}.table-wrap{position:relative;overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:600;padding:10px 14px;border-bottom:1px solid var(--border-strong);white-space:nowrap}.table td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr:hover{background:var(--surface-2)}.table tbody th{text-align:left;font-size:13px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--text);padding:12px 14px;border-bottom:1px solid var(--border)}.table .r{text-align:right}.timeline li{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.timeline time{color:var(--text-3);font-size:12px;width:44px;flex:none}.field label{display:block;font-weight:600;font-size:13px;margin-bottom:6px}.input,.select{width:100%;padding:10px 12px;border-radius:9px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft-2)}.input-group{position:relative}.input-group .btn-icon{position:absolute;right:4px;top:4px;width:32px;height:32px;border:0}.hint-text{font-size:12px;color:var(--text-3);margin-top:5px}.select-sm{padding:6px 10px;font-size:13px;width:auto}.alert{display:flex;gap:10px;padding:12px 14px;border-radius:var(--r);border:1px solid var(--border-strong);background:var(--surface-2)}.alert .i{margin-top:2px;font-size:17px}.alert-danger{background:var(--danger-soft);border-color:var(--danger);color:var(--danger-text)}.alert-success{background:var(--success-soft);border-color:var(--success);color:var(--success-text)}.alert-warning{background:var(--warning-soft);border-color:var(--warning);color:var(--warning-text)}.alert-info{background:var(--info-soft);border-color:var(--info);color:var(--text)}.toasts{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:10px;z-index:100;max-width:min(380px,calc(100vw - 36px))}.toast{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:var(--surface);border:1px solid var(--border-strong);border-left:3px solid var(--accent);border-radius:var(--r);box-shadow:var(--shadow);animation:pop .2s var(--ease)}.toast.success{border-left-color:var(--success)}.toast.error{border-left-color:var(--danger)}.toast.info{border-left-color:var(--info)}.toast .toast-x{margin-left:auto;background:none;border:0;color:var(--text-3);cursor:pointer;padding:0 2px}.empty{text-align:center;padding:36px 20px;color:var(--text-2)}.empty .i{font-size:30px;color:var(--text-3);margin-bottom:10px;display:block;margin-inline:auto}.empty strong{display:block;color:var(--text);font-size:15px;margin-bottom:4px}.skeleton{background:linear-gradient(90deg,var(--surface-2),var(--surface-3),var(--surface-2));background-size:200% 100%;animation:shimmer 1.2s infinite;border-radius:6px;height:14px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:grid;place-items:center;z-index:120;padding:16px;animation:fade .15s}.modal{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-lg);padding:24px;width:min(460px,100%);max-height:calc(100vh - 32px);overflow:auto;box-shadow:var(--shadow);animation:pop .18s var(--ease)}.modal h2{margin-bottom:8px}.modal .btn-row{margin-top:20px;justify-content:flex-end}[data-tip]:hover:after,[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--surface-3);color:var(--text);border:1px solid var(--border-strong);padding:5px 9px;border-radius:6px;font-size:11.5px;font-weight:500;width:max-content;max-width:240px;white-space:normal;z-index:70;pointer-events:none;text-align:left;line-height:1.4}.chart text{fill:var(--text-3);font:11px var(--font)}.chart-tip{position:absolute;pointer-events:none;background:var(--surface-3);border:1px solid var(--border-strong);border-radius:8px;padding:6px 10px;font-size:12px;z-index:10;white-space:nowrap;box-shadow:var(--shadow);transform:translate(-50%,-110%)}.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--text-2);margin-top:10px}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}.metric-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border);gap:12px}.insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.insight{background:var(--surface-2);border-radius:var(--r);padding:12px 14px}.ws{display:flex;flex-direction:column;height:calc(100vh - var(--topbar-h) - 34px);min-height:560px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden}.ws-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);flex-wrap:wrap}.ws-bar h1{font-size:16px;font-weight:600}.ws-bar .meta{display:flex;gap:8px;margin-top:4px;flex-wrap:wrap;align-items:center}.ws-stats{display:flex;gap:8px;flex-wrap:wrap}.pill-stat{display:inline-flex;gap:6px;align-items:center;padding:5px 10px;border-radius:8px;background:var(--surface-2);font-size:12px;color:var(--text-2)}.pill-stat strong{color:var(--text);font-weight:600}.ws-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(300px,var(--ws-left, 42%)) 6px minmax(0,1fr)}.ws-left{min-width:0;min-height:0;display:flex;flex-direction:column}.ws-left .tabs{padding:4px 12px 0;flex:none}.ws-left .tabpanel{flex:1;overflow-y:auto;padding:16px;min-height:0}.ws-split{background:var(--border);cursor:col-resize;transition:background .15s;border:0;padding:0}.editor-top{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid var(--border);background:var(--surface);font-size:12.5px}.editor-top .file{font-family:var(--mono);color:var(--text)}.editor{flex:1;min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr);overflow:hidden}.gutter{padding:14px 10px 14px 14px;text-align:right;color:var(--text-3);font:13px/1.6 var(--mono);-webkit-user-select:none;user-select:none;white-space:pre;background:var(--code-bg);overflow:hidden;border-right:1px solid var(--border)}.code-input{border:0;resize:none;background:transparent;color:var(--text);font:13px/1.6 var(--mono);padding:14px 16px 14px 12px;-moz-tab-size:4;tab-size:4;white-space:pre;overflow:auto;min-height:0;height:100%;width:100%;outline:none;display:block}.editor:focus-within{box-shadow:inset 0 0 0 1px var(--accent)}.editor-foot{display:flex;gap:14px;padding:6px 14px;font-size:11.5px;color:var(--text-3);border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap}.result-wrap{flex:none;height:38%;min-height:170px;display:flex;flex-direction:column;border-top:1px solid var(--border)}.result-wrap .tabs{padding:0 12px}.output{margin:0;font:13px/1.6 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r);padding:12px 14px}.output.is-error{color:var(--danger-text);border-color:var(--danger)}.run-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--r);font-weight:600;margin-bottom:10px}.run-banner.correct{background:var(--success-soft);color:var(--success-text)}.run-banner.wrong,.run-banner.error{background:var(--danger-soft);color:var(--danger-text)}.run-banner.simulated,.run-banner.unavailable{background:var(--warning-soft);color:var(--warning-text)}.badge-verified{background:var(--success-soft);color:var(--success-text)}.badge-ai{background:transparent;color:var(--accent-text);border:1px dashed var(--accent)}.compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.ai-panel{margin-top:12px;padding:12px 14px;border:1px dashed var(--accent);border-radius:var(--r);background:var(--surface-2)}.ai-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.ai-panel-head .i{margin-right:4px;vertical-align:-2px}.ai-h{margin:12px 0 4px;font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-text);font-weight:600}.ai-text{margin:0;line-height:1.55;overflow-wrap:anywhere}.ai-list{margin:0;padding-left:20px;line-height:1.55;overflow-wrap:anywhere}.ai-foot{margin:10px 0 0;font-size:12.5px;color:var(--text-2)}.ai-warning{display:flex;gap:8px;align-items:flex-start;margin:8px 0 0;padding:8px 10px;border-radius:var(--r);background:var(--warning-soft);color:var(--warning-text);font-size:12.5px}.ai-warning .i{flex:none;margin-top:2px}.success-box{margin-top:12px;padding:14px;border:1px solid var(--success);background:var(--success-soft);border-radius:var(--r);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.help-card{border:1px solid var(--border);border-radius:var(--r);padding:14px;margin-bottom:12px;background:var(--surface-2)}.help-card.is-locked{opacity:.85;border-style:dashed}.help-card header{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-weight:600}.help-card .state{margin-left:auto;font-size:11.5px;font-weight:600}.help-card .state.open{color:var(--success-text)}.help-card .state.locked{color:var(--text-3)}.attempt-dots{display:flex;gap:6px;margin:8px 0 14px}.attempt-dots i{width:10px;height:10px;border-radius:50%;background:var(--border-strong)}.attempt-dots i.on{background:var(--danger)}.revealed{margin-top:10px}.preview-frame{width:100%;height:100%;min-height:160px;border:1px solid var(--border);border-radius:var(--r);background:var(--white)}.hint-card{border:1px solid var(--border);border-radius:var(--r);padding:12px 14px;background:var(--surface-2)}.hint-card .hint-number{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-text);font-weight:600}.practice-editor{width:100%;min-height:150px;resize:vertical;border:1px solid var(--border);border-radius:var(--r);background:var(--code-bg);color:var(--text);font:13px/1.6 var(--mono);padding:12px;-moz-tab-size:4;tab-size:4;margin-top:12px}.secure-shell{max-width:1280px;margin:0 auto;padding:18px 20px 40px}#secure-test{background:var(--bg)}#secure-test:fullscreen{overflow:auto;padding:20px}.secure-banner{display:flex;align-items:center;gap:14px;justify-content:space-between;flex-wrap:wrap;padding:14px 18px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border-strong);margin-bottom:16px}.timer-box{font:600 22px var(--mono);padding:6px 14px;border-radius:9px;background:var(--accent-soft);color:var(--accent-text)}.secure-grid{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.3fr);gap:16px}.security-status{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.security-status h2{grid-column:1 / -1;font-size:14px}.security-status p{background:var(--surface-2);border-radius:8px;padding:8px 10px;font-size:12.5px;color:var(--text-2)}.security-status strong{color:var(--text)}.event-log{margin-top:14px}.event-log h2{font-size:14px;margin-bottom:8px}.event-log ol{list-style:none;margin:0;padding:0;max-height:280px;overflow:auto;border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2)}.event-log ol:empty:before{content:"No security events yet.";display:block;padding:12px;color:var(--text-3);font-size:12.5px}.event-log li{padding:7px 12px;border-bottom:1px solid var(--border);font-size:12.5px;color:var(--text-2)}.event-log li:last-child{border:0}.event-log li time{color:var(--text-3);font:11.5px var(--mono);margin-right:8px}.event-log li.strict,.event-log li.critical{color:var(--danger-text);background:var(--danger-soft)}.event-log li.warning{color:var(--warning-text)}textarea.editor-plain{width:100%;min-height:420px;resize:vertical;border:1px solid var(--border-strong);border-radius:var(--r);background:var(--code-bg);color:var(--text);font:13.5px/1.6 var(--mono);padding:14px;-moz-tab-size:4;tab-size:4}textarea.editor-plain:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft-2)}.result-hero{text-align:center;padding:34px 24px}.result-hero .big-ic{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;background:var(--surface-3);font-size:26px}.result-hero .big-ic.good{background:var(--success-soft);color:var(--success)}.result-hero .big-ic.bad{background:var(--danger-soft);color:var(--danger)}.result-hero .big-ic.warn{background:var(--warning-soft);color:var(--warning)}.rule-list{margin:14px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.rule-list li{display:flex;gap:10px;color:var(--text-2)}.rule-list .i{color:var(--accent);margin-top:3px}.auth{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.auth-aside{padding:48px clamp(28px,5vw,72px);display:flex;flex-direction:column;justify-content:space-between;gap:40px;background:linear-gradient(160deg,var(--surface) 0%,var(--surface-2) 100%);border-right:1px solid var(--border)}.auth-aside h2{font-size:30px;line-height:1.2;max-width:440px;margin-top:44px}.auth-aside>div>p{color:var(--text-2);max-width:420px;margin-top:12px;font-size:15px}.feature-list{list-style:none;margin:32px 0 0;padding:0;display:flex;flex-direction:column;gap:18px}.feature-list li{display:flex;gap:14px}.feature-list .f-ic{width:36px;height:36px;border-radius:9px;background:var(--accent-soft);color:var(--accent-strong);display:grid;place-items:center;flex:none}.feature-list strong{display:block}.feature-list span{color:var(--text-2);font-size:13px}.code-card{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r);padding:14px 16px;font:12.5px/1.8 var(--mono);color:var(--text-2);max-width:420px}.code-card .ok{color:var(--success-text)}.code-card .cmd{color:var(--accent-text)}.auth-main-wrap{display:flex;flex-direction:column;min-height:100vh}.auth-main{flex:1;display:grid;place-items:center;padding:16px 20px 48px}.auth-card{width:min(400px,100%)}.auth-card h1{font-size:26px}.auth-top{display:flex;justify-content:flex-end;padding:16px 20px 0}.auth-alt{margin-top:28px;padding-top:18px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text-3);font-size:13px}.error-page{min-height:70vh;display:grid;place-items:center;text-align:center;padding:24px}.error-page .code{font-size:64px;font-weight:700;letter-spacing:-.04em;color:var(--accent);line-height:1}.error-page h1{margin:12px 0 8px}.error-page p{color:var(--text-2);max-width:420px;margin:0 auto 20px}html:not(.js) .tabpanel[hidden]{display:block!important}html:not(.js) .tabs{display:none}@keyframes pop{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:1180px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-split{grid-template-columns:minmax(0,1fr)}}.card,.stat,.list-row .grow{min-width:0}@media(max-width:960px){.sidebar{position:fixed;left:0;top:0;transform:translate(-100%);width:min(280px,86vw)!important;box-shadow:var(--shadow)}.app.nav-open .sidebar{transform:none}.app.nav-open .scrim{opacity:1;pointer-events:auto}.app.is-collapsed .brand-text,.app.is-collapsed .nav a span,.app.is-collapsed .nav-label,.app.is-collapsed .sidebar-foot span{display:revert}.app.is-collapsed .nav a,.app.is-collapsed .sidebar-foot button{justify-content:flex-start}.menu-btn{display:inline-grid;place-items:center}.collapse-btn{display:none}.topbar{padding:0 16px}.page{padding:20px 16px 56px}.page--ws{padding:10px 10px 20px}.hero{grid-template-columns:1fr}.hero .ring{display:none}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.ws{height:auto;min-height:0}.ws-body{display:flex;flex-direction:column}.ws-split{display:none}.ws-left .tabpanel{max-height:360px}.editor-wrap{min-height:340px}.result-wrap{height:auto;min-height:200px}.secure-grid,.auth{grid-template-columns:1fr}.auth-aside{display:none}}@media(max-width:600px){.grid-2,.grid-3,.grid-4,.insight-grid{grid-template-columns:minmax(0,1fr)}.stat-value{font-size:23px}.topbar-title .kicker{display:none}.hide-sm{display:none!important}.list-row{flex-wrap:wrap}h1{font-size:21px}.security-status{grid-template-columns:1fr}}.auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--text-muted,#94a3b8)}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:currentColor;opacity:.35}@keyframes ccRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes ccFade{0%{opacity:0}to{opacity:1}}@keyframes ccSweep{0%{transform:translate(-120%)}60%,to{transform:translate(240%)}}@keyframes ccPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.82)}}@keyframes ccBreathe{0%,to{opacity:.5}50%{opacity:.9}}@keyframes ccPanelIn{0%{opacity:0;transform:translateY(26px) scale(.985)}to{opacity:1;transform:none}}@keyframes ccStepIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}@keyframes ccSeal{0%{opacity:0;transform:scale(.72)}55%{opacity:1;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes ccRingFill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes ccScan{0%{transform:translateY(-100%)}to{transform:translateY(2400%)}}.tp h1,.tp h2,.tp .tp-display{font-family:var(--tp-display);letter-spacing:-.025em}.tp-eyebrow{font:600 10.5px/1.2 var(--font);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text);display:inline-flex;align-items:center;gap:7px}.tp-label{margin:28px 0 12px;font:600 11px/1.2 var(--font);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3)}.tp-dot{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 10px var(--success);animation:ccPulse 2.4s ease-in-out infinite;flex:none;display:inline-block}.tp-dot.warn{background:var(--warning);box-shadow:0 0 12px var(--warning);animation-duration:1.8s}.tp-hero{position:relative;overflow:hidden;border-radius:20px;border:1px solid var(--tp-line);background:var(--tp-plate-hi);padding:30px 32px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;animation:ccRise .5s var(--ease) both}.tp-hero:before{content:"";position:absolute;inset:-40% -10% auto auto;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--assess-500) 22%,transparent),transparent 65%);pointer-events:none}.tp-hero>*{position:relative;min-width:0}.tp-sweep{position:absolute!important;top:0;left:0;height:1px;width:34%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--assess-500) 85%,transparent),transparent);animation:ccSweep 7s cubic-bezier(.4,0,.2,1) infinite}.tp-hero h1{margin:10px 0 8px;font-size:32px;line-height:1.14;font-weight:600;max-width:22ch}.tp-hero p{color:var(--text-2);max-width:62ch;text-wrap:pretty}.tp-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.tp-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:10px;background:var(--tp-tint);border:1px solid var(--tp-line-strong);color:var(--text-2);font:600 12px var(--font)}.tp-chip.ok{background:var(--success-soft);border-color:var(--success);color:var(--success-text)}.tp-chip.bad{background:var(--danger-soft);border-color:var(--danger);color:var(--danger-text)}.tp-ring{position:relative;display:grid;place-items:center;width:168px;height:168px;flex:none}.tp-ring:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:conic-gradient(from -90deg,var(--accent-strong) 0deg,var(--accent) calc(var(--p, 0) * 3.6deg),var(--tp-line-strong) calc(var(--p, 0) * 3.6deg))}.tp-ring:after{content:"";position:absolute;top:11px;right:11px;bottom:11px;left:11px;border-radius:50%;background:var(--surface);box-shadow:inset 0 0 40px color-mix(in srgb,var(--assess-500) 22%,transparent)}.tp-ring>div{position:relative;z-index:1;text-align:center;line-height:1.05}.tp-ring strong{display:block;font:600 36px var(--tp-display);letter-spacing:-.03em}.tp-ring strong small{font-size:17px;color:var(--text-3)}.tp-ring span{font:600 9.5px var(--font);text-transform:uppercase;letter-spacing:.14em;color:var(--text-3)}.tp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:18px}.tp-stat{position:relative;overflow:hidden;min-width:0;padding:18px 20px;border-radius:16px;border:1px solid var(--tp-line);background:var(--tp-plate);animation:ccRise .45s var(--ease) both}.tp-stat:before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,var(--bar, var(--accent)),transparent)}.tp-stat.is-warn{border-color:var(--warning);background:var(--tp-warm-plate)}.tp-stat.is-good{border-color:var(--success);background:var(--tp-good-plate)}.tp-stat-top{display:flex;align-items:center;justify-content:space-between;color:var(--text-3);margin-bottom:10px}.tp-stat-top span{font:600 10.5px var(--font);text-transform:uppercase;letter-spacing:.11em}.tp-stat-top .i{font-size:17px;color:var(--bar, var(--accent))}.tp-stat-value{display:flex;align-items:baseline;gap:9px;font:600 30px var(--tp-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.tp-stat-sub{font-size:12px;color:var(--text-2);margin-top:4px}.tp-meter{height:5px;border-radius:5px;background:var(--tp-line-strong);overflow:hidden;margin-top:10px}.tp-meter>span{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--success),var(--success-text))}.tp-cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tp-cat{position:relative;overflow:hidden;text-align:left;cursor:pointer;padding:20px 22px;border-radius:16px;border:1px solid var(--accent);background:var(--tp-accent-plate);color:var(--text);display:flex;gap:16px;align-items:flex-start;font:inherit;transition:border-color .15s}.tp-cat.is-gold{border-color:var(--tp-gold);background:var(--tp-gold-plate)}.tp-cat:hover{border-color:var(--accent-strong)}.tp-cat.is-gold:hover{border-color:var(--tp-gold);filter:brightness(1.08)}.tp-cat[aria-selected=true]{box-shadow:var(--tp-glow)}.tp-cat[aria-selected=true]:after{content:"";position:absolute;inset:auto 0 0 0;height:3px;background:linear-gradient(90deg,var(--accent-strong),transparent)}.tp-cat.is-gold[aria-selected=true]:after{background:linear-gradient(90deg,var(--tp-gold),transparent)}.tp-cat-ic{width:44px;height:44px;flex:none;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft-2);border:1px solid var(--accent);color:var(--accent-strong)}.tp-cat.is-gold .tp-cat-ic{background:var(--tp-gold-soft);border-color:var(--tp-gold);color:var(--tp-gold)}.tp-cat-ic .i{font-size:21px}.tp-cat-body{min-width:0;flex:1}.tp-cat-body strong{display:block;font:600 18px var(--tp-display);letter-spacing:-.015em}.tp-cat-body small{display:block;color:var(--text-2);font-size:13px;margin-top:4px}.tp-count{display:inline-flex;margin-top:12px;padding:5px 11px;border-radius:8px;background:var(--accent-soft-2);color:var(--accent-text);font:600 11.5px var(--font)}.tp-cat.is-gold .tp-count{background:var(--tp-gold-soft);color:var(--tp-gold)}.tp-empty{margin-top:18px;border-radius:18px;border:1px dashed var(--tp-gold);background:var(--tp-gold-plate);padding:62px 28px;text-align:center;animation:ccRise .4s var(--ease) both}.tp-empty-ic{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 18px;border-radius:50%;background:var(--tp-gold-soft);border:1px solid var(--tp-gold);color:var(--tp-gold)}.tp-empty-ic .i{font-size:26px}.tp-empty strong{display:block;font:600 20px var(--tp-display);letter-spacing:-.015em}.tp-empty p{color:var(--text-2);margin:8px auto 0;max-width:48ch;text-wrap:pretty}.tp-empty p.faint{color:var(--text-3);font-size:12.5px;margin-top:16px}.tp-panel{margin-top:18px;animation:ccRise .4s var(--ease) both}.tp-active{display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:16px;border:1px solid var(--warning);background:var(--tp-warm-plate);color:var(--text);text-decoration:none}.tp-active:hover{text-decoration:none}.tp-active-ic{width:38px;height:38px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--warning-soft);color:var(--warning)}.tp-active .grow{flex:1;min-width:0}.tp-active strong{display:block;font:600 15px var(--font)}.tp-row{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:14px;border:1px solid var(--tp-line);background:var(--tp-plate)}.tp-row+.tp-row{margin-top:10px}.tp-row .grow{flex:1;min-width:0}.tp-row .title{display:block;font-weight:600}.tp-row .faint{display:block;font-size:12.5px}.tp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(336px,1fr));gap:16px}.tp-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:14px;padding:20px;border-radius:16px;border:1px solid var(--tp-line);background:var(--tp-plate);transition:border-color .15s}.tp-card:hover{border-color:var(--accent)}.tp-card-head h3{flex:1;min-width:0;font:600 17px var(--tp-display);letter-spacing:-.015em;margin:0}.tp-tags{display:flex;flex-wrap:wrap;gap:8px}.tp-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:7px;background:var(--tp-tint);color:var(--text-2);font:600 11.5px var(--font)}.tp-tag.accent{background:var(--accent-soft-2);color:var(--accent-text)}.tp-shield .i{color:var(--success);font-size:14px;flex:none}.tp-card-foot{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:4px}.tp-card-foot .faint{font-size:12px}.tp-card-foot .grow{flex:1}.tp-ok{display:inline-flex;align-items:center;gap:6px;color:var(--success-text);font-size:12px}.tp-ok i{width:6px;height:6px;border-radius:50%;background:var(--success)}.tp-table-wrap{border-radius:16px;border:1px solid var(--tp-line);background:var(--tp-plate);overflow:hidden}.tp-table{width:100%;border-collapse:collapse;font-size:13px}.tp-table th{text-align:left;font:600 10.5px var(--font);text-transform:uppercase;letter-spacing:.09em;color:var(--text-3);padding:12px 18px;border-bottom:1px solid var(--tp-line-strong)}.tp-table td{padding:14px 18px;border-bottom:1px solid var(--tp-line);color:var(--text-2)}.tp-table tr:last-child td{border-bottom:0}.tp-table td strong{color:var(--text);font-weight:600}.tp-table .r{text-align:right}.tp-sql-tables{display:grid;gap:14px;margin:12px 0}.tp-sql-tables .tp-table-wrap{overflow-x:auto}.tp-sql-tables .tp-table caption{padding:12px 18px 8px;text-align:left;color:var(--text);font-weight:700}.tp-sql-null{color:var(--text-3);font-style:italic}.tp-note{display:flex;gap:12px;margin-top:26px;padding:16px 20px;border-radius:14px;border:1px solid var(--info);background:var(--info-soft)}.tp-note .i{color:var(--info);font-size:18px;margin-top:2px;flex:none}.tp-note p{color:var(--text-2);text-wrap:pretty}.tp-note strong{color:var(--text)}.tp-rules-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:18px;align-items:start}.tp-plate-hi{position:relative;overflow:hidden;border-radius:20px;border:1px solid var(--tp-line);background:var(--tp-plate-hi);padding:30px 32px;animation:ccRise .45s var(--ease) both}.tp-plate-hi h1{margin:10px 0 12px;font-size:29px;line-height:1.16;font-weight:600}.tp-plate-hi p.lead{color:var(--text-2);margin-top:16px;max-width:70ch;text-wrap:pretty}.tp-rules{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tp-rules li{display:flex;gap:12px;padding:14px;border-radius:13px;border:1px solid var(--tp-line);background:var(--tp-tint);color:var(--text-2);font-size:13px}.tp-rules li .i{color:var(--accent-strong);font-size:18px;flex:none;margin-top:2px}.tp-rules li strong{display:block;color:var(--text);font-weight:600}.tp-start{position:sticky;top:86px;border-radius:20px;border:1px solid var(--accent);background:var(--tp-accent-plate);padding:26px;animation:ccRise .45s var(--ease) .08s both;box-shadow:var(--tp-glow)}.tp-start-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:var(--accent-soft-2);border:1px solid var(--accent);color:var(--accent-strong)}.tp-start-mark .i{font-size:22px}.tp-start h2{margin:16px 0 6px;font-size:20px;font-weight:600}.tp-start p{color:var(--text-2);font-size:13px;text-wrap:pretty}.tp-facts{display:grid;gap:8px;margin:18px 0;padding:14px 16px;border-radius:13px;background:var(--tp-inset);border:1px solid var(--tp-line)}.tp-facts strong{color:var(--text);font:600 12.5px var(--tp-mono)}.tp-foot{color:var(--text-3);font-size:11.5px;margin-top:14px;text-align:center}.tp-start .btn-primary{position:relative;overflow:hidden;padding:14px 18px;border-radius:12px;font-weight:700;background:linear-gradient(100deg,var(--accent),var(--accent-strong));color:var(--on-accent)}.tp-start .btn-primary:after{content:"";position:absolute;top:0;left:0;height:100%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);animation:ccSweep 3.6s cubic-bezier(.4,0,.2,1) infinite;pointer-events:none}.tp-entry{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 35%,var(--paper) 0%,var(--paper) 62%);overflow:hidden;color:var(--ink-900);animation:ccFade .2s ease both}.tp-entry.is-through{pointer-events:none}.tp-entry:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.5;background-image:linear-gradient(color-mix(in srgb,var(--assess-500) 7%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--assess-500) 7%,transparent) 1px,transparent 1px);background-size:56px 56px}.tp-scan{position:absolute;left:0;right:0;height:140px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--assess-500) 12%,transparent),transparent);animation:ccScan 2s cubic-bezier(.4,0,.2,1) 1 both}.tp-entry-card{position:relative;width:min(560px,86vw);text-align:center;animation:ccPanelIn .7s var(--ease) both}.tp-seal{position:relative;display:grid;place-items:center;width:92px;height:92px;margin:0 auto 26px}.tp-seal:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px solid color-mix(in srgb,var(--assess-500) 30%,transparent);animation:ccBreathe 2s ease-in-out infinite}.tp-seal:after{content:"";position:absolute;top:-14px;right:-14px;bottom:-14px;left:-14px;border-radius:50%;border:1px solid color-mix(in srgb,var(--assess-500) 14%,transparent)}.tp-seal-core{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;background:color-mix(in srgb,var(--assess-500) 16%,transparent);border:1px solid color-mix(in srgb,var(--assess-500) 44%,transparent);color:var(--ink-900);animation:ccSeal .8s var(--ease) both}.tp-seal-core .i{font-size:30px}.tp-entry h1{margin:12px 0 8px;font-size:30px;font-weight:600;color:var(--ink-900)}.tp-entry .tp-eyebrow{letter-spacing:.22em;color:var(--assess-800)}.tp-steps{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:9px;text-align:left}.tp-steps li{display:flex;align-items:center;gap:11px;padding:11px 15px;border-radius:12px;border:1px solid color-mix(in srgb,var(--ink-900) 8%,transparent);background:color-mix(in srgb,var(--white) 72%,transparent);font-size:13px;color:var(--ink-900);animation:ccStepIn .45s var(--ease) both}.tp-steps li:nth-child(1){animation-delay:.1s}.tp-steps li:nth-child(2){animation-delay:.45s}.tp-steps li:nth-child(3){animation-delay:.8s}.tp-steps li:nth-child(4){animation-delay:1.15s;border-color:color-mix(in srgb,var(--assess-500) 30%,transparent)}.tp-steps li>span:not(.tp-spin){flex:1}.tp-steps li em{font:500 11px var(--tp-mono);font-style:normal;color:var(--ok)}.tp-steps .i{color:var(--ok);font-size:16px}.tp-spin{flex:none;width:16px;height:16px;border-radius:50%;border:2px solid color-mix(in srgb,var(--assess-500) 35%,transparent);border-right-color:var(--assess-800);animation:spin 1s linear infinite}.tp-progress{height:3px;border-radius:3px;background:color-mix(in srgb,var(--ink-900) 10%,transparent);overflow:hidden;margin-top:22px}.tp-progress>span{display:block;height:100%;width:100%;transform-origin:left;background:linear-gradient(90deg,var(--assess-500),var(--assess-800));animation:ccRingFill 2s cubic-bezier(.3,0,.2,1) both}.tp-entry small.note{display:block;color:var(--text-3);font-size:11.5px;margin-top:14px}.tp-entry button.enter{margin-top:12px;padding:8px 16px;border-radius:999px;border:1px solid color-mix(in srgb,var(--ink-900) 16%,transparent);background:transparent;color:var(--text-2);font:600 12px var(--font);cursor:pointer}.tp-entry button.enter:hover{background:color-mix(in srgb,var(--ink-900) 7%,transparent);color:var(--ink-900)}#secure-test.tp-cockpit{position:relative;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse at 15% -10%,#1a1d33 0%,var(--tp-bg) 55%);color:var(--text)}:root[data-theme=light] #secure-test.tp-cockpit{background:var(--bg)}#secure-test.tp-cockpit:fullscreen{overflow:hidden;padding:0}.tp-rail{position:relative;z-index:10;flex:none;display:flex;align-items:center;gap:18px;padding:12px 20px;border-bottom:1px solid var(--tp-line-strong);background:var(--tp-plate);animation:ccRise .5s var(--ease) both}.tp-id{display:flex;align-items:center;gap:11px;min-width:0}.tp-id-mark{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:11px;background:var(--success-soft);border:1px solid var(--success);color:var(--success-text)}.tp-id small{display:flex;align-items:center;gap:7px;font:600 9.5px var(--font);letter-spacing:.16em;text-transform:uppercase;color:var(--success-text)}.tp-id small i{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 9px var(--success);animation:ccPulse 2.2s ease-in-out infinite}.tp-id strong{display:block;max-width:34ch;font:600 15.5px var(--tp-display);letter-spacing:-.015em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-qnav{display:flex;align-items:center;gap:6px;padding:4px;border-radius:11px;background:var(--tp-inset);border:1px solid var(--tp-line)}.tp-qnav button{min-width:30px;height:30px;padding:0 6px;border-radius:8px;border:0;background:transparent;color:var(--text-2);font:600 12.5px var(--tp-mono);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:3px}.tp-qnav button:hover{background:var(--tp-tint);color:var(--text)}.tp-qnav button[aria-current=true]{background:var(--accent);color:var(--on-accent);font-weight:700}.tp-qnav .i{font-size:11px}.tp-spacer{flex:1}.tp-sigs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tp-sig{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:9px;background:var(--tp-tint);border:1px solid var(--tp-line-strong);color:var(--text-2);font:600 11.5px var(--font)}.tp-sig i{width:6px;height:6px;border-radius:50%;background:currentColor}.tp-sig.ok{background:var(--success-soft);border-color:var(--success);color:var(--success-text)}.tp-sig.bad{background:var(--danger-soft);border-color:var(--danger);color:var(--danger-text)}.tp-sig strong{color:var(--text);font-family:var(--tp-mono)}.tp-sig .i{font-size:13px}.tp-timer{display:flex;align-items:center;gap:10px;padding:6px 8px 6px 14px;border-radius:12px;background:var(--accent-soft);border:1px solid var(--accent)}.tp-timer small{font:600 9.5px/1.1 var(--font);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text)}.tp-timer strong{font:700 26px/1 var(--tp-mono);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text)}.tp-warnstrip{position:relative;z-index:10;flex:none;margin:0;padding:10px 20px;background:var(--danger-soft);border-bottom:1px solid var(--danger);color:var(--danger-text);font-weight:600}.tp-gate,.tp-adminedit{position:relative;z-index:10;flex:none;margin:10px 16px 0}.tp-body{position:relative;z-index:10;flex:1;min-height:0;overflow:auto;display:grid;grid-template-columns:minmax(330px,382px) minmax(0,1fr);gap:14px;padding:14px 16px 16px}.tp-left{min-width:0;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding-right:4px;animation:ccRise .55s var(--ease) .08s both}.tp-pane{flex:none;padding:18px;border-radius:15px;border:1px solid var(--tp-line);background:var(--tp-plate)}.tp-pane.is-head{border-color:var(--tp-line-strong)}.tp-pane.is-complexity{border-color:var(--accent);background:var(--tp-accent-plate)}.tp-pane.is-secure{border-color:var(--success);background:var(--tp-good-plate)}.tp-pane h1{margin:8px 0 10px;font-size:19px;line-height:1.25;font-weight:600;letter-spacing:-.018em}.tp-pane h2{margin:0 0 10px;font:600 10px var(--font);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3)}.tp-pane.is-complexity h2{color:var(--accent-text)}.tp-pane.is-secure h2{color:var(--success-text)}.tp-pane .tp-eyebrow{font-size:10px}.tp-pane .desc{color:var(--text-2);font-size:13px;margin-top:13px;text-wrap:pretty;white-space:pre-wrap}.tp-pane .tp-tags{gap:7px}.tp-pane .tp-tag{padding:3px 9px;font-size:11px}.tp-kv{display:grid;gap:9px}.tp-kv>div{padding:11px 13px;border-radius:11px;background:var(--tp-inset);border:1px solid var(--tp-line)}.tp-kv small{display:block;font:600 10px var(--font);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin-bottom:4px}.tp-kv span{font:12.5px/1.6 var(--tp-mono);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}.tp-bullets{list-style:none;margin:0;padding:0;display:grid;gap:6px}.tp-bullets li{display:flex;gap:9px;font:12.5px/1.6 var(--tp-mono);color:var(--text-2);overflow-wrap:anywhere}.tp-bullets li:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--accent);margin-top:8px;flex:none}.tp-sample{display:grid;gap:9px}.tp-sample small{display:block;font:600 10px var(--font);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin-bottom:5px}.tp-code{margin:0;font:12.5px/1.65 var(--tp-mono);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);background:var(--tp-code);border:1px solid var(--tp-line);border-radius:11px;padding:11px 13px}.tp-code.good{color:var(--success-text);border-color:var(--success)}.tp-why{color:var(--text-2);font-size:12.5px;padding:10px 13px;border-radius:11px;background:var(--info-soft);border:1px solid var(--info);text-wrap:pretty}.tp-why strong{color:var(--info);font-weight:600}.tp-pane-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.tp-pane-head h2{flex:1;margin:0}.tp-pill{padding:2px 8px;border-radius:6px;background:var(--tp-tint);color:var(--text-3);font:600 10.5px var(--tp-mono)}.tp-cases{display:grid;gap:7px}.tp-case{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border-radius:11px;background:var(--tp-inset);border:1px solid var(--tp-line);font:12px var(--tp-mono)}.tp-case b{font-weight:600;color:var(--text-3)}.tp-case code{background:none;padding:0;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-case em{font:600 10.5px var(--font);font-style:normal;color:var(--text-3)}.tp-case.pass em{color:var(--success-text)}.tp-case.fail em{color:var(--danger-text)}.tp-cx{display:grid;grid-template-columns:1fr 1fr;gap:9px}.tp-cx>div{padding:12px;border-radius:11px;background:var(--tp-inset);border:1px solid var(--tp-line)}.tp-cx.one{grid-template-columns:1fr}.tp-cx small{display:block;font:600 10px var(--font);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.tp-cx strong{display:block;margin-top:5px;font:700 17px var(--tp-mono);color:var(--accent-text);overflow-wrap:anywhere}.tp-pane .foot{color:var(--text-3);font-size:11.5px;margin-top:9px}.tp-grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tp-grid2 span{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 11px;border-radius:10px;background:var(--tp-inset);font-size:12px;color:var(--text-2)}.tp-grid2 strong{color:var(--success-text);font-weight:600}.tp-grid2 strong.bad{color:var(--danger-text)}.tp-violations{margin-top:12px;padding:11px 13px;border-radius:11px;background:var(--tp-inset)}.tp-violations>div:first-child{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-2);margin-bottom:7px}.tp-violations strong{color:var(--text);font:600 12.5px var(--tp-mono)}.tp-segs{display:flex;gap:5px}.tp-segs i{flex:1;height:5px;border-radius:3px;background:var(--tp-line-strong)}.tp-segs i.on{background:var(--danger)}.tp-events{list-style:none;margin:0;padding:0;max-height:168px;overflow-y:auto;border-radius:11px;border:1px solid var(--tp-line);background:var(--tp-inset)}.tp-events:empty:before{content:"No security events yet.";display:block;padding:12px;color:var(--text-3);font-size:12.5px}.tp-events li{display:flex;gap:10px;padding:8px 12px;border-bottom:1px solid var(--tp-line);font-size:12px;color:var(--text-2)}.tp-events li:last-child{border-bottom:0}.tp-events time{font:11px var(--tp-mono);color:var(--text-3);flex:none}.tp-events li.warning{color:var(--warning-text)}.tp-events li.strict,.tp-events li.critical{color:var(--danger-text);background:var(--danger-soft)}.tp-right{min-width:0;min-height:0;display:flex;flex-direction:column;gap:12px;animation:ccRise .55s var(--ease) .14s both}.tp-editor{flex:1;min-height:360px;display:flex;flex-direction:column;border-radius:15px;border:1px solid var(--tp-line-strong);background:var(--tp-code);overflow:hidden;box-shadow:0 30px 70px -50px #000000e6}.tp-edhead,.tp-edfoot{flex:none;display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--tp-plate)}.tp-edhead{border-bottom:1px solid var(--tp-line)}.tp-edfoot{border-top:1px solid var(--tp-line);gap:10px;flex-wrap:wrap}.tp-file{display:flex;align-items:center;gap:8px;font:500 12.5px var(--tp-mono);color:var(--text);margin:0}.tp-file .i{color:var(--accent-strong);font-size:15px}.tp-mini{padding:5px 11px;border-radius:8px;border:1px solid var(--tp-line-strong);background:transparent;color:var(--text-2);font:600 11.5px var(--font);cursor:pointer;white-space:nowrap}.tp-mini:hover{background:var(--tp-tint);color:var(--text)}.tp-select{padding:5px 10px;border-radius:8px;border:1px solid var(--tp-line-strong);background:var(--tp-inset);color:var(--text);font:500 12px var(--font)}.tp-saved{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:8px;background:var(--success-soft);color:var(--success-text);font:600 11px var(--font)}.tp-saved .i{font-size:12px}.tp-edbody{flex:1;min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr)}.tp-gutter{margin:0;padding:16px 10px 16px 16px;text-align:right;font:13.5px/1.7 var(--tp-mono);color:var(--text-3);-webkit-user-select:none;user-select:none;background:var(--tp-gutter);border-right:1px solid var(--tp-line);overflow:hidden}textarea.tp-textarea{width:100%;height:100%;min-height:0;border:0;outline:none;resize:none;display:block;background:transparent;color:var(--text);font:13.5px/1.7 var(--tp-mono);padding:16px 18px;-moz-tab-size:4;tab-size:4;white-space:pre;overflow:auto;border-radius:0}textarea.tp-textarea:focus-visible{box-shadow:inset 0 0 0 1px var(--accent)}.tp-run{display:inline-flex;align-items:center;gap:8px;padding:10px 17px;border-radius:11px;border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent-text);font:600 13px var(--font);cursor:pointer}.tp-run:hover:not(:disabled){background:var(--accent-soft-2)}.tp-submit{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;padding:10px 19px;border-radius:11px;border:0;background:linear-gradient(100deg,var(--accent),var(--accent-strong));color:var(--on-accent);font:700 13px var(--font);cursor:pointer}.tp-submit:hover:not(:disabled){filter:brightness(1.08)}.tp-run:disabled,.tp-submit:disabled{opacity:.5;cursor:not-allowed}.tp-edfoot .meta{font:500 11.5px var(--tp-mono);color:var(--text-3)}.tp-console{flex:none;height:clamp(196px,26vh,264px);display:flex;flex-direction:column;border-radius:15px;border:1px solid var(--tp-line-strong);background:var(--tp-plate);overflow:hidden}.tp-tabs{flex:none;display:flex;gap:2px;padding:8px 10px 0;border-bottom:1px solid var(--tp-line);align-items:center}.tp-tabs button{padding:9px 14px;border:0;background:none;color:var(--text-2);font:600 12.5px var(--font);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.tp-tabs button:hover{color:var(--text)}.tp-tabs button[aria-selected=true]{color:var(--accent-text);border-bottom-color:var(--accent)}.tp-runner{margin:0 0 8px auto;padding:3px 9px;border-radius:7px;background:var(--success-soft);color:var(--success-text);font:600 10.5px var(--font)}.tp-runner.warn{background:var(--warning-soft);color:var(--warning-text)}.tp-conbody{flex:1;min-height:0;overflow:auto;padding:12px 14px;display:grid;gap:7px;align-content:start}.tp-conbody pre{margin:0;font:12.5px/1.7 var(--tp-mono);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text)}.tp-conbody .foot{color:var(--text-3);font-size:11.5px}.tp-run-row{display:flex;align-items:center;gap:12px;padding:9px 13px;border-radius:10px;background:var(--tp-inset);border:1px solid var(--tp-line);font-size:12px}.tp-run-row time{font:11px var(--tp-mono);color:var(--text-3)}.tp-run-row .grow{flex:1;color:var(--text-2)}.tp-run-row .ms{font:11.5px var(--tp-mono);color:var(--text-3)}.tp-result-hero{position:relative;overflow:hidden;text-align:center;padding:44px 28px;border-radius:20px;border:1px solid var(--success);background:var(--tp-good-plate);animation:ccRise .45s var(--ease) both}.tp-result-hero.bad{border-color:var(--danger);background:var(--tp-plate)}.tp-result-hero.warn{border-color:var(--warning);background:var(--tp-warm-plate)}.tp-result-hero:before{content:"";position:absolute;inset:-60% 30% auto;height:420px;background:radial-gradient(ellipse at top,color-mix(in srgb,var(--ok) 18%,transparent),transparent 70%);pointer-events:none}.tp-result-hero.bad:before{background:radial-gradient(ellipse at top,color-mix(in srgb,var(--bad) 16%,transparent),transparent 70%)}.tp-result-hero.warn:before{background:radial-gradient(ellipse at top,color-mix(in srgb,var(--achieve-500) 16%,transparent),transparent 70%)}.tp-result-hero>*{position:relative}.tp-result-seal{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:var(--success-soft);border:1px solid var(--success);color:var(--success-text);animation:ccSeal .6s var(--ease) both}.tp-result-hero.bad .tp-result-seal{background:var(--danger-soft);border-color:var(--danger);color:var(--danger-text)}.tp-result-hero.warn .tp-result-seal{background:var(--warning-soft);border-color:var(--warning);color:var(--warning-text)}.tp-result-seal .i{font-size:30px}.tp-result-hero h1{font-size:28px;font-weight:600;margin:0}.tp-result-hero p{color:var(--text-2);margin-top:8px}.tp-result-hero p.faint{color:var(--text-3);font-size:12.5px;margin-top:6px}.tp-result-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:18px}.tp-result-stats .tp-stat-value{font-size:22px}.tp-section{margin-top:18px;padding:22px;border-radius:16px;border:1px solid var(--tp-line);background:var(--tp-plate)}.tp-section h2{margin:0 0 12px;font:600 11px var(--font);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3)}.tp-section .tp-code{padding:14px 16px;font-size:13px}.tp-fine{color:var(--text-3);font-size:12px;margin-top:16px;max-width:70ch;text-wrap:pretty}@media(max-width:1180px){.tp-hero{grid-template-columns:1fr}.tp-ring{display:none}.tp-stats,.tp-result-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-rules-layout{grid-template-columns:minmax(0,1fr)}.tp-start{position:static}.tp-body{grid-template-columns:minmax(0,1fr)}.tp-right{order:-1}.tp-editor{min-height:420px}.tp-left{overflow-y:visible}}@media(max-width:960px){.tp-rail{flex-wrap:wrap;gap:10px 14px;padding:10px 14px}.tp-sigs{order:3;width:100%}.tp-cats,.tp-rules{grid-template-columns:minmax(0,1fr)}}@media(max-width:600px){.tp-stats,.tp-result-stats,.tp-cards{grid-template-columns:minmax(0,1fr)}.tp-hero,.tp-plate-hi{padding:22px 18px}.tp-hero h1{font-size:26px}.tp-active{flex-wrap:wrap}}.wizard-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.wizard-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.wizard-entry{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-height:220px;width:100%;text-align:left;cursor:pointer;color:inherit;transition:border-color .2s,transform .2s,box-shadow .2s}.wizard-entry:hover,.wizard-entry:focus-visible{border-color:var(--accent);box-shadow:0 12px 32px #0000001f;transform:translateY(-2px)}.wizard-entry strong{font-size:1.45rem}.wizard-entry-action{margin-top:auto;color:var(--accent);font-weight:700}.pdf-drop{display:flex;flex-direction:column;align-items:center;text-align:center;padding:46px 24px;border:2px dashed var(--border)}.pdf-drop:focus-within,.pdf-drop:hover{border-color:var(--accent)}.pdf-drop-icon{display:grid;place-items:center;width:62px;height:62px;margin-bottom:16px;border-radius:16px;background:var(--accent-soft);color:var(--accent);font-weight:800}.pdf-drop progress{width:min(400px,100%);accent-color:var(--accent)}.pdf-question-review{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:16px 0;border-top:1px solid var(--border)}.pdf-question-review:first-of-type{margin-top:12px}.pdf-question-review small{width:100%}.pdf-case-details{width:100%;margin-top:4px}.pdf-case-details summary{cursor:pointer;color:var(--accent);font-weight:700}.pdf-case-pair{padding:10px 0;border-bottom:1px solid var(--border)}.pdf-case-pair pre,.pdf-case-details>pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-2);padding:10px;border-radius:var(--r)}.pdf-field-status{display:flex;flex-wrap:wrap;gap:6px;width:100%}.pdf-field-status .chip{font-size:.74rem;cursor:default}.wizard-category{display:flex;flex-direction:column;gap:7px;width:100%;text-align:left;cursor:pointer;color:inherit}.wizard-category strong{font-size:1.45rem}.wizard-category.is-selected,.wizard-language.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.wizard-category-stats{font-size:.82rem;color:var(--text-2);line-height:1.5}.wizard-progress{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;overflow-x:auto}.wizard-step{min-width:100px;border:1px solid var(--border);border-radius:var(--r);padding:9px 5px;background:var(--surface);color:var(--text-2);font-size:.78rem;cursor:pointer}.wizard-step span{display:block;margin:0 auto 4px;border-radius:50%;background:var(--surface-2);color:var(--text);width:24px;height:24px;line-height:24px}.wizard-step.is-current{border-color:var(--accent);color:var(--text);font-weight:700}.wizard-step.is-done span{background:var(--accent);color:var(--on-accent)}.wizard-language-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.wizard-language{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:var(--r);padding:14px;cursor:pointer}.wizard-slot-nav{display:flex;gap:7px;flex-wrap:wrap}.wizard-case{display:grid;grid-template-columns:1fr 1fr auto auto;gap:8px;align-items:start;margin-top:9px}.wizard-case .textarea{min-height:75px}.wizard-footer{display:flex;gap:10px;align-items:center;position:sticky;bottom:0;padding:14px 0;background:var(--bg);z-index:5}.tp-question-time{color:var(--info);background:var(--info-soft);border-color:var(--info)}@media(max-width:780px){.wizard-entry-grid,.wizard-category-grid,.wizard-language-grid{grid-template-columns:1fr}.wizard-case{grid-template-columns:1fr 1fr}.wizard-progress{grid-template-columns:repeat(8,112px)}}.tp-launch-note{display:flex;align-items:flex-start;gap:9px;margin:0;padding:10px 12px;border-radius:11px;background:var(--tp-inset);border:1px solid var(--tp-line);color:var(--text-2);font-size:12.5px}.tp-launch-note.ok{background:var(--success-soft);border-color:var(--success);color:var(--success-text)}.tp-launch-note.bad{background:var(--danger-soft);border-color:var(--danger);color:var(--danger-text)}.tp-launch-note .tp-spin{margin-top:2px;border-color:var(--accent-soft-2);border-right-color:var(--accent-strong)}.tp-launch .tp-foot{margin:0}.tp-required{max-width:560px;margin:8vh auto 0;padding:32px;border-radius:20px;border:1px solid var(--accent);background:var(--tp-accent-plate);box-shadow:var(--tp-glow);text-align:center}.tp-required .tp-start-mark{margin:0 auto 16px}.tp-required h1{font-size:22px;margin:0 0 10px}.tp-required p{color:var(--text-2);text-wrap:pretty}.tp-required .tp-launch{margin-top:18px;text-align:left}.tp-secure-frame{min-height:100vh;background:var(--tp-bg);color:var(--text)}.tp-secure-head{display:flex;align-items:center;gap:12px;padding:14px 22px;border-bottom:1px solid var(--tp-line);background:var(--tp-plate)}.tp-secure-frame main{max-width:1060px;margin:0 auto;padding:26px 22px 60px}:root{--motion-fast: .12s;--motion-base: .2s;--motion-slow: .26s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-out: cubic-bezier(0, 0, .2, 1)}.btn,.btn-icon,.link-btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.btn{position:relative;transition:background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard),opacity var(--motion-fast) var(--ease-standard)}.btn:active:not(:disabled){transform:translateY(1px) scale(.985)}.btn:focus-visible,.btn-icon:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px;box-shadow:0 0 0 4px var(--accent-soft-2)}.btn.is-busy{cursor:progress;opacity:.9}.btn.is-busy .btn-label{visibility:hidden}.btn-spinner{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}.btn.is-busy:disabled{opacity:.9}@media(pointer:coarse){.btn{min-height:44px}.btn-sm{min-height:40px}.btn-icon{width:44px;height:44px}}.input{transition:border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}.cc-loader{display:grid;place-items:center;align-content:center;gap:12px;padding:32px 20px;text-align:center;color:var(--text-2)}.cc-mark-slot{display:block;flex:none}.cc-mark-enter{opacity:0;animation:ccLoaderIn var(--motion-base) var(--ease-out) forwards}.cc-loader--page{min-height:55vh}.cc-loader--fullscreen{min-height:100vh;background:var(--bg)}.cc-loader-label{color:var(--text);font-size:15px;font-weight:600}.cc-loader-caption{color:var(--text-3);font-size:13px}.cc-mark{overflow:visible}.cc-mark-halo{fill:var(--accent-soft);animation:ccMarkHalo 2.2s ease-in-out infinite;transform-origin:32px 32px}.cc-mark-bracket,.cc-mark-slash{fill:none;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.cc-mark-bracket{stroke:var(--accent-strong);stroke-dasharray:60;stroke-dashoffset:0;animation:ccMarkDraw 1.8s var(--ease-standard) infinite}.cc-mark-right{animation-delay:.14s}.cc-mark-slash{stroke:var(--accent);animation:ccMarkSlash 1.8s var(--ease-standard) infinite}.cc-mark-dot{fill:var(--accent-strong);transform-origin:32px 32px;animation:ccMarkPulse 1.8s ease-in-out infinite}@keyframes ccLoaderIn{to{opacity:1}}@keyframes ccMarkDraw{0%{stroke-dashoffset:60;opacity:.25}35%,72%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:-60;opacity:.25}}@keyframes ccMarkSlash{0%,20%{opacity:0;transform:translateY(4px)}45%,72%{opacity:1;transform:none}to{opacity:0;transform:translateY(-4px)}}@keyframes ccMarkPulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.6);opacity:.55}}@keyframes ccMarkHalo{0%,to{transform:scale(.92);opacity:.6}50%{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.cc-mark-enter{opacity:1;animation:none}.cc-mark-slash{opacity:1}}.skel-block{display:block}.skel-text{display:grid;gap:10px}.skel-page{display:grid;gap:16px}.skel-head{display:grid;gap:10px;padding-bottom:4px}.skel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.skel-card{display:grid;gap:12px;min-height:120px;align-content:start}.skel-table{display:grid;gap:0;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;background:var(--surface)}.skel-row{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:16px;align-items:center;height:48px;padding:0 16px;border-top:1px solid var(--border)}.skel-row:first-child{border-top:0}.route-enter{animation:ccRouteIn var(--motion-fast) var(--ease-out) both}@keyframes ccRouteIn{0%{transform:translateY(6px)}to{transform:none}}.page p>a:not(.btn):not(.link-btn):not(.subtle-link){text-decoration:underline;text-underline-offset:2px}.admin-app .sidebar{--sidebar-w: 256px}.admin-brand{display:flex;align-items:center;gap:10px;padding:16px 16px 12px;color:var(--text);font-weight:650}.admin-brand:hover{text-decoration:none}.pill-admin{font-size:10px;letter-spacing:.1em;font-weight:700;padding:2px 7px;border-radius:5px;background:var(--accent);color:var(--on-accent);margin-left:4px;vertical-align:2px}.nav-group+.nav-group{margin-top:2px}.sidebar-college{padding:12px 16px;border-top:1px solid var(--border);display:flex;gap:10px;align-items:center;color:var(--text-2);font-size:12px}.sidebar-college strong{display:block;color:var(--text);font-size:12.5px}.college-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);font-size:12.5px;color:var(--text-2);white-space:nowrap}.college-chip strong{color:var(--text);font-weight:600}.topbar .search-box{position:relative;width:min(320px,28vw)}.search-box input{width:100%;padding:7px 12px 7px 34px;border-radius:9px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text)}.search-box input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft-2)}.search-box .i{position:absolute;left:11px;top:9px;color:var(--text-3);pointer-events:none}.bell-wrap{position:relative}.badge-count{position:absolute;top:-4px;right:-4px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--danger);color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center}.menu.menu-wide{min-width:320px;max-width:92vw}.menu .menu-item{align-items:flex-start;flex-direction:column;gap:2px}.menu .menu-item small{color:var(--text-3)}.breadcrumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12.5px;color:var(--text-3);margin-bottom:8px}.breadcrumbs a{color:var(--text-2)}.breadcrumbs .i{font-size:12px}.page-head h1{font-size:22px}.tabs-links{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:18px;overflow-x:auto;scrollbar-width:none}.tabs-links a{padding:9px 14px;border-bottom:2px solid transparent;color:var(--text-2);font-weight:500;white-space:nowrap;margin-bottom:-1px}.tabs-links a:hover{color:var(--text);text-decoration:none}.tabs-links a[aria-current=page]{color:var(--accent-text);border-bottom-color:var(--accent)}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:12px 14px;margin-bottom:14px}.toolbar .field-inline{display:flex;align-items:center;gap:6px}.toolbar label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:600}.toolbar .input,.toolbar .select{width:auto;min-width:130px;padding:7px 10px;font-size:13px}.toolbar .grow-input{flex:1;min-width:220px}.pager{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:12px 4px 0;color:var(--text-2);font-size:12.5px;flex-wrap:wrap}.pager .btn-row{gap:6px}.table-dense th{padding:8px 12px}.table-dense td{padding:9px 12px;font-size:12.5px}.avatar-img{width:32px;height:32px;border-radius:50%;object-fit:cover;background:var(--accent-soft-2);flex:none}.avatar-lg{width:72px;height:72px;border-radius:50%;object-fit:cover;background:var(--accent-soft-2)}.avatar-ph{width:32px;height:32px;border-radius:50%;background:var(--accent-soft-2);color:var(--accent-text);display:grid;place-items:center;font-weight:700;font-size:13px;flex:none}.kv{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px 14px;font-size:13px}.kv dt{color:var(--text-3)}.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}.code-block{margin:0;padding:12px 14px;border-radius:var(--r);background:var(--code-bg);border:1px solid var(--border);font:12.5px/1.6 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;overflow:auto}.code-block.is-err{border-color:var(--danger);color:var(--danger-text)}.badge-draft{background:var(--surface-3);color:var(--text-2)}.badge-published,.badge-active-test{background:var(--success-soft);color:var(--success-text)}.badge-scheduled{background:var(--info-soft);color:var(--info)}.badge-completed,.badge-archived{background:var(--surface-3);color:var(--text-2)}.badge-suspended,.badge-disconnected{background:var(--danger-soft);color:var(--danger-text)}.badge-warn{background:var(--warning-soft);color:var(--warning-text)}.badge-ok{background:var(--success-soft);color:var(--success-text)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--text-3);margin-right:6px}.status-dot.on{background:var(--success)}.status-dot.off{background:var(--danger)}.status-dot.warn{background:var(--warning)}.banner-support{display:flex;gap:12px;align-items:center;padding:11px 16px;border-radius:var(--r);background:var(--warning-soft);border:1px solid var(--warning);color:var(--warning-text);font-weight:600;margin-bottom:16px;flex-wrap:wrap}.banner-support small{font-weight:400;color:var(--text-2)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.form-grid .full{grid-column:1 / -1}.textarea{width:100%;min-height:90px;padding:10px 12px;border-radius:9px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);resize:vertical;font-family:inherit}.textarea.mono{font-family:var(--mono);font-size:12.5px;min-height:120px}.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft-2)}.repeater{display:flex;flex-direction:column;gap:10px}.repeater-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;gap:10px;align-items:start;padding:10px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2)}.repeater-row .textarea{min-height:64px}.repeater-row.ex{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.check{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text-2);padding-top:8px;white-space:nowrap}.q-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.q-row{display:grid;grid-template-columns:auto 34px minmax(0,1fr) auto auto auto auto;gap:12px;align-items:center;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r)}.q-row.dragging{opacity:.45}.q-row.drop-target{border-color:var(--accent)}.drag-handle{cursor:grab;color:var(--text-3);background:none;border:0;padding:4px}.pos{width:28px;height:28px;border-radius:7px;background:var(--surface-3);display:grid;place-items:center;font-weight:600;font-size:12.5px}.diff-add{background:var(--success-soft)}.diff-del{background:var(--danger-soft)}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.kpi-grid .stat{padding:14px 16px}.kpi-grid .stat-value{font-size:24px}.attention-item{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--border)}.attention-item:last-child{border:0}.attention-item .grow{flex:1;min-width:0}.live-pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--success);margin-right:6px;animation:fx 1.4s infinite}@keyframes fx{0%,to{opacity:1}50%{opacity:.3}}.college-pick{display:flex;flex-direction:column;gap:10px}.college-opt{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border-strong);border-radius:var(--r);cursor:pointer;background:var(--surface-2)}.college-opt:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.college-opt input{accent-color:var(--accent)}.subtle-link{font-size:12.5px;color:var(--text-3)}.divider-label{display:flex;align-items:center;gap:10px;color:var(--text-3);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;margin:22px 0 14px}.divider-label:before,.divider-label:after{content:"";flex:1;height:1px;background:var(--border)}.warn-box{padding:12px 14px;border-radius:var(--r);background:var(--warning-soft);border:1px solid var(--warning);color:var(--text);display:flex;gap:10px}.warn-box .i{color:var(--warning);margin-top:2px}.preview-frame-admin{border:1px dashed var(--border-strong);border-radius:var(--r-lg);padding:14px}@media(max-width:1280px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:960px){.q-row{grid-template-columns:auto minmax(0,1fr)}.q-row>.btn-row{grid-column:1 / -1;flex-wrap:wrap!important;justify-content:flex-start!important}.topbar .search-box{display:none}.form-grid{grid-template-columns:1fr}.q-row{grid-template-columns:auto minmax(0,1fr) auto}.q-row .hide-md{display:none}.repeater-row,.repeater-row.ex,.kv{grid-template-columns:1fr}}@media(max-width:600px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.college-chip{display:none}}.form-grid>*,.toolbar>*{min-width:0}.input[type=datetime-local],.input[type=date]{min-width:0;max-width:100%}.form-grid .check{white-space:normal}.sp-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sp-level{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r);cursor:pointer;background:var(--surface-2)}.sp-level input{position:absolute;opacity:0;pointer-events:none}.sp-level.is-on{border-color:var(--accent);background:var(--accent-soft)}.sp-level:focus-within{outline:2px solid var(--accent);outline-offset:2px}.sp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;align-items:start}.sp-switch{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2);cursor:pointer}.sp-switch small{display:block;color:var(--text-3);font-size:12px;margin-top:2px}.sp-switch em{font-style:normal;font:600 11px var(--mono);color:var(--text-3)}.sp-switch em.on{color:var(--success-text)}.sp-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.table td.is-bad{color:var(--danger-text);font-weight:600}@media(max-width:960px){.sp-levels,.sp-grid,.sp-actions{grid-template-columns:minmax(0,1fr)}}.lr-head{display:grid;gap:14px;margin-bottom:14px}.lr-title{display:flex;gap:14px;align-items:center}.lr-title h1{font-size:22px}.lr-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.lr-live{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13px}.lr-live-bad{color:var(--warning-text);font-weight:500}.lr-pass{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px}.lr-pass .input{width:96px}.lr-counters{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;margin-top:14px}.lr-counters .stat{padding:12px 14px}.lr-counters .stat-value{font-size:22px}.lr-passna{grid-column:span 2}.lr-empty{display:flex;gap:8px;align-items:center;margin-top:14px;color:var(--text-2);font-size:13px}.lr-stack{display:flex;height:14px;border-radius:8px;overflow:hidden;background:var(--border-strong);gap:2px}.lr-stack>span{min-width:4px;transition:flex-grow .5s var(--ease)}.lr-seg-submitted{background:var(--success)}.lr-seg-progress{background:var(--info)}.lr-seg-terminated{background:var(--danger)}.lr-seg-idle{background:var(--text-3);opacity:.45}.lr-legend{display:flex;flex-wrap:wrap;gap:6px 18px;list-style:none;margin:12px 0 0;padding:0;font-size:13px}.lr-swatch{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px}.lr-bars{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;align-items:end;height:120px}.lr-bar{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:4px;font-size:12px}.lr-bar i{display:block;width:100%;max-width:56px;background:var(--accent);border-radius:6px 6px 0 0;transition:height .5s var(--ease)}.lr-bar small{color:var(--text-3)}.lr-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 14px}.lr-chips{display:flex;flex-wrap:wrap;gap:6px}.lr-sort{display:flex;gap:6px;align-items:center}.lr-count{margin:0;padding:0 14px 8px;font-size:12px}.lr-table .truncate{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lr-click{cursor:pointer}.lr-click:hover{background:var(--surface-2)}.lr-name{min-width:140px}.lr-menu{padding:6px;min-width:260px;display:grid;gap:6px}.lr-scope{border:0;margin:0;padding:0;display:grid;gap:6px}.lr-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px 18px;margin:0}.lr-facts dt{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.lr-facts dd{margin:2px 0 0;font-weight:500;overflow-wrap:anywhere}.lr-code{margin-top:12px}.lr-code summary{cursor:pointer;font-weight:500;padding:4px 0}.lr-timeline{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px;font-size:13px}.lr-timeline li{padding:6px 10px;border-left:3px solid var(--border-strong);background:var(--surface-2);border-radius:0 6px 6px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.lr-timeline li.is-strict{border-left-color:var(--warning)}.lr-widget .card-head{align-items:center}.lr-widget-nums{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.lr-widget-nums div{display:grid}.lr-widget-nums strong{font-size:24px}.lr-widget-nums span{font-size:12px;color:var(--text-3)}.lr-review-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.lr-review-counts>div{display:grid;gap:4px;padding:12px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2)}.lr-review-counts small{color:var(--text-3);font-size:.68rem;font-weight:800;letter-spacing:.08em}.lr-review-counts strong{font-size:1.45rem;font-variant-numeric:tabular-nums}.lr-review-counts>div:first-child strong{color:var(--bad)}.lr-review-counts>div:nth-child(2) strong{color:var(--ok)}.lr-review-counts>div:nth-child(3) strong{color:var(--warn)}.lr-review-list{display:grid;gap:10px;padding:0;list-style:none}.lr-review-list>li{padding:14px;border:1px solid var(--border);border-left:3px solid var(--bad);border-radius:var(--r);background:var(--surface-2)}.lr-review-list>li.review-cleared{border-left-color:var(--ok)}.lr-review-list>li.review-info{border-left-color:var(--warn)}.lr-review-event{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.lr-review-event p{margin:4px 0 0;color:var(--text-3)}.lr-review-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 16px;margin:12px 0 0}.lr-review-meta dt{color:var(--text-3);font-size:.72rem}.lr-review-meta dd{margin:2px 0 0;overflow-wrap:anywhere}.lr-review-meta .lr-review-reason{grid-column:span 2}.lr-termination-note{padding:10px 12px;border-radius:var(--r);background:var(--warn-fill);color:var(--warn)}.lr-not-attended{padding:16px;border:1px dashed var(--border);border-radius:var(--r)}.lr-not-attended .card-head{padding:0 0 12px}.lr-absent-toggle{padding:8px 10px;border:1px solid var(--border);border-radius:var(--r);white-space:nowrap}@media(max-width:760px){.lr-review-counts,.lr-review-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.lr-review-meta .lr-review-reason{grid-column:span 2}}@media(max-width:1280px){.lr-counters{grid-template-columns:repeat(4,minmax(0,1fr))}.lr-counters-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.lr-counters,.lr-widget-nums{grid-template-columns:repeat(2,minmax(0,1fr))}.lr-passna{grid-column:span 2}}.kv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px 24px;margin:0;padding:6px 4px}.kv-grid dt{font-size:12px;color:var(--text-3)}.kv-grid dd{margin:2px 0 0;overflow-wrap:anywhere}@font-face{font-family:Archivo;src:url(/assets/archivo-var-DY7AcnAa.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}:root{--ink-900: #201e1d;--ink-800: #2d2b2b;--ink-700: #444141;--ink-600: #605d5d;--ink-500: #7d7979;--ink-400: #9b9797;--ink-300: #bab6b6;--ink-200: #d7d3d3;--ink-150: #e4e1e0;--ink-100: #eeecea;--paper-2: #ece8e5;--paper: #f6f5f3;--white: #ffffff;--red-100: #fff2ef;--red-200: #ffe0d9;--red-300: #ffc4b8;--red-400: #ff9783;--red-500: #ec3013;--red-600: #dd2b0f;--red-700: #ae1800;--red-800: #7c1405;--learn-50: #eaf1fd;--learn-200: #c3d5f6;--learn-500: #4a77d4;--learn-800: #1d3a78;--practice-50: #f0ecfc;--practice-200: #d6ccf4;--practice-500: #7a5fd0;--practice-800: #3b2a78;--mentor-50: #e6f6ee;--mentor-200: #bfe6d2;--mentor-500: #2f9a6c;--mentor-800: #165339;--assess-50: #fdede4;--assess-200: #f6cfb9;--assess-500: #d0703c;--assess-800: #74340f;--analytics-50: #e4f4f7;--analytics-200: #b9e1e9;--analytics-500: #2a93a8;--analytics-800: #134c58;--achieve-50: #fcf4df;--achieve-200: #f1dca6;--achieve-500: #b88a1c;--achieve-800: #5e440a;--rose-50: #fdecef;--rose-200: #f6c8d1;--rose-500: #c9475f;--rose-800: #6e1a2b;--ok: #1f7a52;--ok-fill: var(--mentor-50);--ok-line: var(--mentor-200);--warn: #8a5a08;--warn-fill: var(--achieve-50);--warn-line: var(--achieve-200);--bad: var(--red-700);--bad-fill: var(--red-100);--bad-line: var(--red-300);--info-ink: var(--learn-800);--info-fill: var(--learn-50);--info-line: var(--learn-200);--font-display: "Archivo", system-ui, sans-serif;--font-ui: "Archivo", system-ui, sans-serif;--font-code: "Cascadia Code", "SF Mono", ui-monospace, Consolas, "Liberation Mono", monospace;--fs-display: 56px;--lh-display: .98;--fs-h1: 34px;--fs-h2: 22px;--fs-h3: 17px;--fs-body: 14px;--fs-small: 12.5px;--fs-label: 11px;--fs-code: 13px;--fw-regular: 400;--fw-semibold: 600;--fw-heavy: 800;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10: 40px;--s-12: 48px;--rule: 2px;--rule-color: color-mix(in srgb, var(--ink-900) 82%, transparent);--hair: color-mix(in srgb, var(--ink-900) 13%, transparent);--hair-strong: color-mix(in srgb, var(--ink-900) 24%, transparent);--ease-out: cubic-bezier(.2, 0, 0, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-emph: cubic-bezier(.3, 0, 0, 1.15);--dur-press: 90ms;--dur-micro: .16s;--dur-panel: .26s;--dur-page: .32s;--dur-chart: .6s;--sidebar-w: 256px;--sidebar-w-collapsed: 64px;--topbar-h: 60px}:root,:root[data-theme=light]{color-scheme:light;--on-ink: var(--white);--bg: var(--paper);--surface: var(--white);--surface-2: var(--ink-100);--surface-3: var(--ink-150);--border: var(--hair);--border-strong: var(--hair-strong);--text: var(--ink-900);--text-2: var(--ink-600);--text-3: #6f6b6a;--accent: var(--red-500);--accent-strong: var(--red-600);--accent-text: var(--red-700);--accent-soft: var(--red-100);--accent-soft-2: var(--red-200);--on-accent: var(--white);--success: var(--mentor-500);--success-text: var(--ok);--success-soft: var(--ok-fill);--danger: var(--red-600);--danger-text: var(--bad);--danger-soft: var(--bad-fill);--warning: var(--achieve-500);--warning-text: var(--warn);--warning-soft: var(--warn-fill);--info: var(--learn-500);--info-soft: var(--info-fill);--shadow: 0 1px 0 var(--hair), 0 10px 28px -12px color-mix(in srgb, var(--ink-800) 28%, transparent);--shadow-pop: 0 18px 48px -16px color-mix(in srgb, var(--ink-800) 38%, transparent);--code-bg: #fbfaf8;--chart-1: var(--practice-500);--chart-2: var(--mentor-500);--chart-3: var(--assess-500);--chart-4: var(--learn-500);--chart-5: var(--analytics-500);--chart-6: var(--achieve-500);--chart-grid: var(--hair);--font: var(--font-ui);--mono: var(--font-code);--r-sm: 0px;--r: 0px;--r-lg: 0px;--ease: var(--ease-out)}:root,[data-module]{--mod-fill: var(--ink-100);--mod-line: var(--ink-200);--mod: var(--ink-700);--mod-ink: var(--ink-900)}[data-module=learn]{--mod-fill: var(--learn-50);--mod-line: var(--learn-200);--mod: var(--learn-500);--mod-ink: var(--learn-800)}[data-module=practice]{--mod-fill: var(--practice-50);--mod-line: var(--practice-200);--mod: var(--practice-500);--mod-ink: var(--practice-800)}[data-module=mentor]{--mod-fill: var(--mentor-50);--mod-line: var(--mentor-200);--mod: var(--mentor-500);--mod-ink: var(--mentor-800)}[data-module=assess]{--mod-fill: var(--assess-50);--mod-line: var(--assess-200);--mod: var(--assess-500);--mod-ink: var(--assess-800)}[data-module=analytics]{--mod-fill: var(--analytics-50);--mod-line: var(--analytics-200);--mod: var(--analytics-500);--mod-ink: var(--analytics-800)}[data-module=achieve]{--mod-fill: var(--achieve-50);--mod-line: var(--achieve-200);--mod: var(--achieve-500);--mod-ink: var(--achieve-800)}[data-module=alert]{--mod-fill: var(--rose-50);--mod-line: var(--rose-200);--mod: var(--rose-500);--mod-ink: var(--rose-800)}[data-module=neutral]{--mod-fill: var(--white);--mod-line: var(--hair-strong);--mod: var(--ink-700);--mod-ink: var(--ink-900)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:var(--fw-regular) var(--fs-body)/1.55 var(--font-ui);-webkit-font-smoothing:antialiased;font-feature-settings:"ss01","tnum" 0}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:var(--fw-heavy);letter-spacing:-.02em;line-height:1.1;text-wrap:balance}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);letter-spacing:-.01em}p{margin:0;text-wrap:pretty}a{color:var(--ink-900);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:var(--hair-strong);transition:text-decoration-color var(--dur-micro) var(--ease-out),color var(--dur-micro)}a:hover{color:var(--accent-text);text-decoration-color:currentColor}code{font-family:var(--font-code);font-size:.92em;background:var(--surface-2);padding:1px 5px;border-radius:0}::selection{background:var(--red-200)}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:0}.num,.tnum{font-variant-numeric:tabular-nums}.display{font:var(--fw-heavy) var(--fs-display)/var(--lh-display) var(--font-display);letter-spacing:-.035em}.eyebrow,.kicker,.label{font:var(--fw-semibold) var(--fs-label)/1.2 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.kicker{color:var(--mod-ink, var(--text-3))}.i{width:1.15em;height:1.15em;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:square;stroke-linejoin:miter;vertical-align:-.2em}.skip-link{position:absolute;left:8px;top:-48px;background:var(--ink-900);color:var(--white);padding:8px 14px;z-index:200;font-weight:600;text-decoration:none}.skip-link:focus{top:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app,#secure-test,.tp-standalone{container:app / inline-size}.app{display:flex;min-height:100vh;background:var(--bg)}.sidebar{width:var(--sidebar-w);flex:none;position:sticky;top:0;height:100vh;z-index:40;display:flex;flex-direction:column;background:var(--white);border-right:var(--rule) solid var(--rule-color);transition:width var(--dur-panel) var(--ease-out),transform var(--dur-panel) var(--ease-out)}.brand,.admin-brand{display:flex;align-items:center;gap:10px;padding:0 16px;height:var(--topbar-h);flex:none;border-bottom:var(--rule) solid var(--rule-color);color:var(--ink-900);text-decoration:none;font:var(--fw-heavy) 17px/1 var(--font-display);letter-spacing:-.02em}.brand:hover,.admin-brand:hover{color:var(--ink-900)}.brand-mark{width:30px;height:30px;flex:none;display:grid;place-items:center;background:var(--ink-900);color:var(--white);border-radius:0;border:0}.brand-mark .i{font-size:17px}.brand-text small{display:block;margin-top:3px;font:var(--fw-regular) 10.5px/1.1 var(--font-ui);letter-spacing:.02em;color:var(--text-3)}.pill-admin{display:inline-block;margin-left:4px;padding:2px 5px;font:var(--fw-heavy) 9.5px/1 var(--font-ui);letter-spacing:.1em;background:var(--accent);color:var(--white);vertical-align:2px}.sidebar .nav{flex:1;overflow-y:auto;padding:8px 0 16px;display:flex;flex-direction:column;gap:0;border:0;align-items:stretch}.sidebar .nav-label{display:block;padding:18px 16px 6px;font:var(--fw-semibold) 10.5px/1 var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.sidebar .nav a{position:relative;display:flex;align-items:center;gap:12px;min-height:40px;padding:0 16px;color:var(--ink-700);font:var(--fw-semibold) 13.5px/1.2 var(--font-ui);text-decoration:none;transition:background var(--dur-micro) var(--ease-out),color var(--dur-micro)}.sidebar .nav a .i{font-size:17px;color:var(--ink-500);transition:color var(--dur-micro)}.sidebar .nav a .nav-swatch{margin-left:auto;width:8px;height:8px;background:var(--mod);flex:none;transition:transform var(--dur-micro) var(--ease-out)}.sidebar .nav a:hover{background:var(--mod-fill);color:var(--ink-900)}.sidebar .nav a:hover .i{color:var(--mod-ink)}.sidebar .nav a:active{background:var(--mod-line)}.sidebar .nav a[aria-current=page]{background:var(--mod-fill);color:var(--mod-ink);box-shadow:inset 0 calc(-1 * var(--rule)) 0 var(--mod-line),inset 0 var(--rule) 0 var(--mod-line)}.sidebar .nav a[aria-current=page] .i{color:var(--mod-ink)}.sidebar .nav a[aria-current=page] .nav-swatch{transform:scale(1.5)}.sidebar .nav a .nav-badge{margin-left:auto;font:var(--fw-semibold) 11px/1 var(--font-ui);padding:3px 6px;background:var(--ink-900);color:var(--white)}.sidebar-college{display:flex;gap:10px;align-items:center;padding:12px 16px;border-top:1px solid var(--hair);font-size:12px}.sidebar-college span{display:block;color:var(--text-3);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em}.sidebar-foot{padding:0;border-top:var(--rule) solid var(--rule-color)}.sidebar-foot button{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:0 16px;border:0;background:none;color:var(--ink-700);font:var(--fw-semibold) 13px var(--font-ui);cursor:pointer;text-align:left;transition:background var(--dur-micro)}.sidebar-foot button:hover{background:var(--ink-100)}.app.is-collapsed .sidebar{width:var(--sidebar-w-collapsed)}.app.is-collapsed .brand-text,.app.is-collapsed .nav a span,.app.is-collapsed .nav-label,.app.is-collapsed .sidebar-foot span,.app.is-collapsed .nav-swatch,.app.is-collapsed .sidebar-college div{display:none}.app.is-collapsed .nav a{justify-content:center;padding:0}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:var(--topbar-h);position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;padding:0 24px;background:color-mix(in srgb,var(--white) 92%,transparent);-webkit-backdrop-filter:saturate(1.2) blur(8px);backdrop-filter:saturate(1.2) blur(8px);border-bottom:var(--rule) solid var(--rule-color)}.topbar-title{min-width:0;flex:1;display:flex;flex-direction:column;justify-content:center}.topbar-title strong{font:var(--fw-heavy) 16px/1.2 var(--font-display);letter-spacing:-.015em}.topbar-actions{display:flex;align-items:center;gap:8px}.menu-btn{display:none}.breadcrumbs{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-3)}.breadcrumbs a{color:var(--text-2);text-decoration:none}.breadcrumbs a:hover{color:var(--ink-900);text-decoration:underline}.breadcrumbs [aria-current=page]{color:var(--ink-900);font-weight:600}.breadcrumbs .i{font-size:11px}.search-box,.cmdk-trigger{display:flex;align-items:center;gap:8px;height:36px;min-width:260px;padding:0 8px 0 12px;background:var(--paper);border:1px solid var(--hair-strong);color:var(--text-3);cursor:text;transition:border-color var(--dur-micro),background var(--dur-micro)}.search-box:hover,.cmdk-trigger:hover{border-color:var(--ink-700);background:var(--white)}.search-box input{flex:1;border:0;background:none;outline:none;color:var(--ink-900);font:inherit}.kbd{display:inline-flex;align-items:center;height:20px;padding:0 6px;font:var(--fw-semibold) 11px/1 var(--font-code);color:var(--ink-700);background:var(--white);border:1px solid var(--hair-strong);box-shadow:0 1px 0 var(--hair-strong)}.college-chip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 10px;border:1px solid var(--hair);font-size:12.5px}.sync-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-2)}.sync-chip i{width:7px;height:7px;background:var(--ok)}.sync-chip.is-saving i{background:var(--warning);animation:ccBlink 1s steps(2) infinite}.sync-chip.is-error i{background:var(--danger)}.page{width:100%;max-width:1440px;margin:0 auto;padding:28px 32px 72px;animation:osPageIn var(--dur-page) var(--ease-out) both}.page--ws{max-width:none;padding:0;animation:none}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:16px;margin-bottom:24px;border-bottom:var(--rule) solid var(--rule-color)}.page-head h1{font-size:var(--fs-h1)}.page-head p{color:var(--text-2);margin-top:6px;max-width:64ch}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--ink-900) 40%,transparent);z-index:35;opacity:0;pointer-events:none;transition:opacity var(--dur-panel)}.avatar,.avatar-img{width:34px;height:34px;border-radius:0;flex:none}.avatar{display:grid;place-items:center;background:var(--ink-900);color:var(--white);font:var(--fw-heavy) 13px var(--font-ui);border:0;cursor:pointer}.avatar-img{object-fit:cover;background:var(--ink-150);filter:grayscale(1) contrast(1.05)}.identity{display:flex;align-items:center;gap:10px;height:40px;padding:0 10px 0 3px;border:1px solid transparent;background:transparent;cursor:pointer;text-align:left;transition:border-color var(--dur-micro),background var(--dur-micro)}.identity:hover{border-color:var(--hair-strong);background:var(--white)}.identity-text{display:flex;flex-direction:column;min-width:0;line-height:1.2}.identity-text strong{font-size:13px;font-weight:600}.identity-text small{font:11px var(--font-code);color:var(--text-3)}.menu-wrap{position:relative}.menu{position:absolute;right:0;top:calc(100% + 6px);min-width:240px;padding:4px 0;background:var(--white);border:var(--rule) solid var(--rule-color);box-shadow:var(--shadow-pop);z-index:60;transform-origin:top right;animation:osPop var(--dur-micro) var(--ease-out)}.menu-head{padding:10px 14px;border-bottom:1px solid var(--hair);margin-bottom:4px}.menu-head strong{display:block}.menu a,.menu button,.menu .menu-item{display:flex;width:100%;align-items:center;gap:10px;min-height:36px;padding:0 14px;border:0;background:none;color:var(--ink-900);cursor:pointer;text-align:left;text-decoration:none;font:inherit}.menu .menu-item{flex-direction:column;align-items:flex-start;justify-content:center;padding:8px 14px}.menu a:hover,.menu button:hover{background:var(--ink-100);color:var(--ink-900)}.badge-count{position:absolute;top:3px;right:3px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;background:var(--accent);color:var(--white);font:var(--fw-heavy) 10px/1 var(--font-ui)}.bell-wrap .btn-icon{position:relative}.btn{position:relative;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;min-height:38px;padding:0 14px;border:1px solid transparent;border-radius:0;cursor:pointer;font:var(--fw-heavy) 13.5px/1 var(--font-ui);letter-spacing:-.005em;text-decoration:none;white-space:nowrap;background:transparent;color:var(--ink-900);transition:background var(--dur-micro) var(--ease-out),border-color var(--dur-micro),color var(--dur-micro),transform var(--dur-press) var(--ease-out),box-shadow var(--dur-micro)}.btn:hover{text-decoration:none;color:inherit}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn .i{font-size:16px}.btn>.i:last-child:not(:first-child){margin-left:auto;transition:transform var(--dur-micro) var(--ease-out)}.btn:hover>.i:last-child:not(:first-child){transform:translate(3px)}.btn-primary{background:var(--accent);color:var(--white)}.btn-primary:hover:not(:disabled){background:var(--red-600);color:var(--white)}.btn-primary:active:not(:disabled){background:var(--red-700)}.btn-ink{background:var(--ink-900);color:var(--white)}.btn-ink:hover:not(:disabled){background:var(--ink-700);color:var(--white)}.btn-secondary{background:var(--white);border-color:var(--ink-900);color:var(--ink-900)}.btn-secondary:hover:not(:disabled){background:var(--ink-100)}.btn-secondary:active:not(:disabled){background:var(--ink-150)}.btn-ghost{border-color:var(--hair-strong);color:var(--ink-900);background:transparent}.btn-ghost:hover:not(:disabled){background:var(--ink-100);border-color:var(--ink-700)}.btn-tone{background:var(--mod-fill);border-color:var(--mod-line);color:var(--mod-ink)}.btn-tone:hover:not(:disabled){background:var(--mod-line);color:var(--mod-ink)}.btn-danger{background:var(--white);border-color:var(--bad);color:var(--bad)}.btn-danger:hover:not(:disabled){background:var(--bad);color:var(--white)}.btn-sm{min-height:30px;padding:0 10px;font-size:12.5px}.btn-lg{min-height:48px;padding:0 18px;font-size:15px}.btn-block{width:100%}.btn-icon{width:36px;height:36px;min-height:36px;padding:0;justify-content:center;border:1px solid var(--hair-strong);background:var(--white);color:var(--ink-700)}.btn-icon:hover{background:var(--ink-100);color:var(--ink-900);border-color:var(--ink-700)}.btn .spinner,.spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.btn.is-busy{pointer-events:none}.btn.is-done{background:var(--ok);color:var(--white);border-color:var(--ok)}.btn.is-done .i{animation:osSeal var(--dur-panel) var(--ease-emph) both}.link-btn{background:none;border:0;padding:0;color:var(--ink-900);cursor:pointer;font-weight:600;text-decoration:underline;text-underline-offset:3px}.btn-row{display:flex;gap:8px;flex-wrap:wrap}.badge,.tag{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 7px;border-radius:0;font:var(--fw-semibold) 11.5px/1 var(--font-ui);white-space:nowrap;background:var(--ink-100);color:var(--ink-700);border:1px solid transparent}.badge .i{font-size:12px}.badge-easy{background:var(--mentor-50);color:var(--mentor-800);border-color:var(--mentor-200)}.badge-moderate{background:var(--achieve-50);color:var(--achieve-800);border-color:var(--achieve-200)}.badge-advanced{background:var(--rose-50);color:var(--rose-800);border-color:var(--rose-200)}.badge-accent{background:var(--red-100);color:var(--red-700)}.badge-tone{background:var(--mod-fill);color:var(--mod-ink);border-color:var(--mod-line)}.badge-correct,.badge-solved,.badge-submitted,.badge-verified{background:var(--ok-fill);color:var(--ok);border-color:var(--ok-line)}.badge-wrong,.badge-error,.badge-terminated{background:var(--bad-fill);color:var(--bad);border-color:var(--bad-line)}.badge-simulated,.badge-attempted,.badge-expired{background:var(--warn-fill);color:var(--warn);border-color:var(--warn-line)}.badge-active,.badge-hint,.badge-solution,.badge-similar,.badge-info{background:var(--info-fill);color:var(--info-ink);border-color:var(--info-line)}.badge-new{background:var(--white);color:var(--ink-600);border-color:var(--hair-strong)}.badge-ai{background:var(--white);color:var(--mentor-800);border:1px dashed var(--mentor-500)}.badge-live:before{content:"";width:6px;height:6px;background:currentColor;animation:ccBlink 1.2s steps(2) infinite}.tabs{display:flex;gap:0;border-bottom:var(--rule) solid var(--rule-color);overflow-x:auto;scrollbar-width:none}.tab{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:0 16px;margin-bottom:calc(-1 * var(--rule));border:0;background:none;color:var(--ink-600);font:var(--fw-semibold) 13px var(--font-ui);cursor:pointer;white-space:nowrap;transition:color var(--dur-micro)}.tab:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--ink-900);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-panel) var(--ease-out)}.tab:hover{color:var(--ink-900);background:var(--ink-100)}.tab[aria-selected=true]{color:var(--ink-900)}.tab[aria-selected=true]:after{transform:scaleX(1)}.tab-count{font:var(--fw-semibold) 11px var(--font-ui);padding:2px 6px;background:var(--ink-150);color:var(--ink-700)}.tabpanel{padding-top:20px;animation:osFade var(--dur-panel) var(--ease-out)}.chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border:1px solid var(--hair-strong);border-radius:0;background:var(--white);color:var(--ink-700);font:var(--fw-semibold) 12.5px var(--font-ui);cursor:pointer;text-decoration:none;transition:background var(--dur-micro),border-color var(--dur-micro),color var(--dur-micro)}.chip:hover{border-color:var(--ink-700);color:var(--ink-900)}.chip[aria-pressed=true],.chip.is-on{background:var(--ink-900);border-color:var(--ink-900);color:var(--white)}.seg{display:inline-flex;border:1px solid var(--ink-900);background:var(--white)}.seg-opt,.seg button{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:0;background:none;font:var(--fw-semibold) 12.5px var(--font-ui);color:var(--ink-700);cursor:pointer}.seg-opt+.seg-opt,.seg button+button{border-left:1px solid var(--ink-900)}.seg [aria-pressed=true],.seg-opt:has(input:checked){background:var(--ink-900);color:var(--white)}.filterbar{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;padding:12px 0;margin-bottom:0;border-bottom:1px solid var(--hair);background:none}.filterbar .group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card{position:relative;background:var(--white);border:1px solid var(--hair-strong);border-radius:0;padding:20px}:where(.card){display:block}.card-flush{padding:0;overflow:hidden}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid var(--hair)}.card-head h2{font-size:var(--fs-h3);letter-spacing:-.01em}.card-head p{color:var(--text-2);font-size:var(--fs-small);margin-top:3px}a.card{color:inherit;text-decoration:none;transition:border-color var(--dur-micro),background var(--dur-micro),transform var(--dur-micro) var(--ease-out)}a.card:hover{border-color:var(--ink-900);color:inherit}a.card:active{transform:translateY(1px)}.panel{position:relative;background:var(--mod-fill);border:1px solid var(--mod-line);padding:20px;color:var(--ink-900)}.panel:before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:3px;background:var(--mod)}.panel-head{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}.panel-head .kicker{color:var(--mod-ink)}.panel-head h2,.panel-head h3{font-size:var(--fs-h3)}a.panel{display:block;text-decoration:none;transition:background var(--dur-micro) var(--ease-out),border-color var(--dur-micro)}a.panel:hover{border-color:var(--mod);color:var(--ink-900)}a.panel:hover .panel-go{transform:translate(4px)}.panel-go{transition:transform var(--dur-micro) var(--ease-out)}.os-grid{display:grid;gap:var(--rule);background:var(--rule-color);border:var(--rule) solid var(--rule-color)}.os-grid>*{background:var(--white);min-width:0}.os-grid>[data-module]{background:var(--mod-fill)}.os-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.os-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.os-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.os-grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}.os-section{margin-top:40px}.os-section-head{display:flex;align-items:baseline;gap:16px;padding-bottom:10px;margin-bottom:0;border-bottom:var(--rule) solid var(--rule-color)}.os-section-head h2{font-size:var(--fs-h2)}.os-section-head .os-index{font:var(--fw-heavy) 12px var(--font-code);color:var(--text-3)}.os-section-head .spacer{flex:1}.hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;padding:0 0 28px;margin:0;border:0;border-bottom:var(--rule) solid var(--rule-color);background:none;border-radius:0;animation:osRise var(--dur-page) var(--ease-out) both}.hero h1{font:var(--fw-heavy) var(--fs-display)/var(--lh-display) var(--font-display);letter-spacing:-.035em;margin:8px 0 12px}.hero p{color:var(--text-2);max-width:56ch;font-size:15px}.hero-meta{display:flex;gap:0;flex-wrap:wrap;margin:20px 0;border-top:1px solid var(--hair)}.hero-meta>div{padding:12px 24px 0 0;margin-right:24px;border-right:1px solid var(--hair)}.hero-meta>div:last-child{border-right:0}.stat{min-width:0;padding:18px 20px;background:var(--white);border:0;border-radius:0;animation:osRise var(--dur-page) var(--ease-out) backwards}.stat[data-module]{background:var(--mod-fill)}.stat-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;color:var(--mod-ink, var(--text-3))}.stat-top .label{margin:0;color:var(--mod-ink, var(--text-3))}.stat-value{font:var(--fw-heavy) 38px/1 var(--font-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.stat-value small{font:var(--fw-regular) 15px var(--font-ui);color:var(--text-3);letter-spacing:0}.stat-sub{font-size:12px;color:var(--text-2);margin-top:8px}.stat-provenance{display:inline-flex;gap:4px;align-items:center;margin-top:10px;font-size:11px;color:var(--text-3)}.ic-accent{color:var(--accent)}.ic-success{color:var(--ok)}.ic-warning{color:var(--warn)}.ic-danger{color:var(--bad)}.ic-info{color:var(--info-ink)}.bar{height:6px;border-radius:0;background:color-mix(in srgb,var(--ink-900) 10%,transparent);overflow:hidden}.bar>span{display:block;height:100%;border-radius:0;background:var(--mod, var(--ink-900));transform-origin:left;animation:osGrow var(--dur-chart) var(--ease-out) both;transition:width var(--dur-chart) var(--ease-out)}.bar.is-success>span{background:var(--ok)}.ring{--p: 0;--size: 132px;--track: color-mix(in srgb, var(--ink-900) 10%, transparent);width:var(--size);height:var(--size);border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(var(--mod, var(--ink-900)) calc(var(--p) * 1%),var(--track) 0)}.ring:before{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;background:var(--paper);border-radius:50%}.ring>div{position:relative;text-align:center;line-height:1}.ring strong{display:block;font:var(--fw-heavy) 30px var(--font-display);letter-spacing:-.03em}.ring small{font:var(--fw-semibold) 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.ring-sm{--size: 52px}.ring-sm:before{top:6px;right:6px;bottom:6px;left:6px}.ring-sm strong{font-size:13px}.steps-meter{display:grid;grid-auto-flow:column;gap:2px}.steps-meter i{height:8px;background:color-mix(in srgb,var(--ink-900) 10%,transparent)}.steps-meter i.on{background:var(--mod)}.list{display:flex;flex-direction:column;gap:0;border-top:var(--rule) solid var(--rule-color)}.list-row{display:flex;align-items:center;gap:14px;min-height:56px;padding:10px 12px;background:var(--white);border:0;border-bottom:1px solid var(--hair);border-radius:0;color:inherit;text-decoration:none;transition:background var(--dur-micro)}a.list-row:hover{background:var(--mod-fill, var(--ink-100));color:inherit}.list-row .grow{flex:1;min-width:0}.list-row .title{font-weight:600;display:block}.status-ic{width:28px;height:28px;border-radius:0;display:grid;place-items:center;flex:none;background:var(--ink-100);color:var(--ink-500)}.status-ic.is-solved,.status-ic.is-correct{background:var(--ok-fill);color:var(--ok)}.status-ic.is-attempted,.status-ic.is-wrong,.status-ic.is-error,.status-ic.is-simulated{background:var(--warn-fill);color:var(--warn)}.table-wrap{position:relative;overflow-x:auto;max-width:100%;background:var(--white);border-top:var(--rule) solid var(--rule-color)}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{position:sticky;top:0;z-index:1;text-align:left;font:var(--fw-semibold) 10.5px var(--font-ui);text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);padding:10px 12px;background:var(--white);border-bottom:var(--rule) solid var(--rule-color);white-space:nowrap}.table th[aria-sort]{cursor:pointer}.table th[aria-sort=ascending]:after{content:" ↑"}.table th[aria-sort=descending]:after{content:" ↓"}.table td{padding:11px 12px;border-bottom:1px solid var(--hair);vertical-align:middle}.table tbody tr{transition:background var(--dur-micro)}.table tbody tr:hover{background:var(--ink-100)}.table tbody tr[aria-selected=true]{background:var(--mod-fill)}.table tbody th{text-align:left;font:var(--fw-semibold) 13px var(--font-ui);text-transform:none;letter-spacing:0;color:var(--ink-900);padding:11px 12px;background:none;border-bottom:1px solid var(--hair);position:static}.table .r{text-align:right;font-variant-numeric:tabular-nums}.table-dense td,.table-dense tbody th{padding-block:7px}.timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.timeline li{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--hair)}.timeline li:last-child{border:0}.timeline time{color:var(--text-3);font:11.5px var(--font-code);width:56px;flex:none}.metric-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--hair)}.metric-row:last-child{border:0}.insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;background:var(--hair)}.insight{background:var(--white);padding:12px 14px}.insight strong{display:block;margin-top:2px}.field{margin-bottom:16px}.field label{display:block;font:var(--fw-semibold) 12.5px var(--font-ui);margin-bottom:6px;color:var(--ink-800)}.input,.select,textarea.input{width:100%;min-height:40px;padding:8px 12px;border-radius:0;border:1px solid var(--hair-strong);background:var(--white);color:var(--ink-900);font:inherit;caret-color:var(--accent);transition:border-color var(--dur-micro),box-shadow var(--dur-micro)}.input:hover,.select:hover{border-color:var(--ink-600)}.input:focus,.select:focus,.input:focus-visible{outline:none;border-color:var(--ink-900);box-shadow:inset 0 0 0 1px var(--ink-900)}.input[aria-invalid=true]{border-color:var(--bad);box-shadow:inset 0 0 0 1px var(--bad)}.field-error{display:flex;gap:6px;align-items:center;margin-top:6px;font-size:12px;color:var(--bad)}.hint-text{font-size:12px;color:var(--text-3);margin-top:6px}.check{display:inline-flex;gap:8px;align-items:center;cursor:pointer}.check input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;margin:0;border:1.5px solid var(--ink-700);background:var(--white);display:grid;place-items:center;transition:background var(--dur-micro)}.check input:checked{background:var(--ink-900);border-color:var(--ink-900)}.check input:checked:after{content:"";width:8px;height:4px;border:2px solid var(--white);border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}.switch{position:relative;width:36px;height:20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;background:var(--ink-300);cursor:pointer;transition:background var(--dur-micro)}.switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--white);transition:transform var(--dur-micro) var(--ease-out)}.switch:checked{background:var(--ink-900)}.switch:checked:after{transform:translate(16px)}.alert{display:flex;gap:10px;padding:12px 14px;border-radius:0;border:1px solid var(--hair-strong);background:var(--white)}.alert .i{margin-top:2px;font-size:17px;flex:none}.alert-danger{background:var(--bad-fill);border-color:var(--bad-line);color:var(--bad)}.alert-success{background:var(--ok-fill);border-color:var(--ok-line);color:var(--ok)}.alert-warning{background:var(--warn-fill);border-color:var(--warn-line);color:var(--warn)}.alert-info{background:var(--info-fill);border-color:var(--info-line);color:var(--info-ink)}.toasts{position:fixed;right:20px;bottom:20px;display:flex;flex-direction:column;gap:8px;z-index:100;max-width:min(380px,calc(100vw - 40px))}.toast{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:var(--ink-900);color:var(--white);border:0;border-radius:0;box-shadow:var(--shadow-pop);animation:osToastIn var(--dur-panel) var(--ease-out)}.toast.success .i:first-child{color:var(--mentor-200)}.toast.error .i:first-child{color:var(--red-300)}.toast.info .i:first-child{color:var(--learn-200)}.toast .toast-x{margin-left:auto;background:none;border:0;color:var(--ink-300);cursor:pointer}.toast.is-leaving{animation:osToastOut var(--dur-micro) var(--ease-in-out) forwards}.empty{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;padding:32px 24px;color:var(--text-2);border:1px dashed var(--hair-strong);background:var(--white)}.empty .i{font-size:24px;color:var(--ink-500);margin:0 0 6px}.empty strong{display:block;color:var(--ink-900);font:var(--fw-heavy) 16px var(--font-display)}.skeleton{height:14px;border-radius:0;background:linear-gradient(90deg,var(--ink-100) 0,var(--ink-150) 40%,var(--ink-100) 80%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.modal-backdrop,.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:16px;z-index:120;background:color-mix(in srgb,var(--ink-900) 46%,transparent);animation:osFade var(--dur-micro) var(--ease-out)}.modal,.dialog{width:min(480px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:24px;background:var(--white);border:var(--rule) solid var(--rule-color);border-radius:0;box-shadow:var(--shadow-pop);animation:osDialogIn var(--dur-panel) var(--ease-out)}.modal h2{font-size:var(--fs-h2);margin-bottom:8px}.modal .btn-row,.dialog-actions{margin-top:24px;padding-top:16px;border-top:1px solid var(--hair);justify-content:flex-start;display:flex;gap:8px}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100vw);z-index:110;background:var(--white);border-left:var(--rule) solid var(--rule-color);box-shadow:var(--shadow-pop);display:flex;flex-direction:column;animation:osDrawerIn var(--dur-panel) var(--ease-out)}.drawer-head{display:flex;align-items:center;gap:12px;height:var(--topbar-h);padding:0 20px;border-bottom:var(--rule) solid var(--rule-color)}.drawer-body{flex:1;overflow:auto;padding:20px}.drawer-foot{padding:14px 20px;border-top:1px solid var(--hair);display:flex;gap:8px}[data-tip]{position:relative}[data-tip]:hover:after,[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:0;padding:6px 9px;background:var(--ink-900);color:var(--white);font:var(--fw-semibold) 11.5px/1.4 var(--font-ui);width:max-content;max-width:260px;white-space:normal;z-index:70;pointer-events:none;animation:osFade var(--dur-micro)}.cmdk-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:130;display:flex;justify-content:center;align-items:flex-start;padding-top:12vh;background:color-mix(in srgb,var(--ink-900) 36%,transparent);animation:osFade var(--dur-micro)}.cmdk{width:min(640px,calc(100vw - 32px));background:var(--white);border:var(--rule) solid var(--rule-color);box-shadow:var(--shadow-pop);animation:osDialogIn var(--dur-panel) var(--ease-out)}.cmdk-input{display:flex;align-items:center;gap:10px;height:56px;padding:0 16px;border-bottom:var(--rule) solid var(--rule-color)}.cmdk-input input{flex:1;border:0;outline:none;font:var(--fw-semibold) 17px var(--font-ui);background:none}.cmdk-list{max-height:50vh;overflow:auto;padding:6px 0}.cmdk-group{padding:10px 16px 4px;font:var(--fw-semibold) 10.5px var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.cmdk-item{display:flex;align-items:center;gap:12px;min-height:42px;padding:0 16px;cursor:pointer;color:var(--ink-900)}.cmdk-item .cmdk-swatch{width:8px;height:8px;background:var(--mod);flex:none}.cmdk-item small{margin-left:auto;color:var(--text-3);font-size:12px}.cmdk-item[aria-selected=true]{background:var(--mod-fill)}.cmdk-foot{display:flex;gap:14px;padding:8px 16px;border-top:1px solid var(--hair);font-size:11.5px;color:var(--text-3)}.chart{width:100%;position:relative;min-height:120px}.chart svg{display:block;width:100%;height:auto;overflow:visible}.chart text{fill:var(--text-3);font:11px var(--font-ui)}.chart .grid-line{stroke:var(--chart-grid);stroke-width:1}.chart .axis-line{stroke:var(--ink-900);stroke-width:2}.chart rect.bar-rect{transform-box:fill-box;transform-origin:bottom;animation:osBarIn var(--dur-chart) var(--ease-out) backwards}.chart path.line{stroke-dasharray:var(--len, 2000);stroke-dashoffset:0;animation:osDraw calc(var(--dur-chart) * 1.4) var(--ease-out) backwards}.chart-tip{position:absolute;pointer-events:none;background:var(--ink-900);color:var(--white);border:0;border-radius:0;padding:6px 10px;font-size:12px;z-index:10;white-space:nowrap;box-shadow:var(--shadow-pop);transform:translate(-50%,-110%)}.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--text-2);margin-top:12px}.legend i{display:inline-block;width:10px;height:10px;border-radius:0;margin-right:6px;vertical-align:-1px}.chart-meta{display:flex;gap:12px;font-size:11.5px;color:var(--text-3);margin-top:8px}.ws{display:flex;flex-direction:column;height:calc(100vh - var(--topbar-h));min-height:560px;background:var(--white);border:0;border-radius:0;overflow:hidden}.ws-bar{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 16px;border-bottom:var(--rule) solid var(--rule-color);flex-wrap:wrap;background:var(--white)}.ws-bar .titleblock{flex:1;min-width:200px}.ws-bar h1{font:var(--fw-heavy) 16px/1.2 var(--font-display)}.ws-bar .meta{display:flex;gap:6px;margin-top:3px;flex-wrap:wrap;align-items:center}.pill-stat{display:inline-flex;gap:6px;align-items:center;height:26px;padding:0 8px;border-radius:0;background:var(--ink-100);font-size:12px;color:var(--ink-700)}.pill-stat strong{color:var(--ink-900);font-weight:600}.ws-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(320px,var(--ws-left, 42%)) var(--rule) minmax(0,1fr)}.ws-left{min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--white)}.ws-left .tabs{padding:0 8px;flex:none}.ws-left .tabpanel{flex:1;overflow-y:auto;padding:20px 24px;min-height:0}.ws-split{background:var(--rule-color);cursor:col-resize;border:0;padding:0;transition:background var(--dur-micro)}.ws-split:hover,.ws-split:focus-visible,.ws-split.is-dragging{background:var(--accent);outline:none}.ws-right{min-width:0;min-height:0;display:flex;flex-direction:column}.editor-wrap{flex:1;min-height:220px;display:flex;flex-direction:column;background:var(--code-bg)}.editor-top{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 12px;border-bottom:1px solid var(--hair);background:var(--white);font-size:12.5px}.editor-top .file{font-family:var(--font-code)}.gutter{padding:14px 10px 14px 14px;text-align:right;color:var(--ink-400);font:13px/1.65 var(--font-code);-webkit-user-select:none;user-select:none;white-space:pre;background:var(--code-bg);border-right:1px solid var(--hair)}.code-input{border:0;resize:none;background:transparent;color:var(--ink-900);font:var(--fs-code)/1.65 var(--font-code);padding:14px 16px 14px 12px;-moz-tab-size:4;tab-size:4;white-space:pre;overflow:auto;height:100%;width:100%;outline:none}.editor:focus-within{box-shadow:inset 0 0 0 2px var(--practice-200)}.editor-foot{display:flex;gap:14px;align-items:center;min-height:28px;padding:0 12px;font:11.5px var(--font-code);color:var(--text-3);border-top:1px solid var(--hair);background:var(--white);flex-wrap:wrap}.result-wrap{flex:none;height:38%;min-height:180px;display:flex;flex-direction:column;border-top:var(--rule) solid var(--rule-color);background:var(--white)}.result-wrap .tabs{padding:0 8px}.result-wrap .tabpanel{flex:1;overflow:auto;padding:14px 16px;min-height:0}.output{margin:0;font:var(--fs-code)/1.6 var(--font-code);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink-900);background:var(--code-bg);border:1px solid var(--hair);border-radius:0;padding:12px 14px}.output.is-error{color:var(--bad);border-color:var(--bad-line);background:var(--bad-fill)}.run-banner{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 14px;border-radius:0;font:var(--fw-heavy) 14px var(--font-ui);margin-bottom:12px;animation:osRise var(--dur-panel) var(--ease-out)}.run-banner.correct{background:var(--ok-fill);color:var(--ok);box-shadow:inset 0 3px 0 var(--ok)}.run-banner.wrong,.run-banner.error{background:var(--bad-fill);color:var(--bad);box-shadow:inset 0 3px 0 var(--bad)}.run-banner.simulated,.run-banner.unavailable{background:var(--warn-fill);color:var(--warn);box-shadow:inset 0 3px 0 var(--warning)}.run-banner.running{background:var(--practice-50);color:var(--practice-800);box-shadow:inset 0 3px 0 var(--practice-500)}.run-banner .badge{margin-left:auto}.compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:2px;background:var(--hair)}.compare>*{background:var(--white);padding:10px}.ai-panel{margin-top:12px;padding:14px 16px;border:1px dashed var(--mentor-500);border-radius:0;background:var(--mentor-50)}.ai-h{margin:12px 0 4px;font:var(--fw-semibold) 11px var(--font-ui);text-transform:uppercase;letter-spacing:.08em;color:var(--mentor-800)}.ai-warning{display:flex;gap:8px;margin:8px 0 0;padding:8px 10px;background:var(--warn-fill);color:var(--warn);font-size:12.5px}.success-box{margin-top:12px;padding:14px;border:1px solid var(--ok-line);background:var(--ok-fill);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.help-card,.hint-card{border:1px solid var(--hair-strong);border-radius:0;padding:14px;margin-bottom:10px;background:var(--white)}.help-card.is-locked{border-style:dashed;color:var(--text-2)}.hint-card .hint-number{font:var(--fw-semibold) 11px var(--font-ui);text-transform:uppercase;letter-spacing:.08em;color:var(--mentor-800)}.attempt-dots{display:flex;gap:4px;margin:8px 0 14px}.attempt-dots i{width:14px;height:6px;border-radius:0;background:var(--ink-200)}.attempt-dots i.on{background:var(--accent)}.practice-editor,textarea.editor-plain{width:100%;resize:vertical;border:1px solid var(--hair-strong);border-radius:0;background:var(--code-bg);color:var(--ink-900);font:13.5px/1.6 var(--font-code);padding:14px;-moz-tab-size:4;tab-size:4}.case-row{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 72px;gap:0;border-bottom:1px solid var(--hair);font:12.5px var(--font-code)}.case-row>*{padding:8px 10px;border-right:1px solid var(--hair)}.tp,:root[data-theme=light] .tp,:root[data-theme=dark] .tp{--tp-bg: var(--paper);--tp-plate: var(--white);--tp-plate-hi: var(--white);--tp-code: var(--code-bg);--tp-line: var(--hair);--tp-line-strong: var(--hair-strong);--tp-gold: var(--achieve-800);--tp-gold-soft: var(--achieve-50);--tp-glow: none;--tp-display: var(--font-display);--tp-mono: var(--font-code);--tp-inset: var(--paper);--tp-tint: var(--ink-100);--tp-warm-plate: var(--assess-50);--tp-gold-plate: var(--achieve-50);--tp-good-plate: var(--mentor-50);--tp-accent-plate: var(--assess-50);--tp-gutter: var(--ink-100)}.tp-hero:before,.tp-sweep,.tp-scan,.tp-entry:before,.tp-start .btn-primary:after{display:none!important}.tp-hero,.tp-plate-hi,.tp-stat,.tp-card,.tp-row,.tp-table-wrap,.tp-cat,.tp-start,.tp-empty,.tp-note,.tp-active{border-radius:0!important}.tp-hero,.tp-plate-hi{border:0;border-bottom:var(--rule) solid var(--rule-color);padding:8px 0 28px}.tp-start{border:var(--rule) solid var(--rule-color);background:var(--assess-50);box-shadow:none}.tp-start .btn-primary{background:var(--accent);border-radius:0}.tp-stat:before{height:3px;background:var(--bar, var(--assess-500))}.tp-dot,.tp-id small i{border-radius:0;box-shadow:none;animation:ccBlink 1.6s steps(2) infinite}.tp-entry h1,.tp-steps li{color:var(--ink-900)}.tp-entry p{color:var(--text-2)}.tp-steps li{background:var(--white);border-color:var(--hair-strong);border-radius:0}.tp-progress{background:var(--ink-150);border-radius:0}#secure-test.tp-cockpit,:root[data-theme=light] #secure-test.tp-cockpit{background:var(--paper)}.tp-rail{background:var(--white);border-bottom:var(--rule) solid var(--rule-color)}.tp-timer{border-radius:0;background:var(--ink-900);border-color:var(--ink-900)}.tp-timer strong{color:var(--white)}.tp-timer.is-low{background:var(--accent);border-color:var(--accent);animation:osPulseOnce .6s var(--ease-out)}.tp-qnav button{border-radius:0}.tp-qnav button[aria-current=true]{background:var(--ink-900);color:var(--white)}.tp-qnav button.is-answered{box-shadow:inset 0 -3px 0 var(--ok)}.tp-qnav button.is-review{box-shadow:inset 0 -3px 0 var(--achieve-500)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes ccBlink{50%{opacity:.25}}@keyframes osFade{0%{opacity:0}}@keyframes osPop{0%{opacity:0;transform:translateY(-4px) scale(.98)}}@keyframes osRise{0%{opacity:0;transform:translateY(8px)}}@keyframes osPageIn{0%{opacity:0;transform:translateY(6px)}}@keyframes osDialogIn{0%{opacity:0;transform:translateY(12px)}}@keyframes osDrawerIn{0%{transform:translate(24px);opacity:0}}@keyframes osToastIn{0%{opacity:0;transform:translate(16px)}}@keyframes osToastOut{to{opacity:0;transform:translate(16px)}}@keyframes osGrow{0%{transform:scaleX(0)}}@keyframes osBarIn{0%{transform:scaleY(0)}}@keyframes osDraw{0%{stroke-dashoffset:var(--len, 2000)}}@keyframes osSeal{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.12);opacity:1}to{transform:scale(1)}}@keyframes osPulseOnce{0%{transform:scale(1)}40%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes pop{0%{opacity:0;transform:translateY(4px)}}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}@keyframes fade{0%{opacity:0}}.os-stagger>*{animation:osRise var(--dur-page) var(--ease-out) backwards;animation-delay:calc(var(--i, 0) * 40ms)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}.badge-live:before,.tp-dot,.sync-chip.is-saving i{animation:none!important}}@container app (max-width: 1280px){.os-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}}@container app (max-width: 1180px){.os-grid-4,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-split{grid-template-columns:minmax(0,1fr)}.hero h1{font-size:44px}}@container app (max-width: 960px){.sidebar{position:fixed;left:0;top:0;transform:translate(-100%);width:min(300px,86vw)!important;box-shadow:var(--shadow-pop)}.app.nav-open .sidebar{transform:none}.app.nav-open .scrim{opacity:1;pointer-events:auto}.app.is-collapsed .brand-text,.app.is-collapsed .nav a span,.app.is-collapsed .nav-label,.app.is-collapsed .nav-swatch{display:revert}.menu-btn{display:inline-flex}.collapse-btn{display:none}.topbar{padding:0 12px}.search-box,.cmdk-trigger{min-width:0;width:36px;padding:0;justify-content:center}.search-box input,.cmdk-trigger span,.cmdk-trigger .kbd{display:none}.page{padding:20px 16px 72px}.hero{grid-template-columns:1fr}.hero .ring{display:none}.os-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.ws{height:auto;min-height:0}.ws-body{display:flex;flex-direction:column}.ws-split{display:none}.ws-left .tabpanel{max-height:48vh}.editor-wrap{min-height:360px}.result-wrap{height:auto;min-height:220px}.tp-rules-layout,.secure-grid{grid-template-columns:1fr}}@container app (max-width: 600px){.os-grid-2,.os-grid-3,.os-grid-4,.os-grid-6,.grid-2,.grid-3,.grid-4,.insight-grid{grid-template-columns:minmax(0,1fr)}.hero h1{font-size:36px}.stat-value{font-size:30px}.page-head h1{font-size:26px}.topbar-title .kicker,.hide-sm{display:none!important}.list-row{flex-wrap:wrap}.btn{min-height:44px}.btn-sm{min-height:36px}.tab{min-height:44px}}:root[data-theme=dark]{color-scheme:dark;--ink-900: #f1f5ff;--ink-800: #dfe6f7;--ink-700: #c3cce3;--ink-600: #a8b3cd;--ink-500: #8d99b6;--ink-400: #707d9a;--ink-300: #51607e;--ink-200: #35415c;--ink-150: #2a3650;--ink-100: #222d46;--paper: #0b1220;--paper-2: #222d46;--white: #162136;--on-ink: #0b1220;--red-100: #3a1713;--red-200: #54211a;--red-300: #7a2f25;--red-400: #e8705c;--red-500: #ff6a4f;--red-600: #ff7f68;--red-700: #ff9c88;--red-800: #ffc0b3;--learn-50: #16223f;--learn-200: #2a3d6e;--learn-500: #8aa8f0;--learn-800: #c8d7fb;--practice-50: #1f1a3a;--practice-200: #3a3170;--practice-500: #a794ee;--practice-800: #d9d0fa;--mentor-50: #12291f;--mentor-200: #1f4a37;--mentor-500: #5fc79b;--mentor-800: #b4ecd2;--assess-50: #33201a;--assess-200: #5e3a2a;--assess-500: #ee9a6c;--assess-800: #f8d3bd;--analytics-50: #112a30;--analytics-200: #1e4a55;--analytics-500: #5cc0d3;--analytics-800: #b3e6ef;--achieve-50: #302811;--achieve-200: #574715;--achieve-500: #e0b54a;--achieve-800: #f3dfa2;--rose-50: #33161d;--rose-200: #5f2a38;--rose-500: #ec7d94;--rose-800: #f6c3cf;--ok: #66d4a5;--warn: #e8be66;--bad: var(--red-700);--hair: color-mix(in srgb, #ffffff 13%, transparent);--hair-strong: color-mix(in srgb, #ffffff 26%, transparent);--rule-color: color-mix(in srgb, #f1f5ff 70%, transparent);--bg: var(--paper);--surface: #162136;--surface-2: #1e2a42;--surface-3: #26334f;--border: var(--hair);--border-strong: var(--hair-strong);--text: #f1f5ff;--text-2: #a8b3cd;--text-3: #8d99b6;--accent: #90a9ff;--accent-strong: #aabcff;--accent-text: #aabcff;--accent-soft: #1e2a42;--accent-soft-2: #2a3a5e;--on-accent: #0b1220;--success: var(--mentor-500);--success-text: var(--ok);--success-soft: var(--ok-fill);--danger: var(--red-600);--danger-text: var(--bad);--danger-soft: var(--bad-fill);--warning: var(--achieve-500);--warning-text: var(--warn);--warning-soft: var(--warn-fill);--info: var(--learn-500);--info-soft: var(--info-fill);--shadow: 0 1px 0 var(--hair), 0 10px 28px -12px rgba(0, 0, 0, .6);--shadow-pop: 0 18px 48px -16px rgba(0, 0, 0, .75);--code-bg: #0f1829;--chart-grid: var(--hair)}:root[data-theme=dark] body{background:var(--bg);color:var(--text)}:root[data-theme=dark] ::selection{background:#2f4580;color:#fff}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{color-scheme:dark}:root[data-theme=dark] img.invert-dark{filter:invert(1) hue-rotate(180deg)}:root[data-theme=dark] .monaco-editor,:root[data-theme=dark] .monaco-editor-background{background-color:#0f1829}.theme-switch{display:inline-flex;border:1px solid var(--hair-strong);background:var(--surface)}.theme-switch .theme-opt{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:0;border-right:1px solid var(--hair-strong);background:transparent;color:var(--text);font:var(--fw-semibold) 13px var(--font-ui);cursor:pointer}.theme-switch .theme-opt:last-child{border-right:0}.theme-switch .theme-opt[data-active=true]{background:var(--ink-900);color:var(--on-ink)}.theme-switch .theme-opt:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.theme-switch.is-compact .theme-opt span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.menu-theme{padding:8px 12px;display:grid;gap:6px;border-top:1px solid var(--hair)}.menu-theme>span{font:var(--fw-semibold) 11px var(--font-ui);text-transform:uppercase;letter-spacing:.06em;color:var(--text-2)}@media(prefers-reduced-motion:no-preference){.page-enter{animation:cc-page-in var(--dur-page) var(--ease-out) both}.card-stagger>*{animation:cc-rise .36s var(--ease-out) both}.card-stagger>*:nth-child(2){animation-delay:40ms}.card-stagger>*:nth-child(3){animation-delay:80ms}.card-stagger>*:nth-child(4){animation-delay:.12s}.card-stagger>*:nth-child(5){animation-delay:.16s}.card-stagger>*:nth-child(n+6){animation-delay:.2s}}@keyframes cc-page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes cc-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.auth-theme{position:absolute;top:14px;right:14px;z-index:5}.auth-main-wrap{position:relative}@media(prefers-reduced-motion:no-preference){.os-grid>*{animation:cc-rise .38s var(--ease-out) both}.os-grid>*:nth-child(2){animation-delay:50ms}.os-grid>*:nth-child(3){animation-delay:.1s}.os-grid>*:nth-child(4){animation-delay:.15s}.os-grid>*:nth-child(5){animation-delay:.2s}.os-grid>*:nth-child(n+6){animation-delay:.25s}}.sidebar .nav .nav-group{display:flex;flex-direction:column}.sidebar .nav a small.nav-state,.sidebar .nav .nav-disabled small.nav-state{margin-left:auto;padding:2px 5px;font:var(--fw-semibold) 9.5px/1 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);border:1px solid var(--hair-strong);background:var(--white)}.sidebar .nav a small.nav-state+.nav-swatch{margin-left:8px}.sidebar .nav .nav-disabled{display:flex;align-items:center;gap:12px;min-height:40px;padding:0 16px;color:var(--text-3);font:var(--fw-semibold) 13.5px/1.2 var(--font-ui);cursor:not-allowed}.sidebar .nav .nav-disabled .i{font-size:17px;color:var(--ink-400)}.sidebar .nav a span,.sidebar .nav .nav-disabled span{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app.is-collapsed .sidebar .nav small.nav-state{display:none}.app.is-collapsed .sidebar .nav .nav-disabled{justify-content:center;padding:0}.app.is-collapsed .sidebar .nav .nav-disabled span{display:none}.app.is-collapsed .sidebar-foot button{justify-content:center;padding:0}.sidebar-foot button:disabled{opacity:.45;cursor:not-allowed}.sidebar .nav a[data-tip]:hover:after{left:calc(100% + 8px);bottom:auto;top:50%;transform:translateY(-50%)}.platform-mobile-close{top:10px;right:10px;border-radius:0}.topbar .search-box .kbd{cursor:pointer;font-family:var(--font-code)}.topbar-title .breadcrumbs{line-height:1}.cmdk-trigger{font:inherit;text-align:left}.cmdk-trigger .i{color:var(--ink-500)}.cmdk-item[aria-disabled=true]{cursor:default;color:var(--text-3)}.stack-sm{display:flex;flex-direction:column;gap:8px}.row-wrap{display:flex;flex-wrap:wrap;gap:8px;align-items:center}#main:focus,#main:focus-visible{outline:none}.sidebar .nav a:has(small.nav-state) .nav-swatch{display:none}.sidebar .nav a small.nav-state,.sidebar .nav .nav-disabled small.nav-state{padding:2px 4px;font-size:9px;letter-spacing:.06em}.sidebar .nav a,.sidebar .nav .nav-disabled{gap:10px}.resume-strip{display:flex;align-items:center;gap:20px;padding:16px 20px;margin-bottom:20px}.resume-strip>.i{font-size:22px;color:var(--mod-ink)}.resume-strip .grow{flex:1;min-width:0}.resume-strip strong{display:block;font-size:17px;margin-top:2px}.practice-search{min-width:320px;background:var(--white);cursor:text}.result-line{display:flex;gap:8px;align-items:center;padding:10px 0;font-size:12.5px;color:var(--text-2);white-space:nowrap}.library-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;align-items:start}.library-rail{display:flex;flex-direction:column;gap:28px;min-width:0}.library-rail .os-section-head{padding-bottom:8px}.library-rail .os-section-head h2{font-size:var(--fs-h3)}.topic-row{display:block;width:100%;padding:10px 0;border:0;border-bottom:1px solid var(--hair);background:none;text-align:left;cursor:pointer;font:inherit;color:inherit}.topic-row:hover{background:var(--ink-100)}.topic-row[aria-pressed=true]{background:var(--mod-fill);box-shadow:inset 3px 0 0 var(--mod);padding-left:8px}.topic-row-top{display:flex;justify-content:space-between;font-size:13px;margin-bottom:6px}.gate-text{margin-top:6px;font-size:13px}.mono-cell{color:var(--text-3);font-family:var(--font-code);font-size:12px}.table-foot{display:flex;align-items:center;gap:8px;padding:12px;border-top:var(--rule) solid var(--rule-color);font-size:12.5px;color:var(--text-2)}.grow{flex:1;min-width:0}.level-lab{display:flex;flex-direction:column;min-height:176px;border:0}.level-lab-foot{margin-top:auto;padding-top:16px;display:grid;gap:6px}@container app (max-width: 1180px){.library-grid{grid-template-columns:minmax(0,1fr)}.practice-search{min-width:0;flex:1 1 100%}}@container app (max-width: 600px){.resume-strip{flex-wrap:wrap}}.search-box,.topbar .search-box{position:relative;width:auto;border-radius:0}.search-box input,.search-box input:focus{width:auto;flex:1;min-width:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;outline:none}.search-box .i{position:static;top:auto;left:auto;color:var(--ink-500);pointer-events:none}.search-box:focus-within{border-color:var(--ink-900);box-shadow:inset 0 0 0 1px var(--ink-900);background:var(--white)}.admin-cmdk{display:none}@container app (max-width: 960px){.topbar .search-box{display:none}.admin-cmdk{display:inline-flex}}a.panel.resume-strip{display:flex}.page-head>.row-wrap{margin-left:auto}@container app (max-width: 960px){.filterbar .search-box{width:100%;min-width:0;padding:0 8px 0 12px;justify-content:flex-start}.filterbar .search-box input{display:block}.filterbar .group{width:100%}}@container app (max-width: 600px){.topbar-title .breadcrumbs{display:none}.resume-strip{flex-direction:column;align-items:flex-start;gap:10px}.resume-strip .btn{width:100%}}.ws-bar{gap:10px 14px}.ws-bar .titleblock{flex:1 1 260px}.ws-bar .meta{margin:0}.ws-stats .pill-stat.is-open{background:var(--mentor-50);color:var(--mentor-800)}.ws-nav{display:flex;gap:6px}.ws-nav .btn-icon{text-decoration:none}.ws-desc{display:flex;flex-direction:column;gap:18px;font-size:14px;line-height:1.65}.ws-question{font-weight:600;font-size:15px}.rule-list li .i{color:var(--ink-500)}.editor-top .btn{flex:none}.run-kbd{margin-left:auto;background:transparent;color:var(--white);border-color:color-mix(in srgb,var(--white) 40%,transparent);box-shadow:none}.ws-mobile-tabs{display:none;background:var(--white)}.ws-right{min-width:0}.ws .case-row{font-family:var(--font-code)}.ws-focus-exit{position:fixed;right:16px;bottom:16px;z-index:90}body.ws-focus .sidebar,body.ws-focus .topbar,body.ws-focus .scrim{display:none}body.ws-focus .ws{height:100vh}.tab-count.bad{background:var(--bad-fill);color:var(--bad)}.preview-frame{border-radius:0}@container app (max-width: 960px){.ws-mobile-tabs{display:flex}.ws-body{display:block}.ws-body[data-pane=problem] .ws-right,.ws-body[data-pane=code] .ws-left,.ws-body[data-pane=result] .ws-left,.ws-body[data-pane=code] .result-wrap,.ws-body[data-pane=result] .editor-wrap{display:none}.ws-body[data-pane=problem] .ws-left .tabpanel{max-height:none}.ws-body[data-pane=code] .editor-wrap{min-height:60vh}.ws-body[data-pane=result] .result-wrap{border-top:0;min-height:50vh}.ws-bar .ws-stats{order:5;width:100%}}.help-card.is-locked{opacity:1}.help-card .state.locked{color:var(--text-2)}.help-card{background:var(--white)}.btn-primary{background:var(--red-600)}.btn-primary:hover:not(:disabled){background:var(--red-700)}.btn-primary:active:not(:disabled){background:var(--red-800)}.cmdk-trigger .cmdk-label{flex:1;text-align:left}@container app (max-width: 960px){.cmdk-trigger .cmdk-label{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}@container app (max-width: 600px){.btn{white-space:normal;height:auto;padding-top:10px;padding-bottom:10px;line-height:1.25}.os-section-head{flex-wrap:wrap;row-gap:6px}.os-section-head .spacer{display:none}.os-section-head>.label{flex-basis:100%}}.analytics-two{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px;margin-top:40px}.insight-text{margin-top:8px;font-weight:600}@container app (max-width: 1180px){.analytics-two{grid-template-columns:minmax(0,1fr);gap:28px}}:root,:root[data-theme=light],:root[data-theme=dark]{--chart-3: var(--achieve-500)}.seg [aria-selected=true]{background:var(--ink-900);color:var(--white)}.tp-start .btn-primary,.tp-start.lobby-card .btn-primary{background:var(--red-600);background-image:none;color:var(--white)}.tp-start .btn-primary:hover:not(:disabled){background:var(--red-700)}.seg{max-width:100%;flex-wrap:wrap}.seg button:first-child{border-left:0}:root,:root[data-theme=light],:root[data-theme=dark]{--accent: var(--red-600);--accent-strong: var(--red-700);--accent-text: var(--red-700)}.card p,.card h2,.card h3,.card dd,.card .faint{overflow-wrap:anywhere}:root,:root[data-theme=light],:root[data-theme=dark]{--r-xl: 0px;--shadow-1: var(--shadow);--dur-1: var(--dur-micro);--dur-2: var(--dur-panel);--dur-3: var(--dur-page);--ring: color-mix(in srgb, var(--accent) 35%, transparent);--focus: var(--accent);--text-muted: var(--text-2)}.update-banner{position:fixed;left:16px;bottom:16px;z-index:60;display:flex;align-items:center;gap:12px;max-width:min(92vw,520px);padding:10px 14px;background:var(--ink-900, #201e1d);color:var(--on-ink, #fff);border:1px solid var(--ink-900, #201e1d);font-size:13px}.update-banner .btn{background:var(--white);color:var(--ink-900, #201e1d);white-space:nowrap}@container app (max-width: 600px){.btn-row>.btn-lg{flex:1 1 100%;min-height:44px;justify-content:center;min-width:0!important}}.tp{--tp-gold: var(--achieve-800)}.tp h1,.tp h2,.tp .tp-display{font-family:var(--font-display);letter-spacing:-.025em}.tp .page-head{align-items:flex-end}.assigned-list{border-top:var(--rule) solid var(--rule-color)}.tp-row.assigned-row{display:grid;grid-template-columns:130px minmax(0,1fr) minmax(220px,auto);gap:20px;align-items:center;padding:18px 12px;margin:0;border:0;border-bottom:1px solid var(--hair);border-radius:0;background:var(--white)}.tp-row.assigned-row+.tp-row{margin-top:0}.assigned-row:hover{background:var(--assess-50)}.assigned-row .title{font-size:17px;font-weight:800;letter-spacing:-.01em}.assigned-row .faint{margin-top:6px}.assigned-action{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-start}.tp-active{display:flex;align-items:center;gap:16px;padding:16px 20px;margin-bottom:12px;border:1px solid var(--mod-line);border-radius:0;background:var(--mod-fill);color:var(--ink-900);text-decoration:none}.tp-active-ic{width:38px;height:38px;flex:none;display:grid;place-items:center;background:var(--white);color:var(--assess-800);border-radius:0}.tp-active strong{display:block;font:var(--fw-heavy) 15px var(--font-ui)}.tp-active small{color:var(--text-2);font-size:12.5px}.tp-cards{border-top:0}.tp-card{position:relative;display:flex;flex-direction:column;gap:14px;padding:20px;border:0;border-radius:0;background:var(--white);transition:background var(--dur-micro)}.tp-card:hover{background:var(--assess-50);border:0}.tp-card-head{display:flex;align-items:flex-start;gap:12px}.tp-card-head h3{flex:1;min-width:0;font:var(--fw-heavy) 17px var(--font-display);letter-spacing:-.015em;margin:0}.tp-tags{display:flex;flex-wrap:wrap;gap:6px}.tp-shield{display:flex;align-items:center;gap:7px;margin:-4px 0 0;color:var(--text-3);font-size:12.5px}.tp-shield .i{color:var(--ok);font-size:14px;flex:none}.tp-card-foot{display:flex;align-items:center;gap:12px;margin-top:auto}.tp-ok{display:inline-flex;align-items:center;gap:6px;color:var(--ok);font-size:12px;font-weight:600}.tp-ok i{width:6px;height:6px;background:var(--ok);border-radius:0}.tp-note{margin-top:32px;border-radius:0}.tp-note p{color:inherit}.tp-dot{border-radius:0;box-shadow:none}.tp-rules-layout{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:40px;align-items:start}.lobby-main{padding:0;border:0;background:none;animation:none}.lobby-main h1{font:var(--fw-heavy) 52px/1 var(--font-display);letter-spacing:-.035em;margin:10px 0 14px}.lobby-main .lead{color:var(--text-2);max-width:62ch;font-size:15px;margin-top:14px}.lobby-main .tp-tags{margin-top:14px}.lobby-facts{margin-top:28px}.lobby-facts .stat-value{font-size:30px;margin-top:10px}.lobby-details,.lobby-private{padding:18px 20px;margin-top:24px;border:1px solid var(--hair-strong);border-radius:0;background:var(--white)}.lobby-details h2,.lobby-private h2{margin:0 0 10px;font:var(--fw-semibold) 11px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.lobby-details p,.lobby-private p{color:var(--text-2);margin-top:8px}.lobby-private{background:var(--assess-50);border-color:var(--assess-200);margin:0 0 12px;padding:14px 16px}.lobby-private h2{color:var(--assess-800)}.tp-rules.lobby-rules{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0}.lobby-rules li{display:flex;gap:14px;padding:14px 16px 14px 0;border:0;border-bottom:1px solid var(--hair);border-radius:0;background:none;color:var(--text-2);font-size:13px}.lobby-rules li strong{display:block;color:var(--ink-900);font-weight:800}.lobby-rule-n{font:var(--fw-heavy) 13px var(--font-code);color:var(--assess-800);width:22px;flex:none}.tp-fine{color:var(--text-3);font-size:12.5px;margin-top:12px;max-width:72ch}.tp-start.lobby-card{position:sticky;top:76px;padding:0;border:var(--rule) solid var(--rule-color);border-radius:0;background:var(--assess-50);box-shadow:none;animation:none}.lobby-card-head{padding:20px 22px;border-bottom:var(--rule) solid var(--rule-color);background:var(--white)}.lobby-card-head h2{margin:12px 0 6px;font-size:var(--fs-h2);font-weight:800}.lobby-card-head p{color:var(--text-2);font-size:13px}.tp-facts{display:grid;gap:8px;margin:0;padding:14px 22px;border:0;border-bottom:1px solid var(--assess-200);border-radius:0;background:none}.tp-facts span{display:flex;justify-content:space-between;font-size:12.5px;color:var(--text-2)}.tp-facts strong{color:var(--ink-900);font:var(--fw-semibold) 12.5px var(--font-code)}.lobby-checks{list-style:none;margin:0;padding:0}.lobby-checks li{display:flex;gap:12px;align-items:flex-start;padding:14px 22px;border-bottom:1px solid var(--assess-200)}.lobby-checks .status-ic{width:24px;height:24px;flex:none}.lobby-checks strong{display:block;font-size:13.5px}.lobby-checks li div span{font-size:12px;color:var(--text-2)}.lobby-card-actions{padding:18px 22px 22px;display:grid;gap:8px}.lobby-card-actions .tp-foot,.tp-foot{color:var(--text-2);font-size:12px;margin-top:10px;text-align:left}.tp-launch{display:grid;gap:10px}.tp-launch-note{display:flex;align-items:flex-start;gap:9px;margin:0;padding:10px 12px;border-radius:0;background:var(--white);border:1px solid var(--hair-strong);color:var(--text-2);font-size:12.5px}.tp-launch-note.ok{background:var(--ok-fill);border-color:var(--ok-line);color:var(--ok)}.tp-launch-note.bad{background:var(--bad-fill);border-color:var(--bad-line);color:var(--bad)}.tp-required{max-width:560px;margin:8vh auto 0;padding:32px;border:var(--rule) solid var(--rule-color);border-radius:0;background:var(--assess-50);box-shadow:none;text-align:left}.tp-start-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:0;background:var(--ink-900);border:0;color:var(--white)}.tp-required .tp-start-mark{margin:0 0 16px}.tp-secure-frame{background:var(--paper);color:var(--text)}.tp-secure-head{border-bottom:var(--rule) solid var(--rule-color);background:var(--white);border-radius:0}.tp-result-hero{display:flex;align-items:center;gap:28px;text-align:left;padding:28px;margin-top:0;border:0;border-bottom:var(--rule) solid var(--rule-color);border-radius:0;background:var(--mod-fill);animation:osRise var(--dur-page) var(--ease-out) both}.tp-result-hero:before{display:none}.tp-result-hero.bad,.tp-result-hero.warn{background:var(--mod-fill);border:0;border-bottom:var(--rule) solid var(--rule-color)}.tp-result-seal{display:grid;place-items:center;width:72px;height:72px;margin:0;flex:none;border-radius:0;background:var(--mod);border:0;color:var(--white);animation:osSeal var(--dur-panel) var(--ease-emph) both}.tp-result-hero.bad .tp-result-seal,.tp-result-hero.warn .tp-result-seal{background:var(--mod);color:var(--white)}.tp-result-hero .eyebrow{color:var(--mod-ink)}.tp-result-hero h1{font:var(--fw-heavy) 34px/1.05 var(--font-display);letter-spacing:-.03em;margin:6px 0 8px}.tp-result-hero p{color:var(--text-2);margin-top:4px}.tp-result-stats{margin-top:20px}.tp-section{margin-top:32px;padding:0;border:0;background:none;border-radius:0}.tp-entry{background:var(--paper);color:var(--ink-900)}.tp-entry:before,.tp-scan{display:none}.tp-entry-card{text-align:left}.tp-seal:before,.tp-seal:after{display:none}.tp-seal{margin:0 0 22px;width:62px;height:62px}.tp-seal-core{width:62px;height:62px;border-radius:0;background:var(--ink-900);border:0;color:var(--white)}.tp-entry h1{color:var(--ink-900);font:var(--fw-heavy) 34px var(--font-display)}.tp-entry p,.tp-entry small.note{color:var(--text-2)}.tp-entry .tp-eyebrow{color:var(--assess-800);letter-spacing:.1em}.tp-steps li{border-radius:0;background:var(--white);border:1px solid var(--hair-strong);color:var(--ink-900)}.tp-steps li em{color:var(--ok)}.tp-steps li:nth-child(4){border-color:var(--ink-900)}.tp-steps li:nth-child(4) em{color:var(--ink-900)}.tp-steps .i{color:var(--ok)}.tp-progress{border-radius:0;background:var(--ink-150)}.tp-progress>span{background:var(--assess-500)}.tp-entry button.enter{border-radius:0;border:1px solid var(--ink-900);color:var(--ink-900)}.tp-entry button.enter:hover{background:var(--ink-100);color:var(--ink-900)}#secure-test.tp-cockpit{background:var(--paper);color:var(--text)}.tp-rail{gap:18px;padding:10px 20px;border-bottom:var(--rule) solid var(--rule-color);background:var(--white);animation:none}.tp-id-mark{border-radius:0;background:var(--assess-50);border:1px solid var(--assess-200);color:var(--assess-800)}.tp-id small{color:var(--assess-800);letter-spacing:.1em}.tp-id small i{border-radius:0;box-shadow:none;background:var(--assess-500)}.tp-id strong{font:var(--fw-heavy) 15.5px var(--font-display);letter-spacing:-.015em}.tp-qnav{border-radius:0;background:var(--white);border:1px solid var(--hair-strong);padding:3px}.tp-qnav button{border-radius:0;font-family:var(--font-code)}.tp-qnav button:hover{background:var(--ink-100)}.tp-sig{border-radius:0;background:var(--white);border:1px solid var(--hair-strong);color:var(--text-2)}.tp-sig.ok{background:var(--ok-fill);border-color:var(--ok-line);color:var(--ok)}.tp-sig.bad{background:var(--bad-fill);border-color:var(--bad-line);color:var(--bad)}.tp-sig i{border-radius:0}.tp-timer{border-radius:0;background:var(--ink-900);border:1px solid var(--ink-900)}.tp-timer small{color:var(--ink-300)}.tp-timer strong{color:var(--white);font-family:var(--font-code)}.tp-warnstrip{background:var(--red-600);color:var(--white);border-bottom:0}.tp-body{gap:0;padding:0;background:var(--rule-color)}.tp-left{padding:14px;gap:12px;background:var(--paper);animation:none}.tp-right{padding:14px;background:var(--paper);gap:12px;animation:none;margin-left:var(--rule)}.tp-pane{padding:16px 18px;border:1px solid var(--hair-strong);border-radius:0;background:var(--white)}.tp-pane.is-head{border-color:var(--hair-strong)}.tp-pane.is-complexity{background:var(--practice-50);border-color:var(--practice-200)}.tp-pane.is-secure{background:var(--mentor-50);border-color:var(--mentor-200)}.tp-pane h1{font:var(--fw-heavy) 19px/1.2 var(--font-display)}.tp-pane h2{font:var(--fw-semibold) 10.5px var(--font-ui);letter-spacing:.08em;color:var(--text-3)}.tp-pane.is-complexity h2{color:var(--practice-800)}.tp-pane.is-secure h2{color:var(--mentor-800)}.tp-kv>div,.tp-cx>div,.tp-case,.tp-grid2 span,.tp-violations,.tp-events,.tp-run-row{border-radius:0;background:var(--paper);border-color:var(--hair)}.tp-code{border-radius:0;background:var(--code-bg);border-color:var(--hair)}.tp-code.good{color:var(--ok);border-color:var(--ok-line)}.tp-why{border-radius:0;background:var(--info-fill);border-color:var(--info-line)}.tp-why strong{color:var(--info-ink)}.tp-bullets li:before{border-radius:0;background:var(--assess-500)}.tp-segs i{border-radius:0}.tp-segs i.on{background:var(--bad)}.tp-editor{border-radius:0;border:1px solid var(--hair-strong);background:var(--code-bg);box-shadow:none}.tp-edhead,.tp-edfoot{background:var(--white)}.tp-mini{border-radius:0;border-color:var(--hair-strong)}.tp-select{border-radius:0;border-color:var(--hair-strong);background:var(--white)}.tp-saved{border-radius:0;background:var(--ok-fill);color:var(--ok)}.tp-gutter{background:var(--code-bg);border-right:1px solid var(--hair);color:var(--ink-400)}textarea.tp-textarea{color:var(--ink-900)}textarea.tp-textarea:focus-visible{box-shadow:inset 0 0 0 2px var(--practice-200)}.tp-run{border-radius:0;border:1px solid var(--ink-900);background:var(--white);color:var(--ink-900)}.tp-run:hover:not(:disabled){background:var(--ink-100)}.tp-submit{border-radius:0;background:var(--red-600);color:var(--white)}.tp-submit:hover:not(:disabled){background:var(--red-700);filter:none}.tp-console{border-radius:0;border:1px solid var(--hair-strong);background:var(--white)}.tp-tabs{border-bottom:var(--rule) solid var(--rule-color);padding:0 8px}.tp-tabs button[aria-selected=true]{color:var(--ink-900);border-bottom:4px solid var(--ink-900);margin-bottom:-2px}.tp-runner{border-radius:0;background:var(--ok-fill);color:var(--ok)}.tp-runner.warn{background:var(--warn-fill);color:var(--warn)}.tp-pill{border-radius:0}.tp-case{font-family:var(--font-code)}@container app (max-width: 1180px){.tp-rules-layout{grid-template-columns:minmax(0,1fr);gap:24px}.tp-start.lobby-card{position:static}.lobby-main h1{font-size:40px}}@container app (max-width: 960px){.tp-rules.lobby-rules{grid-template-columns:1fr}.tp-row.assigned-row{grid-template-columns:minmax(0,1fr);gap:12px}}@container app (max-width: 600px){.lobby-main h1{font-size:32px}.tp-result-hero{flex-direction:column;align-items:flex-start;gap:16px}.tp-result-hero h1{font-size:26px}}.exam-q h3,.tp-pane h3{font:var(--fw-semibold) var(--fs-label, 11px)/1.2 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:20px 0 6px}.admin-app .sidebar .nav a{min-height:36px}.admin-app .sidebar-college{display:flex;gap:10px;align-items:center;padding:12px 16px;border-top:1px solid var(--hair);font-size:12px;color:var(--text-2)}.admin-app .sidebar-college strong{display:block;color:var(--ink-900);font-size:12.5px}.admin-app .sidebar-college span{display:block;font:var(--fw-semibold) 10.5px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.college-chip{border-radius:0;background:var(--white);border:1px solid var(--hair);color:var(--text-2)}.college-chip strong{color:var(--ink-900)}.page-admin{max-width:1480px}.page-admin .breadcrumbs{margin-bottom:8px}.badge-count{border-radius:0;background:var(--accent)}.os-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-kpis .stat{padding:16px 18px}.admin-kpis .stat-value{font-size:32px}a.stat-link{display:block;text-decoration:none;color:inherit;transition:background var(--dur-micro)}a.stat-link:hover{background:var(--mod-fill, var(--ink-100));color:inherit}a.stat-link[data-module=neutral]:hover{background:var(--ink-100)}.admin-split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:32px;margin-top:40px}.admin-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.attention-list{list-style:none;margin:0;padding:0}.attention-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--hair);text-decoration:none;color:inherit}.attention-row:hover{background:var(--ink-100)}.attention-row .grow{flex:1;min-width:0}.attention-row strong{display:block;font-size:13.5px}.attention-row .grow>span{font-size:12.5px;color:var(--text-2)}.attention-dot{width:8px;height:8px;margin-top:6px;flex:none;background:var(--achieve-500)}.attention-dot.is-bad{background:var(--red-600)}.attention-row>.i:last-child{color:var(--ink-400);margin-top:3px}.toolbar{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;padding:12px 0;margin-bottom:0;border:0;border-bottom:1px solid var(--hair);background:none;border-radius:0}.toolbar.card{padding:12px 0}.toolbar .field-inline{display:flex;align-items:center;gap:8px}.toolbar label{font:var(--fw-semibold) 11px var(--font-ui);text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.toolbar .input,.toolbar .select{width:auto;min-width:130px;min-height:32px;padding:4px 10px;font-size:13px}.select{min-height:40px;padding:8px 12px;border:1px solid var(--hair-strong);border-radius:0;background:var(--white);color:var(--ink-900);font:inherit}.select:hover{border-color:var(--ink-600)}.select-sm{min-height:32px;padding:4px 10px;font-size:13px;width:auto}.textarea{border-radius:0;border:1px solid var(--hair-strong);background:var(--white);color:var(--ink-900)}.textarea:focus{outline:none;border-color:var(--ink-900);box-shadow:inset 0 0 0 1px var(--ink-900)}.card.card-flush{border:0;background:none}.card.card-flush>.table-wrap{border-top:var(--rule) solid var(--rule-color)}.pager{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:12px 0 0;color:var(--text-2);font-size:12.5px;flex-wrap:wrap}.student-email{display:block;margin:2px 0 0 42px;font-size:11.5px}.table td.is-bad{color:var(--bad);font-weight:700}.table .who{display:flex;align-items:center;gap:10px;min-width:0}.table .who strong{display:block;font-weight:600}.avatar-ph{width:32px;height:32px;border-radius:0;background:var(--ink-900);color:var(--white);display:grid;place-items:center;font-weight:800;font-size:13px;flex:none}.avatar-ph.lg{width:72px;height:72px;font-size:28px}.avatar-lg{width:72px;height:72px;border-radius:0;object-fit:cover;background:var(--ink-150);filter:grayscale(1) contrast(1.05)}.tabs-links{display:flex;gap:0;border-bottom:var(--rule) solid var(--rule-color);margin-bottom:18px;overflow-x:auto;scrollbar-width:none}.tabs-links a{position:relative;padding:0 16px;min-height:42px;display:inline-flex;align-items:center;border-bottom:0;color:var(--ink-600);font:var(--fw-semibold) 13px var(--font-ui);text-decoration:none;white-space:nowrap;margin-bottom:calc(-1 * var(--rule))}.tabs-links a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--ink-900);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-panel) var(--ease-out)}.tabs-links a:hover{background:var(--ink-100);color:var(--ink-900)}.tabs-links a[aria-current=page]{color:var(--ink-900)}.tabs-links a[aria-current=page]:after{transform:scaleX(1)}.drawer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:105;background:color-mix(in srgb,var(--ink-900) 28%,transparent);animation:osFade var(--dur-micro) var(--ease-out)}.drawer{z-index:110}.drawer-sub{display:block;font:12px var(--font-code);color:var(--text-3)}.drawer-body{display:flex;flex-direction:column;gap:20px}.drawer-foot{flex-wrap:wrap}.table tbody tr[aria-selected=true]{background:var(--learn-50)}.wizard-progress{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:var(--rule);background:var(--rule-color);border:var(--rule) solid var(--rule-color);overflow-x:auto}.wizard-step{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:104px;padding:10px 12px;border:0;border-radius:0;cursor:pointer;text-align:left;background:var(--white);color:var(--text-3);font:var(--fw-semibold) 12.5px var(--font-ui)}.wizard-step span{display:block;margin:0;width:auto;height:auto;line-height:1.2;border-radius:0;background:none;color:inherit;font:var(--fw-heavy) 11px var(--font-code)}.wizard-step.is-done{background:var(--assess-50);color:var(--assess-800)}.wizard-step.is-done span{background:none;color:var(--assess-800)}.wizard-step.is-current{background:var(--ink-900);color:var(--white);font-weight:800}.wizard-step.is-current span{color:var(--white)}.wizard-step:hover:not(.is-current){background:var(--assess-200)}.wizard-footer{background:var(--paper);border-top:var(--rule) solid var(--rule-color)}.wizard-category,.wizard-language,.wizard-entry{border-radius:0}.wizard-category.is-selected,.wizard-language.is-selected{border-color:var(--ink-900);box-shadow:inset 0 0 0 1px var(--ink-900)}.wizard-entry:hover,.wizard-entry:focus-visible{border-color:var(--ink-900);box-shadow:none;transform:none}.wizard-entry-action{color:var(--ink-900)}.pdf-drop{border:2px dashed var(--hair-strong)}.pdf-drop:hover,.pdf-drop:focus-within{border-color:var(--ink-900)}.pdf-drop-icon{border-radius:0;background:var(--ink-900);color:var(--white)}.pdf-question-review{border-top:1px solid var(--hair)}.pdf-case-pair pre,.pdf-case-details>pre{border-radius:0;background:var(--code-bg)}.tp-question-time{color:var(--info-ink);background:var(--info-fill);border-color:var(--info-line)}.lr-counters{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--rule);background:var(--rule-color);border:var(--rule) solid var(--rule-color);margin-top:16px}.lr-counters-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lr-counters .stat{padding:14px 16px}.lr-counters .stat-value{font-size:28px}.lr-stack{display:flex;height:12px;border-radius:0;overflow:hidden;background:var(--ink-150);gap:2px;margin-top:2px}.lr-seg-submitted{background:var(--ok)}.lr-seg-progress{background:var(--assess-500)}.lr-seg-terminated{background:var(--red-600)}.lr-seg-idle{background:var(--ink-300);opacity:1}.lr-swatch{border-radius:0}.lr-bar i{border-radius:0;background:var(--assess-500)}.lr-timeline li{border-radius:0;background:var(--paper);border-left:3px solid var(--hair-strong)}.lr-timeline li.is-strict{border-left-color:var(--red-600)}.lr-review-counts>div,.lr-review-list>li,.lr-not-attended,.lr-absent-toggle{border-radius:0}.lr-termination-note,.live-pulse,.lr-widget{border-radius:0}.lr-widget-nums strong{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em}.lr-click:hover{background:var(--assess-50)}.q-row{border-radius:0;border:1px solid var(--hair-strong);background:var(--white)}.q-row.drop-target{border-color:var(--ink-900)}.pos{border-radius:0;background:var(--ink-100)}.repeater-row{border-radius:0;background:var(--white);border:1px solid var(--hair-strong)}.code-block{border-radius:0;background:var(--code-bg);border:1px solid var(--hair)}.code-block.is-err{border-color:var(--bad-line);color:var(--bad);background:var(--bad-fill)}.banner-support{border-radius:0;background:var(--warn-fill);border:1px solid var(--warn-line);color:var(--warn)}.warn-box{border-radius:0;background:var(--warn-fill);border:1px solid var(--warn-line)}.warn-box .i{color:var(--warn)}.college-opt{border-radius:0;background:var(--white);border-color:var(--hair-strong)}.college-opt:has(input:checked){border-color:var(--ink-900);background:var(--ink-100)}.sp-level,.sp-switch{border-radius:0;background:var(--white);border-color:var(--hair-strong)}.sp-level.is-on{border-color:var(--ink-900);background:var(--assess-50)}.badge-draft,.badge-completed,.badge-archived{background:var(--ink-100);color:var(--ink-700)}.badge-published,.badge-active-test{background:var(--ok-fill);color:var(--ok);border-color:var(--ok-line)}.badge-scheduled{background:var(--info-fill);color:var(--info-ink);border-color:var(--info-line)}.badge-suspended,.badge-disconnected{background:var(--bad-fill);color:var(--bad);border-color:var(--bad-line)}.badge-warn{background:var(--warn-fill);color:var(--warn);border-color:var(--warn-line)}.badge-ok{background:var(--ok-fill);color:var(--ok);border-color:var(--ok-line)}.divider-label:before,.divider-label:after{background:var(--hair)}.preview-frame-admin{border-radius:0}@container app (max-width: 1280px){.os-grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}.lr-counters{grid-template-columns:repeat(4,minmax(0,1fr))}.lr-counters-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@container app (max-width: 1180px){.admin-split,.admin-three{grid-template-columns:minmax(0,1fr);gap:28px}}@container app (max-width: 960px){.wizard-progress{grid-template-columns:repeat(8,120px)}.student-email{margin-left:0}}@container app (max-width: 600px){.os-grid-5,.lr-counters,.lr-widget-nums{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer-foot .btn{flex:1 1 100%}}.table td time{white-space:nowrap}.wizard-entry,.wizard-category{display:flex;flex-direction:column;align-items:flex-start;gap:10px}@font-face{font-family:Figtree;src:url(/assets/figtree-var-D_ZTVpCC.woff2) format("woff2");font-weight:300 900;font-display:swap}@font-face{font-family:Plus Jakarta Sans;src:url(/assets/plusjakarta-var-eXO_dkmS.woff2) format("woff2");font-weight:200 800;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/assets/jetbrainsmono-var-6fWv1k7M.woff2) format("woff2");font-weight:100 800;font-display:swap}:root,:root[data-theme=light],:root[data-theme=dark]{--font-display: "Plus Jakarta Sans", system-ui, sans-serif;--font-ui: "Figtree", system-ui, sans-serif;--font-code: "JetBrains Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--font: var(--font-ui);--mono: var(--font-code);--r-sm: 8px;--r: 12px;--r-lg: 16px;--r-xl: 20px;--rule: 1px;--fs-display: 44px;--lh-display: 1.05;--fs-h1: 30px;--fs-h2: 20px;--fs-h3: 16px;--fw-heavy: 700;--card-r: 20px;--ctl-r: 12px}:root,:root[data-theme=light]{--cc-blue-50: #eff6ff;--cc-blue-100: #dbeafe;--cc-blue-500: #3b73ed;--cc-blue-600: #2f62d6;--cc-blue-700: #1b42b4;--cc-line: #e2e8f0;--cc-line-strong: #cbd5e1;--cc-ink: #0f172a;--cc-ink-2: #475569;--cc-ink-3: #64748b;--cc-card: #ffffff;--cc-hover: #f1f5f9;--cc-subtle: #f8fafc;--paper: #f9fafc;--bg: var(--paper);--surface: #ffffff;--surface-2: #f1f5f9;--surface-3: #e8eef6;--text: var(--cc-ink);--text-2: var(--cc-ink-2);--text-3: var(--cc-ink-3);--border: var(--cc-line);--border-strong: var(--cc-line-strong);--hair: var(--cc-line);--hair-strong: var(--cc-line-strong);--rule-color: var(--cc-line);--ink-900: var(--cc-ink);--ink-700: #334155;--ink-600: #475569;--ink-500: #64748b;--ink-400: #94a3b8;--ink-300: #cbd5e1;--ink-200: #e2e8f0;--ink-150: #eaeff6;--ink-100: #f1f5f9;--accent: var(--cc-blue-500);--accent-strong: var(--cc-blue-600);--accent-text: var(--cc-blue-700);--accent-soft: var(--cc-blue-50);--accent-soft-2: var(--cc-blue-100);--on-accent: #fff;--code-bg: #f8fafc;--shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 1px rgba(15, 23, 42, .02);--shadow-pop: 0 18px 48px -16px rgba(30, 64, 175, .28), 0 2px 8px rgba(15, 23, 42, .06);--shadow-1: var(--shadow);--ring: color-mix(in srgb, var(--cc-blue-500) 35%, transparent);--learn-50: #ecfdf5;--learn-200: #bbf0d6;--learn-500: #10a76b;--learn-800: #065f46;--practice-50: #f5f3ff;--practice-200: #ddd6fe;--practice-500: #7c5ce0;--practice-800: #4c1d95;--mentor-50: #eff6ff;--mentor-200: #bfdbfe;--mentor-500: #3b73ed;--mentor-800: #1e3a8a;--assess-50: #fff7ed;--assess-200: #fed7aa;--assess-500: #ea7a1a;--assess-800: #9a3412;--analytics-50: #ecfeff;--analytics-200: #a5f3fc;--analytics-500: #0891b2;--analytics-800: #155e75;--achieve-50: #fffbeb;--achieve-200: #fde68a;--achieve-500: #d99a0b;--achieve-800: #92400e;--red-600: var(--cc-blue-600);--red-700: var(--cc-blue-700);--red-800: #173a9a;--red-100: var(--cc-blue-50);--red-200: var(--cc-blue-100);--red-300: #bfdbfe;--red-400: #93c5fd;--red-500: var(--cc-blue-500);--bad: #dc2626;--bad-fill: #fef2f2;--bad-line: #fecaca;--danger: #dc2626;--danger-text: #b91c1c;--danger-soft: #fef2f2;--ok: #047857;--warn: #b45309;--chart-1: #3b73ed;--chart-2: #7c5ce0;--chart-3: #10a76b;--chart-4: #ea7a1a;--chart-5: #0891b2;--chart-6: #d99a0b}body{font-family:var(--font-ui);background:var(--bg);color:var(--text)}h1,h2,h3,h4,.display,.stat-value,.topbar-title strong{font-family:var(--font-display);letter-spacing:-.02em;font-weight:700}.display{font-weight:800;letter-spacing:-.03em}::selection{background:var(--cc-blue-100);color:var(--cc-blue-700)}:focus-visible{outline:2px solid var(--cc-blue-500);outline-offset:2px;border-radius:8px}a{text-decoration-color:color-mix(in srgb,var(--cc-blue-500) 35%,transparent)}a:hover{color:var(--cc-blue-700)}.eyebrow,.kicker,.label{letter-spacing:.1em;font-weight:600}.i{stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9}.sidebar{background:var(--cc-card);border-right:1px solid var(--cc-line)}.brand,.admin-brand{border-bottom:0;height:68px;padding:0 20px}.brand-mark{width:36px;height:36px;border-radius:12px;background:var(--cc-blue-500);color:#fff;font-family:var(--font-code);font-weight:700;box-shadow:0 6px 16px -6px var(--cc-blue-500)}.brand-text{font-family:var(--font-display);font-weight:700;font-size:17px}.brand-text small{font-family:var(--font-ui);font-weight:500;font-size:11px;color:var(--text-3)}.pill-admin{border-radius:999px;background:#2f62d6;color:#fff}.sidebar .nav{padding:10px 12px 16px;gap:4px}.sidebar .nav-label{padding:18px 12px 6px}.sidebar .nav a,.sidebar .nav .nav-disabled{min-height:44px;padding:0 12px;border-radius:12px;font-size:14.5px;font-weight:600;color:var(--cc-ink-2);gap:12px}.sidebar .nav a .i{font-size:19px;color:var(--cc-ink-3)}.sidebar .nav a:hover{background:var(--cc-hover);color:var(--cc-ink)}.sidebar .nav a:hover .i{color:var(--cc-ink-2)}.sidebar .nav a[aria-current=page]{background:var(--cc-blue-50);color:var(--cc-blue-700);box-shadow:none}.sidebar .nav a[aria-current=page] .i{color:var(--cc-blue-600)}.sidebar .nav a .nav-swatch{display:none}.sidebar .nav a .nav-badge,.sidebar .nav a small.nav-state{border-radius:999px;background:var(--cc-blue-50);color:var(--cc-blue-700);border-color:var(--cc-blue-100)}.sidebar-college,.sidebar-foot{border-top:1px solid var(--cc-line)}.sidebar-foot button:hover{background:var(--cc-hover)}.topbar{height:64px;background:color-mix(in srgb,var(--cc-card) 90%,transparent);border-bottom:1px solid var(--cc-line)}.topbar-title strong{font-size:16px}.breadcrumbs,.breadcrumbs a{color:var(--cc-ink-3)}.breadcrumbs [aria-current=page]{color:var(--cc-ink)}.search-box,.cmdk-trigger{height:40px;border-radius:12px;border:1px solid var(--cc-line);background:var(--cc-card);color:var(--cc-ink-3)}.search-box:hover,.cmdk-trigger:hover{border-color:var(--cc-line-strong);background:var(--cc-card)}.search-box:focus-within{border-color:var(--cc-blue-500);box-shadow:0 0 0 3px var(--ring)}.kbd{border-radius:6px;background:var(--cc-hover);border:1px solid var(--cc-line);color:var(--cc-ink-2)}.college-chip{height:40px;border-radius:12px;border:0;background:transparent;color:var(--cc-ink-2)}.avatar{border-radius:999px;background:var(--cc-blue-50);color:var(--cc-blue-700);border:0}.avatar-img{border-radius:999px;filter:none}.identity{border-radius:14px}.identity:hover{background:var(--cc-hover);border-color:transparent}.menu{border-radius:16px;border:1px solid var(--cc-line);box-shadow:var(--shadow-pop);padding:6px}.menu a,.menu button,.menu .menu-item{border-radius:10px}.menu a:hover,.menu button:hover{background:var(--cc-hover)}.page{padding:32px 40px 80px;max-width:1280px}.page-head{border-bottom:0;padding-bottom:8px;margin-bottom:20px}.page-head p{color:var(--cc-ink-3)}.btn{border-radius:12px;font-weight:600;min-height:40px}.btn-lg{min-height:48px;border-radius:14px}.btn-sm{min-height:32px;border-radius:10px}.btn-primary{background:#2f62d6;color:#fff;box-shadow:0 6px 14px -8px #2f62d6}.btn-primary:hover:not(:disabled){background:#2756bf}.btn-primary:active:not(:disabled){background:#1f49a8}.btn-ink{background:#0f172a;border-radius:12px}.btn-secondary{background:var(--cc-card);border-color:var(--cc-line-strong);color:var(--cc-ink)}.btn-secondary:hover:not(:disabled){background:var(--cc-subtle);border-color:#94a3b8}.btn-ghost{border-color:var(--cc-line);color:var(--cc-ink-2)}.btn-ghost:hover:not(:disabled){background:var(--cc-hover);border-color:var(--cc-line-strong)}.btn-tone{border-radius:12px}.btn-danger{background:var(--cc-card);border-color:#fecaca;color:#b91c1c}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626;color:var(--cc-card)}.btn-icon{border-radius:12px;border-color:var(--cc-line)}.btn-icon:hover{background:var(--cc-hover);border-color:var(--cc-line-strong)}.tp-start .btn-primary,.tp-start.lobby-card .btn-primary{background:#2f62d6}input:not([type=checkbox]):not([type=radio]),select,textarea,.input,.select{border-radius:12px;border:1px solid var(--cc-line-strong);background:var(--cc-card);font-family:var(--font-ui)}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus,.input:focus,.select:focus{border-color:var(--cc-blue-500);box-shadow:0 0 0 3px var(--ring);outline:none}.badge,.tag{border-radius:999px;height:24px;padding:0 10px}.badge-accent{background:var(--cc-blue-50);color:var(--cc-blue-700);border-color:var(--cc-blue-100)}.tabs{border-bottom:1px solid var(--cc-line);gap:4px}.tab{border-radius:10px 10px 0 0}.tab:hover{background:var(--cc-hover)}.tab:after{height:3px;background:var(--cc-blue-500);border-radius:3px 3px 0 0}.tab[aria-selected=true]{color:var(--cc-blue-700)}.tab-count{border-radius:999px;background:var(--cc-hover)}.chip{border-radius:999px;border-color:var(--cc-line-strong)}.chip[aria-pressed=true],.chip.is-on{background:var(--cc-blue-50);border-color:var(--cc-blue-500);color:var(--cc-blue-700)}.seg{border-radius:12px;border:1px solid var(--cc-line);background:var(--cc-hover);padding:3px;overflow:hidden}.seg-opt,.seg button{border-radius:9px;height:32px}.seg-opt+.seg-opt,.seg button+button{border-left:0}.seg [aria-pressed=true],.seg [aria-selected=true],.seg-opt:has(input:checked){background:var(--cc-card);color:var(--cc-ink);box-shadow:var(--shadow)}.filterbar{border-bottom:1px solid var(--cc-line)}.card{border-radius:var(--card-r);border:1px solid var(--cc-line);box-shadow:var(--shadow);padding:22px}.card-flush{border-radius:var(--card-r)}a.card:hover{border-color:#b6c6e6;box-shadow:var(--shadow-pop)}.card-head{border-bottom:1px solid var(--cc-line)}.panel{border-radius:var(--card-r);border:1px solid var(--mod-line);background:var(--mod-fill);box-shadow:var(--shadow)}.panel:before{display:none}a.panel:hover{box-shadow:var(--shadow-pop)}.os-grid{gap:16px;background:transparent;border:0}.os-grid>*{border-radius:var(--card-r);border:1px solid var(--cc-line);box-shadow:var(--shadow);overflow:hidden}.os-grid>[data-module]{border-color:var(--mod-line)}.os-section-head{border-bottom:0;padding-bottom:8px}.stat{border-radius:var(--card-r);padding:20px 22px;border:1px solid var(--cc-line);box-shadow:var(--shadow)}.stat[data-module]{border-color:var(--mod-line)}.stat-value{font-weight:800}.bar{height:8px;border-radius:999px}.bar>span{border-radius:999px}.hero h1{font-weight:800}.table-wrap,.table-scroll{border-radius:var(--card-r);border:1px solid var(--cc-line);background:var(--cc-card);overflow:auto}table.table{border-collapse:separate;border-spacing:0}table.table th{background:var(--cc-subtle);color:var(--cc-ink-3);font-weight:600;letter-spacing:.06em;border-bottom:1px solid var(--cc-line)}table.table td{border-bottom:1px solid var(--cc-hover)}table.table tbody tr:hover{background:var(--cc-subtle)}.table-foot{border-top:1px solid var(--cc-line)}.alert,.notice,.callout{border-radius:14px}.modal,.dialog,[role=dialog]{border-radius:20px}.cmdk,.cmdk-panel{border-radius:18px}code{border-radius:6px;background:var(--cc-hover)}.preview-frame{border-radius:14px}.update-banner{border-radius:14px;background:#0f172a}.auth-shell,.auth{background:var(--bg)}.ws,.ws-left,.ws-right,.editor-wrap,.result-wrap{border-radius:0}.ws-bar,.editor-top{border-bottom:1px solid var(--cc-line)}:root[data-theme=dark]{--accent: #6b97f5;--accent-strong: #8aaef8;--accent-text: #9db9fa;--accent-soft: rgba(107, 151, 245, .14);--accent-soft-2: rgba(107, 151, 245, .24);--red-600: #4f82ee;--red-700: #6b97f5}:root[data-theme=dark] .brand-mark{background:#3b73ed}:root[data-theme=dark] .btn-primary{background:#3b73ed;color:var(--cc-card)}:root[data-theme=dark] .card,:root[data-theme=dark] .stat,:root[data-theme=dark] .panel{box-shadow:none}.status-ic,.l4-tag,.tag,.pill,.pill-stat{border-radius:999px}.l4-topic,.l4-topic-grid>*,.l4-card{border-radius:var(--card-r)}.empty{border-radius:var(--card-r);border-color:var(--cc-line-strong);background:var(--cc-card)}.alert,.alert-info,.alert-warning,.alert-success,.tp-note{border-radius:16px}.hero-meta,.l4-tabs{border-radius:14px}.modal,.toast,.drawer,.popover{border-radius:20px;box-shadow:var(--shadow-pop)}.table-foot{border-radius:0 0 var(--card-r) var(--card-r)}.avatar,.avatar-img,.ring,.dot{border-radius:999px}.progress,.progress>span,.meter,.meter>span{border-radius:999px}:root[data-theme=dark]{--cc-card: #162136;--cc-hover: #222d46;--cc-subtle: #1a2640;--cc-line: rgba(255, 255, 255, .13);--cc-line-strong: rgba(255, 255, 255, .26);--cc-ink: #f1f5ff;--cc-ink-2: #a8b3cd;--cc-ink-3: #8d99b6;--cc-blue-50: rgba(107, 151, 245, .14);--cc-blue-100: rgba(107, 151, 245, .26);--cc-blue-600: #4f82ee;--cc-blue-700: #a6bffb;--shadow: none;--shadow-pop: 0 18px 48px -16px rgba(0, 0, 0, .75)}:root[data-theme=dark] .btn.btn-primary,:root[data-theme=dark] .btn.btn-primary .btn-label,:root[data-theme=dark] a.btn-primary{background-color:#2f62d6;color:#fff}.stat-provenance,.stat-sub{color:var(--cc-ink-2)}.app .mn-list.is-never h3,.app .mn-list.is-never li .i{color:#b91c1c}:root[data-theme=dark] .app .mn-list.is-never h3,:root[data-theme=dark] .app .mn-list.is-never li .i{color:#fca5a5}:root[data-theme=dark] .btn.btn-danger{background:transparent;border-color:#f87171;color:#fca5a5}:root[data-theme=dark]{--bad: #fca5a5;--bad-fill: #3a1713;--bad-line: #7a2f25;--danger: #f87171;--danger-text: #fca5a5;--danger-soft: #3a1713}.l4-route-no,li[data-status]>.l4-route-no{color:var(--cc-ink-2)}.nav-expand{display:flex;flex-direction:column}.nav-toggle{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:0 12px;border:0;border-radius:12px;background:none;cursor:pointer;color:var(--cc-ink-2);font:600 14.5px/1.2 var(--font-ui);text-align:left}.nav-toggle .i:first-child{font-size:19px;color:var(--cc-ink-3)}.nav-toggle span{flex:1 1 auto;min-width:0}.nav-toggle .i:last-child{font-size:15px;color:var(--cc-ink-3);transition:transform var(--dur-micro) var(--ease-out)}.nav-toggle[aria-expanded=true] .i:last-child{transform:rotate(180deg)}.nav-toggle:hover{background:var(--cc-hover);color:var(--cc-ink)}.nav-expand.has-current>.nav-toggle{color:var(--cc-blue-700)}.nav-expand.has-current>.nav-toggle .i:first-child{color:var(--cc-blue-600)}.nav-sub{display:flex;flex-direction:column;gap:2px;margin:2px 0 6px 21px;padding-left:12px;border-left:1px solid var(--cc-line)}.nav-sub[hidden]{display:none}.sidebar .nav .nav-sub a,.sidebar .nav .nav-sub .nav-disabled{min-height:36px;padding:0 12px;border-radius:10px;font-size:13.5px;font-weight:500;gap:8px}.sidebar .nav .nav-sub a[aria-current=page]{background:var(--cc-blue-50);color:var(--cc-blue-700);font-weight:600}.sidebar .nav .nav-sub .nav-disabled{color:var(--cc-ink-3)}.app.is-collapsed .nav-toggle{justify-content:center;padding:0}.app.is-collapsed .nav-toggle span,.app.is-collapsed .nav-toggle .i:last-child,.app.is-collapsed .nav-sub{display:none}.alert,.alert>div{color:var(--cc-ink)}.alert .faint,.alert small{color:var(--cc-ink-2)}:root,:root[data-theme=light],:root[data-theme=dark]{--card-r: 18px;--ctl-r: 12px;--r-sm: 8px;--r: 12px;--r-lg: 18px;--r-xl: 22px;--cc-blue-50: var(--accent-soft);--cc-blue-100: var(--accent-soft-2);--cc-blue-500: var(--accent);--cc-blue-600: var(--accent-strong);--cc-blue-700: var(--accent-text);--cc-line: var(--border);--cc-line-strong: var(--border-strong);--cc-ink: var(--text);--cc-ink-2: var(--text-2);--cc-ink-3: var(--text-3);--cc-card: var(--surface);--cc-hover: var(--surface-2);--cc-subtle: var(--paper);--red-100: var(--accent-soft);--red-200: var(--accent-soft-2);--red-300: var(--accent);--red-400: var(--accent);--red-500: var(--accent);--red-600: var(--accent);--red-700: var(--accent-strong);--red-800: var(--accent-text);--ring: color-mix(in srgb, var(--accent) 28%, transparent)}:root,:root[data-theme=light]{--paper: #ffffff;--paper-2: #f1f4fa;--bg: #ffffff;--surface: #fff;--surface-2: #f1f4fa;--surface-3: #e4e9f4;--white: #fff;--text: #18243b;--text-2: #53627a;--text-3: #53627a;--border: #dce3ef;--border-strong: #a3b0c7;--hair: #dce3ef;--hair-strong: #a3b0c7;--rule-color: #dce3ef;--ink-900: #18243b;--ink-800: #343346;--ink-700: #49465d;--ink-600: #53627a;--ink-500: #53627a;--ink-400: #858095;--ink-300: #a3b0c7;--ink-200: #dce3ef;--ink-150: #e4e9f4;--ink-100: #f1f4fa;--accent: #4f46e5;--accent-strong: #4338ca;--accent-text: #4f46e5;--accent-soft: #f1f4fa;--accent-soft-2: #eeedff;--on-accent: #fff;--on-ink: #fff;--card-indigo: #5141be;--card-teal: #096c61;--card-amber: #955009;--card-rose: #a52d57;--tint-violet: #eeedff;--tint-blue: #e2f5f2;--tint-coral: #fff0e1;--tint-green: #ffe9ef;--learn-50: #e2f5f2;--learn-200: #b4e4dc;--learn-500: #138778;--learn-800: #0c6c60;--practice-50: #eeedff;--practice-200: #d6c7f7;--practice-500: #7951c8;--practice-800: #6442bb;--mentor-50: #e8efff;--mentor-200: #c7d8ff;--mentor-500: #4675c7;--mentor-800: #315fae;--assess-50: #fff0e1;--assess-200: #f6c9b9;--assess-500: #c36548;--assess-800: #a74934;--analytics-50: #e2f5f2;--analytics-200: #c3d8f9;--analytics-500: #4474c2;--analytics-800: #3465b8;--achieve-50: #eaf4db;--achieve-200: #d4e2a6;--achieve-500: #729140;--achieve-800: #4c641f;--ok: #42601f;--warn: #8a4b22;--bad: #a73f35;--success: #42601f;--success-text: #42601f;--success-soft: #eaf4db;--danger: #a73f35;--danger-text: #a73f35;--danger-soft: #fff0e1;--shadow: 0 2px 6px #26233e04;--shadow-1: var(--shadow);--shadow-pop: 0 16px 36px -18px #30204f38, 0 4px 12px #30204f08;--code-bg: #f8f6fb;--chart-1: #4f46e5;--chart-2: #7951c8;--chart-3: #729140;--chart-4: #c36548;--chart-5: #4474c2;--chart-6: #8a4b22}:root[data-theme=dark]{--paper: #0c1424;--paper-2: #1d2a42;--bg: #0c1424;--surface: #141f33;--surface-2: #1d2a42;--surface-3: #2b3b55;--white: #141f33;--text: #edf3ff;--text-2: #b5c3d9;--text-3: #b5c3d9;--border: #2b3b55;--border-strong: #62748f;--hair: #2b3b55;--hair-strong: #62748f;--rule-color: #2b3b55;--ink-900: #edf3ff;--ink-800: #e2dcef;--ink-700: #ccc6dd;--ink-600: #b5c3d9;--ink-500: #b5c3d9;--ink-400: #8d879f;--ink-300: #62748f;--ink-200: #2b3b55;--ink-150: #2d2d42;--ink-100: #1d2a42;--accent: #a9a4ff;--accent-strong: #c3bfff;--accent-text: #c3bfff;--accent-soft: #1d2a42;--accent-soft-2: #28284b;--on-accent: #171229;--on-ink: #0c1424;--card-indigo: #bcb5ff;--card-teal: #80dfcf;--card-amber: #ffc382;--card-rose: #ffa5c4;--tint-violet: #28284b;--tint-blue: #153b3d;--tint-coral: #3d2e24;--tint-green: #3c2439;--learn-50: #153b3d;--learn-200: #356661;--learn-500: #6ed6c6;--learn-800: #8fe6d8;--practice-50: #28284b;--practice-200: #59437a;--practice-500: #a9a4ff;--practice-800: #c3bfff;--mentor-50: #153b3d;--mentor-200: #405b80;--mentor-500: #8eb4f2;--mentor-800: #a4c4ff;--assess-50: #3d2e24;--assess-200: #80504b;--assess-500: #f5a388;--assess-800: #ffb69d;--analytics-50: #153b3d;--analytics-200: #405b80;--analytics-500: #8eb4f2;--analytics-800: #a4c4ff;--achieve-50: #263a28;--achieve-200: #526543;--achieve-500: #accb78;--achieve-800: #c3dd95;--ok: #c3dd95;--warn: #f0c19b;--bad: #ffb69d;--success: #c3dd95;--success-text: #c3dd95;--success-soft: #263a28;--danger: #ffb69d;--danger-text: #ffb69d;--danger-soft: #3d2e24;--shadow: 0 2px 8px #0000000a;--shadow-1: var(--shadow);--shadow-pop: 0 16px 36px -18px #0009;--code-bg: #171927;--chart-1: #a9a4ff;--chart-2: #c3bfff;--chart-3: #c3dd95;--chart-4: #ffb69d;--chart-5: #a4c4ff;--chart-6: #f0c19b}:root[data-theme] body{font-family:var(--font-ui);background:var(--paper);-webkit-font-smoothing:antialiased}:root[data-theme] body :is(.section-hub-heading h1,.learning-library .page-head h1,.study-library .page-head h1){color:var(--accent-text)}:root[data-theme] body .course-choices h2{color:var(--accent-text)}:root[data-theme] body :is(.btn,.btn-lg,.btn-sm,.filter-list button){border-radius:12px;font-family:var(--font-ui);font-weight:600;transition:background-color .2s,border-color .2s,box-shadow .2s}:root[data-theme] body .btn-primary{background:var(--accent);color:var(--on-accent);border-color:transparent;box-shadow:none}:root[data-theme] body .btn-primary:hover:not(:disabled){background:var(--accent-strong)}:root[data-theme] body .btn-secondary{background:transparent;color:var(--text);border-color:var(--border)}:root[data-theme] body :is(.btn-secondary,.btn-ghost):hover:not(:disabled){background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}:root[data-theme] body :is(.btn-icon,.theme-opt){border-radius:10px}:root[data-theme] body .avatar{border-radius:50%}:root[data-theme] body :is(.input,.select,textarea.input,.cmdk-trigger,.search-box){border-radius:8px;border-color:var(--border);background:var(--paper);color:var(--text)}:root[data-theme] body :is(.input,.select,textarea)::placeholder{color:var(--text-2)}:root[data-theme] body :is(.input,.select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}:root[data-theme] body :is(.sidebar,.topbar){background:var(--surface);border-color:var(--border)}:root[data-theme] body .brand-mark{background:var(--accent);color:var(--on-accent);box-shadow:none;border-radius:12px}:root[data-theme] body .sidebar .nav a{border-radius:12px;font-weight:600;color:var(--text-2)}:root[data-theme] body .sidebar .nav a:hover{background:var(--surface-2);color:var(--text)}:root[data-theme] body .sidebar .nav a[aria-current=page]{color:var(--accent-text);background:var(--surface-2);box-shadow:inset 3px 0 var(--accent)}:root[data-theme] body .sidebar .nav a[aria-current=page] .i{color:var(--accent-text)}:root[data-theme] body :is(.sidebar-foot,.sidebar-college,.menu-head,.menu-theme){border-color:var(--border)}:root[data-theme] body :is(.menu,.modal,.dialog,.cmdk-panel,.cmdk,.auth-card){border-radius:18px;border-color:var(--border);background:var(--surface);box-shadow:var(--shadow-pop)}:root[data-theme] body :is(.menu a,.menu>button){border-radius:12px}:root[data-theme] body :is(.theme-opt[data-active=true],.theme-opt[aria-checked=true]){background:var(--accent);color:var(--on-accent)}:root[data-theme] body :is(.card,.panel,.stat,.l4-card,.l4-topic,.lui-problem-card,.learning-library-card,.learning-source,.progress-card,.study-reader,.study-toolbar,.study-file-list,.table-wrap,.table-scroll,.platform-capabilities article){border-radius:18px;border-color:var(--border);box-shadow:var(--shadow)}:root[data-theme] body :is(a.card,a.panel,.learning-library-card,.study-folders button){transition:border-color .2s,box-shadow .2s,background-color .2s}:root[data-theme] body :is(a.card,a.panel,.study-folders button):hover{border-color:var(--accent);box-shadow:var(--shadow-pop)}:root[data-theme] body .section-option{border-radius:20px;border-color:color-mix(in srgb,var(--option-ink) 17%,var(--surface));background:var(--option-tone);box-shadow:0 4px 16px -12px var(--option-ink);color:var(--text);transition:transform .2s,box-shadow .2s,border-color .2s}:root[data-theme] body .section-options>:nth-child(4n+1){--option-tone: var(--tint-violet);--option-ink: var(--card-indigo)}:root[data-theme] body .section-options>:nth-child(4n+2){--option-tone: var(--tint-blue);--option-ink: var(--card-teal)}:root[data-theme] body .section-options>:nth-child(4n+3){--option-tone: var(--tint-coral);--option-ink: var(--card-amber)}:root[data-theme] body .section-options>:nth-child(4n){--option-tone: var(--tint-green);--option-ink: var(--card-rose)}:root[data-theme] body .section-option.is-planned{background:color-mix(in srgb,var(--option-tone) 60%,var(--surface));box-shadow:none}:root[data-theme] body a.section-option:hover{background:var(--option-tone);border-color:var(--option-ink);box-shadow:0 14px 26px -20px var(--option-ink);transform:translateY(-4px)}:root[data-theme] body a.section-option:focus-visible{outline:3px solid var(--option-ink);outline-offset:4px}:root[data-theme] body .section-option-icon{background:var(--option-ink);color:var(--on-accent)}:root[data-theme] body .section-option-state{border-radius:6px;color:var(--option-ink)}:root[data-theme] body :is(.study-folders button,.learning-library-grid>article){border-radius:15px;border-color:transparent}:root[data-theme] body :is(.study-folders>:nth-child(4n+1),.learning-library-grid>:nth-child(4n+1)){background:var(--tint-violet)}:root[data-theme] body :is(.study-folders>:nth-child(4n+2),.learning-library-grid>:nth-child(4n+2)){background:var(--tint-blue)}:root[data-theme] body :is(.study-folders>:nth-child(4n+3),.learning-library-grid>:nth-child(4n+3)){background:var(--tint-coral)}:root[data-theme] body :is(.study-folders>:nth-child(4n),.learning-library-grid>:nth-child(4n)){background:var(--tint-green)}:root{--auth-panel-gradient: radial-gradient(900px 520px at 10% -10%, #5b5bf0 0%, transparent 60%), radial-gradient(700px 480px at 100% 110%, #0ea5c6 0%, transparent 55%), linear-gradient(160deg, #1b1f6b 0%, #14308f 55%, #0b3f7a 100%);--admin-action-gradient: linear-gradient(135deg, #4f46e5 0%, #2f62d6 60%, #087a91 100%)}:root[data-theme] body .admin-app{background:radial-gradient(900px 540px at 100% 0%,#4f46e50b,transparent 65%),var(--bg)}:root[data-theme] body .admin-app .sidebar{background:var(--auth-panel-gradient);color:#eef1ff;border-right-color:#ffffff29;--text: #fff;--text-2: #e0e7ff;--text-3: #c7d6ff;--ink-700: #e0e7ff;--ink-500: #c7d6ff;--ink-400: #c7d6ff;--border: #ffffff29;--surface-2: #ffffff1a}:root[data-theme] body .admin-app .sidebar .admin-brand{color:#fff;padding-block:24px}:root[data-theme] body .admin-app .sidebar .brand-mark{color:#fff;background:#ffffff24;border:1px solid #ffffff4d}:root[data-theme] body .admin-app .sidebar .brand-text small{color:#dce5ff}:root[data-theme] body .admin-app .sidebar .pill-admin{background:#ffffff24;color:#fff;border:1px solid #ffffff4d}:root[data-theme] body .admin-app .sidebar .nav-label{color:#c7d6ff;letter-spacing:.1em}:root[data-theme] body .admin-app .sidebar .nav a{color:#e0e7ff;min-height:44px;margin-block:2px}:root[data-theme] body .admin-app .sidebar .nav a .i{color:#c7d6ff}:root[data-theme] body .admin-app .sidebar .nav a:hover{background:#ffffff1a;color:#fff}:root[data-theme] body .admin-app .sidebar .nav a[aria-current=page]{background:#ffffff24;color:#fff;box-shadow:inset 3px 0 #5eead4}:root[data-theme] body .admin-app .sidebar .nav a[aria-current=page] .i{color:#99f6e4}:root[data-theme] body .admin-app .sidebar .nav-swatch{background:#99f6e4}:root[data-theme] body .admin-app .sidebar .sidebar-college strong{color:#fff}:root[data-theme] body .admin-app .sidebar :is(.sidebar-college,.sidebar-foot){background:#071a3929}:root[data-theme] body .admin-app .sidebar .sidebar-college span{color:#eef1ff}:root[data-theme] body .admin-app .sidebar :is(.sidebar-foot button,.platform-mobile-close){color:#fff}:root[data-theme] body .admin-app .sidebar .platform-mobile-close{background:#ffffff1a;border-color:#ffffff4d;color:#fff}:root[data-theme] body .admin-app .sidebar .sidebar-foot button:hover{background:#ffffff1a}:root[data-theme] body .admin-app .sidebar :focus-visible{outline:3px solid #99f6e4;outline-offset:-3px}:root[data-theme] body .admin-app .topbar{background:var(--surface);box-shadow:0 4px 24px -16px #1b1f6b33}:root[data-theme] body .admin-app .page-head{padding:24px;border:1px solid var(--border);border-radius:20px;background:radial-gradient(600px 240px at 100% 0%,#4f46e510,transparent 70%),var(--surface);box-shadow:var(--shadow)}:root[data-theme] body .admin-app .page-head h1{color:var(--accent-text);letter-spacing:-.03em}:root[data-theme] body .admin-app :is(.card,.panel,.stat,.table-wrap,.table-scroll){background-color:var(--surface);box-shadow:0 8px 28px -24px #28328c66}:root[data-theme] body .admin-app .os-grid>*{border-radius:18px}:root[data-theme] body .admin-app .admin-kpis>:nth-child(4n+1){background:var(--tint-violet)}:root[data-theme] body .admin-app .admin-kpis>:nth-child(4n+2){background:var(--tint-blue)}:root[data-theme] body .admin-app .admin-kpis>:nth-child(4n+3){background:var(--tint-coral)}:root[data-theme] body .admin-app .admin-kpis>:nth-child(4n){background:var(--tint-green)}:root[data-theme] body .admin-app :is(.input,.select,.textarea,.search-box){border-radius:12px;border-color:var(--border-strong)}:root[data-theme] body .admin-app .search-box input{border:0;border-radius:0;background:transparent;box-shadow:none}:root[data-theme] body .admin-app :is(.input,.select,.textarea):focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--ring)}:root[data-theme] body .admin-app :is(.input,.select){min-height:44px}:root[data-theme] body .admin-app .btn-primary,:root[data-theme] body .auth--admin .btn-primary{background:var(--admin-action-gradient);color:#fff;border-color:transparent;box-shadow:0 12px 24px -18px #4f46e5b3}:root[data-theme] body .admin-app .btn-primary:hover:not(:disabled),:root[data-theme] body .auth--admin .btn-primary:hover:not(:disabled){background:var(--admin-action-gradient);filter:brightness(1.08)}:root[data-theme] body .admin-app .btn-primary .btn-label,:root[data-theme] body .auth--admin .btn-primary .btn-label{color:#fff;background:transparent}:root[data-theme] body .admin-app .table th{background:var(--accent-soft-2);color:var(--text);text-transform:none;letter-spacing:.02em}:root[data-theme] body .admin-app .table tbody tr:hover{background:var(--surface-2)}:root[data-theme] body .admin-app .tabs-links{gap:6px;padding-bottom:8px;border-bottom-color:var(--border)}:root[data-theme] body .admin-app .tabs-links a{border-radius:10px}:root[data-theme] body .admin-app .tabs-links a[aria-current=page]{background:var(--accent-soft-2);color:var(--accent-text)}:root[data-theme] body .admin-app .wizard-progress{gap:6px;padding:6px;border-radius:16px;background:var(--surface-2);border-color:var(--border)}:root[data-theme] body .admin-app .wizard-step{border-radius:10px}:root[data-theme] body .admin-app .wizard-step.is-current{background:var(--admin-action-gradient);color:#fff}:root[data-theme] body .admin-app .wizard-step.is-current span{color:#fff}:root[data-theme] body .auth--admin .select{min-height:50px;padding-inline:16px;border-radius:13px}:root[data-theme=dark] body .admin-app{background:radial-gradient(900px 540px at 100% 0%,#7c83ff12,transparent 65%),var(--bg)}:root[data-theme=dark] body .admin-app .page-head{background:radial-gradient(600px 240px at 100% 0%,#7c83ff18,transparent 70%),var(--surface)}@media(max-width:600px){:root[data-theme] body .admin-app .page-head{padding:20px 16px}:root[data-theme] body .admin-app .page-head .btn-row{flex-wrap:wrap}:root[data-theme] body .admin-app .page-head .btn-row .btn{white-space:normal}}:root[data-theme] body :is(.study-file-type,.progress-chip,.tag,.pill,.badge){border-radius:8px}:root[data-theme] body :is(.progress-tabs button,.progress-edit,.seg button,.l4-tabs button,.lui-tabs button){border-radius:12px}:root[data-theme] body :is(.progress-tabs button[aria-pressed=true],.seg button[aria-pressed=true],.l4-tabs [aria-selected=true],.lui-tabs [aria-selected=true]){background:var(--accent);color:var(--on-accent)}:root[data-theme] body .progress-milestones{background:var(--tint-violet)}:root[data-theme] body .progress-ring-value{stroke:var(--accent)}:root[data-theme] body .progress-ring span .i{color:var(--ok)}:root[data-theme] body :is(.alert,.notice,.callout,.empty,.tp-note,.platform-unavailable){border-radius:15px;border-color:var(--border)}:root[data-theme] body .table th{background:var(--surface-2);color:var(--text-2)}:root[data-theme] body :is(.status-ic,.bar,.bar>span){border-radius:999px}:root[data-theme] body .l4-tag{border-radius:6px}:root[data-theme] body :focus-visible{outline-color:var(--accent)}@media(prefers-reduced-motion:reduce){:root[data-theme] body :is(.btn,.card,.panel,.section-option,.study-folders button,.learning-library-card){transition:none;transform:none}}:root[data-theme] body :is(.chip,.pill,.pill-stat,.pill-admin,.filter-chip,.xw-pill,.xw-subject,.xw-answer-state,.tp-entry button.enter){border-radius:8px}:root[data-theme] body :is(.progress-tabs button,.progress-edit,.seg button,.l4-tabs button,.lui-tabs button,.menu a,.menu>button){border-radius:10px}:root[data-theme] body .study-folders button{border:1px solid var(--border);box-shadow:var(--shadow)}:root[data-theme] body .study-folders button:hover{border-color:var(--accent)}:root[data-theme] body :is(.section-option,.learning-library-card,.study-folders button){transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}@media(hover:hover)and (prefers-reduced-motion:no-preference){:root[data-theme] body :is(a.section-option,a.learning-library-card,.study-folders button):hover{transform:translateY(-3px);box-shadow:0 14px 30px -18px color-mix(in srgb,var(--accent) 38%,transparent);border-color:var(--accent)}}:root[data-theme] body :is(.section-option,.learning-library-card):focus-visible{outline:3px solid var(--accent);outline-offset:4px}:root[data-theme] body :is(.input,.select,.textarea){scroll-margin-block:100px}:root[data-theme] body :is(.input,.textarea)::placeholder{color:var(--text-2);opacity:1}:root[data-theme] body .btn:active:not(:disabled){filter:brightness(.96)}:root[data-theme] body :is(.btn,button,a){-webkit-tap-highlight-color:transparent}:root[data-theme] body .section-option-copy small{line-height:1.65}:root[data-theme] body .section-option-footer{padding-top:16px}:root[data-theme] body :is(.table-scroll,.table-wrap){scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}@media(prefers-reduced-motion:reduce){:root[data-theme] body :is(.section-option,.learning-library-card,.study-folders button){transition:none;transform:none}}
