:root{--ink:#102535;--muted:#71808a;--line:#e4e9e8;--canvas:#f5f7f4;--card:#fff;--mint:#d6eee2;--green:#1f795b;--orange:#f4a65f;--danger:#af514e;--shadow:0 10px 34px rgba(21,43,50,.055)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font:16px/1.55 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}.app-shell{min-height:100vh;display:flex}.sidebar{width:232px;flex:none;background:#102535;color:#e6f2ee;padding:32px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;font-size:10px;line-height:1.2;letter-spacing:.13em;font-weight:650}.brand strong{font-size:14px;letter-spacing:.09em}.brand-mark{width:46px;height:46px;display:grid;place-items:center;background:#d7eee2;color:var(--ink);border-radius:14px;font-size:27px;font-weight:900;letter-spacing:-.15em;padding-right:4px}.brand-mark span{color:#e69550}.side-label{color:#72948d;font-size:10px;letter-spacing:.18em;font-weight:700;margin:57px 12px 16px}.side-nav{display:grid;gap:5px}.nav-btn{border:0;background:transparent;color:#a9c2bb;text-align:left;padding:12px 13px;border-radius:11px;font-size:13px;font-weight:600;display:flex;gap:13px;align-items:center}.nav-btn span{width:20px;text-align:center;font-size:20px;font-weight:400;line-height:1}.nav-btn:hover,.nav-btn.active{background:#294b4b;color:#fff}.sidebar-foot{margin-top:auto;border-top:1px solid #375352;padding:25px 11px 0}.tiny-badge{border:1px solid #7aa49a;border-radius:100px;color:#bce4d1;font-size:10px;font-weight:750;letter-spacing:.1em;padding:5px 9px}.sidebar-foot p{color:#a9c2bb;font-size:13px;line-height:1.45;margin:17px 0 0}.main{min-width:0;flex:1}.topbar{height:73px;padding:0 clamp(24px,4vw,58px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fcfdfb}.topbar-name{font-size:12px;color:#8a9899}.topbar-name span{padding:0 7px;color:#bcc5c6}.topbar-name strong{color:var(--ink)}.topbar-actions{display:flex;align-items:center;gap:24px}.topbar-date{color:#829093;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.content{max-width:1350px;margin:auto;padding:32px clamp(24px,4vw,58px) 80px}.view{display:none}.view.active{display:block}.primary,.secondary{border-radius:9px;border:1px solid transparent;padding:11px 17px;font-size:12px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:20px;text-decoration:none;transition:transform .15s,box-shadow .15s}.primary{background:#287d60;color:white}.primary:hover{background:#206e53;transform:translateY(-1px);box-shadow:0 7px 19px rgba(34,110,83,.16)}.primary.small{padding:9px 13px}.secondary{background:#fff;color:var(--ink);border-color:#d9e2df}.secondary:hover{background:#edf5ef}.text-button{border:0;background:none;color:var(--green);padding:0;font-size:12px;font-weight:750}.text-button:hover{text-decoration:underline}.hero{min-height:285px;background:#d9eee3;border-radius:17px;display:flex;justify-content:space-between;overflow:hidden;position:relative;padding:34px 50px;box-shadow:var(--shadow)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.17em;color:#367a60}.eyebrow.dark{color:#378568}.hero h1,.page-intro h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,3.5vw,53px);font-weight:500;letter-spacing:-.042em;line-height:1.08;margin:15px 0}.hero h1 em{font-style:italic;color:#297759}.hero p{font-size:13px;max-width:430px;color:#557263;margin:0 0 23px}.hero-art{width:320px;position:absolute;right:50px;top:0;bottom:0}.orbit{position:absolute;border:1px solid rgba(40,114,85,.25);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-one{width:300px;height:300px}.orbit-two{width:244px;height:244px}.hero-disc{width:170px;height:170px;border-radius:50%;background:#a9d6ba;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-14deg);box-shadow:inset -21px -18px 0 rgba(64,133,100,.1),0 15px 30px rgba(53,112,83,.12);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-family:Georgia,serif;font-size:25px;letter-spacing:.09em;color:#336c56}.hero-disc span:nth-child(2){font-size:28px;color:#f8fbf4}.spark{position:absolute;color:#33835f}.spark-one{right:17px;top:36px;font-size:35px}.spark-two{left:12px;bottom:34px;font-size:28px}.section-head{display:flex;align-items:end;justify-content:space-between;margin:37px 0 17px}.section-head h2{font:500 25px Georgia,serif;margin:4px 0 0}.muted{font-size:11px;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:12px;min-height:135px;padding:20px 21px;display:flex;flex-direction:column;box-shadow:var(--shadow)}.stat-card span{color:#62717a;font-size:12px}.stat-card strong{font:500 37px Georgia,serif;margin:9px 0 0;line-height:1}.stat-card strong small{font:500 16px Georgia,serif;color:#5c7c6d}.stat-card>small{font-size:10px;color:#879397;margin-top:auto}.stat-card.accent{background:#eff7ee;border-color:#d5ead6}.dashboard-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:13px;margin-top:13px}.panel{background:var(--card);border:1px solid var(--line);border-radius:13px;padding:25px;box-shadow:var(--shadow)}.panel h3{font:500 24px Georgia,serif;margin:5px 0 20px}.panel-head{display:flex;align-items:start;justify-content:space-between}.focus-list{display:grid;gap:9px}.focus-item{display:flex;align-items:center;justify-content:space-between;border:1px solid #edf0ef;border-radius:10px;padding:12px 14px;gap:10px;background:#fbfcfa}.focus-item strong{font-size:13px}.focus-item small{display:block;color:#798a8a;font-size:11px}.focus-item button{border:none;background:#e3f2e8;color:#237457;border-radius:7px;font-weight:750;font-size:11px;padding:7px 10px}.section-bars{display:grid;gap:16px;margin:31px 0}.bar-label{display:flex;justify-content:space-between;font-size:12px;font-weight:700;margin-bottom:6px}.bar-label small{color:#8a9899;font-weight:600}.bar-track{height:8px;background:#ecf1ef;border-radius:9px;overflow:hidden}.bar-track div{height:100%;background:#72bd96;border-radius:9px}.bar-row:nth-child(2) .bar-track div{background:#91aebd}.bar-row:nth-child(3) .bar-track div{background:#e8aa6b}.panel-note{color:#889594;font-size:11px;line-height:1.5;margin:17px 0 0}.trust-note{display:flex;align-items:start;gap:14px;background:#edf4ef;border:1px solid #dce9de;border-radius:12px;padding:15px 18px;margin-top:15px}.trust-icon{display:grid;place-items:center;width:27px;height:27px;flex:none;background:#d7e9de;border-radius:50%;color:#37785b;font-size:13px;font-weight:750}.trust-note p{font-size:11px;color:#6a8073;margin:1px 0}.trust-note strong{color:#365f4c}.page-intro{margin:16px 0 30px}.page-intro h1{font-size:clamp(36px,3vw,48px);margin:11px 0}.page-intro p{font-size:13px;color:#71818a;max-width:600px;margin:0}.filters{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:14px;padding:20px}.filters label,.settings-grid label,.review-toolbar label{display:grid;gap:7px;font-size:11px;font-weight:750;color:#607578}.filters input,.filters select,.settings-grid input,.review-toolbar select,.timer-top select{width:100%;border:1px solid #dfe6e3;border-radius:8px;background:#fbfcfa;color:var(--ink);padding:10px 11px;outline:0;font-size:12px}.filters input:focus,.filters select:focus,.settings-grid input:focus,.review-toolbar select:focus{border-color:#3f9a75;box-shadow:0 0 0 3px rgba(63,154,117,.13)}.list-heading{display:flex;justify-content:space-between;align-items:center;margin:24px 1px 12px;font-size:12px}.list-heading span{font-size:11px;color:#899696}.question-list{display:grid;gap:9px}.question-card{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px 17px;box-shadow:var(--shadow)}.question-symbol{width:42px;height:42px;flex:none;border-radius:9px;background:#e6f2ea;color:#28785a;display:grid;place-items:center;font-size:11px;font-weight:850}.question-symbol.DILR{background:#e9eff3;color:#537a91}.question-symbol.QA{background:#fff0e3;color:#a7642d}.question-main{min-width:0;flex:1}.question-main strong{font-size:13px}.question-main small{display:block;font-size:11px;color:#849192;margin-top:1px}.badge{border-radius:100px;padding:5px 9px;font-size:10px;font-weight:750;white-space:nowrap}.badge.verified{background:#e2f3e9;color:#277456}.badge.unverified{background:#f0f2f2;color:#768588}.badge.wrong{background:#fae8e5;color:#ad5250}.badge.correct{background:#e0f2e7;color:#287b58}.badge.skipped{background:#f5efe0;color:#a07625}.question-card button{background:none;border:0;color:#226f55;font-weight:750;font-size:11px;white-space:nowrap}.question-card button:hover{text-decoration:underline}.load-more{margin:18px auto 0;display:flex}.empty-state{background:#fff;border:1px dashed #cfdbd5;padding:27px;border-radius:11px;font-size:13px;color:#72837e}.review-toolbar{display:flex;align-items:end;gap:12px;margin-bottom:17px}.review-toolbar label{min-width:190px}.timer-layout{display:grid;grid-template-columns:1.3fr .8fr;gap:15px}.timer-panel{min-height:360px;padding:32px}.timer-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.16em;font-weight:800;color:#729189}.timer-top select{width:125px;letter-spacing:normal;font-weight:700}.time-display{font:500 clamp(70px,10vw,126px)/1.15 Georgia,serif;text-align:center;letter-spacing:-.07em;margin:33px 0 24px;font-variant-numeric:tabular-nums}.timer-track{height:10px;border-radius:100px;background:#e9f0eb;overflow:hidden}.timer-track div{height:100%;width:100%;background:#78bb91;transition:width .3s}.timer-buttons{display:flex;justify-content:center;gap:10px;margin-top:28px}.timer-guide ol{padding-left:23px;margin:22px 0 35px}.timer-guide li{font-size:13px;color:#697b7a;margin-bottom:15px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.settings-grid .panel{display:grid;align-content:start;gap:14px}.settings-grid h3{margin-bottom:3px}.settings-grid p{color:#71827d;font-size:13px;margin:0}.settings-grid .primary{justify-self:start}.data-actions{display:flex;flex-wrap:wrap;gap:10px}.file-label{cursor:pointer}.file-label input{display:none}.form-status{min-height:18px;color:#387856!important;font-size:11px!important}.mobile-nav{display:none}.question-dialog{width:min(580px,calc(100vw - 24px));max-height:calc(100vh - 32px);border:0;border-radius:15px;padding:28px;box-shadow:0 24px 90px rgba(11,35,42,.28);overflow:auto}.question-dialog::backdrop{background:rgba(10,32,38,.55)}.question-dialog form{display:flex;justify-content:end}.dialog-close{border:0;background:none;color:#637a74;font-size:27px;line-height:1}.dialog-header{display:flex;align-items:center;gap:12px;margin:2px 0 20px}.dialog-header h2{font:500 26px Georgia,serif;margin:0}.dialog-header small{font-size:11px;color:#849190}.dialog-section{border-top:1px solid var(--line);padding-top:17px;margin-top:16px}.dialog-section h3{font-size:13px;margin:0 0 8px}.dialog-section p{font-size:12px;color:#647875;margin:0}.dialog-answer{background:#edf6ed;border-radius:9px;padding:14px;margin-top:14px}.dialog-answer strong{font-size:16px}.dialog-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.dialog-actions a{text-decoration:none}.result-buttons{display:flex;gap:7px;flex-wrap:wrap}.result-buttons button{border:1px solid #dbe5df;background:#fff;border-radius:7px;padding:8px 12px;font-size:11px;font-weight:700}.result-buttons button.selected{background:#d9efdf;border-color:#8bbba1;color:#236b4b}.dialog-field{display:grid;gap:6px;margin-top:12px;font-size:11px;font-weight:750;color:#5f7570}.dialog-field textarea,.dialog-field select{width:100%;border:1px solid #dce5df;border-radius:8px;padding:10px;font:12px/1.5 inherit;background:#fff;color:var(--ink)}.dialog-field textarea{min-height:80px;resize:vertical}.dialog-save{margin-top:14px}.dialog-warning{color:#a35a45!important;margin-top:9px!important}
.weekly-heading{display:flex;justify-content:space-between;margin:6px 0 7px;font-size:11px}.weekly-heading span{color:#5e8d72}
@media(max-width:1050px){.sidebar{width:195px}.hero-art{right:12px;opacity:.7}.filters{grid-template-columns:repeat(3,1fr)}.filters label:first-child{grid-column:span 3}.stat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:740px){body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}.sidebar{display:none}.topbar{height:60px;padding:0 18px}.topbar-date{display:none}.topbar-actions{gap:0}.topbar-name{font-size:11px}.topbar .primary{font-size:10px;padding:8px 10px}.content{padding:18px 16px 48px}.hero{padding:27px 24px;min-height:295px}.hero-art{right:-78px;opacity:.32}.hero h1{font-size:40px;position:relative;z-index:1}.hero p{max-width:300px;position:relative;z-index:1}.hero .primary{position:relative;z-index:1}.section-head{margin-top:29px}.section-head h2{font-size:24px}.stat-grid{gap:8px}.stat-card{padding:17px 15px;min-height:125px}.stat-card strong{font-size:34px}.dashboard-grid,.timer-layout,.settings-grid{grid-template-columns:1fr}.panel{padding:21px}.filters{grid-template-columns:repeat(2,1fr);gap:11px;padding:16px}.filters label:first-child{grid-column:span 2}.question-card{padding:12px 11px;gap:9px}.question-symbol{width:36px;height:36px}.question-main strong{font-size:12px}.question-main small{font-size:10px}.question-card .badge{display:none}.list-heading span{display:none}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;background:#fff;border-top:1px solid #e2e9e4;padding:6px 5px calc(6px + env(safe-area-inset-bottom));justify-content:space-around;box-shadow:0 -8px 30px rgba(23,49,51,.05)}.mobile-btn{border:0;background:none;color:#8a9c94;font-size:9px;font-weight:750;display:grid;justify-items:center;gap:1px;padding:4px 7px}.mobile-btn span{font-size:19px;line-height:1.3}.mobile-btn.active{color:#277759}.timer-panel{min-height:300px}.time-display{font-size:83px;margin:28px 0}.question-dialog{padding:22px}}
@media(max-width:390px){.hero h1{font-size:34px}.hero-art{right:-125px}.topbar-name{max-width:125px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filters{grid-template-columns:1fr}.filters label:first-child{grid-column:span 1}.section-head .muted{display:none}}
.coach-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,.75fr);gap:15px}.coach-panel{display:flex;flex-direction:column;min-height:590px}.coach-toolbar{display:flex;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:15px}.coach-toolbar label,.coach-aside label{display:grid;gap:6px;color:#607578;font-size:11px;font-weight:750}.coach-toolbar select,.coach-aside input{border:1px solid #dce5df;border-radius:8px;padding:9px;background:#fbfcfa;color:var(--ink);font-size:12px}.coach-context{background:#edf6ed;color:#32775b;padding:9px 12px;border-radius:8px;font-size:11px;margin-top:13px}.coach-messages{flex:1;min-height:250px;max-height:480px;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:20px 0}.coach-welcome{align-self:flex-start;background:#edf6ed;border-radius:12px;padding:14px;max-width:85%;font-size:13px;color:#4d6c5c}.coach-message{white-space:pre-wrap;overflow-wrap:anywhere;max-width:88%;border-radius:13px;padding:12px 15px;font-size:13px;line-height:1.6}.coach-message.user{align-self:flex-end;background:#dceee4}.coach-message.assistant{align-self:flex-start;background:#f3f5f2;border:1px solid #e4eae5}.coach-starters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:13px}.coach-starters button{border:1px solid #d7e7dc;background:#f5faf5;color:#357654;border-radius:100px;padding:7px 10px;font-size:11px;font-weight:700}.coach-form{display:flex;gap:9px;align-items:end}.coach-form textarea{flex:1;min-width:0;border:1px solid #dce5df;border-radius:9px;padding:11px;font:13px/1.5 inherit;resize:vertical}.coach-panel .form-status{margin:7px 0 0}.coach-aside{align-self:start;display:grid;gap:15px}.coach-aside h3{margin:0}.coach-aside p{margin:0;color:#71827d;font-size:12px}.coach-aside .secondary{justify-self:start}.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}
@media(max-width:900px){.coach-layout{grid-template-columns:1fr}.coach-panel{min-height:520px}.coach-aside{grid-row:1}}@media(max-width:740px){.mobile-btn{padding:4px 3px}.coach-form{align-items:stretch}.coach-form .primary{align-self:end}.coach-messages{min-height:220px}.coach-panel{min-height:480px}}
