:root{--bg:#0b0b0d;--surface:#17171b;--surface-2:#222228;--text:#f4f4f6;--muted:#8e8e98;--accent:#4ade80;--good:#4ade80;--warning:#f59e0b;--critical:#f87171;--radius:14px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-height:100dvh;margin:0}h1,h2,p{margin:0}.app{max-width:560px;padding:calc(env(safe-area-inset-top) + 16px) 16px calc(env(safe-area-inset-bottom) + 24px);flex-direction:column;gap:12px;margin:0 auto;display:flex}.top{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:4px;display:flex}.top h1{font-size:34px;font-weight:700}.muted{color:var(--muted)}.hint{font-size:13px;line-height:1.4}.body-text{margin-bottom:10px;font-size:16px;line-height:1.45}.card{background:var(--surface);border-radius:var(--radius);flex-direction:column;gap:10px;padding:16px;display:flex}.card h2{font-size:20px}.notice{background:var(--surface-2);border-radius:var(--radius);padding:12px 14px;font-size:15px;line-height:1.4}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0}button:disabled{opacity:.35;cursor:default}.btn-primary,.btn-secondary{border-radius:var(--radius);width:100%;min-height:56px;font-size:17px;font-weight:600}.btn-primary{background:var(--accent);color:#0b0b0d}.btn-secondary{background:var(--surface-2)}.btn-primary:active,.btn-secondary:active,.btn-small:active,.tone-choice:active{opacity:.7}.btn-text{color:var(--accent);align-self:center;padding:10px 0;font-size:17px}.btn-small{background:var(--surface-2);border-radius:10px;flex-shrink:0;min-height:44px;padding:0 14px;font-size:15px}.is-danger{color:var(--critical)}button.btn-secondary.is-danger{background:var(--surface);box-shadow:inset 0 0 0 1px #f8717155}.actions{flex-direction:column;gap:10px;display:flex}.card-picker{justify-content:space-between;align-items:center;gap:8px;display:flex}.card-syllable{text-align:center;flex:1;font-size:56px;font-weight:700;line-height:1.1}.picker-arrow{background:var(--surface);border-radius:50%;flex-shrink:0;width:56px;height:56px;font-size:30px;line-height:1}.tone-rows{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tone-row{background:var(--surface);border-radius:var(--radius);flex-direction:column;gap:8px;padding:8px 12px 8px 16px;transition:box-shadow .15s;display:flex;box-shadow:inset 0 0 0 2px #0000}.tone-row.is-active{box-shadow:inset 0 0 0 2px var(--accent)}.tone-main{grid-template-columns:minmax(72px,auto) 1fr auto;grid-template-areas:"syllable result action""number result action";align-items:center;column-gap:12px;min-height:52px;display:grid}.tone-syllable{grid-area:syllable;font-size:24px;font-weight:600}.tone-number{grid-area:number;font-size:13px}.tone-result{grid-area:result;justify-content:flex-end;min-width:0;display:flex}.tone-main .btn-small{grid-area:action}.say-now{color:var(--accent);font-weight:600}.score{flex-direction:column;align-items:flex-end;gap:4px;width:72px;display:flex}.score-number{font-variant-numeric:tabular-nums;font-size:24px;font-weight:700;line-height:1}.score-number small{color:var(--muted);margin-left:1px;font-size:13px;font-weight:500}.score-bar{background:var(--surface-2);border-radius:2px;width:100%;height:4px;overflow:hidden}.score-bar i{background:var(--level);border-radius:2px;height:100%;display:block}.is-good{--level:var(--good)}.is-warning{--level:var(--warning)}.is-critical{--level:var(--critical)}.level-meter{background:var(--surface-2);border-radius:3px;height:6px;overflow:hidden}.level-meter>div{background:var(--muted);height:100%;transition:width 50ms linear}.level-meter.is-speaking>div{background:var(--accent)}.details{border-top:1px solid var(--surface-2);flex-direction:column;align-items:flex-start;gap:8px;padding:8px 0 6px;display:flex}.details-line{font-size:13px;line-height:1.4}.pitch-chart{width:100%;margin:0}.pitch-chart svg{width:100%;height:auto;display:block}.pitch-grid{stroke:var(--surface-2);stroke-width:1px}.pitch-axis{fill:var(--muted);font-size:11px}.pitch-measured{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.pitch-target{fill:none;stroke:var(--muted);stroke-width:2px;stroke-dasharray:2 5;stroke-linecap:round}.pitch-legend{color:var(--muted);gap:16px;margin-top:2px;padding-left:34px;font-size:12px;display:flex}.pitch-legend span{align-items:center;gap:6px;display:flex}.swatch{border-top:2px solid var(--accent);width:18px;height:0;display:inline-block}.swatch-target{border-top:2px dotted var(--muted)}.progress{background:var(--surface-2);border-radius:2px;height:4px;overflow:hidden}.progress>div{background:var(--accent);height:100%;transition:width .3s}.prompt{text-align:center;flex-direction:column;align-items:stretch;gap:10px;padding:24px 0;display:flex}.prompt-syllable{font-size:72px;font-weight:700;line-height:1.1}.tone-choices{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tone-choice{border-radius:var(--radius);background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:84px;font-size:28px;font-weight:600;display:flex}.tone-choice small{font-size:13px;font-weight:400}.unsure{color:var(--muted)}.result-number{font-variant-numeric:tabular-nums;font-size:64px;font-weight:800;line-height:1}.is-good-text{color:var(--good)}.is-warning-text{color:var(--warning)}.stat-list{flex-direction:column;gap:8px;margin:0;display:flex}.stat-list>div{justify-content:space-between;align-items:baseline;gap:16px;font-size:15px;display:flex}.stat-list dd{font-variant-numeric:tabular-nums;margin:0;font-weight:700}.matrix{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.matrix caption{text-align:left;padding-bottom:8px;font-size:13px}.matrix th,.matrix td{text-align:center;border:1px solid var(--surface-2);padding:8px}.matrix th{color:var(--muted);font-weight:600}.matrix .is-match{background:var(--surface-2);font-weight:700}.disagreements{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.disagreement-row{align-items:center;gap:12px;font-size:15px;display:flex}.disagreement-row .muted{flex:1;font-size:13px}.new-check{margin-top:4px}.segmented{gap:8px;display:flex}.choice{background:var(--surface-2);border-radius:999px;flex:1;min-height:44px;padding:0 14px;font-size:15px}.choice.is-selected{background:var(--text);color:#0b0b0d;font-weight:600}.setting-line{font-size:15px;line-height:1.4}.toggle{align-items:flex-start;gap:10px;min-height:44px;font-size:15px;line-height:1.4;display:flex}.toggle input{width:20px;height:20px;accent-color:var(--accent);flex-shrink:0;margin:0}.export,.confirm{flex-direction:column;gap:8px;display:flex}.tab-bar{padding:6px 8px calc(env(safe-area-inset-bottom) + 6px);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--surface-2);z-index:10;background:#0b0b0de0;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tab-bar button{max-width:140px;color:var(--muted);flex-direction:column;flex:1;align-items:center;gap:3px;padding:4px 0;font-size:11px;font-weight:500;display:flex}.tab-bar button.is-selected{color:var(--accent)}.tab-bar svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.app:has(+.tab-bar){padding-bottom:calc(env(safe-area-inset-bottom) + 88px)}
