@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(./atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2)format("woff2"),url(./atkinson-hyperlegible-latin-400-normal-BbWidj28.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(./atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2)format("woff2"),url(./atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff)format("woff")}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:400;src:url(./andika-latin-400-normal-BTFTIZb-.woff2)format("woff2"),url(./andika-latin-400-normal-BK42By1L.woff)format("woff")}@font-face{font-family:Andika;font-style:italic;font-display:swap;font-weight:400;src:url(./andika-latin-400-italic-zX21t472.woff2)format("woff2"),url(./andika-latin-400-italic-Dbc60mxu.woff)format("woff")}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:700;src:url(./andika-latin-700-normal-Dk95f5lc.woff2)format("woff2"),url(./andika-latin-700-normal-CAUSQC6x.woff)format("woff")}:root{--shell:#fbf8f4;--white:#fff;--paper:#efeae3;--ink:#241f1b;--muted:#6b6259;--quiet:#9a9188;--gold:#c9a659;--gold-lit:#dfc183;--gold-text:#8a6a1f;--gold-wash:#f4efe2;--checked:#3d6b4a;--wash:linear-gradient(135deg,#fdf1e9 0%,#fbf6e4 28%,#edf6ee 58%,#f0ecf8 100%);--wash-peach:#fdf1e9;--wash-cream:#fbf6e4;--wash-mint:#edf6ee;--wash-lilac:#f0ecf8;--wash-orange:#fae0c9;--mic-idle:#b5533c;--mic-recording:#3d6b4a;--session-start:#3d6b4a;--session-end:#de8c42;--line:#dcd5cb;--card-line:#241f1b1a;--radius:12px;--radius-sm:10px;--shadow:0 2px 10px #241f1b12;--font-ui:"Atkinson Hyperlegible", system-ui, -apple-system, sans-serif;--font-read:"Andika", "Atkinson Hyperlegible", system-ui, sans-serif}*{box-sizing:border-box}html,body{background:var(--shell);margin:0;padding:0}body{font-family:var(--font-ui);color:var(--ink);-webkit-font-smoothing:antialiased;max-width:760px;margin:0 auto;padding:22px 18px 72px;font-size:16px;line-height:1.5}.app-head{align-items:center;gap:14px;display:flex}.coin{flex:none;width:44px;height:44px;margin:11px;display:block}.app-head-text{min-width:0}h1{letter-spacing:-.01em;margin:0;font-size:25px;font-weight:700}.tagline{color:var(--muted);margin:10px 0 20px;font-size:16px}.sync-status{color:var(--muted);align-items:center;gap:7px;margin:3px 0 0;font-size:16px;display:flex}.sync-dot{background:var(--gold);border-radius:50%;flex:none;width:8px;height:8px}.sync-dot.connected{background:var(--checked)}.sync-dot.error{background:var(--ink)}.banner{background:var(--gold-wash);border:1px solid var(--gold);border-radius:var(--radius);color:var(--ink);margin-bottom:16px;padding:13px 15px;font-size:16px;display:none}.banner.show{display:block}.banner code{background:#241f1b0f;border-radius:4px;padding:1px 5px;font-size:16px}.warn-block{background:var(--gold-wash);border:1px solid var(--gold);border-radius:var(--radius);color:var(--ink);border-left-width:3px;align-items:flex-start;gap:10px;margin-top:12px;padding:12px 14px;font-size:16px;line-height:1.55;display:flex}.warn-block .warn-icon{color:var(--gold-text);font-size:16px;line-height:1.35}.warn-block b{color:var(--ink);font-weight:700}.tabs{scrollbar-width:none;flex-wrap:wrap;align-items:center;gap:9px 26px;margin-bottom:20px;padding-bottom:4px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab-group{flex:none;align-items:center;gap:7px;display:flex}.tab{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);min-height:44px;color:var(--muted);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;padding:11px;font-family:inherit;font-size:15px;font-weight:700;line-height:1.2;transition:background .12s,color .12s;display:flex}.tab:hover{border-color:var(--ink);color:var(--ink)}.tab.active{background:var(--ink);border-color:var(--ink);color:var(--white)}.tab[data-tab=practice],.tab[data-tab=sentences],.tab[data-tab=reading]{background:var(--wash-mint)}.tab[data-tab=corrections]{background:var(--wash-peach)}.tab[data-tab=bank]{background:var(--wash-orange)}.tab.active[data-tab]{background:var(--ink)}.tab-group-giraffe{margin-right:auto}.tab-giraffe{background:0 0;border:none;flex:none;justify-content:center;align-items:center;width:88px;height:88px;min-height:0;padding:0;display:flex;position:relative}.tab-giraffe:hover{border:none}.tab-giraffe .fg{width:59px;height:66px;display:block;position:relative}.fg-layer{width:100%;height:100%;position:absolute;inset:0}.fg-wing,.fg-wing-ink{transform-origin:52.4% 38.3%}.fg-wing{animation:.95s ease-in-out infinite fg-flap}@keyframes fg-flap{0%,to{transform:rotate(0)scaleY(1)}35%{transform:rotate(-34deg)scaleY(.9)}70%{transform:rotate(16deg)scaleY(1.04)}}.fg-body-ink,.fg-wing-ink{background:var(--ink);display:none;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.fg-body-ink{-webkit-mask-image:url(../giraffe-body.png);mask-image:url(../giraffe-body.png)}.fg-wing-ink{-webkit-mask-image:url(../giraffe-wing.png);mask-image:url(../giraffe-wing.png)}.tab-giraffe-sm{width:64px;height:64px}.tab-giraffe-sm .fg{width:43px;height:48px}.tab-giraffe-sm .fg-body,.tab-giraffe-sm .fg-wing{filter:sepia(.75)saturate(1.7)hue-rotate(-18deg)brightness(1.06)}.tab-giraffe-sm.active .fg-body,.tab-giraffe-sm.active .fg-wing{filter:none}.tab.tab-giraffe.active{box-shadow:none;background:0 0}.tab-giraffe.active .fg-body,.tab-giraffe.active .fg-wing{display:none}.tab-giraffe.active .fg-body-ink,.tab-giraffe.active .fg-wing-ink{display:block}@media (prefers-reduced-motion:reduce){.fg-wing{animation:none}}.card{background:var(--white);border:1px solid var(--card-line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:20px}.section-title{margin:0 0 8px;font-size:16px;font-weight:700}.eyebrow{color:var(--muted);margin:20px 0 9px;font-size:15px;font-weight:700}.card>.eyebrow:first-child,.phonic-panel>.eyebrow:first-child,.fix-panel>.eyebrow:first-child{margin-top:0}.sub{color:var(--muted);margin:0 0 14px;font-size:16px}.empty-note{color:var(--muted);font-size:16px}.centre-row{justify-content:center;margin-top:12px;display:flex}.centre-col{flex-direction:column;align-items:center;gap:8px}.right-row{text-align:right;margin-top:12px}.btn{border-radius:var(--radius-sm);cursor:pointer;min-height:44px;color:var(--ink);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:11px 17px;font-family:inherit;font-size:16px;font-weight:700;display:inline-flex}.btn-primary{background:var(--ink);color:var(--white);border-color:var(--ink)}#startSessionBtn{background:var(--session-start);border-color:var(--session-start);color:var(--white)}#endSessionBtn{background:var(--session-end);border-color:var(--session-end);color:var(--ink)}.btn-outline,.btn-ghost{background:var(--white);border-color:var(--line);color:var(--ink)}.btn-outline:hover,.btn-ghost:hover{border-color:var(--ink)}.btn-gold{background:var(--gold-wash);border-color:var(--gold);color:var(--ink)}.btn-link{color:var(--muted);padding:11px 8px;text-decoration:underline}.btn-link:hover{color:var(--ink)}.btn:disabled{opacity:.45;cursor:not-allowed}.link-row{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.footer-row{flex-wrap:wrap;gap:10px;display:flex}.file-btn{cursor:pointer;position:relative}.file-btn input{display:none}.row{flex-wrap:wrap;gap:9px;display:flex}input[type=text],textarea,select{color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;min-height:44px;padding:12px 13px;font-family:inherit;font-size:16px}input[type=text]:focus,textarea:focus,select:focus{outline:2px solid var(--gold);outline-offset:1px}textarea{resize:vertical;min-height:80px;line-height:1.5}::placeholder{color:var(--muted)}.reading-input{font-family:var(--font-read);min-height:118px;font-size:17px}.session-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.session-stat{color:var(--muted);font-size:16px}.session-stat b{color:var(--ink)}.session-buttons{gap:9px;display:flex}.session-summary{text-align:center;padding:14px 0 4px}.session-summary .big{color:var(--ink);font-size:34px;font-weight:700}.session-note,.session-log{color:var(--muted);font-size:16px}.session-log div{padding:4px 0}.focus-toggle{border-top:1px solid var(--line);cursor:pointer;align-items:center;gap:10px;min-height:44px;margin-top:15px;padding-top:14px;font-size:16px;display:flex}.focus-toggle input{width:19px;height:19px;min-height:0;accent-color:var(--ink);flex:none}.focus-count{color:var(--muted);font-size:16px}.practice-word{text-align:center;padding:26px 18px 22px}.word-row{justify-content:center;align-items:center;gap:12px;display:flex}.word{font-family:var(--font-read);color:var(--ink);font-size:48px;font-weight:700;line-height:1.15}.hint{color:var(--muted);margin-top:8px;font-size:16px}.speak-btn{cursor:pointer;background:var(--white);border:1px solid var(--line);border-radius:50%;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.speak-btn:hover{border-color:var(--ink)}.speak-btn svg{width:19px;height:19px;fill:var(--ink)}.repeat-dots,.clean-dots{justify-content:center;gap:8px;margin-top:14px;display:flex}.repeat-dot{border:2px solid var(--line);background:var(--white);border-radius:50%;width:19px;height:19px;position:relative}.repeat-dot.filled{background:var(--checked);border-color:var(--checked)}.repeat-dot.filled:after{content:"✓";color:var(--white);text-align:center;font-size:12px;font-weight:700;line-height:15px;position:absolute;inset:0}.repeat-dot:not(.filled):first-child,.repeat-dot.filled+.repeat-dot:not(.filled){border-color:var(--gold);box-shadow:0 0 0 2px var(--gold-wash)}.mic-btn{background:var(--mic-idle);cursor:pointer;border:none;border-radius:50%;width:84px;height:84px;margin:20px auto 0;transition:transform .1s,background .15s;display:block;position:relative}.mic-btn svg{width:33px;height:33px;fill:var(--white)}.mic-btn:active{transform:scale(.97)}.mic-btn-sm{width:60px;height:60px}.mic-btn-sm svg{width:24px;height:24px}.mic-btn.listening{background:var(--mic-recording);animation:1.2s cubic-bezier(.4,.05,.6,.95) infinite ring}@keyframes ring{0%{box-shadow:0 0 #3d6b4abf}70%{box-shadow:0 0 0 17px #3d6b4a00}to{box-shadow:0 0 #3d6b4a00}}.mic-btn.working{background:var(--gold);animation:none}.mic-btn.working:after{content:"";border:3px solid var(--gold-lit);border-top-color:var(--gold-text);border-radius:50%;animation:.9s linear infinite spin;position:absolute;inset:-7px}.mic-label.working,.capture-label.working{color:var(--gold-text);font-weight:700}.mic-label.working:before,.capture-label.working:before{content:"";vertical-align:-1px;border:2px solid var(--gold-lit);border-top-color:var(--gold-text);border-radius:50%;width:12px;height:12px;margin-right:7px;animation:.9s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.practice-word:has(.heard-box.show #matchActions:not(:empty)) .mic-btn{background:var(--quiet)}.mic-label{text-align:center;color:var(--muted);margin-top:10px;font-size:16px}.heard-box{border-radius:var(--radius);text-align:center;background:var(--paper);border:1px solid var(--line);margin-top:20px;padding:16px;display:none}.heard-box.show{display:block}:is(.heard-box:has(.match-no),.heard-box:has(.match-close)){background:var(--gold-wash);border-color:var(--gold)}.heard-text{font-family:var(--font-read);margin-top:4px;font-size:20px;font-weight:700}.match-yes{color:var(--checked)}.match-no,.match-close{color:var(--ink)}.action-row{flex-wrap:wrap;justify-content:center;gap:9px;margin-top:15px;display:flex}.sentence-text{font-family:var(--font-read);text-align:center;padding:8px 4px 2px;font-size:25px;font-weight:700;line-height:1.55}.sentence-nav{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-top:16px;font-size:16px;display:flex}.read-out{font-family:var(--font-read);background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);min-height:54px;padding:15px;font-size:19px;line-height:1.75}.wtok{cursor:pointer;border-radius:3px;padding:1px 2px}.wtok:hover{background:var(--gold-wash)}.wtok.match,.wtok.fixed{color:var(--ink)}.wtok.fixed:before{content:"✓ ";color:var(--checked);font-weight:700}.wtok.mismatch{color:var(--ink);border-bottom:2px dotted var(--ink)}.wtok.mismatch:before{content:"✗ ";color:var(--ink);font-size:.85em;font-weight:700}.wtok.close{color:var(--gold-text);border-bottom:2px dotted var(--gold)}.wtok.close:before{content:"≈ ";font-weight:700}.wtok.missing{color:var(--muted);cursor:default;text-decoration:line-through}.wtok.missing:hover{background:0 0}.wtok.extra{color:var(--muted);font-style:italic}.wtok.extra:before{content:"+ ";font-style:normal}.wtok.suggest{color:var(--gold-text);border-bottom:2px dotted var(--gold)}.wtok.suggest:before{content:"≈ ";font-weight:700}.wtok.ctx-fixed{color:var(--gold-text);border-bottom:2px solid var(--gold);font-weight:700}.wtok.ctx-fixed:before{content:"→ ";font-weight:700}.wtok.ctx-original{color:var(--muted);border-bottom:2px dashed var(--muted);font-weight:400}.wtok.ctx-original:before{content:"↩ ";font-weight:700}.unread-run{background:var(--gold-wash);border-left:3px solid var(--gold);border-radius:0 var(--radius-sm) var(--radius-sm) 0;-webkit-box-decoration-break:clone;box-decoration-break:clone;margin-left:1px;padding:1px 5px 1px 7px}.unread-run:before{content:"? ";color:var(--gold-text);font-weight:700}.sheet-title{width:100%;font-family:var(--font-read);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);color:var(--ink);padding:13px 14px;font-size:20px}.sheet-title:focus{outline:2px solid var(--gold)}.sheet-actions{margin-top:12px}.sheet-list{margin-top:4px}.sheet-row{align-items:center;gap:8px;padding:5px 0;display:flex}.sheet-open{text-align:left;font-family:var(--font-read);flex:1}.sheet-foot{flex-direction:column;gap:10px;display:flex}.qa-card{border-left:4px solid var(--gold-lit)}.qa-head{align-items:center;gap:10px;margin-bottom:12px;display:flex}.qa-number{font-size:19px;font-family:var(--font-ui);flex:1;margin:0}.question-box{width:100%;min-height:96px;font-family:var(--font-read);border:2px dashed var(--gold);border-radius:var(--radius-sm);background:var(--white);color:var(--ink);resize:vertical;padding:14px;font-size:19px;line-height:1.7}.question-box:focus{outline:2px solid var(--gold);border-style:solid}.read-along{font-family:var(--font-read);border-radius:var(--radius-sm);background:var(--gold-wash);border:1px solid var(--gold-lit);color:var(--ink);margin-top:10px;padding:11px 13px;font-size:19px;line-height:1.9;display:none}.read-along.show{display:block}.along-word.saying,.wtok.saying{background:var(--gold-lit);box-shadow:0 2px 0 0 var(--gold-text);color:var(--ink);border-radius:3px}.icon-btn.reading{background:var(--gold-wash);border-color:var(--gold)}.interim{font-family:var(--font-read);border-radius:var(--radius-sm);background:var(--paper);border:1px dashed var(--line);color:var(--muted);margin-top:11px;padding:11px 13px;font-size:19px;font-style:italic;line-height:1.75;display:none}.interim.show{display:block}.interim:before{content:"…";font-style:normal}.interim-word{text-align:center;max-width:420px;margin:11px auto 0}.icon-btn{border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;width:48px;height:48px;padding:0;display:flex}.icon-btn svg{width:24px;height:24px;fill:var(--ink)}.icon-btn:hover{border-color:var(--ink)}.icon-btn:active{transform:scale(.96)}.read-note{font-size:16px;font-weight:700;font-family:var(--font-ui);margin-top:12px}.read-note.clean{color:var(--checked)}.write-note{color:var(--checked);margin-top:11px;font-size:16px}.write-note:empty{margin:0}.out-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:13px;display:flex}.copy-note{color:var(--checked);font-size:16px;line-height:1.55}.copy-note.warn{color:var(--gold-text);font-weight:700}.context-note{color:var(--muted);margin-top:11px;font-size:16px;line-height:1.55;display:none}.context-note.show{display:block}.context-note .code-hint{color:var(--muted)}.context-note .retry-read{font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--gold);border-radius:var(--radius-sm);cursor:pointer;margin-left:8px;padding:5px 11px;font-weight:700;display:inline-block}.context-note .retry-read:hover{border-color:var(--ink)}.context-note .retry-read:disabled{opacity:.45;cursor:not-allowed}.context-note.warn{color:var(--ink);background:var(--gold-wash);border:1px solid var(--gold);border-radius:var(--radius);border-left-width:3px;padding:12px 14px}.context-log{color:var(--muted);font-size:16px}.context-log .ctx-row{border-top:1px solid var(--card-line);padding:7px 0;line-height:1.55}.context-log .ctx-row:first-child{border-top:none}.context-log b{color:var(--ink)}.context-log .ctx-reason{color:var(--muted);display:block}.context-log .ctx-undone{color:var(--gold-text);font-weight:700}.fix-panel,.phonic-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);text-align:left;margin-top:16px;padding:16px;display:none}.fix-panel.show,.phonic-panel.show{display:block}.fix-panel-float{z-index:40;background:var(--white);border-color:var(--gold);width:min(520px,100vw - 28px);margin-top:0;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #241f1b38}.fix-panel input,.phonic-panel input{margin:0 0 10px}#fixingWord{color:var(--ink);text-transform:none;letter-spacing:0}.manual-add{flex-wrap:wrap;gap:9px;display:flex}.manual-add input{flex:1;min-width:130px}.manual-add .btn{flex:none}.capture-row{flex-wrap:wrap;align-items:center;gap:11px;margin-top:11px;display:flex}.capture-label{color:var(--muted);font-size:16px}.capture-hint{color:var(--muted);margin:9px 0 0;font-size:16px;line-height:1.55}.btn-mic{fill:currentColor;width:16px;height:16px}.btn.listening{background:var(--gold-wash);border-color:var(--gold);color:var(--ink)}.phonic-note{color:var(--muted);margin:11px 0 0;font-size:16px;line-height:1.55}.phonic-note:empty{margin:0}.phonic-row{border-bottom:1px solid var(--line);padding:15px 0}.phonic-row:last-child{border-bottom:none}.phonic-row .head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.phonic-row .word{font-family:var(--font-ui);font-size:16px;font-weight:700}.phonic-row .keys{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px}.spellings{flex-wrap:wrap;align-items:center;gap:8px;margin-top:11px;display:flex}.spelling{background:var(--white);border:1px solid var(--line);border-radius:999px;align-items:center;gap:7px;min-height:36px;padding:5px 8px 5px 13px;font-size:16px;display:inline-flex}.spelling.loose{border-color:var(--gold);color:var(--ink)}.spelling button{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:2px 5px;font-size:17px;line-height:1}.spelling button:hover{color:var(--ink)}.add-spelling{background:var(--white);border:1px dashed var(--line);min-height:36px;color:var(--muted);cursor:pointer;border-radius:999px;padding:7px 13px;font-family:inherit;font-size:16px}.add-spelling:hover{border-color:var(--ink);color:var(--ink)}.practice-this{color:var(--gold-text);cursor:pointer;background:0 0;border:none;min-height:36px;padding:6px 4px;font-family:inherit;font-size:16px;font-weight:700;text-decoration:underline}.count{color:var(--ink);font-size:30px;font-weight:700}.count span{color:var(--muted);font-size:16px;font-weight:400}.bar-track{background:var(--paper);border:1px solid var(--line);border-radius:999px;height:11px;margin-top:12px;overflow:hidden}.bar-fill{background:linear-gradient(90deg,var(--gold),var(--gold-lit));height:100%;transition:width .4s}.bank-controls{margin-bottom:14px}.bank-row{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:13px;font-size:16px;display:flex}.bank-row:last-child{border-bottom:none}.bank-row.pending{background:var(--gold-wash);border-left:3px solid var(--gold);border-radius:var(--radius-sm);margin-bottom:6px}.bank-row .pair{color:var(--muted)}.bank-row .pair b,.pending-note{color:var(--ink);font-weight:700}.del-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;min-height:36px;padding:6px 4px;font-family:inherit;font-size:16px;text-decoration:underline}.del-btn:hover{color:var(--ink)}.del-btn.affirm{color:var(--gold-text);font-weight:700}.lang-select{appearance:none;background-image:none}.lang-select:focus{outline:2px solid var(--gold)}.setting-title{font-family:var(--font-ui);color:var(--ink);margin:22px 0 4px;font-size:17px}.slider-row{flex-wrap:wrap;align-items:center;gap:11px;margin-top:4px;display:flex}.slider-row .lang-select{flex:1;min-width:200px}.rate-slider{min-width:190px;height:44px;accent-color:var(--gold-text);flex:1}.rate-slider:focus{outline:2px solid var(--gold)}.switch-row{cursor:pointer;align-items:center;gap:11px;margin:10px 0;font-size:17px;display:flex}.switch-row input{width:24px;height:24px;accent-color:var(--checked);flex:none}.switch-row input:disabled+span{color:var(--muted)}.score-list{margin-top:10px;font-size:16px}.score-row{border-top:1px solid var(--card-line);flex-wrap:wrap;align-items:center;gap:10px;padding:6px 0;display:flex}.score-row:first-child{border-top:none}.score-value{font-family:var(--font-read);min-width:66px;font-size:18px}.score-when{color:var(--muted);flex:1}.score-tag.chosen{color:var(--ink);font-weight:700;text-decoration:none}.score-row.tagged-her{background:var(--gold-wash);box-shadow:inset 3px 0 0 0 var(--checked)}.score-row.tagged-other{background:var(--paper);box-shadow:inset 3px 0 0 0 var(--quiet)}.enrol-timer{border-radius:var(--radius);background:var(--paper);border:1px solid var(--line);font-variant-numeric:tabular-nums;color:var(--ink);margin:10px 0 0;padding:10px 14px;font-size:1.15rem;font-weight:700}.enrol-timer.enough{border-color:var(--moss,#3d6b4a);color:var(--moss,#3d6b4a)}.enrol-timer[hidden]{display:none}.cal-step{color:var(--ink);margin:4px 0 12px;font-size:1.05rem;font-weight:700}.score-groups{flex-wrap:wrap;gap:14px;margin-top:12px;display:flex}.score-group{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);flex:1;min-width:150px;padding:10px 12px}.score-group-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#6b6259);margin:0 0 8px;font-size:.8rem}.cal-verdict{margin-top:12px}.cal-ranges{font-variant-numeric:tabular-nums;white-space:pre-wrap;margin-bottom:6px;font-weight:700}.cal-ok,.cal-warn,.cal-wait{border-left:4px solid var(--line);padding:8px 0 8px 12px;font-size:.95rem}.cal-ok{border-left-color:var(--moss,#3d6b4a)}.cal-warn{border-left-color:var(--rose,#b4534a);font-weight:700}.cal-wait{color:var(--muted,#6b6259);border-left-style:dashed}.voice-refused{z-index:45;background:var(--white);border:1px solid var(--rose,#b4534a);border-left:5px solid var(--rose,#b4534a);border-radius:var(--radius);text-align:left;width:min(520px,100vw - 28px);padding:14px 16px;display:none;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #241f1b38}.voice-refused.show{display:block}.voice-refused b{font-size:1.05rem;display:block}.voice-refused .voice-off{margin-top:10px}.voice-refused b{flex:1;min-width:220px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.phonic-row .keys{background:var(--paper);border-radius:4px;padding:2px 6px}.entry{z-index:20;background:var(--wash);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.entry[hidden]{display:none}.entry-card{background:var(--white);border:1px solid var(--card-line);border-radius:var(--radius);text-align:center;width:100%;max-width:400px;padding:34px 28px 28px;box-shadow:0 8px 26px #241f1b1a}.entry-coin{width:104px;height:104px;margin:0 auto 18px;display:block}.wordmark{text-transform:uppercase;letter-spacing:.3em;color:var(--muted);margin:0 0 10px;padding-left:.3em;font-size:15px;font-weight:700}.entry-title{margin:0 0 22px;font-size:27px;font-weight:700}.entry-label{text-align:left;color:var(--muted);margin-bottom:8px;font-size:15px;font-weight:700;display:block}.entry-go{width:100%;margin-top:14px}.entry-error{color:var(--mic-idle);text-align:left;min-height:0;margin:9px 0 0;font-size:16px}.entry-error:empty{display:none}.entry-meta{color:var(--muted);margin:18px 0 0;font-size:16px;line-height:1.55}
