:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f172a;--surface:#1e293b;--surface-deep:#111827;--line:#334155;--fg:#e2e8f0;--fg-strong:#f1f5f9;--fg-soft:#cbd5e1;--muted:#94a3b8;--dim:#8493a8;--accent:#1d4ed8;--accent-fg:#eff6ff;--accent-soft:#93c5fd;--ok:#10b981;--warn:#fbbf24;--font:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}html{background:var(--bg)}body{background:var(--bg);color:var(--fg);font-family:var(--font);margin:0;font-size:14px;line-height:1.6;overflow-x:hidden}button,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--accent-soft);outline-offset:2px}.wrap{max-width:900px;margin:0 auto;padding-block:40px;padding-inline:24px}.wrap.narrow{max-width:800px}.eyebrow{letter-spacing:3px;text-transform:uppercase;color:var(--dim);margin:0 0 12px;font-size:11px;font-weight:600}.eyebrow.ok{color:var(--ok)}#home h1{color:var(--fg-strong);text-wrap:balance;margin:0;font-size:32px;font-weight:700;line-height:1.2}#home .lede{color:var(--muted);max-width:600px;margin:16px 0 0;font-size:15px}.cards{gap:16px;margin-top:48px;display:grid}.card{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;width:100%;padding:20px 24px;transition:border-color .2s;display:block}.card:hover,.card:focus-visible{border-color:var(--card-edge,var(--muted))}.pill{letter-spacing:.3px;border-radius:99px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.card h2{color:var(--fg-strong);margin:8px 0 6px;font-size:17px;font-weight:600}.card p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.tags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.tag{color:var(--dim);background:var(--bg);border-radius:4px;padding:2px 8px;font-size:11px}.about{background:var(--surface);border:1px solid var(--line);color:var(--dim);border-radius:12px;margin-top:48px;padding:20px 24px;font-size:13px}.about strong{color:var(--muted)}#chat{flex-direction:column;height:100%;display:flex}.bar{border-bottom:1px solid var(--surface);flex-shrink:0;padding-block:12px;padding-inline:20px}.bar.deep{background:var(--surface-deep)}.bar.foot{border-bottom:0;border-top:1px solid var(--surface)}.bar-in{max-width:800px;margin:0 auto}.chat-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.chat-head .what{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.chat-head .what .name{color:var(--fg-strong);font-weight:600}.chat-head .acts{gap:8px;display:flex}.btn{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:8px;padding:6px 14px;font-size:13px}.btn.ok{border-color:var(--ok);color:var(--ok);font-weight:600}.btn.big{border-radius:10px;padding:10px 20px;font-size:14px}.btn.solid{background:var(--accent);color:#fff;border:0;font-weight:600}.context{color:var(--muted);margin:0;font-size:13px}.context strong{color:var(--fg-soft)}#log{flex:1;min-height:0;padding:20px;overflow-y:auto}#log .bar-in{flex-direction:column;gap:12px;display:flex}.empty{text-align:center;color:var(--dim);padding:48px 24px}.empty div:first-child{margin-bottom:8px;font-size:15px}.empty div:last-child{font-size:13px}.msg{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:16px;max-width:75%;padding:10px 16px}.msg.me{background:var(--accent);color:var(--accent-fg);border-bottom-right-radius:4px;align-self:flex-end}.msg.them{background:var(--surface);border-bottom-left-radius:4px;align-self:flex-start}.msg .who{color:var(--dim);margin-bottom:4px;font-size:10px;font-weight:600;display:block}.msg.me .who{color:var(--accent-soft)}.msg.wait{color:var(--dim)}.msg.wait .body{animation:1.5s infinite pulse}.send{align-items:flex-end;gap:8px;display:flex}#box{border:1px solid var(--line);background:var(--surface);min-width:0;color:var(--fg);resize:none;border-radius:12px;flex:1;max-height:140px;padding:10px 16px;line-height:1.5}#box::placeholder{color:var(--dim)}#sendBtn{background:var(--accent);color:#fff;border:0;border-radius:12px;padding:10px 20px;font-weight:600}#sendBtn:disabled{background:var(--surface);color:var(--dim)}.hint{color:var(--dim);margin:8px 0 0;font-size:11px}.hint.err{color:var(--warn)}#debrief h2{color:var(--fg-strong);text-wrap:balance;margin:0 0 4px;font-size:24px;font-weight:700}#debrief .count{color:var(--dim);margin:0 0 32px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:24px}.panel.deep{background:var(--surface-deep);border-color:var(--surface);margin-bottom:32px;padding:20px 24px}details.panel summary{cursor:pointer;color:var(--muted);padding:14px 20px;font-weight:600}details.panel .lines{padding:0 20px 16px;font-size:13px;line-height:1.5}details.panel .lines p{color:var(--fg-soft);overflow-wrap:anywhere;margin:0 0 8px}.lines .p{color:#60a5fa;font-weight:600}.lines .r{color:#f59e0b;font-weight:600}#feedback{color:var(--fg-soft);overflow-wrap:anywhere;padding:24px;line-height:1.75}#feedback strong{color:var(--fg-strong)}#feedback p{margin:0 0 12px}#feedback h3{color:var(--fg-strong);margin:4px 0 16px;font-size:18px;font-weight:700;line-height:1.3}#feedback h4{color:var(--fg-strong);margin:22px 0 10px;font-size:15px;font-weight:600}#feedback h5{color:var(--fg-strong);margin:16px 0 8px;font-size:14px;font-weight:600}#feedback ul,#feedback ol{margin:0 0 12px;padding-left:22px}#feedback li{margin:0 0 6px}#feedback blockquote{border-left:3px solid var(--line);color:var(--muted);margin:0 0 12px;padding:4px 14px;font-style:italic}#feedback hr{border:0;border-top:1px solid var(--line);margin:16px 0}#feedback>:last-child{margin-bottom:0}#feedback.wait{text-align:center;color:var(--dim);padding:56px 24px;animation:1.5s infinite pulse}#feedbackNote{color:var(--warn);margin:-12px 0 24px;font-size:13px}.panel.deep h3{color:var(--dim);letter-spacing:.5px;text-transform:uppercase;margin:0 0 10px;font-size:13px;font-weight:600}.key{color:var(--muted);border-left:2px solid var(--line);margin-bottom:8px;padding-left:12px;font-size:13px}.row{flex-wrap:wrap;gap:12px;display:flex}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@media (prefers-reduced-motion:reduce){.msg.wait .body,#feedback.wait{animation:none}.card{transition:none}}@media (width<=520px){.wrap{padding-block:28px;padding-inline:16px}#home h1{font-size:26px}.eyebrow{letter-spacing:2px}.bar{padding-inline:16px}#log{padding:16px}.msg{max-width:88%}.card{padding:16px 18px}}
