:root{--ink:#0f0f12;--ink2:#3a3a42;--muted:#6b6b72;--accent:#2d5be3;--accent-dark:#1a3fa8;--accent-light:#ebeffd;--accent-glow:rgba(45,91,227,.16);--gold:#c8942a;--gold-glow:rgba(200,148,42,.18);--line:#e4e4ea;--line-strong:#d2d2dc;--bg:#ffffff;--bg2:#f5f5f9;--elevated:#ffffff;--note-bg:#fff8e6;--note-border:#e0c060;--max:780px;--hero-max:1080px;--radius:14px;--skill-reading:#8a6a3a;--skill-listening:#2a5a6e;--skill-writing:#3d6a4a;--skill-speaking:#6a4fa0;--edge:inset 0 1px 0 rgba(255,255,255,.9);--shadow-1:0 1px 2px rgba(15,15,18,.05),0 2px 8px rgba(15,15,18,.04);--shadow-2:0 10px 26px rgba(15,15,18,.08),0 30px 70px rgba(15,15,18,.10);--ease:cubic-bezier(.16,1,.3,1);--dur-1:160ms;--dur-2:280ms;--dur-3:560ms}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font:17px/1.65 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.site-header{background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--line);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}#engine,#faq,#features,#how,#method,#pricing,#roadmap,#skills{scroll-margin-top:84px}.site-header .brand{display:flex;align-items:center;gap:10px;text-decoration:none}.site-header .logo-mark{width:28px;height:28px;border-radius:6px;background:var(--ink);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:10px;color:var(--bg);letter-spacing:.06em}.site-header .brand-name{font-weight:700;font-size:16px;color:var(--ink)}.site-header .brand-name span{color:var(--ink);font-weight:500}.site-header nav a{color:var(--muted);font-size:14px;text-decoration:none;margin-left:20px}.site-header nav a:hover{color:var(--accent)}.site-header nav a.nav-cta{color:var(--bg);background:var(--ink);padding:7px 14px;border-radius:6px;font-weight:600;transition:background var(--dur-1) var(--ease),transform var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}.site-header nav a.nav-cta:hover{background:var(--accent);color:#fff;transform:translateY(-1px);box-shadow:0 6px 16px var(--accent-glow)}@media (max-width:720px){.site-header{flex-wrap:wrap;gap:8px;padding:12px 16px}.site-header nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px 0}.site-header nav a{margin-left:14px}}.dark-stage{--hi:#f3f2ee;--hi2:#b9bec8;--hmuted:#8a8f9a;--hline:#23252b;--hline-strong:#34373f;--helevated:#14161b;background:#08090a;color:var(--hi);position:relative;overflow:hidden;isolation:isolate}.scene-field{z-index:-2;background:radial-gradient(50% 45% at 78% 14%,rgba(123,161,255,.14),transparent 70%),radial-gradient(40% 35% at 12% 88%,rgba(200,148,42,.1),transparent 70%)}.scene-field,.scene-grid{position:absolute;inset:0}.scene-grid{z-index:-1;opacity:.55;background-image:linear-gradient(var(--hline) 1px,transparent 1px),linear-gradient(90deg,var(--hline) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(60% 50% at 50% 32%,#000,transparent 78%);-webkit-mask-image:radial-gradient(60% 50% at 50% 32%,#000,transparent 78%)}.hero{padding:120px 24px 70px;display:flex;flex-direction:column;align-items:center}.hero-kicker{font-size:12px;font-weight:650;letter-spacing:.22em;text-transform:uppercase;color:var(--hmuted);margin:0 0 22px;text-align:center}.hero-headline{font-size:clamp(38px,6vw,78px);line-height:.98;font-weight:780;letter-spacing:-.035em;text-align:center;margin:0 0 8px;max-width:16ch;text-wrap:balance}.hero-headline em{font-style:normal;color:var(--hmuted)}.profile-rig{position:relative;margin:54px auto 0;width:min(900px,92vw);perspective:1800px}.rig-cap{text-align:center;font-size:10.5px;font-weight:650;letter-spacing:.16em;text-transform:uppercase;color:var(--hmuted);margin:0 0 30px}.rig-pillars{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:clamp(28px,6vw,76px);height:300px;transform:rotateX(8deg);transform-style:preserve-3d}.pillar{display:flex;flex-direction:column;align-items:center;width:96px}.pillar-bar{width:100%;border-radius:8px 8px 0 0;height:calc(var(--v) * 68px);box-shadow:0 34px 70px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.16);background:linear-gradient(180deg,var(--tint-hi),var(--tint-lo))}.pillar.sk-listening{--tint-hi:#6fc0e6;--tint-lo:#1f4552}.pillar.sk-speaking{--tint-hi:#b39ae8;--tint-lo:#362c53}.pillar.sk-reading{--tint-hi:#e6b96e;--tint-lo:#6b5228}.pillar.sk-writing{--tint-hi:#93d1a3;--tint-lo:#29372a}.pillar-tag{margin:16px 0 0;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--hmuted)}.pillar-val{margin:4px 0 0;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:22px;color:var(--hi)}.rig-gate{left:0;z-index:2;top:calc(300px - (var(--gate) * 68px) - 2px);height:0;border-top:1px dashed #c8942a}.rig-gate,.rig-gate span{position:absolute;right:0}.rig-gate span{top:-20px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#c8942a;white-space:nowrap}.rig-note{max-width:62ch;margin:34px auto 0;text-align:center;font-size:13.5px;line-height:1.6;color:var(--hi2)}@media (max-width:640px){.rig-pillars{transform:none;gap:18px;height:220px}.pillar{width:64px}.pillar-bar{height:calc(var(--v) * 50px)}.rig-gate{top:calc(220px - (var(--gate) * 50px) - 2px)}.rig-gate span{display:none}}.hero .hero-dek{max-width:52ch;margin:40px auto 0;text-align:center;font-size:17px;line-height:1.6;color:var(--hi2)}.hero-note{font-size:13.5px;color:var(--muted);margin:18px 0 0}.hero .hero-note{color:var(--hmuted);text-align:center}.cta-group{display:flex;gap:12px;flex-wrap:wrap}.hero .cta-group{justify-content:center;margin-top:32px}.hero .btn-outline{border-color:var(--hline-strong);color:var(--hi2)}.hero .btn-outline:hover{border-color:var(--hi2)}.hero-seam{height:140px;background:linear-gradient(180deg,#08090a,var(--bg));margin-top:-1px}.proof-strip{background:var(--bg);padding-bottom:8px}.btn{display:inline-flex;align-items:center;gap:7px;padding:14px 26px;border-radius:12px;font-size:16px;font-weight:600;text-decoration:none;transition:transform var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease),background var(--dur-1) var(--ease),opacity var(--dur-1) var(--ease)}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.14),0 10px 24px var(--accent-glow)}.btn-primary:hover{background:var(--accent-dark);box-shadow:0 2px 4px rgba(0,0,0,.16),0 14px 32px var(--accent-glow)}.btn-outline{background:transparent;border:1.5px solid var(--line);color:var(--ink2)}.btn-outline:hover{opacity:.88;border-color:var(--ink2)}.store-badge{margin-top:40px;color:var(--muted);font-size:13px}.store-badge p{margin-bottom:6px}.screenshot-gallery{margin-top:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:12px 8px 40px}.screenshot-gallery::-webkit-scrollbar{display:none}.screenshot-track{display:flex;gap:28px;padding:4px 24px;justify-content:flex-start;width:-moz-max-content;width:max-content;margin:0 auto;align-items:flex-end}.screenshot-frame{flex:0 0 auto;width:340px;text-align:left;transition:transform var(--dur-2) var(--ease)}.screenshot-frame img{width:100%;height:auto;aspect-ratio:900/555;-o-object-fit:cover;object-fit:cover;border-radius:12px;border:1px solid var(--line);box-shadow:var(--shadow-2);display:block;background:var(--bg2)}.screenshot-frame figcaption{margin-top:14px;font-size:13px;font-weight:600;color:var(--ink2)}.screenshot-frame:nth-child(odd){transform:translateY(8px) rotate(-1.4deg)}.screenshot-frame:nth-child(2n){transform:translateY(-10px) rotate(1.4deg)}.screenshot-frame.is-peak{transform:translateY(-18px) scale(1.05);z-index:1}.screenshot-frame:hover{transform:translateY(-22px) rotate(0deg) scale(1.04);z-index:2}.features{padding:72px 24px;background:var(--bg)}.features-inner{max-width:var(--hero-max);margin:0 auto}.section-eyebrow{text-align:center;color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.section-title{text-align:center;font-size:30px;font-weight:800;margin-bottom:14px;letter-spacing:-.5px}.section-lead{text-align:center;max-width:620px;margin:0 auto 40px;color:var(--muted);font-size:16px;line-height:1.6}.stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px;max-width:900px;margin:0 auto 48px;padding:24px;border-radius:var(--radius);background:var(--accent-light);border:1px solid var(--line);box-shadow:var(--edge),var(--shadow-1)}.stat{text-align:center}.stat-n{font-size:32px;font-weight:800;color:var(--accent);line-height:1}.stat-l{font-size:12.5px;color:var(--ink2);margin-top:8px;line-height:1.4}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}.feature-card{background:var(--bg2);border-radius:var(--radius);padding:28px 24px;border:1px solid var(--line);box-shadow:var(--shadow-1);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease),border-color var(--dur-2) var(--ease)}.feature-card:hover{transform:translateY(-3px);box-shadow:var(--edge),var(--shadow-2);border-color:var(--line-strong)}.feature-icon{width:46px;height:46px;border-radius:12px;margin-bottom:16px;display:flex;align-items:center;justify-content:center;font-size:22px}.feature-card h3{font-size:17px;font-weight:700;margin-bottom:8px}.feature-card p{font-size:14px;color:var(--muted);line-height:1.55}.spec-list{max-width:980px;margin:0 auto}.spec-row{display:grid;grid-template-columns:64px 220px 1fr;gap:28px;align-items:baseline;padding:26px 0;border-top:1px solid var(--line)}.spec-list-rules .spec-row{grid-template-columns:52px 220px 1fr}.spec-row:first-child{border-top:0}.spec-n{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:13px;color:var(--muted);align-self:start;padding-top:2px}.spec-row h3{font-size:17px;font-weight:700;margin:0;letter-spacing:-.01em;align-self:start}.spec-row p{font-size:14.5px;color:var(--muted);line-height:1.6;margin:0}@media (max-width:860px){.spec-list-rules .spec-row,.spec-row{grid-template-columns:40px 1fr}.spec-row h3{margin-bottom:8px}.spec-row h3,.spec-row p{grid-column:2}}@media (max-width:640px){.spec-row{grid-template-columns:40px 1fr;gap:16px}}.skills-band{padding:76px 24px;background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.skills-inner{max-width:var(--hero-max);margin:0 auto}.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:44px;perspective:2000px}.skill-card{position:relative;overflow:hidden;border-radius:18px;border:1px solid var(--line);background:var(--elevated);padding:30px 28px 32px;box-shadow:var(--edge),var(--shadow-1);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.skill-card:before{content:"";position:absolute;z-index:0;inset:-50% -10% auto auto;width:60%;height:220%;background:radial-gradient(closest-side,var(--wash),transparent 72%);pointer-events:none}.skill-card>*{position:relative;z-index:1}.skill-card:hover{transform:translateY(-4px) rotateX(1.4deg);box-shadow:var(--edge),var(--shadow-2)}.skill-bar{width:32px;height:3px;border-radius:2px;background:var(--tint);margin-bottom:20px}.skill-card h3{font-size:21px;font-weight:700;letter-spacing:-.01em;margin:0 0 6px}.skill-card h3 em{display:block;font-style:normal;font-size:12px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--tint);margin-top:6px}.skill-card p{font-size:14.5px;line-height:1.6;color:var(--ink2);margin-top:14px;max-width:46ch}.skill-motif{height:78px;margin-bottom:4px}.motif-lines{display:flex;flex-direction:column;justify-content:center;gap:8px}.motif-lines span{display:block;height:9px;border-radius:4px;background:var(--line)}.motif-lines span.hi{background:var(--tint);opacity:.85}.motif-lines .meter{height:8px;border-radius:5px;background:var(--line);overflow:hidden;margin-top:4px}.motif-lines .meter i{display:block;height:100%;width:58%;background:var(--tint)}.motif-wave{display:flex;align-items:flex-end;gap:5px}.motif-wave i{width:5px;border-radius:3px;background:var(--line)}.motif-wave i.hi{background:var(--tint)}.motif-voice{display:flex;align-items:center;gap:16px}.motif-voice .ring{width:60px;height:60px;border-radius:50%;border:2px solid var(--tint);display:flex;align-items:center;justify-content:center;flex:none}.motif-voice .ring i{width:18px;height:18px;border-radius:50%;background:var(--tint)}.motif-voice .levels{display:flex;align-items:flex-end;gap:4px;height:60px}.motif-voice .levels i{width:4px;border-radius:2px;background:color-mix(in srgb,var(--tint) 55%,transparent)}.skill-card.sk-reading{--tint:var(--skill-reading);--wash:rgba(138,106,58,.14)}.skill-card.sk-listening{--tint:var(--skill-listening);--wash:rgba(42,90,110,.14)}.skill-card.sk-writing{--tint:var(--skill-writing);--wash:rgba(61,106,74,.14)}.skill-card.sk-speaking{--tint:var(--skill-speaking);--wash:rgba(106,79,160,.14)}@media (max-width:720px){.skills-grid{grid-template-columns:1fr}}.pricing{padding:72px 24px;background:var(--bg2);border-top:1px solid var(--line)}.pricing-inner{max-width:var(--hero-max);margin:0 auto}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;max-width:720px;margin:0 auto;perspective:1800px}.price-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:32px 28px;position:relative;box-shadow:var(--edge),var(--shadow-1);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.price-card:hover{transform:translateY(-3px)}.price-card h3{font-size:18px;font-weight:700;margin-bottom:10px}.price-value{font-size:38px;font-weight:800;letter-spacing:-1px;margin-bottom:8px;color:var(--ink)}.price-value span{font-size:15px;font-weight:500;color:var(--muted)}.price-desc{color:var(--muted);font-size:14px;margin-bottom:20px}.price-features{list-style:none;padding:0;margin-bottom:24px}.price-features li{font-size:14px;color:var(--ink2);padding:9px 0 9px 26px;position:relative;border-top:1px solid var(--line)}.price-features li:first-child{border-top:none}.price-features li:before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:700}.price-card-featured{border-color:var(--accent);border-width:2px;transform:rotateY(-3deg) rotateX(1deg) scale(1.03);transform-style:preserve-3d;box-shadow:var(--edge),0 18px 40px rgba(45,91,227,.16),0 40px 90px rgba(15,15,18,.12)}.price-card-featured:hover{transform:rotateY(-3deg) rotateX(1deg) scale(1.03) translateY(-3px)}.price-badge{position:absolute;top:-14px;left:28px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;padding:5px 13px;border-radius:100px;letter-spacing:.03em;box-shadow:0 6px 16px var(--accent-glow)}@media (max-width:720px){.price-card-featured{transform:none}.price-card-featured:hover{transform:translateY(-3px)}}.price-cta{width:100%;justify-content:center;margin-bottom:10px}.price-fine{font-size:12px}.price-fine,.price-footnote{color:var(--muted);text-align:center}.price-footnote{max-width:620px;margin:24px auto 0;font-size:12.5px;line-height:1.6}.faq{padding:72px 24px;background:var(--bg)}.faq-inner{max-width:680px;margin:0 auto}.faq-list{margin-top:32px;display:flex;flex-direction:column;gap:12px}.faq-item{border:1px solid var(--line);border-radius:12px;padding:16px 20px;background:var(--bg2);transition:border-color var(--dur-1) var(--ease)}.faq-item[open]{border-color:var(--line-strong);box-shadow:var(--shadow-1)}.faq-item summary{cursor:pointer;font-weight:600;font-size:15.5px;color:var(--ink);list-style:none;display:flex;align-items:center;justify-content:space-between}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-size:20px;color:var(--accent);font-weight:400;margin-left:12px}.faq-item[open] summary:after{content:"–"}.faq-item p{margin:14px 0 0;font-size:14.5px;color:var(--muted);line-height:1.6}.how{padding:72px 24px;background:var(--bg2);border-top:1px solid var(--line)}.how-inner{max-width:680px;margin:0 auto}.steps{margin-top:36px;display:flex;flex-direction:column;gap:28px}.step{display:flex;gap:20px;align-items:flex-start}.step-num{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;font-size:16px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 6px var(--accent-glow)}.step-body h3{font-size:17px;font-weight:700;margin-bottom:4px}.step-body p{font-size:15px;color:var(--muted)}.steps-pipeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;position:relative;margin-top:44px}.steps-pipeline:before{content:"";position:absolute;top:22px;left:6%;right:6%;height:2px;background:linear-gradient(90deg,transparent,var(--accent) 12%,var(--accent));z-index:0}.steps-pipeline .step{flex-direction:column;align-items:center;text-align:center;gap:14px;position:relative;z-index:1}.steps-pipeline .step-num{width:44px;height:44px;font-family:SFMono-Regular,ui-monospace,Menlo,monospace}.steps-pipeline .step-body h3{font-size:15.5px}.steps-pipeline .step-body p{font-size:13px;line-height:1.5}.pipeline-loop{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:30px}.pipeline-loop svg{color:var(--muted);opacity:.6}.pipeline-loop span{font-size:12.5px;font-weight:650;color:var(--muted);padding:7px 15px;border:1px dashed var(--line-strong);border-radius:999px}@media (max-width:760px){.steps-pipeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}.steps-pipeline:before{display:none}}.engine-scene{padding:96px 24px 88px;background:#08090a;border-top:0}.engine-scene .how-inner{max-width:880px}.engine-scene .section-eyebrow{color:var(--hmuted);text-align:center}.engine-scene .section-lead{color:var(--hi2)}.engine-headline{font-size:clamp(32px,4.4vw,54px);line-height:1;font-weight:780;letter-spacing:-.03em;text-align:center;color:var(--hi);margin:14px 0 18px}.engine-headline em{font-style:normal;color:var(--hmuted)}.engine-scene .steps-pipeline:before{background:linear-gradient(90deg,transparent,#7ba1ff 12%,#7ba1ff)}.engine-scene .step-num{background:#7ba1ff;color:#08090a;box-shadow:0 0 0 8px rgba(123,161,255,.16)}.engine-scene .step-body h3{color:var(--hi)}.engine-scene .step-body p{color:var(--hi2)}.engine-scene .pipeline-loop span{color:var(--hmuted);border-color:var(--hline-strong)}.engine-scene .pipeline-loop svg{color:var(--hmuted)}.engine-scene .note{background:rgba(200,148,42,.08);border-color:rgba(200,148,42,.28);color:var(--hi2)}.engine-scene .note strong{color:#e0b04a}.closing-seam{height:120px;background:linear-gradient(180deg,var(--bg),#08090a);margin-bottom:-1px}.closing-scene{padding:90px 24px 110px;text-align:center;display:flex;flex-direction:column;align-items:center}.closing-scene .section-eyebrow{color:var(--hmuted)}.closing-headline{font-size:clamp(40px,6vw,76px);line-height:1;font-weight:780;letter-spacing:-.035em;color:var(--hi);margin:16px 0 20px}.closing-dek{max-width:50ch;font-size:17px;line-height:1.6;color:var(--hi2);margin:0 0 34px}.closing-cta{justify-content:center}.closing-scene .btn-outline{border-color:var(--hline-strong);color:var(--hi2)}.closing-scene .btn-outline:hover{border-color:var(--hi2)}.disclaimer-strip{background:#fff8e6;border-top:1px solid var(--note-border);border-bottom:1px solid var(--note-border);padding:18px 24px;text-align:center;color:#6a5000;font-size:14px;line-height:1.6}.authority-kicker{color:var(--accent);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}.authority-crumbs{font-size:13px;margin-bottom:28px}.authority-crumbs,.authority-crumbs a{color:var(--muted)}.authority-cta{margin:40px 0 28px;padding:22px 24px;background:var(--bg2);border:1px solid var(--line);border-radius:var(--radius)}.authority-cta h2{margin-top:0}.authority-cta .btn{text-decoration:none}.authority-cta-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.authority-cta-note{margin:12px 0 0;font-size:.85rem;color:var(--muted)}@media (max-width:420px){.authority-cta-actions{flex-direction:column;align-items:stretch}.authority-cta-actions .btn{text-align:center}}.authority-sources ol{padding-left:1.2em;font-size:.92rem}.authority-sources li{margin:12px 0}.authority-sources a{color:var(--accent)}.authority-sources .source-note{display:block;margin-top:4px;color:var(--muted);font-size:.88rem;line-height:1.5}.glossary-list{margin:0}.glossary-entry{padding:20px 0;border-top:1px solid var(--line);scroll-margin-top:24px}.glossary-entry:first-child{border-top:none;padding-top:4px}.glossary-entry dt{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;font-weight:700;font-size:17px;color:var(--ink);margin-bottom:8px}.glossary-anchor{color:var(--ink);text-decoration:none}.glossary-anchor:hover{text-decoration:underline}.glossary-status{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:3px 8px;border-radius:999px;border:1px solid var(--line);color:var(--muted);background:var(--bg2);white-space:nowrap;cursor:help}.glossary-status.is-official{color:var(--accent-dark);border-color:var(--accent);background:var(--accent-light)}.glossary-status.is-interpretation{color:var(--warn);border-color:var(--note-border);background:var(--note-bg)}.glossary-status.is-product{color:var(--ink2)}.glossary-entry dd{margin:0}.glossary-short{font-size:15.5px;line-height:1.65;margin:0 0 10px}.glossary-entry dd p{font-size:15px}.glossary-aka,.glossary-see{font-size:13.5px;color:var(--muted);margin:8px 0 0}.glossary-see a{color:var(--accent)}@media (max-width:600px){.glossary-entry dt{font-size:16px;gap:8px}}.authority-related ul{list-style:none;padding-left:0}.authority-related li{margin:8px 0}.wrap{max-width:var(--max);margin:0 auto;padding:40px 24px 80px}.page-header{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:32px}.page-header .brand-link{text-decoration:none}.page-header .app-name{font-weight:700;font-size:17px;color:var(--accent)}.page-header .app-tag{color:var(--muted);font-size:13px;margin-top:2px}h1{font-size:30px;line-height:1.2;margin-bottom:8px;font-weight:800}h2{font-size:20px;margin:36px 0 10px;font-weight:700}h3{font-size:17px;margin:22px 0 6px;font-weight:600}p{margin-bottom:14px}a{color:var(--accent);text-decoration:none}p a{text-decoration:underline;text-underline-offset:2px}a:hover{text-decoration:underline}.updated{color:var(--muted);font-size:14px;margin-bottom:20px}ol,ul{padding-left:22px;margin-bottom:14px}li{margin:6px 0}strong{font-weight:650}.note{background:var(--note-bg);border:1px solid var(--note-border);border-radius:10px;padding:12px 16px;font-size:14px;color:#6a5000;margin:16px 0}.note code{background:rgba(0,0,0,.06);padding:1px 5px;border-radius:4px;font-size:13px}nav.legal{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:8px}nav.legal a{font-size:15px}.site-footer{background:var(--ink);color:rgba(255,255,255,.55);padding:56px 24px 32px;font-size:13px;line-height:1.7}.site-footer a{color:rgba(255,255,255,.62);text-decoration:none}.site-footer a:hover{color:#fff}.footer-inner{max-width:var(--hero-max);margin:0 auto;display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:40px 56px;align-items:start}.footer-brand{font-weight:700;font-size:16px;color:#fff;margin-bottom:10px;letter-spacing:-.01em}.footer-line{margin:0 0 12px;max-width:34ch}.footer-disclaimer{margin:0;color:rgba(255,255,255,.4);max-width:38ch}.footer-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px}.footer-columns h2{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:rgba(255,255,255,.85);margin:0 0 10px;font-weight:600}.footer-columns ul{list-style:none;margin:0;padding:0}.footer-columns li{margin:0 0 6px}.footer-legal{max-width:var(--hero-max);margin:40px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.38)}@media (max-width:900px){.footer-inner{grid-template-columns:1fr;gap:32px}.footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.footer-columns{grid-template-columns:1fr;gap:24px}}footer.page-footer{margin-top:56px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}footer.page-footer a{color:var(--muted)}.legal-table-wrap{overflow-x:auto;margin:16px 0 24px;border:1px solid var(--line);border-radius:10px}table.legal-table{width:100%;border-collapse:collapse;font-size:13.5px}table.legal-table td,table.legal-table th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}table.legal-table th{background:var(--bg2);font-weight:700;color:var(--ink2);white-space:nowrap}table.legal-table tr:last-child td{border-bottom:none}.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:24px 0}.trust-card{background:var(--bg2);border:1px solid var(--line);border-radius:var(--radius);padding:20px;transition:border-color .15s,box-shadow .15s}.trust-card:hover{border-color:var(--accent);box-shadow:0 2px 12px rgba(45,91,227,.08)}.trust-card h3{margin:0 0 6px;font-size:16px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:8px}.trust-card h3 span{font-size:18px}.trust-card p{margin:0;font-size:13px;color:var(--muted);line-height:1.5}.trust-card .links{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px;font-size:13px}.trust-card .links a{font-weight:600;padding:3px 0}.principles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:20px 0 32px}.principle{padding:16px 0;border-top:1px solid var(--line)}.principle h3{margin:0 0 6px;font-size:15px}.principle p{margin:0;font-size:14px;color:var(--muted)}@media (prefers-color-scheme:dark){:root{--ink:#ececf1;--ink2:#c8c8d0;--muted:#8a8a95;--accent:#7b9fff;--accent-dark:#4a6fd4;--accent-light:#1a2450;--accent-glow:rgba(123,161,255,.20);--gold:#e0b04a;--gold-glow:rgba(224,176,74,.16);--line:#2a2a32;--line-strong:#3a3a44;--bg:#0e0e12;--bg2:#16161c;--elevated:#1c1c24;--note-bg:#231e0a;--note-border:#52430d;--skill-reading:#c4a36a;--skill-listening:#6aa3b8;--skill-writing:#8aaa86;--skill-speaking:#ab98e0;--edge:inset 0 1px 0 rgba(255,255,255,.05);--shadow-1:0 1px 2px rgba(0,0,0,.5),0 2px 10px rgba(0,0,0,.3);--shadow-2:0 12px 30px rgba(0,0,0,.5),0 36px 80px rgba(0,0,0,.5)}.glossary-status.is-interpretation,.note{color:#e0cc80}.site-footer{background:#000}.disclaimer-strip{background:#1e1a08;border-color:#52430d;color:#c8a83a}.site-header{background:color-mix(in srgb,var(--bg) 78%,transparent)}}@media (max-width:600px){.hero{padding:76px 20px 48px}.site-header nav a{display:none}.site-header nav a.nav-cta,.site-header nav a[href="/guides"]{display:inline-flex;align-items:center}.site-header nav a[href="/guides"]{margin-left:0}.site-header nav a.nav-cta{margin-left:12px}.step{flex-direction:column;gap:10px}.screenshot-frame{width:290px}.price-card{padding:26px 22px}.price-card-featured{transform:none}.skills-band{padding:56px 20px}.skill-card:hover{transform:translateY(-2px)}}@keyframes site-rise{0%{opacity:0;transform:translate3d(0,20px,0)}to{opacity:1;transform:none}}.reveal-armed [data-reveal]{opacity:0;transform:translate3d(0,20px,0)}.reveal-armed [data-reveal].is-in{opacity:1;transform:none;transition:opacity var(--dur-3) var(--ease),transform var(--dur-3) var(--ease);transition-delay:calc(var(--i, 0) * 80ms)}.hero [data-hero-in]{animation:site-rise var(--dur-3) var(--ease) both}.hero-kicker[data-hero-in]{animation-delay:0s}.hero-headline[data-hero-in]{animation-delay:70ms}.profile-rig[data-hero-in]{animation-delay:.17s}.hero-dek[data-hero-in]{animation-delay:.3s}.hero-cta[data-hero-in]{animation-delay:.36s}.hero-note[data-hero-in]{animation-delay:.4s}@keyframes pillar-rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.pillar-bar{transform-origin:bottom}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.pillar-bar{animation:pillar-rise linear both;animation-timeline:view();animation-range:entry 10% cover 45%}}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.hero [data-hero-in],.reveal-armed [data-reveal]{opacity:1;transform:none}.feature-card:hover,.price-card-featured,.rig-pillars,.screenshot-frame,.skill-card:hover{transform:none!important}}.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}