.court-theme{--court-void:#0b141f;--court-panel:#131f2c;--court-panel-hi:#1a2a3a;--line-white:#e9eef4;--line-dim:#8a97ac;--line-faint:#566071;--hair:rgba(233,238,244,0.09);--ball-lime:#dfff00;--ball-lime-dim:rgba(223,255,0,0.16);--flood-orange:#ff8c00;--flood-orange-dim:rgba(255,140,0,0.16);--court-red:#ff5470;--court-red-dim:rgba(255,84,112,0.14);--font-mono:ui-monospace,"SF Mono","Cascadia Code",Consolas,monospace;min-height:100vh;background-color:var(--court-void);color:var(--line-white);background-image:radial-gradient(ellipse 900px 500px at 15% -10%,rgba(255,140,0,.1),transparent 60%),radial-gradient(ellipse 700px 500px at 100% 10%,rgba(223,255,0,.06),transparent 55%),repeating-linear-gradient(0deg,var(--hair) 0,var(--hair) 1px,transparent 1px,transparent 88px),repeating-linear-gradient(90deg,var(--hair) 0,var(--hair) 1px,transparent 1px,transparent 88px);background-attachment:fixed}.court-theme a{color:inherit}.court-theme h1,.court-theme h2,.court-theme h3{color:var(--line-white)}.court-theme a:focus-visible,.court-theme button:focus-visible,.court-theme input:focus-visible{outline:2px solid var(--flood-orange);outline-offset:2px}.court-theme .wrap{max-width:880px;margin:0 auto;padding:0 20px 100px}.court-theme .topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:rgba(11,20,31,.82);backdrop-filter:blur(10px);border-bottom:1px solid var(--hair)}.court-theme .wordmark{font-family:var(--font-header);font-weight:800;font-size:1.25rem;letter-spacing:-.02em;text-decoration:none}.court-theme .wordmark span{color:var(--flood-orange)}.court-theme .topbar-right{display:flex;align-items:center;gap:14px}.court-theme .streak-chip{gap:6px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.8rem;color:var(--flood-orange);background:var(--flood-orange-dim);border:1px solid rgba(255,140,0,.35);padding:5px 12px 5px 9px}.court-theme .icon-btn,.court-theme .streak-chip{display:flex;align-items:center;border-radius:999px}.court-theme .icon-btn{justify-content:center;width:36px;height:36px;border:1px solid var(--hair);color:var(--line-dim);background:none;cursor:pointer;transition:color .15s ease,border-color .15s ease}.court-theme .icon-btn:hover{color:var(--line-white);border-color:var(--line-faint)}.court-theme .stat-panel{margin-top:28px;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;padding:26px;background:linear-gradient(155deg,var(--court-panel),var(--court-panel-hi));border:1px solid var(--hair);border-radius:20px;position:relative;overflow:hidden}.court-theme .stat-panel:after{content:"";position:absolute;inset:0;background:radial-gradient(420px 220px at 90% -20%,var(--ball-lime-dim),transparent 65%);pointer-events:none}.court-theme .ring-shell{width:108px;height:108px;border-radius:999px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.court-theme .ring-inner b{font-family:var(--font-mono);font-size:1.5rem;font-variant-numeric:tabular-nums}.court-theme .ring-inner small{margin-top:4px;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--line-dim);display:block}.court-theme .stat-copy .eyebrow{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--flood-orange);font-weight:700}.court-theme .stat-copy h1{font-size:1.7rem;margin:6px 0 0}.court-theme .stat-readouts{margin-top:16px;display:flex;gap:26px;flex-wrap:wrap}.court-theme .readout b{display:block;font-family:var(--font-mono);font-size:1.25rem;font-variant-numeric:tabular-nums;color:var(--line-white)}.court-theme .readout span{font-size:.72rem;color:var(--line-dim);letter-spacing:.03em}.court-theme .program{margin-top:22px;background:var(--court-panel);border:1px solid var(--hair);border-radius:4px 20px 20px 20px;overflow:hidden}.court-theme .program-head{display:flex;align-items:flex-start;gap:14px;padding:20px 22px}.court-theme .program[data-state=active] .program-head{border-bottom:1px solid var(--hair)}.court-theme .program-icon{width:40px;height:40px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--flood-orange-dim);color:var(--flood-orange)}.court-theme .program[data-state=locked] .program-icon{background:rgba(233,238,244,.06);color:var(--line-faint)}.court-theme .program-title-row{flex:1;min-width:0}.court-theme .program-title-row h2{font-size:1.15rem;margin:0}.court-theme .program-title-row p{margin:4px 0 0;font-size:.86rem;color:var(--line-dim);max-width:46ch}.court-theme .program-meter{flex-shrink:0;text-align:right;min-width:92px}.court-theme .program-meter .count{font-family:var(--font-mono);font-size:.85rem;color:var(--line-white);font-variant-numeric:tabular-nums}.court-theme .meter-track{margin-top:6px;width:92px;height:4px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.court-theme .meter-fill{height:100%;background:var(--flood-orange);border-radius:999px}.court-theme .locked-tag{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--line-faint);border:1px solid var(--hair);border-radius:999px;padding:3px 10px}.court-theme .circuit{position:relative;padding:28px 22px 30px}.court-theme .circuit:before{content:"";position:absolute;top:6px;bottom:6px;left:50%;width:2px;transform:translateX(-50%);background:linear-gradient(var(--flood-orange),var(--hair) 70%)}.court-theme .node-row{position:relative;display:flex;align-items:center;min-height:84px}.court-theme .node-row+.node-row{margin-top:6px}.court-theme .node-row--left{justify-content:flex-start}.court-theme .node-row--right{justify-content:flex-end}.court-theme .node-card{position:relative;z-index:2;display:flex;align-items:center;gap:12px;text-decoration:none;width:min(280px,74%)}.court-theme .node-row--right .node-card{flex-direction:row-reverse;text-align:right}.court-theme .node-dot{flex-shrink:0;width:46px;height:46px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:600;font-size:.95rem;border:2px solid var(--hair);background:var(--court-void);color:var(--line-faint)}.court-theme .node-card[data-status=done] .node-dot{border-color:var(--ball-lime);background:var(--ball-lime-dim);color:var(--ball-lime);box-shadow:0 0 0 4px rgba(223,255,0,.06)}.court-theme .node-card[data-status=next] .node-dot{border-color:var(--flood-orange);background:var(--flood-orange-dim);color:var(--flood-orange);box-shadow:0 0 0 5px rgba(255,140,0,.1)}.court-theme .node-copy b{display:block;font-size:.92rem;font-weight:700}.court-theme .node-copy span{font-size:.76rem;color:var(--line-dim)}.court-theme .node-card[data-status=done] .node-copy span{color:var(--ball-lime)}.court-theme .node-card[data-status=next] .node-copy span{color:var(--flood-orange)}.court-theme .node-row--left .node-card:after,.court-theme .node-row--right .node-card:after{content:"";position:absolute;top:50%;height:2px;width:28px;background:var(--hair)}.court-theme .node-row--left .node-card:after{left:-28px}.court-theme .node-row--right .node-card:after{right:-28px}.court-theme .node-card[data-status=done]:after{background:var(--ball-lime);opacity:.5}.court-theme .node-card[data-status=next]:after{background:var(--flood-orange);opacity:.6}.court-theme .preview{margin:4px 22px 22px;padding:16px 18px;background:rgba(255,255,255,.03);border:1px dashed var(--hair);border-radius:12px;display:flex;flex-wrap:wrap;gap:10px}.court-theme .preview-eyebrow{width:100%;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--line-dim);margin-bottom:2px}.court-theme .chip-term{font-family:var(--font-mono);font-size:.78rem;color:var(--line-white);background:var(--court-panel-hi);border:1px solid var(--hair);border-radius:8px;padding:6px 10px}.court-theme .back-link{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:var(--flood-orange);text-decoration:none}.court-theme .back-link:hover{text-decoration:underline}.court-theme .lesson-title{margin-top:10px;font-size:1.9rem}.court-theme .lesson-desc{color:var(--line-dim)}.court-theme .vocab-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;list-style:none;margin:0;padding:0}.court-theme .vocab-card{background:var(--court-panel);border:1px solid var(--hair);border-radius:14px;padding:16px}.court-theme .kind-chip{display:inline-block;border-radius:999px;padding:2px 10px;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.court-theme .kind-chip--phrase{background:var(--flood-orange-dim);color:var(--flood-orange)}.court-theme .kind-chip--word{background:rgba(233,238,244,.08);color:var(--line-dim)}.court-theme .vocab-term{margin:10px 0 0;font-family:var(--font-header);font-weight:700;font-size:1.02rem;color:var(--line-white)}.court-theme .vocab-translation{margin:2px 0 0;color:var(--line-dim)}.court-theme .vocab-example{margin:10px 0 0;padding-top:10px;border-top:1px solid var(--hair);font-size:.85rem;font-style:italic;color:var(--line-faint)}.court-theme .quiz-card{background:var(--court-panel);border:1px solid var(--hair);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:18px}.court-theme .quiz-meta{display:flex;justify-content:space-between;font-size:.75rem;color:var(--line-dim);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.court-theme .quiz-progress-track{height:5px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.court-theme .quiz-progress-fill{height:100%;border-radius:999px;background:var(--flood-orange);transition:width .2s ease}.court-theme .quiz-question{font-size:1.15rem}.court-theme .answer-btn{display:block;width:100%;text-align:left;border-radius:12px;padding:14px 16px;font-size:.95rem;font-weight:600;color:var(--line-white);background:rgba(255,255,255,.03);border:2px solid var(--hair);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.court-theme .answer-btn:not(:disabled):hover{border-color:var(--flood-orange)}.court-theme .answer-btn[data-state=correct]{border-color:var(--ball-lime);background:var(--ball-lime-dim);color:var(--ball-lime)}.court-theme .answer-btn[data-state=incorrect]{border-color:var(--court-red);background:var(--court-red-dim);color:var(--court-red)}.court-theme .quiz-result{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.court-theme .quiz-result-status{font-size:.9rem;font-weight:600}.court-theme .quiz-result-status[data-tone=pending]{color:var(--line-dim)}.court-theme .quiz-result-status[data-tone=error]{color:var(--court-red)}.court-theme .quiz-result-status[data-tone=success]{color:var(--ball-lime)}.court-theme .auth-scene{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px}.court-theme .auth-card{width:100%;max-width:420px;background:linear-gradient(155deg,var(--court-panel),var(--court-panel-hi));border:1px solid var(--hair);border-radius:20px;padding:34px 30px;position:relative;overflow:hidden}.court-theme .auth-card:after{content:"";position:absolute;inset:0;background:radial-gradient(360px 200px at 90% -20%,var(--ball-lime-dim),transparent 65%);pointer-events:none}.court-theme .auth-card>*{position:relative;z-index:1}.court-theme .auth-brand{display:inline-flex;font-family:var(--font-header);font-weight:800;font-size:1.15rem;text-decoration:none;margin-bottom:22px;color:var(--line-white)}.court-theme .auth-brand span{color:var(--flood-orange)}.court-theme .auth-eyebrow{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--flood-orange);font-weight:700}.court-theme .auth-title{font-size:1.5rem;margin:6px 0 4px}.court-theme .auth-subtitle{color:var(--line-dim);font-size:.9rem;margin-bottom:24px}.court-theme .auth-form{display:flex;flex-direction:column;gap:16px}.court-theme .auth-field{display:flex;flex-direction:column;gap:6px}.court-theme .auth-label{font-size:.8rem;font-weight:600;color:var(--line-dim)}.court-theme .auth-input-wrap{position:relative;display:flex;align-items:center}.court-theme .auth-input{width:100%;background:rgba(255,255,255,.03);border:1px solid var(--hair);border-radius:12px;padding:12px 14px;color:var(--line-white);font-size:.95rem;transition:border-color .15s ease,background-color .15s ease}.court-theme .auth-input::placeholder{color:var(--line-faint)}.court-theme .auth-input:focus{outline:none;border-color:var(--flood-orange);background:rgba(255,255,255,.05)}.court-theme .auth-input--with-toggle{padding-right:42px}.court-theme .auth-toggle-visibility{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:none;background:none;color:var(--line-faint);cursor:pointer}.court-theme .auth-toggle-visibility:hover{color:var(--line-dim)}.court-theme .auth-error{background:var(--court-red-dim);border:1px solid rgba(255,84,112,.35);color:var(--court-red);font-size:.85rem;border-radius:10px;padding:10px 12px}.court-theme .auth-success{background:var(--ball-lime-dim);border:1px solid rgba(223,255,0,.35);color:var(--ball-lime);font-size:.85rem;border-radius:10px;padding:10px 12px}.court-theme .auth-forgot-link{align-self:flex-end;font-size:.8rem;color:var(--line-dim)}.court-theme .auth-forgot-link:hover{color:var(--flood-orange)}.court-theme .auth-submit{width:100%;border:none;border-radius:12px;padding:13px 16px;font-family:var(--font-header);font-weight:700;font-size:.95rem;color:var(--court-void);background:var(--flood-orange);cursor:pointer;box-shadow:0 8px 20px rgba(255,140,0,.25)}.court-theme .auth-submit:disabled{opacity:.6;cursor:wait}.court-theme .auth-footer{margin-top:22px;text-align:center;font-size:.85rem;color:var(--line-dim)}.court-theme .auth-footer a{color:var(--flood-orange);font-weight:600;text-decoration:none}.court-theme .auth-footer a:hover{text-decoration:underline}@media (max-width:620px){.court-theme .stat-panel{grid-template-columns:1fr;text-align:center}.court-theme .stat-copy .eyebrow,.court-theme .stat-readouts{justify-content:center}.court-theme .program-head{flex-wrap:wrap}.court-theme .program-meter{text-align:left;margin-left:54px}.court-theme .circuit:before{left:23px}.court-theme .node-row--left,.court-theme .node-row--right{justify-content:flex-start}.court-theme .node-row--right .node-card{flex-direction:row;text-align:left}.court-theme .node-card{width:100%}.court-theme .node-row--left .node-card:after,.court-theme .node-row--right .node-card:after{left:46px;width:0}}@media (prefers-reduced-motion:no-preference){.court-theme .node-card{transition:transform .15s ease}.court-theme .node-card:hover{transform:translateY(-2px)}.court-theme .auth-submit:hover:not(:disabled){transform:translateY(-1px);transition:transform .15s ease}}