@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f7f5f0;--bg-2:#efece4;--surface:#fff;--ink:#161a2b;--ink-2:#3b4157;--muted:#6b7088;--line:#e4e0d6;--line-2:#d6d1c4;--brand:#1f2a5c;--brand-2:#2f3f86;--accent:#ff8a3d;--accent-soft:#fff0e4;--good:#14935a;--good-soft:#e3f6ec;--ok:#c27a00;--ok-soft:#fdf2d8;--bad:#d23c3c;--bad-soft:#fde6e4;--radius:18px;--radius-sm:12px;--shadow:0 1px 2px #161a2b0d, 0 8px 24px #161a2b0f;--shadow-lg:0 2px 6px #161a2b0f, 0 24px 60px #161a2b1f;--font:"Inter Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--display:"Fraunces Variable", Georgia, serif;--ipa:"Inter Variable", "Charis SIL", "Doulos SIL", "Noto Sans", sans-serif;--brand-ink:#1f2a5c;--brand-soft:#e8ebf8;--brand-soft-2:#eef0fa;--brand-soft-hover:#e2e6f7;--link:#2f3f86;--on-brand:#fff;--on-accent:#2a1300;--on-ink:#fff;--accent-hover:#ff7a22;--accent-ink:#b2500b;--accent-ink-2:#6b3207;--ok-ink:#8a5600;--practice-bg:#fbfbff;--shimmer:#f6f3ec;--focus-ring:#2f3f8624;--word-good-line:#14935a73;--hero-grad-2:#33468f;--sticky-bg:#f7f5f0f0;--tabbar-bg:#fffffff0;--chart-mark:#4a5fc1;--chart-grid:#ece8df;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#11131b;--bg-2:#1b1e2a;--surface:#181b26;--ink:#eceef6;--ink-2:#c6cadb;--muted:#8f94aa;--line:#2a2e3d;--line-2:#3b4053;--brand:#3c50b9;--brand-2:#4a5fcc;--brand-ink:#aab6ff;--brand-soft:#242a4b;--brand-soft-2:#1f2442;--brand-soft-hover:#2c3361;--link:#a3b2ff;--accent-soft:#3a2414;--accent-ink:#ffb27a;--accent-ink-2:#ffd2ad;--good:#3fcf8f;--good-soft:#142f21;--ok:#f0b43c;--ok-soft:#332810;--ok-ink:#f6c862;--bad:#ff6b6b;--bad-soft:#3b1b1d;--on-ink:#11131b;--practice-bg:#161a2d;--shimmer:#252a3a;--focus-ring:#96aaff40;--word-good-line:#3fcf8f80;--hero-grad-2:#3e53aa;--sticky-bg:#11131bf0;--tabbar-bg:#181b26f0;--chart-mark:#8c9cff;--chart-grid:#2a2e3d;--shadow:0 1px 2px #00000059, 0 8px 24px #00000047;--shadow-lg:0 2px 6px #0006, 0 24px 60px #00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:16px;line-height:1.5}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}img,svg{display:block}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;line-height:1.15}h1{font-family:var(--display);font-size:clamp(28px,4vw,40px);font-weight:600}h2{font-family:var(--display);font-size:24px;font-weight:600}h3{font-size:17px;font-weight:650}p{margin:0}.display{font-family:var(--display)}.muted{color:var(--muted)}.small{font-size:14px}.tiny{font-size:12px}.ipa{font-family:var(--ipa);letter-spacing:.01em}.center{text-align:center}.nowrap{white-space:nowrap}.row{align-items:center;gap:12px;display:flex}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.row.end{justify-content:flex-end}.row.top{align-items:flex-start}.col{flex-direction:column;gap:12px;display:flex}.grow{flex:1;min-width:0}.gap-4{gap:4px}.gap-8{gap:8px}.gap-16{gap:16px}.gap-24{gap:24px}.stack>*+*{margin-top:16px}.stack-lg>*+*{margin-top:28px}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}@media (width<=860px){.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}}.page{max-width:1080px;margin:0 auto;padding:32px 28px 96px}.page.narrow{max-width:720px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.page-head p{color:var(--muted);margin-top:6px}@media (width<=720px){.page{padding:20px 16px 110px}}.shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:var(--bg);flex-direction:column;gap:6px;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0}.logo{font-family:var(--display);color:var(--ink);align-items:center;gap:10px;padding:4px 10px 18px;font-size:22px;font-weight:650;display:flex}.logo:hover{text-decoration:none}.brand-mark{background:var(--brand);border-radius:10px;place-items:center;width:32px;height:32px;display:grid}.nav-link{color:var(--ink-2);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:15px;font-weight:550;display:flex}.nav-link:hover{background:var(--bg-2);text-decoration:none}.nav-link.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.nav-link svg{width:19px;height:19px}.sidebar-foot{flex-direction:column;gap:6px;margin-top:auto;display:flex}.main{min-width:0}.tabbar{display:none}@media (width<=860px){.shell{grid-template-columns:1fr}.sidebar{display:none}.tabbar{z-index:30;background:var(--tabbar-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tab{color:var(--muted);flex-direction:column;align-items:center;gap:2px;padding:6px 0;font-size:11px;font-weight:550;display:flex}.tab:hover{text-decoration:none}.tab.active{color:var(--brand-ink)}.tab svg{width:22px;height:22px}.mobile-top{display:flex}}.mobile-top{justify-content:space-between;align-items:center;padding:14px 16px 0;display:none}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.card.flat{box-shadow:none}.card.tight{padding:16px}.card.hero{background:linear-gradient(135deg, var(--brand) 0%, var(--hero-grad-2) 100%);color:var(--on-brand);border:none}.card.hero .muted{color:#ffffffb8}.card-link{color:inherit;transition:transform .12s,box-shadow .12s;display:block}.card-link:hover{box-shadow:var(--shadow-lg);text-decoration:none;transform:translateY(-1px)}.section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:13px;font-weight:650}.divider{background:var(--line);border:0;height:1px;margin:18px 0}.btn{cursor:pointer;white-space:nowrap;background:var(--brand);color:var(--on-brand);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-size:15px;font-weight:600;text-decoration:none;transition:background .12s,transform 60ms,box-shadow .12s,opacity .12s;display:inline-flex}.btn:hover{background:var(--brand-2);text-decoration:none}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{width:18px;height:18px}.btn.accent{background:var(--accent);color:var(--on-accent)}.btn.accent:hover{background:var(--accent-hover)}.btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--line-2)}.btn.secondary:hover{background:var(--bg-2)}.btn.ghost{color:var(--ink-2);background:0 0}.btn.ghost:hover{background:var(--bg-2)}.btn.danger{background:var(--bad)}.btn.sm{padding:7px 14px;font-size:14px}.btn.lg{padding:15px 28px;font-size:17px}.btn.block{width:100%}.btn.icon{border-radius:999px;padding:10px}.btn.icon.sm{padding:7px}.field{flex-direction:column;gap:6px;display:flex}.field label,.label{color:var(--ink-2);font-size:14px;font-weight:600}.input,.select,.textarea{border:1px solid var(--line-2);border-radius:var(--radius-sm);background:var(--surface);outline:none;width:100%;padding:12px 14px;transition:border-color .12s,box-shadow .12s}.input:focus,.select:focus,.textarea:focus{border-color:var(--brand-2);box-shadow:0 0 0 3px var(--focus-ring)}.textarea{resize:vertical;min-height:96px}.error-text{color:var(--bad);font-size:14px}.choice-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.choice{border:1.5px solid var(--line-2);background:var(--surface);cursor:pointer;text-align:left;border-radius:14px;padding:12px 14px;font-weight:550;transition:border-color .12s,background .12s}.choice:hover{border-color:var(--brand-2)}.choice.selected{border-color:var(--brand-ink);background:var(--brand-soft-2);box-shadow:inset 0 0 0 1px var(--brand-ink)}.choice .muted{font-size:13px;font-weight:400}.pill{background:var(--bg-2);color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;font-weight:600;display:inline-flex}.pill.good{background:var(--good-soft);color:var(--good)}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.brand{background:var(--brand-soft);color:var(--brand-ink)}.pill.accent{background:var(--accent-soft);color:var(--accent-ink)}.kbd{border:1px solid var(--line-2);background:var(--surface);border-radius:6px;padding:1px 6px;font-family:ui-monospace,monospace;font-size:12px}.bar{background:var(--bg-2);border-radius:99px;height:8px;overflow:hidden}.bar>span{background:var(--brand-2);border-radius:99px;height:100%;transition:width .4s;display:block}.bar.good>span{background:var(--good)}.bar.ok>span{background:var(--ok)}.bar.bad>span{background:var(--bad)}.stat-num{font-family:var(--display);font-size:34px;font-weight:650;line-height:1}.stat-label{color:var(--muted);margin-top:6px;font-size:13px}.empty{text-align:center;color:var(--muted);padding:40px 20px}.spinner{border:2.5px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg, var(--bg-2), var(--shimmer), var(--bg-2));background-size:200% 100%;border-radius:10px;animation:1.2s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.toast{z-index:100;background:var(--ink);color:var(--on-ink);box-shadow:var(--shadow-lg);border-radius:14px;max-width:min(92vw,520px);padding:12px 18px;font-size:15px;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.toast.error{background:var(--bad)}.score-good{color:var(--good)}.score-ok{color:var(--ok)}.score-bad{color:var(--bad)}.bg-good{background:var(--good-soft)}.bg-ok{background:var(--ok-soft)}.bg-bad{background:var(--bad-soft)}.words{flex-wrap:wrap;gap:6px 8px;font-size:22px;line-height:1.5;display:flex}.words.lg{font-size:30px;font-family:var(--display);font-weight:550}.word{cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;border-radius:8px;padding:1px 6px;transition:background .12s;position:relative}.word.good{color:var(--ink);border-bottom-color:var(--word-good-line)}.word.ok{color:var(--ok-ink);background:var(--ok-soft);border-bottom-color:var(--ok)}.word.bad{color:var(--bad);background:var(--bad-soft);border-bottom-color:var(--bad)}.word.selected{outline:2px solid var(--brand-2);outline-offset:1px}.word.pending{color:var(--ink)}.phones{flex-wrap:wrap;gap:6px;display:flex}.phone{text-align:center;min-width:44px;font-family:var(--ipa);border:1px solid var(--line);border-radius:10px;padding:6px 10px;font-size:20px;font-weight:550}.phone small{font-family:var(--font);margin-top:2px;font-size:11px;font-weight:600;display:block}.phone.good{background:var(--good-soft);color:var(--good);border-color:#0000}.phone.ok{background:var(--ok-soft);color:var(--ok);border-color:#0000}.phone.bad{background:var(--bad-soft);color:var(--bad);border-color:#0000}.ring{place-items:center;display:inline-grid;position:relative}.ring svg{transform:rotate(-90deg)}.ring .ring-label{font-family:var(--display);place-items:center;font-weight:650;display:grid;position:absolute;inset:0}.rec{cursor:pointer;background:var(--accent);width:84px;height:84px;color:var(--on-accent);border:none;border-radius:50%;place-items:center;transition:transform .1s,background .15s;display:grid;position:relative;box-shadow:0 8px 24px #ff8a3d59}.rec:hover{transform:scale(1.03)}.rec:disabled{opacity:.5;cursor:not-allowed;transform:none}.rec.recording{background:var(--bad);color:var(--on-brand);box-shadow:0 8px 28px #d23c3c66}.rec svg{width:34px;height:34px}.rec-halo{pointer-events:none;border:3px solid #d23c3c59;border-radius:50%;transition:transform 80ms linear;position:absolute;inset:-8px}.coach-stage{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}@media (width<=1000px){.coach-stage{grid-template-columns:1fr}}.orb-wrap{place-items:center;padding:18px 0 8px;display:grid}.orb{background:radial-gradient(circle at 35% 30%,#8fa2ff 0%,#3a4fb0 45%,#1f2a5c 100%);border-radius:50%;width:148px;height:148px;transition:transform 80ms linear;box-shadow:0 20px 60px #1f2a5c59,inset 0 -10px 30px #00000040}.orb.user{background:radial-gradient(circle at 35% 30%,#ffd1ae 0%,#ff8a3d 50%,#c2520b 100%);box-shadow:0 20px 60px #ff8a3d59,inset 0 -10px 30px #0000002e}.orb.idle{filter:saturate(.6);opacity:.85}.transcript{flex-direction:column;gap:10px;max-height:520px;padding-right:4px;display:flex;overflow-y:auto}.bubble{border-radius:16px;max-width:92%;padding:10px 14px;font-size:15px;line-height:1.45}.bubble.tutor{background:var(--bg-2);border-bottom-left-radius:6px;align-self:flex-start}.bubble.user{background:var(--brand-soft);border-bottom-right-radius:6px;align-self:flex-end}.bubble.system{color:var(--muted);background:0 0;align-self:center;padding:2px 8px;font-size:13px}.practice-card{border:2px solid var(--brand-ink);background:var(--practice-bg)}.landing-nav{justify-content:space-between;align-items:center;max-width:1120px;margin:0 auto;padding:22px 28px;display:flex}.landing-hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;max-width:1120px;margin:0 auto;padding:48px 28px 40px;display:grid}.landing-hero h1{font-size:clamp(38px,6vw,64px);line-height:1.02}.landing-hero p.lead{color:var(--ink-2);max-width:34em;margin-top:18px;font-size:19px}@media (width<=900px){.landing-hero{grid-template-columns:1fr;padding-top:24px}}.band{max-width:1120px;margin:0 auto;padding:40px 28px}.auth-wrap{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{width:min(440px,100%)}.steps{gap:6px;display:flex}.steps span{background:var(--line);border-radius:9px;flex:1;height:5px}.steps span.on{background:var(--brand)}.sound-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px;display:grid}.sound-tile{text-align:center;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:14px;padding:12px 8px;transition:transform .1s}.sound-tile:hover{box-shadow:var(--shadow);text-decoration:none;transform:translateY(-1px)}.sound-tile .ipa{font-size:24px;font-weight:600}.sound-tile .tiny{color:var(--muted)}.sound-tile.good{background:var(--good-soft);border-color:#0000}.sound-tile.ok{background:var(--ok-soft);border-color:#0000}.sound-tile.bad{background:var(--bad-soft);border-color:#0000}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--line);padding:8px 10px;font-size:12px;font-weight:600}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px}.table tr:last-child td{border-bottom:none}.card{box-shadow:0 2px 8px #161a2b09}.main,.auth-card,.auth-card .card,.auth-card .col{min-width:0}.auth-card{width:100%;max-width:440px}.auth-card .btn.lg{white-space:normal;min-height:54px;padding-inline:16px}.auth-card .btn.lg svg{flex:none}.human-check{min-width:0;max-width:100%}.load-error{border:1px solid var(--bad);background:var(--bad-soft);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-block:16px;padding:16px;font-size:14px;display:flex}.page-skeleton{min-height:300px}.skip-link{z-index:100;background:var(--surface);border:2px solid var(--brand-2);border-radius:12px;padding:12px 20px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:12px}:where(button,a):focus-visible{outline:2px solid var(--brand-2);outline-offset:3px}@media (width<=860px){.mobile-top{border-bottom:1px solid var(--line);padding-bottom:12px;display:flex}}@media (width<=480px){.landing-nav{gap:10px;padding:16px}.landing-nav .logo{gap:7px;font-size:20px}.landing-nav .btn{padding:9px 12px;font-size:13px}.landing-nav .row{gap:2px}.landing-hero{gap:28px;padding:28px 20px 24px}.landing-hero p.lead{font-size:17px}.hero-cta{gap:8px}.hero-cta .btn{white-space:normal;width:100%}.onb-foot .inner .btn.lg{white-space:normal;padding:12px 16px;font-size:15px}.onb-foot .inner .btn{min-width:0}.onb .minutes-choice{padding:12px 4px;font-size:12px}.onb .minutes-choice strong{font-size:25px}.auth-wrap{padding:20px 16px}.auth-card .card{padding:18px 12px}.page-head p{font-size:14px;line-height:1.6}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.library-search{max-width:480px;margin-bottom:20px}.coach-start{background:var(--brand-soft-2);border-color:#0000;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.coach-start h2{margin-bottom:6px}.coach-start>.btn{flex:none}.progress-welcome{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:28px;display:flex}.unit-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;display:flex}.unit-heading .muted{margin-top:6px;font-size:14px}.practice-guide{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);margin-top:16px;padding:14px 16px}.practice-guide summary{cursor:pointer;color:var(--ink-2);font-size:14px;font-weight:600}.practice-guide[open] summary{margin-bottom:16px}.practice-guide p{color:var(--ink-2);margin-block:12px;font-size:14px}.record-error{background:var(--bad-soft);color:var(--bad);border-radius:8px;margin-bottom:16px;padding:12px;font-size:14px}.settings-save{z-index:32;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex;position:sticky;bottom:16px}.page:has(.settings-save){flex-direction:column;display:flex}.page:has(.settings-save)>.settings-save{order:99}@media (width<=860px){.settings-save{bottom:calc(78px + env(safe-area-inset-bottom))}}@media (width<=480px){.coach-start{flex-direction:column;align-items:stretch;gap:14px;padding:18px}.coach-start h2{font-size:22px}.settings-save{flex-wrap:wrap}.settings-save .btn{flex:1}.unit-heading h1{font-size:28px}}#main-content h1[tabindex="-1"]:focus{outline:none}.btn svg{flex:none}.placement .btn.lg{white-space:normal;max-width:100%}.landing{background:var(--bg);min-height:100vh}.landing-nav .row a.btn{text-decoration:none}.hero-eyebrow{color:var(--brand-2);background:var(--brand-soft);border-radius:999px;align-items:center;gap:8px;margin-bottom:18px;padding:6px 12px;font-size:13px;font-weight:650;display:inline-flex}.hero-cta{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.hero-note{color:var(--muted);margin-top:14px;font-size:14px}.hero-visual{position:relative}.hero-visual .card{padding:26px}.hero-visual .float{width:230px;position:absolute;bottom:-22px;right:-10px}@media (width<=900px){.hero-visual .float{width:auto;margin-top:14px;position:static}}.mock-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:650}.coach-quote{align-items:flex-start;gap:12px;display:flex}.coach-quote .dot{background:radial-gradient(circle at 35% 30%,#8fa2ff 0%,#3a4fb0 45%,#1f2a5c 100%);border-radius:50%;flex:none;width:34px;height:34px}.step-num{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-ink);border-radius:50%;place-items:center;font-weight:700;display:grid}.feature-icon{background:var(--brand-soft);width:42px;height:42px;color:var(--brand-ink);border-radius:12px;place-items:center;margin-bottom:12px;display:grid}.feature-icon svg{width:22px;height:22px}.price-card{flex-direction:column;gap:10px;display:flex}.price-card ul{color:var(--ink-2);margin:6px 0 0;padding-left:18px;font-size:15px}.price-card li+li{margin-top:4px}.price{font-family:var(--display);font-size:30px;font-weight:650}.landing-foot{border-top:1px solid var(--line);margin-top:40px}.landing-foot .band{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:24px;padding-bottom:32px;font-size:14px;display:flex}.band-title{text-align:center;max-width:640px;margin:0 auto 28px}.band-title p{color:var(--muted);margin-top:10px;font-size:17px}.auth-head{text-align:center;flex-direction:column;align-items:center;gap:12px;margin-bottom:22px;display:flex}.auth-head p{color:var(--muted)}.onb{flex-direction:column;min-height:100vh;display:flex}.onb-top{justify-content:space-between;align-items:center;width:100%;max-width:760px;margin:0 auto;padding:20px 28px;display:flex}.onb-body{flex:1;width:100%;max-width:760px;margin:0 auto;padding:8px 28px 120px}.onb-foot{background:var(--sticky-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:14px 28px calc(14px + env(safe-area-inset-bottom));position:sticky;bottom:0}.onb-foot .inner{justify-content:space-between;gap:12px;max-width:704px;margin:0 auto;display:flex}.onb h1{margin-top:18px}.onb .lead{color:var(--muted);margin-top:8px;font-size:17px}.issues-card{background:var(--accent-soft);border:none}.issues-card ul{color:var(--ink-2);margin:8px 0 0;padding-left:18px;font-size:15px}.issues-card li+li{margin-top:4px}.big-choice{border-radius:18px;padding:20px}.big-choice .flag{margin-bottom:8px;font-size:28px;line-height:1}.big-choice strong{font-size:17px;display:block}.minutes-choice{text-align:center;padding:18px 10px}.minutes-choice strong{font-family:var(--display);font-size:30px;display:block}@media (width<=720px){.onb-top,.onb-body,.onb-foot{padding-left:16px;padding-right:16px}}.placement{min-height:100vh}.placement-top{justify-content:space-between;align-items:center;gap:16px;max-width:820px;margin:0 auto;padding:20px 28px 0;display:flex}.placement-body{max-width:820px;margin:0 auto;padding:20px 28px 96px}.placement-progress{max-width:820px;margin:0 auto;padding:14px 28px 0}@media (width<=720px){.placement-top,.placement-body,.placement-progress{padding-left:16px;padding-right:16px}}.check-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.check-list li{align-items:flex-start;gap:10px;display:flex}.check-list svg{width:20px;height:20px;color:var(--good);flex:none;margin-top:2px}.focus-sound{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:14px 0;display:flex}.focus-sound:last-child{border-bottom:none}.focus-sound .ipa-badge{width:54px;height:54px;font-family:var(--ipa);border-radius:14px;flex:none;place-items:center;font-size:24px;font-weight:600;display:grid}.stat-card{flex-direction:column;gap:2px;display:flex}.stat-card .stat-icon{color:var(--muted);margin-bottom:10px}.stat-card .stat-icon svg{width:20px;height:20px}.stats-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}@media (width<=860px){.stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.hero-focus{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.hero-focus .chip{color:#fff;background:#ffffff24;border-radius:14px;align-items:center;gap:10px;padding:10px 14px;display:flex}.hero-focus .chip .ipa{font-size:22px;font-weight:600}.hero-focus .chip span.small{color:#fffc}.card.hero .btn.secondary{color:#fff;background:#ffffff1f;border-color:#ffffff47}.card.hero .btn.secondary:hover{background:#fff3}.list-row{border-bottom:1px solid var(--line);color:inherit;align-items:center;gap:12px;padding:12px 0;display:flex}.list-row:last-child{border-bottom:none}a.list-row:hover{background:var(--bg);text-decoration:none}.list-row .ipa-sm{width:40px;height:40px;font-family:var(--ipa);background:var(--bg-2);border-radius:11px;flex:none;place-items:center;font-size:19px;font-weight:600;display:grid}.placement-cta{border:2px dashed var(--accent);background:var(--accent-soft);box-shadow:none}.settings-section h3{margin-bottom:14px}.toggle-group{background:var(--bg-2);border-radius:999px;padding:3px;display:inline-flex}.toggle-group button{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.toggle-group button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.table-wrap{overflow-x:auto}.code-box{background:var(--bg-2);border-radius:10px;padding:8px 12px;font-family:ui-monospace,monospace;font-size:15px}.home-hero{background:linear-gradient(135deg, var(--brand) 0%, var(--hero-grad-2) 100%);color:#fff;border:none}.home-hero .muted{color:#ffffffb8}.home-hero .btn.secondary{color:#fff;background:#ffffff1f;border-color:#ffffff47}.home-hero .btn.secondary:hover{background:#fff3}.home-hero-grid{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;display:grid}.home-hero-grid .actions{flex-direction:column;gap:8px;min-width:230px;display:flex}@media (width<=720px){.home-hero-grid{grid-template-columns:minmax(0,1fr)}.home-hero-grid .actions{min-width:0}}.home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}@media (width<=860px){.home-grid{grid-template-columns:minmax(0,1fr)}}.pill.navy{background:var(--brand-soft);color:var(--brand-ink)}.price-card .pill{align-self:flex-start}.hero-visual{margin-bottom:90px}@media (width<=900px){.hero-visual{margin-bottom:0}}.hero-visual .float{bottom:-100px;right:-24px}.human-check{justify-content:center;display:flex}.human-check:empty{display:none}.human-check.asking{margin:4px 0}.passkey-note{color:var(--muted);text-align:center;margin:0;font-size:13px;line-height:1.5}.auth-card .btn.lg svg{width:20px;height:20px}
