:root{--void: #0b0e14;--panel: #10141c;--hairline: #1e2531;--ink: #e9ecf2;--dim: #7a8497;--silver: #4a5468;--coral: #ff6b5e;--gold: #f2c265;--ui: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;--text: "Newsreader", ui-serif, Georgia, serif;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--void);color:var(--ink);font-family:var(--ui);font-size:16px;-webkit-font-smoothing:antialiased}.app{display:grid;grid-template-rows:auto 1fr auto;height:100dvh;overflow:hidden}.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(14px + var(--safe-top)) calc(18px + var(--safe-right)) 14px calc(18px + var(--safe-left));border-bottom:1px solid var(--hairline)}.mark{font-size:14px;font-weight:600;letter-spacing:.06em;color:var(--ink)}.mark-tld{color:var(--silver);font-weight:400}.bar-controls{display:flex;align-items:center;gap:8px}.icon{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--hairline);border-radius:8px;background:transparent;color:var(--dim);cursor:pointer}.icon.is-on{color:var(--gold);border-color:color-mix(in srgb,var(--gold) 35%,transparent)}.icon svg{width:17px;height:17px;fill:currentColor;stroke:currentColor}.icon .i-off,.icon.is-on .i-on{display:block}.icon .i-on,.icon.is-on .i-off{display:none}.langs{display:flex;border:1px solid var(--hairline);border-radius:8px;overflow:hidden}.lang{padding:7px 11px;border:0;background:transparent;color:var(--dim);font:inherit;font-size:11px;font-weight:600;letter-spacing:.08em;cursor:pointer}.lang.is-on{background:var(--panel);color:var(--ink)}.stage{overflow-y:auto;padding:32px calc(22px + var(--safe-right)) 24px calc(22px + var(--safe-left));display:flex;flex-direction:column;justify-content:safe center;gap:18px}.stage>*{width:100%;max-width:620px;align-self:center;flex-shrink:0}.question{margin:0;min-height:1.2em;font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}.question:empty{display:none}.answer{margin:0;font-family:var(--text);font-size:clamp(21px,5.2vw,27px);font-weight:400;line-height:1.5;letter-spacing:.005em;text-wrap:pretty}.answer:empty{display:none}.sources{padding-top:16px;border-top:1px solid var(--hairline)}.sources h2{margin:0 0 10px;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}.sources ul{margin:0;padding:0;list-style:none;display:grid;gap:7px}.sources a{color:var(--gold);font-size:14px;text-decoration:none;overflow-wrap:anywhere}.sources a:hover{text-decoration:underline}.error{margin:0;padding:11px 14px;border-left:2px solid var(--coral);background:color-mix(in srgb,var(--coral) 8%,transparent);color:var(--ink);font-size:14px}.suggest{padding:16px 18px;border:1px dashed var(--hairline);border-radius:14px;background:transparent;color:var(--dim);font:inherit;font-size:15px;line-height:1.45;text-align:left;cursor:pointer;transition:border-color .2s ease,color .2s ease}.suggest:hover{border-color:color-mix(in srgb,var(--gold) 40%,transparent);color:var(--ink)}.suggest[hidden]{display:none}.dock{display:flex;flex-direction:column;align-items:center;gap:14px;padding:8px calc(18px + var(--safe-right)) calc(18px + var(--safe-bottom)) calc(18px + var(--safe-left));border-top:1px solid var(--hairline);background:var(--panel)}.signal{position:relative;width:100%;max-width:620px;height:96px;display:grid;place-items:center}.wave{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.mic{position:relative;display:grid;place-items:center;width:66px;height:66px;padding:0;border:1px solid var(--hairline);border-radius:50%;background:var(--void);color:var(--ink);cursor:pointer;transition:transform .16s ease,border-color .2s ease,color .2s ease}.mic:hover{transform:scale(1.04)}.mic:active{transform:scale(.96)}.mic svg{width:24px;height:24px;fill:currentColor;stroke:currentColor}.mic.is-listening{border-color:var(--coral);color:var(--coral)}.mic.is-busy{border-color:color-mix(in srgb,var(--gold) 45%,transparent);color:var(--gold)}.status{margin:0;font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.chip{display:inline-flex;align-items:center;gap:9px;padding:7px 14px 7px 11px;border:1px solid var(--hairline);border-radius:999px;color:var(--dim);font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .2s ease,color .2s ease}.chip:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--silver);transition:background .2s ease,box-shadow .2s ease}.chip:has(:checked){border-color:color-mix(in srgb,var(--gold) 40%,transparent);color:var(--gold)}.chip:has(:checked):before{background:var(--gold);box-shadow:0 0 8px var(--gold)}.chip input{position:absolute;width:1px;height:1px;opacity:0}.chip:has(:focus-visible){outline:2px solid var(--gold);outline-offset:2px}.ask{display:flex;gap:8px;width:100%;max-width:620px}.ask input{flex:1;min-width:0;padding:12px 15px;border:1px solid var(--hairline);border-radius:10px;background:var(--void);color:var(--ink);font:inherit;font-size:15px}.ask input::placeholder{color:var(--silver)}.ask button{display:grid;place-items:center;width:46px;border:1px solid var(--hairline);border-radius:10px;background:var(--void);color:var(--dim);cursor:pointer}.ask button:hover{color:var(--gold);border-color:color-mix(in srgb,var(--gold) 40%,transparent)}.ask button svg{width:19px;height:19px;stroke:currentColor}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media(prefers-reduced-motion:reduce){.mic{transition:none}}@media(min-width:720px){.stage{padding-top:48px}}
