:root{--bg: #0b0d1a;--bg-2: #12152a;--card: rgba(255, 255, 255, .04);--card-border: rgba(255, 255, 255, .09);--text: #eef1ff;--muted: #9aa3c7;--accent: #8ec5ff;--accent-2: #b79bff;--good: #7ee0b0;--danger: #ff9a9a;--radius: 18px;--maxw: 560px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:radial-gradient(1200px 700px at 50% -10%,#1a1f3d 0%,transparent 60%),var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.app{min-height:100%;display:flex;flex-direction:column}.screen{width:100%;max-width:var(--maxw);margin:0 auto;padding:clamp(20px,5vw,40px) 22px 120px;animation:fade .5s ease}.screen.center{text-align:center}.center .card{text-align:left}@keyframes fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.mark{font-weight:600;letter-spacing:.35em;text-transform:uppercase;font-size:13px;color:var(--accent);margin-bottom:28px}.mark.small{margin-bottom:18px}h1{font-size:clamp(26px,6vw,34px);line-height:1.15;font-weight:600;margin:0 0 14px;letter-spacing:-.01em}h1.tight{margin-bottom:6px}h2{font-size:15px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 12px}.lede{color:var(--muted);font-size:16px;line-height:1.6;margin:0 0 24px}.muted{color:var(--muted)}.small{font-size:13px}.card{background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius);padding:20px;margin-bottom:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.card.safety ul{margin:0 0 16px;padding-left:18px}.card.safety li{color:var(--muted);line-height:1.55;margin-bottom:8px}.card.safety strong{color:var(--text)}.ack{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:14px;line-height:1.45;color:var(--text)}.ack input{margin-top:3px;width:20px;height:20px;accent-color:var(--accent);flex:none}button{font:inherit;cursor:pointer;border:none;color:var(--text);background:none}.primary{display:block;width:100%;padding:16px;border-radius:14px;font-size:17px;font-weight:600;color:#0b0d1a;background:linear-gradient(135deg,var(--accent),var(--accent-2));transition:transform .12s ease,opacity .2s ease,box-shadow .2s ease;box-shadow:0 10px 30px -12px var(--accent)}.primary:hover:not(:disabled){transform:translateY(-1px)}.primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.ghost{padding:12px 18px;border-radius:12px;border:1px solid var(--card-border);color:var(--muted);transition:color .15s ease,border-color .15s ease}.ghost:hover{color:var(--text);border-color:var(--accent)}.ghost.wide{width:100%;padding:14px}.field{margin-bottom:22px}.field:last-child{margin-bottom:0}.field label,.field-label{display:block;font-size:14px;font-weight:500;margin-bottom:10px}.field.row{display:flex;gap:12px;margin-bottom:0}.segmented{display:flex;gap:8px}.seg{flex:1;padding:12px;border-radius:12px;border:1px solid var(--card-border);color:var(--muted);transition:all .15s ease}.seg.on{color:#0b0d1a;background:var(--accent);border-color:var(--accent);font-weight:600}.seg.col{display:flex;flex-direction:column;align-items:center;gap:3px;padding:12px 8px}.seg-glyph{font-size:20px;line-height:1}.seg-note{font-size:11px;opacity:.7}.card.evidence{display:flex;flex-direction:column;gap:18px}.ev-row{display:flex;gap:12px;align-items:flex-start}.ev-row strong{display:block;font-size:15px;margin-bottom:4px}.ev-row p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.ev-dot{width:12px;height:12px;border-radius:50%;margin-top:5px;flex:none}.ev-dot.green{background:var(--good);box-shadow:0 0 10px var(--good)}.ev-dot.amber{background:#ffcf7e;box-shadow:0 0 10px #ffcf7e}.ev-dot.red{background:var(--danger);box-shadow:0 0 10px var(--danger)}input[type=range]{width:100%;accent-color:var(--accent)}.range-ends{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:4px}.toggle{flex:1;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;border:1px solid var(--card-border);color:var(--muted);transition:all .15s ease}.toggle .dot{width:12px;height:12px;border-radius:50%;background:var(--muted);transition:all .15s ease}.toggle.on{color:var(--text);border-color:var(--accent)}.toggle.on .dot{background:var(--accent);box-shadow:0 0 10px var(--accent)}.suds{display:grid;grid-template-columns:repeat(11,1fr);gap:5px}.suds-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:7px 0 5px;border-radius:10px;border:1px solid var(--card-border);color:var(--muted);transition:all .12s ease}.suds-face{font-size:17px;line-height:1;filter:grayscale(.35) opacity(.75);transition:filter .12s ease,transform .12s ease}.suds-num{font-size:10px;font-variant-numeric:tabular-nums}.suds-btn:hover{border-color:var(--accent)}.suds-btn:hover .suds-face{filter:none;transform:scale(1.1)}.suds-btn.on{background:var(--accent);color:#0b0d1a;border-color:var(--accent);font-weight:700}.suds-btn.on .suds-face{filter:none;transform:scale(1.15)}.delta{margin:14px 0 0;font-size:15px;color:var(--muted)}.delta.good{color:var(--good)}.session{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg)}.canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.session-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:40px 22px calc(40px + env(safe-area-inset-bottom));pointer-events:none}.session-overlay>*{pointer-events:auto}.follow{color:var(--muted);font-size:15px;margin:0;opacity:.75}.follow-tip{color:var(--muted);font-size:13px;line-height:1.5;margin:0;max-width:320px;text-align:center;opacity:.55}.session-controls{display:flex;flex-direction:column;align-items:center;gap:14px}.speed-stepper{display:flex;align-items:center;gap:6px;background:#0b0d1a8c;border:1px solid var(--card-border);border-radius:999px;padding:4px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.step{padding:8px 14px;border-radius:999px;color:var(--muted);font-size:13px;transition:color .15s ease,background .15s ease}.step:hover{color:var(--text);background:#ffffff0f}.speed-read{min-width:46px;text-align:center;font-size:13px;color:var(--accent);font-variant-numeric:tabular-nums}.timer{font-size:20px;color:var(--muted);font-variant-numeric:tabular-nums;opacity:0}.session:hover .timer,.session-overlay:hover .timer{opacity:.6;transition:opacity .3s ease}.session-actions{display:flex;gap:12px}.stop{padding:12px 18px;border-radius:12px;border:1px solid rgba(255,154,154,.4);color:var(--danger);background:#ff9a9a14;font-weight:500}.stop:hover{background:#ff9a9a29}.resources{display:flex;flex-direction:column;gap:12px}.resource{display:flex;flex-direction:column;gap:3px;padding:16px;border-radius:12px;border:1px solid var(--card-border);text-decoration:none;color:var(--text);transition:border-color .15s ease,background .15s ease}a.resource:hover{border-color:var(--accent);background:#8ec5ff0f}.resource strong{font-size:16px}.resource span{font-size:13px;color:var(--muted)}.grounding-tip{color:var(--muted);font-size:14px;line-height:1.6;margin:4px 0 24px}.grounding-tip strong{color:var(--text)}.crisis-footer{position:fixed;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;padding:0 0 calc(10px + env(safe-area-inset-bottom));z-index:40;pointer-events:none}.crisis-toggle{pointer-events:auto;font-size:13px;color:var(--muted);padding:8px 14px;border-radius:999px;border:1px solid var(--card-border);background:#0b0d1acc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.crisis-toggle:hover{color:var(--danger);border-color:#ff9a9a66}.crisis-pop{pointer-events:auto;display:flex;flex-direction:column;gap:2px;margin-bottom:8px;background:var(--bg-2);border:1px solid var(--card-border);border-radius:12px;padding:8px;order:-1}.crisis-pop a{color:var(--text);text-decoration:none;font-size:14px;padding:8px 14px;border-radius:8px}.crisis-pop a:hover{background:#ffffff0d}.linkish{display:block;width:100%;margin-top:12px;padding:6px;color:var(--muted);font-size:14px;text-decoration:underline;text-underline-offset:3px;transition:color .15s ease}.linkish:hover{color:var(--text)}.privacy-note{margin-top:22px;line-height:1.5}.session-top{display:flex;flex-direction:column;align-items:center;gap:10px}.set-banner{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);border:1px solid rgba(142,197,255,.35);background:#8ec5ff14;padding:5px 14px;border-radius:999px}.mic-wrap{position:relative;width:160px;height:160px;margin:20px auto 28px;display:grid;place-items:center}.mic-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle,#8ec5ff73,#8ec5ff00 70%);transition:transform .08s ease-out,opacity .08s ease-out}.mic-core{position:relative;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;font-size:34px;background:var(--bg-2);border:1px solid var(--card-border);box-shadow:0 8px 30px -10px var(--accent)}.band-title{text-transform:capitalize}.meter-row{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.meter{flex:1;height:10px;border-radius:999px;background:#ffffff14;overflow:hidden}.meter-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--good),var(--accent),var(--accent-2));transition:width .4s ease}.signal-grid{display:flex;justify-content:space-around;gap:12px;margin-top:20px}.signal{display:flex;flex-direction:column;align-items:center;gap:8px}.signal-bar{width:34px;height:70px;border-radius:8px;background:#ffffff0f;display:flex;align-items:flex-end;overflow:hidden}.signal-fill{width:100%;background:linear-gradient(180deg,var(--accent),var(--accent-2));border-radius:8px 8px 0 0;transition:height .4s ease}.signal-label{font-size:11px;color:var(--muted);text-align:center}.pace-preview{display:flex;align-items:center;justify-content:space-between}.pace-word{font-size:17px;font-weight:600}.pace-why{margin:12px 0 0;line-height:1.55;text-align:left}.transcript{font-size:15px;line-height:1.5;color:var(--text);max-width:360px;margin:0 auto;font-style:italic;opacity:.9}.coach-card{text-align:left}.coach-message{margin:0 0 16px;font-size:16px;line-height:1.6;color:var(--text)}.coach-source{margin:12px 0 0;font-size:12px;color:var(--muted);opacity:.75}.recovery-log{margin:16px 0 0;padding-left:18px;color:var(--muted);font-size:14px;line-height:1.6}.compare-rows{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.compare-row{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.compare-row>span:first-child{width:76px;text-align:right;flex:none}.compare-val{width:42px;flex:none;font-variant-numeric:tabular-nums;color:var(--text)}.meter-fill.you{background:var(--accent-2)}.meter-fill.voice{background:var(--good)}
