:root{color-scheme:dark;--ink: #16130f;--paper: #221c17;--raised: #2c241d;--line: #4a3f34;--text: #f6efe4;--muted: #b5a394;--seal: #d4532c;--seal-ink: #fff6ee;--ok: #8eae86;--bad: #e07a68;--warn: #e0b15a;--font-ui: system-ui, "Segoe UI", sans-serif;--font-display: "Iowan Old Style", Palatino, "Palatino Linotype", Georgia, serif;--shadow: 0 18px 50px rgba(0, 0, 0, .35)}@media(prefers-color-scheme:light){:root{color-scheme:light;--ink: #f3ece4;--paper: #fffaf4;--raised: #fff;--line: #e3d5c6;--text: #241c16;--muted: #6f6256;--seal: #c44522;--seal-ink: #fff6ee;--ok: #3f6b45;--bad: #a33b2d;--warn: #8a5a12;--shadow: 0 16px 40px rgba(60, 32, 12, .12)}}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:#0c0a08;color:var(--text);font-family:var(--font-ui);font-size:16px;line-height:1.4}#root{width:min(100%,480px);min-height:100dvh;margin:0 auto;background:radial-gradient(120% 40% at 100% 0%,rgba(212,83,44,.16),transparent 42%),var(--ink)}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--seal);outline-offset:2px}.screen{min-height:100dvh;display:flex;flex-direction:column}.top{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;align-items:center;padding:calc(10px + env(safe-area-inset-top)) 12px 10px;border-bottom:3px solid var(--seal)}.top.no-logout{grid-template-columns:44px minmax(0,1fr)}.top h1{margin:0;min-width:0;font-family:var(--font-display);font-size:1.35rem;font-weight:600;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-spacer{width:44px}.icon-btn,.text-btn,.primary,.danger,.segmented button,.task-link{min-height:44px}.icon-btn{width:44px;height:44px;border:1px solid var(--line);background:transparent;border-radius:12px;font-size:1.25rem}.text-btn{border:0;background:transparent;color:var(--seal);padding:0 8px}.primary,.danger{border:0;border-radius:999px;min-height:48px;padding:0 18px}.primary{background:var(--seal);color:var(--seal-ink)}.primary:disabled,.danger:disabled{opacity:.55}.primary.slim{min-height:44px;padding:0 14px}.danger{width:100%;background:transparent;color:var(--bad);border:1px solid var(--bad)}.seal{width:72px;height:72px;display:grid;place-items:center;border:3px solid var(--seal);color:var(--seal);border-radius:12px;font-family:var(--font-display);font-size:42px;line-height:1;transform:rotate(-8deg);background:color-mix(in srgb,var(--seal) 8%,transparent)}.seal.sm{width:44px;height:44px;font-size:26px;border-width:2px;border-radius:8px}.login{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:28px 22px 48px}.word{margin:18px 0 0;font-family:var(--font-display);font-size:3rem;line-height:.95}.quiet{color:var(--muted);margin:0}.login form,.stack{display:flex;flex-direction:column;gap:8px}.login form{margin-top:18px}label{font-size:.85rem;color:var(--muted)}input,textarea,select{width:100%;min-height:48px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--paper)}textarea{resize:none;min-height:120px;max-height:40vh;line-height:1.45}.form-error{color:var(--bad);margin:0}.scroll{flex:1;overflow:auto;padding:16px 16px 24px}.section-head,.row,.task-top,.result,.bar.follow{display:flex;align-items:center;justify-content:space-between;gap:10px}.row{align-items:flex-start}.section-head h2,.scroll h2{font-family:var(--font-display);font-size:1.2rem;font-weight:600;margin:18px 0 8px}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.last-line{margin-top:4px;font-size:.85rem}.row,.task-link{width:100%;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:12px}.row-title,.task-prompt{margin:0}.task-prompt{display:block;margin-top:6px}.row-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.badge{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:0 8px;margin-right:6px;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.chip{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;border:1px solid var(--line);font-size:.78rem;letter-spacing:.02em}.chip-running{color:var(--seal);border-color:var(--seal)}.chip-succeeded{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 55%,var(--line))}.chip-failed,.chip-interrupted{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 55%,var(--line))}.chip-stopped{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 55%,var(--line))}.segmented{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:6px;margin:8px 0}.segmented button{border-radius:999px;border:1px solid var(--line);background:transparent}.segmented button[aria-pressed=true]{background:var(--text);color:var(--ink);border-color:var(--text)}.check{display:flex;gap:10px;align-items:flex-start;min-height:44px;color:var(--text)}.check input{width:22px;height:22px;margin-top:2px}.check small{display:block;color:var(--muted)}.task-meta{display:flex;gap:8px;align-items:center;padding:8px 16px 0}.thread{list-style:none;margin:0;padding:0 0 12px;display:flex;flex-direction:column;gap:12px}.bubble{padding:12px 14px;overflow-wrap:anywhere}.bubble.user{margin-left:14%;background:var(--paper);border:1px solid var(--line);border-radius:18px 18px 6px;white-space:pre-wrap}.bubble.assistant{margin-right:6%;font-family:var(--font-ui);font-size:1rem;line-height:1.45}.md p{margin:0 0 .65em;white-space:pre-wrap}.md p:last-child,.md ul:last-child,.md ol:last-child,.md pre:last-child{margin-bottom:0}.md ul,.md ol{margin:.4em 0 .65em;padding-left:1.2em}.md li{margin:.15em 0}.md-inline{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;padding:.05em .35em;border-radius:6px;background:var(--paper)}.md-pre{overflow-x:auto;margin:.5em 0 .65em;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--paper)}.md-pre code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;white-space:pre}.card{background:var(--raised);border:1px solid var(--line);border-radius:14px}.tool-btn{width:100%;min-height:48px;display:flex;align-items:center;gap:10px;padding:10px 12px;border:0;background:transparent;text-align:left}.tool-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-elapsed{margin-left:auto;flex:none;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}.tool-detail{margin:0;padding:0 12px 12px;max-height:180px;overflow:auto;font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px;white-space:pre-wrap;color:var(--muted)}.spinner,.mark{width:16px;height:16px;flex:none;border-radius:50%}.spinner{border:2px solid color-mix(in srgb,var(--seal) 35%,transparent);border-top-color:var(--seal);animation:spin .8s linear infinite}.mark-ok{background:var(--ok)}.mark-error{background:var(--bad)}.thinking details{padding:10px 12px}.thinking summary{min-height:44px;display:flex;align-items:center;cursor:pointer}.thinking p{margin:0 0 8px;color:var(--muted);white-space:pre-wrap}.result{flex-wrap:wrap;border-top:1px dashed var(--line);padding-top:12px;color:var(--muted);font-size:.9rem}.result-ok{color:var(--ok)}.result-bad{color:var(--bad)}.result-text,.result-note{flex-basis:100%;margin:0}.raw{color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}.raw span{text-transform:uppercase;letter-spacing:.04em}.bar{position:sticky;bottom:0;padding:10px 12px calc(12px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--ink) 92%,transparent);border-top:1px solid var(--line)}.bar.follow textarea{min-height:48px;max-height:120px;flex:1}.bar .form-error{margin-bottom:8px}.sheet-backdrop{position:fixed;inset:0;background:#0c0a089e;display:flex;align-items:flex-end;justify-content:center}.sheet{width:min(100%,480px);background:var(--paper);border-radius:20px 20px 0 0;padding:12px 16px calc(20px + env(safe-area-inset-bottom));box-shadow:var(--shadow)}.sheet-head{display:flex;align-items:center;justify-content:space-between}.sheet h2{font-family:var(--font-display);margin:8px 0 12px}.boot{min-height:100dvh;display:grid;place-items:center;align-content:center;gap:16px}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
