:root{--app-height: 100dvh;--bg: #f5f8f6;--paper: #ffffff;--paper-soft: #f0faf7;--ink: #061a44;--muted: #66728a;--line: #e6ebef;--teal: #088982;--teal-2: #0fb4a4;--mint: #dff5ec;--yellow: #fff0b8;--gold: #f5b91b;--coral: #f46f5e;--green: #2eb872;--shadow: 0 14px 38px rgba(11, 31, 61, .08);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;width:100%}html{background:var(--bg);overflow:hidden}body{background:radial-gradient(circle at top left,rgba(15,180,164,.12),transparent 34rem),linear-gradient(180deg,#fbfcfb 0%,var(--bg) 100%);margin:0;min-height:var(--app-height);overflow:hidden;overscroll-behavior:none;touch-action:manipulation}#root{min-height:var(--app-height)}button,input{font:inherit}button{border:0}button:disabled{cursor:not-allowed;opacity:.55}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.app-shell{align-items:stretch;display:flex;height:var(--app-height);justify-content:flex-start;min-height:var(--app-height);overflow:hidden;width:100%}.telegram-frame{background:var(--bg);border:0;border-radius:0;box-shadow:none;display:flex;flex:1 1 auto;flex-direction:column;height:100%;max-width:none;min-height:0;overflow:hidden;position:relative;width:100%}.top-bar{align-items:center;background:#ffffffeb;border-bottom:1px solid var(--line);display:grid;grid-template-columns:42px 1fr 42px;flex:0 0 auto;gap:10px;min-height:calc(64px + env(safe-area-inset-top,0px));padding:calc(9px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) 9px max(16px,env(safe-area-inset-left,0px));position:relative;z-index:6}.brand-mark,.top-level-chip{align-items:center;background:linear-gradient(180deg,#fff,#effbf7);border:1px solid rgba(8,137,130,.16);border-radius:16px;box-shadow:0 8px 22px #08898214;color:var(--teal);display:inline-flex;height:42px;justify-content:center;width:42px}.top-title{text-align:center;user-select:none}.top-title span{align-items:center;display:inline-flex;font-size:18px;font-weight:800;gap:5px;letter-spacing:-.02em}.top-title small{color:#8390a4;display:block;font-size:12px;font-weight:700;letter-spacing:.04em;margin-top:2px;text-transform:uppercase}.top-level-chip{font-size:13px;font-weight:900;justify-self:end;letter-spacing:.02em}.screen{flex:1 1 auto;height:auto;min-height:0;overflow:hidden}.dictionary-mode .top-bar,.dictionary-mode .bottom-nav,.practice-focus-mode .top-bar,.practice-focus-mode .bottom-nav{display:none}.dictionary-mode .screen{flex-basis:100%;height:100%}.practice-focus-mode .page{background:#fffdf7;padding:0 max(0px,env(safe-area-inset-right,0px)) 0 max(0px,env(safe-area-inset-left,0px))}.practice-focus-mode .screen{background:#fffdf7}.app-error-card{align-self:center;background:var(--paper);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);margin:auto;max-width:420px;padding:22px;text-align:center;width:calc(100% - 32px)}.app-error-card h1{font-size:24px;margin-bottom:8px}.app-error-card p:not(.eyebrow){color:var(--muted);line-height:1.45}.page{height:100%;overflow-y:auto;padding:clamp(14px,4vw,22px) max(clamp(14px,4vw,24px),env(safe-area-inset-right,0px)) calc(96px + env(safe-area-inset-bottom,0px)) max(clamp(14px,4vw,24px),env(safe-area-inset-left,0px));scrollbar-width:none;-webkit-overflow-scrolling:touch}.page::-webkit-scrollbar{display:none}.hero-band{align-items:center;background:linear-gradient(135deg,#fffffff5,#e0f7eff5),radial-gradient(circle at right,rgba(255,190,57,.18),transparent 18rem);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);display:grid;gap:10px;grid-template-columns:1fr 88px;min-height:0;overflow:hidden;padding:14px}.hero-band .eyebrow{font-size:10.5px;margin-bottom:5px}.eyebrow{color:var(--teal);font-size:12px;font-weight:800;letter-spacing:0;margin:0 0 8px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}.hero-band h1,.quiz-header h1,.result-card h1,.review-card h1{font-size:24px;line-height:1.05;margin-bottom:7px}.hero-band h1{font-size:22px;margin-bottom:5px}.hero-band p,.review-card p,.result-card p,.finish-card p,.streak-card p{color:var(--muted);line-height:1.45;margin-bottom:11px}.hero-band p:not(.eyebrow){display:-webkit-box;font-size:13.5px;line-height:1.35;margin-bottom:9px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.mascot{align-items:center;align-self:stretch;background:linear-gradient(180deg,#ecfbf5,#d7f4e9);border:1px solid #c8efe1;border-radius:22px;color:var(--teal);display:flex;justify-content:center;min-height:92px;position:relative}.mascot-head{align-items:center;background:#ffd5a6;border:3px solid #17335f;border-radius:999px;display:flex;gap:8px;height:48px;justify-content:center;left:13px;position:absolute;top:15px;width:48px}.mascot-head span{background:var(--ink);border-radius:999px;height:5px;width:5px}.mascot>svg{height:44px;width:44px}.hero-band .primary-button{font-size:13px;min-height:36px;padding:0 12px}.home-current-step{color:var(--muted);font-size:13px;font-weight:750;margin-bottom:9px}.home-page,.profile-page{background:radial-gradient(circle at 50% -12rem,rgba(8,137,130,.08),transparent 26rem),linear-gradient(180deg,#fffefd,#f7faf9)}.home-hero-stage{background:radial-gradient(circle at 82% 14%,rgba(255,184,77,.18),transparent 10rem),linear-gradient(135deg,#fffffffa,#f9fffcfa);border:0;box-shadow:none;grid-template-columns:minmax(0,1fr) 132px;min-height:148px;padding:18px 12px 10px}.home-hero-copy h1{font-size:clamp(36px,11vw,56px);letter-spacing:-.06em;line-height:.95;margin-bottom:10px}.home-hero-copy p:not(.eyebrow){-webkit-line-clamp:unset;color:#56627d;font-size:clamp(16px,4.4vw,21px);line-height:1.25;margin:0}.home-fox-mascot{align-self:end;background:radial-gradient(circle at 56% 30%,#ffb159 0 30%,transparent 31%),linear-gradient(180deg,#ecfbf5,#d9f4eb);border:0;border-radius:30px;min-height:124px;overflow:visible}.home-fox-face{background:#ff9b32;border-color:#743515;box-shadow:0 12px 24px #ff952a33;height:58px;left:34px;top:10px;width:58px}.home-fox-face:before,.home-fox-face:after{background:#ff9b32;border:3px solid #743515;border-bottom:0;content:"";height:18px;position:absolute;top:-12px;transform:rotate(-24deg);width:18px}.home-fox-face:before{left:4px}.home-fox-face:after{right:4px;transform:rotate(24deg)}.home-fox-mascot>svg:not(.home-sparkle){bottom:16px;color:var(--teal);height:50px;position:absolute;right:22px;width:50px}.home-sparkle{color:#f7c948;position:absolute}.home-sparkle.one{right:-2px;top:10px}.home-sparkle.two{color:#9ee6d7;left:6px;top:58px}.primary-button,.ghost-button{align-items:center;border-radius:16px;cursor:pointer;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:48px;padding:0 17px}.primary-button{background:var(--teal);color:#fff;box-shadow:0 10px 18px #08898233}.ghost-button{background:#eef5f3;color:var(--teal)}.progress-card,.audio-card,.reader-card,.finish-card,.student-card,.chart-card,.streak-card,.goal-card,.review-card,.search-card,.result-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.progress-card{align-items:center;display:grid;gap:11px;grid-template-columns:64px minmax(0,1fr) auto;margin-top:10px;padding:12px}.home-progress-card{border-radius:28px;box-shadow:0 18px 45px #122a4a1f;gap:18px;grid-template-columns:112px minmax(0,1fr) 112px;margin-top:0;padding:18px}.ring{align-items:center;background:radial-gradient(circle closest-side,white 74%,transparent 75%),conic-gradient(var(--teal-2) var(--value),#e7eaee 0);border-radius:999px;display:flex;flex-direction:column;height:64px;justify-content:center;width:64px}.home-progress-card .ring{height:112px;width:112px}.ring strong{font-size:18px}.home-progress-card .ring strong{font-size:34px;letter-spacing:-.05em}.ring span{color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}.home-progress-card .ring span{font-size:11px}.progress-copy h2,.finish-card h2,.chart-card h2,.streak-card h2,.goal-card h2{font-size:17px;margin-bottom:4px}.progress-copy p{color:var(--muted);font-size:13px;line-height:1.35;margin-bottom:9px}.home-progress-card .progress-copy h2{font-size:clamp(22px,6vw,30px);letter-spacing:-.04em}.home-progress-card .progress-copy p{font-size:16px;line-height:1.35}.progress-track{background:#e4e8ed;border-radius:999px;height:7px;overflow:hidden;width:100%}.home-progress-card .progress-track{height:12px;margin:14px 0 12px}.progress-track span,.quiz-progress span{background:linear-gradient(90deg,var(--teal),var(--teal-2));border-radius:inherit;display:block;height:100%}.mini-stats{display:grid;gap:7px;grid-template-columns:1fr;min-width:86px}.home-progress-card .mini-stats{gap:10px;min-width:0}.stat-pill{align-items:center;background:#f4f7f7;border:1px solid var(--line);border-radius:16px;display:flex;gap:10px;min-width:0;padding:11px}.stat-pill svg{flex:0 0 auto}.stat-pill strong,.stat-pill small{display:block}.stat-pill strong{font-size:17px}.stat-pill small{color:var(--muted);font-size:12px}.stat-pill.warm svg{color:var(--coral)}.stat-pill.gold svg{color:var(--gold);fill:#f5b91b40}.stat-pill.mint svg{color:var(--teal)}.progress-card .stat-pill{border-radius:14px;gap:6px;padding:7px 8px}.progress-card .stat-pill svg{height:17px;width:17px}.progress-card .stat-pill strong{font-size:14px;line-height:1}.progress-card .stat-pill small{font-size:10px;line-height:1.05}.home-progress-card .stat-pill{background:#f9fffb;border-color:#dff0e9;border-radius:18px;flex-direction:column;gap:5px;justify-content:center;min-height:82px;text-align:center}.home-progress-card .stat-pill svg{height:26px;width:26px}.home-progress-card .stat-pill strong{font-size:24px}.home-progress-card .stat-pill small{font-size:13px}.home-continue-button{min-height:40px;padding:0 14px}.home-summary-grid{display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin-top:10px}.home-summary-grid{margin-top:14px}.home-summary-grid .metric-card{min-height:112px;padding:12px}.home-summary-grid .metric-card>span{height:44px;width:44px}.connection-card{align-items:center;background:#fff8e5;border:1px solid #f2d58a;border-radius:18px;color:#815b07;display:grid;gap:4px;margin-top:10px;padding:12px 14px}.connection-card strong,.connection-card span{display:block}.connection-card span{font-size:13px;line-height:1.35}.chapter-path{display:grid;gap:15px;margin-top:18px;padding:8px 0;position:relative}.chapter-path:before{content:"";display:none}.home-path-heading{align-items:end;display:flex;justify-content:space-between;margin:20px 4px 0}.home-path-heading span,.home-path-heading strong{display:block}.home-path-heading span{color:var(--ink);font-size:20px;font-weight:950;letter-spacing:-.03em}.home-path-heading strong{color:var(--teal);font-size:13px}.chapter-card{align-items:center;background:var(--paper);border:1px solid #dfe9e6;border-radius:30px;box-shadow:0 12px 34px #122a4a1c;color:inherit;cursor:pointer;display:grid;gap:12px;grid-template-columns:74px 1fr 18px;min-height:104px;padding:13px 16px 13px 12px;position:relative;text-align:left;width:min(86%,440px);z-index:1}.chapter-card.right{justify-self:end}.chapter-card.current{border:3px solid var(--teal-2);box-shadow:0 18px 42px #08898238}.chapter-card.locked{color:#87909e;cursor:not-allowed;filter:grayscale(.65);opacity:.78}.chapter-node{align-items:center;background:#e9f8f3;border:3px solid #d8f2e9;border-radius:999px;color:var(--teal);display:inline-flex;height:74px;justify-content:center;position:relative;width:74px}.chapter-card.current .chapter-node{background:var(--teal);border-color:var(--teal);color:#fff}.node-badge{background:var(--green);border:3px solid var(--paper);border-radius:999px;color:#fff;position:absolute;right:-4px;top:-7px}.locked-badge{background:#9098a6}.chapter-title{display:block;font-size:16px;font-weight:850;line-height:1.2}.chapter-meta{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:13px;gap:8px;margin-top:8px}.difficulty{border-radius:999px;font-weight:800;padding:4px 10px}.difficulty.easy{background:#ddf5eb;color:#087a64}.difficulty.medium{background:#e9f4d7;color:#4c940c}.difficulty.hard{background:#ffe0e8;color:#cf2d53}.current-chip{background:var(--teal);border-radius:12px 12px 0;color:#fff;font-size:11px;font-weight:850;padding:7px 13px;position:absolute;right:-3px;text-transform:uppercase;top:-14px}.chapter-arrow{color:#7d8797}.audio-card{align-items:center;display:grid;gap:13px;grid-template-columns:66px 1fr;padding:16px;position:sticky;top:0;z-index:4}.play-button{align-items:center;background:var(--teal);border-radius:999px;color:#fff;cursor:pointer;display:flex;height:66px;justify-content:center;width:66px}.audio-heading{align-items:center;display:flex;justify-content:space-between}.audio-heading h2{font-size:17px;margin-bottom:2px}.audio-heading p{color:var(--teal);font-size:14px;font-weight:750;margin:0}.range{accent-color:var(--teal);width:100%}.audio-foot{color:var(--muted);display:flex;font-size:12px;justify-content:space-between}.speed-group{display:grid;gap:7px;grid-column:1 / -1;grid-template-columns:1fr 1fr}.speed-group button{background:#f2f6f6;border:1px solid var(--line);border-radius:12px;color:var(--muted);cursor:pointer;min-height:38px}.speed-group .selected{background:#e7f7f3;color:var(--teal);font-weight:850}.reader-card{margin-top:14px;min-height:488px;overflow:hidden;position:relative}.reader-copy{padding:28px 48px 30px 24px}.sentence{border-radius:13px;color:var(--ink);font-size:clamp(23px,6vw,30px);line-height:1.5;margin:0 0 18px;padding:2px 0}.sentence.active{background:#ffffff6b;box-shadow:0 0 0 5px #ffffff94,inset 0 -.14em #ffffffb8}.inline-word{background:#0889821a;border-bottom:0;border-radius:.18em;box-decoration-break:clone;-webkit-box-decoration-break:clone;box-shadow:inset 0 -.08em #08898238;color:#006f69;cursor:pointer;display:inline;padding:0 .06em;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.inline-word:focus:not(:focus-visible){outline:0}.inline-word:active{background:#08898226}.inline-word.selected{background:#08898214;border-radius:.18em;box-decoration-break:clone;-webkit-box-decoration-break:clone;box-shadow:inset 0 -.1em #08898247}.inline-word.inline-phrase{background:#08898221;border-bottom:0;border-radius:.18em;box-decoration-break:clone;-webkit-box-decoration-break:clone;box-shadow:inset 0 -.1em #0889823d;color:#006f69;padding:0 .06em}.inline-word.inline-phrase:active{background:#0889821f}.reader-token{border-radius:.24em;box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 .04em}.guide-subject{background:#ffdc6994}.guide-predicate{background:#ffadb880}.guide-object,.guide-complement{background:#97deef80}.guide-modifier,.guide-time,.guide-place,.guide-reason{background:#b9e9a67a}.guide-connector,.guide-contrast{background:#ebc3f480}.inline-word.guide-chunk{border-bottom-color:#00857eb8;color:#006f69}.guide-chunk.spoken-word,.inline-word.guide-chunk.spoken{box-shadow:inset 0 -.12em #ffffffe6,0 0 0 1px #ffffff9e}.inline-word.spoken,.spoken-word{background:#ffffff73;border-radius:7px;box-shadow:inset 0 -.12em #ffffffe6,0 0 0 1px #ffffff9e;color:inherit}.reader-progress{align-items:center;bottom:24px;display:flex;flex-direction:column;gap:10px;position:absolute;right:12px;top:24px}.reader-progress:before{background:#e3e6ea;border-radius:999px;bottom:30px;content:"";position:absolute;top:0;width:5px}.reader-progress span{align-self:center;background:var(--teal);border-radius:999px;max-height:calc(100% - 35px);position:relative;width:5px;z-index:1}.reader-progress small{color:var(--teal);font-weight:800;margin-top:auto}.word-sheet{background:radial-gradient(circle at 50% -12%,rgba(15,180,164,.08),transparent 11rem),#fff;border:1px solid var(--line);border-radius:24px;bottom:max(18px,env(safe-area-inset-bottom,0px));box-shadow:0 24px 60px #061a4433;left:22px;max-height:min(440px,calc(var(--app-height) - 108px));overflow-y:auto;padding:18px 18px 16px;position:fixed;right:22px;z-index:20}.word-sheet-content{text-align:center}.word-sheet h3{color:#123d69;font-size:34px;letter-spacing:-.04em;line-height:1;margin-bottom:8px;text-transform:capitalize}.word-translation{color:#123d69;font-size:21px;font-weight:850;line-height:1.12;margin-bottom:10px}.word-sheet small{color:var(--muted)}.dictionary-form-note{color:#59708a;display:block;font-size:12px;font-style:normal;font-weight:800;margin:-3px 0 10px}.dictionary-form-note strong{color:var(--teal)}.word-sheet-close{align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;box-shadow:0 8px 22px #061a4414;color:var(--teal);cursor:pointer;display:inline-flex;height:40px;justify-content:center;position:absolute;right:14px;top:14px;width:40px}.dictionary-audio-row{display:flex;justify-content:center;margin:12px 0 13px}.dictionary-audio-row audio{display:none}.dictionary-audio-chip{align-items:center;background:#f7fbff;border:1px solid #d4e5f3;border-radius:999px;color:#123d69;cursor:pointer;display:inline-flex;font-size:12px;font-weight:850;gap:7px;min-height:38px;padding:0 18px}.dictionary-audio-chip svg{color:var(--teal)}.dictionary-definition-card{background:#fbfdff;border:1px solid #dbeaf5;border-radius:18px;margin-top:10px;padding:13px;text-align:left}.dictionary-definition-card span{color:#244a70;display:block;font-size:11px;font-weight:900;letter-spacing:.06em;margin-bottom:8px;text-transform:uppercase}.dictionary-definition-card small{color:#50627c;display:block;font-size:14px;line-height:1.35}.word-sheet .dictionary-example,.word-sheet .dictionary-context{display:block;margin-top:6px;text-align:left}.word-sheet .dictionary-context{color:#6d7381;font-style:italic}.dictionary-actions{align-items:center;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:13px}.dictionary-actions button,.dictionary-actions span{background:transparent;color:var(--teal);cursor:pointer;font-size:12px;font-weight:850;padding:0;text-decoration:none}.level-chip{background:#e7f7f3;border-radius:999px;color:var(--teal);display:inline-block;font-size:11px;font-weight:800;margin-bottom:10px;padding:4px 9px}.reader-actions{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));margin-top:14px}.reader-actions button{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);color:var(--ink);cursor:pointer;display:flex;flex-direction:column;font-size:13px;font-weight:750;gap:8px;justify-content:center;min-height:86px;padding:12px 8px}.reader-actions svg{color:var(--teal)}.reader-actions button.selected{background:#e9f8f4;border-color:#00968857;color:var(--teal)}.finish-card{align-items:center;display:grid;gap:14px;margin-top:14px;padding:17px}.finish-actions{display:grid;gap:10px;grid-template-columns:.78fr 1.22fr}.session-stats{display:grid;gap:8px;grid-template-columns:repeat(3,1fr);margin-top:14px}.session-stats .stat-pill{align-items:center;flex-direction:column;gap:5px;text-align:center}.quiz-header{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:4px 0 14px}.quiz-header span{background:#e7f7f3;border-radius:999px;color:var(--teal);flex:0 0 auto;font-weight:850;padding:10px 14px}.quiz-progress{background:#e2e7eb;border-radius:999px;height:9px;margin-bottom:16px;overflow:hidden}.quizup-page{background:radial-gradient(circle at 8% 4%,rgba(15,180,164,.12),transparent 18rem),radial-gradient(circle at 92% 2%,rgba(245,185,27,.13),transparent 16rem),linear-gradient(180deg,#fbfcfb 0%,var(--bg) 100%);color:var(--ink);display:flex;min-height:100%;padding:clamp(14px,4vw,20px) max(14px,env(safe-area-inset-right,0px)) calc(94px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px))}.quizup-page-embedded{background:linear-gradient(135deg,#fffffff5,#effaf7f5),radial-gradient(circle at right top,rgba(15,180,164,.12),transparent 13rem);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);min-height:auto;overflow:hidden;padding:clamp(13px,3.4vw,18px)}.quizup-page-embedded .quizup-shell{gap:9px;min-height:auto}.quizup-page-embedded .quizup-eyebrow{margin-top:0}.quizup-page-embedded .quizup-options button{min-height:52px;padding:11px 13px}.quizup-shell,.quizup-result-card,.quizup-review-card{margin:0 auto;max-width:470px;width:100%}.quizup-shell{display:grid;gap:11px;min-height:calc(100dvh - 184px)}.quizup-topline{align-items:center;color:var(--muted);display:flex;font-size:12px;font-weight:850;justify-content:space-between}.quizup-progress{background:#e3ebe8;border-radius:999px;height:7px;overflow:hidden}.quizup-progress span{background:linear-gradient(90deg,var(--teal),var(--teal-2));border-radius:inherit;display:block;height:100%;transition:width .24s ease}.quizup-eyebrow{color:var(--teal);font-size:10.5px;font-weight:900;letter-spacing:.04em;margin:clamp(8px,2vh,16px) 0 0;text-align:center;text-transform:uppercase}.quizup-shell h1{color:var(--ink);font-size:clamp(20px,5.2vw,28px);letter-spacing:-.035em;line-height:1.24;margin:0 auto;max-width:430px;text-align:center}.quizup-auto-pill{align-items:center;background:#e9f8f5;border:1px solid #cfeee7;border-radius:999px;color:var(--teal);display:inline-flex;font-size:11.5px;font-weight:850;gap:6px;justify-self:center;padding:6px 10px}.quizup-help{color:var(--muted);display:block;font-size:12.5px;font-weight:650;text-align:center}.quizup-options{display:grid;gap:9px;margin-top:2px}.quizup-options button{background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 24px #0b1f3d12;color:var(--ink);cursor:pointer;font-size:clamp(14.5px,3.8vw,17px);font-weight:850;line-height:1.25;min-height:58px;padding:12px 14px;text-align:center;transition:transform .14s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease,color .16s ease;-webkit-tap-highlight-color:transparent}.quizup-options button:not(:disabled):active{transform:scale(.985)}.quizup-options button.correct,.quizup-options button.revealed{background:#e2f8ed;border-color:#94dec0;box-shadow:0 10px 24px #2eb87221;color:#087a52}.quizup-options button.wrong{background:#fff0ec;border-color:#f7b4aa;box-shadow:0 10px 24px #f46f5e1f;color:#aa3528}.quizup-feedback{border-radius:16px;font-size:12.5px;font-weight:800;line-height:1.35;padding:10px 12px;text-align:center}.quizup-feedback.correct{background:#e9f8f1;color:#087a52}.quizup-feedback.wrong{background:#fff0ec;color:#aa3528}.quizup-result-card,.quizup-review-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:20px;text-align:center}.quizup-result-card .eyebrow{color:var(--teal)}.quizup-result-card h1{color:var(--ink);font-size:clamp(25px,6vw,36px);letter-spacing:-.045em;line-height:1.05;margin-bottom:14px}.quizup-result-card small{color:var(--muted);display:block;font-size:12.5px;line-height:1.4}.quizup-score-ring{align-items:center;background:#f7fbfa;border:8px solid #e3ebe8;border-radius:999px;display:inline-flex;flex-direction:column;height:124px;justify-content:center;margin-bottom:14px;width:124px}.quizup-score-ring.passed{border-color:var(--green)}.quizup-score-ring.failed{border-color:var(--coral)}.quizup-score-ring strong{color:var(--ink);font-size:32px;letter-spacing:-.05em}.quizup-score-ring span{color:var(--muted);font-size:12px;font-weight:850}.quizup-result-actions{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.quizup-result-actions button,.quizup-primary-action{align-items:center;background:#eef5f3;border:1px solid #dce9e6;border-radius:14px;color:var(--teal);cursor:pointer;display:inline-flex;font-size:12.5px;font-weight:900;gap:6px;justify-content:center;min-height:42px;padding:0 12px}.quizup-primary-action{background:linear-gradient(135deg,var(--teal),var(--teal-2));border-color:transparent;color:#fff}.quizup-result-actions .quizup-primary-action{grid-column:1 / -1}.quizup-result-actions button:disabled{opacity:.42}.quizup-review-card{display:grid;gap:8px;margin-top:12px;text-align:left}.quizup-review-card h2{color:var(--ink);font-size:18px}.quizup-review-card article{background:#f7fbfa;border:1px solid var(--line);border-radius:14px;display:grid;gap:5px;padding:11px}.quizup-review-card strong{color:var(--ink);line-height:1.35}.quizup-review-card span,.quizup-review-card small{color:var(--muted);font-size:12.5px;line-height:1.35}.result-page{align-items:center;display:flex}.result-card{padding:26px 20px;text-align:center}.result-card .result-icon{align-items:center;background:#e7f7f3;border-radius:999px;color:var(--teal);display:inline-flex;height:94px;justify-content:center;margin-bottom:18px;width:94px}.result-card.failed .result-icon{background:#fff0e6;color:var(--coral)}.reward-row{display:grid;gap:10px;grid-template-columns:1fr 1fr;margin:18px 0}.search-card{align-items:center;display:flex;gap:10px;padding:14px 16px}.search-card svg{color:var(--teal)}.search-card input{background:transparent;border:0;color:var(--ink);outline:0;width:100%}.review-card{align-items:center;display:grid;gap:16px;grid-template-columns:1fr 95px;margin-top:14px;padding:18px}.word-list{display:grid;gap:11px;margin-top:14px}.dictionary-page{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0}.dictionary-frame-card{background:var(--paper);border:0;border-radius:0;box-shadow:none;display:flex;flex:1;flex-direction:column;height:100%;min-height:0;overflow:hidden;position:relative;width:100%}.dictionary-frame-card iframe{background:#fff;border:0;display:block;flex:1;height:100%;min-height:0;width:100%}.dictionary-overlay{background:var(--bg);display:flex;flex-direction:column;inset:0;overflow:hidden;position:absolute;z-index:12}.dictionary-overlay .dictionary-page{flex:1;height:100%}.dictionary-loading{align-items:center;background:linear-gradient(180deg,#fbfdff,#f4faf8);color:var(--muted);display:flex;flex-direction:column;gap:8px;inset:0;justify-content:center;position:absolute;z-index:1}.dictionary-loading span{color:#123d69;font-weight:850}.dictionary-floating-back{background:#ffffffeb;border:1px solid var(--line);border-radius:999px;box-shadow:0 12px 28px #061a4424;color:var(--teal);cursor:pointer;font-weight:850;left:max(12px,env(safe-area-inset-left,0px));min-height:40px;padding:0 16px;position:absolute;top:max(12px,env(safe-area-inset-top,0px));z-index:20}.word-row{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;padding:16px;text-align:left}.word-row strong,.word-row small{display:block}.word-row strong{font-size:18px;margin-bottom:4px;text-transform:capitalize}.word-row small{color:var(--muted);max-width:230px}.mastered,.learning{border-radius:999px;flex:0 0 auto;font-size:12px;font-weight:850;padding:7px 10px}.mastered{background:#ddf5eb;color:#087a64}.learning{background:#fff0d2;color:#9a6400}.student-card{align-items:center;display:grid;gap:15px;grid-template-columns:96px 1fr 26px;padding:18px}.profile-page .student-card{background:#fff;border-color:#e8edf1;border-radius:28px;box-shadow:0 14px 38px #122a4a17;gap:22px;grid-template-columns:118px minmax(0,1fr);margin-bottom:16px;min-height:146px;padding:24px 26px}.profile-avatar-wrap{position:relative;width:max-content}.avatar-portrait{align-items:center;background:linear-gradient(180deg,#dff3ed,#c8e7de);border-radius:28px;color:var(--teal);display:flex;height:96px;justify-content:center;width:96px}.profile-page .avatar-portrait{background:radial-gradient(circle at 50% 32%,#ffd0a8 0 16%,transparent 17%),radial-gradient(circle at 50% 72%,#0f766e 0 32%,transparent 33%),linear-gradient(180deg,#d9f2ed,#caebe3);border-radius:999px;box-shadow:inset 0 -10px 24px #08898214;height:118px;overflow:hidden;width:118px}.profile-edit-bubble{align-items:center;background:#fff;border:1px solid #e2e8ef;border-radius:999px;bottom:-2px;box-shadow:0 8px 18px #122a4a29;color:#5f6a7f;display:inline-flex;height:42px;justify-content:center;position:absolute;right:-6px;width:42px}.profile-hero-copy{min-width:0}.avatar-portrait img{border-radius:inherit;height:100%;object-fit:cover;width:100%}.student-card h1{font-size:25px;margin-bottom:8px}.profile-page .student-card h1{color:var(--ink);font-size:clamp(30px,7vw,38px);letter-spacing:-.05em;line-height:1;margin-bottom:14px}.student-card p{align-items:center;color:var(--teal);display:flex;flex-wrap:wrap;font-weight:850;gap:8px;margin-bottom:7px}.profile-page .student-card p{color:var(--teal);font-size:18px;gap:11px;margin-bottom:0}.student-card p span{background:#edf6f4;border-radius:999px;padding:7px 12px}.profile-page .student-card p span{background:#edf8f6;color:var(--teal);font-size:16px;padding:8px 18px}.student-card small{color:var(--muted);display:block;line-height:1.35}.profile-page .student-card small{color:#53617c;font-size:20px;line-height:1.42}.profile-card-arrow{align-items:center;align-self:center;color:#5d6577;display:inline-flex;justify-content:center}.profile-state{background:#fff8e5;border:1px solid #f2d58a;border-radius:999px;color:#815b07;font-size:12px;font-weight:850;justify-self:end;padding:7px 10px;text-align:center}.profile-state.live{background:#e7f8f2;border-color:#bdebdc;color:var(--teal)}.profile-page .profile-state{align-self:center;border-radius:999px;font-size:12px;padding:9px 12px}.stats-grid{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:14px}.profile-page .stats-grid{gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.metric-card{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);display:grid;gap:10px;min-height:136px;padding:15px}.profile-page .metric-card{align-items:center;border-color:#e9edf1;border-radius:26px;box-shadow:0 12px 30px #122a4a14;gap:14px;grid-template-columns:64px minmax(0,1fr);min-height:118px;padding:16px}.metric-card>span{align-items:center;background:#eef8f5;border-radius:999px;color:var(--teal);display:flex;height:56px;justify-content:center;width:56px}.profile-page .metric-card>span{background:#eef9f6;height:64px;width:64px}.metric-card p{color:var(--muted);font-size:13px;margin-bottom:3px}.profile-page .metric-card p{color:#64708b;font-size:16px;line-height:1.2}.metric-card strong{display:block;font-size:22px}.profile-page .metric-card strong{color:var(--ink);font-size:clamp(24px,5.2vw,30px);letter-spacing:-.05em;line-height:1.05}.metric-card small{color:var(--teal);font-size:12px}.profile-page .metric-card small{color:var(--teal);font-size:14px;line-height:1.25}.chart-card,.streak-card,.goal-card{margin-top:14px;padding:18px}.profile-page .chart-card,.profile-page .streak-card,.profile-page .goal-card{border-color:#e9edf1;border-radius:28px;box-shadow:0 12px 30px #122a4a14;margin-top:18px;padding:24px}.section-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.section-heading h2{margin:0}.profile-page .section-heading h2{font-size:24px;letter-spacing:-.03em}.section-heading span{color:var(--teal);font-weight:750}.bar-chart{align-items:end;display:grid;gap:11px;grid-template-columns:repeat(7,1fr);height:170px;margin-top:16px}.profile-page .bar-chart{background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,rgba(100,112,139,.11) 40px);border-bottom:1px solid #cfd8dc;height:190px;padding-top:4px}.empty-state-note{color:var(--muted);font-size:13px;line-height:1.4;margin:12px 0 0}.bar-column{align-items:center;display:grid;gap:7px;grid-template-rows:20px 1fr 18px;height:100%;min-width:0}.bar-column span{color:var(--teal);font-size:11px;font-weight:800}.bar-column div{align-items:end;background:linear-gradient(180deg,transparent 0%,transparent 100%);border-bottom:1px solid #cfd8dc;display:flex;height:100%;width:100%}.profile-page .bar-column div{border-bottom:0;justify-content:center}.bar-column i{background:linear-gradient(180deg,var(--teal-2),var(--teal));border-radius:9px 9px 0 0;display:block;width:100%}.profile-page .bar-column i{border-radius:10px 10px 0 0;max-width:38px}.bar-column small{color:var(--muted);font-size:12px;text-align:center}.streak-card{align-items:center;display:grid;gap:14px;grid-template-columns:64px 1fr}.profile-page .streak-card{gap:24px;grid-template-columns:92px minmax(0,1fr)}.streak-card>svg{background:#fff0d2;border-radius:999px;color:var(--coral);padding:12px}.profile-page .streak-card>svg{background:#fff2c9;color:#f97316;height:84px;padding:18px;width:84px}.week-dots{display:grid;gap:8px;grid-template-columns:repeat(7,1fr);margin-top:12px}.profile-page .week-dots{gap:12px}.week-dots span{align-items:center;background:#f3f5f7;border:1px solid var(--line);border-radius:999px;color:var(--muted);display:flex;flex-direction:column;font-weight:850;gap:4px;justify-content:center;min-height:44px}.profile-page .week-dots span{border-radius:999px;min-height:54px}.week-dots .done{background:var(--teal);color:#fff}.goal-card{align-items:center;display:grid;gap:15px;grid-template-columns:54px 1fr 62px}.profile-page .goal-card{grid-template-columns:78px minmax(0,1fr) auto 84px}.goal-card>svg{background:#edf8f5;border-radius:999px;color:var(--teal);padding:10px}.profile-page .goal-card>svg{height:72px;padding:16px;width:72px}.profile-page .goal-card em{color:var(--teal);font-size:18px;font-style:normal;font-weight:850;white-space:nowrap}.goal-card p{color:var(--muted);margin-bottom:10px}.goal-card strong{background:#edf8f5;border-radius:15px;color:var(--teal);padding:11px 0;text-align:center}.profile-page .goal-card strong{border-radius:18px;font-size:22px;padding:16px 0}.achievement-grid{display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-top:14px}.achievement{background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);min-height:118px;padding:16px}.achievement svg{color:var(--gold);margin-bottom:10px}.achievement strong,.achievement small{display:block}.achievement small{color:var(--muted);margin-top:4px}.achievement-progress{color:var(--teal);display:block;font-size:12px;font-weight:850;margin-top:10px}.achievement .progress-track{height:5px;margin-top:7px}.achievement.locked{filter:grayscale(1);opacity:.62}.bottom-nav{align-items:center;backdrop-filter:blur(18px);background:#fffffff0;border-top:1px solid var(--line);bottom:0;display:grid;grid-template-columns:repeat(5,1fr);height:calc(78px + env(safe-area-inset-bottom,0px));left:0;padding:7px max(6px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(6px,env(safe-area-inset-left,0px));position:absolute;right:0;z-index:8}.bottom-nav button{align-items:center;background:transparent;border-radius:16px;color:#687286;cursor:pointer;display:flex;flex-direction:column;font-size:11px;font-weight:750;gap:4px;min-height:55px;min-width:0;position:relative}.bottom-nav button svg{height:22px;width:22px}.bottom-nav button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bottom-nav button.active{color:var(--teal)}.bottom-nav button.active:before{background:var(--teal-2);border-radius:999px;content:"";height:4px;position:absolute;top:-7px;width:36px}.intro-page,.chapter-vocab-page{display:grid;gap:14px;align-content:start}.intro-hero,.vocab-lesson-header{background:linear-gradient(135deg,#fff,#eef9f4),radial-gradient(circle at right,rgba(245,185,27,.14),transparent 14rem);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:20px}.intro-hero h1,.vocab-lesson-header h1{font-size:27px;line-height:1.08;margin-bottom:10px}.intro-hero p,.vocab-lesson-header p{color:var(--muted);line-height:1.45;margin-bottom:16px}.intro-meta-grid{display:grid;gap:9px;grid-template-columns:repeat(3,1fr)}.intro-meta-grid .stat-pill{align-items:center;flex-direction:column;text-align:center}.requirements-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:18px}.requirements-card h2{font-size:18px;margin-bottom:13px}.requirement-row{align-items:center;border-top:1px solid #eef1f3;color:var(--muted);display:grid;gap:10px;grid-template-columns:30px 1fr auto;min-height:50px}.requirement-row:first-of-type{border-top:0}.requirement-row span{align-items:center;background:#f1f4f5;border-radius:999px;color:#8d96a3;display:inline-flex;height:28px;justify-content:center;width:28px}.requirement-row.done{color:var(--ink)}.requirement-row.done span{background:#ddf5eb;color:var(--teal)}.requirement-row small{font-weight:750;text-align:right}.chapter-action-list{display:grid;gap:11px}.chapter-action-list button{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:19px;box-shadow:var(--shadow);color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;min-height:82px;padding:15px 16px;text-align:left}.chapter-action-list strong,.chapter-action-list small{display:block}.chapter-action-list small{color:var(--muted);margin-top:5px}.chapter-action-list .locked-action{cursor:not-allowed;opacity:.66}.full-width{width:100%}.vocab-card-stack{display:grid;gap:12px}.vocab-study-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);color:var(--ink);cursor:pointer;padding:18px;text-align:left}.vocab-study-card strong{display:block;font-size:24px;margin-top:6px;text-transform:capitalize}.vocab-study-card em,.phonetic{color:var(--teal);display:block;font-style:normal;font-weight:750;margin:4px 0 8px}.vocab-study-card p{line-height:1.42;margin-bottom:8px}.vocab-study-card small{color:var(--muted);line-height:1.35}.vocab-lesson-header{align-items:center;display:flex;gap:16px;justify-content:space-between}.vocab-mastery-ring{align-items:center;aspect-ratio:1;background:radial-gradient(circle at center,#fff 58%,transparent 60%),conic-gradient(var(--teal) var(--value),#e7efed 0);border-radius:999px;color:var(--ink);display:inline-flex;flex:0 0 94px;flex-direction:column;justify-content:center;text-align:center}.vocab-mastery-ring strong{font-size:22px}.vocab-mastery-ring span{color:var(--muted);font-size:11px;font-weight:850}.vocab-deck-card,.vocab-quiz-gate,.vocab-summary-card,.vocab-all-words{background:var(--paper);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:18px}.vocab-deck-top,.vocab-stat-strip,.vocab-action-row,.vocab-session-header,.vocab-summary-grid{align-items:center;display:flex;gap:10px}.vocab-deck-top,.vocab-session-header{justify-content:space-between}.vocab-deck-top small,.vocab-stat-strip,.vocab-quiz-gate p,.vocab-summary-card p{color:var(--muted)}.vocab-deck-card h2,.vocab-quiz-gate h2,.vocab-summary-card h1{margin:10px 0}.vocab-stat-strip{flex-wrap:wrap;font-size:12px;font-weight:850;justify-content:space-between;margin-top:12px}.vocab-stat-strip span{background:#f2f7f5;border-radius:999px;padding:8px 10px}.vocab-action-row{margin-top:14px}.vocab-action-row button{flex:1}.vocab-quiz-gate{align-items:center;display:flex;gap:14px;justify-content:space-between}.vocab-quiz-gate.is-ready{background:linear-gradient(135deg,#effbf5,#fff);border-color:#bfe9d2}.vocab-collapse-button{align-items:center;background:transparent;border:0;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;padding:0;text-align:left;width:100%}.vocab-collapse-button span{font-size:18px;font-weight:900}.vocab-collapse-button small{color:var(--muted);font-weight:750}.search-card.compact{box-shadow:none;margin-top:14px}.word-list.compact{margin-top:12px;max-height:360px;overflow:auto}.vocab-session-page{display:grid;gap:12px;min-height:calc(var(--app-height) - 122px)}.vocab-session-header{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:12px}.vocab-session-header h1{font-size:22px;line-height:1}.vocab-state-pill{border-radius:999px;font-size:11px;font-weight:950;padding:8px 10px;text-transform:uppercase}.vocab-state-pill.is-new{background:#eef3f7;color:#506072}.vocab-state-pill.is-learning,.vocab-state-pill.is-review{background:#fff5d7;color:#8c6200}.vocab-state-pill.is-weak{background:#ffe9e5;color:#af3422}.vocab-state-pill.is-mastered{background:#def6ea;color:var(--teal)}.vocab-session-progress{background:#dfe9e6;border-radius:999px;height:8px;overflow:hidden}.vocab-session-progress span{background:linear-gradient(90deg,var(--teal),var(--teal-2));display:block;height:100%;transition:width .18s ease}.vocab-flashcard-stage{display:block}.vocab-flashcard-single{background:radial-gradient(circle at 85% 6%,rgba(0,151,137,.14),transparent 12rem),radial-gradient(circle at 12% 92%,rgba(243,177,70,.14),transparent 10rem),linear-gradient(180deg,#fff,#f8fbff);border:1px solid #dbe7ee;border-radius:30px;box-shadow:0 24px 55px #1c303e26;color:var(--ink);display:grid;gap:18px;min-height:390px;padding:22px;text-align:center}.vocab-flashcard-stage.is-revealed .vocab-flashcard-single{border-color:#00978952;box-shadow:0 28px 62px #00978929}.vocab-card-topline{align-items:center;display:flex;gap:10px;justify-content:space-between}.vocab-card-count{color:#7990a2;font-size:12px;font-weight:900}.vocab-card-main{align-content:center;display:grid;gap:11px;justify-items:center;min-height:152px}.vocab-card-mode{background:#edf6f3;border-radius:999px;color:var(--teal);font-size:12px;font-weight:950;letter-spacing:.04em;padding:8px 12px;text-transform:uppercase}.vocab-card-main strong{color:#0f3760;font-size:clamp(34px,10vw,58px);line-height:1.02;overflow-wrap:anywhere}.vocab-card-main em,.vocab-card-phonetic{color:#8aa0b4;font-style:normal;font-weight:850}.vocab-card-main small,.vocab-example{color:var(--muted);line-height:1.45}.vocab-card-prompt{align-content:end;display:grid;gap:14px;margin:0 auto;max-width:360px;width:100%}.vocab-card-prompt span{color:#5d7487;font-size:13px;font-weight:800;line-height:1.45}.vocab-card-answer{animation:vocabAnswerIn .18s ease both;display:grid;gap:12px;justify-items:center}.vocab-card-dictionary-link{align-items:center;background:#0a8f7f;border:0;border-radius:999px;box-shadow:0 12px 24px #0097892e;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:950;gap:8px;justify-content:center;margin-top:2px;padding:10px 14px}.vocab-card-dictionary-link:active{transform:translateY(1px)}@keyframes vocabAnswerIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.vocab-audio-prompt,.vocab-audio-row button,.vocab-dictionary-link{align-items:center;border-radius:999px;display:inline-flex;font-weight:900;gap:8px;justify-content:center}.vocab-audio-prompt{background:#eef7ff;border:1px solid #d5e9ff;color:#1e5f91;cursor:pointer;padding:11px 14px}.vocab-audio-row{display:flex;gap:10px}.vocab-audio-row button,.vocab-dictionary-link{background:#fff;border:1px solid #d6e4ef;color:#214d75;cursor:pointer;padding:10px 15px}.vocab-back-translation{color:#0a8f7f;font-size:24px;font-weight:950;margin:0}.vocab-back-detail{background:#f7fafc;border:1px solid #e1ebf2;border-radius:18px;padding:14px;text-align:left;width:100%}.vocab-back-detail span{color:#516577;display:block;font-size:11px;font-weight:950;letter-spacing:.05em;margin-bottom:7px;text-transform:uppercase}.vocab-grade-dock{background:#fffffff0;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);display:grid;gap:9px;grid-template-columns:repeat(4,1fr);padding:10px}.vocab-grade-dock:not(.is-ready){grid-template-columns:1fr}.vocab-grade-button{border:0;border-radius:18px;color:#fff;cursor:pointer;min-height:64px;padding:10px 8px}.vocab-grade-button strong,.vocab-grade-button small{display:block}.vocab-grade-button small{opacity:.9;font-size:11px;margin-top:3px}.vocab-grade-button.is-again{background:#d94b38}.vocab-grade-button.is-hard{background:#e39d26}.vocab-grade-button.is-good{background:#148f7f}.vocab-grade-button.is-easy{background:#0f6fb5}.vocab-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:14px}.quiz-header small{color:var(--muted);display:block;line-height:1.35;margin-top:7px}.gate-feedback{border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);margin-bottom:14px;padding:18px}.gate-feedback.passed{background:#eefaf4;border-color:#b8e7ce}.gate-feedback.failed{background:#fff2ef;border-color:#ffd2ca}.gate-feedback h2{font-size:20px;margin-bottom:7px}.gate-feedback p{color:var(--muted);line-height:1.42;margin-bottom:14px}.practice-page{display:grid;gap:14px;align-content:start}.practice-hero{align-items:end;background:linear-gradient(135deg,#fffffffa,#ecf9f4fa),radial-gradient(circle at 95% 0%,rgba(245,185,27,.17),transparent 15rem);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);display:grid;gap:14px;grid-template-columns:1fr minmax(170px,220px);padding:14px}.practice-hero h1{font-size:clamp(20px,5vw,27px);letter-spacing:-.04em;line-height:1.05;margin-bottom:0}.practice-hero p:not(.eyebrow){color:var(--muted);line-height:1.4}.practice-hero-actions{display:grid;gap:8px}.practice-topic-select{background:#f8fbfa;border:1px solid var(--line);border-radius:17px;display:grid;gap:5px;padding:10px 12px}.practice-topic-select span{color:var(--muted);font-size:11px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.practice-topic-select select{background:transparent;border:0;color:var(--ink);font:inherit;font-weight:850;outline:0;width:100%}.practice-home-grid,.practice-mode-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.practice-mode-card{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);color:var(--ink);cursor:pointer;display:flex;gap:10px;min-height:78px;padding:12px;text-align:left}.practice-mode-card svg{background:#eef8f5;border-radius:14px;color:var(--teal);flex:0 0 auto;height:38px;padding:8px;width:38px}.practice-mode-card span{display:grid;gap:3px;min-width:0}.practice-mode-card strong{font-size:14px;font-weight:900}.practice-mode-card small{color:var(--muted);font-size:11px;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.practice-mode-card.active{background:linear-gradient(135deg,#eafbf5,#fff);border-color:#08898242;box-shadow:0 16px 34px #08898221}.practice-selected-topic{align-items:center;background:#f8fbfa;border:1px solid var(--line);border-radius:18px;color:var(--ink);cursor:pointer;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) 38px;padding:10px;text-align:left}.practice-selected-topic span{display:grid;gap:2px;min-width:0}.practice-selected-topic small,.practice-selected-topic em,.practice-subpage-header small,.practice-selector-row small{color:var(--muted);font-style:normal}.practice-selected-topic strong{font-size:14px;font-weight:950}.practice-selected-topic em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.practice-selected-topic b{align-items:center;background:#e7f7f3;border-radius:999px;color:var(--teal);display:inline-flex;font-size:13px;height:38px;justify-content:center;width:38px}.practice-subpage-header{align-items:center;background:linear-gradient(135deg,#fff,#eff9f5),radial-gradient(circle at 100% 0%,rgba(245,185,27,.12),transparent 12rem);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;padding:14px}.practice-subpage-header h1{font-size:clamp(22px,6vw,30px);letter-spacing:-.04em;line-height:1.05;margin-bottom:4px}.practice-subpage-header .ghost-button{min-height:40px;padding:0 13px}.practice-reading-library-header{align-items:center;display:grid;gap:10px;grid-template-columns:42px minmax(0,1fr);padding:0 2px 2px}.practice-reading-library-header button{align-items:center;background:#eef8f5;border:1px solid var(--line);border-radius:16px;color:var(--teal);cursor:pointer;display:inline-flex;font-size:32px;font-weight:900;height:42px;justify-content:center;line-height:1;padding:0 0 4px;width:42px}.practice-reading-library-header h1{font-size:clamp(23px,6vw,30px);letter-spacing:-.045em;line-height:1.02;margin:1px 0 0}.practice-panel{display:grid;gap:14px}.practice-reader-toolbar{align-items:center;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto}.practice-reader-toolbar h1{font-size:18px;line-height:1.05}.practice-reader-toolbar .ghost-button{min-height:38px;padding:0 13px}.practice-reader-shell{--reader-player-offset: calc(64px + env(safe-area-inset-top, 0px)) ;background:#fffdf7;color:#071532;display:grid;gap:0;min-height:100%;padding-bottom:max(22px,env(safe-area-inset-bottom,0px));padding-top:var(--reader-player-offset)}.practice-reader-shell.player-expanded{--reader-player-offset: calc(160px + env(safe-area-inset-top, 0px)) }.practice-reader-shell.long-reader .practice-reader-copy{font-size:clamp(21px,5.4vw,31px);line-height:1.68}.practice-reader-shell.long-reader .practice-reader-paragraph{margin-bottom:clamp(24px,7vw,42px)}.practice-reader-topbar{align-items:center;backdrop-filter:blur(16px);background:#fffdf7eb;border-bottom:1px solid rgba(95,74,48,.1);display:grid;gap:10px;grid-template-columns:44px minmax(0,1fr) auto;min-height:calc(58px + env(safe-area-inset-top,0px));padding:calc(8px + env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) 8px max(14px,env(safe-area-inset-left,0px));position:sticky;top:0;z-index:5}.practice-reader-topbar button{align-items:center;background:transparent;border-radius:999px;color:#12354a;cursor:pointer;display:inline-flex;font-size:14px;font-weight:900;justify-content:center;min-height:40px;padding:0 12px}.practice-reader-topbar button:first-child{font-size:34px;line-height:1;padding-bottom:4px}.practice-reader-topbar div{min-width:0;text-align:center}.practice-reader-topbar small{color:#777064;display:block;font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.practice-reader-topbar strong{display:block;font-size:clamp(16px,4.6vw,20px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.practice-reader-book{background:#fffdf7;margin:0 auto;max-width:760px;padding:clamp(24px,8vw,56px) max(clamp(22px,7vw,58px),env(safe-area-inset-right,0px)) 26px max(clamp(22px,7vw,58px),env(safe-area-inset-left,0px));width:100%}.practice-reader-title{margin-bottom:clamp(22px,6vw,36px);text-align:center}.practice-reader-title small{color:#956f4b;display:block;font-family:Georgia,Times New Roman,serif;font-size:clamp(14px,3.9vw,18px);font-style:italic;margin-bottom:12px}.practice-reader-title h1{color:#111927;font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,7vw,44px);font-weight:500;letter-spacing:-.035em;line-height:1.06}.practice-reader-shell.reader-font-small .practice-reader-title h1{font-size:clamp(25px,6.2vw,38px)}.practice-reader-shell.reader-font-large .practice-reader-title h1{font-size:clamp(31px,7.8vw,50px)}.practice-reader-title span{color:#0a6a78;display:block;font-size:10.5px;font-weight:900;letter-spacing:.16em;margin-top:12px;text-transform:uppercase}.practice-reader-copy{background:#fffdf7;color:#101827;font-family:Georgia,Times New Roman,serif;font-size:clamp(23px,6.2vw,34px);line-height:1.62;-webkit-tap-highlight-color:transparent}.practice-reader-shell.reader-font-small .practice-reader-copy{font-size:clamp(20px,5.4vw,30px)}.practice-reader-shell.reader-font-large .practice-reader-copy{font-size:clamp(26px,7vw,38px)}.practice-reader-shell.long-reader.reader-font-small .practice-reader-copy{font-size:clamp(19px,4.9vw,28px)}.practice-reader-shell.long-reader.reader-font-large .practice-reader-copy{font-size:clamp(24px,6.2vw,35px)}.practice-reader-paragraph{margin:0 0 clamp(22px,7vw,38px)}.practice-reader-paragraph:not(.is-heading):first-of-type:first-letter{color:#0c7080;float:left;font-size:4.2em;line-height:.82;padding:.08em .12em 0 0}.practice-reader-paragraph.is-heading{color:#0b7180;font-family:var(--font-sans);font-size:clamp(15px,4vw,19px);font-weight:950;letter-spacing:.02em;line-height:1.25;margin:clamp(18px,6vw,32px) 0 clamp(8px,3vw,14px)}.practice-reader-sentence{border-radius:10px;scroll-margin-top:128px;transition:background .18s ease,box-shadow .18s ease}.practice-reader-sentence.active{background:transparent;box-shadow:none}.reader-sentence-jump{background:transparent;color:inherit;cursor:pointer;display:inline;font:inherit;line-height:inherit;padding:0;text-align:left;-webkit-tap-highlight-color:transparent}.practice-reader-player{align-items:center;background:#fffdf8;border-bottom:1px solid #eadfce;box-shadow:0 8px 22px #061a4414;display:grid;gap:5px 7px;grid-template-columns:34px 38px minmax(0,1fr) 44px 48px;padding:calc(5px + env(safe-area-inset-top,0px)) max(10px,env(safe-area-inset-right,0px)) 6px max(10px,env(safe-area-inset-left,0px));left:0;position:fixed;right:0;top:0;transition:box-shadow .18s ease,padding .18s ease;width:100%;z-index:8}.practice-reader-player-progress{background:#dfe9e6;border-radius:999px;grid-column:1 / -1;height:2px;overflow:hidden}.practice-reader-player-progress span{background:linear-gradient(90deg,#0d7180,var(--teal));display:block;height:100%}.practice-reader-player>button{align-items:center;background:#f4f6f5;border:1px solid var(--line);border-radius:999px;color:#12354a;cursor:pointer;display:inline-flex;font-size:11px;font-weight:900;justify-content:center;min-height:34px;padding:0 9px;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .12s ease;-webkit-tap-highlight-color:transparent;white-space:nowrap}.practice-reader-player button:active{transform:translateY(1px) scale(.98)}.practice-reader-player>button:first-child{background:transparent;border-color:transparent;font-size:29px;line-height:1;padding:0 0 3px}.practice-reader-player-track{display:grid;gap:1px;min-width:0}.practice-reader-player-times{align-items:center;color:#4d5a6c;display:flex;font-size:10px;font-weight:850;justify-content:space-between}.practice-reader-player .range{-webkit-appearance:none;appearance:none;background:transparent;height:13px}.practice-reader-player .range::-webkit-slider-runnable-track{background:#dfe9e6;border-radius:999px;height:3px}.practice-reader-player .range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--teal);border:2px solid #ffffff;border-radius:999px;box-shadow:0 2px 8px #08898247;height:15px;margin-top:-6px;width:15px}.practice-reader-player .range::-moz-range-track{background:#dfe9e6;border-radius:999px;height:3px}.practice-reader-player .range::-moz-range-thumb{background:var(--teal);border:2px solid #ffffff;border-radius:999px;box-shadow:0 2px 8px #08898247;height:12px;width:12px}.practice-reader-play{background:var(--teal)!important;color:#fff!important;min-height:38px!important;padding:0!important}.practice-reader-player-tools{background:#f8faf8eb;border:1px solid rgba(6,26,68,.07);border-radius:18px;box-shadow:inset 0 1px #ffffffc7;display:none;gap:8px;grid-column:1 / -1;grid-template-columns:1fr auto;padding:8px}.practice-reader-player.is-expanded .practice-reader-player-tools{animation:readerToolsIn .18s ease both;display:grid}.practice-reader-player-tools button{align-items:center;background:#fff;border:1px solid rgba(6,26,68,.09);border-radius:999px;color:#12354a;cursor:pointer;display:inline-flex;font-size:11px;font-weight:900;justify-content:center;min-height:33px;padding:0 11px}.practice-tool-primary,.practice-tool-save{align-items:center;display:inline-flex;gap:6px}.practice-tool-primary{justify-content:flex-start!important;min-width:0}.practice-tool-save{color:var(--teal)!important}.practice-tool-group{align-items:center;background:#eef5f3;border-radius:15px;display:grid;gap:5px;grid-template-columns:auto 1fr;min-width:0;padding:3px 4px 3px 10px}.practice-tool-group>span{color:#6b778a;font-size:10px;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.practice-tool-group-wide{grid-column:1 / -1}.practice-seek-switch{grid-template-columns:auto auto auto;justify-self:stretch}.practice-seek-switch button{min-width:42px}.practice-reader-player-tools button.active{background:#e8f8f4;border-color:#00968857;color:var(--teal)}.practice-reader-player-tools button:disabled{cursor:not-allowed;opacity:.44}.practice-reader-notice{animation:readerNoticeIn .18s ease both;background:#071532db;border-radius:999px;color:#fff;font-size:11px;font-weight:900;grid-column:1 / -1;justify-self:center;letter-spacing:.01em;padding:7px 12px}@keyframes readerToolsIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes readerNoticeIn{0%{opacity:0;transform:translateY(-3px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.embedded-vocab-panel,.embedded-vocab-session{padding:0}.practice-audio-card,.practice-reader-card{margin-top:0}.practice-save-card,.practice-quiz-toolbar{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.practice-quiz-toolbar,.practice-save-card{align-items:center;display:flex;gap:12px;justify-content:space-between}.practice-shadow-steps{display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.practice-shadow-steps span{background:#f3f8f6;border-radius:14px;color:#496274;font-size:12px;font-weight:850;padding:10px;text-align:center}.practice-save-card{padding:17px}.practice-save-card h2,.practice-quiz-toolbar h2{font-size:20px;line-height:1.15;margin:0}.practice-save-card p{color:var(--muted);line-height:1.4;margin-top:6px}.practice-quiz-toolbar{padding:16px}.practice-segmented{background:#eef5f3;border-radius:16px;display:flex;padding:4px}.practice-segmented button{background:transparent;border-radius:13px;color:#607086;cursor:pointer;font-weight:850;min-height:38px;padding:0 13px}.practice-segmented button.active{background:#fff;box-shadow:0 7px 16px #061a4414;color:var(--teal)}.practice-quiz-actions{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.practice-reading-switch{background:#eef5f3;border-radius:14px;display:inline-flex;gap:3px;margin:8px 0;padding:3px}.practice-reading-switch button{background:transparent;border-radius:11px;color:#5d6f82;cursor:pointer;font-size:12px;font-weight:900;min-height:30px;padding:0 12px}.practice-reading-switch button.active{background:#fff;box-shadow:0 7px 14px #061a4414;color:var(--teal)}.practice-font-switch,.practice-highlight-switch{align-items:center;background:#eef5f3;border-radius:14px;display:inline-flex;gap:3px;padding:3px}.practice-font-switch button,.practice-highlight-switch button{align-items:center;background:transparent;border:0;border-radius:11px;color:#5d6f82;cursor:pointer;display:inline-flex;font-size:12px;font-weight:950;gap:4px;justify-content:center;min-height:30px;min-width:36px;padding:0 10px;transition:background .16s ease,box-shadow .16s ease,color .16s ease,transform .12s ease;-webkit-tap-highlight-color:transparent}.practice-font-switch button.active,.practice-highlight-switch button.active{background:#fff;box-shadow:0 7px 14px #061a4414;color:var(--teal)}.practice-highlight-switch button:disabled{cursor:not-allowed;opacity:.42}.practice-selector-overlay{display:flex;inset:0;overflow:hidden;position:absolute;z-index:13}.practice-selector-scrim{background:#061a4447;cursor:pointer;inset:0;position:absolute}.practice-selector-sheet{align-self:flex-end;background:#fff;border:1px solid var(--line);border-radius:28px 28px 0 0;box-shadow:0 -22px 60px #061a4438;display:grid;gap:12px;max-height:min(82%,680px);min-height:360px;overflow:hidden;padding:10px max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));position:relative;width:100%;z-index:1}.practice-selector-grip{background:#d7e0e4;border-radius:999px;height:5px;justify-self:center;width:48px}.practice-selector-head{align-items:center;display:flex;gap:12px;justify-content:space-between}.practice-selector-head h2{font-size:22px;letter-spacing:-.03em}.practice-selector-head .ghost-button{min-height:38px}.practice-selector-search{box-shadow:none;margin:0}.practice-filter-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.practice-filter-row::-webkit-scrollbar{display:none}.practice-filter-row button{background:#eef5f3;border-radius:999px;color:#5f7083;cursor:pointer;flex:0 0 auto;font-size:12px;font-weight:900;min-height:36px;padding:0 13px;text-transform:capitalize}.practice-filter-row button.active{background:var(--teal);color:#fff}.practice-selector-list{display:grid;gap:9px;overflow-y:auto;padding-bottom:4px}.practice-selector-row{align-items:center;background:#f8fbfa;border:1px solid var(--line);border-radius:18px;color:var(--ink);cursor:pointer;display:grid;gap:10px;grid-template-columns:12px minmax(0,1fr) auto;min-height:68px;padding:12px;text-align:left}.practice-selector-row.selected{background:#eafbf5;border-color:#08898247}.practice-selector-row strong{display:block;font-size:14px;margin-bottom:4px}.practice-selector-row em{background:#eef5f3;border-radius:999px;color:var(--teal);font-size:11px;font-style:normal;font-weight:900;padding:7px 9px;text-transform:capitalize}.practice-status-dot{border-radius:999px;height:12px;width:12px}.practice-status-dot.is-current{background:var(--teal)}.practice-status-dot.is-unlocked{background:var(--gold)}.practice-status-dot.is-completed{background:var(--green)}.practice-selector-empty{background:#f8fbfa;border:1px dashed #cfdadf;border-radius:18px;color:var(--muted);font-weight:800;padding:18px;text-align:center}.practice-reading-library{display:grid;gap:12px}.practice-reading-search{box-shadow:var(--shadow);margin:0}.practice-reading-grid{display:grid;gap:11px}.practice-reading-topic{align-items:center;background:linear-gradient(135deg,#fff,#f7fbfa),radial-gradient(circle at 100% 0%,rgba(8,137,130,.08),transparent 12rem);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);color:var(--ink);cursor:pointer;display:grid;gap:12px;grid-template-columns:12px minmax(0,1fr) auto;min-height:112px;padding:16px;text-align:left}.practice-reading-topic.selected{border-color:#08898247}.practice-reading-topic-main{display:grid;gap:6px;min-width:0}.practice-reading-topic-main small{color:var(--teal);font-size:11px;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.practice-reading-topic-main strong{font-size:clamp(17px,5vw,22px);line-height:1.15}.practice-reading-topic-main em{color:var(--muted);font-size:13px;font-style:normal;font-weight:750}.practice-reading-progress{background:#e1ece8;border-radius:999px;height:7px;overflow:hidden}.practice-reading-progress b{background:linear-gradient(90deg,var(--teal),var(--teal-2));display:block;height:100%}.practice-reading-topic-action{align-items:center;background:var(--teal);border-radius:999px;color:#fff;display:inline-flex;font-size:12px;font-weight:950;gap:6px;min-height:38px;padding:0 13px}.result-breakdown{background:#f8faf9;border:1px solid var(--line);border-radius:18px;margin:18px 0;padding:4px 14px;text-align:left}.admin-shell{background:#eef3f1;color:var(--ink);display:grid;grid-template-columns:270px 1fr;min-height:100vh}.admin-sidebar{background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:24px;padding:24px 18px;position:sticky;top:0;height:100vh}.admin-brand{align-items:center;display:flex;gap:12px;padding:6px 8px 12px}.admin-brand svg{color:var(--teal)}.admin-brand strong,.admin-brand small{display:block}.admin-brand small{color:var(--muted)}.admin-sidebar nav{display:grid;gap:8px}.admin-sidebar nav button,.student-preview-button,.admin-actions button,.admin-section-heading button{align-items:center;border-radius:14px;cursor:pointer;display:inline-flex;font-weight:800;gap:9px;min-height:44px;padding:0 13px}.admin-sidebar nav button{background:transparent;color:#5d687c;justify-content:flex-start;text-align:left}.admin-sidebar nav button.active{background:#e8f6f3;color:var(--teal)}.student-preview-button{background:var(--teal);color:#fff;justify-content:center;margin-top:auto}.admin-main{padding:28px}.admin-header{align-items:center;display:flex;gap:24px;justify-content:space-between;margin-bottom:20px}.admin-header h1{font-size:34px;line-height:1.05;margin-bottom:8px}.admin-header span,.admin-card p{color:var(--muted)}.admin-actions{display:flex;gap:10px}.admin-actions button,.admin-section-heading button{background:#fff;border:1px solid var(--line);color:var(--ink)}.admin-stat-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:14px}.admin-notice{align-items:center;background:#fff;border:1px solid #caeee4;border-radius:16px;color:var(--teal);display:flex;font-weight:800;gap:10px;margin-bottom:14px;padding:13px 16px}.admin-stat,.admin-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 44px #061a4412}.admin-stat{display:grid;gap:8px;min-height:138px;padding:18px}.admin-stat svg{color:var(--teal)}.admin-stat span,.admin-stat small{color:var(--muted)}.admin-stat strong{font-size:30px}.admin-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);margin-bottom:14px}.admin-grid.wide{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr)}.admin-section-heading{align-items:start;display:flex;gap:14px;justify-content:space-between;margin-bottom:16px}.admin-section-heading h2{font-size:21px;margin-bottom:5px}.admin-table,.pipeline-list,.topic-control-list{display:grid;gap:10px}.admin-row,.topic-control-list div{align-items:center;background:#f8faf9;border:1px solid #edf0f2;border-radius:14px;display:grid;gap:12px;grid-template-columns:1fr 84px 160px;padding:13px}.admin-row.as-button{color:var(--ink);cursor:pointer;text-align:left;width:100%}.admin-row.as-button:hover,.topic-list button:hover,.quick-action-row button:hover{border-color:#9eddd0;box-shadow:0 10px 24px #08898214}.admin-row strong,.admin-row small,.topic-control-list strong,.topic-control-list small{display:block}.admin-row small,.topic-control-list small,.topic-control-list em{color:var(--muted);font-style:normal}.completion-pill{background:#e8f6f3;border-radius:999px;color:var(--teal);font-weight:850;padding:8px 10px;text-align:center}.pipeline-list div{align-items:center;background:#f8faf9;border:1px solid #edf0f2;border-radius:14px;display:flex;gap:10px;padding:13px}.pipeline-list span{align-items:center;background:#eef1f3;border-radius:999px;color:#697386;display:inline-flex;height:30px;justify-content:center;width:30px}.pipeline-list .done span{background:#ddf5eb;color:var(--teal)}.pipeline-list .current{border-color:#f1d795}.pipeline-list .current span{background:#fff0b8;color:#a06a00}.audit-count{border-radius:999px;font-size:13px;font-weight:900;padding:8px 12px;white-space:nowrap}.audit-count.ready{background:#ddf5eb;color:#0f766e}.audit-count.warning{background:#fff0d8;color:#b45309}.audit-list,.audit-check-list{display:grid;gap:10px}.audit-row,.audit-check{align-items:center;background:#f8faf9;border:1px solid #edf0f2;border-radius:14px;display:grid;gap:12px}.audit-row{color:var(--ink);cursor:pointer;grid-template-columns:1fr auto;min-height:64px;padding:12px 14px;text-align:left}.audit-row:hover{border-color:#9eddd0;box-shadow:0 10px 24px #08898214}.audit-row strong,.audit-row small,.audit-check strong,.audit-check small{display:block}.audit-row small,.audit-check small{color:var(--muted);margin-top:4px}.audit-score{background:#fff0d8;border-radius:999px;color:#b45309;font-weight:900;padding:8px 10px}.audit-score.ready{background:#ddf5eb;color:#0f766e}.audit-check{grid-template-columns:34px 1fr;padding:12px}.audit-check span{align-items:center;background:#eef1f3;border-radius:999px;color:#697386;display:inline-flex;height:30px;justify-content:center;width:30px}.audit-check.done span{background:#ddf5eb;color:var(--teal)}.audit-check small{grid-column:2}.student-report-table{overflow-x:auto}.report-head,.report-row{display:grid;gap:12px;grid-template-columns:minmax(190px,1.35fr) 1fr 74px 74px 74px 112px;min-width:760px}.report-head{color:var(--muted);font-size:12px;font-weight:850;padding:0 12px 9px;text-transform:uppercase}.report-row{align-items:center;border-top:1px solid #edf0f2;padding:12px}.report-row strong,.report-row small{display:block}.report-row small{color:var(--muted);margin-top:3px}.report-row .on-track,.report-row .excellent,.report-row .needs-review,.report-row .behind,.report-row .available,.report-row .current,.report-row .completed,.report-row .in-progress,.report-row .quiz-started,.report-row .vocab-started,.report-row .reading-done,.report-row .not-started,.report-row .locked{border-radius:999px;font-size:12px;font-weight:850;padding:7px 10px;text-align:center}.report-row .on-track,.report-row .excellent,.report-row .available,.report-row .current,.report-row .completed,.report-row .reading-done{background:#ddf5eb;color:#087a64}.report-row .needs-review,.report-row .in-progress,.report-row .quiz-started,.report-row .vocab-started{background:#fff0d2;color:#9a6400}.report-row .behind,.report-row .not-started,.report-row .locked{background:#ffe0e8;color:#cf2d53}.topic-control-list div{grid-template-columns:1fr auto}.rule-card{align-items:center;display:grid;gap:18px;grid-template-columns:54px 1fr auto}.rule-card>svg{color:var(--teal)}.rule-card code{background:#10243d;border-radius:14px;color:#dff7ed;font-size:13px;padding:13px 15px;white-space:nowrap}.topic-editor-grid{display:grid;gap:16px;grid-template-columns:minmax(230px,.78fr) minmax(280px,1fr)}.admin-section-stack{display:grid;gap:14px}.student-admin-card{display:grid;gap:16px}.student-admin-profile{align-items:center;display:grid;gap:16px;grid-template-columns:74px 1fr}.student-admin-profile h2{font-size:28px;margin-bottom:6px}.student-admin-profile span{color:var(--muted);display:block;line-height:1.35}.admin-avatar{align-items:center;background:linear-gradient(180deg,#dff3ed,#c8e7de);border:1px solid #bce5db;border-radius:24px;color:var(--teal);display:flex;font-size:23px;font-weight:900;height:74px;justify-content:center;width:74px}.admin-mini-metrics{display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.admin-mini-metric{background:#f8faf9;border:1px solid #edf0f2;border-radius:14px;padding:13px}.admin-mini-metric span,.admin-mini-metric strong{display:block}.admin-mini-metric span{color:var(--muted);font-size:12px;font-weight:850;margin-bottom:5px;text-transform:uppercase}.admin-mini-metric strong{font-size:24px}.quick-action-row,.report-actions{display:flex;flex-wrap:wrap;gap:10px}.quick-action-row button,.report-actions button{align-items:center;background:#fff;border:1px solid #dce4e6;border-radius:14px;color:var(--ink);cursor:pointer;display:inline-flex;font-weight:850;gap:8px;min-height:42px;padding:0 13px}.quick-action-row .danger-button,.report-actions .danger-button,.student-row-actions .danger-button{border-color:#ffd1d9;color:#be123c}.quick-action-row button:disabled{cursor:not-allowed;opacity:.45}.admin-paste-overlay{align-items:center;background:#08152685;backdrop-filter:blur(8px);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:80}.admin-paste-modal{background:#fff;border:1px solid #dce4e6;border-radius:24px;box-shadow:0 28px 80px #0a1b363d;display:grid;gap:16px;max-height:min(86vh,860px);overflow:auto;padding:22px;width:min(920px,100%)}.admin-confirm-modal{animation:adminModalIn .22s cubic-bezier(.2,.8,.2,1) both;background:#fff;border:1px solid #dce4e6;border-radius:22px;box-shadow:0 28px 80px #0a1b363d;display:grid;gap:18px;max-width:520px;padding:22px;width:min(520px,100%)}.admin-confirm-modal h2{color:var(--ink);font-size:24px;line-height:1.1;margin:4px 0 8px}.admin-confirm-modal p:not(.eyebrow){color:var(--muted);line-height:1.5;margin:0;white-space:pre-line}.admin-confirm-modal.tone-warning{border-color:#f5b91b75}.admin-confirm-modal.tone-danger{border-color:#f46f5e80}.admin-confirm-modal .danger-button{align-items:center;background:#fff5f6;border:1px solid #ffd1d9;border-radius:14px;color:#be123c;cursor:pointer;display:inline-flex;font-weight:850;gap:8px;min-height:42px;padding:0 14px}.admin-paste-modal textarea{background:#fbfcfe;border:1px solid #dce4e6;border-radius:18px;color:var(--ink);font:14px/1.55 JetBrains Mono,SFMono-Regular,Consolas,monospace;min-height:360px;outline:0;padding:16px;resize:vertical;white-space:pre}.admin-paste-modal textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0889821f}.admin-paste-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.admin-paste-actions button{align-items:center;background:#fff;border:1px solid #dce4e6;border-radius:14px;color:var(--ink);cursor:pointer;display:inline-flex;font-weight:850;gap:8px;min-height:42px;padding:0 14px}.gate-admin-list{background:#f8faf9;border:1px solid #edf0f2;border-radius:16px;padding:6px 14px}.level-admin-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.level-admin-card{display:grid;gap:14px}.level-progress-track{background:#e4e8ed;border-radius:999px;height:10px;overflow:hidden}.level-progress-track span{background:linear-gradient(90deg,var(--teal),var(--teal-2));border-radius:inherit;display:block;height:100%}.topic-list{display:grid;gap:9px;max-height:500px;overflow:auto;padding-right:4px}.topic-list button{background:#f8faf9;border:1px solid #edf0f2;border-radius:14px;color:var(--ink);cursor:pointer;padding:13px;text-align:left}.topic-list button.selected{background:#e8f6f3;border-color:#9eddd0}.topic-list strong,.topic-list small{display:block}.topic-list small{color:var(--muted);margin-top:5px}.topic-form{background:#f8faf9;border:1px solid #edf0f2;border-radius:16px;display:grid;gap:12px;padding:14px}.topic-form label{color:var(--muted);display:grid;font-size:12px;font-weight:850;gap:7px;text-transform:uppercase}.topic-form input,.topic-form select,.topic-form textarea{background:#fff;border:1px solid #dce4e6;border-radius:12px;color:var(--ink);font:inherit;min-height:42px;outline:0;padding:0 12px;text-transform:none}.topic-form textarea{line-height:1.5;min-height:150px;padding:12px;resize:vertical}.topic-form input:focus,.topic-form select:focus,.topic-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0889821f}.content-editor-divider{align-items:center;border-top:1px dashed #dce4e6;display:flex;gap:12px;justify-content:space-between;padding-top:10px}.content-editor-divider strong{color:var(--ink)}.content-editor-divider small{color:var(--muted);font-weight:800}.audio-upload-row{align-items:center;background:#fff;border:1px dashed #cfe0de;border-radius:14px;display:grid;gap:10px;grid-template-columns:auto 1fr;padding:12px}.audio-upload-row button{align-items:center;background:#e8f6f3;border:1px solid #b8e7dc;border-radius:12px;color:var(--teal);cursor:pointer;display:inline-flex;font-weight:850;gap:8px;min-height:40px;padding:0 12px}.audio-upload-row span{color:var(--muted);font-size:13px;line-break:anywhere}.content-builder-section{border-top:1px dashed #dce4e6;display:grid;gap:10px;padding-top:10px}.builder-section-heading,.builder-card-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.builder-section-heading span,.builder-section-heading strong,.builder-section-heading small{display:block}.builder-section-heading strong,.builder-card-heading strong{color:var(--ink)}.builder-section-heading small{color:var(--muted);font-size:12px;font-weight:800;margin-top:3px}.builder-section-heading button,.builder-card-heading button{background:#fff;border:1px solid #dce4e6;border-radius:999px;color:var(--teal);cursor:pointer;font-weight:850;min-height:34px;padding:0 12px}.builder-list{display:grid;gap:10px}.builder-card{background:#fff;border:1px solid #e5ecee;border-radius:14px;display:grid;gap:10px;padding:12px}.advanced-content-summary{border:1px solid #e1e8ef;border-radius:10px;overflow:hidden}.advanced-content-summary .import-status-row{grid-template-columns:24px minmax(110px,.55fr) minmax(0,1fr);padding:10px 12px}.advanced-raw-editor{background:#fff;border:1px solid #e1e8ef;border-radius:10px;overflow:hidden}.advanced-raw-editor>summary,.compact-editor>summary{align-items:center;cursor:pointer;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;list-style:none}.advanced-raw-editor>summary{padding:12px}.advanced-raw-editor>summary::-webkit-details-marker,.compact-editor>summary::-webkit-details-marker{display:none}.advanced-raw-editor>summary span,.compact-editor>summary span{display:grid;gap:3px;min-width:0}.advanced-raw-editor>summary strong,.compact-editor>summary strong{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.advanced-raw-editor>summary small,.compact-editor>summary small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.advanced-raw-editor[open]>summary,.compact-editor[open]>summary{border-bottom:1px solid #e5ecee}.advanced-raw-editor>label,.compact-editor-body{display:grid;gap:10px;padding:12px}.advanced-raw-editor .quick-action-row{padding:0 12px 12px}.compact-editor{display:block;gap:0;padding:0}.compact-editor>summary{padding:12px}.compact-editor>summary button{background:#fff;border:1px solid #dce4e6;border-radius:999px;color:var(--teal);cursor:pointer;font-weight:850;min-height:34px;padding:0 12px}.builder-card .topic-form textarea,.builder-card textarea{min-height:84px}.form-row{display:grid;gap:10px;grid-template-columns:1fr 1fr}.student-report-table.compact{overflow-x:auto}.report-export{background:#10243d;border:0;border-radius:16px;color:#dff7ed;font:13px/1.5 ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;outline:0;padding:16px;resize:vertical;width:100%}.admin-login-shell{align-items:center;background:#f7fbfa;display:grid;min-height:100vh;padding:24px;place-items:center}.admin-login-card{background:#fff;border:1px solid #e5ecee;border-radius:18px;box-shadow:0 20px 60px #0e2e431f;display:grid;gap:18px;max-width:440px;padding:28px;width:min(100%,440px)}.admin-login-card h1{color:var(--ink);font-size:28px;line-height:1.15;margin:6px 0 0}.admin-login-card label{color:var(--muted);display:grid;font-size:13px;font-weight:850;gap:7px}.form-error{background:#fff0f2;border:1px solid #ffd1d9;border-radius:12px;color:#be123c;font-size:13px;font-weight:800;margin:0;padding:10px 12px}.student-preview-button.inline{justify-content:center;width:100%}.student-admin-list{display:grid;gap:12px}.managed-student-row{align-items:center;background:#f8fbfb;border:1px solid #e6eeee;border-radius:16px;display:flex;gap:14px;justify-content:space-between;padding:12px}.student-admin-profile.compact{min-width:0}.student-admin-profile.compact h2{font-size:20px}.student-admin-profile.compact span{line-break:anywhere}.student-row-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.student-row-actions select{background:#fff;border:1px solid #dce4e6;border-radius:12px;color:var(--ink);font:inherit;font-weight:800;min-height:42px;max-width:240px;padding:0 10px}.student-row-actions select:disabled{opacity:.5}.group-admin-list{display:grid;gap:14px}.group-admin-card{background:#f8fbfb;border:1px solid #e3ecef;border-radius:18px;display:grid;gap:14px;padding:14px}.group-admin-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.group-admin-heading strong{color:var(--ink);display:block;font-size:18px}.group-admin-heading small{color:var(--muted)}.group-roster-editor{display:grid;gap:12px}.group-roster-summary{align-items:center;background:#fff;border:1px dashed #d5e3e6;border-radius:14px;color:var(--muted);display:flex;gap:10px;justify-content:space-between;padding:11px 12px}.group-roster-summary span{color:var(--ink);font-weight:900}.group-roster-summary small{font-weight:800}.group-member-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.group-member-toggle{align-items:center;background:#fff;border:1px solid #e0e8ec;border-radius:14px;cursor:pointer;display:flex;gap:10px;padding:10px}.group-member-toggle input{accent-color:var(--teal);height:18px;width:18px}.group-member-toggle strong{color:var(--ink);display:block}.group-member-toggle small{color:var(--muted)}.empty-state{align-items:center;border:1px dashed #cddbdd;border-radius:16px;color:var(--muted);display:grid;gap:8px;justify-items:center;padding:24px;text-align:center}.empty-state strong{color:var(--ink)}.admin-shell{background:#f7f9fc;grid-template-columns:230px minmax(0,1fr)}.admin-sidebar{border-right:1px solid #e7edf3;gap:22px;padding:26px 18px}.admin-brand{gap:13px;padding:0 6px 18px}.admin-logo-mark{align-items:center;background:#0aa39b;border-radius:14px;color:#fff;display:inline-flex;height:58px;justify-content:center;width:58px}.admin-logo-mark svg{color:currentColor}.admin-brand strong{color:#10244a;font-size:18px}.admin-sidebar nav{gap:7px}.admin-sidebar nav button{border:0;border-radius:10px;color:#24365f;min-height:48px;padding:0 14px}.admin-sidebar nav button.active{background:#0aa39b;color:#fff;box-shadow:0 12px 28px #0aa39b33}.admin-sidebar-tip{background:#f1f8fb;border:1px solid #dbe9ef;border-radius:12px;color:#10244a;display:grid;gap:8px;margin-top:auto;padding:18px}.admin-sidebar-tip svg{color:#0aa39b}.admin-sidebar-tip strong,.admin-sidebar-tip span{display:block}.admin-sidebar-tip span{color:#70809a;font-size:13px;font-weight:800}.student-preview-button{border:0;border-radius:10px;margin-top:0}.admin-main{padding:32px 34px}.admin-header{align-items:center;display:grid;gap:22px;grid-template-columns:minmax(250px,.8fr) minmax(520px,1.2fr);margin-bottom:20px}.admin-page-title h1{color:#10244a;font-size:34px;line-height:1.05;margin:0 0 7px}.admin-page-title span{color:#62708e;display:block;line-height:1.4}.admin-toolbar{align-items:center;display:grid;gap:14px;grid-template-columns:minmax(230px,auto) minmax(280px,1fr) 46px auto}.admin-center-select,.admin-search,.admin-alert-button,.admin-profile-chip{background:#fff;border:1px solid #dfe7f0;border-radius:10px;min-height:52px}.admin-center-select,.admin-alert-button{align-items:center;color:#25365d;cursor:pointer;display:inline-flex;font-weight:850;gap:10px;justify-content:center;padding:0 14px}.admin-center-select svg:first-child{color:#0f766e}.admin-search{align-items:center;display:flex;gap:10px;padding:0 14px}.admin-search svg{color:#8090aa;flex:0 0 auto}.admin-search input{border:0;color:#10244a;font:inherit;min-width:0;outline:0;width:100%}.admin-alert-button{cursor:default;padding:0;position:relative}.admin-alert-button span{align-items:center;background:#f04438;border-radius:999px;color:#fff;display:inline-flex;font-size:11px;font-weight:900;height:19px;justify-content:center;min-width:19px;padding:0 5px;position:absolute;right:-7px;top:-8px}.admin-profile-chip{align-items:center;display:flex;gap:11px;padding:0 12px}.admin-profile-avatar{align-items:center;background:#8be0dc;border-radius:999px;color:#073b3d;display:inline-flex;font-weight:900;height:40px;justify-content:center;width:40px}.admin-profile-chip strong,.admin-profile-chip small{display:block;white-space:nowrap}.admin-profile-chip strong{color:#10244a;font-size:14px}.admin-profile-chip small{color:#70809a;font-size:12px}.admin-action-strip{align-items:center;background:#fff;border:1px solid #e2e9f1;border-radius:12px;box-shadow:0 10px 28px #10244a0d;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px;padding:12px}.admin-action-strip>div{align-items:center;color:#0f766e;display:flex;flex:1 1 280px;font-weight:850;gap:9px;min-width:240px}.admin-action-strip button,.settings-action-grid button{align-items:center;background:#fff;border:1px solid #dfe7f0;border-radius:10px;color:#24365f;cursor:pointer;display:inline-flex;font-weight:850;gap:8px;min-height:42px;padding:0 13px}.admin-action-strip button:hover,.settings-action-grid button:hover{border-color:#0aa39b;color:#0f766e}.admin-import-console{display:grid;gap:16px}.import-console-card{box-shadow:none}.import-console-layout{display:grid;gap:16px;grid-template-columns:minmax(240px,320px) minmax(0,1fr)}.import-chapter-panel,.import-workbench{display:grid;gap:12px;min-width:0}.import-panel-title{border:1px solid #e1e8ef;border-radius:10px;display:grid;gap:4px;padding:12px}.import-panel-title strong,.import-panel-title span{display:block}.import-panel-title span{color:#62708e;font-size:13px;font-weight:800;line-height:1.35}.import-status-list{border:1px solid #e1e8ef;border-radius:10px;overflow:hidden}.import-status-row{align-items:center;background:#fff;border-bottom:1px solid #e9eef4;display:grid;gap:10px;grid-template-columns:24px minmax(120px,.6fr) minmax(0,1fr);padding:12px}.import-status-row:last-child{border-bottom:0}.import-status-row>span:first-child{align-items:center;background:#f2f5f8;border-radius:999px;color:#7a879b;display:inline-flex;height:24px;justify-content:center;width:24px}.import-status-row.ready>span:first-child{background:#e3f7ef;color:#008b79}.import-status-row strong{color:#10244a}.import-status-row small{color:#62708e;font-weight:760}.import-paste-box{color:#10244a;display:grid;font-weight:850;gap:8px}.import-paste-box textarea{background:#fbfcfd;border:1px solid #dfe7f0;border-radius:10px;color:#10244a;font:14px/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;min-height:250px;outline:0;padding:14px;resize:vertical}.import-paste-box textarea:focus{border-color:#0aa39b;box-shadow:0 0 0 3px #0aa39b1f}.import-console-actions,.import-publish-row{display:flex;flex-wrap:wrap;gap:10px}.import-console-actions button,.import-publish-row button{align-items:center;background:#fff;border:1px solid #dfe7f0;border-radius:10px;color:#24365f;cursor:pointer;display:inline-flex;font-weight:850;gap:8px;min-height:42px;padding:0 13px}.import-console-actions button:hover,.import-publish-row button:hover{border-color:#0aa39b;color:#0f766e}.import-console-actions .primary-button{background:#0aa39b;border-color:#0aa39b;color:#fff}.import-console-note{background:#f8fafc;border:1px solid #e1e8ef;border-radius:10px;color:#62708e;display:grid;gap:4px;padding:12px}.import-console-note strong{color:#10244a}.import-readiness-card{box-shadow:none}@media(max-width:900px){.import-console-layout{grid-template-columns:1fr}.import-status-row{grid-template-columns:24px 1fr}.import-status-row small{grid-column:2}}.admin-action-strip .primary-button{background:#0aa39b;border-color:#0aa39b;color:#fff}.admin-card,.admin-stat{border-color:#e5ebf2;border-radius:12px;box-shadow:0 10px 30px #10244a0f}.admin-stat-grid{gap:16px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:16px}.admin-stat{align-items:center;display:grid;gap:4px 16px;grid-template-columns:64px minmax(0,1fr);min-height:124px;padding:18px}.admin-stat-icon{align-items:center;align-self:stretch;background:#dff7f4;border-radius:12px;color:#0aa39b;display:inline-flex;grid-row:span 3;justify-content:center;min-height:58px}.admin-stat.blue .admin-stat-icon{background:#e2f0ff;color:#2583e9}.admin-stat.green .admin-stat-icon{background:#dff4e7;color:#1a9b5a}.admin-stat.purple .admin-stat-icon{background:#ece4ff;color:#7c4dff}.admin-stat.orange .admin-stat-icon{background:#fff0d8;color:#f58a07}.admin-stat>span:not(.admin-stat-icon){color:#4e5e7f;font-weight:800}.admin-stat strong{color:#10244a;font-size:30px;line-height:1.05}.admin-stat small{color:#15935f;font-weight:850}.admin-grid{gap:16px;grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr);margin-bottom:16px}.admin-grid.wide{grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr)}.admin-card{padding:20px}.admin-section-heading h2{color:#10244a;font-size:18px;margin-bottom:4px}.admin-section-heading p,.admin-card p{color:#62708e}.admin-section-heading button,.quick-action-row button,.report-actions button{border-radius:10px}.admin-row,.topic-control-list div,.pipeline-list div{background:#fbfcfe;border-color:#e7edf3;border-radius:10px}.completion-pill{background:#e7f8f5;color:#0f766e}.topic-form{background:#fbfcfe;border-color:#e6edf5;border-radius:12px}.topic-form input,.topic-form select,.topic-form textarea,.student-row-actions select{border-color:#dfe7f0;border-radius:9px}.topic-list button,.builder-card,.admin-mini-metric,.gate-admin-list,.audit-row,.audit-check,.audio-upload-row{border-radius:10px}.topic-list button.selected{background:#e8f8f5;border-color:#0aa39b}.vocab-admin-summary,.settings-action-grid{display:grid;gap:12px}.vocab-admin-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-action-grid button{justify-content:flex-start}.danger-zone-card{border-color:#ffd5dd}.danger-zone-card .danger-button,.settings-action-grid .danger-button{border-color:#ffd1d9;color:#be123c}.empty-state.compact{padding:18px}.speed-page{gap:14px}.speed-hero,.speed-reader-card{background:#fff;border:1px solid #e5ecee;border-radius:18px;box-shadow:0 12px 32px #0d2c3e14;display:grid;gap:12px;padding:18px}.speed-hero h1{color:var(--ink);font-size:28px;line-height:1.15;margin:0}.speed-score-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.speed-reader-card{max-height:46vh;overflow:auto}.speed-reader-card p{color:var(--ink);font-size:24px;line-height:1.65;margin:0}.speed-actions{grid-template-columns:1fr 1fr 1fr}.admin-shell{height:100vh;min-height:0;overflow:hidden}.admin-sidebar{min-height:0;overflow-y:auto}.admin-main{height:100vh;min-width:0;overflow-y:auto;overscroll-behavior:contain}.admin-header,.admin-toolbar,.admin-card,.topic-editor-card,.topic-editor-grid,.topic-form,.builder-card,.content-builder-section,.builder-list{min-width:0}.topic-editor-grid{grid-template-columns:minmax(230px,320px) minmax(0,1fr)}.topic-form input,.topic-form select,.topic-form textarea,.builder-card input,.builder-card select,.builder-card textarea{max-width:100%;min-width:0}.audio-upload-row.compact{grid-template-columns:minmax(0,auto) minmax(0,1fr);padding:10px}.admin-list-toolbar{align-items:center;background:#f5faf9;border:1px solid #dfeae8;border-radius:12px;display:grid;gap:10px;grid-template-columns:minmax(150px,auto) minmax(220px,1fr) auto;margin-bottom:12px;padding:10px}.admin-list-toolbar>div:first-child{display:grid;gap:2px}.admin-list-toolbar strong{color:#10244a;font-size:13px;font-weight:900}.admin-list-toolbar span{color:#62708e;font-size:12px;font-weight:800}.admin-list-toolbar label{align-items:center;background:#fff;border:1px solid #dfe7f0;border-radius:10px;display:flex;gap:8px;min-height:40px;min-width:0;padding:0 11px}.admin-list-toolbar label svg{color:#8090aa;flex:0 0 auto}.admin-list-toolbar input{border:0;color:#10244a;font:inherit;font-weight:750;min-width:0;outline:0;width:100%}.admin-list-pager{align-items:center;display:flex;gap:8px;justify-content:flex-end;white-space:nowrap}.admin-list-pager button{background:#fff;border:1px solid #d9e4ec;border-radius:9px;color:#24365f;cursor:pointer;font-weight:850;min-height:38px;padding:0 11px}.admin-list-pager button:disabled{cursor:not-allowed;opacity:.45}.student-admin-list,.group-admin-list,.builder-list,.topic-list{min-width:0}.topic-list{max-height:72vh;overflow-y:auto;padding-right:4px}.student-report-table{border:1px solid #e6edf5;border-radius:12px;max-width:100%}.admin-report-table{max-height:66vh;overflow:auto}@keyframes adminSurfaceIn{0%{opacity:0;transform:translateY(14px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes adminToastIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes adminBusySweep{0%{transform:translate(-110%)}to{transform:translate(110%)}}@keyframes adminBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes adminModalIn{0%{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes adminRevealIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.admin-shell{background:radial-gradient(circle at 22% 0%,rgba(10,163,155,.1),transparent 34rem),linear-gradient(135deg,#f8fbfc,#eef4f5)}.admin-main{scroll-behavior:smooth}.admin-busy-bar{background:#0aa39b1f;border-radius:999px;height:3px;margin:-12px 0 10px;overflow:hidden;position:sticky;top:0;z-index:40}.admin-busy-bar:after{animation:adminBusySweep 1.05s cubic-bezier(.64,0,.35,1) infinite;background:linear-gradient(90deg,transparent,#0aa39b 42%,#f5b91b 58%,transparent);content:"";display:block;height:100%;width:55%}.admin-header{backdrop-filter:blur(16px);background:linear-gradient(180deg,#f7f9fcf5,#f7f9fcd1);border-bottom:1px solid rgba(226,233,241,.64);grid-template-columns:minmax(220px,.75fr) minmax(360px,1.25fr);margin:-12px -6px 18px;padding:12px 6px;position:sticky;top:0;z-index:30}.admin-toolbar{grid-template-columns:minmax(190px,auto) minmax(220px,1fr) 46px auto}.admin-page-title h1,.admin-page-title span{transition:color .18s ease,transform .18s ease}.admin-sidebar,.admin-card,.admin-stat,.admin-action-strip,.admin-list-toolbar,.topic-form,.import-status-row,.group-admin-card,.managed-student-row,.builder-card,.admin-paste-modal{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.admin-main>.admin-import-console,.admin-main>.admin-section-stack,.admin-main>.admin-grid,.admin-main>.level-admin-grid,.admin-main>.admin-stat-grid{animation:adminSurfaceIn .26s cubic-bezier(.2,.8,.2,1) both}.admin-main>.admin-grid.wide,.admin-main>.admin-section-stack,.admin-main>.level-admin-grid{animation-duration:.3s}.admin-card,.admin-stat{box-shadow:0 14px 34px #10244a11}.admin-card:hover,.group-admin-card:hover,.managed-student-row:hover,.builder-card:hover{border-color:#0aa39b38;box-shadow:0 18px 42px #10244a16}.admin-stat:hover{transform:translateY(-2px)}.admin-stat-icon,.admin-logo-mark,.admin-profile-avatar,.admin-avatar,.audit-check span,.import-status-row>span:first-child,.pipeline-list span{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease}.admin-stat:hover .admin-stat-icon,.admin-brand:hover .admin-logo-mark,.managed-student-row:hover .admin-avatar,.audit-check:hover span,.import-status-row:hover>span:first-child,.pipeline-list div:hover span{transform:scale(1.04)}.admin-sidebar nav button{overflow:hidden;position:relative;transition:background-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.admin-sidebar nav button:before{background:currentColor;border-radius:999px;content:"";height:60%;left:7px;opacity:0;position:absolute;top:20%;transform:scaleY(.35);transition:opacity .18s ease,transform .18s ease;width:3px}.admin-sidebar nav button:hover{background:#eef8f7;color:#0f766e;transform:translate(2px)}.admin-sidebar nav button.active:before,.admin-sidebar nav button[aria-current=page]:before{opacity:.85;transform:scaleY(1)}.admin-sidebar nav button.active{transform:translate(0)}.admin-action-strip{position:relative}.admin-action-strip.is-busy{border-color:#0aa39b47}.admin-action-strip.tone-success>div{color:#0f766e}.admin-action-strip.tone-warning{border-color:#f5b91b59}.admin-action-strip.tone-warning>div{color:#a36500}.admin-action-strip.tone-danger{border-color:#f46f5e61}.admin-action-strip.tone-danger>div{color:#be123c}.admin-status-message{animation:adminToastIn .22s ease both;display:inline-block}.admin-center-select{cursor:default;user-select:none}.admin-toolbar>*,.admin-list-toolbar,.admin-search,.topic-form input,.topic-form select,.topic-form textarea,.builder-card input,.builder-card select,.builder-card textarea,.student-row-actions select,.import-paste-box textarea,.admin-paste-modal textarea{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.admin-search:focus-within,.admin-list-toolbar label:focus-within,.topic-form label:focus-within input,.topic-form label:focus-within select,.topic-form label:focus-within textarea,.builder-card label:focus-within input,.builder-card label:focus-within select,.builder-card label:focus-within textarea,.student-row-actions select:focus{border-color:#0aa39b;box-shadow:0 0 0 3px #0aa39b21}.admin-action-strip button,.admin-section-heading button,.quick-action-row button,.report-actions button,.import-console-actions button,.import-publish-row button,.settings-action-grid button,.admin-list-pager button,.student-row-actions button,.builder-section-heading button,.builder-card-heading button,.compact-editor>summary button,.audio-upload-row button,.topic-list button,.audit-row,.admin-row.as-button{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease,transform .18s ease}.admin-action-strip button:hover:not(:disabled),.admin-section-heading button:hover:not(:disabled),.quick-action-row button:hover:not(:disabled),.report-actions button:hover:not(:disabled),.import-console-actions button:hover:not(:disabled),.import-publish-row button:hover:not(:disabled),.settings-action-grid button:hover:not(:disabled),.admin-list-pager button:hover:not(:disabled),.student-row-actions button:hover:not(:disabled),.builder-section-heading button:hover:not(:disabled),.builder-card-heading button:hover:not(:disabled),.compact-editor>summary button:hover:not(:disabled),.audio-upload-row button:hover:not(:disabled),.topic-list button:hover,.audit-row:hover,.admin-row.as-button:hover{box-shadow:0 12px 24px #0a234a13;transform:translateY(-1px)}.admin-action-strip button:active:not(:disabled),.admin-section-heading button:active:not(:disabled),.quick-action-row button:active:not(:disabled),.report-actions button:active:not(:disabled),.import-console-actions button:active:not(:disabled),.import-publish-row button:active:not(:disabled),.settings-action-grid button:active:not(:disabled),.admin-list-pager button:active:not(:disabled),.student-row-actions button:active:not(:disabled),.builder-section-heading button:active:not(:disabled),.builder-card-heading button:active:not(:disabled),.compact-editor>summary button:active:not(:disabled),.audio-upload-row button:active:not(:disabled),.topic-list button:active,.audit-row:active,.admin-row.as-button:active{transform:translateY(0) scale(.99)}.primary-button:hover:not(:disabled),.admin-action-strip .primary-button:hover:not(:disabled),.import-console-actions .primary-button:hover:not(:disabled){background:#088982;border-color:#088982;box-shadow:0 14px 28px #08898233;color:#fff}.admin-shell button:focus-visible,.admin-login-shell button:focus-visible,.admin-shell input:focus-visible,.admin-login-shell input:focus-visible,.admin-shell select:focus-visible,.admin-shell textarea:focus-visible,.admin-shell summary:focus-visible{outline:3px solid rgba(10,163,155,.28);outline-offset:3px}.topic-list button.selected,.topic-list button.selected:hover{box-shadow:inset 3px 0 #0aa39b,0 12px 24px #0aa39b14}.compact-editor[open],.advanced-raw-editor[open]{border-color:#0aa39b52;box-shadow:0 14px 30px #10244a0f}.compact-editor[open] .compact-editor-body,.advanced-raw-editor[open]>label,.advanced-raw-editor[open] .quick-action-row,.group-roster-editor{animation:adminRevealIn .22s ease both}.admin-paste-overlay{animation:adminBackdropIn .16s ease both}.admin-paste-modal{animation:adminModalIn .22s cubic-bezier(.2,.8,.2,1) both}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.admin-header,.admin-paste-overlay{backdrop-filter:none}.admin-header{background:#f7f9fc}.admin-paste-overlay{background:#081526a3}}.admin-sidebar::-webkit-scrollbar,.admin-main::-webkit-scrollbar,.topic-list::-webkit-scrollbar,.builder-list::-webkit-scrollbar,.admin-report-table::-webkit-scrollbar{width:10px}.admin-sidebar::-webkit-scrollbar-thumb,.admin-main::-webkit-scrollbar-thumb,.topic-list::-webkit-scrollbar-thumb,.builder-list::-webkit-scrollbar-thumb,.admin-report-table::-webkit-scrollbar-thumb{background:#62708e3d;border:3px solid transparent;border-radius:999px;background-clip:content-box}.admin-sidebar::-webkit-scrollbar-thumb:hover,.admin-main::-webkit-scrollbar-thumb:hover,.topic-list::-webkit-scrollbar-thumb:hover,.builder-list::-webkit-scrollbar-thumb:hover,.admin-report-table::-webkit-scrollbar-thumb:hover{background-color:#0aa39b6b}@media(prefers-reduced-motion:reduce){.admin-shell *,.admin-shell *:before,.admin-shell *:after,.admin-login-shell *,.admin-login-shell *:before,.admin-login-shell *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media(max-width:1120px){.admin-header{grid-template-columns:1fr}.admin-toolbar{grid-template-columns:minmax(190px,auto) minmax(220px,1fr) 46px auto}}@media(max-width:460px){.app-shell{display:flex}.telegram-frame{height:var(--app-height)}.hero-band{grid-template-columns:1fr 76px}.hero-band h1,.quiz-header h1,.result-card h1,.review-card h1{font-size:22px}.hero-band h1{font-size:21px}.hero-band p:not(.eyebrow){font-size:13px}.hero-band .primary-button{min-height:35px}.stats-grid{gap:10px}.home-summary-grid,.stats-grid,.achievement-grid{grid-template-columns:1fr}.practice-hero{align-items:stretch;grid-template-columns:1fr}.practice-home-grid,.practice-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-save-card,.practice-quiz-toolbar{align-items:stretch;flex-direction:column}.practice-subpage-header{align-items:stretch}.practice-subpage-header{grid-template-columns:1fr}.practice-reader-toolbar{grid-template-columns:1fr 1fr}.practice-reader-toolbar div{display:none}.chapter-card{justify-self:stretch;width:100%}.student-card{grid-template-columns:76px 1fr auto;padding:14px}.avatar-portrait{border-radius:22px;height:76px;width:76px}}@media(max-width:370px){.page{padding-left:12px;padding-right:12px}.top-bar{grid-template-columns:38px 1fr 38px;gap:8px;padding-left:12px;padding-right:12px}.brand-mark,.top-level-chip{border-radius:14px;height:38px;width:38px}.top-title span{font-size:16px}.top-title small{font-size:11px}.hero-band,.student-card,.streak-card,.goal-card,.review-card{grid-template-columns:1fr}.progress-card{grid-template-columns:56px 1fr}.mascot{display:none}.hero-band p:not(.eyebrow){-webkit-line-clamp:1}.word-sheet{bottom:86px;left:12px;right:12px}.word-sheet h3{font-size:29px}.word-translation{font-size:18px}.stats-grid,.achievement-grid,.reward-row{grid-template-columns:1fr}.progress-card .mini-stats{grid-column:1 / -1;grid-template-columns:1fr 1fr}.reader-actions,.session-stats,.practice-shadow-steps,.practice-quiz-actions,.practice-reading-topic,.practice-home-grid,.practice-mode-grid{grid-template-columns:1fr}.chapter-card{width:100%}.vocab-lesson-header,.vocab-quiz-gate,.vocab-action-row,.vocab-session-header{align-items:stretch;flex-direction:column}.vocab-mastery-ring{flex-basis:82px;width:82px}.vocab-flashcard-single{min-height:330px}.vocab-grade-dock{grid-template-columns:repeat(2,1fr)}.vocab-grade-dock:not(.is-ready){grid-template-columns:1fr}.vocab-summary-grid{grid-template-columns:1fr}}@media(max-width:980px){.admin-shell{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);height:var(--app-height);min-height:0;overflow:hidden}.admin-sidebar{height:auto;max-height:38vh;overflow-y:auto;position:static}.admin-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-main{height:auto;min-height:0;overflow-y:auto;padding:18px}.admin-header,.admin-toolbar,.admin-list-toolbar{grid-template-columns:1fr}.admin-header,.admin-section-heading,.rule-card{align-items:stretch;flex-direction:column}.admin-stat-grid,.admin-grid,.admin-grid.wide,.level-admin-grid,.topic-editor-grid,.form-row,.vocab-admin-summary,.settings-action-grid{grid-template-columns:1fr}.managed-student-row,.group-admin-heading{align-items:stretch;flex-direction:column}.student-row-actions{justify-content:flex-start}.group-roster-summary{align-items:flex-start;flex-direction:column}.student-row-actions select{max-width:none;width:100%}.rule-card{grid-template-columns:1fr}.rule-card code{white-space:normal}}@media(max-width:460px){.home-hero-stage{grid-template-columns:minmax(0,1fr) 112px;min-height:132px;padding-top:14px}.home-progress-card{grid-template-columns:92px minmax(0,1fr);padding:16px}.home-progress-card .ring{height:92px;width:92px}.home-progress-card .ring strong{font-size:28px}.home-progress-card .mini-stats{grid-column:1 / -1;grid-template-columns:1fr 1fr}.home-progress-card .stat-pill{min-height:68px}.profile-page .student-card{gap:14px;grid-template-columns:86px minmax(0,1fr);min-height:0;padding:16px}.profile-avatar-wrap{width:86px}.profile-page .avatar-portrait{height:86px;width:86px}.profile-edit-bubble{height:34px;width:34px}.profile-page .student-card h1{font-size:28px}.profile-page .student-card p,.profile-page .student-card p span,.profile-page .student-card small{font-size:15px}.profile-card-arrow{align-self:center}.profile-page .stats-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.profile-page .metric-card{gap:10px;grid-template-columns:50px minmax(0,1fr);min-height:104px;padding:12px}.profile-page .metric-card>span{height:50px;width:50px}.profile-page .metric-card>span svg{height:23px;width:23px}.profile-page .metric-card p{font-size:13px}.profile-page .metric-card strong{font-size:clamp(20px,6vw,24px);line-height:1}.profile-page .metric-card small{font-size:12px}.profile-page .goal-card,.profile-page .streak-card{gap:16px;grid-template-columns:64px minmax(0,1fr)}.profile-page .goal-card em{grid-column:2;justify-self:start}.profile-page .goal-card strong{grid-column:2;justify-self:start;min-width:86px}}
