.app-shell{--p-bg:#f4f2ed;--p-bg-deep:#ebe8e1;--p-surface:#fbfaf7;--p-elevated:#ffffff;--p-raised:#ffffff;--p-line:#ddd9d0;--p-line-strong:#c3bdb1;--p-ink:#14161a;--p-ink2:#3c4149;--p-muted:#6c7078;--p-accent:#2d5be3;--p-accent-hi:#1e46bd;--p-accent-wash:rgba(45,91,227,0.09);--p-accent-ink:#ffffff;--p-ok:#1b6b45;--p-warn:#8a6a12;--p-bad:#b42318;--p-edge:inset 0 1px 0 rgba(255,255,255,0.9);--p-shadow-1:0 1px 2px rgba(20,22,26,0.05),0 2px 8px rgba(20,22,26,0.04);--p-shadow-2:0 2px 4px rgba(20,22,26,0.06),0 12px 32px rgba(20,22,26,0.08);--p-glow:rgba(45,91,227,0.10);--p-r-sm:8px;--p-r:12px;--p-r-lg:18px;--p-ease:cubic-bezier(0.16,1,0.3,1);--p-ease-io:cubic-bezier(0.65,0,0.35,1);--p-t-fast:160ms;--p-t:280ms;--p-t-slow:520ms}@media (prefers-color-scheme:dark){.app-shell{--p-bg:#0a0b0e;--p-bg-deep:#060709;--p-surface:#14171d;--p-elevated:#1a1e26;--p-raised:#222732;--p-line:#252a33;--p-line-strong:#39404d;--p-ink:#eef1f6;--p-ink2:#b8bfcc;--p-muted:#848c9a;--p-accent:#5182ff;--p-accent-hi:#7ba1ff;--p-accent-wash:rgba(81,130,255,0.15);--p-accent-ink:#ffffff;--p-ok:#43c98b;--p-warn:#e3b451;--p-bad:#ff7b72;--p-edge:inset 0 1px 0 rgba(255,255,255,0.055);--p-shadow-1:0 1px 2px rgba(0,0,0,0.4),0 2px 10px rgba(0,0,0,0.28);--p-shadow-2:0 2px 6px rgba(0,0,0,0.45),0 18px 44px rgba(0,0,0,0.42);--p-glow:rgba(81,130,255,0.16)}}.app-shell{--p-skill:var(--p-accent);--p-skill-glow:var(--p-glow)}.skill-reading{--p-skill:#c08a4a;--p-skill-glow:rgba(192,138,74,0.16)}.skill-listening{--p-skill:#4a9ec0;--p-skill-glow:rgba(74,158,192,0.16)}.skill-writing{--p-skill:#6aa87e;--p-skill-glow:rgba(106,168,126,0.16)}.skill-speaking{--p-skill:#9b8ad4;--p-skill-glow:rgba(155,138,212,0.16)}@media (prefers-color-scheme:light){.skill-reading{--p-skill:#8a6a3a;--p-skill-glow:rgba(138,106,58,0.10)}.skill-listening{--p-skill:#2a5a6e;--p-skill-glow:rgba(42,90,110,0.10)}.skill-writing{--p-skill:#3d4a3a;--p-skill-glow:rgba(61,74,58,0.10)}.skill-speaking{--p-skill:#4a3f6b;--p-skill-glow:rgba(74,63,107,0.10)}}.app-shell{--p-sans:"Archivo",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--p-mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;font-family:var(--p-sans);font-synthesis-weight:none}.app-shell .p-hero-title,.app-shell .task-title,.app-shell button,.app-shell h1,.app-shell h2,.app-shell h3,.app-shell input,.app-shell select,.app-shell textarea{font-family:var(--p-sans)}.app-shell .assessment-kind,.app-shell .assessment-label,.app-shell .exam-timer,.app-shell .home-kicker,.app-shell .listen-clock,.app-shell .p-clock,.app-shell .p-dest-label,.app-shell .p-dial-center b,.app-shell .p-evidence dd,.app-shell .p-evidence dt,.app-shell .p-eyebrow,.app-shell .p-figure,.app-shell .p-hero-stat b,.app-shell .p-num,.app-shell .p-rung-val,.app-shell .p-status-level b,.app-shell .p-status-rows dd,.app-shell .section-eyebrow,.app-shell .task-mode,.app-shell .task-progress-text,.app-shell .writing-meter{font-family:var(--p-mono);font-variant-numeric:tabular-nums}.app-shell .assessment-kind,.app-shell .assessment-label,.app-shell .home-kicker,.app-shell .p-dest-label,.app-shell .p-eyebrow,.app-shell .section-eyebrow,.app-shell .task-mode{letter-spacing:.1em;font-weight:600}.app-shell .p-hero-title{font-weight:700;letter-spacing:-.035em}.app-shell .p-dial-center b,.app-shell .p-figure,.app-shell .p-status-level b{font-weight:600;letter-spacing:-.03em}.app-shell{background:var(--p-bg);color:var(--p-ink)}.app-shell .app-main{background:transparent;padding:40px 48px 96px;max-width:1240px}.app-shell .app-sidebar{background:var(--p-bg-deep);border-right:1px solid var(--p-line)}.app-shell .app-topbar{background:color-mix(in srgb,var(--p-bg) 88%,transparent);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--p-line)}.app-shell .app-sidebar nav a{transition:color var(--p-t-fast) var(--p-ease),background var(--p-t-fast) var(--p-ease);border-radius:var(--p-r-sm)}.app-shell .app-sidebar nav a:hover{background:color-mix(in srgb,var(--p-ink) 6%,transparent);color:var(--p-ink)}.app-shell .app-sidebar nav a.active{background:color-mix(in srgb,var(--p-ink) 8%,transparent);color:var(--p-ink)}.app-shell .app-sidebar nav a.active:before{left:0;width:3px;border-radius:0 2px 2px 0}.app-shell .app-sidebar nav[aria-label=Staff]{margin-top:6px;padding-top:10px;border-top:1px solid var(--p-line)}.app-shell .app-teacher-link{color:var(--p-accent);font-weight:600}.app-shell .app-teacher-link:hover{color:var(--p-accent);background:color-mix(in srgb,var(--p-accent) 10%,transparent)}.app-shell .logo-mark{background:var(--p-accent);color:#fff;box-shadow:0 2px 10px var(--p-glow)}@keyframes p-rise{0%{opacity:0;transform:translate3d(0,16px,0)}to{opacity:1;transform:none}}@keyframes p-fade{0%{opacity:0}to{opacity:1}}@keyframes p-sweep{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.app-shell .app-main>*{animation:none}.app-shell [data-enter]{animation:p-rise var(--p-t-slow) var(--p-ease) both}.reveal-armed[data-reveal]{opacity:0;transform:translate3d(0,18px,0)}.reveal-armed[data-reveal].is-in{opacity:1;transform:none;transition:opacity var(--p-t-slow) var(--p-ease),transform var(--p-t-slow) var(--p-ease);transition-delay:calc(var(--i, 0) * 70ms)}@media (prefers-reduced-motion:reduce){.app-shell *,.app-shell :after,.app-shell :before{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.reveal-armed[data-reveal]{opacity:1;transform:none}}.app-shell{--p-fs-hero:clamp(42px,5.6vw,76px);--p-fs-display:clamp(30px,3.4vw,46px);--p-fs-title:clamp(21px,1.9vw,26px)}.p-eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--p-muted);margin:0 0 14px}.p-eyebrow:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--p-line-strong),transparent)}.p-eyebrow.is-skill{color:var(--p-skill)}.p-hero-title{font-size:var(--p-fs-hero);line-height:.94;letter-spacing:-.045em;font-weight:660;margin:0 0 18px;text-wrap:balance;color:var(--p-ink)}.p-lead{font-size:clamp(17px,1.5vw,20px);line-height:1.5;color:var(--p-ink2);max-width:46ch;margin:0 0 26px}.p-num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:-.035em}.p-panel{position:relative;background:var(--p-elevated);border:1px solid var(--p-line);border-radius:var(--p-r);box-shadow:var(--p-edge),var(--p-shadow-1)}.p-section{margin-top:56px}.p-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:20px}.p-section-head h2{font-size:var(--p-fs-title);letter-spacing:-.025em;font-weight:640;margin:0}.p-section-head p{margin:4px 0 0;color:var(--p-muted);font-size:14px}.p-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:48px 64px;align-items:center;padding:24px 0 44px;isolation:isolate}.p-hero:before{content:"";position:absolute;z-index:-1;left:-18%;top:-60%;width:78%;height:220%;background:radial-gradient(closest-side,var(--p-skill-glow),transparent 72%);pointer-events:none;animation:p-fade 1.2s var(--p-ease) both}.p-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px}.app-shell .btn-hero{min-height:54px;padding:15px 30px;font-size:16px;font-weight:640;letter-spacing:-.015em;border-radius:10px;background:var(--p-accent);border-color:var(--p-accent);color:var(--p-accent-ink);box-shadow:0 1px 2px rgba(0,0,0,.18),0 8px 26px var(--p-glow);transition:transform var(--p-t-fast) var(--p-ease),box-shadow var(--p-t-fast) var(--p-ease),background var(--p-t-fast) var(--p-ease)}.app-shell .btn-hero:hover{background:var(--p-accent-hi);border-color:var(--p-accent-hi);transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.2),0 14px 38px var(--p-glow)}.app-shell .btn-hero:active{transform:translateY(0) scale(.99)}.app-shell .btn-hero .p-arrow{transition:transform var(--p-t) var(--p-ease)}.app-shell .btn-hero:hover .p-arrow{transform:translateX(4px)}.p-hero-stat{display:flex;align-items:baseline;gap:10px;padding-left:18px;border-left:1px solid var(--p-line-strong)}.p-hero-stat b{font-size:20px;font-weight:650;letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:var(--p-ink)}.p-hero-stat span{font-size:12.5px;color:var(--p-muted)}.p-status{padding:24px 26px 22px}.p-status .p-eyebrow{margin-bottom:16px}.p-status-level{margin:0;font-size:16px;font-weight:500;color:var(--p-muted);letter-spacing:-.01em}.p-status-level b{display:inline-block;font-size:44px;font-weight:660;letter-spacing:-.045em;color:var(--p-ink);margin-left:4px;line-height:1}.p-status-level.is-empty{font-size:24px;font-weight:620;color:var(--p-ink);letter-spacing:-.03em}.p-status-conf{display:flex;align-items:center;gap:8px;margin:12px 0 0;font-size:13.5px;color:var(--p-ink2)}.p-dotmark{width:7px;height:7px;border-radius:50%;background:var(--p-skill);flex:none;box-shadow:0 0 0 3px var(--p-skill-glow)}.p-status-rows{margin:20px 0 0;display:flex;flex-direction:column;gap:0}.p-status-rows>div{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid var(--p-line)}.p-status-rows dt{font-size:12.5px;color:var(--p-muted);margin:0}.p-status-rows dd{margin:0;font-size:14px;font-weight:600;color:var(--p-ink)}.p-status-link{display:inline-flex;align-items:center;gap:7px;margin-top:18px;font-size:14px;font-weight:620;color:var(--p-accent);text-decoration:none}.p-status-link:hover{text-decoration:underline}.p-status-link .p-arrow{transition:transform var(--p-t) var(--p-ease)}.p-status-link:hover .p-arrow{transform:translateX(4px)}.p-destinations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.p-dest{position:relative;display:flex;flex-direction:column;overflow:hidden;background:var(--p-elevated);border:1px solid var(--p-line);border-radius:var(--p-r-lg);box-shadow:var(--p-edge),var(--p-shadow-1);text-decoration:none;color:inherit;transition:transform var(--p-t) var(--p-ease),border-color var(--p-t) var(--p-ease),box-shadow var(--p-t) var(--p-ease)}a.p-dest:hover{transform:translateY(-3px);border-color:var(--p-line-strong);box-shadow:var(--p-edge),var(--p-shadow-2);text-decoration:none}a.p-dest:focus-visible{outline:2px solid var(--p-accent);outline-offset:3px}.p-dest-stage{position:relative;height:148px;background:var(--p-surface);border-bottom:1px solid var(--p-line);overflow:hidden}.p-dest-body{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1;gap:6px}.p-dest-label{font-size:10.5px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--p-skill)}.p-dest h3{font-size:19px;font-weight:640;letter-spacing:-.025em;margin:0;color:var(--p-ink)}.p-dest p{margin:0;font-size:14px;line-height:1.5;color:var(--p-muted)}.p-dest-go{margin-top:auto;padding-top:14px;display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:620;color:var(--p-accent)}.p-dest-quota{margin-left:auto;font-size:12px;font-weight:600;color:var(--p-muted);letter-spacing:0}.p-dest-quota.is-out{color:var(--p-bad)}a.p-dest:hover .p-dest-go .p-arrow{transform:translateX(4px)}.p-dest-go .p-arrow{transition:transform var(--p-t) var(--p-ease)}.p-dest.is-locked{opacity:1}.p-dest.is-locked .p-dest-stage{filter:saturate(.25);opacity:.5}.p-dest-locked,.p-dest.is-locked .p-dest-label{color:var(--p-muted)}.p-dest-locked{margin-top:auto;padding-top:14px;display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.45}.p-lock-chip{flex:none;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:3px 7px;border-radius:4px;background:color-mix(in srgb,var(--p-ink) 8%,transparent);color:var(--p-muted)}.p-prev{position:absolute;inset:0;padding:20px 22px}.p-prev-line{height:7px;border-radius:3px;background:color-mix(in srgb,var(--p-ink) 13%,transparent);margin-bottom:9px}.p-prev-line.hi{background:color-mix(in srgb,var(--p-skill) 55%,transparent)}.p-prev-chip{display:inline-block;height:22px;border-radius:5px;background:color-mix(in srgb,var(--p-ink) 9%,transparent);border:1px solid var(--p-line);margin:0 6px 6px 0}.p-prev-chip.on{background:var(--p-accent-wash);border-color:color-mix(in srgb,var(--p-accent) 45%,transparent)}.p-wave{display:flex;align-items:center;gap:3px;height:56px}.p-wave i{display:block;flex:1;border-radius:2px;background:color-mix(in srgb,var(--p-skill) 48%,transparent);height:var(--h)}.p-wave i.past{background:var(--p-skill)}.p-transport{display:flex;align-items:center;gap:12px;margin-top:14px}.p-play{width:30px;height:30px;border-radius:50%;background:var(--p-ink);display:grid;place-items:center;flex:none}.p-play:before{content:"";border-left:8px solid var(--p-bg);border-top:5px solid transparent;border-bottom:5px solid transparent;margin-left:2px}.p-track{flex:1;height:3px;border-radius:2px;background:color-mix(in srgb,var(--p-ink) 14%,transparent);overflow:hidden}.p-track i{display:block;height:100%;width:38%;background:var(--p-skill)}.p-clock{font-size:11px;font-variant-numeric:tabular-nums;color:var(--p-muted);flex:none}.p-rec{display:grid;place-items:center;height:100%;gap:12px}.p-rec-ring{width:62px;height:62px;border-radius:50%;border:2px solid color-mix(in srgb,var(--p-skill) 45%,transparent);display:grid;place-items:center;position:relative}.p-rec-ring:after{content:"";position:absolute;inset:-9px;border-radius:50%;border:1px solid color-mix(in srgb,var(--p-skill) 22%,transparent)}.p-rec-dot{width:22px;height:22px;border-radius:50%;background:var(--p-bad)}.p-levels{display:flex;align-items:flex-end;gap:3px;height:22px}.p-levels i{width:3px;border-radius:2px;background:color-mix(in srgb,var(--p-skill) 60%,transparent);height:var(--h)}.p-caret{display:inline-block;width:2px;height:13px;background:var(--p-accent);vertical-align:-2px;margin-left:2px}.p-meter{margin-top:12px;height:4px;border-radius:2px;background:color-mix(in srgb,var(--p-ink) 12%,transparent);overflow:hidden}.p-meter i{display:block;height:100%;width:62%;background:var(--p-skill)}.p-meta{display:flex;justify-content:space-between;margin-top:7px;font-size:10.5px;color:var(--p-muted);font-variant-numeric:tabular-nums}.p-path{display:flex;flex-direction:column;gap:13px;padding-top:6px}.p-path-row{display:flex;align-items:center;gap:11px}.p-node{width:11px;height:11px;border-radius:50%;border:2px solid var(--p-line-strong);background:var(--p-elevated);flex:none}.p-node.done{background:var(--p-ok);border-color:var(--p-ok)}.p-node.now{background:var(--p-skill);border-color:var(--p-skill);box-shadow:0 0 0 4px var(--p-skill-glow)}.p-path-row .p-prev-line{flex:1;margin:0}.p-bars{display:flex;align-items:flex-end;gap:8px;height:62px}.p-bars i{flex:1;border-radius:3px 3px 0 0;background:color-mix(in srgb,var(--p-skill) 40%,transparent);height:var(--h)}.p-bars i.peak{background:var(--p-skill)}.p-timer{position:absolute;top:14px;right:16px;font-size:11px;font-weight:650;font-variant-numeric:tabular-nums;padding:4px 9px;border-radius:5px;background:var(--p-raised);border:1px solid var(--p-line-strong);color:var(--p-ink2)}.p-mission-blocks{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px}.p-block{display:flex;align-items:center;gap:9px;padding:8px 13px;border-radius:999px;border:1px solid var(--p-line);background:var(--p-surface);font-size:13px;color:var(--p-ink2)}.p-block b{font-weight:620;text-transform:capitalize;color:var(--p-ink)}.p-block span{color:var(--p-muted);font-variant-numeric:tabular-nums;font-size:12px}.p-block-dot{width:7px;height:7px;border-radius:50%;flex:none}.p-block[data-skill=reading] .p-block-dot{background:#c08a4a}.p-block[data-skill=listening] .p-block-dot{background:#4a9ec0}.p-block[data-skill=writing] .p-block-dot{background:#6aa87e}.p-block[data-skill=speaking] .p-block-dot{background:#9b8ad4}.p-instruments{display:flex;flex-direction:column;gap:0}.p-instrument{padding:18px 0;border-top:1px solid var(--p-line)}.p-instrument:first-child{border-top:0;padding-top:0}.p-instrument .p-eyebrow{margin-bottom:10px}.p-figure{font-size:34px;font-weight:650;letter-spacing:-.04em;font-variant-numeric:tabular-nums;line-height:1;margin:0;color:var(--p-ink)}.p-figure-sub{margin:6px 0 0;font-size:13px;color:var(--p-muted)}.p-ladder{display:flex;flex-direction:column;gap:11px}.p-rung{display:grid;grid-template-columns:74px 1fr auto;align-items:center;gap:12px}.p-rung-name{font-size:12px;text-transform:capitalize;color:var(--p-ink2)}.p-rung-bar{width:100%;height:5px;background:color-mix(in srgb,var(--p-ink) 10%,transparent);overflow:hidden}.p-rung-bar,.p-rung-bar i{display:block;border-radius:3px}.p-rung-bar i{height:100%;background:var(--p-fill,var(--p-accent));transform-origin:left;animation:p-sweep var(--p-t-slow) var(--p-ease) both}.p-rung[data-skill=reading]{--p-fill:#c08a4a}.p-rung[data-skill=listening]{--p-fill:#4a9ec0}.p-rung[data-skill=writing]{--p-fill:#6aa87e}.p-rung[data-skill=speaking]{--p-fill:#9b8ad4}.p-rung-val{font-size:12.5px;font-variant-numeric:tabular-nums;color:var(--p-ink);font-weight:600;min-width:52px;text-align:right}.p-rung-val.none{color:var(--p-muted);font-weight:500}a.p-rung-val.none{color:var(--p-accent);text-decoration:none;font-weight:600}a.p-rung-val.none:hover{text-decoration:underline}.p-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.p-rail .p-dest-stage{height:118px}.p-rail .p-dest-body{padding:16px 18px 18px;gap:4px}.p-rail .p-dest h3{font-size:17px}.p-rail .p-dest-go{padding-top:10px;font-size:13.5px}@media (max-width:1080px){.p-rail{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.p-rail{grid-template-columns:1fr}}.p-outcomes{display:flex;flex-direction:column;gap:0;max-width:68ch}.p-outcome-lead{font-size:17px;line-height:1.55;color:var(--p-ink);margin:0 0 18px}.p-outcome-focus{display:block;margin-top:8px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:650;color:var(--p-skill,var(--p-accent))}.p-outcome{display:flex;gap:12px;align-items:baseline;margin:0;padding:13px 0;border-top:1px solid var(--p-line);font-size:15px;line-height:1.5;color:var(--p-ink2)}.p-outcome.is-soft{color:var(--p-muted)}.p-outcome-mark{flex:none;width:6px;height:6px;border-radius:50%;border:1.5px solid var(--p-line-strong);transform:translateY(-2px)}.p-outcome-mark.is-certain{background:var(--p-accent);border-color:var(--p-accent)}.p-progress-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:48px 64px;align-items:center}.p-skill-table{display:flex;flex-direction:column}.p-skill-row{display:grid;grid-template-columns:150px minmax(90px,1fr) minmax(0,1.1fr) 130px;align-items:center;gap:20px;padding:18px 0;border-top:1px solid var(--p-line)}.p-skill-row:last-child{border-bottom:1px solid var(--p-line)}.p-skill-row-id{display:flex;align-items:center;gap:11px}.p-skill-row-id strong{font-size:16px;font-weight:620;text-transform:capitalize;letter-spacing:-.02em}.p-skill-row-bar .p-rung-bar{height:6px}.p-skill-row-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--p-muted)}.p-skill-row-val{text-align:right}.p-skill-row-val strong{font-size:18px;font-weight:640;letter-spacing:-.03em}.p-skill-row-val .p-status-link{margin-top:0;font-size:13.5px}@media (max-width:860px){.p-skill-row{grid-template-columns:1fr auto;gap:10px 16px}.p-skill-row-bar{grid-column:1/-1;order:3}.p-skill-row-meta{grid-column:1/-1;order:4}.p-skill-row-val{order:2}}.p-evidence{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--p-line);border:1px solid var(--p-line);border-radius:var(--p-r);overflow:hidden}.p-evidence>div{background:var(--p-elevated);padding:16px 18px}.p-evidence dt{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--p-muted);margin-bottom:7px}.p-evidence dd{margin:0;font-size:17px;font-weight:620;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.app-shell .btn{transition:background var(--p-t-fast) var(--p-ease),border-color var(--p-t-fast) var(--p-ease),color var(--p-t-fast) var(--p-ease),transform var(--p-t-fast) var(--p-ease)}.app-shell .btn-primary{background:var(--p-accent);border-color:var(--p-accent);color:var(--p-accent-ink);box-shadow:0 1px 2px rgba(0,0,0,.14)}.app-shell .btn-primary:hover{background:var(--p-accent-hi);border-color:var(--p-accent-hi);transform:translateY(-1px)}.app-shell .btn-primary:disabled,.app-shell .btn:disabled{box-shadow:none;cursor:default}.app-shell .btn-primary:disabled,.app-shell .btn-primary:disabled:hover,.app-shell .btn:disabled,.app-shell .btn:disabled:hover{background:var(--p-surface);border-color:var(--p-line);color:var(--p-muted);transform:none}.app-shell .btn-outline{border-color:var(--p-line-strong);color:var(--p-ink2)}.app-shell .btn-outline:hover{border-color:var(--p-ink2);color:var(--p-ink);background:color-mix(in srgb,var(--p-ink) 5%,transparent)}.app-shell a:focus-visible,.app-shell button:focus-visible{outline:2px solid var(--p-accent);outline-offset:2px;border-radius:4px}.p-arrow{display:inline-block}@media (max-width:1080px){.p-hero{gap:34px}.p-hero,.p-progress-hero{grid-template-columns:1fr}.p-progress-hero{gap:32px}.p-dial svg{max-width:210px}}@media (max-width:960px){.app-shell .app-main{padding:26px 20px 88px}}@media (max-width:700px){.p-destinations{grid-template-columns:1fr;gap:14px}.p-dest-stage{height:128px}.p-hero{padding:12px 0 30px}.p-hero:before{left:-30%;width:130%}.p-section{margin-top:40px}.p-hero-stat{padding-left:0;border-left:0;border-top:1px solid var(--p-line-strong);padding-top:12px;width:100%}.p-hero-actions{gap:14px}.app-shell .btn-hero{width:100%}.p-rung{grid-template-columns:68px 1fr auto}.p-evidence{grid-template-columns:1fr 1fr}}.p-profile-hero{grid-template-columns:1fr;padding-bottom:30px}.p-profile-hero .p-lead{margin-bottom:0}.app-shell .profile-grid{gap:0 56px}.app-shell .profile-grid .home-card{border-top-color:var(--p-line);padding:24px 0}.app-shell .profile-danger{border-top-color:color-mix(in srgb,var(--p-bad) 55%,transparent)}.app-shell .profile-danger .home-kicker{color:var(--p-bad)}.app-shell .seg{border-color:var(--p-line-strong);border-radius:var(--p-r-sm);overflow:hidden}.app-shell .seg .btn+.btn{border-left-color:var(--p-line-strong)}.app-shell .page-head{margin-bottom:28px;max-width:none}.app-shell .exercise>h1,.app-shell .page-head h1{font-size:var(--p-fs-display);line-height:1.02;letter-spacing:-.04em;font-weight:660;margin:0 0 14px;text-wrap:balance;color:var(--p-ink)}.app-shell .page-head>.muted,.app-shell .page-head>p:not(.section-eyebrow){font-size:17px;line-height:1.5;color:var(--p-ink2);max-width:60ch}.app-shell .home-kicker,.app-shell .section-eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--p-muted);margin:0 0 12px}.app-shell .page-head>.section-eyebrow:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--p-line-strong),transparent)}.app-shell .academy-now,.app-shell .auth-card,.app-shell .home-mission,.app-shell .home-slp,.app-shell .intel-hero,.app-shell .recorder,.app-shell .skill-primary,.app-shell .writing-editor{background:var(--p-elevated);border:1px solid var(--p-line);border-radius:var(--p-r);box-shadow:var(--p-edge),var(--p-shadow-1);overflow:hidden;min-width:0}.app-shell .home-card{border-top-color:var(--p-line)}.app-shell .home-banner,.app-shell .transition-banner{background:var(--p-surface);border:1px solid var(--p-line);border-left:3px solid var(--p-accent);border-radius:var(--p-r-sm);padding:16px 18px}.app-shell .feedback-banner{border-radius:var(--p-r-sm)}.app-shell .doc-rail,.app-shell .exam-toolbar{border-color:var(--p-line)}.app-shell .home-ring,.app-shell .intel-ring{color:var(--p-ink)}.app-shell .confidence-rungs span{background:color-mix(in srgb,var(--p-ink) 12%,transparent)}.app-shell .confidence-rungs span.is-reached{background:var(--p-accent)}.app-shell .option-list button,.app-shell .option-row{border-radius:var(--p-r-sm);transition:border-color var(--p-t-fast) var(--p-ease),background var(--p-t-fast) var(--p-ease),transform var(--p-t-fast) var(--p-ease)}.app-shell .option-list button:hover{border-color:var(--p-line-strong);transform:translateX(2px)}.p-block-posture{text-transform:uppercase;font-size:10px;letter-spacing:.1em;font-weight:700;color:var(--p-muted)}.p-status-sub{display:block;font-size:11.5px;font-weight:500;color:var(--p-muted);margin-top:2px}.app-shell .academy-now,.app-shell .home-mission,.app-shell .intel-hero,.app-shell .p-dest,.app-shell .p-panel,.app-shell .recorder,.app-shell .skill-primary,.app-shell .writing-editor{background-image:linear-gradient(180deg,color-mix(in srgb,var(--p-ink) 3%,transparent),transparent 42%)}@media (prefers-color-scheme:dark){.app-shell .academy-now,.app-shell .home-mission,.app-shell .intel-hero,.app-shell .p-dest,.app-shell .p-panel,.app-shell .recorder,.app-shell .skill-primary,.app-shell .writing-editor{background-image:linear-gradient(180deg,rgba(255,255,255,.045),transparent 46%)}}.p-destinations,.p-rail{perspective:1400px}a.p-dest{transform-style:preserve-3d;will-change:transform}a.p-dest:hover{transform:translateY(-4px) rotateX(1.6deg) scale(1.006)}a.p-dest.is-live-tilt{--tx:0;--ty:0;transform:translateY(calc(var(--hover, 0) * -4px)) rotateX(calc(var(--ty) * -7deg)) rotateY(calc(var(--tx) * 9deg)) scale(calc(1 + var(--hover, 0) * .008));transition:transform .32s var(--p-ease),box-shadow var(--p-t) var(--p-ease)}a.p-dest.is-live-tilt.is-tracking{transition:transform 60ms linear}a.p-dest.is-live-tilt:hover{box-shadow:var(--p-edge),var(--p-shadow-2)}a.p-dest.is-live-tilt .p-dest-stage{position:relative}a.p-dest.is-live-tilt .p-dest-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(calc(115deg + var(--tx, 0) * 26deg),transparent 32%,color-mix(in srgb,#fff 65%,var(--p-skill,var(--p-accent))) 50%,transparent 66%);opacity:calc(var(--hover, 0) * .16);transition:opacity .22s var(--p-ease);pointer-events:none;mix-blend-mode:overlay}@media (prefers-color-scheme:dark){a.p-dest.is-live-tilt .p-dest-stage:after{mix-blend-mode:screen;opacity:calc(var(--hover, 0) * .1)}}@media (hover:none),(prefers-reduced-motion:reduce){a.p-dest.is-live-tilt{transform:none!important;transition:none!important}a.p-dest.is-live-tilt .p-dest-stage:after{display:none}}.inst{--inst-track-rgb:20,22,26;--inst-track-a:0.13;--inst-tick-rgb:20,22,26;--inst-target:#c8942a;position:relative;display:grid;place-items:center;margin:0 auto;max-width:100%;touch-action:pan-y}@media (prefers-color-scheme:dark){.inst{--inst-track-rgb:255,255,255;--inst-track-a:0.07;--inst-tick-rgb:255,255,255;--inst-target:#d9a53f}}.inst{width:100%;aspect-ratio:1}.inst canvas{position:absolute;inset:0;width:100%;height:100%}.inst-core{position:relative;display:grid;place-items:center;text-align:center;gap:3px;pointer-events:none}.inst-core-label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--p-muted)}.inst-core-label,.inst-core-value{font-family:var(--p-mono);font-weight:600}.inst-core-value{font-size:58px;letter-spacing:-.045em;line-height:1;color:var(--p-ink);font-variant-numeric:tabular-nums}.inst-core-empty{font-size:21px;font-weight:600;letter-spacing:-.02em;color:var(--p-ink)}.inst-core-scale{font-family:var(--p-mono);font-size:11px;letter-spacing:.08em;color:var(--p-muted)}.inst-legend{position:absolute;left:50%;bottom:4px;transform:translateX(-50%);display:flex;gap:16px;list-style:none;margin:0;padding:0}.inst-legend li{display:flex;align-items:center;gap:6px;padding:3px 7px;margin:-3px -7px;border-radius:var(--p-r-sm);cursor:default;transition:background var(--p-t-fast) var(--p-ease)}.inst-legend li:focus-visible,.inst-legend li:hover{background:color-mix(in srgb,var(--p-ink) 6%,transparent);outline:none}.inst-legend li.is-hover b,.inst-legend li.is-hover span{color:var(--p-ink)}.inst-legend i{width:7px;height:7px;border-radius:50%;display:block;transition:transform var(--p-t) var(--p-ease)}.inst-legend li.is-hover i{transform:scale(1.35)}.inst-legend span{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--p-muted);font-weight:600;transition:color var(--p-t-fast) var(--p-ease)}.inst-legend b{font-size:11.5px;color:var(--p-ink);font-weight:600;white-space:nowrap}.inst-legend b em{font-family:var(--p-sans);font-style:normal;font-weight:500;font-variant-numeric:normal;color:var(--p-muted)}.inst-legend b em.is-met{color:var(--p-ok)}@media (max-width:640px){.inst-legend{gap:10px;flex-wrap:wrap;justify-content:center}.inst-legend b em,.inst-legend span{display:none}.inst-core-value{font-size:46px}}.p-instrument-bay{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding:36px 28px 28px;border-radius:var(--p-r-lg);background:var(--p-elevated);border:1px solid var(--p-line);box-shadow:var(--p-edge),var(--p-shadow-2);isolation:isolate}.p-instrument-bay:before{content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;background:radial-gradient(120% 90% at 50% 8%,var(--p-glow),transparent 68%);opacity:.9;pointer-events:none}.p-instrument-rows{width:100%;max-width:380px;margin-top:4px}@media (max-width:1080px){.p-instrument-bay{margin-top:8px;padding:30px 24px 24px}}@media (max-width:640px){.p-instrument-bay{padding:26px 18px 20px}}.home .p-hero{padding-bottom:8px;align-items:center}.home .p-hero>div:first-child{padding:8px 0}.home .p-section:first-of-type{margin-top:36px}.app-shell [data-enter]>*>.p-eyebrow,.app-shell [data-enter]>.p-eyebrow{animation:p-rise .42s var(--p-ease) both}.app-shell [data-enter]>*>.p-hero-title,.app-shell [data-enter]>.p-hero-title{animation:p-rise .52s var(--p-ease) 60ms both}.app-shell [data-enter]>*>.p-lead,.app-shell [data-enter]>.p-lead{animation:p-rise .52s var(--p-ease) .11s both}.app-shell [data-enter]>*>.p-mission-blocks{animation:p-rise .52s var(--p-ease) 155ms both}.app-shell [data-enter]>*>.p-hero-actions{animation:p-rise .56s var(--p-ease) .2s both}.app-shell [data-enter]>.p-dial,.app-shell [data-enter]>.p-instrument-bay,.app-shell [data-enter]>.p-status{animation:p-rise .62s var(--p-ease) .18s both}.task-stage{animation:task-enter .46s var(--p-ease) both}@keyframes task-enter{0%{opacity:0;transform:translate3d(0,10px,0) scale(.994)}to{opacity:1;transform:none}}.p-dest.mode-assess{--p-skill:#c2710c;--p-skill-glow:rgba(194,113,12,0.15);border-color:color-mix(in srgb,#c2710c 26%,var(--p-line))}@media (prefers-color-scheme:dark){.p-dest.mode-assess{--p-skill:#e0932f;--p-skill-glow:rgba(224,147,47,0.16)}}a.p-dest.mode-assess:hover{border-color:color-mix(in srgb,var(--p-skill) 62%,transparent)}.p-dest.mode-assess .p-dest-stage{background-image:linear-gradient(160deg,var(--p-skill-glow),transparent 62%)}.p-dest.mode-assess .p-dest-go{color:var(--p-skill)}.p-dest.mode-train{border-color:color-mix(in srgb,var(--p-accent) 22%,var(--p-line))}.p-dest.mode-train .p-dest-stage{background-image:linear-gradient(160deg,var(--p-skill-glow),transparent 62%)}.is-leaving .app-main{transition:opacity .15s cubic-bezier(.4,0,1,1),transform .15s cubic-bezier(.4,0,1,1),filter .15s linear;opacity:0}.is-leaving.is-deeper .app-main{transform:translate3d(0,-8px,0) scale(.992);filter:blur(1px)}.is-leaving.is-shallower .app-main{transform:translate3d(0,8px,0) scale(1.006);filter:blur(1px)}.is-leaving .app-sidebar,.is-leaving .app-topbar{opacity:1}@media (prefers-reduced-motion:reduce){.is-leaving .app-main{transition:none;opacity:1;transform:none;filter:none}}.p-turns{display:flex;flex-direction:column;gap:9px;margin-bottom:18px}.p-turn{display:block;height:14px;width:58%;border-radius:7px;background:color-mix(in srgb,var(--p-ink) 11%,transparent);align-self:flex-end}.p-turn.is-agent{align-self:flex-start;width:74%;background:color-mix(in srgb,var(--p-skill) 42%,transparent)}.p-arc{display:flex;align-items:center;gap:6px}.p-arc i{display:block;flex:1;height:4px;border-radius:2px;background:color-mix(in srgb,var(--p-ink) 13%,transparent)}.p-arc i.on{background:var(--p-skill)}.app-shell .app-plan{display:block;text-decoration:none;color:var(--p-muted);border-top:1px solid var(--p-line);transition:color var(--p-t-fast) var(--p-ease)}.app-shell .app-plan:hover{color:var(--p-ink)}.app-shell .app-plan.is-unknown{font-style:italic}.p-coachline{margin:20px 0 4px;padding-left:14px;border-left:2px solid var(--p-accent)}.p-coachline-lead{margin:0;font-size:16px;line-height:1.5;color:var(--p-ink);font-weight:600}.p-coachline-why{margin:4px 0 0;font-size:14.5px;line-height:1.55;color:var(--p-muted)}.p-coachline-focus{margin:8px 0 0;font-size:13px;color:var(--p-muted);display:flex;gap:8px;align-items:baseline}.p-coachline-tag{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--p-accent-ink);font-weight:700}.p-prescription{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:22px;margin-top:26px;padding-top:22px;border-top:1px solid var(--p-line)}.p-prescription-label{margin:0 0 6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--p-muted);font-weight:700}.p-prescription-skill{margin:0 0 8px;font-size:19px;font-weight:650;color:var(--p-ink);text-transform:capitalize}.p-prescription-why{margin:0;padding-left:18px;font-size:14.5px;line-height:1.55;color:var(--p-muted)}.p-prescription-why li{margin-bottom:5px}.p-prescription-why li:last-child{margin-bottom:0}.p-prescription-skip .p-prescription-why b{color:var(--p-ink);text-transform:capitalize}.p-coachsummary{margin-top:24px;padding-top:20px;border-top:1px solid var(--p-line)}.p-coachsummary-head{margin:0 0 5px;font-size:15px;font-weight:650;color:var(--p-ink)}.p-coachsummary-body{margin:0;font-size:14.5px;line-height:1.6;color:var(--p-muted)}.app-shell:has(.task-env) .app-sidebar{display:none}.app-shell:has(.task-env) .app-main{padding:0;max-width:none}@media (max-width:960px){.app-shell:has(.task-env) .app-topbar{display:none}}.task-env{--task-accent:var(--p-skill,var(--p-accent));display:flex;flex-direction:column;min-height:100vh;background:var(--p-bg)}.task-env.is-exam{--task-accent:#c2710c}@media (prefers-color-scheme:dark){.task-env.is-exam{--task-accent:#e0932f}}.task-bar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 28px;height:60px;background:color-mix(in srgb,var(--p-bg) 86%,transparent);backdrop-filter:saturate(1.7) blur(16px);-webkit-backdrop-filter:saturate(1.7) blur(16px);border-bottom:1px solid var(--p-line)}.task-bar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--task-accent),transparent 60%);opacity:.85}.task-bar-lead,.task-bar-trail{display:flex;align-items:center;gap:18px;min-width:0}.task-exit{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:560;color:var(--p-muted);text-decoration:none;padding:7px 11px 7px 8px;margin-left:-8px;border-radius:var(--p-r-sm);transition:color var(--p-t-fast) var(--p-ease),background var(--p-t-fast) var(--p-ease);white-space:nowrap}.task-exit:hover{color:var(--p-ink);background:color-mix(in srgb,var(--p-ink) 6%,transparent);text-decoration:none}.task-exit-glyph{transition:transform var(--p-t) var(--p-ease)}.task-exit:hover .task-exit-glyph{transform:translateX(-3px)}.task-mode{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:750;letter-spacing:.15em;text-transform:uppercase;color:var(--task-accent);padding-left:18px;border-left:1px solid var(--p-line);white-space:nowrap}.task-mode-dot{width:7px;height:7px;border-radius:50%;background:var(--task-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--task-accent) 22%,transparent)}.task-env.is-exam .task-mode-dot{animation:task-pulse 2.4s var(--p-ease-io) infinite}@keyframes task-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--task-accent) 22%,transparent)}50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--task-accent) 6%,transparent)}}.task-skill{font-size:13.5px;font-weight:560;color:var(--p-ink2);text-transform:capitalize;white-space:nowrap}.task-progress{display:flex;align-items:center;gap:11px}.task-progress-text{font-size:13px;font-weight:620;color:var(--p-ink);white-space:nowrap}.task-progress-text i{font-style:normal;color:var(--p-muted);font-weight:400;margin:0 1px}.task-progress-track{display:block;width:88px;height:4px;border-radius:2px;background:color-mix(in srgb,var(--p-ink) 12%,transparent);overflow:hidden}.task-progress-track i{display:block;height:100%;background:var(--task-accent);border-radius:2px;transition:width var(--p-t-slow) var(--p-ease)}.task-env .exam-toolbar{border:0;margin:0;padding:0;max-width:none;background:transparent}.task-env .exam-timer{font-size:15px;font-weight:660;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--p-ink);padding:6px 12px;border-radius:var(--p-r-sm);background:color-mix(in srgb,var(--task-accent) 13%,transparent);border:1px solid color-mix(in srgb,var(--task-accent) 34%,transparent);animation:p-ignite-ring .9s var(--p-ease-io) both}.task-env .exam-live{animation:p-ignite .56s var(--p-ease) both}@media (prefers-reduced-motion:reduce){.task-env .exam-live,.task-env .exam-timer{animation:none}}.task-stage{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:40px 28px 96px;animation:p-rise var(--p-t-slow) var(--p-ease) both}.task-stage.is-bleed:has(.doc-stage){max-width:none;padding:0}.task-title{font-size:clamp(24px,2.6vw,32px);line-height:1.08;letter-spacing:-.035em;font-weight:650;margin:0 0 22px;color:var(--p-ink);text-wrap:balance}.task-stage.is-bleed:has(.doc-stage) .task-title{padding:32px 28px 0;max-width:1180px;margin:0 auto 4px}.app-shell .doc-paper,.task-env .doc-paper{--paper-bg:#f7f3ea;--paper-ink:#1a1712;--paper-ink2:#4a4238;--paper-line:#ddd4c2;background:var(--paper-bg);color:var(--paper-ink)}@media (prefers-color-scheme:dark){.app-shell .doc-paper,.task-env .doc-paper{--paper-bg:#16181c;--paper-ink:#eceef2;--paper-ink2:#aeb5c0;--paper-line:#2b3038}}.app-shell .doc-paper .doc-title,.app-shell .doc-paper .passage-body,.app-shell .doc-paper h1,.app-shell .doc-paper h2,.app-shell .doc-paper strong{color:var(--paper-ink)}.app-shell .doc-paper .home-kicker,.app-shell .doc-paper .muted,.app-shell .doc-paper .section-eyebrow{color:var(--paper-ink2)}.app-shell .doc-paper .doc-chip,.app-shell .doc-paper .home-chip{border-color:var(--paper-line);color:var(--paper-ink2)}.app-shell .doc-stage{grid-template-columns:minmax(0,1fr) 380px;min-height:calc(100vh - 60px);margin:0}.app-shell .doc-paper{padding:56px 64px 96px;display:flex;flex-direction:column}.app-shell .doc-paper .passage-body{font-size:19.5px;line-height:1.8;max-width:64ch}.app-shell .doc-rail{border-left:1px solid var(--p-line);background:var(--p-bg);padding:40px 32px 56px;min-height:calc(100vh - 60px)}.app-shell .option-list{display:flex;flex-direction:column;gap:10px;margin:18px 0 0;padding:0;list-style:none}.app-shell .option-list button,.app-shell .option-row{position:relative;width:100%;display:flex;align-items:center;gap:14px;text-align:left;padding:15px 17px;min-height:56px;border:1px solid var(--p-line);border-radius:var(--p-r);background:var(--p-elevated);color:var(--p-ink);font-size:15.5px;font-weight:500;line-height:1.4;cursor:pointer;box-shadow:var(--p-edge);transition:border-color var(--p-t-fast) var(--p-ease),background var(--p-t-fast) var(--p-ease),transform var(--p-t-fast) var(--p-ease),box-shadow var(--p-t-fast) var(--p-ease)}.app-shell .option-list button:hover:not(:disabled){border-color:var(--task-accent,var(--p-accent));transform:translateY(-1px);box-shadow:var(--p-edge),var(--p-shadow-1)}.app-shell .option-list button:focus-visible{outline:2px solid var(--p-accent);outline-offset:2px}.app-shell .option-list button.is-selected,.app-shell .option-list button[aria-pressed=true]{border-color:var(--task-accent,var(--p-accent));background:color-mix(in srgb,var(--task-accent,var(--p-accent)) 12%,var(--p-elevated))}.app-shell .option-list button .opt-key,.app-shell .option-list button>span:first-child:not(.opt-text){flex:none;width:26px;height:26px;display:grid;place-items:center;border-radius:6px;background:color-mix(in srgb,var(--p-ink) 8%,transparent);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--p-ink2);transition:background var(--p-t-fast) var(--p-ease),color var(--p-t-fast) var(--p-ease)}.app-shell .option-list button[aria-pressed=true]>span:first-child{background:var(--task-accent,var(--p-accent));color:#fff}.app-shell .option-list button:disabled{cursor:default;opacity:.75}.task-env .btn-primary{min-height:50px;padding:13px 26px;font-size:15.5px;border-radius:10px;box-shadow:0 1px 2px rgba(0,0,0,.18),0 6px 22px var(--p-glow)}.task-env .doc-rail .btn-primary,.task-env .listen-question .btn-primary{width:100%}.task-env .listen-stage{padding:48px 0 16px}.app-shell .listen-play{width:108px;height:108px;background:var(--p-ink);color:var(--p-bg);box-shadow:0 8px 34px rgba(0,0,0,.28);transition:transform var(--p-t) var(--p-ease),box-shadow var(--p-t) var(--p-ease)}.app-shell .listen-play:hover{transform:scale(1.04)}.app-shell .listen-play:active{transform:scale(.98)}.app-shell .listen-play[aria-pressed=true]{background:var(--task-accent,var(--p-accent));color:#fff}.app-shell .listen-clock{font-size:34px;font-weight:650;letter-spacing:-.04em;color:var(--p-ink)}.app-shell .listen-track{width:min(460px,82vw);height:4px;border-radius:2px;background:color-mix(in srgb,var(--p-ink) 13%,transparent);overflow:hidden}.app-shell .listen-track>span{background:var(--task-accent,var(--p-accent));border-radius:2px}.app-shell .feedback-banner{border-radius:var(--p-r);padding:16px 18px;border:1px solid var(--p-line);border-left:3px solid var(--p-line-strong);background:var(--p-surface);animation:p-rise var(--p-t) var(--p-ease) both}.app-shell .feedback-banner.ok{border-left-color:var(--p-ok);background:color-mix(in srgb,var(--p-ok) 9%,var(--p-surface))}.app-shell .feedback-banner.bad{border-left-color:var(--p-bad);background:color-mix(in srgb,var(--p-bad) 9%,var(--p-surface))}.app-shell .feedback-banner strong{display:block;margin-bottom:4px;font-size:15px}.app-shell .feedback-banner.ok strong{color:var(--p-ok)}.app-shell .feedback-banner.bad strong{color:var(--p-bad)}.task-env .writing-workspace{grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:32px 44px}.task-env .writing-task{position:sticky;top:88px;align-self:start}.task-env .writing-editor{padding:22px 24px 16px}.task-env .writing-editor textarea{min-height:44vh;font-size:17px;line-height:1.7}.task-env .speak-stage{min-height:auto;padding-top:8px;gap:22px}.app-shell .recorder-ring{box-shadow:0 0 0 8px color-mix(in srgb,var(--task-accent,var(--p-accent)) 8%,transparent)}@media (max-width:1000px){.app-shell .doc-stage{grid-template-columns:1fr}.app-shell .doc-rail{border-left:0;border-top:1px solid var(--p-line);min-height:0}.task-env .writing-workspace{grid-template-columns:1fr}.task-env .writing-task{position:static}}@media (max-width:700px){.task-bar{padding:0 16px;height:56px;gap:10px}.task-exit span:not(.task-exit-glyph),.task-skill{display:none}.task-exit{padding:8px;margin-left:-4px}.task-mode{padding-left:12px}.task-progress-track{width:54px}.task-stage{padding:26px 16px 88px}.task-stage.is-bleed:has(.doc-stage) .task-title{padding:24px 16px 0}.app-shell .doc-paper{padding:30px 20px 48px}.app-shell .doc-paper .passage-body{font-size:18px}.app-shell .doc-rail{padding:26px 16px 48px}.app-shell .listen-play{width:92px;height:92px}}.app-shell .doc-rail .btn,.app-shell .listen-question .btn,.app-shell .option-list+.btn{margin-top:20px}@media (prefers-color-scheme:dark){.app-shell .doc-paper{--paper-bg:#191b20}}.app-shell input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-height:0;height:22px;padding:0;border:0;background:transparent;cursor:pointer}.app-shell input[type=range]:focus{box-shadow:none;outline:none}.app-shell input[type=range]:focus-visible{outline:2px solid var(--p-accent);outline-offset:4px;border-radius:4px}.app-shell input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:color-mix(in srgb,var(--p-ink) 15%,transparent)}.app-shell input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:color-mix(in srgb,var(--p-ink) 15%,transparent)}.app-shell input[type=range]::-moz-range-progress{height:4px;border-radius:2px;background:var(--task-accent,var(--p-accent))}.app-shell input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;background:var(--p-ink);border:0;box-shadow:0 1px 4px rgba(0,0,0,.4);-webkit-transition:transform var(--p-t-fast) var(--p-ease);transition:transform var(--p-t-fast) var(--p-ease)}.app-shell input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--p-ink);border:0;box-shadow:0 1px 4px rgba(0,0,0,.4)}.app-shell input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.18)}.app-shell input[type=range]:active::-webkit-slider-thumb{transform:scale(1.05)}.app-shell .audio-player{gap:14px}.task-env .exam-live .exam-count{margin:0 0 16px;font-variant-numeric:tabular-nums}.task-env .skill-primary{max-width:560px;margin:clamp(24px,9vh,88px) auto 0;padding:36px 38px 32px;text-align:left;border-radius:var(--p-r-lg);box-shadow:var(--p-edge),var(--p-shadow-2)}.task-env .skill-primary .home-kicker{color:var(--task-accent);margin-bottom:14px}.task-env .skill-primary h2{font-size:clamp(24px,2.8vw,32px);letter-spacing:-.035em;font-weight:650;margin-bottom:12px}.task-env .skill-primary>p{font-size:16px;line-height:1.55}.task-env .skill-primary .cta-row{margin-top:24px;gap:12px}.task-env .skill-primary .cta-row .btn-primary{flex:1 1 auto}.task-env .exam-gate{max-width:560px;margin:clamp(24px,9vh,88px) auto 0;padding:40px 38px 34px;text-align:left;border-radius:var(--p-r-lg);background:var(--p-elevated);border:1px solid color-mix(in srgb,var(--task-accent) 30%,var(--p-line));box-shadow:var(--p-edge),var(--p-shadow-2)}.exam-gate-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1.5px solid color-mix(in srgb,var(--task-accent) 55%,var(--p-line-strong));margin-bottom:18px}.exam-gate-mark span{width:8px;height:8px;border-radius:50%;background:var(--task-accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--task-accent) 22%,transparent)}.exam-gate-kicker{font-size:11px;font-weight:750;letter-spacing:.15em;text-transform:uppercase;color:var(--task-accent);margin:0 0 10px}.exam-gate h2{font-size:clamp(24px,2.8vw,32px);letter-spacing:-.035em;font-weight:650;margin:0 0 12px}.exam-gate>p{font-size:16px;line-height:1.55;margin:0 0 10px}.exam-gate-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0 0;padding:18px 0 0;border-top:1px solid var(--p-line)}.exam-gate-facts dt{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--p-muted);margin:0 0 3px}.exam-gate-facts dd{margin:0;font-size:13.5px;font-weight:600;color:var(--p-ink);line-height:1.35}.exam-gate .cta-row{margin-top:26px;gap:12px}.exam-gate .cta-row .btn-primary{flex:1 1 auto}@media (max-width:560px){.exam-gate-facts{grid-template-columns:1fr 1fr}}.assessment{max-width:720px;margin:8px auto 0;animation:p-rise var(--p-t-slow) var(--p-ease) both}.assessment-head{padding-bottom:22px;border-bottom:2px solid var(--p-ink)}.assessment-kind{font-size:11px;font-weight:750;letter-spacing:.16em;text-transform:uppercase;color:var(--task-accent,var(--p-accent));margin:0 0 10px}.assessment-head h2{font-size:clamp(24px,2.6vw,31px);letter-spacing:-.035em;font-weight:650;margin:0;color:var(--p-ink)}.assessment-note{margin:12px 0 0;font-size:13.5px;color:var(--p-muted)}.assessment-label{font-size:10.5px;font-weight:750;letter-spacing:.16em;text-transform:uppercase;color:var(--p-muted);margin:0 0 10px}.assessment-verdict{padding:24px 0;border-bottom:1px solid var(--p-line)}.assessment-verdict-text{margin:0;font-size:19px;line-height:1.5;font-weight:500;color:var(--p-ink);letter-spacing:-.015em}.assessment-body{padding:26px 0;border-bottom:1px solid var(--p-line)}.assessment-body p:not(.assessment-label){margin:0 0 16px;font-size:16.5px;line-height:1.75;color:var(--p-ink2)}.assessment-body p:last-child{margin-bottom:0}.assessment-next{padding-top:24px}@media (max-width:700px){.assessment-head{padding-bottom:18px}.assessment-verdict-text{font-size:17.5px}.assessment-next .btn{width:100%}}.task-env .recorder{padding:34px 32px 28px;width:min(560px,100%);margin:0 auto;text-align:center}.task-env .recorder .home-kicker{justify-content:center}.app-shell .recorder-face{display:grid;place-items:center;gap:18px}.app-shell .recorder-ring{position:relative;width:132px;height:132px;border-radius:50%;border:2px solid var(--p-line-strong);display:grid;place-items:center;transition:border-color var(--p-t) var(--p-ease),box-shadow var(--p-t) var(--p-ease),transform var(--p-t) var(--p-ease)}.app-shell .recorder-dot{width:30px;height:30px;border-radius:50%;background:var(--p-muted);transition:background var(--p-t) var(--p-ease),width var(--p-t) var(--p-ease),height var(--p-t) var(--p-ease),border-radius var(--p-t) var(--p-ease)}.app-shell .recorder.is-idle .recorder-dot{background:var(--p-bad);opacity:.55}.app-shell .recorder.is-requesting .recorder-ring{border-color:var(--p-accent)}.app-shell .recorder.is-requesting .recorder-dot{background:var(--p-accent)}.app-shell .recorder.is-recording .recorder-ring{--task-accent:var(--p-bad);border-color:var(--p-bad)}.app-shell .recorder.is-recording .recorder-dot{background:var(--p-bad);width:26px;height:26px;border-radius:5px}.app-shell .recorder.is-stopped .recorder-ring{border-color:var(--p-ok)}.app-shell .recorder.is-stopped .recorder-dot{background:var(--p-ok);width:26px;height:26px;border-radius:6px}.app-shell .recorder.is-denied .recorder-ring{border-color:var(--p-bad)}.app-shell .recorder.is-denied .recorder-dot{background:var(--p-bad)}.app-shell .recorder-clock{font-family:var(--p-mono);font-size:14px;font-variant-numeric:tabular-nums;color:var(--p-ink2);margin:0}.app-shell .recorder.is-recording .recorder-clock{color:var(--p-ink)}.task-env .recorder .admin-row{justify-content:center;gap:12px}.task-env .recorder .btn{min-width:190px}@media (prefers-reduced-motion:reduce){.app-shell .recorder.is-recording .recorder-ring{animation:none;box-shadow:0 0 0 8px color-mix(in srgb,var(--p-bad) 22%,transparent)}}.speak-brief{width:min(680px,100%);margin:0 auto 8px;text-align:center}.speak-brief .p-eyebrow{justify-content:center}.speak-brief .p-eyebrow:after{display:none}.speak-instruction{font-size:clamp(19px,2vw,24px);line-height:1.45;letter-spacing:-.02em;color:var(--p-ink);margin:0 0 12px;text-wrap:balance}.speak-alt{margin-top:4px}.coach-brief,.coach-panel{width:min(680px,100%);margin:clamp(20px,7vh,72px) auto 0}.coach-panel+.coach-brief{margin-top:26px}.coach-panel{border:1px solid var(--p-line);background:var(--p-elevated);border-radius:10px;padding:28px}.coach-objective-title{font-size:clamp(23px,2.6vw,30px);line-height:1.25;letter-spacing:-.03em;font-weight:650;color:var(--p-ink);margin:0 0 12px;text-wrap:balance}.coach-rationale{font-size:16px;line-height:1.6;color:var(--p-ink2);margin:0}.coach-arc{margin:26px 0;padding:18px 20px;border:1px solid var(--p-line);border-radius:10px;background:var(--p-surface)}.coach-arc-line{margin:0;font-size:16px;font-weight:550;line-height:1.6;color:var(--p-ink);text-wrap:balance}.coach-minutes{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--p-line);border:1px solid var(--p-line);border-radius:10px;overflow:hidden;margin-bottom:26px}.coach-minute{background:var(--p-elevated);padding:16px 12px;text-align:center;display:grid;gap:4px}.coach-minute strong{font-size:26px;font-weight:650;color:var(--p-ink);letter-spacing:-.02em}.coach-minute span{font-size:12px;line-height:1.35}.coach-deadend{border-top:1px solid var(--p-line);padding-top:22px}.coach-deadend p{margin:0 0 6px}.coach-error{color:var(--p-bad);font-size:14px;margin:14px 0 0}.coach-consent-body{font-size:15.5px;line-height:1.7;color:var(--p-ink2);margin:0 0 18px}.coach-policy{font-size:12px;margin-top:14px}.coach-live{width:min(560px,100%);margin:clamp(20px,7vh,72px) auto 0;text-align:center;display:grid;justify-items:center}.coach-live .coach-stage{width:100%;text-align:left}.coach-objective{font-size:15px;color:var(--p-muted);margin:0 0 4px;text-wrap:balance}.coach-connecting{margin:0}.coach-phase{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--task-accent,var(--p-skill));margin:18px 0 6px}.coach-clock{font-size:clamp(44px,7vw,60px);font-weight:650;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--p-ink);margin:0}.coach-clock.is-near{color:var(--p-bad)}.coach-notes{list-style:none;padding:0;margin:0;display:grid;gap:18px}.coach-notes>li>strong{display:block;font-size:15px;color:var(--p-ink);margin-bottom:4px}.coach-notes>li>p{margin:0}.coach-evidence{margin:8px 0 0;padding-left:14px;border-left:2px solid color-mix(in srgb,var(--p-skill) 55%,transparent);color:var(--p-ink2);font-style:italic}@media (max-width:640px){.coach-minutes{grid-template-columns:1fr}.coach-panel{padding:22px 18px}.coach-brief .cta-row .btn,.coach-panel .cta-row .btn{width:100%}}.settings{max-width:1080px}.settings-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:0 56px;align-items:start;margin-top:34px}.settings-rail{position:sticky;top:24px;display:flex;flex-direction:column;gap:2px}.settings-rail a{display:block;padding:9px 12px;border-radius:var(--p-r);border-left:2px solid transparent;font-size:13.5px;font-weight:600;color:var(--p-muted);text-decoration:none;transition:color var(--p-t-fast) var(--p-ease),background var(--p-t-fast) var(--p-ease)}.settings-rail a:hover{color:var(--p-ink);background:var(--p-elevated);text-decoration:none}.settings-rail a.is-danger{color:color-mix(in srgb,var(--p-bad) 74%,var(--p-muted))}.settings-body{display:flex;flex-direction:column}.settings-group{padding:0 0 40px;scroll-margin-top:24px}.settings-group+.settings-group{padding-top:40px;border-top:1px solid var(--p-line)}.settings-group-head{margin-bottom:22px}.settings-group-head h2{margin:0 0 5px;font-size:21px;font-weight:640;letter-spacing:-.025em}.settings-group-head p{margin:0;font-size:14px;color:var(--p-muted);max-width:62ch}.settings-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px 32px;padding:18px 0;border-bottom:1px solid var(--p-line)}.settings-row:last-child{border-bottom:0}.settings-row-text strong{display:block;font-size:15px;font-weight:620;letter-spacing:-.01em;margin-bottom:3px}.settings-row-text p{margin:0;font-size:13.5px;color:var(--p-muted);max-width:58ch;line-height:1.5}.settings-row-control{display:flex;align-items:center;gap:10px;justify-self:end}.settings-row-control input[type=date],.settings-row-control input[type=number],.settings-row-control select{min-width:150px;min-height:40px;padding:8px 11px;border-radius:var(--p-r);border:1px solid var(--p-line-strong);background:var(--p-elevated);color:var(--p-ink);font:inherit;font-size:14px}.settings-row-control input:focus-visible,.settings-row-control select:focus-visible{outline:2px solid var(--p-accent);outline-offset:1px}.settings-seg{display:inline-flex;padding:3px;border-radius:calc(var(--p-r) + 3px);border:1px solid var(--p-line-strong);background:var(--p-elevated)}.settings-seg button{min-height:34px;padding:0 18px;border:0;border-radius:var(--p-r);background:transparent;color:var(--p-muted);font:inherit;font-size:13.5px;font-weight:640;cursor:pointer;transition:background var(--p-t-fast) var(--p-ease),color var(--p-t-fast) var(--p-ease)}.settings-seg button:hover{color:var(--p-ink)}.settings-seg button[aria-pressed=true]{background:var(--p-accent);color:#fff}.settings-seg button:focus-visible{outline:2px solid var(--p-accent);outline-offset:2px}.settings-plan{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;padding:20px 22px;border-radius:var(--p-r-lg);border:1px solid var(--p-line);background:var(--p-elevated);background-image:linear-gradient(135deg,var(--p-skill-glow),transparent 60%);box-shadow:var(--p-edge),var(--p-shadow-1);margin-bottom:22px}.settings-plan strong{font-size:19px;font-weight:650;letter-spacing:-.02em}.settings-plan span{font-size:13.5px;color:var(--p-muted)}.settings-quotas{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.settings-quota{display:grid;grid-template-columns:minmax(0,1fr) 132px 108px;align-items:center;gap:14px 22px;padding:15px 0;border-bottom:1px solid var(--p-line)}.settings-quota:last-child{border-bottom:0}.settings-quota-name{font-size:14.5px;font-weight:600}.settings-quota-name em{display:block;font-style:normal;font-size:12.5px;font-weight:500;color:var(--p-muted);margin-top:2px}.settings-meter{height:6px;border-radius:3px;background:color-mix(in srgb,var(--p-ink) 11%,transparent);overflow:hidden}.settings-meter i{display:block;height:100%;border-radius:3px;background:var(--p-accent);transform-origin:left;animation:p-sweep .64s var(--p-ease) both}.settings-meter.is-out i{background:var(--p-bad)}.settings-quota-val{font-size:13px;color:var(--p-muted);text-align:right}.settings-quota-val b{color:var(--p-ink);font-weight:650}.settings-off{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;border-radius:4px;background:color-mix(in srgb,var(--p-ink) 8%,transparent);color:var(--p-muted)}.settings-note{margin:6px 0 0;padding:14px 16px;border-left:2px solid var(--p-line-strong);font-size:13px;color:var(--p-muted);line-height:1.55;max-width:64ch}.settings-group.is-danger{border-top-color:color-mix(in srgb,var(--p-bad) 34%,var(--p-line))}.settings-group.is-danger .settings-group-head h2{color:var(--p-bad)}.settings-danger-confirm{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.settings-danger-confirm input{min-height:40px;width:150px;padding:8px 11px;border-radius:var(--p-r);border:1px solid color-mix(in srgb,var(--p-bad) 40%,var(--p-line-strong));background:var(--p-elevated);color:var(--p-ink);font:inherit;font-size:14px}.btn.btn-danger{border-color:color-mix(in srgb,var(--p-bad) 52%,transparent);color:var(--p-bad);background:transparent}.btn.btn-danger:hover{background:color-mix(in srgb,var(--p-bad) 12%,transparent)}.btn.btn-danger:disabled{opacity:.45;cursor:not-allowed;background:transparent}.settings-status{position:sticky;bottom:16px;align-self:flex-start;margin:8px 0 0;padding:10px 16px;border-radius:var(--p-r);border:1px solid var(--p-line-strong);background:var(--p-elevated);box-shadow:var(--p-edge),var(--p-shadow-2);font-size:13.5px;color:var(--p-ink)}@media (max-width:900px){.settings-layout{grid-template-columns:1fr;gap:0}.settings-rail{position:static;flex-direction:row;gap:6px;overflow-x:auto;padding-bottom:14px;margin-bottom:8px;border-bottom:1px solid var(--p-line);scrollbar-width:none}.settings-rail::-webkit-scrollbar{display:none}.settings-rail a{flex:none;border-left:0;padding:8px 13px;background:var(--p-elevated)}}@media (max-width:720px){.settings-row{grid-template-columns:1fr;align-items:start}.settings-row-control{justify-self:start}.settings-row-control input[type=date],.settings-row-control input[type=number],.settings-row-control select{min-width:0;width:100%}.settings-quota{grid-template-columns:minmax(0,1fr) 92px}.settings-quota .settings-meter{grid-column:1/-1;order:3}}.plan-page{max-width:760px;min-width:0}.plan-lock{overflow:hidden;min-width:0}.plan-masthead{padding-bottom:8px}.plan-allowances{list-style:none;margin:0;padding:0;border-top:1px solid var(--p-line)}.plan-allowance{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--p-line);min-width:0;overflow:hidden}.plan-allowance-name{font-size:15px;color:var(--p-ink);min-width:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.plan-allowance-val{font-size:14px;font-family:var(--p-mono);font-variant-numeric:tabular-nums;color:var(--p-ink2);text-align:right;flex:1 1 auto;min-width:0;max-width:46%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-allowance-val.is-out{color:var(--p-bad)}.plan-allowance-val.is-absent,.plan-recheck{color:var(--p-muted)}.plan-recheck{margin:12px 0 0;font-size:14px;line-height:1.55}.plan-recheck.is-ok{color:var(--p-ok)}.plan-foot{margin-top:36px;font-size:13px;color:var(--p-muted)}@media (max-width:560px){.plan-allowance{flex-direction:column;gap:2px}.plan-allowance-val{text-align:left}.plan-page .cta-row .btn{width:100%}}.plan-foot a,.settings-note a{color:var(--p-accent);text-decoration:underline;text-underline-offset:2px}.plan-foot a:hover,.settings-note a:hover{text-decoration-thickness:2px}.plan-offer{border:1px solid var(--p-line-strong);background:var(--p-elevated);border-radius:10px;padding:26px 28px}.plan-offer h2{margin:0 0 8px;font-size:21px;letter-spacing:-.02em}.plan-offer-price{margin:0 0 12px}.plan-offer-price strong{font-size:30px;font-weight:650;letter-spacing:-.03em;color:var(--p-ink)}.plan-offer-price span{color:var(--p-muted);font-size:15px}.plan-recheck.is-pending{color:var(--p-warn)}.plan-recheck.is-bad{color:var(--p-bad)}@media (max-width:560px){.plan-offer{padding:22px 18px}.plan-offer .cta-row .btn{width:100%}}.plan-banner{margin:18px 0 0;padding:12px 16px;border-left:3px solid var(--p-warn);background:color-mix(in srgb,var(--p-warn) 9%,transparent);border-radius:0 4px 4px 0;font-size:15px;line-height:1.55;color:var(--p-ink2);max-width:62ch}