:root{--bg:#0f172a;--panel:#1e293b;--text:#f1f5f9;--muted:#94a3b8;--accent:#38bdf8;--accent-ink:#082f49;--danger:#ef4444}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}main{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 16px max(24px, env(safe-area-inset-bottom));flex-direction:column;gap:24px;max-width:520px;margin:0 auto;display:flex}h1{margin:0;font-size:22px}.muted{color:var(--muted);font-size:14px}.error{color:#fca5a5;font-size:14px}.talk{aspect-ratio:1;background:var(--accent);width:min(64vw,260px);color:var(--accent-ink);border:0;border-radius:50%;margin:auto;font-size:36px;font-weight:700;box-shadow:0 0 0 12px #38bdf826}.talk:disabled{opacity:.6}.stop{aspect-ratio:1;background:var(--danger);color:#fff;border:0;border-radius:50%;width:min(64vw,260px);margin:auto;font-size:34px;font-weight:700}.status{text-align:center;font-size:18px}.timer{text-align:center;font-variant-numeric:tabular-nums;color:var(--muted)}.transcript{text-align:left;direction:ltr;flex-direction:column;gap:8px;display:flex}.line{background:var(--panel);border-radius:12px;padding:8px 12px;font-size:15px}.line.coach{border-inline-start:3px solid var(--accent)}.line b{color:var(--muted);margin-inline-end:6px;font-weight:600}details summary{color:var(--muted);cursor:pointer}form{flex-direction:column;gap:12px;margin-top:20vh;display:flex}input{border:1px solid var(--panel);background:var(--panel);color:var(--text);border-radius:12px;padding:14px;font-size:18px}button.primary{background:var(--accent);color:var(--accent-ink);border:0;border-radius:12px;padding:14px;font-size:18px;font-weight:700}.styles{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.style{border:2px solid var(--panel);background:var(--panel);color:var(--text);border-radius:14px;padding:16px 6px;font-size:16px}.style[aria-pressed=true]{border-color:var(--accent)}.summary{flex-direction:column;gap:16px;display:flex}.summary h2{margin:0;font-size:20px}.summary h3{color:var(--muted);margin:0 0 6px;font-size:15px;font-weight:600}.block{background:var(--panel);border-radius:14px;padding:14px}.en{text-align:left;direction:ltr}.en-inline{direction:ltr;unicode-bidi:isolate}.summary ul{flex-direction:column;gap:4px;margin:0;padding-inline-start:20px;display:flex}.improved{margin:0;line-height:1.6}.fix{border-top:1px solid var(--bg);flex-direction:column;gap:2px;padding-block:8px;display:flex}.fix:first-of-type{border-top:0;padding-top:0}.fix p{margin:0}.said{color:var(--muted);text-decoration:line-through}.better{font-weight:600}.why{color:var(--muted);font-size:14px}.gap{flex-direction:column;gap:2px;margin:0;padding-block:6px;display:flex}.example{color:var(--muted);font-size:14px}.stats{margin:0;line-height:1.7}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.link{color:var(--accent);cursor:pointer;background:0 0;border:0;align-self:center;padding:8px 0;font-size:16px}.back{align-self:flex-start}.sessions{flex-direction:column;gap:10px;display:flex}.session-item{text-align:right;background:var(--panel);color:var(--text);cursor:pointer;border:0;border-radius:14px;flex-direction:column;gap:4px;padding:14px;display:flex}.session-meta{color:var(--muted);font-size:13px}.session-headline{font-size:15px}.danger-outline{border:1px solid var(--danger);color:var(--danger);background:0 0;border-radius:12px;align-self:flex-start;padding:8px 14px;font-size:16px}.confirm{background:var(--panel);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.confirm p{margin:0}.confirm-row{align-items:center;gap:16px;display:flex}.danger{background:var(--danger);color:#fff;border:0;border-radius:12px;padding:12px 18px;font-size:16px;font-weight:700}.session-row{align-items:stretch;gap:8px;display:flex}.session-row .session-item{flex:1;min-width:0}.session-x{background:var(--panel);width:44px;color:var(--muted);cursor:pointer;border:0;border-radius:14px;flex:none;font-size:22px}.overlay{z-index:10;background:#020617b3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.overlay .confirm{width:100%;max-width:360px}.heading-row{justify-content:space-between;align-items:center;gap:12px;display:flex}summary.heading-row{cursor:pointer}.copy{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:6px 14px;font-size:14px}.topics{flex-direction:column;gap:8px;display:flex}.topics p{margin:0}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--accent);color:var(--text);cursor:pointer;background:0 0;border-radius:999px;padding:10px 14px;font-size:15px}.chip[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.chip:disabled{opacity:.6}.style.small{padding:10px 6px;font-size:15px}.bubble{background:var(--panel);border:1px solid var(--accent);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;display:flex}.bubble span{flex:1;min-width:120px}.extend{align-self:center}.words{flex-direction:column;align-items:center;gap:8px;display:flex}.words .block{align-self:stretch}.word{margin:0;padding-block:3px}.voices{flex-direction:column;align-items:center;gap:8px;display:flex}.voice-list{flex-direction:column;align-self:stretch;gap:8px;display:flex}.voice-row{align-items:stretch;gap:8px;display:flex}.voice-row .style{flex:1}.story{padding-block:6px}.story-topic{color:var(--muted);margin:0 0 2px;font-size:14px}.block .chips{margin-bottom:8px}.gap p{margin:0}.gap ul{margin:4px 0 0}.link.start{align-self:flex-start;padding:4px 0;font-size:15px}.muted-chip{border-color:var(--panel);color:var(--muted)}.trial{color:var(--muted);justify-content:center;align-items:center;gap:8px;font-size:14px;display:flex}.trial input{width:18px;height:18px;padding:0}.modes [aria-selected=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.scene{margin:0;line-height:1.6}.model-badge{color:var(--muted);border:1px solid var(--panel);border-radius:999px;align-self:center;margin:0;padding:4px 12px;font-size:13px}.model-badge.full{color:var(--accent-ink);background:#fbbf24;border-color:#fbbf24;font-weight:700}.usage{margin:0;font-size:12px}.episode{align-items:center;gap:8px;display:inline-flex}.lookup{align-self:stretch;gap:8px;display:flex}.lookup input{flex:1;min-width:0;padding:10px 12px;font-size:16px}
