.public{background:radial-gradient(900px 420px at 50% -140px, var(--glow-soft), transparent 70%), var(--bg);flex-direction:column;min-height:100dvh;display:flex}.nav{z-index:10;justify-content:space-between;align-items:center;width:100%;padding:12px 20px;display:flex;position:sticky;top:0}.chatting .nav{-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#ffffffd9}.brand{letter-spacing:-.02em;border-radius:10px;align-items:center;gap:10px;min-height:0;padding:4px 6px;font-size:1.05rem;font-weight:700;display:flex}.nav-right{align-items:center;gap:8px;display:flex}.welcome{text-align:center;flex:1;align-content:center;justify-items:center;gap:14px;width:100%;max-width:680px;margin:0 auto;padding:4vh 20px 32px;display:grid}.face-btn{border-radius:32px;justify-items:center;gap:12px;min-height:0;padding:8px 8px 0;display:grid;position:relative}.face-btn .archie-face{transition:transform .35s cubic-bezier(.2,.8,.2,1)}.face-btn:not(:disabled):hover .archie-face{transform:translateY(-4px)scale(1.03)}.face-btn:disabled{opacity:1;cursor:default}.face-hint{color:var(--ink-2);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:6px;padding:6px 13px;font-size:.82rem;font-weight:600;display:inline-flex}.face-btn:not(:disabled):hover .face-hint{border-color:var(--line-strong);box-shadow:var(--shadow)}.welcome h1{margin-top:6px}.lead{max-width:32rem;color:var(--ink-2);font-size:1.08rem;line-height:1.6}.welcome .composer{margin-top:14px}.welcome .foot{margin-top:6px}.composer{background:var(--surface);border:1px solid var(--line-strong);width:100%;max-width:640px;box-shadow:var(--shadow);border-radius:28px;align-items:flex-end;gap:6px;padding:8px 8px 8px 18px;transition:border-color .15s,box-shadow .15s;display:flex}.composer:focus-within{border-color:var(--ink-2);box-shadow:var(--shadow), 0 0 0 4px #0b0f170f}.composer textarea{min-width:0;min-height:40px;max-height:160px;box-shadow:none;resize:none;field-sizing:content;background:0 0;border:0;border-radius:0;flex:1;padding:9px 0;font-size:1.02rem;line-height:1.45}.composer textarea:focus{box-shadow:none}.composer .icon-btn{flex:none;width:40px;min-height:40px}.composer-mic{color:var(--ink-2);border-color:#0000}.thread{flex:1;align-content:start;gap:36px;width:100%;max-width:720px;margin:0 auto;padding:24px 20px 8px;display:grid}.turn{gap:14px;animation:.35s cubic-bezier(.2,.8,.2,1) rise;display:grid}.q{background:var(--ink);color:#fff;overflow-wrap:anywhere;border-radius:20px 20px 6px;justify-self:end;max-width:min(85%,34rem);padding:11px 16px;font-weight:500;line-height:1.45}.a{gap:14px;min-width:0;display:grid}.a-head{color:var(--ink-2);align-items:center;gap:8px;font-size:.85rem;font-weight:650;display:flex}.a-head .tag{margin-left:4px}.answer-prose{color:var(--ink);overflow-wrap:anywhere;gap:12px;max-width:64ch;font-size:1.06rem;line-height:1.72;display:grid}.answer-prose p:first-child{letter-spacing:-.005em;font-size:1.14rem;font-weight:500;line-height:1.6}.answer-prose ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.answer-prose li{color:var(--ink-2);padding-left:22px;position:relative}.answer-prose li:before{content:"";background:var(--glow);border-radius:50%;width:6px;height:6px;position:absolute;top:.72em;left:6px}.answer-prose strong{color:var(--ink);background:linear-gradient(transparent 62%, var(--glow-soft) 62%);padding:0 1px;font-weight:650}.typing{gap:5px;padding:6px 0;display:inline-flex}.typing span{background:var(--line-strong);border-radius:50%;width:8px;height:8px;animation:1.1s ease-in-out infinite dot}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes dot{30%{background:var(--muted);transform:translateY(-4px)}}.sources{gap:8px;max-width:64ch;display:grid}.sources .label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.72rem;font-weight:700}.source{text-align:left;border:1px solid var(--line);background:var(--surface);white-space:normal;border-radius:14px;justify-content:flex-start;align-items:center;gap:12px;width:100%;padding:10px 14px 10px 10px;font-weight:400;display:flex}.source:hover{border-color:var(--line-strong);box-shadow:var(--shadow)}.source .kind{width:34px;height:40px;font-size:.6rem}.source-text{flex:1;gap:1px;min-width:0;display:grid}.source-text strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.95rem;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.open{color:var(--ink-2);flex:none;font-size:.85rem;font-weight:600}.a-actions{gap:6px;display:flex}.a-actions .sm{min-height:30px;color:var(--muted);font-size:.8rem}.dock{z-index:10;padding:12px 16px max(12px, env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg) 70%, #fff0);justify-items:center;gap:6px;display:grid;position:sticky;bottom:0}.dock-note{font-size:.75rem}.voice-overlay{z-index:50;padding:24px 16px max(24px, env(safe-area-inset-bottom));background:radial-gradient(640px 640px at 50% 36%, var(--glow-soft), transparent 65%), #fff;grid-template-rows:1fr auto;justify-items:center;animation:.35s cubic-bezier(.2,.8,.2,1) overlay-in;display:grid;position:fixed;inset:0}.overlay-close{position:absolute;top:16px;right:16px}.voice-stage{text-align:center;align-content:center;justify-items:center;gap:18px;width:100%;max-width:560px;display:grid}.voice-face{animation:.5s cubic-bezier(.2,.9,.25,1.15) face-in}.voice-face .archie-face{width:min(260px,62vw);height:auto}.voice-status{color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:.85rem;font-weight:600;display:inline-flex}.voice-status .dot{background:var(--glow);width:8px;height:8px;box-shadow:0 0 8px var(--glow);border-radius:50%;animation:1.1s ease-in-out infinite af-pulse}.captions{gap:10px;min-height:96px;display:grid}.heard{color:var(--muted);font-size:.98rem}.said{letter-spacing:-.01em;overflow-wrap:anywhere;font-size:clamp(1.1rem,3.6vw,1.35rem);font-weight:500;line-height:1.45}.voice-sources{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.source-chip{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);white-space:normal;text-align:left;gap:8px;max-width:100%;padding:6px 14px 6px 8px;font-weight:500}.source-chip-title{overflow-wrap:anywhere}.end-btn{min-width:220px}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}@keyframes overlay-in{0%{opacity:0}}@keyframes face-in{0%{opacity:0;transform:scale(.6)translateY(30px)}}
