@import"https://fonts.googleapis.com/css2?family=Quicksand:wght@400;500;600;700&family=Comfortaa:wght@700&display=swap";:root{--bg: #fbfcfd;--card: #ffffff;--ink: #1a1f28;--muted: #6b7787;--faint: #9aa5b4;--line: #e6ebf0;--brandTeal: #0e5c66;--brandMint: #4fd1c5;--brandTile: #0e5c66;--brandBar: #ffffff;--brandInk: #0e5c66;--scrollThumb: #ccd5dd;--scrollThumbHover: #a8b5c2;--lineStrong: #d3dbe4;--hover: #eef2f6;--dim: #b3bcc7;--onAccent: #ffffff;--tipInk: #855108;--errTint: #fdeaee;--errInk: #a2103a;--warnInk: #a35f06;--accent: #48cae4;--accentInk: #0b7f99;--accentTint: #e6f5fa;--accentHover: #08657a;--amber: #f59e0b;--amberTint: #fdf4e6;--green: #16a34a;--red: #e11d48;--stLearning: #3b82f6;--stMastered: #16a34a;--stReview: #f59e0b;--stPractice: #e11d48;--maxw: 1200px;--radius: 22px;--radiusSm: 14px;--btn: 12px;--pill: 999px;--liftMenu: 0 8px 24px -8px rgb(15 23 42 / .18);--liftPanel: 0 18px 48px -18px rgb(15 23 42 / .3);font-family:Quicksand,system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}img{max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}h1,h2,h3{font-weight:700;letter-spacing:-.015em}body{margin:0;min-width:320px;background:var(--bg);font-size:15px;line-height:1.55}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(20rem 20rem at 12% 18%,rgb(72 202 228 / .1),transparent 70%),radial-gradient(18rem 18rem at 86% 12%,rgb(245 158 11 / .07),transparent 70%),radial-gradient(22rem 22rem at 78% 78%,rgb(59 130 246 / .07),transparent 70%),radial-gradient(16rem 16rem at 20% 82%,rgb(22 163 74 / .06),transparent 70%)}:where(a,button,[tabindex]):focus-visible{outline:2.5px solid var(--accentInk);outline-offset:3px;border-radius:9px}.shell{min-height:100vh;display:flex;flex-direction:column}:root[data-theme=indigo]{--accent: #6366f1;--accentInk: #4338ca;--accentTint: #eeeffe;--accentHover: #3730a3 }:root[data-theme=blue]{--accent: #3b82f6;--accentInk: #1d4ed8;--accentTint: #e8f0fe;--accentHover: #1e40af }:root[data-theme=ocean]{--accent: #48cae4;--accentInk: #0b7f99;--accentTint: #e6f5fa;--accentHover: #08657a }:root[data-theme=teal]{--accent: #2dd4bf;--accentInk: #0f766e;--accentTint: #e6faf7;--accentHover: #115e59 }:root[data-theme=forest]{--accent: #22c55e;--accentInk: #15803d;--accentTint: #eaf7ee;--accentHover: #166534 }:root[data-theme=purple]{--accent: #a855f7;--accentInk: #7e22ce;--accentTint: #f5eafe;--accentHover: #6b21a8 }:root[data-theme=rose]{--accent: #ef4444;--accentInk: #be123c;--accentTint: #fdeaea;--accentHover: #9f1239 }:root[data-theme=pink]{--accent: #f472b6;--accentInk: #be185d;--accentTint: #fdeef5;--accentHover: #9d174d }:root[data-theme=amber]{--accent: #f59e0b;--accentInk: #b45309;--accentTint: #fdf4e6;--accentHover: #92400e }.topbar{position:sticky;top:0;z-index:30;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,3vw,34px);background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px)}.brand{display:flex;gap:9px;align-items:center;color:var(--brandInk)}.brandWord{font-family:Comfortaa,Quicksand,system-ui,sans-serif;font-weight:700;font-size:21px;letter-spacing:-.02em;text-transform:lowercase}.brandSvg{flex:none;display:block;overflow:visible}.brandTile{fill:var(--brandTile)}.brandBar{fill:var(--brandBar)}nav{display:flex;gap:2px;align-items:center}nav>a,.iconButton{display:grid;place-items:center;width:38px;height:38px;border:0;background:transparent;border-radius:var(--btn);color:var(--muted)}nav>a:hover,.iconButton:hover{background:var(--hover);color:var(--ink)}nav>a.active{color:var(--accentInk)}.primary,.secondary,.pill{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--btn);font-weight:700;border:1px solid transparent}.primary{background:var(--accentInk);color:var(--onAccent);padding:12px 26px;font-size:15px}.primary{transition:background-color .2s,transform .12s}.primary:hover{background:var(--accentHover)}.primary:active{transform:translateY(1px)}.secondary{background:var(--card);color:var(--ink);border-color:var(--line);padding:10px 20px;font-size:14px}.secondary{transition:border-color .2s,background-color .2s,transform .12s}.secondary:hover{border-color:var(--lineStrong);background:var(--hover)}.secondary:active{transform:translateY(1px)}.pill{background:var(--card);border-color:var(--line);color:var(--ink);padding:8px 14px;font-size:13px;font-weight:600}.pill:hover{border-color:var(--lineStrong)}.pill[aria-pressed=true]{background:var(--accentTint);border-color:var(--accent);color:var(--accentInk)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}.home{flex:1;text-align:center;padding:clamp(22px,4.5vw,48px) max(16px,3vw) 56px;max-width:var(--maxw);margin:0 auto;width:100%}.home h1{font-size:clamp(25px,3.1vw,36px);line-height:1.35;color:var(--accent);margin:0 auto 14px;max-width:22ch}.home>p{color:var(--muted);font-size:15px;line-height:1.6;max-width:54ch;margin:0 auto 26px}.caret{display:inline-block;width:2px;height:.92em;margin-left:2px;vertical-align:-.08em;background:currentColor;border-radius:1px}.caret.idle{animation:blink 1.1s step-end infinite}@keyframes blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.caret{animation:none}}.controlRow{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:26px 0 20px}.progressRow{display:flex;align-items:center;justify-content:center;gap:12px;max-width:460px;margin:0 auto}.progressTrack{flex:1;height:6px;background:var(--line);border-radius:var(--pill);overflow:hidden}.progressTrack i{display:block;height:100%;background:var(--accent);border-radius:var(--pill);transition:width .4s}.progressLabel{color:var(--faint);font-size:12px;font-weight:600;white-space:nowrap}.soundMap{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:368px;margin:30px auto 0}.sound{position:relative;width:80px;height:66px;display:grid;place-items:center;gap:1px;background:var(--card);border:1px solid var(--line);border-radius:var(--radiusSm);color:var(--ink)}.sound b{font-size:18px;font-weight:700;line-height:1}.sound span{font-size:10px;font-weight:600;color:var(--faint)}.sound i{position:absolute;top:7px;right:7px;width:7px;height:7px;border-radius:50%}.sound i.learning{background:var(--stLearning)}.sound i.mastered{background:var(--stMastered)}.sound i.review{background:var(--stReview)}.sound i.practice{background:var(--stPractice)}.sound:hover{border-color:var(--accent)}.legend{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;margin:22px 0 28px;font-size:12px;font-weight:600;color:var(--muted)}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:8px;height:8px;border-radius:50%}.practicePage{flex:1;padding:clamp(14px,3vw,28px) max(16px,3vw) 52px;max-width:1000px;margin:0 auto;width:100%}.steps{display:flex;justify-content:center;gap:6px;margin-bottom:18px}.steps i{width:7px;height:7px;border-radius:50%;background:var(--line)}.steps i.on{background:var(--accent)}.stage{padding:clamp(22px,4vw,38px) clamp(18px,4vw,44px);text-align:center}.stage h1{font-size:clamp(19px,2.5vw,24px);margin:0 0 4px}.stageFocus{color:var(--accentInk);font-weight:700;font-size:13px;margin:0 0 22px}.stageStats{display:flex;justify-content:center;gap:clamp(16px,4.5vw,46px);padding-bottom:18px;border-bottom:1px solid var(--line)}.stageStats span{font-size:10px;font-weight:700;color:var(--faint);text-transform:uppercase;letter-spacing:.07em}.stageStats b{display:block;font-size:21px;color:var(--ink);letter-spacing:-.02em}.speechWords{font-size:clamp(19px,2.7vw,30px);line-height:1.5;margin:36px 0;font-weight:600}.speechWords span{display:inline-block;margin-right:.3em;color:#a3adba;transition:color .15s}.speechWords .correct{color:var(--green)}.speechWords .wrong{color:var(--red);text-decoration:line-through}.speechWords .listening{color:var(--ink);background:var(--accentTint);border-radius:7px;padding:0 5px}.mic{width:70px;height:70px;border-radius:50%;border:0;background:var(--accentInk);color:var(--onAccent);box-shadow:0 0 0 8px var(--accentTint)}.mic:hover{background:var(--accentHover)}.mic.live{background:var(--red);box-shadow:0 0 0 8px #fde8ec;animation:pulse 1.5s infinite}.mic svg{display:block;margin:auto}@keyframes pulse{50%{box-shadow:0 0 0 16px #fde8ec88}}@media(prefers-reduced-motion:reduce){.mic.live{animation:none}}.speechStatus{color:var(--muted);font-size:14px;margin:16px auto 0;max-width:44ch;min-height:40px}.heard{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.heard small{display:inline-block;margin-right:9px;font-size:9px;font-weight:700;letter-spacing:.12em;color:var(--accentInk)}.note{display:flex;gap:11px;text-align:left;border-radius:var(--radiusSm);padding:14px 16px;margin:18px 0 0;line-height:1.55;font-size:14px}.note.tip{background:var(--amberTint);color:var(--tipInk)}.note.error{background:var(--errTint);color:var(--errInk)}.note svg{flex:none;margin-top:2px}.controlBar{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:20px}.privacyNote{text-align:center;color:var(--faint);font-size:12px;margin-top:22px}.dashboard{flex:1;padding:clamp(14px,3vw,28px) max(16px,3vw) 52px;max-width:var(--maxw);margin:0 auto;width:100%}.dashboardHead{margin-bottom:20px}.dashboardHead h1{font-size:clamp(23px,2.4vw,30px);color:var(--accent);margin:0}.panelGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:start}.panel{padding:22px clamp(16px,1.8vw,22px)}.panel h2{font-size:17px;margin:0 0 16px}.greeting{background:var(--accentTint);border-radius:var(--radiusSm);padding:15px 16px}.greeting h3{display:flex;align-items:center;gap:7px;margin:0 0 3px;font-size:15px;color:var(--accentInk)}.greeting p{margin:0 0 13px;color:var(--muted);font-size:12.5px;line-height:1.5}.streakRows{background:var(--card);border-radius:11px;padding:2px 12px}.streakRows div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;font-size:12.5px;font-weight:600;color:var(--muted)}.streakRows div+div{border-top:1px solid var(--line)}.streakRows div>span{display:inline-flex;align-items:center;gap:8px}.streakRows svg{color:var(--accentInk)}.streakRows b{font-size:14px;color:var(--ink)}.tripleStat{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tripleStat article{background:var(--accentTint);border-radius:var(--radiusSm);padding:13px 6px;text-align:center}.tripleStat b{display:block;font-size:22px;color:var(--accentInk);line-height:1.15}.tripleStat span{font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.action{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 16px;border:0;border-radius:var(--btn);font-size:14px;font-weight:700;margin:14px 0 0}.action.solid{background:var(--accentInk);color:var(--onAccent)}.action.solid:hover{background:var(--accentHover)}.action.soft{background:var(--accentTint);color:var(--accentInk)}.action.warn{background:var(--amberTint);color:var(--warnInk)}.action.soft:hover,.action.warn:hover{filter:brightness(.97)}.action[aria-disabled=true]{opacity:.5;pointer-events:none}.week{display:flex;justify-content:space-between;margin-top:18px}.week div{display:grid;grid-template-rows:auto auto auto;gap:5px;justify-items:center}.week span{font-size:9px;font-weight:700;letter-spacing:.06em;color:var(--faint)}.week i{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center}.week i.active{background:var(--accentTint);border-color:var(--accent)}.week i.today{border:1.5px dashed var(--accent)}.week i svg{color:var(--accentInk)}.week em{font-style:normal;font-size:9px;font-weight:700;color:var(--accentInk);min-height:12px}.records{width:100%;border-collapse:collapse;font-size:12.5px;margin-top:14px}.records th{font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--faint);text-align:right;padding:0 0 8px}.records th:first-child,.records td:first-child{text-align:left;font-weight:700;color:var(--ink)}.records td{text-align:right;padding:10px 0;border-top:1px solid var(--line);color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:22px 4px 4px;font-size:13px;line-height:1.6}.empty b{display:block;color:var(--ink);font-size:14px;margin-bottom:4px}.legal{flex:1;max-width:760px;margin:0 auto;padding:clamp(20px,4vw,44px) max(16px,3vw) 60px}.legal h1{font-size:clamp(23px,2.4vw,30px);color:var(--accent);margin:5px 0 16px}.legal h2{font-size:17px;margin:28px 0 8px}.legal p{color:var(--muted);line-height:1.75;font-size:14.5px}.updated{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accentInk)}footer{display:flex;justify-content:center;flex-wrap:wrap;gap:22px;padding:22px 16px 26px;color:var(--faint);font-size:12.5px}footer a:hover{color:var(--accentInk)}.drawerOverlay{position:fixed;inset:0;background:#0f172a52;z-index:40;animation:fade .18s ease-out}.drawer{position:fixed;inset:12px 12px 12px auto;width:min(408px,calc(100vw - 24px));z-index:50;background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:var(--liftPanel);overflow:hidden;display:flex;flex-direction:column;animation:slideIn .22s cubic-bezier(.2,.8,.3,1)}@keyframes fade{0%{opacity:0}}@keyframes slideIn{0%{transform:translate(calc(100% + 12px))}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}@media(prefers-reduced-motion:reduce){.drawer,.drawerOverlay{animation:none}}.drawerHead{display:flex;align-items:center;justify-content:space-between;padding:16px 14px 16px 20px;border-bottom:1px solid var(--line)}.drawerHead h2{font-size:16px;margin:0}.drawerBody{padding:20px;overflow-y:auto}.drawerGroup{margin-bottom:24px}.drawerGroup h3{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin:0 0 10px}.drawerGroup h3 svg{color:var(--accentInk)}.drawerNote{margin:0;font-size:12.5px;color:var(--muted);line-height:1.6}.drawerLinks{display:grid;gap:9px;font-size:14px;font-weight:600;color:var(--muted)}.drawerLinks a:hover{color:var(--accentInk)}.choiceRow{display:flex;flex-wrap:wrap;gap:7px}.choice{display:inline-flex;align-items:center;gap:7px;background:var(--card);border:1px solid var(--line);border-radius:var(--btn);padding:8px 13px;font-size:13px;font-weight:600;color:var(--ink)}.choice:hover:not(:disabled){border-color:var(--lineStrong)}.choice[aria-pressed=true]{background:var(--accentTint);border-color:var(--accent);color:var(--accentInk)}.choice:disabled{opacity:.45;cursor:default}.choice i{width:11px;height:11px;border-radius:50%}.choice[data-theme-swatch=ocean] i{background:#48cae4}.choice[data-theme-swatch=forest] i{background:#22c55e}@media(max-width:860px){.panelGrid{grid-template-columns:1fr}}@media(max-width:560px){.topbar{height:58px}.brandWord{display:none}.sound{width:72px;height:62px}.sound b{font-size:17px}.legend{gap:11px}.speechWords{margin:28px 0}.controlBar .secondary{flex:1}footer{gap:16px}}.iconButton.round{border-radius:50%;background:#eef2f6;color:var(--muted)}.iconButton.round:hover{background:#e2e8ee;color:var(--ink)}.drawerHead h2{font-size:19px;color:var(--accent)}.accountBox{border:1.5px dashed var(--line);border-radius:var(--radiusSm);padding:16px;margin-bottom:24px;text-align:center}.accountLead{margin:0 0 13px;font-size:13px;color:var(--muted);line-height:1.55}.accountFine{margin:11px 0 0;font-size:11.5px;color:var(--faint)}.googleButton{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--card);border:1px solid var(--line);border-radius:var(--btn);padding:11px 16px;font-size:14px;font-weight:700;color:var(--ink)}.googleButton:hover:not(:disabled){border-color:var(--lineStrong);background:var(--hover)}.googleButton:disabled{opacity:.6;cursor:default}.modalError{color:var(--red);font-size:12.5px;margin:10px 0 0}.accountWho{display:flex;align-items:center;gap:11px;text-align:left}.accountWho b{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis}.accountWho span{display:block;font-size:12px;color:var(--faint);overflow:hidden;text-overflow:ellipsis}.accountAvatar{flex:none;width:38px;height:38px;border-radius:50%;overflow:hidden;background:var(--accent);color:var(--onAccent);display:grid;place-items:center;font-weight:700}.accountAvatar img{width:100%;height:100%;object-fit:cover;display:block}.accountOut{width:100%;margin-top:13px}.field{margin-bottom:22px}.field>label{display:block;font-size:15px;font-weight:700;margin-bottom:9px}.fieldNote{margin:8px 0 0;font-size:12.5px;color:var(--faint);line-height:1.55}.swatchRow{display:flex;flex-wrap:wrap;gap:9px}.swatch{width:32px;height:32px;border-radius:50%;border:0;padding:0;display:grid;place-items:center;color:#fff}.swatch svg{opacity:0;transition:opacity .12s}.swatch[aria-pressed=true] svg{opacity:1}.swatch:hover{transform:scale(1.08)}@media(prefers-reduced-motion:reduce){.swatch:hover{transform:none}}.stage{width:100vw;margin-left:calc(50% - 50vw);background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 16px 26px;margin-bottom:14px}.stageMeter{display:flex;justify-content:center;gap:clamp(18px,5vw,40px);margin-bottom:22px}.stageMeter div{text-align:center}.stageMeter b{display:block;font-size:19px;font-weight:700;line-height:1.1;color:var(--accentInk);font-variant-numeric:tabular-nums}.stageMeter span{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.stageView{--lines: 3;height:calc(var(--lines) * 1.75em);overflow:hidden;position:relative;font-weight:600;font-size:clamp(19px,3.2vw,28px);line-height:1.75em;max-width:var(--maxw);margin:0 auto;-webkit-mask-image:linear-gradient(#000 0 72%,transparent 100%);mask-image:linear-gradient(#000 0 72%,transparent 100%)}.stageTrack{display:flex;flex-wrap:wrap;justify-content:center;gap:0 .5em;transition:transform .25s ease}.stageTrack .w{position:relative;color:var(--dim);line-height:1.75em;transition:color .1s}.stageTrack .w.said{color:var(--ink)}.stageTrack .w.miss{color:var(--red);text-decoration:underline wavy var(--red);text-underline-offset:.18em;text-decoration-thickness:2px}.stageTrack .w.at{color:var(--accentInk)}.stageTrack .w.at:before{content:"";position:absolute;left:-.18em;top:.38em;bottom:.38em;width:3px;border-radius:2px;background:var(--accent);animation:caret 1s steps(1) infinite}@keyframes caret{50%{opacity:0}}.stageOrb{display:flex;flex-direction:column;align-items:center;gap:11px;margin-top:24px}.orb{position:relative;width:74px;height:74px;border-radius:50%;padding:0;display:grid;place-items:center;background:var(--accentTint);border:1px solid var(--line);color:var(--accentInk);transition:background .15s,color .15s}.orb:hover{border-color:var(--accent)}.orb.on{background:var(--red);border-color:var(--red);color:#fff}.orb .ring{position:absolute;inset:-1px;border-radius:50%;border:2px solid var(--accent);opacity:0;pointer-events:none}.orb.on .ring.slow{border-color:var(--red);animation:breathe 1.8s ease-out infinite}.orb.on .ring:not(.slow){border-color:var(--red);animation:ping .5s ease-out 1}@keyframes breathe{0%{transform:scale(1);opacity:.5}to{transform:scale(1.55);opacity:0}}@keyframes ping{0%{transform:scale(1);opacity:.8}to{transform:scale(1.3);opacity:0}}.stageSound{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px}.stageSound b{color:var(--ink)}.stageSound span{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.stageSound svg{color:var(--accentInk)}.stageHeard{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:8px;max-width:680px;margin:18px auto 0;font-size:13px}.stageHeard .label{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}.stageHeard .saidWords{display:flex;flex-wrap:wrap;gap:7px;color:var(--muted)}.stageHeard .saidWords em{font-style:normal;color:var(--faint)}.stageHeard .saidWords .last{color:var(--accentInk);font-weight:700}.stageHeard .wants{color:var(--faint)}.stageHeard .wants b{color:var(--muted)}.stageHint{text-align:center;color:var(--muted);font-size:13.5px;margin:18px auto 0;max-width:52ch}.stageError{color:var(--red)}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{background:var(--card);border:1px solid var(--line);border-radius:var(--btn);padding:8px 13px;font-size:13px;font-weight:600;color:var(--muted)}.chip:hover{border-color:var(--lineStrong);color:var(--ink)}.chip.on{background:var(--accentTint);border-color:var(--accent);color:var(--accentInk)}.practicePage .panel{margin-bottom:14px}@media(max-width:560px){.stageMeter{gap:14px}.stageView{--lines: 4 }}@media(prefers-reduced-motion:reduce){.stageTrack{transition:none}.orb .ring{animation:none!important}.stageTrack .w.at:before{animation:none}}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--scrollThumb) transparent}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollThumb);border-radius:99px;border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--scrollThumbHover);background-clip:content-box}::-webkit-scrollbar-corner{background:transparent}.drawerBody{scrollbar-gutter:stable}.avatarButton{flex:none;width:38px;height:38px;padding:0;border:0;background:transparent;border-radius:var(--btn);display:grid;place-items:center}.avatarButton:hover{background:var(--hover)}.avatarButton img,.avatarButton>span{width:22px;height:22px;border-radius:50%;object-fit:cover}.avatarButton img{display:block}.avatarButton>span{display:grid;place-items:center;background:var(--accent);color:var(--onAccent);font-size:10px;font-weight:700}:root[data-mode=dark]{--bg: #0e131a;--card: #161d26;--ink: #e8edf3;--muted: #97a5b6;--faint: #7f8fa3;--line: #263140;--lineStrong: #354354;--hover: #1e2733;--dim: #55647a;--brandTile: #ffffff;--brandBar: #0e5c66;--brandInk: #ffffff;--scrollThumb: #374454;--scrollThumbHover: #4a5a6d;--accentInk: color-mix(in srgb, var(--accent) 86%, white);--onAccent: #0d1218;--accentTint: color-mix(in srgb, var(--accent) 15%, var(--card));--accentHover: color-mix(in srgb, var(--accent) 70%, white);--amberTint: color-mix(in srgb, var(--amber) 15%, var(--card));--tipInk: #f2c073;--warnInk: #f2c073;--errTint: color-mix(in srgb, var(--red) 17%, var(--card));--errInk: #ff8fa8}:root[data-mode=dark] body:before{background:radial-gradient(20rem 20rem at 12% 18%,rgb(72 202 228 / .07),transparent 70%),radial-gradient(18rem 18rem at 86% 12%,rgb(245 158 11 / .05),transparent 70%),radial-gradient(22rem 22rem at 78% 78%,rgb(59 130 246 / .06),transparent 70%),radial-gradient(16rem 16rem at 20% 82%,rgb(22 163 74 / .05),transparent 70%)}:root[data-mode=dark] .orb.on{color:#fff}:root[data-mode=dark] .mic.live{box-shadow:0 0 0 8px color-mix(in srgb,var(--red) 22%,var(--card))}:root[data-mode=dark] .drawerOverlay{background:#0000008c}:root[data-mode=dark] .googleButton{background:var(--hover)}:root[data-mode=dark] .googleButton:hover:not(:disabled){background:var(--line)}.selectBox{position:relative}.selectTrigger{display:flex;align-items:center;gap:11px;width:100%;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--radiusSm);padding:12px 14px;font-size:14px;font-weight:600;color:var(--ink)}.selectTrigger:hover{border-color:var(--lineStrong)}.selectTrigger.open{border-color:var(--accent);box-shadow:0 0 0 3px var(--accentTint)}.selectIcon{display:grid;color:var(--muted);flex:none}.selectValue{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selectChev{display:grid;color:var(--muted);flex:none;transition:transform .15s}.selectChev.up{transform:rotate(180deg)}.selectList{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;margin:0;padding:6px;list-style:none;background:var(--card);border:1px solid var(--line);border-radius:var(--radiusSm);box-shadow:var(--liftMenu);max-height:260px;overflow-y:auto;animation:rise .13s ease-out}.selectOption{display:flex;align-items:center;gap:11px;cursor:pointer;padding:10px 12px;border-radius:10px;font-size:14px;font-weight:600;color:var(--ink)}.selectOption+.selectOption{margin-top:3px}.selectOption.active{background:var(--hover)}.selectOption.on{background:var(--accentInk);color:var(--onAccent)}.selectOption.on .selectIcon,.selectOption.on svg{color:var(--onAccent)}.selectOption.on.active{background:var(--accentHover)}@media(prefers-reduced-motion:reduce){.selectList{animation:none}.selectChev{transition:none}}.page{flex:1;max-width:900px;margin:0 auto;width:100%;padding:clamp(20px,4vw,44px) max(16px,3vw) 60px}.page h1{font-size:clamp(23px,2.4vw,30px);color:var(--accent);margin:5px 0 14px}.page h2{font-size:19px;margin:34px 0 10px}.page>p{color:var(--muted);line-height:1.75;font-size:14.5px}.pageLead{font-size:16px!important;line-height:1.7!important;max-width:62ch}.contactCard{padding:20px 22px}.contactCard p{margin:0;color:var(--muted);font-size:14.5px;line-height:1.7}.contactCard p+p{margin-top:10px}.page>p a,.contactCard a,.faqCard p a,.dashCard>p a{color:var(--accentInk);font-weight:600}.page>p a:hover,.contactCard a:hover,.faqCard p a:hover,.dashCard>p a:hover{text-decoration:underline}.appGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.appCard{display:block;padding:20px 22px;transition:border-color .15s}.appCard:hover{border-color:var(--accent)}.appTag{margin:0 0 6px;font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--accentInk)}.appCard h3{display:flex;align-items:center;gap:7px;margin:0 0 8px;font-size:17px}.appCard h3 svg{color:var(--faint)}.appCard:hover h3 svg{color:var(--accentInk)}.appCard p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.65}.donateCard{padding:24px 22px;text-align:center}.donateCard h3{display:flex;align-items:center;justify-content:center;gap:9px;margin:0 0 8px;font-size:17px}.donateCard h3 svg{color:var(--accentInk)}.donateCard>p{margin:0 auto 16px;color:var(--muted);font-size:14px;line-height:1.65;max-width:52ch}@media(max-width:720px){.appGrid{grid-template-columns:1fr}}.supportHero{text-align:center;max-width:58ch;margin:0 auto 34px}.supportHeart{color:#f4606c;display:block;margin:0 auto 12px}.supportPage h1{color:var(--ink);font-size:clamp(30px,3.3vw,40px);margin:0 0 14px}.supportHero>p{color:var(--muted);font-size:16px;line-height:1.75;margin:0}.supportGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.dashCard{position:relative;display:block;border:4px dashed var(--line);border-radius:24px;padding:26px 28px;background:color-mix(in srgb,var(--ink) 3%,var(--bg));transition:border-color .25s cubic-bezier(.4,0,.2,1),background-color .25s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1)}a.dashCard:hover{border-color:var(--accent);background:var(--accentTint);transform:translateY(-2px)}a.dashCard:hover .dashIcon{transform:scale(1.06)}.dashIcon{transition:transform .25s cubic-bezier(.4,0,.2,1)}.dashHead{display:flex;align-items:center;gap:18px;margin-bottom:18px}.dashIcon{flex:none;width:80px;height:80px;border-radius:16px;display:grid;place-items:center;color:var(--accentInk);background:var(--card);border:1px solid var(--line);overflow:hidden}.dashIcon img{width:60px;height:60px;display:block;border-radius:12px}.dashIcon.coffee{background:var(--amberTint);border-color:transparent;color:var(--amber)}.dashCard h2{display:flex;align-items:center;gap:8px;margin:0;font-size:24px;font-weight:600;line-height:1.2}.dashCard h2 svg{color:var(--faint)}a.dashCard:hover h2 svg{color:var(--accentInk)}.dashSub{margin:5px 0 0;font-size:14px;color:var(--muted)}.dashCard>p{margin:0;color:var(--muted);font-size:16px;line-height:1.75}.dashCard>p+p{margin-top:10px}.dashCta{margin-top:16px}.dashFine{font-size:13.5px!important;color:var(--faint)!important}.dashCentred{text-align:center}.dashCentred h2{justify-content:center;margin-bottom:12px}.supportSection{text-align:center;margin:40px 0 16px!important;font-size:19px}@media(max-width:720px){.supportGrid{grid-template-columns:1fr}}.dashLink{display:inline-block;margin-top:16px;font-size:14.5px;font-weight:600;color:var(--accentInk)}.dashLink:hover{text-decoration:underline}.promos{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:620px;margin:40px auto 0;text-align:left}.promo{position:relative;display:flex;flex-direction:column;overflow:hidden;border:2px dashed var(--line);border-radius:var(--radiusSm);background:#80808005;padding:14px 16px 12px;cursor:pointer;transition:border-color .25s cubic-bezier(.4,0,.2,1),background-color .25s cubic-bezier(.4,0,.2,1)}.promo:hover{border-color:var(--accent);background:var(--accentTint)}.promoClose{position:absolute;top:7px;right:7px;z-index:2;width:22px;height:22px;padding:0;display:grid;place-items:center;border:0;background:transparent;border-radius:6px;color:var(--faint);transition:background-color .15s,color .15s}.promoClose:hover{background:var(--hover);color:var(--ink)}.promoLogo{display:block;width:18px;height:18px;border-radius:4px;margin-bottom:8px}.promoTitle{overflow:hidden;white-space:nowrap;margin-bottom:5px;padding-right:20px;font-size:14px;font-weight:700;color:var(--ink);line-height:1.2;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4px,#000 calc(100% - 10px),transparent);mask-image:linear-gradient(90deg,transparent,#000 4px,#000 calc(100% - 10px),transparent)}.promoTrack{display:inline-flex;white-space:nowrap}.promoTrack.scrolling{will-change:transform;animation:promoScroll 15s linear infinite}.promoTrack.scrolling span{padding-right:2.5em}.promoTrack span{display:inline-block;flex-shrink:0}.promo:hover .promoTrack.scrolling{animation-play-state:paused}@keyframes promoScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.promoBlurb{margin:0 0 12px;font-size:12px;line-height:1.4;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.promoFoot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:9px;border-top:1px solid var(--line)}.promoFoot>span{font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--faint)}.promoLink{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--accentInk);transition:color .2s,text-decoration .2s}.promoLink:after{content:"";position:absolute;inset:0;z-index:1}.promo:hover .promoLink{text-decoration:underline}.promoRail{position:fixed;top:50%;transform:translateY(-50%);width:168px;display:grid;gap:12px;z-index:5}.promoRail.left{left:16px}.promoRail.right{right:16px}.promoRail .promo{height:150px}@media(max-width:1340px){.promoRail{display:none}}@media(max-width:560px){.promos{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.promoTrack.scrolling{animation:none}}.adsBox{border:1.5px dashed var(--line);border-radius:var(--radiusSm);padding:18px;margin-bottom:24px;text-align:center}.adsMark{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--accent);text-decoration:line-through}.adsPitch{margin:0 0 14px;font-size:13.5px;line-height:1.6;color:var(--ink)}.adsCta{width:100%}.adsFine{margin:12px 0 0;font-size:11.5px;line-height:1.6;color:var(--faint)}.adsOwned{border-style:solid;border-color:var(--accent);background:var(--accentTint)}.adsOwned p{margin:0;font-size:13.5px;color:var(--accentInk)}.storeHero{text-align:center;margin-bottom:30px}.storePage h1{color:var(--ink);font-size:clamp(26px,2.9vw,35px);margin:0 0 10px}.storeHero>p{color:var(--muted);font-size:16px;margin:0 0 18px}.trustRow{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.trustRow .pill{gap:7px;color:var(--muted)}.storeFrame{position:relative;border:1.5px solid var(--accent);border-radius:var(--radius);padding:30px 22px 24px;background:var(--accentTint)}.bestValue{position:absolute;top:-13px;left:22px;padding:5px 13px;border-radius:var(--pill);background:var(--accentInk);color:var(--onAccent);font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.bundleCta{position:absolute;top:-19px;right:22px;display:inline-flex;align-items:center;gap:7px;padding:10px 18px;border-radius:var(--btn);font-size:14px;font-weight:700;background:var(--accentInk);color:var(--onAccent)}.bundleCta:hover{background:var(--accentHover)}.bundleCta.muted,.bundleCta.owned{background:var(--card);color:var(--accentInk);border:1px solid var(--accent)}.storeGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:8px}.storeCard{background:color-mix(in srgb,var(--ink) 3%,var(--bg));border:1px solid var(--line);border-radius:24px;padding:20px;transition:border-color .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1)}.storeCard:hover{border-color:var(--accent);box-shadow:var(--liftMenu);transform:translateY(-3px)}.storeCard:hover .storeIcon{transform:scale(1.08)}.storeIcon{transition:transform .25s cubic-bezier(.4,0,.2,1)}.storeTop{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:14px}.storeIcon{width:46px;height:46px;border-radius:16px;display:grid;place-items:center}.storePrice{font-size:20px;font-weight:700;letter-spacing:-.01em}.storeCard h2{font-size:18px;font-weight:700;margin:0 0 6px}.storeBlurb{margin:0 0 14px;color:var(--muted);font-size:14px;line-height:1.6}.soonTag{display:inline-block;margin:0 0 12px;padding:4px 10px;border-radius:var(--pill);background:var(--amberTint);color:var(--warnInk);font-size:11px;font-weight:700}.storeFeatures{list-style:none;margin:0 0 18px;padding:14px 0 0;border-top:1px solid var(--line);display:grid;gap:10px}.storeFeatures li{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);line-height:1.5}.storeFeatures li>i{flex:none;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--green) 12%,transparent);color:var(--green)}.buyCta{width:100%;height:40px;padding:0 16px;font-size:16px;font-weight:600;border-radius:12px}.ownedTag{display:flex;align-items:center;justify-content:center;gap:7px;margin:0;padding:12px;font-size:14px;font-weight:700;color:var(--green)}.storeFine{text-align:center;color:var(--faint);font-size:12.5px;line-height:1.7;margin:30px auto 0;max-width:68ch;text-wrap:pretty}.storeFine a{color:var(--accentInk);font-weight:600}@media(max-width:780px){.storeGrid{grid-template-columns:1fr}.bundleCta{position:static;display:flex;justify-content:center;margin:0 0 18px}.storeFrame{padding-top:26px}}@media(prefers-reduced-motion:reduce){.dashCard,.storeCard,.faqRow,.promo,.primary,.secondary,.dashIcon,.storeIcon{transition:none!important;transform:none!important}}.dashClickable{cursor:pointer}.dashClickable:hover{border-color:var(--accent);transform:translateY(-2px)}.dashClickable .dashLink:after{content:"";position:absolute;inset:0}.dashClickable:hover .dashLink{text-decoration:underline}.dashClickable:hover .dashIcon{transform:scale(1.06)}.supportPage{max-width:1000px}.supportHero{max-width:700px}.storePage{max-width:820px;padding-left:16px;padding-right:16px}.storeHero{max-width:640px;margin-left:auto;margin-right:auto}.storePage h1{max-width:100%;text-wrap:balance}.faqHeading{text-align:center;font-size:20px;font-weight:700;margin:44px 0 16px}.faqList{display:flex;flex-direction:column;gap:8px;max-width:680px;margin:0 auto}.faqRow{border:1px solid var(--line);border-radius:16px;padding:18px 20px;background:color-mix(in srgb,var(--ink) 3%,var(--bg));transition:border-color .25s cubic-bezier(.4,0,.2,1)}.faqRow:hover{border-color:var(--accent)}.faqRow h3{display:flex;align-items:center;gap:10px;margin:0 0 6px;font-size:15px;line-height:1.4}.faqRow p{margin:0 0 0 27px;color:var(--muted);font-size:14px;line-height:1.65}.faqIcon{flex:none;color:var(--accentInk);display:grid}
