:root{--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, "Helvetica Neue", sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;--ground: #f7faf9;--surface: #ffffff;--surface-2: #eef3f2;--surface-3: #e4eae9;--line: #d5dbdc;--line-soft: #e4eae9;--ink: #21292a;--ink-2: #556366;--ink-3: #7e9295;--accent: #138145;--accent-fill: #3bc965;--accent-wash: #e8f5ec;--agent: #0f8a61;--warn: #a15c07;--warn-fill: #d99530;--warn-wash: #fdf3e3;--info: #1e5f8f;--info-fill: #5b93bd;--info-wash: #e8f1f8;--radius: 6px;--shadow: 0 1px 2px rgba(33, 41, 42, .05), 0 1px 12px rgba(33, 41, 42, .04);--scrim: rgba(33, 41, 42, .45);color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--ground: #101516;--surface: #1a2223;--surface-2: #222c2d;--surface-3: #2a3536;--line: #313d3e;--line-soft: #283233;--ink: #dee4e4;--ink-2: #a2b0b1;--ink-3: #7e9295;--accent: #5ee379;--accent-fill: #22a856;--accent-wash: #14261b;--agent: #31c78f;--warn: #e0a758;--warn-fill: #a97c2c;--warn-wash: #2a2114;--info: #7cb6dd;--info-fill: #3f6d92;--info-wash: #14212b;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 1px 12px rgba(0, 0, 0, .25);--scrim: rgba(0, 0, 0, .6)}}:root[data-theme=dark]{--ground: #101516;--surface: #1a2223;--surface-2: #222c2d;--surface-3: #2a3536;--line: #313d3e;--line-soft: #283233;--ink: #dee4e4;--ink-2: #a2b0b1;--ink-3: #7e9295;--accent: #5ee379;--accent-fill: #22a856;--accent-wash: #14261b;--agent: #31c78f;--warn: #e0a758;--warn-fill: #a97c2c;--warn-wash: #2a2114;--info: #7cb6dd;--info-fill: #3f6d92;--info-wash: #14212b;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 1px 12px rgba(0, 0, 0, .25);--scrim: rgba(0, 0, 0, .6)}:root[data-theme=light]{--ground: #f7faf9;--surface: #ffffff;--surface-2: #eef3f2;--surface-3: #e4eae9;--line: #d5dbdc;--line-soft: #e4eae9;--ink: #21292a;--ink-2: #556366;--ink-3: #7e9295;--accent: #138145;--accent-fill: #3bc965;--accent-wash: #e8f5ec;--agent: #0f8a61;--warn: #a15c07;--warn-fill: #d99530;--warn-wash: #fdf3e3;--info: #1e5f8f;--info-fill: #5b93bd;--info-wash: #e8f1f8;--shadow: 0 1px 2px rgba(33, 41, 42, .05), 0 1px 12px rgba(33, 41, 42, .04);--scrim: rgba(33, 41, 42, .45)}*{box-sizing:border-box}body{margin:0;font-family:var(--sans);background:var(--ground);color:var(--ink);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}header.bar{display:flex;align-items:center;gap:14px;padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--line)}.logo{display:flex;align-items:baseline;gap:8px;font-size:16px;letter-spacing:-.015em}.logo .mark{font-weight:700;color:var(--ink)}.logo .oust{font-weight:600;color:var(--accent);font-size:12.5px;letter-spacing:0}.bar .spacer{flex:1}.btn{font:inherit;font-weight:600;font-size:13px;padding:7px 13px;border-radius:var(--radius);border:1px solid transparent;background:var(--accent-fill);color:#fff;cursor:pointer}.btn.ghost{background:transparent;border-color:var(--line);color:var(--ink-2)}.btn.tiny{font-size:12px;padding:5px 10px}.btn:disabled{opacity:.5;cursor:default}.btn:focus-visible,li[role=button]:focus-visible,.tab:focus-visible,.who-btn:focus-visible,.menu button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.thumb:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.who-wrap{position:relative}.who-btn{display:flex;align-items:center;gap:8px;font:inherit;font-size:13px;color:var(--ink-2);background:transparent;border:1px solid var(--line);border-radius:999px;padding:4px 10px 4px 4px;cursor:pointer}.who-btn:hover{background:var(--surface-2)}.who-btn .caret{color:var(--ink-3);font-size:10px}.avatar{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:10.5px;font-weight:700;color:#fff;flex:none}.avatar.empty{background:var(--surface-3);color:var(--ink-3)}.menu{position:absolute;right:0;top:calc(100% + 6px);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:218px;padding:5px;z-index:40}.menu .label{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);padding:7px 9px 4px}.menu button{display:flex;align-items:center;gap:9px;width:100%;font:inherit;font-size:13px;text-align:left;background:none;border:none;border-radius:4px;padding:6px 9px;color:var(--ink);cursor:pointer}.menu button:hover{background:var(--surface-2)}.menu button .tick{margin-left:auto;color:var(--accent);font-weight:700}.menu hr{border:none;border-top:1px solid var(--line-soft);margin:5px 0}.menu .quit{color:var(--ink-2);font-weight:600}.role{font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);background:var(--surface-3);border-radius:3px;padding:1px 5px}.role.dev{color:var(--info);background:var(--info-wash)}.role.r-end{margin-left:auto}.app{display:grid;grid-template-columns:minmax(292px,348px) 1fr;align-items:start}aside{border-right:1px solid var(--line);background:var(--surface);position:sticky;top:0;max-height:100vh;overflow-y:auto}@media(max-width:860px){.app{grid-template-columns:1fr}aside{border-right:none;border-bottom:1px solid var(--line);position:static;max-height:none}}.tabs{display:flex;gap:2px;padding:10px 12px;overflow-x:auto;border-bottom:1px solid var(--line-soft)}.tab{font:inherit;font-size:12px;font-weight:600;padding:5px 9px;border-radius:var(--radius);border:none;background:transparent;color:var(--ink-3);cursor:pointer;white-space:nowrap}.tab[aria-selected=true]{background:var(--surface-2);color:var(--ink)}.grp{border-bottom:1px solid var(--line)}.grp:last-child{border-bottom:none}.grp>h2{position:sticky;top:0;z-index:5;margin:0;display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--surface-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line-soft);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}.grp:first-child>h2{border-top:none}@media(max-width:860px){.grp>h2{position:static}}.grp>h2 .bullet{width:7px;height:7px;border-radius:50%;flex:none}.grp>h2 .n{margin-left:auto;font-size:11px;font-weight:700;color:var(--ink-3);background:var(--surface-3);border-radius:999px;padding:0 7px;font-variant-numeric:tabular-nums}.grp.wait>h2 .bullet{background:var(--warn-fill)}.grp.test>h2 .bullet{background:var(--accent-fill)}.grp.dev>h2 .bullet{background:var(--info-fill)}.grp.open>h2 .bullet{background:var(--agent)}.grp.done>h2 .bullet{background:var(--line)}ul.queue{list-style:none;margin:0;padding:6px}ul.queue li{padding:9px 10px;border-radius:var(--radius);cursor:pointer;display:grid;gap:5px;border-left:2px solid transparent}ul.queue li:hover{background:var(--surface-2)}ul.queue li[aria-current=true]{background:var(--accent-wash);border-left-color:var(--accent-fill)}ul.queue .t{font-weight:550;font-size:13px;line-height:1.35;color:var(--ink)}ul.queue .m{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px;color:var(--ink-3)}ul.queue .m .avatar{width:18px;height:18px;font-size:8.5px;margin-left:auto}.queue-empty{padding:18px 16px;margin:0;font-size:12.5px;color:var(--ink-3)}.chip{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border-radius:3px;white-space:nowrap;background:var(--surface-3);color:var(--ink-2)}.chip.auto{background:var(--accent-wash);color:var(--accent)}.chip.admin{background:var(--info-wash);color:var(--info)}.chip.dev{background:var(--warn-wash);color:var(--warn)}.chip.human{background:var(--surface-3);color:var(--ink-2)}main{padding:24px 28px 64px;max-width:820px}main.solo{margin:0 auto}@media(max-width:620px){main{padding:18px 16px 48px}}h1{font-size:22px;line-height:1.25;letter-spacing:-.015em;margin:0 0 12px;text-wrap:balance;font-weight:650}.meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid var(--line-soft);color:var(--ink-2);font-size:12.5px}.meta .dot{width:4px;height:4px;border-radius:50%;background:var(--line)}.meta strong{color:var(--ink);font-weight:650}.controls{display:flex;gap:14px;flex-wrap:wrap;margin:16px 0 4px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--radius)}.control{display:grid;gap:4px}.control label{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.control select{font:inherit;font-size:13px;padding:5px 8px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--ink)}.ops-actions{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 0}.destroy{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 0}.destroy.asking{font-size:13px;color:var(--ink-2)}.btn.ghost.danger{color:var(--warn);border-color:var(--warn-fill)}.thread{display:grid;gap:2px;margin-top:8px}.msg{display:grid;grid-template-columns:26px 1fr;gap:11px;padding:13px 0;border-top:1px solid var(--line-soft)}.msg:first-child{border-top:none}.who-mark{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:10.5px;font-weight:700;margin-top:1px;color:#fff;flex:none}.msg.agent .who-mark{background:var(--agent);color:#fff}.msg .name{font-weight:650;font-size:12.5px;color:var(--ink);display:flex;align-items:center;gap:8px;margin-bottom:3px}.msg .name time{font-weight:400;color:var(--ink-3);font-size:11.5px}.msg.agent .name{color:var(--agent)}.msg .text{margin:0;color:var(--ink-2);white-space:pre-wrap;overflow-wrap:anywhere}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;margin:10px 0 2px;box-shadow:var(--shadow)}.card.preview{border-color:var(--accent-fill)}.card.blocked{border-color:var(--warn)}.card h3{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3)}.card.preview h3{color:var(--accent)}.card.blocked h3{color:var(--warn)}.card p{margin:0;font-size:12.5px;color:var(--ink-2)}.card .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.card .actions a.btn{text-decoration:none;display:inline-block}.files{font-family:var(--mono);font-size:11.5px;color:var(--ink-2);display:grid;gap:3px;margin:10px 0 0;overflow-x:auto}.files .del{color:var(--warn)}.files .add{color:var(--accent)}.files .counts{color:var(--ink-3)}.rule{margin:8px 0 0;font-size:12px;color:var(--ink-3)}.rule code{font-family:var(--mono);font-size:11.5px;background:var(--surface-2);padding:1px 4px;border-radius:3px;color:var(--ink)}.msg-system{font-size:12px;color:var(--ink-3);padding:7px 0 7px 37px;border-top:1px solid var(--line-soft);margin:0}.shots{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.thumb{display:block;padding:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface-2);cursor:zoom-in;line-height:0}.thumb img{display:block;max-width:220px;max-height:180px;object-fit:cover}.thumb:hover{border-color:var(--accent-fill)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:grid;place-items:center;padding:24px;z-index:120;border:none;cursor:zoom-out}.lightbox img{max-width:100%;max-height:90vh;border-radius:var(--radius);box-shadow:0 12px 40px #0006}.pending{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px 0}.pending figure{position:relative;margin:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;line-height:0}.pending img{display:block;width:84px;height:64px;object-fit:cover}.pending button{position:absolute;top:3px;right:3px;width:19px;height:19px;border-radius:50%;border:none;background:#0000009e;color:#fff;font:inherit;font-size:12px;line-height:1;cursor:pointer;display:grid;place-items:center}.composer{margin-top:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.composer textarea{width:100%;border:none;background:transparent;resize:vertical;font:inherit;color:var(--ink);padding:12px 14px;min-height:74px;display:block}.composer textarea:focus{outline:none}.composer textarea.one-line{min-height:0;font-size:16px;font-weight:600}.composer .foot{display:flex;align-items:center;gap:8px;padding:8px 10px;border-top:1px solid var(--line-soft);background:var(--surface-2)}.composer .foot .spacer{flex:1}.attach{display:inline-flex;align-items:center;gap:7px;line-height:1;font:inherit;font-size:12px;font-weight:600;background:none;border:1px solid var(--line);border-radius:var(--radius);padding:5px 9px;color:var(--ink-2);cursor:pointer}.attach:hover{background:var(--surface)}.hint{margin:8px 2px 0;font-size:12px;color:var(--ink-3);max-width:62ch}.error{margin:10px 0 0;font-size:12.5px;font-weight:600;color:var(--warn)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:grid;place-items:center;padding:20px;z-index:100}.login{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 40px #00000038;width:100%;max-width:356px;padding:26px 24px}.login .logo{justify-content:center;margin-bottom:4px}.login p.lead{text-align:center;color:var(--ink-3);font-size:12.5px;margin:0 0 20px}.login label{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}.login input{width:100%;font:inherit;padding:8px 11px;border:1px solid var(--line);border-radius:var(--radius);background:var(--ground);color:var(--ink);margin-bottom:18px}.people{display:grid;gap:5px;margin-bottom:18px}.people button{display:flex;align-items:center;gap:9px;width:100%;font:inherit;font-size:13.5px;font-weight:550;text-align:left;background:var(--ground);border:1px solid var(--line);border-radius:var(--radius);padding:7px 10px;color:var(--ink);cursor:pointer}.people button:hover{border-color:var(--accent-fill)}.people button[aria-pressed=true]{background:var(--accent-wash);border-color:var(--accent-fill)}.login .btn{width:100%}.login .error{text-align:center}.welcome{max-width:620px;margin:0 auto;padding:64px 24px 96px}@media(max-width:620px){.welcome{padding:40px 18px 64px}}.welcome h1{font-size:26px;margin-bottom:14px}.welcome p{color:var(--ink-2);margin:0 0 14px;max-width:58ch}.welcome .steps{list-style:none;margin:22px 0 26px;padding:0;display:grid;gap:12px}.welcome .steps li{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;color:var(--ink-2);font-size:13.5px}.welcome .steps .n{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--accent-wash);color:var(--accent);font-size:11px;font-weight:700}.welcome .steps strong{color:var(--ink);font-weight:650}.examples{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--surface-2);padding:14px 16px;margin:0 0 26px}.examples h2{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3)}.examples ul{margin:0;padding-left:18px;color:var(--ink-2);font-size:13px}.examples li{margin-bottom:6px}.examples li:last-child{margin-bottom:0}.placeholder{padding:64px 28px;color:var(--ink-3);font-size:13px}.rail{display:flex;align-items:center;flex-wrap:wrap;margin:20px 0 26px;padding-bottom:4px}.rail .step-wrap{display:flex;align-items:center}.rail .step{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ink-3);white-space:nowrap}.rail .bead{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--line);background:var(--surface);flex:none}.rail .step.done .bead{background:var(--accent-fill);border-color:var(--accent-fill)}.rail .step.done{color:var(--ink-2)}.rail .step.now .bead{background:var(--surface);border-color:var(--accent-fill);box-shadow:0 0 0 3px var(--accent-wash)}.rail .step.now{color:var(--ink);font-weight:650}.rail .step.blocked .bead{background:var(--warn);border-color:var(--warn);box-shadow:none}.rail .step.blocked{color:var(--warn);font-weight:650}.rail .link{width:22px;height:1px;background:var(--line);flex:none;margin:0 7px}.rail-off{margin:20px 0 26px;font-size:12.5px;color:var(--ink-3)}.working{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--agent);font-weight:600}.pulse{width:7px;height:7px;border-radius:50%;background:var(--agent);animation:p 1.4s ease-in-out infinite;flex:none}@keyframes p{0%,to{opacity:.25}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.pulse{animation:none;opacity:.8}}.agent-failed{display:inline-flex;align-items:center;font-size:12px;font-weight:600;color:var(--warn)}
