:root{--bg:#f4f6fb;--surface:#ffffff;--surface-2:#fdecea;--surface-3:#f8fafc;--ink:#0f172a;--muted:#64748b;--line:#d8e1ee;--blue:#d8232a;--green:#16a34a;--orange:#f59e0b;--red:#dc2626;--navy:#0b1f3a;--teal:#0f766e;--indigo:#4338ca;--shadow-sm:0 1px 2px rgba(15,23,42,0.06);--shadow-md:0 16px 40px rgba(15,23,42,0.08)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}input,select,textarea{max-width:100%}button{touch-action:manipulation}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;display:grid;grid-template-columns:248px 1fr;background:linear-gradient(180deg,rgba(255,255,255,.84),rgba(244,246,251,.9) 28%),var(--bg)}.mobile-bottom-nav,.mobile-shell-bar,.mobile-title{display:none}.desktop-title{display:inline}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;background:rgba(255,255,255,.92);border-right:1px solid var(--line);padding:22px 18px;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar-actions{display:grid;grid-gap:12px;gap:12px;margin-top:auto;padding-top:22px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:0;margin-bottom:26px;color:#111827}.brand-mark{width:28px;height:28px;object-fit:contain;display:block}.cbt-brand-logo{height:40px;width:auto;object-fit:contain;margin-bottom:10px}.brand em{font-style:normal;color:#d8232a}.nav{display:grid;grid-gap:6px;gap:6px}.nav a{position:relative;padding:11px 12px;border-radius:8px;color:var(--muted);min-height:40px;display:flex;align-items:center;gap:10px;font-size:14px;font-weight:650;line-height:1.25;transition:background .16s ease,color .16s ease,transform .16s ease}.nav a svg{flex:0 0 auto;color:#94a3b8;transition:color .16s ease}.nav a.active,.nav a:hover{background:var(--surface-2);color:var(--blue)}.nav a.active svg,.nav a:hover svg{color:var(--blue)}.nav a:hover{transform:translateX(2px)}.main{padding:30px;min-width:0;max-width:1420px;width:100%}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.topbar>*{min-width:0}.topbar h1{overflow-wrap:anywhere}.topbar-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.grid{display:grid;grid-gap:16px;gap:16px}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:18px;box-shadow:var(--shadow-sm)}.metric{display:grid;grid-gap:8px;gap:8px}.metric strong{font-size:28px;color:var(--blue)}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:7px;padding:10px 14px;background:var(--blue);color:white;cursor:pointer;min-width:96px;min-height:42px;text-align:center;font-weight:750;box-shadow:0 10px 22px rgba(216,35,42,.16);transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 26px rgba(216,35,42,.2)}.btn:disabled{cursor:not-allowed;opacity:.62;box-shadow:none}.btn.secondary{background:var(--surface);color:var(--blue);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.btn.danger{background:var(--red)}.portal-page{display:grid;grid-gap:20px;gap:20px}.portal-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:18px;gap:18px;align-items:center;padding:22px;border:1px solid rgba(216,35,42,.16);border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,248,248,.94)),var(--surface);box-shadow:var(--shadow-md)}.portal-hero.compact{padding:18px}.portal-card h2,.portal-hero h1,.portal-panel h2,.portal-section-title h2{margin:0;color:#101828;letter-spacing:0}.portal-hero h1{font-size:clamp(30px,3vw,40px);line-height:1.08}.portal-card p,.portal-hero p,.portal-panel p{margin:0}.portal-eyebrow{display:inline-flex;align-items:center;gap:8px;width:-moz-fit-content;width:fit-content;margin-bottom:8px;color:var(--teal);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.portal-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.portal-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));grid-gap:14px;gap:14px}.portal-metric{min-height:112px;display:grid;align-content:space-between;grid-gap:12px;gap:12px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-sm)}.portal-metric span{color:var(--muted);font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.04em}.portal-metric strong{color:#111827;font-size:30px;line-height:1}.portal-metric.accent strong{color:var(--blue)}.portal-card,.portal-list-card,.portal-panel{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.96);box-shadow:var(--shadow-sm)}.portal-card,.portal-panel{padding:18px}.portal-panel{display:grid;grid-gap:14px;gap:14px}.portal-panel-head,.portal-section-title{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.portal-icon{width:38px;height:38px;border-radius:8px;display:inline-grid;place-items:center;color:var(--blue);background:var(--surface-2)}.portal-icon.teal{color:var(--teal);background:#e6fffb}.portal-icon.indigo{color:var(--indigo);background:#eef2ff}.portal-list{display:grid;grid-gap:12px;gap:12px}.portal-list-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:18px;gap:18px;padding:18px;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.portal-list-card:hover{border-color:rgba(216,35,42,.28);box-shadow:var(--shadow-md);transform:translateY(-1px)}.portal-chip-row,.portal-meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.portal-chip{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:5px 9px;border:1px solid #cfe7e2;border-radius:999px;background:#f0fdfa;color:#115e59;font-size:12px;font-weight:750}.portal-segmented{width:-moz-fit-content;width:fit-content;max-width:100%;display:inline-flex;gap:4px;padding:5px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.82);box-shadow:var(--shadow-sm);overflow-x:auto}.portal-segmented button{min-height:34px;padding:7px 12px;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer;font-size:13px;font-weight:800;white-space:nowrap}.portal-segmented button.active{background:var(--surface-2);color:var(--blue)}.portal-alert{border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:var(--surface);box-shadow:var(--shadow-sm)}.portal-alert.error{border-color:rgba(220,38,38,.28);color:var(--red);background:#fff7f7}.portal-alert.ok{border-color:rgba(22,163,74,.28);color:var(--green);background:#f0fdf4}.portal-form{display:grid;grid-gap:12px;gap:12px}.portal-field{display:grid;grid-gap:6px;gap:6px}.portal-field span{color:var(--muted);font-size:13px;font-weight:700}.portal-field input,.portal-field select,.portal-field textarea{min-height:44px;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--surface);transition:border-color .16s ease,box-shadow .16s ease}.auth-form input:focus,.password-auth-form input:focus,.portal-field input:focus,.portal-field select:focus,.portal-field textarea:focus{outline:0;border-color:rgba(216,35,42,.48);box-shadow:0 0 0 4px rgba(216,35,42,.1)}.portal-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}.portal-price strong{color:var(--blue);font-size:30px;line-height:1}.portal-cockpit-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.85fr) minmax(220px,.85fr);grid-gap:14px;gap:14px}.portal-next-action{border-color:rgba(216,35,42,.18);background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,248,248,.92)),var(--surface)}.portal-action-title{display:block;margin-bottom:6px;color:#101828;font-size:20px;line-height:1.2}.portal-progress-track{height:8px;width:100%;overflow:hidden;border-radius:999px;background:#e2e8f0}.portal-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ef4444,#d8232a)}.portal-progress-track.indigo span{background:linear-gradient(90deg,#0f766e,#4338ca)}.portal-trend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.portal-trend-grid span{min-width:0;display:grid;grid-gap:2px;gap:2px;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fbfdff}.portal-trend-grid strong{color:#111827;font-size:18px;line-height:1.1}.portal-trend-grid em{color:var(--muted);font-size:11px;font-style:normal;font-weight:800;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.portal-timeline{display:grid;grid-gap:10px;gap:10px}.portal-timeline a{display:grid;grid-template-columns:minmax(120px,.26fr) minmax(180px,.34fr) minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fbfdff;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.portal-timeline a:hover{border-color:rgba(216,35,42,.24);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.portal-timeline span{color:var(--teal);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.portal-timeline strong{color:#111827}.portal-timeline em{min-width:0;color:var(--muted);font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-usage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.portal-usage-grid>div{display:grid;grid-gap:9px;gap:9px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fbfdff}.portal-usage-grid strong{color:#111827}.portal-usage-grid span{margin-left:auto;color:var(--muted);font-size:13px;font-weight:800}.practice-home{display:grid;grid-gap:20px;gap:20px;max-width:1220px;margin:0 auto}.practice-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,auto);grid-gap:18px;gap:18px;align-items:center;padding:22px 24px;border:1px solid #dbe3ef;border-radius:8px;background:linear-gradient(135deg,rgba(216,35,42,.055),rgba(14,165,233,.04) 42%,rgba(22,163,74,.035)),#ffffff;box-shadow:0 12px 34px rgba(15,23,42,.06)}.practice-back,.practice-ghost-button,.practice-kicker,.practice-pill,.practice-primary-button,.practice-save-state{display:inline-flex;align-items:center;gap:7px}.practice-kicker{color:#b91c1c;font-weight:800;font-size:12px;margin-bottom:8px}.practice-hero h1{margin:0;max-width:600px;font-size:30px;line-height:1.12;letter-spacing:0}.practice-hero p{max-width:640px;margin:10px 0 0;color:#475569;font-size:15px;line-height:1.55}.practice-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-hero-stats div{min-width:0;padding:12px;border:1px solid #dbe3ef;border-radius:8px;background:rgba(255,255,255,.86);box-shadow:0 8px 22px rgba(15,23,42,.04)}.practice-hero-stats strong{display:block;color:#d8232a;font-size:22px;line-height:1}.practice-active-card p,.practice-active-card small,.practice-feedback-row small,.practice-hero-stats span,.practice-insight-row p,.practice-recommendation small,.practice-section-heading p,.practice-skill-card>span:not(.practice-icon){color:#64748b}.practice-insights,.practice-section{display:grid;grid-gap:10px;gap:10px}.practice-insights{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.practice-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.practice-section-heading h2{margin:0;font-size:18px;line-height:1.15}.practice-section-heading p{margin:4px 0 0;font-size:13px;line-height:1.4}.practice-focus-plan{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);grid-gap:14px;gap:14px;padding:14px;border:1px solid #dbe3ef;border-radius:8px;background:#fbfdff;box-shadow:0 10px 28px rgba(15,23,42,.045)}.practice-focus-main,.practice-focus-side{display:grid;grid-gap:14px;gap:14px;align-content:start}.practice-focus-main>div:first-of-type{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start}.practice-focus-main h2,.practice-focus-main p,.practice-focus-side ol,.practice-focus-side p{margin:0}.practice-focus-main h2{font-size:20px;line-height:1.14}.practice-focus-main p,.practice-focus-side li,.practice-focus-side p{color:#475569;font-size:14px;line-height:1.45}.practice-focus-progress{height:9px;overflow:hidden;border-radius:999px;background:#e2e8f0}.practice-focus-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0ea5e9,#16a34a)}.practice-focus-actions{display:flex;flex-wrap:wrap;gap:8px}.practice-focus-side{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-focus-side>div{display:grid;grid-gap:8px;gap:8px;padding:11px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-focus-side strong{display:inline-flex;gap:7px;align-items:center;font-size:14px}.practice-focus-side ol{padding-left:18px}.practice-focus-side li+li{margin-top:4px}.practice-heatmap{display:grid;grid-gap:7px;gap:7px}.practice-heatmap span{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center;padding:8px;border-radius:8px;background:#ffffff;color:#334155;font-size:12px;font-weight:800}.practice-heatmap em{width:40px;padding:3px 0;border-radius:999px;background:#e2e8f0;color:#475569;font-style:normal;text-align:center}.practice-heatmap .high em{background:#fee2e2;color:#991b1b}.practice-heatmap .medium em{background:#fef9c3;color:#854d0e}.practice-heatmap .low em{background:#dcfce7;color:#166534}.practice-active-grid,.practice-skill-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.practice-active-card,.practice-alert,.practice-audio-panel,.practice-empty,.practice-list,.practice-question-group,.practice-skeleton,.practice-skill-card,.practice-speaking-card,.practice-writing-task{border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-active-card,.practice-skill-card{position:relative;overflow:hidden;display:grid;grid-gap:10px;gap:10px;padding:15px;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.practice-active-card{min-height:220px;align-content:start}.practice-skill-card{min-height:150px;align-content:start;cursor:pointer}.practice-active-card:before,.practice-skill-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#94a3b8}.practice-active-card:hover,.practice-skill-card:hover:not(:disabled){transform:translateY(-2px);border-color:#bfdbfe;box-shadow:0 14px 34px rgba(15,23,42,.1)}.practice-skill-card:disabled{opacity:.65;cursor:progress}.practice-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.practice-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#fff1f2;color:#d8232a}.skill-reading .practice-icon,.skill-reading:before{background-color:#eef2ff;color:#4338ca}.skill-listening .practice-icon,.skill-listening:before{background-color:#ecfeff;color:#0e7490}.skill-writing .practice-icon,.skill-writing:before{background-color:#fff1f2;color:#d8232a}.skill-speaking .practice-icon,.skill-speaking:before{background-color:#f0fdf4;color:#15803d}.skill-reading:before{background:#6366f1}.skill-listening:before{background:#06b6d4}.skill-writing:before{background:#d8232a}.skill-speaking:before{background:#16a34a}.practice-pill{width:-moz-fit-content;width:fit-content;min-height:28px;padding:4px 9px;border-radius:999px;background:#e8f7ef;color:#15803d;font-size:12px;font-weight:800}.practice-pill.paused{background:#fff7ed;color:#c2410c}.practice-active-card h3,.practice-skill-card strong,.practice-speaking-card h2,.practice-writing-prompt h2{margin:0}.practice-active-card h3,.practice-skill-card strong{color:#0f172a;font-size:16px;line-height:1.25}.practice-active-card p,.practice-active-card small{margin:0;font-size:13px;line-height:1.4}.practice-skill-card>span:not(.practice-icon){font-size:13px;line-height:1.4}.practice-resume-chip{width:-moz-fit-content;width:fit-content;padding:5px 8px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:900}.practice-active-signals{display:flex;flex-wrap:wrap;gap:6px}.practice-active-signals span{min-height:24px;display:inline-flex;align-items:center;padding:4px 7px;border:1px solid #fde68a;border-radius:999px;background:#fffbeb;color:#92400e;font-size:11px;font-weight:900}.practice-active-signals span.feedback{border-color:#99f6e4;background:#f0fdfa;color:#0f766e}.practice-progress-bar,.practice-progress-line{overflow:hidden;background:#e2e8f0;border-radius:999px}.practice-progress-line{height:8px}.practice-progress-bar{height:4px}.practice-progress-bar span,.practice-progress-line span{display:block;height:100%;background:#16a34a}.practice-skill-card{border:1px solid #dbe3ef}.practice-skill-card em{align-self:end;color:#d8232a;font-size:13px;font-style:normal;font-weight:800}.practice-alert,.practice-empty,.practice-skeleton{display:flex;align-items:center;gap:12px;padding:18px}.practice-empty.compact{border:0;border-radius:0;background:#ffffff;align-items:flex-start}.practice-empty.compact p{margin:4px 0 0;color:#64748b;line-height:1.45}.practice-loading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.practice-loading-card,.practice-loading-list,.practice-workspace-loading{border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-loading-card{display:grid;grid-gap:12px;gap:12px;min-height:132px;padding:16px}.practice-loading-card.wide{grid-column:1/-1}.practice-loading-card em,.practice-loading-card span,.practice-loading-card strong,.practice-loading-list span,.practice-loading-nav span,.practice-loading-topbar em,.practice-loading-topbar span,.practice-loading-topbar strong,.practice-loading-workbench p,.practice-loading-workbench span,.practice-loading-workbench strong{display:block;border-radius:8px;background:#e8edf5;animation:practicePulse 1.2s ease-in-out infinite}.practice-loading-card span{width:38px;height:38px}.practice-loading-card strong{width:min(280px,75%);height:18px}.practice-loading-card em{width:min(440px,100%);height:12px}.practice-loading-list{grid-column:1/-1;display:grid;grid-gap:10px;gap:10px;padding:14px}.practice-loading-list span{height:44px}.practice-workspace-loading{display:grid;grid-gap:14px;gap:14px;min-height:100vh;padding:14px;background:#f6f8fb}.practice-loading-topbar{display:grid;grid-template-columns:120px minmax(180px,1fr) 120px 120px;grid-gap:12px;gap:12px;align-items:center;height:62px}.practice-loading-topbar em,.practice-loading-topbar span{height:34px}.practice-loading-topbar strong{height:40px}.practice-loading-workbench{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.3fr) 340px;grid-gap:14px;gap:14px}.practice-loading-workbench aside,.practice-loading-workbench section{display:grid;align-content:start;grid-gap:12px;gap:12px;min-height:520px;padding:18px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-loading-workbench span{width:42px;height:42px}.practice-loading-workbench strong{width:70%;height:22px}.practice-loading-workbench p{width:100%;height:14px;margin:0}.practice-loading-workbench p:nth-child(5){width:62%}.practice-loading-nav{display:flex;gap:8px;align-items:center;min-height:58px;padding:10px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-loading-nav span{width:36px;height:36px}@keyframes practicePulse{0%,to{opacity:.55}50%{opacity:1}}.practice-alert{border-color:#fecaca;color:#b91c1c;background:#fff5f5}.practice-list{display:grid;grid-gap:0;gap:0;overflow:hidden;box-shadow:0 8px 24px rgba(15,23,42,.035)}.practice-review-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;border-bottom:1px solid #edf2f7;background:#ffffff}.practice-review-row .practice-feedback-row,.practice-review-row:last-child{border-bottom:0}.practice-review-row>.practice-ghost-button{margin-right:14px;white-space:nowrap}.practice-feedback-row,.practice-insight-row,.practice-recommendation{display:flex;gap:12px;align-items:flex-start;width:100%;padding:13px 14px;border:0;border-bottom:1px solid #edf2f7;background:#ffffff;text-align:left}.practice-insight-row{cursor:pointer}.practice-insight-row:hover:not(:disabled){background:#f8fbff}.practice-insight-row:disabled{cursor:default}.practice-feedback-row:last-child,.practice-insight-row:last-child,.practice-recommendation:last-child{border-bottom:0}.practice-feedback-row small,.practice-insight-row p,.practice-insight-row small,.practice-recommendation small{display:block;margin:4px 0 0;line-height:1.45}.practice-feedback-row em,.practice-insight-row small{color:#d8232a;font-weight:900}.practice-feedback-row em{display:block;margin-top:5px;font-size:12px;font-style:normal}.practice-insight-row span{margin-left:auto;min-width:54px;padding:4px 8px;border-radius:999px;background:#fee2e2;color:#991b1b;font-weight:800;text-align:center}.practice-insight-row span.medium{background:#fef9c3;color:#854d0e}.practice-insight-row span.low{background:#dcfce7;color:#166534}.practice-workspace{position:relative;min-height:100vh;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:#f7f9fc;color:#0f172a}.practice-workspace,.practice-workspace:not(.coach-open){grid-template-columns:minmax(0,1fr)}.practice-topbar{grid-column:1/-1;min-height:68px;display:grid;grid-template-columns:auto minmax(0,1fr) repeat(5,auto);grid-gap:12px;gap:12px;align-items:center;padding:12px 18px;border-bottom:1px solid #dbe3ef;background:#ffffff}.practice-back{color:#475569;font-weight:700}.practice-session-title{display:flex;align-items:center;gap:10px;min-width:0}.practice-session-title small{display:block;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.practice-save-state{color:#64748b;font-size:13px}.practice-button-count{min-width:20px;min-height:20px;display:inline-grid;place-items:center;border-radius:999px;background:#fef3c7;color:#92400e;font-size:12px;font-weight:900}.practice-coach-fab,.practice-coach-toggle.pulse{animation:practice-coach-pulse 1.5s ease-in-out infinite}.practice-coach-toggle.active{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.practice-ghost-button,.practice-icon-button,.practice-primary-button{border:1px solid #dbe3ef;border-radius:7px;background:#ffffff;color:#0f172a;cursor:pointer}.practice-ghost-button,.practice-primary-button{min-height:40px;padding:9px 12px;justify-content:center;font-size:14px;line-height:1.25}.practice-primary-button{border-color:#d8232a;background:#d8232a;color:#ffffff}.practice-icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;color:#b45309}.practice-icon-button.active{border-color:#f59e0b;background:#fffbeb;color:#92400e}.practice-hint-levels{display:inline-flex;gap:4px;align-items:center;padding:3px;border:1px solid #fde68a;border-radius:7px;background:#fffbeb}.practice-hint-levels button{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:#92400e;cursor:pointer;font-weight:900}.practice-hint-levels button:hover:not(:disabled){background:#fde68a}.practice-hint-levels button.next{background:#fef3c7;box-shadow:inset 0 0 0 1px #f59e0b}.practice-hint-levels button.viewed{background:#dcfce7;color:#166534}.practice-hint-levels button:disabled{color:#cbd5e1;cursor:not-allowed}.practice-hint-levels button.viewed:disabled{color:#166534;opacity:1}.practice-main{grid-column:1;grid-row:3;min-width:0;min-height:0;padding:18px 18px 128px;overflow:auto}.practice-workspace>.practice-progress-bar{grid-column:1/-1;grid-row:2}.practice-resume-card{display:grid;grid-template-columns:minmax(190px,.95fr) minmax(140px,1fr) minmax(180px,1.2fr) auto;grid-gap:14px;gap:14px;align-items:center;margin-bottom:16px;padding:14px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.practice-resume-card>div:first-child{display:grid;grid-gap:4px;gap:4px}.practice-resume-card small,.practice-resume-card span{color:#475569}.practice-resume-card span{display:inline-flex;gap:6px;align-items:center;font-size:13px;font-weight:800}.practice-resume-card strong{color:#0f172a;font-size:18px}.practice-resume-meter{height:9px;overflow:hidden;border-radius:999px;background:#dbeafe}.practice-resume-meter span{height:100%;display:block;border-radius:inherit;background:#0ea5e9}.practice-resume-actions,.practice-resume-facts{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.practice-resume-facts small{min-height:28px;display:inline-flex;gap:5px;align-items:center;padding:5px 8px;border-radius:7px;background:#ffffff;font-size:12px;font-weight:700}.practice-resume-actions{justify-content:flex-end}.practice-feedback-board{display:grid;grid-gap:12px;gap:12px;margin-bottom:16px;padding:16px;border:1px solid #c7d2fe;border-radius:8px;background:#ffffff}.practice-feedback-board-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.practice-feedback-board-head span{display:inline-flex;gap:7px;align-items:center;color:#4338ca;font-size:13px;font-weight:900}.practice-feedback-board-head strong{color:#0f172a;font-size:20px}.practice-feedback-meter{height:10px;overflow:hidden;border-radius:999px;background:#e0e7ff}.practice-feedback-meter span{height:100%;display:block;border-radius:inherit;background:#4f46e5;transition:width .26s ease}.practice-feedback-board-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-feedback-board-counts span{min-height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #dbe3ef;border-radius:7px;font-size:12px;font-weight:900}.practice-feedback-board-counts .correct{border-color:#86efac;background:#dcfce7;color:#166534}.practice-feedback-board-counts .almost{border-color:#facc15;background:#fef9c3;color:#854d0e}.practice-feedback-board-counts .incorrect{border-color:#fca5a5;background:#fee2e2;color:#991b1b}.practice-feedback-board-counts .skipped{border-color:#cbd5e1;background:#f8fafc;color:#475569}.practice-feedback-disclosure{display:grid;grid-gap:8px;gap:8px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-feedback-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;padding:11px 12px;cursor:pointer;list-style:none}.practice-feedback-disclosure>summary::-webkit-details-marker{display:none}.practice-feedback-disclosure>summary:after{content:"+";width:24px;height:24px;display:inline-grid;flex:0 0 auto;place-items:center;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-weight:900}.practice-feedback-disclosure[open]>summary:after{content:"−"}.practice-feedback-disclosure>summary h3,.practice-feedback-disclosure>summary>span{margin:0;color:#0f172a;font-weight:900}.practice-feedback-disclosure>summary>small{min-width:0;color:#64748b;line-height:1.35}.practice-feedback-disclosure-body{display:grid;grid-gap:10px;gap:10px;padding:0 12px 12px}.practice-study-artifact{display:grid;grid-gap:10px;gap:10px;padding:0;border:1px solid #bae6fd;border-radius:8px;background:linear-gradient(180deg,#f8fdff,#ffffff)}.practice-study-artifact-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.practice-study-artifact-head span{display:inline-flex;align-items:center;gap:7px;color:#0369a1;font-size:13px;font-weight:900}.practice-study-artifact-head small{color:#64748b;font-size:12px;font-weight:800}.practice-study-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-study-steps article{position:relative;display:grid;grid-template-columns:auto 1fr;grid-gap:4px 8px;gap:4px 8px;align-items:start;min-height:112px;padding:10px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-study-steps article>em{grid-row:span 2;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#0f172a;color:#ffffff;font-size:12px;font-style:normal;font-weight:900}.practice-study-steps article>svg{color:#0f766e}.practice-study-steps article strong{color:#0f172a;font-size:13px}.practice-study-steps article p{grid-column:2;color:#475569;font-size:13px;line-height:1.45}.practice-study-evidence{display:grid;grid-gap:8px;gap:8px;padding-top:2px}.practice-study-evidence>strong{color:#0f172a;font-size:13px}.practice-study-evidence>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-study-evidence button{display:grid;grid-gap:5px;gap:5px;min-height:78px;padding:9px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff;color:#0f172a;cursor:pointer;text-align:left}.practice-study-evidence button:hover{border-color:#38bdf8;background:#f0f9ff}.practice-study-evidence button span{font-size:12px;font-weight:900}.practice-study-evidence button small{display:-webkit-box;overflow:hidden;color:#64748b;font-size:12px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.practice-study-evidence button.incorrect{border-left:3px solid #ef4444}.practice-study-evidence button.almost{border-left:3px solid #f59e0b}.practice-study-evidence button.skipped{border-left:3px solid #94a3b8}.practice-study-evidence button.review{border-left:3px solid #6366f1}.practice-feedback-board-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-gap:14px;gap:14px}.practice-feedback-board-grid>div{display:grid;grid-gap:8px;gap:8px;align-content:start;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.practice-feedback-board h3,.practice-feedback-board p{margin:0}.practice-feedback-board p{color:#475569;line-height:1.5}.practice-feedback-board-actions{display:flex;flex-wrap:wrap;gap:8px}.practice-feedback-board-weak{display:grid;grid-gap:8px;gap:8px}.practice-feedback-board-weak span{display:grid;grid-gap:3px;gap:3px;padding:8px;border-left:3px solid #94a3b8;border-radius:7px;background:#ffffff}.practice-feedback-board-weak span.high{border-left-color:#dc2626}.practice-feedback-board-weak span.medium{border-left-color:#f59e0b}.practice-feedback-board-weak span.low{border-left-color:#16a34a}.practice-feedback-board-drills small,.practice-feedback-board-weak small{color:#64748b;line-height:1.4}.practice-feedback-queue{display:grid;grid-gap:8px;gap:8px}.practice-feedback-queue-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.practice-feedback-queue h3{margin:0}.practice-feedback-filters{display:inline-flex;flex-wrap:wrap;gap:5px}.practice-feedback-filters button{min-height:28px;padding:0 9px;border:1px solid #dbe3ef;border-radius:999px;background:#ffffff;color:#475569;cursor:pointer;font-size:12px;font-weight:900}.practice-feedback-filters button.active{border-color:#2563eb;background:#dbeafe;color:#1d4ed8}.practice-feedback-issue{display:grid;grid-template-columns:minmax(88px,auto) auto minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;width:100%;padding:9px 10px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff;color:#0f172a;cursor:pointer;text-align:left}.practice-feedback-issue:hover{border-color:#93c5fd;background:#f8fbff}.practice-feedback-issue span,.practice-feedback-issue strong{font-size:12px;font-weight:900}.practice-feedback-issue strong{justify-self:start;padding:4px 7px;border-radius:999px;background:#f1f5f9;color:#475569}.practice-feedback-issue small{min-width:0;overflow:hidden;color:#64748b;text-overflow:ellipsis;white-space:nowrap}.practice-feedback-issue.correct strong{background:#dcfce7;color:#166534}.practice-feedback-issue.almost strong{background:#fef9c3;color:#854d0e}.practice-feedback-issue.incorrect strong{background:#fee2e2;color:#991b1b}.practice-feedback-issue.skipped strong{background:#f1f5f9;color:#475569}.practice-feedback-issue.review strong{background:#e0e7ff;color:#3730a3}.practice-feedback-empty{padding:10px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;color:#64748b;font-size:13px}.practice-feedback-board-drills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.practice-feedback-board-drills article{display:grid;grid-gap:7px;gap:7px;padding:10px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.practice-feedback-board-drills span{color:#1d4ed8;font-size:12px;font-weight:900}.practice-drill-checklist{display:grid;grid-gap:6px;gap:6px}.practice-drill-checklist button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:7px;gap:7px;align-items:center;width:100%;min-height:34px;padding:7px;border:1px solid #dbe3ef;border-radius:7px;background:#ffffff;color:#0f172a;cursor:pointer;text-align:left}.practice-drill-checklist button.done{border-color:#86efac;background:#f0fdf4}.practice-drill-checklist button svg{color:#94a3b8}.practice-drill-checklist button.done svg{color:#16a34a}.practice-drill-checklist button span{min-width:0;color:#0f172a;font-size:12px;font-weight:800;line-height:1.35}.practice-drill-checklist button em{color:#64748b;font-size:11px;font-style:normal;font-weight:900;white-space:nowrap}.practice-drill-checklist.compact button{grid-template-columns:auto minmax(0,1fr)}.practice-drill-checklist.compact button em{grid-column:2}.practice-audio-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,420px);grid-gap:16px;gap:16px;align-items:center;padding:16px;margin-bottom:16px}.practice-audio-panel h2,.practice-audio-panel p{margin:0}.practice-audio-panel p{margin-top:4px;color:#64748b}.practice-audio-panel audio{width:100%}.practice-audio-player{display:grid;grid-gap:10px;gap:10px}.practice-waveform{height:72px;display:grid;grid-template-columns:repeat(42,minmax(2px,1fr));grid-gap:3px;gap:3px;align-items:center;padding:10px;border:1px solid #dbe3ef;border-radius:8px;background:#0f172a}.practice-waveform span{display:block;border-radius:999px;background:#475569}.practice-waveform span.played{background:#22c55e}.practice-audio-actions,.practice-audio-meta,.practice-mode-tabs,.practice-speed-control{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.practice-audio-meta{justify-content:space-between;color:#64748b;font-size:12px}.practice-speed-control{min-height:40px;padding:4px 6px;border:1px solid #dbe3ef;border-radius:7px;background:#ffffff}.practice-mode-tabs button,.practice-speed-control button{min-height:30px;border:0;border-radius:6px;background:transparent;color:#475569;cursor:pointer;font-weight:800}.practice-mode-tabs button.active,.practice-speed-control button.active{background:#e0f2fe;color:#075985}.practice-audio-evidence{grid-column:1/-1;display:grid;grid-gap:9px;gap:9px;padding:12px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.practice-audio-evidence>strong{display:inline-flex;gap:7px;align-items:center;color:#1d4ed8}.practice-audio-evidence>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:8px;gap:8px}.practice-audio-evidence button{display:grid;grid-template-columns:auto auto minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center;padding:9px 10px;border:1px solid #dbeafe;border-radius:8px;background:#ffffff;color:#0f172a;cursor:pointer;text-align:left}.practice-audio-evidence button:hover{border-color:#60a5fa}.practice-audio-evidence em,.practice-audio-evidence span{font-size:12px;font-weight:900}.practice-audio-evidence em{padding:3px 7px;border-radius:999px;font-style:normal}.practice-audio-evidence em.almost{background:#fef9c3;color:#854d0e}.practice-audio-evidence em.incorrect{background:#fee2e2;color:#991b1b}.practice-audio-evidence em.skipped{background:#f1f5f9;color:#475569}.practice-audio-evidence small{min-width:0;overflow:hidden;color:#64748b;text-overflow:ellipsis;white-space:nowrap}.practice-transcript-lab{grid-column:1/-1;display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid #99f6e4;border-radius:8px;background:#f0fdfa}.practice-transcript-lab>div:first-child{display:grid;grid-gap:4px;gap:4px}.practice-transcript-lab strong{display:inline-flex;gap:7px;align-items:center;color:#0f766e}.practice-transcript-lab span{color:#475569;line-height:1.4}.practice-full-transcript{padding:10px;border:1px solid #ccfbf1;border-radius:8px;background:#ffffff}.practice-full-transcript summary{cursor:pointer;color:#0f766e;font-size:13px;font-weight:900}.practice-full-transcript p{max-height:260px;overflow:auto;margin:10px 0 0;padding-right:6px;color:#334155;line-height:1.55;white-space:pre-wrap}.practice-transcript-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:8px;gap:8px}.practice-transcript-list article{display:grid;grid-gap:7px;gap:7px;padding:10px;border:1px solid #ccfbf1;border-radius:8px;background:#ffffff}.practice-transcript-list article>div{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.practice-transcript-list button,.practice-transcript-list em{min-height:26px;padding:4px 8px;border-radius:999px;font-size:11px;font-style:normal;font-weight:900}.practice-transcript-list em{background:#f1f5f9;color:#475569}.practice-transcript-list article.correct em{background:#dcfce7;color:#166534}.practice-transcript-list article.almost em{background:#fef9c3;color:#854d0e}.practice-transcript-list article.incorrect em{background:#fee2e2;color:#991b1b}.practice-transcript-list button{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;cursor:pointer}.practice-transcript-list p,.practice-transcript-list small{margin:0;color:#475569;line-height:1.45}.practice-transcript-list p{color:#0f766e;font-weight:700}.practice-reading-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(340px,1fr);grid-gap:16px;gap:16px;align-items:start}.practice-reading-tools{grid-column:1/-1;display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 12px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-reading-tools>span{color:#64748b;font-size:13px}.practice-marker-swatches{display:inline-flex;gap:6px;align-items:center}.practice-marker-swatches button{width:24px;height:24px;border:2px solid transparent;border-radius:999px;cursor:pointer}.practice-marker-swatches button.active{border-color:#0f172a}.practice-marker-swatches .yellow{background:#facc15}.practice-marker-swatches .green{background:#22c55e}.practice-marker-swatches .blue{background:#38bdf8}.practice-marker-swatches .pink{background:#f472b6}.practice-keyword-scanner{display:grid;grid-gap:7px;gap:7px;padding:10px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.practice-keyword-scanner strong{display:inline-flex;gap:6px;align-items:center;color:#1d4ed8;font-size:13px}.practice-keyword-scanner small{color:#475569;line-height:1.4}.practice-keyword-scanner div{display:flex;flex-wrap:wrap;gap:6px}.practice-keyword-scanner em{padding:4px 7px;border-radius:999px;background:#ffffff;color:#1e40af;font-size:12px;font-style:normal;font-weight:900}.practice-vocabulary-drawer{min-width:min(460px,100%);flex:1 1 420px;display:grid;grid-gap:8px;gap:8px;padding:10px;border:1px solid #99f6e4;border-radius:8px;background:#f0fdfa}.practice-vocabulary-drawer strong{display:inline-flex;gap:6px;align-items:center;color:#0f766e;font-size:13px}.practice-vocabulary-drawer>small{color:#475569;line-height:1.4}.practice-vocabulary-drawer>div{max-height:210px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:7px;gap:7px}.practice-vocabulary-drawer button{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:4px 8px;gap:4px 8px;align-items:start;padding:8px;border:1px solid #ccfbf1;border-radius:8px;background:#ffffff;color:#0f172a;cursor:pointer;text-align:left}.practice-vocabulary-drawer button:hover{border-color:#2dd4bf}.practice-vocabulary-drawer span{min-width:0;overflow:hidden;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.practice-vocabulary-drawer em{padding:3px 6px;border-radius:999px;background:#ccfbf1;color:#0f766e;font-size:11px;font-style:normal;font-weight:900}.practice-vocabulary-drawer button small{grid-column:1/-1;display:-webkit-box;overflow:hidden;color:#475569;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.practice-passage-map{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:8px;gap:8px}.practice-passage-map button{display:grid;grid-gap:4px;gap:4px;min-height:72px;padding:10px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff;color:#0f172a;text-align:left;cursor:pointer}.practice-passage-map em,.practice-passage-map small,.practice-passage-map span{color:#64748b;font-size:12px;font-style:normal}.practice-passage-map em{width:-moz-fit-content;width:fit-content;padding:2px 6px;border-radius:999px;background:#fffbeb;color:#92400e;font-weight:900}.practice-reading-part{display:grid;grid-gap:12px;gap:12px;padding:12px;border:1px solid #c7d2fe;border-radius:10px;background:#f8fbff}.practice-reading-part+.practice-reading-part{margin-top:14px}.practice-reading-part-head{display:grid;grid-gap:4px;gap:4px;padding:12px;border-radius:8px;background:#312e81;color:#ffffff}.practice-reading-part-head span{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.practice-reading-part-head strong{font-size:16px}.practice-reading-part-head small{color:#c7d2fe;font-weight:800}.practice-passage-pane,.practice-question-pane{display:grid;grid-gap:14px;gap:14px}.practice-passage,.practice-question-group{border:1px solid #dbe3ef;border-radius:8px;background:#ffffff;padding:18px}.practice-passage{position:relative;overflow:hidden}.practice-passage:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#facc15}.practice-passage.marker-green:before{background:#22c55e}.practice-passage.marker-blue:before{background:#38bdf8}.practice-passage.marker-pink:before{background:#f472b6}.practice-passage-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:12px}.practice-passage h2{margin:0;font-size:18px}.practice-passage-head span{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:#dcfce7;color:#166534;font-size:12px;font-weight:800}.practice-passage p{margin:0;white-space:pre-wrap;line-height:1.8}.practice-evidence-bookmarks{display:grid;grid-gap:8px;gap:8px;margin-top:14px;padding:12px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.practice-evidence-bookmarks>strong{color:#1d4ed8}.practice-evidence-bookmarks button{display:grid;grid-template-columns:auto auto minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center;padding:8px 9px;border:1px solid #dbeafe;border-radius:8px;background:#ffffff;color:#0f172a;cursor:pointer;text-align:left}.practice-evidence-bookmarks button:hover{border-color:#60a5fa}.practice-evidence-bookmarks em,.practice-evidence-bookmarks span{font-size:12px;font-weight:900}.practice-evidence-bookmarks em{padding:3px 7px;border-radius:999px;background:#f1f5f9;color:#475569;font-style:normal}.practice-evidence-bookmarks .correct em{background:#dcfce7;color:#166534}.practice-evidence-bookmarks .almost em{background:#fef9c3;color:#854d0e}.practice-evidence-bookmarks .incorrect em{background:#fee2e2;color:#991b1b}.practice-evidence-bookmarks small{min-width:0;overflow:hidden;color:#475569;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.practice-passage-note{display:grid;grid-gap:6px;gap:6px;margin-top:14px}.practice-passage-note span{color:#475569;font-size:12px;font-weight:900}.practice-passage-note textarea{width:100%;min-height:76px;resize:vertical;border:1px solid #cbd5e1;border-radius:8px;padding:10px;font:inherit;line-height:1.45;background:#f8fafc}.practice-question-group-head{display:grid;grid-gap:4px;gap:4px;margin-bottom:12px}.practice-question-group-head span{color:#64748b}.practice-question{display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid #edf2f7;border-radius:8px;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease,transform .16s ease}.practice-question+.practice-question{margin-top:10px}.practice-question.current{border-color:#0ea5e9;background:#f0f9ff;box-shadow:0 10px 26px rgba(14,165,233,.1)}.practice-question.flagged{box-shadow:inset 3px 0 0 #f59e0b}.practice-question.feedback-correct{border-color:#86efac;background:linear-gradient(180deg,#f7fef9,#ffffff)}.practice-question.feedback-almost{border-color:#facc15;background:linear-gradient(180deg,#fffdf0,#ffffff)}.practice-question.feedback-incorrect{border-color:#fca5a5;background:linear-gradient(180deg,#fff7f7,#ffffff)}.practice-question.feedback-skipped{border-color:#cbd5e1}.practice-question-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-gap:10px;gap:10px;align-items:start}.practice-q-number{min-width:28px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:#e2e8f0;font-weight:800}.practice-question-main p{margin:4px 0 0}.practice-options{display:grid;grid-gap:8px;gap:8px;margin-left:38px}.practice-options label{display:flex;gap:8px;align-items:baseline}.practice-options label span{display:inline-flex;gap:5px;align-items:baseline}.practice-answer-input{box-sizing:border-box;width:min(100%,320px);margin-left:38px;border:1px solid #cbd5e1;border-radius:7px;min-height:40px;padding:8px 10px}.practice-question-feedback{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin-left:38px;padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#475569;font-size:13px;animation:practice-feedback-in .22s ease-out}.practice-question-feedback-head{grid-column:1/-1;display:flex;gap:8px;align-items:center;justify-content:space-between}.practice-question-feedback-head strong{color:#0f172a}.practice-feedback-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:8px;gap:8px}.practice-feedback-detail-grid span{display:grid;grid-gap:4px;gap:4px;min-height:76px;padding:9px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-feedback-detail-grid small{color:#64748b;font-size:11px;font-weight:900;text-transform:uppercase}.practice-feedback-detail-grid strong{color:#0f172a;font-size:12px;line-height:1.4}.practice-answer-compare{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-answer-compare span,.practice-clinic-card{display:grid;grid-gap:4px;gap:4px;padding:9px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-answer-compare small,.practice-clinic-card small{color:#64748b;font-size:11px;font-weight:900;text-transform:uppercase}.practice-answer-compare strong{min-width:0;color:#0f172a;line-height:1.35;overflow-wrap:anywhere}.practice-clinic-card p{margin:0;color:#334155;line-height:1.45}.practice-clinic-card.evidence{border-color:#99f6e4;background:linear-gradient(180deg,#ecfeff,#f0fdfa)}.practice-clinic-card.evidence p{color:#0f766e}.practice-clinic-card.next{border-color:#fde68a;background:linear-gradient(180deg,#fff7d6,#fffbeb)}.practice-clinic-card.next p{color:#92400e}.practice-inline-action{width:-moz-fit-content;width:fit-content;border:1px solid #bfdbfe;border-radius:7px;background:#eff6ff;color:#1d4ed8;min-height:30px;padding:5px 8px;cursor:pointer}.practice-status{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;font-weight:800}.practice-status.correct{background:#dcfce7;color:#166534}.practice-status.almost{background:#fef9c3;color:#854d0e}.practice-status.incorrect{background:#fee2e2;color:#991b1b}.practice-status.skipped{background:#e2e8f0;color:#475569}.practice-speaking-layout,.practice-writing-layout{display:grid;grid-gap:16px;gap:16px}.practice-mode-tabs{padding:4px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff;width:-moz-fit-content;width:fit-content}.practice-writing-task{display:grid;grid-template-columns:minmax(280px,.65fr) minmax(320px,1fr);grid-gap:16px;gap:16px;padding:16px}.practice-writing-prompt p{white-space:pre-wrap;line-height:1.65}.practice-writing-chart{margin-top:12px;padding:12px;border:1px solid #dbe3ef;border-radius:10px;background:#ffffff}.practice-writing-timer{display:grid;grid-gap:9px;gap:9px;margin-top:14px;padding:12px;border:1px solid #c7d2fe;border-radius:10px;background:#eef2ff}.practice-writing-timer.running{border-color:#38bdf8;background:#ecfeff}.practice-writing-timing-guide{display:flex;gap:8px;align-items:flex-start;margin-top:12px;padding:10px;border:1px solid #fed7aa;border-radius:8px;background:#fff7ed;color:#9a3412;font-size:13px;font-weight:800;line-height:1.45}.practice-writing-timer-input{display:flex;gap:8px;align-items:center;justify-content:space-between;color:#475569;font-size:13px;font-weight:800}.practice-writing-timer-input input{width:84px;border:1px solid #c7d2fe;border-radius:8px;padding:8px;background:#ffffff;color:#0f172a;font:inherit;font-weight:900}.practice-writing-timer-actions,.practice-writing-timer-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.practice-writing-timer-head span{display:inline-flex;align-items:center;gap:6px;color:#3730a3;font-weight:900}.practice-writing-timer-head strong{color:#0f172a;font-size:24px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.practice-writing-timer-meter{height:9px;overflow:hidden;border-radius:999px;background:#dbeafe}.practice-writing-timer-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#06b6d4)}.practice-speaking-card p,.practice-speaking-card span,.practice-writing-editor span,.practice-writing-prompt small{color:#64748b}.practice-writing-editor{display:grid;grid-gap:8px;gap:8px}.practice-writing-quality{display:grid;grid-gap:9px;gap:9px;padding:12px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-writing-quality-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.practice-writing-quality-head strong{color:#0f172a}.practice-writing-quality-head span{padding:4px 8px;border-radius:999px;font-size:12px;font-weight:900}.practice-writing-target-meter{height:9px;overflow:hidden;border-radius:999px;background:#e2e8f0}.practice-writing-target-meter span{height:100%;display:block;border-radius:inherit}.practice-writing-quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-writing-quality-grid span{display:grid;grid-gap:2px;gap:2px;padding:8px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc}.practice-writing-quality-grid strong{color:#0f172a;font-size:18px}.practice-writing-quality-grid small{color:#64748b;line-height:1.3}.practice-writing-quality .empty,.practice-writing-quality-grid .empty,.practice-writing-target-meter .empty{background:#f1f5f9;color:#475569}.practice-writing-quality .under,.practice-writing-quality-grid .under,.practice-writing-target-meter .under{background:#fef9c3;color:#854d0e}.practice-writing-quality .ready,.practice-writing-quality-grid .ready,.practice-writing-target-meter .ready{background:#dcfce7;color:#166534}.practice-writing-quality .over,.practice-writing-quality-grid .over,.practice-writing-target-meter .over{background:#fee2e2;color:#991b1b}.practice-writing-feedback-deep{grid-column:1/-1;display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid #bfdbfe;border-radius:8px;background:#f8fbff}.practice-writing-diagnostics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-writing-checklist span,.practice-writing-diagnostics span{display:grid;grid-gap:4px;gap:4px;padding:8px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-writing-diagnostics strong{color:#0f172a;font-size:18px}.practice-writing-checklist small,.practice-writing-diagnostics small{color:#64748b;font-size:12px;line-height:1.35}.practice-writing-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-writing-checklist span{grid-template-columns:auto minmax(0,1fr);align-items:start}.practice-writing-checklist span svg{color:#94a3b8}.practice-writing-checklist span.done{border-color:#86efac;background:#f0fdf4}.practice-writing-checklist span.done svg{color:#16a34a}.practice-writing-checklist span.review{border-color:#facc15;background:#fffbeb}.practice-writing-checklist span.review svg{color:#ca8a04}.practice-writing-checklist small,.practice-writing-checklist strong{grid-column:2}.practice-writing-plan,.practice-writing-review{display:grid;align-content:start;grid-gap:10px;gap:10px;padding:14px;border:1px solid #dbe3ef;border-radius:8px;background:#f8fafc}.practice-writing-plan label{display:flex;gap:8px;align-items:flex-start;color:#475569}.practice-writing-review p{margin:0;color:#475569;line-height:1.55}.practice-writing-review-actions{display:flex;gap:8px;flex-wrap:wrap}.practice-writing-diff{display:grid;grid-gap:8px;gap:8px}.practice-writing-diff-row{display:grid;grid-gap:6px;gap:6px;padding:10px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-writing-diff-row span{color:#d8232a;font-size:12px;font-weight:900}.practice-writing-diff-row del{color:#991b1b;-webkit-text-decoration-color:#ef4444;text-decoration-color:#ef4444}.practice-writing-diff-row ins{color:#166534;text-decoration:none;font-weight:800}.practice-writing-diff-row small,.practice-writing-review-empty{color:#64748b}.practice-writing-editor textarea{min-height:360px;width:100%;resize:vertical;border:1px solid #cbd5e1;border-radius:8px;padding:14px;font:inherit;line-height:1.65}.practice-speaking-card{display:grid;grid-gap:12px;gap:12px;padding:18px}.practice-speaking-prompt{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:start;padding:14px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-speaking-timer{width:112px;height:112px;display:grid;place-items:center;align-content:center;grid-gap:2px;gap:2px;border-radius:999px;background:radial-gradient(circle at center,#ffffff 0 58%,transparent 59%),conic-gradient(#0ea5e9 0 72%,#dbeafe 72% 100%);color:#075985;text-align:center}.practice-speaking-timer.recording{background:radial-gradient(circle at center,#ffffff 0 58%,transparent 59%),conic-gradient(#d8232a 0 72%,#fee2e2 72% 100%);color:#b91c1c}.practice-speaking-timer strong{font-size:24px;line-height:1}.practice-speaking-timer em,.practice-speaking-timer small{font-size:11px;font-style:normal;font-weight:800}.practice-speaking-timer em{color:#64748b}.practice-speaking-controls{display:flex;gap:8px;flex-wrap:wrap}.practice-speaking-structure{display:grid;grid-gap:8px;gap:8px;padding:12px;border:1px solid #c7d2fe;border-radius:8px;background:#eef2ff}.practice-speaking-structure strong{color:#3730a3}.practice-speaking-structure ol{display:grid;grid-gap:5px;gap:5px;margin:0;padding-left:20px;color:#334155}.practice-speaking-structure li{line-height:1.4}.practice-speaking-structure small{padding:8px;border-radius:7px;background:#ffffff;color:#475569;line-height:1.4}.practice-speaking-transcript{width:100%;min-height:130px;resize:vertical;border:1px solid #cbd5e1;border-radius:8px;padding:12px;font:inherit;line-height:1.55}.practice-recorder-note{margin:0;color:#b45309}.practice-speaking-timeline{display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid #dbe3ef;border-radius:8px;background:#f8fafc}.practice-speaking-summary{display:flex;align-items:center;justify-content:space-between;gap:10px}.practice-speaking-timeline blockquote,.practice-speaking-timeline p{margin:0}.practice-speaking-playback{width:100%}.practice-speaking-marker-rail{display:grid;grid-gap:8px;gap:8px;padding:10px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-speaking-marker-track{position:relative;height:42px;border-radius:999px;background:linear-gradient(90deg,#cbd5e1 0 1px,transparent 1px) 0 50% /25% 1px repeat-x,#f1f5f9}.practice-speaking-marker-track:before{content:"";position:absolute;top:50%;right:10px;left:10px;height:4px;transform:translateY(-50%);border-radius:999px;background:#cbd5e1}.practice-speaking-marker-track button{position:absolute;top:50%;width:30px;height:30px;transform:translate(-50%,-50%);border:2px solid #ffffff;border-radius:999px;background:#64748b;color:#ffffff;cursor:pointer;font-size:9px;font-weight:900;box-shadow:0 3px 10px rgba(15,23,42,.18)}.practice-speaking-marker-track button.long_pause{background:#f59e0b}.practice-speaking-marker-track button.filler{background:#0ea5e9}.practice-speaking-marker-track button.grammar{background:#ef4444}.practice-speaking-marker-track button.good_phrase{background:#16a34a}.practice-speaking-marker-legend{display:flex;flex-wrap:wrap;gap:6px 12px;color:#64748b;font-size:11px;font-weight:800}.practice-speaking-marker-legend span{display:inline-flex;gap:5px;align-items:center}.practice-speaking-marker-legend i{width:9px;height:9px;display:inline-block;border-radius:999px;background:#64748b}.practice-speaking-marker-legend i.long_pause{background:#f59e0b}.practice-speaking-marker-legend i.filler{background:#0ea5e9}.practice-speaking-marker-legend i.grammar{background:#ef4444}.practice-speaking-marker-legend i.good_phrase{background:#16a34a}.practice-speaking-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-speaking-metrics span{display:grid;grid-gap:2px;gap:2px;padding:9px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff;color:#0f172a}.practice-speaking-metrics strong{font-size:16px;text-transform:capitalize}.practice-speaking-metrics small{color:#64748b}.practice-speaking-coach-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-gap:10px;gap:10px}.practice-speaking-coach-grid>div{display:grid;align-content:start;grid-gap:8px;gap:8px;padding:10px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-speaking-coach-grid strong{color:#0f172a}.practice-speaking-coach-grid ol{display:grid;grid-gap:5px;gap:5px;margin:0;padding-left:18px;color:#334155}.practice-speaking-coach-grid li{line-height:1.4}.practice-speaking-coach-grid span{display:grid;grid-gap:5px;gap:5px}.practice-speaking-coach-grid del,.practice-speaking-coach-grid ins{padding:7px;border-radius:7px;text-decoration:none;line-height:1.4}.practice-speaking-coach-grid del{background:#fee2e2;color:#991b1b}.practice-speaking-coach-grid ins{background:#dcfce7;color:#166534}.practice-speaking-coach-grid small{color:#64748b;line-height:1.35}.practice-speaking-timeline blockquote{padding:10px 12px;border-left:3px solid #0ea5e9;background:#ffffff;color:#475569}.practice-attempt-compare,.practice-marker-list{display:grid;grid-gap:8px;gap:8px}.practice-attempt-compare{padding:10px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.practice-attempt-compare>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-attempt-compare span{display:grid;grid-gap:4px;gap:4px;padding:8px;border-radius:7px;background:#ffffff;color:#0f172a;font-weight:800}.practice-attempt-compare em,.practice-attempt-compare small{color:#64748b;font-style:normal;font-weight:500;line-height:1.4}.practice-marker{display:grid;grid-template-columns:52px minmax(0,.55fr) minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;padding:9px;border-radius:8px;background:#ffffff;border:1px solid #e2e8f0}.practice-marker span{color:#64748b;font-weight:800}.practice-marker small{color:#64748b}.practice-marker.filler,.practice-marker.long_pause{border-color:#facc15;background:#fffbeb}.practice-marker.grammar{border-color:#fca5a5;background:#fff1f2}.practice-marker.good_phrase{border-color:#86efac;background:#f0fdf4}.practice-coach{position:fixed;top:86px;right:16px;bottom:98px;z-index:70;width:min(380px,calc(100vw - 32px));min-height:0;overflow:hidden;border:1px solid #c7d2fe;border-radius:10px;background:#ffffff;box-shadow:0 22px 70px rgba(15,23,42,.22);opacity:1;transform:translateX(0);transition:transform .22s ease,opacity .18s ease}.practice-workspace:not(.coach-open) .practice-coach{opacity:0;pointer-events:none;transform:translateX(calc(100% + 28px))}.practice-coach-head{position:-webkit-sticky;position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;border-bottom:1px solid #edf2f7;background:#ffffff}.practice-coach-head-actions{display:inline-flex;gap:6px;align-items:center}.practice-coach-head span{display:inline-flex;align-items:center;gap:8px;font-weight:800}.practice-coach-head button{border:0;border-radius:7px;background:#fff7ed;color:#b45309;min-height:34px;padding:7px 10px}.practice-coach-head button.close{width:34px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#f1f5f9;color:#475569}.practice-coach-body{max-height:calc(100% - 62px);display:grid;grid-gap:10px;gap:10px;padding:14px;overflow:auto}.practice-coach-fab{position:fixed;right:20px;top:94px;z-index:65;width:52px;height:52px;display:inline-grid;place-items:center;border:1px solid #bfdbfe;border-radius:999px;background:#ffffff;color:#1d4ed8;cursor:pointer;box-shadow:0 16px 40px rgba(37,99,235,.24)}.practice-coach-fab span{position:absolute;top:-5px;right:-4px;min-width:22px;min-height:22px;display:inline-grid;place-items:center;border-radius:999px;background:#f59e0b;color:#ffffff;font-size:12px;font-weight:900}.practice-settings-panel{display:grid;grid-gap:9px;gap:9px;padding:12px;border:1px solid #ccfbf1;border-radius:8px;background:#f0fdfa}.practice-settings-panel>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.practice-settings-panel strong{color:#0f766e;font-size:13px}.practice-settings-panel>div span{color:#64748b;font-size:12px;font-weight:800}.practice-settings-panel label{display:flex;align-items:center;gap:8px;min-height:30px;color:#0f172a;font-size:13px;font-weight:800}.practice-settings-panel label.select{justify-content:space-between}.practice-settings-panel input{width:16px;height:16px;accent-color:#0f766e}.practice-settings-panel select{min-height:32px;padding:5px 8px;border:1px solid #99f6e4;border-radius:7px;background:#ffffff;color:#0f172a;font-weight:800}.practice-hint-ladder{display:grid;grid-gap:8px;gap:8px;padding:12px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.practice-hint-ladder>div{display:flex;justify-content:space-between;gap:8px;align-items:center}.practice-hint-ladder>div span{color:#475569;font-size:12px;font-weight:800}.practice-hint-ladder>span{display:grid;grid-template-columns:auto minmax(62px,auto) minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;padding:8px;border-radius:8px;background:#ffffff}.practice-hint-ladder b,.practice-hint-ladder em{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:12px;font-style:normal;font-weight:900}.practice-hint-ladder em{background:#dbeafe;color:#1d4ed8}.practice-hint-ladder .level-2 em{background:#fef3c7;color:#92400e}.practice-hint-ladder .level-3 em{background:#fee2e2;color:#991b1b}.practice-hint-ladder small{color:#64748b;line-height:1.35}.practice-hint-ladder b{background:#f1f5f9;color:#475569}.practice-coach-item{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:10px;gap:10px;padding:12px;border:1px solid #fde68a;border-radius:8px;background:#fffbeb}.practice-coach-item.muted{border-color:#dbe3ef;background:#f8fafc}.practice-coach-item p{margin:0;line-height:1.5}.practice-coach-item em,.practice-coach-item small{display:block;margin-top:6px;color:#64748b;line-height:1.4}.practice-coach-item em{color:#0f766e;font-style:normal;font-weight:700}.practice-coach-meta,.practice-coach-refs{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.practice-coach-meta span,.practice-coach-refs span{display:inline-flex;align-items:center;min-height:24px;padding:4px 7px;border-radius:999px;font-size:11px;font-weight:900}.practice-coach-meta span{border:1px solid #bae6fd;background:#f0f9ff;color:#0369a1}.practice-coach-refs span{border:1px solid #ccfbf1;background:#f0fdfa;color:#0f766e}.practice-coach-safety{color:#92400e!important;font-weight:800}.practice-feedback-panel{display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.practice-feedback-panel h3,.practice-feedback-panel h4{margin:0}.practice-feedback-counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-feedback-counts span{min-height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;font-weight:800;font-size:12px}.practice-feedback-counts .correct,.practice-question-nav button.correct{background:#dcfce7;color:#166534;border-color:#86efac}.practice-feedback-counts .almost,.practice-question-nav button.almost{background:#fef9c3;color:#854d0e;border-color:#facc15}.practice-feedback-counts .incorrect,.practice-question-nav button.incorrect{background:#fee2e2;color:#991b1b;border-color:#fca5a5}.practice-feedback-counts .skipped,.practice-question-nav button.skipped{background:#e2e8f0;color:#475569;border-color:#cbd5e1}.practice-weak-area{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:8px;gap:8px;padding:9px;border-radius:8px;background:#f8fafc}.practice-weak-area.high{background:#fff1f2}.practice-weak-area.medium{background:#fffbeb}.practice-weak-area small{display:block;margin-top:2px;color:#64748b}.practice-feedback-panel ol{margin:0;padding-left:20px}.practice-feedback-panel li+li{margin-top:6px}.practice-drill-list,.practice-inline-comments{display:grid;grid-gap:8px;gap:8px}.practice-drill{display:grid;grid-gap:6px;gap:6px;padding:10px;border:1px solid #c7d2fe;border-radius:8px;background:#eef2ff;color:#312e81}.practice-drill small,.practice-drill span{color:#4f46e5;font-size:12px;font-weight:800}.practice-drill ol,.practice-drill p{margin:0}.practice-inline-comment{display:grid;grid-gap:6px;gap:6px;padding:10px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff;color:#0f172a}.practice-inline-comment span{width:-moz-fit-content;width:fit-content;padding:3px 7px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:11px;font-weight:900;text-transform:capitalize}.practice-inline-comment blockquote{margin:0;padding:8px 10px;border-left:3px solid #94a3b8;background:#f8fafc;color:#475569}.practice-inline-comment p,.practice-inline-comment small{margin:0;line-height:1.45}.practice-inline-comment small{color:#0f766e;font-weight:700}.practice-inline-comment.grammar span{background:#fee2e2;color:#991b1b}.practice-inline-comment.weak_expression span{background:#fef9c3;color:#854d0e}.practice-inline-comment.good_sentence span{background:#dcfce7;color:#166534}.practice-inline-comment.cohesion span{background:#ede9fe;color:#5b21b6}.practice-written-feedback{margin:0;padding:9px;border-radius:8px;background:#f0f9ff;color:#075985}.practice-written-feedback p{margin:6px 0}.practice-rubric-bars{display:grid;grid-gap:8px;gap:8px;margin-top:10px}.practice-rubric-row{display:grid;grid-gap:5px;gap:5px}.practice-rubric-row span{font-weight:800}.practice-rubric-row div{height:8px;overflow:hidden;border-radius:999px;background:#bfdbfe}.practice-rubric-row em{display:block;height:100%;border-radius:inherit;background:#0ea5e9}.practice-rubric-row small{color:#475569}.practice-rewrite{display:grid;grid-gap:6px;gap:6px;margin-top:10px;padding:10px;border-radius:8px;background:#ffffff;color:#0f172a}.practice-rewrite span{color:#d8232a;font-weight:900}.practice-rewrite del{color:#991b1b;-webkit-text-decoration-color:#ef4444;text-decoration-color:#ef4444}.practice-rewrite ins{color:#166534;text-decoration:none;font-weight:700}.practice-rewrite small{color:#64748b}.practice-question-nav{position:fixed;right:0;bottom:0;left:0;z-index:58;display:grid;grid-gap:8px;gap:8px;padding:10px 18px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #dbe3ef;background:#ffffff;box-shadow:0 -14px 34px rgba(15,23,42,.12)}.practice-question-nav-scroll{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.practice-question-nav button{width:34px;height:34px;flex:0 0 auto;border:1px solid #cbd5e1;border-radius:7px;background:#ffffff;cursor:pointer;font-weight:800;transition:border-color .16s ease,background-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}.practice-question-nav button:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(15,23,42,.1)}.practice-question-nav button.answered{border-color:#16a34a;background:#dcfce7;color:#166534}.practice-question-nav button.current{border-color:#0ea5e9;background:#e0f2fe;color:#075985;box-shadow:0 0 0 3px rgba(14,165,233,.16)}.practice-question-nav button.hinted{box-shadow:inset 0 -3px 0 #f59e0b}.practice-question-nav button.flagged{border-color:#f59e0b;color:#92400e}.practice-question-legend{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;color:#64748b;font-size:11px;font-weight:800}.practice-question-legend span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.practice-question-legend i{width:10px;height:10px;display:inline-block;border:1px solid #cbd5e1;border-radius:3px;background:#ffffff}.practice-question-legend i.current{border-color:#0ea5e9;background:#e0f2fe}.practice-question-legend i.answered{border-color:#16a34a;background:#dcfce7}.practice-question-legend i.correct{border-color:#86efac;background:#dcfce7}.practice-question-legend i.almost{border-color:#facc15;background:#fef9c3}.practice-question-legend i.incorrect{border-color:#fca5a5;background:#fee2e2}.practice-question-legend i.hinted{border-color:#cbd5e1;background:linear-gradient(0deg,#f59e0b 0 30%,#ffffff 30%)}.practice-question-legend i.flagged{border-color:#f59e0b;background:#ffffff7a}.practice-pause-overlay{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,23,42,.45)}.practice-pause-card{width:min(520px,100%);display:grid;grid-gap:14px;gap:14px;padding:24px;border-radius:8px;background:#ffffff;box-shadow:0 20px 60px rgba(15,23,42,.22)}@keyframes practice-feedback-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes practice-coach-pulse{0%,to{box-shadow:0 0 0 0 rgba(37,99,235,.24)}50%{box-shadow:0 0 0 8px rgba(37,99,235,.06)}}@media (prefers-reduced-motion:reduce){.practice-coach,.practice-coach-fab,.practice-coach-toggle.pulse,.practice-feedback-meter span,.practice-question,.practice-question-feedback,.practice-question-nav button{animation:none;transition:none}.practice-question-nav button:hover{transform:none}}.practice-pause-card h2,.practice-pause-card p{margin:0}.practice-pause-actions,.practice-pause-stats{display:flex;gap:10px;flex-wrap:wrap}.practice-completion-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.practice-completion-steps span{padding:9px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:900;line-height:1.25}.practice-pause-stats span{padding:8px 10px;border-radius:7px;background:#f1f5f9;color:#475569;line-height:1.25}@media (max-width:1050px){.practice-audio-panel,.practice-feedback-board-drills,.practice-feedback-board-grid,.practice-feedback-detail-grid,.practice-focus-plan,.practice-focus-side,.practice-hero,.practice-insights,.practice-loading-workbench,.practice-reading-layout,.practice-resume-card,.practice-speaking-coach-grid,.practice-study-evidence>div,.practice-study-steps,.practice-writing-checklist,.practice-writing-task{grid-template-columns:1fr}.practice-resume-actions{justify-content:flex-start}.practice-active-grid,.practice-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-loading-topbar{grid-template-columns:minmax(120px,1fr) 1fr;height:auto}}@media (max-width:720px){.practice-home{gap:18px}.practice-hero{padding:18px;gap:16px}.practice-hero h1{font-size:22px;line-height:1.12}.practice-hero p{font-size:13px;line-height:1.5}.practice-active-grid,.practice-hero-stats,.practice-loading-grid,.practice-skill-grid,.practice-speaking-metrics,.practice-writing-diagnostics{grid-template-columns:1fr;display:grid}.practice-hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.practice-hero-stats div{min-width:0;padding:10px}.practice-hero-stats strong{font-size:20px}.practice-hero-stats span{font-size:12px;line-height:1.2}.practice-topbar{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:8px;padding:10px 12px}.practice-back,.practice-save-state,.practice-session-title{grid-column:1/-1}.practice-back{width:-moz-fit-content;width:fit-content}.practice-session-title{align-items:flex-start}.practice-session-title small{white-space:normal}.practice-save-state{min-width:0;justify-content:center;justify-self:start;max-width:100%;line-height:1.25;overflow-wrap:anywhere}.practice-topbar .practice-ghost-button,.practice-topbar .practice-primary-button{min-height:38px;padding:8px 10px;font-size:13px;line-height:1.1}.practice-topbar .practice-ghost-button:first-of-type{grid-column:1}.practice-topbar .practice-ghost-button:not(:first-of-type),.practice-topbar .practice-primary-button{min-width:0}.practice-pause-overlay{align-items:flex-end;padding:12px}.practice-pause-card{width:100%;max-width:100%;max-height:calc(100dvh - 24px);overflow:auto;padding:20px}.practice-pause-card h2,.practice-pause-card p{overflow-wrap:anywhere}.practice-pause-stats span{min-width:0;max-width:100%;overflow-wrap:anywhere}.practice-review-row{grid-template-columns:1fr;gap:0}.practice-review-row>.practice-ghost-button{width:calc(100% - 28px);margin:0 14px 14px;justify-content:center}.practice-main{padding:14px 14px 118px}.practice-question-nav{gap:6px;padding:9px 12px calc(9px + env(safe-area-inset-bottom));border-top:1px solid #cbd5e1;box-shadow:0 -10px 24px rgba(15,23,42,.12)}.practice-coach{top:74px;right:10px;bottom:96px;width:calc(100vw - 20px)}.practice-coach-fab{top:82px;right:14px}.practice-question-nav-scroll{gap:7px;padding-bottom:0}.practice-question-nav button{width:38px;height:38px}.practice-question-legend{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.practice-feedback-board-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-study-artifact-head{align-items:flex-start;flex-direction:column}.practice-feedback-issue{grid-template-columns:1fr auto}.practice-feedback-issue small{grid-column:1/-1;white-space:normal}.practice-answer-compare,.practice-question-feedback,.practice-speaking-prompt,.practice-writing-quality-grid{grid-template-columns:1fr}.practice-speaking-timer{width:96px;height:96px}.practice-completion-steps,.practice-marker{grid-template-columns:1fr}.practice-question-main{grid-template-columns:auto minmax(0,1fr)}.practice-question-main p{grid-column:2}.practice-question-main .practice-icon-button{grid-column:1;grid-row:2}.practice-question-main .practice-hint-levels{grid-column:2;grid-row:2;justify-self:start}.practice-answer-input,.practice-options{width:100%;margin-left:0}}.exam-layout{min-height:100vh;display:grid;grid-template-rows:58px 1fr}.exam-header{display:flex;align-items:center;justify-content:space-between;background:var(--surface);border-bottom:1px solid var(--line);padding:0 18px}.exam-body{display:grid;grid-template-columns:220px 1fr;min-height:0}.question-nav{background:var(--surface);border-right:1px solid var(--line);padding:16px}.question-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:8px;gap:8px}.qnum{height:34px;border:1px solid var(--line);border-radius:7px;display:grid;place-items:center;background:white}.qnum.current{border-color:var(--blue);color:var(--blue);background:var(--surface-2)}.qnum.answered{border-color:var(--green);color:var(--green);background:#f0fdf4}.exam-panel{padding:20px;overflow:auto}.split{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.editor{width:100%;min-height:420px;padding:14px;resize:vertical;background:white}.audio-bar,.editor{border:1px solid var(--line);border-radius:8px}.audio-bar{height:54px;display:flex;align-items:center;gap:14px;padding:0 14px;background:#0f172a;color:white}.progress{flex:1 1;height:6px;background:#334155;border-radius:100px;overflow:hidden}.progress span{display:block;width:36%;height:100%;background:#22c55e}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;background:var(--surface-2);color:var(--blue);font-size:12px;max-width:100%;overflow-wrap:anywhere}a.status-pill{min-height:40px}.user-menu{display:grid;grid-gap:8px;gap:8px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.user-menu-account{display:inline-flex;align-items:center;min-height:36px}.user-menu-meta{min-width:0;text-align:left}.user-menu-meta span,.user-menu-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-meta strong{font-size:13px;line-height:1.3}.user-menu-meta span{font-size:12px;line-height:1.3}.user-menu-login{width:100%}.user-menu .btn{width:100%;min-width:0;font-size:14px;line-height:1.25}@media (max-width:900px){.app-shell,.exam-body,.grid.cols-2,.grid.cols-3,.grid.cols-4,.portal-cockpit-grid,.portal-hero,.portal-list-card,.portal-metric-grid,.split{grid-template-columns:1fr}.app-shell{display:block;padding-top:calc(62px + env(safe-area-inset-top));padding-bottom:calc(78px + env(safe-area-inset-bottom))}.mobile-shell-bar{position:fixed;inset:0 0 auto;z-index:120;min-height:calc(62px + env(safe-area-inset-top));padding:calc(10px + env(safe-area-inset-top)) 14px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(216,225,238,.9);background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-brand{display:inline-flex;align-items:center;gap:9px;min-width:0;color:#111827;font-weight:850;letter-spacing:0}.mobile-brand em{color:var(--blue);font-style:normal}.mobile-section-pill{min-width:0;display:inline-flex;align-items:center;gap:7px;max-width:52%;padding:8px 10px;border:1px solid rgba(216,35,42,.14);border-radius:999px;background:#fff7f7;color:var(--blue);font-size:12px;font-weight:800}.mobile-section-pill span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-bottom-nav{position:fixed;inset:auto 10px calc(10px + env(safe-area-inset-bottom));z-index:120;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:4px;gap:4px;padding:7px;border:1px solid rgba(216,225,238,.94);border-radius:8px;background:rgba(255,255,255,.96);box-shadow:0 18px 38px rgba(15,23,42,.14);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.desktop-title{display:none}.mobile-title{display:inline}.mobile-bottom-nav a{min-width:0;min-height:54px;display:grid;place-items:center;align-content:center;grid-gap:4px;gap:4px;border-radius:7px;color:#64748b;font-size:10px;font-weight:800;line-height:1.1;text-align:center}.mobile-bottom-nav a svg{color:#94a3b8}.mobile-bottom-nav a.active{background:var(--surface-2);color:var(--blue)}.mobile-bottom-nav a.active svg{color:var(--blue)}.sidebar{display:none}.brand{margin-bottom:0}.nav{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:2px;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav a{flex:0 0 auto;min-height:40px;display:inline-flex;align-items:center;white-space:nowrap}.sidebar-actions{margin-top:0;display:flex;align-items:center;gap:10px;justify-content:space-between}.main{padding:14px 14px 18px;max-width:none}.portal-card,.portal-hero,.portal-list-card,.portal-panel{padding:16px}.portal-page{gap:14px}.portal-hero{gap:12px}.portal-hero h1{font-size:28px;line-height:1.08}.portal-hero p{font-size:14px;line-height:1.45}.portal-metric{min-height:92px}.portal-metric strong{font-size:26px}.portal-timeline a,.portal-trend-grid{grid-template-columns:1fr}.portal-timeline a{gap:3px}.portal-timeline em{white-space:normal}.portal-usage-grid{grid-template-columns:1fr}.portal-actions{justify-content:stretch;width:100%}.portal-actions .btn,.portal-actions .status-pill{flex:1 1 160px}.topbar{align-items:flex-start;flex-direction:column}.topbar-actions{justify-content:stretch;width:100%}.topbar-actions .btn{flex:1 1 160px}.card{padding:16px}.metric strong{font-size:24px}}.cbt-layout{height:100vh;height:100dvh;display:grid;grid-template-rows:64px auto 1fr 86px}.cbt-layout:not(:has(.cbt-banner)){grid-template-rows:64px 1fr 86px}.cbt-topbar{justify-content:space-between;background:var(--navy);color:white;padding:0 20px}.cbt-candidate,.cbt-topbar{display:flex;align-items:center}.cbt-candidate{gap:10px}.cbt-candidate strong{display:block;font-size:14px}.cbt-cand-id{font-size:12px;color:#9fb3d1}.cbt-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#155dfc,#13b981 54%,#f59e0b);border:2px solid #ffffff33}.cbt-timer{text-align:center}.cbt-timer strong{display:block;font-size:19px;letter-spacing:.3px}.cbt-timer.urgent strong{color:#fda4af}.cbt-timer-skill{font-size:12px;color:#9fb3d1;text-transform:uppercase;letter-spacing:1px}.cbt-topbar-right{display:flex;align-items:center;gap:14px}.cbt-save{font-size:12px;color:#9fb3d1}.cbt-brand{font-weight:800;letter-spacing:.5px}.cbt-brand.dark{color:var(--navy);display:inline-block;margin-bottom:8px}.cbt-banner{background:#fef3c7;border-bottom:1px solid #f59e0b;color:#92400e;padding:10px 20px;font-weight:600}.cbt-content{padding:20px;overflow-y:auto;min-height:0}.cbt-footer{gap:18px;background:var(--surface);border-top:2px solid var(--line);padding:0 20px}.cbt-footer,.cbt-review{display:flex;align-items:center}.cbt-review{gap:8px;font-size:13px;white-space:nowrap}.cbt-palette{flex:1 1;display:flex;gap:22px;overflow-x:auto;padding:8px 0}.cbt-palette-group{display:grid;grid-gap:4px;gap:4px}.cbt-palette-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.cbt-palette-items{display:flex;gap:6px}.pq{min-width:34px;height:34px;padding:0 8px;border:1px solid var(--line);border-radius:4px;background:white;cursor:pointer;font-size:13px;position:relative}.pq.answered{background:var(--navy);border-color:var(--navy);color:white}.pq.current{outline:2px solid var(--blue);outline-offset:1px}.pq.review:after{content:"";position:absolute;top:-4px;right:-4px;width:10px;height:10px;border-radius:50%;background:var(--orange);border:2px solid white}.cbt-nav{display:flex;align-items:center;gap:8px;white-space:nowrap}.cbt-arrow{width:40px;height:40px;border:1px solid var(--line);border-radius:6px;background:white;cursor:pointer;font-size:16px}.cbt-question{margin:14px 0;padding:10px;border-radius:8px;border:1px solid transparent}.cbt-question.current{border-color:var(--blue);background:var(--surface-2)}.cbt-split{align-items:start}.cbt-passage,.cbt-questions{max-height:calc(100vh - 220px);overflow-y:auto}.cbt-editor{min-height:calc(100vh - 320px)}.cbt-gate{min-height:100vh;display:grid;place-items:center;background:var(--navy);padding:24px}.cbt-gate-card{width:min(560px,100%);padding:28px}.auth-card{display:grid;grid-gap:14px;gap:14px;justify-items:center;text-align:center;border-color:rgba(255,255,255,.2);box-shadow:0 26px 70px rgba(2,6,23,.34)}.auth-card h1,.auth-card p{margin:0}.auth-card .cbt-brand-logo{margin-left:auto;margin-right:auto}.auth-form{display:grid;grid-gap:12px;gap:12px;justify-items:center;width:min(360px,100%);margin-top:2px}.auth-form label{display:grid;grid-gap:6px;gap:6px;width:100%;text-align:left}.auth-form input{width:100%;min-height:42px;padding:10px 12px;border:1px solid var(--line);border-radius:7px}.password-field{position:relative;display:block}.password-field input{padding-right:46px}.password-toggle{position:absolute;top:50%;right:7px;transform:translateY(-50%);display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:6px;background:transparent;color:var(--blue);cursor:pointer}.password-toggle:hover{background:var(--surface-2)}.password-toggle-icon{width:20px;height:20px}.auth-form .btn{width:min(180px,100%);margin-top:2px}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:10px;font-size:13px}.google-auth-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:min(340px,100%);min-height:44px;margin-top:6px;padding:8px 18px;border:1px solid var(--line);border-radius:7px;background:#ffffff;color:var(--ink);font-weight:700;text-align:center}.google-auth-btn:hover{border-color:#b8c4d6;background:#f8fafc}.password-auth-form{display:grid;grid-gap:10px;gap:10px;width:min(340px,100%);text-align:left}.auth-field{display:grid;grid-gap:5px;gap:5px;color:var(--ink);font-size:13px;font-weight:700}.auth-field input{width:100%;min-height:42px;border:1px solid var(--line);border-radius:7px;padding:9px 11px;background:#ffffff;color:var(--ink)}.password-auth-form .btn{width:100%}.auth-error{color:var(--red);font-size:13px;text-align:center}.auth-divider{display:flex;align-items:center;gap:10px;width:min(340px,100%);color:var(--muted);font-size:12px}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--line)}.google-mark{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--line);border-radius:50%;color:#4285f4;font-weight:800;line-height:1}.auth-switch{margin-top:2px}.cbt-details{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin:18px 0}.cbt-details span{display:block;font-size:12px}.cbt-rules{padding-left:18px;display:grid;grid-gap:6px;gap:6px;margin:14px 0}.cbt-rules.muted-list{color:var(--muted);font-size:14px}mark.hl{background:#fef08a;border-radius:2px;cursor:pointer}mark.hl:hover{background:#fde047}.idp-layout{height:100vh;height:100dvh;display:flex;flex-direction:column;--exam-bg:#ffffff;--exam-ink:#111111;--exam-card:#ffffff;--exam-line:#c9c9c9;background:var(--exam-bg);color:var(--exam-ink);font-family:Arial,Helvetica,sans-serif}.idp-layout.scheme-white-on-black{--exam-bg:#000000;--exam-ink:#ffffff;--exam-card:#111111;--exam-line:#555555}.idp-layout.scheme-yellow-on-black{--exam-bg:#000000;--exam-ink:#ffd400;--exam-card:#111111;--exam-line:#6b5d00}.idp-layout.size-standard .idp-content{font-size:15px}.idp-layout.size-large .idp-content{font-size:18px}.idp-layout.size-extra .idp-content{font-size:21px}.idp-topbar{flex:0 0 56px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:#1b1b1b;color:#ffffff;padding:0 16px}.idp-candidate{display:flex;align-items:center;gap:10px}.idp-photo{width:38px;height:38px;border-radius:3px;background:linear-gradient(135deg,#4b5563,#9ca3af);border:1px solid #ffffff44}.idp-cand-id{display:block;font-size:11px;color:#b9b9b9;letter-spacing:1px}.idp-candidate strong{font-size:14px;font-weight:600}.idp-timer{display:flex;align-items:center;gap:8px;font-size:18px}.idp-timer.urgent strong{color:#ff7b7b}.idp-topbar-right{display:flex;justify-content:flex-end;align-items:center;gap:8px}.idp-save{font-size:12px;color:#9a9a9a;margin-right:6px}.idp-chip{background:transparent;color:#ffffff;border:1px solid #8a8a8a;border-radius:4px;padding:5px 10px;font-size:13px;cursor:pointer}.idp-chip:hover{background:#333333}.idp-proctoring-chip{cursor:default;min-width:104px;text-align:center}.idp-proctoring-chip.clean{border-color:#34d399;color:#d1fae5}.idp-proctoring-chip.warn{border-color:#f59e0b;background:#451a03;color:#fde68a}.idp-chip.dark{color:#1b1b1b;border-color:#1b1b1b}.idp-chip.dark.active{background:#1b1b1b;color:#ffffff}.idp-partbar{flex:0 0 auto;background:#e9e9e9;color:#1b1b1b;border-bottom:1px solid #c9c9c9;padding:8px 16px;display:flex;gap:12px;align-items:baseline;font-size:14px}.idp-part-active{font-weight:700;white-space:nowrap}.scheme-white-on-black .idp-partbar,.scheme-yellow-on-black .idp-partbar{background:#1f1f1f;color:var(--exam-ink);border-color:#444}.idp-banner{background:#fff3cd;color:#6b5400;border-bottom:1px solid #e0c200;padding:8px 16px;font-weight:600}.idp-popover{position:absolute;top:60px;right:12px;z-index:60;width:320px;background:#ffffff;color:#1b1b1b;border:1px solid #c9c9c9;border-radius:8px;box-shadow:0 8px 28px rgba(0,0,0,.25);padding:14px 16px}.idp-popover h3{margin:8px 0 6px;font-size:14px}.idp-popover ul{margin:0;padding-left:18px;display:grid;grid-gap:5px;gap:5px;font-size:13px}.idp-popover-row{display:flex;gap:6px;flex-wrap:wrap}.idp-content{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 20px;background:var(--exam-bg);color:var(--exam-ink)}.idp-content .card{background:var(--exam-card);color:var(--exam-ink);border-color:var(--exam-line)}.idp-footer{flex:0 0 72px;gap:18px;background:#f4f4f4;border-top:2px solid #c9c9c9;padding:0 14px;color:#1b1b1b}.idp-footer,.idp-review{display:flex;align-items:center}.idp-review{gap:7px;font-size:14px;white-space:nowrap}.idp-review input{width:16px;height:16px}.idp-palette{flex:1 1;display:flex;gap:20px;overflow-x:auto;align-items:center}.idp-palette-group{display:flex;align-items:center;gap:8px}.idp-palette-label{font-size:13px;font-weight:700;white-space:nowrap}.idp-palette-label-button{border:0;background:transparent;color:inherit;cursor:pointer;font-family:inherit;font-size:13px;font-weight:700;padding:0}.idp-palette-label-button:focus-visible{outline:2px solid #1b1b1b;outline-offset:3px}.idp-palette-items{display:flex;gap:2px}.idp-q{min-width:27px;height:27px;padding:0 4px;background:transparent;border:2px solid transparent;font-size:13px;cursor:pointer;display:grid;place-items:center;color:#1b1b1b}.idp-q.answered span{text-decoration:underline;font-weight:700}.idp-q.current{border-color:#1b1b1b;background:#ffffff}.idp-q.review span{border:2px solid #1b1b1b;border-radius:50%;min-width:19px;display:inline-grid;place-items:center;padding:0 2px}.idp-nav{display:flex;align-items:center;gap:8px}.idp-arrow{width:46px;background:#1b1b1b;font-size:24px;line-height:1}.idp-arrow,.idp-finish{height:42px;color:#ffffff;border:0;border-radius:6px;cursor:pointer}.idp-finish{padding:0 16px;background:#d93025;font-size:14px;font-weight:600}.idp-finish.secondary{background:#1b1b1b}.idp-finish:disabled{opacity:.5;cursor:default}.idp-danger-outline{height:42px;padding:0 16px;border:1px solid #b42318;border-radius:6px;background:#ffffff;color:#b42318;font-size:14px;font-weight:700;cursor:pointer}.idp-danger-outline:hover{background:#fff5f3}.idp-danger-outline:disabled{opacity:.5;cursor:default}.idp-qnum-box{display:inline-grid;place-items:center;min-width:24px;height:24px;border:1px solid var(--exam-ink);font-size:13px;font-weight:700;margin-right:8px;vertical-align:middle}.idp-gap,.idp-qnum-box{background:var(--exam-card)}.idp-gap{display:inline-block;width:150px;border:1px solid #777;border-radius:3px;padding:4px 8px;margin:0 4px;font:inherit;color:var(--exam-ink);vertical-align:baseline}.idp-question{margin:16px 0;padding:6px 8px;border-left:3px solid transparent}.idp-question.current{border-left-color:#1b1b1b;background:rgba(127,127,127,.08)}.idp-context-menu{position:fixed;z-index:80;background:#ffffff;color:#1b1b1b;border:1px solid #b9b9b9;border-radius:6px;box-shadow:0 6px 22px rgba(0,0,0,.3);min-width:150px;padding:4px 0}.idp-context-menu button{display:block;width:100%;text-align:left;background:transparent;border:0;padding:8px 14px;font-size:13px;cursor:pointer}.idp-context-menu button:hover{background:#ececec}.idp-split{display:flex;align-items:stretch;height:calc(100vh - 220px);height:calc(100dvh - 220px);min-height:320px}.idp-pane{min-width:0;overflow-y:auto;padding:4px 14px 4px 4px}.idp-divider{flex:0 0 8px;cursor:col-resize;background:#d8d8d8;border-left:1px solid #bdbdbd;border-right:1px solid #bdbdbd}.scheme-white-on-black .idp-divider,.scheme-yellow-on-black .idp-divider{background:#333;border-color:#555}.reading-passage-block{border-top:1px solid var(--exam-line);padding-top:18px;margin-top:18px;scroll-margin-top:12px}.reading-passage-block:first-child{border-top:0;padding-top:0;margin-top:0}.idp-audio-bar{display:flex;align-items:center;gap:14px;border:1px solid var(--exam-line);border-radius:6px;background:var(--exam-card);padding:10px 14px;margin-bottom:16px;font-size:14px}.idp-audio-bar .progress{flex:1 1}.idp-intro{height:100%;display:grid;place-items:center;padding:20px}.idp-intro-card{width:min(720px,100%);background:var(--exam-card);border:1px solid var(--exam-line);border-radius:8px;padding:28px 34px}.idp-intro-card h1{margin:0 0 14px;font-size:24px}.idp-intro-card h3{margin:16px 0 6px;font-size:13px;letter-spacing:1px}.idp-intro-card p{margin:4px 0;font-size:15px}.idp-intro-note{margin-top:16px!important;font-style:italic}.idp-intro-card button{margin-top:14px}.idp-overlay{position:fixed;top:56px;left:0;right:0;bottom:0;z-index:200;display:grid;place-items:center;padding:24px;background:var(--exam-bg,#ffffff);color:var(--exam-ink,#111111)}.idp-overlay-card{width:min(540px,92%);background:var(--exam-card,#ffffff);border:1px solid var(--exam-line,#c9c9c9);border-radius:8px;padding:30px 34px;text-align:center;box-shadow:0 18px 45px rgba(15,23,42,.18)}.idp-overlay-card h2{margin-top:0;margin-bottom:12px}.idp-overlay-card p{margin:10px 0;line-height:1.45}.idp-alert-overlay{position:fixed;inset:0;z-index:260;display:grid;place-items:center;padding:24px;background:rgba(17,24,39,.45)}.idp-alert-card{width:min(460px,92%);background:#ffffff;color:#111827;border:1px solid #f4a79b;border-radius:8px;padding:28px 30px;text-align:center;box-shadow:0 18px 45px rgba(15,23,42,.24)}.idp-alert-card h2{margin:0 0 12px;color:#b42318}.idp-alert-card p{margin:10px 0;line-height:1.45}.idp-technical-card{width:min(620px,92%);text-align:left}.idp-technical-card .idp-dialog-actions,.idp-technical-card .muted,.idp-technical-card h2{text-align:center}@media (max-width:760px){.cbt-gate{align-items:stretch;place-items:stretch;padding:calc(14px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom))}.cbt-gate-card{align-self:center;padding:20px 16px}.cbt-details{grid-template-columns:1fr}.cbt-passage,.cbt-questions{max-height:none}.idp-layout{min-height:100svh}.idp-layout.size-standard .idp-content{font-size:15px}.idp-layout.size-large .idp-content{font-size:16px}.idp-layout.size-extra .idp-content{font-size:18px}.idp-topbar{flex:0 0 auto;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"candidate timer" "actions actions";gap:8px 10px;padding:calc(8px + env(safe-area-inset-top)) 10px 8px}.idp-candidate{grid-area:candidate;min-width:0}.idp-photo{width:34px;height:34px}.idp-cand-id,.idp-candidate strong{max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.idp-timer{grid-area:timer;justify-self:end;font-size:14px}.idp-topbar-right{grid-area:actions;justify-content:flex-end;gap:6px;overflow-x:auto;padding-bottom:2px}.idp-save{margin-right:auto;white-space:nowrap}.idp-chip{min-width:40px;min-height:40px;padding:6px 9px;white-space:nowrap}.idp-option{min-height:40px;align-items:center!important}.idp-option input[type=radio]{width:20px;height:20px;flex:0 0 auto}.idp-partbar{flex-wrap:wrap;gap:4px 10px;font-size:13px}.idp-banner,.idp-partbar{padding:8px 12px}.idp-popover{top:calc(92px + env(safe-area-inset-top));right:10px;width:min(320px,calc(100vw - 20px));max-height:calc(100dvh - 112px);overflow:auto}.idp-content{padding:12px}.idp-content .card{padding:14px}.idp-footer{flex:0 0 auto;flex-wrap:wrap;gap:10px;padding:10px 10px calc(10px + env(safe-area-inset-bottom))}.idp-review{min-height:40px}.idp-review input{width:20px;height:20px}.idp-palette{order:3;flex:1 0 100%;gap:14px;padding:2px 0 4px}.idp-palette-group{align-items:flex-start;flex-direction:column;gap:4px}.idp-palette-items{gap:4px}.idp-q{min-width:40px;height:40px;font-size:14px}.idp-nav{margin-left:auto}.idp-arrow,.idp-finish{min-height:44px}.idp-split{display:block;height:auto;min-height:0}.idp-pane{width:100%!important;overflow:visible;padding:0}.idp-divider+.idp-pane,.idp-pane+.idp-pane{margin-top:12px}.idp-divider{display:none}.idp-question{margin:12px 0;padding:8px}.idp-gap{width:100%!important;max-width:100%;min-height:40px;margin:8px 0 0}.idp-audio-bar{align-items:stretch;flex-wrap:wrap;gap:10px}.idp-audio-bar .progress{flex:1 0 100%}.idp-audio-bar label{flex:1 0 100%;white-space:normal!important}.idp-audio-bar input[type=range]{flex:1 1;min-width:120px}.idp-intro{height:auto;min-height:100%;padding:8px 0}.idp-intro-card,.idp-overlay-card{padding:22px 18px}.idp-dialog-actions{flex-wrap:wrap}}@media (max-width:520px){.sidebar{gap:10px}.nav{flex-wrap:wrap;overflow-x:visible}.nav a{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 8px);justify-content:center}.brand{font-size:14px}.sidebar-actions{align-items:stretch;flex-direction:column}.user-menu{justify-content:space-between;width:100%}.user-menu-meta{text-align:left}.pwa-install-btn,.user-menu .btn,.user-menu-login{width:100%}.topbar h1{font-size:26px;line-height:1.15}.btn{width:100%}.grid{gap:12px}.idp-topbar{grid-template-columns:1fr;grid-template-areas:"candidate" "timer" "actions"}.idp-timer{justify-self:start}.idp-topbar-right{justify-content:flex-start}.idp-nav{width:100%;margin-left:0;justify-content:space-between}.idp-nav .idp-finish{flex:1 1}.idp-arrow{width:48px;flex:0 0 48px}.idp-overlay{top:0;padding:16px}}.idp-dialog-actions{display:flex;justify-content:center;gap:10px;margin-top:22px}.idp-submit-error{margin:16px 0 0;color:#b42318;font-weight:600}.landing{--lp-red:#d8232a;--lp-ink:#101828;background:#ffffff;color:var(--lp-ink);min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.landing-header{position:-webkit-sticky;position:sticky;top:0;z-index:40;justify-content:space-between;gap:18px;padding:12px 32px;background:#ffffffee;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #eceff3}.landing-header,.landing-logo{display:flex;align-items:center}.landing-logo{gap:10px}.landing-logo-badge{width:38px;height:38px;border-radius:9px;background:var(--lp-red);color:#ffffff;font-weight:900;font-size:22px;display:grid;place-items:center}.landing-logo strong{display:block;font-size:17px;letter-spacing:.2px}.landing-logo strong em{font-style:normal;color:var(--lp-red)}.landing-logo span{display:block;font-size:11px;color:#667085}.landing-nav{display:flex;gap:22px;font-size:14px}.landing-nav a{color:#344054}.landing-nav a:hover{color:var(--lp-red)}.landing-actions{display:flex;align-items:center;gap:10px}.landing-login{color:#344054;padding:9px 14px;border:1px solid #d0d5dd}.landing-cta,.landing-login{font-size:14px;border-radius:8px}.landing-cta{background:var(--lp-red);color:#ffffff;font-weight:600;padding:10px 16px}.landing-cta:hover{background:#b71c22}.landing-cta.big{font-size:16px;padding:13px 22px}.landing-cta-outline{border:1.5px solid #d0d5dd;color:var(--lp-ink);font-size:16px;font-weight:600;padding:12px 22px;border-radius:8px}.landing-hero{display:grid;grid-template-columns:1.05fr 1fr;grid-gap:40px;gap:40px;align-items:center;max-width:1180px;margin:0 auto;padding:64px 32px 48px}.landing-badge{display:inline-block;background:#fdecea;color:var(--lp-red);font-size:12px;font-weight:700;letter-spacing:1.2px;padding:6px 12px;border-radius:999px;margin-bottom:18px}.landing-hero h1{font-size:52px;line-height:1.08;margin:0 0 18px;letter-spacing:-1px}.landing-gradient{background:linear-gradient(90deg,#2563eb,#7c3aed 45%,#d8232a);-webkit-background-clip:text;background-clip:text;color:transparent}.landing-hero p{font-size:17px;color:#475467;max-width:480px;margin:0 0 26px}.landing-hero-cta{display:flex;gap:12px;flex-wrap:wrap}.landing-trust{margin-top:18px!important;font-size:13px!important;color:#98a2b3!important}.landing-hero-visual{position:relative;display:grid;justify-items:center}.landing-monitor{width:100%;max-width:460px;background:#ffffff;border:1px solid #e4e7ec;border-radius:14px;box-shadow:0 24px 60px rgba(16,24,40,.14);overflow:hidden}.landing-monitor-top{display:flex;align-items:center;justify-content:space-between;background:#1b1b1b;padding:10px 14px}.landing-mini-id{width:70px;height:10px;border-radius:4px;background:#4b5563}.landing-mini-timer{color:#ffffff;font-size:12px;font-weight:700}.landing-mini-chips{width:54px;height:10px;border-radius:4px;background:#4b5563}.landing-monitor-body{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;padding:16px}.landing-mini-passage,.landing-mini-questions{display:grid;grid-gap:8px;gap:8px;align-content:start}.landing-mini-passage i{display:block;height:9px;border-radius:4px;background:#eaecf0}.landing-mini-q{display:flex;align-items:center;gap:8px}.landing-mini-q b{width:20px;height:20px;border:1.5px solid #344054;font-size:11px;display:grid;place-items:center}.landing-mini-q i{display:block;height:9px;border-radius:4px;background:#eaecf0;flex:1 1}.landing-band-card{margin-top:8px;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#ffffff;border-radius:12px;padding:14px;display:grid;grid-gap:2px;gap:2px}.landing-band-card span{font-size:11px;opacity:.85}.landing-band-card strong{font-size:34px;line-height:1}.landing-band-card em{font-style:normal;font-size:11px;opacity:.9}.landing-monitor-foot{display:flex;gap:5px;padding:10px 14px;border-top:1px solid #eaecf0;background:#f9fafb}.landing-monitor-foot b{width:22px;height:22px;display:grid;place-items:center;font-size:11px;color:#344054;border:1px solid transparent}.landing-monitor-foot b.done{text-decoration:underline;font-weight:800}.landing-monitor-stand{width:120px;height:26px;background:linear-gradient(#d0d5dd,#98a2b3);-webkit-clip-path:polygon(35% 0,65% 0,80% 100%,20% 100%);clip-path:polygon(35% 0,65% 0,80% 100%,20% 100%)}.landing-headphones{position:absolute;right:-6px;bottom:-10px;font-size:64px;filter:drop-shadow(0 10px 18px rgba(16,24,40,.25))}.landing-skills{max-width:1180px;margin:0 auto;padding:40px 32px 16px;text-align:center}.landing-skills h2{font-size:32px;margin:0 0 8px}.landing-sub{color:#667085;margin:0 0 28px}.landing-skill-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:18px;gap:18px;text-align:left}.landing-skill-card{border:1px solid #e4e7ec;border-radius:14px;padding:20px;background:#ffffff;display:grid;grid-gap:8px;gap:8px;align-content:start}.landing-skill-icon{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;font-size:22px}.landing-skill-card h3{margin:2px 0 0}.landing-skill-card p{margin:0;color:#475467;font-size:14px}.landing-stats{max-width:1180px;margin:28px auto 0;padding:26px 32px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:14px;gap:14px;border-top:1px solid #eceff3}.landing-stats div{text-align:center}.landing-stats strong{display:block;font-size:30px;color:var(--lp-red)}.landing-stats span{font-size:13px;color:#667085}.landing-footer{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;max-width:1180px;margin:18px auto 0;padding:18px 32px 30px;border-top:1px solid #eceff3;font-size:13px;color:#98a2b3}@media (max-width:900px){.landing-hero{grid-template-columns:1fr;padding-top:36px}.landing-hero h1{font-size:38px}.landing-skill-grid,.landing-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-nav{display:none}}.landing [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.8,.3,1)}.landing [data-reveal].revealed{opacity:1;transform:translateY(0)}.landing-header{transition:box-shadow .25s ease}.landing-header.scrolled{box-shadow:0 6px 24px rgba(16,24,40,.08)}.landing-hero{position:relative}.landing-hero:after,.landing-hero:before{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(70px);opacity:.5;animation:lpFloat 9s ease-in-out infinite}.landing-hero:before{width:380px;height:380px;left:-120px;top:-60px;background:radial-gradient(circle,#fde2e3 0,transparent 70%)}.landing-hero:after{width:420px;height:420px;right:-140px;bottom:-80px;background:radial-gradient(circle,#dbe5ff 0,transparent 70%);animation-delay:-4.5s}.landing-gradient{background-size:220% 220%;animation:lpGradient 6s ease-in-out infinite}.landing-monitor{animation:lpFloat 7s ease-in-out infinite;will-change:transform}.landing-headphones{animation:lpFloat 5.5s ease-in-out infinite reverse}.landing-mini-passage i,.landing-mini-q i{background:linear-gradient(90deg,#eaecf0 25%,#f6f7f9 50%,#eaecf0 75%);background-size:200% 100%;animation:lpShimmer 2.4s linear infinite}.landing-mini-passage i.hl-sweep{position:relative;overflow:hidden}.landing-mini-passage i.hl-sweep:after{content:"";position:absolute;inset:0;width:0;background:#fde047;opacity:.85;animation:lpSweep 4.5s ease-in-out infinite}.landing-band-card{animation:lpGlow 3.2s ease-in-out infinite}.landing-band-card strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.landing-monitor-foot b{transition:transform .2s ease}.landing-monitor-foot b.done{animation:lpPop .35s ease}.landing-float-chip{position:absolute;background:#ffffff;border:1px solid #e4e7ec;border-radius:999px;box-shadow:0 10px 26px rgba(16,24,40,.14);font-size:12px;font-weight:700;padding:8px 13px;animation:lpFloat 6s ease-in-out infinite}.landing-float-chip.chip-band{top:6%;left:-14px;color:#16a34a;animation-delay:-2s}.landing-float-chip.chip-once{bottom:22%;left:-30px;color:#d8232a;animation-delay:-3.5s}.landing-cta,.landing-cta-outline,.landing-login{transition:transform .18s ease,box-shadow .18s ease,background .18s ease;position:relative;overflow:hidden}.landing-cta-outline:hover,.landing-cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(216,35,42,.22)}.landing-cta.big:after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.45),transparent);animation:lpShine 3.6s ease-in-out infinite}.landing-skill-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.landing-skill-card:hover{transform:translateY(-6px);border-color:#f3c1c3;box-shadow:0 18px 40px rgba(16,24,40,.12)}.landing-skill-card:hover .landing-skill-icon{animation:lpWiggle .5s ease}.landing-stats div{transition:transform .2s ease}.landing-stats div:hover{transform:scale(1.06)}@keyframes lpFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes lpGradient{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes lpShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes lpSweep{0%,15%{width:0}55%,75%{width:100%}to{width:100%;opacity:0}}@keyframes lpGlow{0%,to{box-shadow:0 8px 26px rgba(124,58,237,.35)}50%{box-shadow:0 12px 40px rgba(124,58,237,.6)}}@keyframes lpPop{0%{transform:scale(.6)}70%{transform:scale(1.25)}to{transform:scale(1)}}@keyframes lpShine{0%,60%{left:-80%}to{left:130%}}@keyframes lpWiggle{0%,to{transform:rotate(0deg)}30%{transform:rotate(-8deg)}60%{transform:rotate(8deg)}}@media (prefers-reduced-motion:reduce){.landing *,.landing :after,.landing :before{animation:none!important;transition:none!important}.landing [data-reveal]{opacity:1;transform:none}.practice-home *,.practice-home :after,.practice-home :before,.practice-workspace *,.practice-workspace :after,.practice-workspace :before{animation:none!important;transition:none!important}}.idp-timer.flash{animation:timerFlash 1s ease-in-out 5;border-radius:6px;padding:2px 10px}@keyframes timerFlash{0%,to{background:transparent}50%{background:#7a1d1d}}.pwa-install{margin-bottom:14px}.pwa-install-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);color:var(--blue);font-weight:600;cursor:pointer;min-height:42px;transition:filter .15s ease}.pwa-install-btn:hover{filter:brightness(.97)}.pwa-install-hint{margin:8px 2px 0;font-size:12px;line-height:1.5;color:var(--muted)}.result-analysis-layout{display:grid;grid-gap:16px;gap:16px}.result-coach-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);grid-gap:14px;gap:14px}.result-overall-panel{border-color:rgba(216,35,42,.18);background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,248,248,.92)),var(--surface)}.result-overall-band{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#ffffff}.result-overall-band span{color:var(--muted);font-size:12px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.result-overall-band strong{color:var(--blue);font-size:42px;line-height:1}.result-priority-list{display:grid;grid-gap:9px;gap:9px}.result-priority-list div{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:9px;gap:9px;align-items:start;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fbfdff}.result-priority-list svg{color:var(--teal);margin-top:2px}.result-priority-list span{color:#334155;line-height:1.45}.result-priority-list.calibrated div{grid-template-columns:auto minmax(0,1fr)}.result-priority-list.calibrated em,.result-priority-list.calibrated small,.result-priority-list.calibrated strong{display:block}.result-priority-list.calibrated strong{margin-bottom:3px;color:#0f172a;font-size:14px}.result-priority-list.calibrated small{color:#64748b;font-size:12px;line-height:1.45}.result-priority-list.calibrated em{margin-top:6px;color:#334155;font-size:13px;font-style:normal;line-height:1.45}.result-priority-severity{align-self:start;min-width:58px;padding:4px 7px;border-radius:999px;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;font-size:11px;font-weight:850;line-height:1;text-align:center;text-transform:uppercase}.result-priority-severity.high{border-color:#fecaca;background:#fff1f2;color:#be123c}.result-priority-severity.medium{border-color:#fed7aa;background:#fff7ed;color:#c2410c}.result-priority-severity.low{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.result-band-bars{display:grid;grid-gap:10px;gap:10px}.result-band-bars>div{display:grid;grid-template-columns:92px minmax(0,1fr) 42px;grid-gap:10px;gap:10px;align-items:center}.result-band-bars span{color:#475569;font-weight:800}.result-band-bars strong{text-align:right}.result-analysis-card{display:grid;grid-gap:16px;gap:16px}.result-analysis-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.result-analysis-head h2,.result-analysis-head p,.result-criterion-card p,.result-feedback-block h3,.result-summary{margin:0}.result-band-pill{min-width:92px;display:grid;grid-gap:2px;gap:2px;justify-items:center;padding:10px 12px;border:1px solid #dbe3ef;border-radius:8px;background:#f8fafc}.result-band-pill span,.result-evidence span,.result-objective-grid span{color:#64748b;font-size:12px;font-weight:700}.result-band-pill strong{font-size:28px;color:#d8232a}.result-summary{line-height:1.6}.result-criteria-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.result-criterion-card{display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.result-criterion-head{display:flex;justify-content:space-between;gap:12px}.result-criterion-head p,.result-feedback-note{margin-top:4px;color:#64748b;line-height:1.45}.result-criterion-head span{min-width:44px;text-align:right;color:#d8232a;font-size:20px;font-weight:800}.result-criterion-bar{height:7px;overflow:hidden;border-radius:999px;background:#e2e8f0}.result-criterion-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0f766e,#4338ca)}.result-evidence{display:grid;grid-gap:6px;gap:6px;padding:10px;border-left:3px solid #0ea5e9;background:#f0f9ff}.result-evidence p{color:#075985;line-height:1.45}.result-compact-list,.result-feedback-block ol,.result-feedback-block ul{margin:0;padding-left:20px}.result-compact-list li,.result-feedback-block li{margin-top:6px;line-height:1.45}.result-compact-list.positive li{color:#166534}.result-feedback-block{display:grid;grid-gap:8px;gap:8px}.result-action-coach{border-color:rgba(15,118,110,.2);background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,253,250,.82)),var(--surface)}.review-section{margin-bottom:16px}.review-group,.review-passage{margin-top:12px}.review-passage-body{max-height:320px;overflow-y:auto;margin-top:8px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fbfdff}.review-question{margin:12px 0;padding:12px 14px;border-left:4px solid var(--line);border-radius:8px}.review-question.correct{border-left-color:var(--green);background:#f0fdf4}.review-question.incorrect{border-left-color:var(--red);background:#fef2f2}.review-question-explanation,.review-question-line,.review-question-options,.review-question-prompt{margin:0 0 6px}.review-question-explanation,.review-question-options{color:var(--muted);font-size:13px;line-height:1.45}.review-question-line strong{color:var(--red)}.review-question-line .correct-answer,.review-question.correct .review-question-line strong{color:var(--green)}.result-objective-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.result-objective-grid div{display:grid;grid-gap:4px;gap:4px;padding:12px;border:1px solid #dbe3ef;border-radius:8px;background:#f8fafc}.result-objective-grid strong{font-size:22px}.speaking-mic-check{display:grid;grid-gap:12px;gap:12px;margin:16px 0;padding:14px;border:1px solid #dbe3ef;border-radius:8px;background:#f8fafc}.speaking-mic-check h3,.speaking-mic-check p{margin:0}.speaking-mic-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.speaking-mic-actions audio{min-width:260px;max-width:100%}.speaking-cue-card,.speaking-listen-panel{margin:14px 0;padding:16px;border:1px solid #dbe3ef;border-radius:8px;background:#ffffff}.speaking-cue-card{border-color:#c7d2fe;background:#f8faff}.speaking-cue-card p,.speaking-listen-panel p{margin-top:6px}.speaking-listen-panel{background:#f8fafc}.result-scorecard{display:grid;grid-gap:0;gap:0;padding-top:18px;padding-bottom:8px}.result-scorecard h2{margin:0 0 8px}.result-score-row{display:grid;grid-gap:10px;gap:10px;padding:16px 2px;border-top:1px solid #d6d6d6}.result-score-row.overall{border-bottom:1px solid #d6d6d6}.result-score-row p{margin:0;text-align:center;color:#1f2937;font-size:18px}.result-score-main{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.result-score-main strong{font-size:22px;font-weight:700}.result-score-main span{min-width:56px;text-align:right;font-size:24px;font-weight:800}.result-score-row.nested .result-score-main strong{font-size:20px}.result-criteria-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px 24px;gap:14px 24px;padding:6px 0 0;text-align:center}.result-criteria-mini span{font-size:18px}@media (max-width:900px){.pwa-install{flex:1 1 180px;margin-bottom:0}.result-analysis-head,.result-criterion-head{flex-direction:column}.result-coach-grid,.result-criteria-grid,.result-objective-grid{grid-template-columns:1fr}.result-band-bars>div{grid-template-columns:78px minmax(0,1fr) 36px}.result-criteria-mini{text-align:left}.result-criteria-mini,.result-priority-list.calibrated div{grid-template-columns:1fr}.result-priority-severity{min-width:0;width:max-content}}.app-shell,.cbt-gate,.exam-layout,.landing{min-height:100dvh}.lang-switch{display:inline-flex;align-items:center;gap:6px;width:100%;justify-content:center;margin-bottom:10px;padding:8px 10px;border:1px solid var(--border,#dbe3ef);border-radius:8px;background:#ffffff;color:#334155;font-size:13px;font-weight:600;cursor:pointer}.lang-switch:hover{background:#f8fafc}.lang-switch:disabled{opacity:.6;cursor:default}.pwa-update-toast{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom, 0px));transform:translateX(-50%);z-index:200;display:flex;align-items:center;gap:12px;max-width:calc(100vw - 24px);padding:12px 14px 12px 18px;border-radius:12px;background:#0f172a;color:#ffffff;font-size:14px;box-shadow:0 12px 32px rgba(15,23,42,.32)}.pwa-update-toast button{flex:0 0 auto;border:0;border-radius:8px;background:#d8232a;color:#ffffff;font-weight:700;padding:8px 14px;cursor:pointer}.pwa-update-toast button:hover{background:#b51d23}@media (max-width:520px){.result-score-row{padding:14px 0}.result-score-main{gap:10px}.result-score-main strong{font-size:18px}.result-score-main span{min-width:0;font-size:20px}.result-score-row p{font-size:16px;text-align:left}}