body,html{margin:0}[hidden]{display:none!important}img{max-width:100%}:root{padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0);--bg:#F1F3F5;--surface:#FFFFFF;--sunk:#E7EBEF;--ink:#14202B;--muted:#5B6976;--line:#D4DBE2;--accent:#B7791F;--accent-ink:#875810;--accent-soft:#F6EBD8;--ok:#1D7A52;--ok-soft:#DDF1E7;--warn:#A8530A;--warn-soft:#FBE9D6;--info:#24619F;--info-soft:#DEEAF6;--display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;--body:"IBM Plex Sans",system-ui,-apple-system,sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0D141A;--surface:#151F28;--sunk:#1B2732;--ink:#E5EBF0;--muted:#94A2AF;--line:#283643;--accent:#E3A640;--accent-ink:#EDB862;--accent-soft:#3A2D16;--ok:#52C48E;--ok-soft:#173326;--warn:#F2A251;--warn-soft:#3A2614;--info:#72AEEA;--info-soft:#172B40;color-scheme:dark}}:root[data-theme=dark]{--bg:#0D141A;--surface:#151F28;--sunk:#1B2732;--ink:#E5EBF0;--muted:#94A2AF;--line:#283643;--accent:#E3A640;--accent-ink:#EDB862;--accent-soft:#3A2D16;--ok:#52C48E;--ok-soft:#173326;--warn:#F2A251;--warn-soft:#3A2614;--info:#72AEEA;--info-soft:#172B40;color-scheme:dark}body,html{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:14px;line-height:1.5}*{box-sizing:border-box}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{height:100%;display:flex;flex-direction:column;max-width:1280px;margin:0 auto;padding-inline:16px}header.top{gap:12px;padding-block:12px;flex-wrap:wrap}.mark,header.top{display:flex;align-items:center}.mark{gap:8px;font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.01em}.mark svg{width:22px;height:22px}.client{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 10px;background:var(--surface)}.spacer{flex:1 1}.reset{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:5px 10px;font-size:12px;cursor:pointer}.tabs{display:none;gap:4px;background:var(--sunk);padding:3px;border-radius:10px;width:100%}.tabs button{flex:1 1;border:0;background:transparent;padding:7px;border-radius:8px;font-weight:600;font-size:13px;cursor:pointer;color:var(--muted)}.tabs button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08)}.main{flex:1 1;display:grid;grid-template-columns:minmax(300px,380px) 1fr;grid-gap:16px;gap:16px;padding-bottom:16px}.main,.pane{min-height:0}.pane{min-width:0;display:flex;flex-direction:column}@media (max-width:860px){.tabs{display:flex}.main{grid-template-columns:1fr}.pane[data-hidden=true]{display:none}}.ctx{overflow-y:auto;border:1px solid var(--line);border-radius:14px}.ctx,.meter{background:var(--surface)}.meter{position:-webkit-sticky;position:sticky;top:0;border-bottom:1px solid var(--line);padding:12px 14px;z-index:1}.meter-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.meter b{font-family:var(--display);font-size:20px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meter small{color:var(--muted);font-size:12px}.bar{height:6px;background:var(--sunk);border-radius:6px;margin-top:8px;overflow:hidden;display:flex}.bar span{height:100%;transition:width .5s ease}.bar .base{background:var(--muted)}.bar .od{background:var(--accent)}.legend{display:flex;gap:12px;margin-top:6px;font-size:11px;color:var(--muted)}.legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px;vertical-align:0}.sec{padding:12px 14px;border-bottom:1px solid var(--line)}.sec:last-child{border-bottom:0}.sec h3{margin:0 0 8px;font-family:var(--display);font-size:13px;font-weight:700;display:flex;align-items:center;gap:8px}.sec h3 .n{font-family:var(--mono);font-size:11px;color:var(--accent-ink);font-weight:500}.sec h3 .tag{margin-left:auto;font-family:var(--body);font-weight:500;font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.sec p{margin:0 0 6px;color:var(--muted);font-size:12.5px}.stages{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.stages span{font-size:11px;padding:2px 7px;border-radius:999px;background:var(--sunk);color:var(--muted)}.kv{display:grid;grid-template-columns:auto 1fr;grid-gap:3px 10px;gap:3px 10px;font-size:12.5px}.kv dt{color:var(--muted)}.kv dd{margin:0;min-width:0}.sw{display:inline-flex;gap:3px;vertical-align:-2px}.sw i{width:12px;height:12px;border-radius:3px;border:1px solid var(--line)}.files{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.file{font-family:var(--mono);font-size:11px;padding:2px 6px;border-radius:5px;border:1px dashed var(--line);color:var(--muted)}.file.open{border-style:solid;border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft)}.list{flex-direction:column;gap:4px}.list,.row{display:flex}.row{align-items:center;gap:8px;font-size:12.5px;min-width:0}.row .nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--line)}.dot.on{background:var(--ok)}.row .st{margin-left:auto;font-size:11px;color:var(--muted);white-space:nowrap}.row.new{animation:flash 1.2s ease}.row.tn{display:grid;grid-template-columns:8px minmax(0,1fr) auto minmax(0,9.5em);grid-column-gap:8px;column-gap:8px}.row.tn .st{margin-left:0}.row.tn .via{font-size:11px;color:var(--ink);text-align:right;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes flash{0%{background:var(--accent-soft)}to{background:transparent}}.subh{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:10px 0 4px;font-weight:600}.skill{display:grid;grid-template-columns:1fr auto;grid-gap:0 8px;gap:0 8px;padding:5px 7px;border-radius:7px;border:1px solid transparent}.skill .nm{font-family:var(--mono);font-size:11.5px}.skill .use{grid-column:1/-1;font-size:11.5px;color:var(--muted)}.skill .tk{font-family:var(--mono);font-size:10.5px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.skill.loaded{border-color:var(--accent);background:var(--accent-soft)}.skill.loaded .tk{color:var(--accent-ink)}.ledger{width:100%;border-collapse:collapse;font-size:12px}.ledger th{font-weight:500;color:var(--muted);text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;padding:4px}.ledger td{padding:5px 4px;border-top:1px solid var(--line);vertical-align:top}.ledger td.c{text-align:center;white-space:nowrap}.ok{color:var(--ok)}.ok,.pend{font-weight:600}.pend{color:var(--warn)}.empty,.na{color:var(--muted)}.empty{font-size:12px;font-style:italic}.chatwrap{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}.phead{padding:10px 14px;border-bottom:1px solid var(--line);flex-direction:column}.phead,.phead .t{display:flex;gap:8px}.phead .t{align-items:center;flex-wrap:wrap}.phead .t b{font-family:var(--display);font-size:15px}.mode{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--sunk);color:var(--muted)}.mode.do{background:var(--accent-soft);color:var(--accent-ink)}.rail{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:3px;gap:3px}.rail div{font-size:10px;text-align:center;color:var(--muted);padding-top:5px;border-top:3px solid var(--sunk);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail div.done{border-color:var(--ok);color:var(--ink)}.rail div.cur{border-color:var(--accent);color:var(--accent-ink);font-weight:600}.feed{flex:1 1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;min-height:0}.msg{max-width:88%;padding:9px 12px;border-radius:12px;font-size:14px}.msg p{margin:0 0 6px}.msg p:last-child{margin:0}.msg ul{margin:4px 0;padding-left:18px}.msg.user{align-self:flex-end;background:var(--ink);color:var(--bg);border-bottom-right-radius:4px}.msg.agent{background:var(--sunk);border-bottom-left-radius:4px}.msg.agent,.route{align-self:flex-start}.route{font-size:11.5px;color:var(--muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}.route b{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:5px;background:var(--info-soft);color:var(--info)}.route b.do{background:var(--accent-soft);color:var(--accent-ink)}.tool{align-self:stretch;font-family:var(--mono);font-size:11.5px;border-left:2px solid var(--line);padding:2px 0 2px 10px;color:var(--muted);min-width:0;overflow-wrap:anywhere}.tool .call{color:var(--ink)}.tool .call .fn{color:var(--info);font-weight:500}.tool.enf{border-left-color:var(--accent)}.tool .enfn{display:inline-block;margin-top:2px;font-family:var(--body);font-size:11px;color:var(--accent-ink)}.sys{align-self:center;font-size:12px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);color:var(--muted);text-align:center}.sys.pass{border-color:var(--ok);color:var(--ok);background:var(--ok-soft)}.sys.stage{border:0;padding:2px 0;font-weight:600;color:var(--accent-ink);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.widget{align-self:flex-start;width:min(100%,380px);border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface);box-shadow:0 2px 8px rgba(0,0,0,.06)}.widget .wk{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.widget h4{margin:2px 0 4px;font-family:var(--display);font-size:15px}.widget p{margin:0 0 10px;font-size:13px;color:var(--muted)}.widget .opts{display:flex;flex-direction:column;gap:6px}.widget button{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:8px 10px;cursor:pointer}.widget button small{display:block;color:var(--muted);font-size:11.5px}.widget button.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.widget button.primary small{color:var(--bg);opacity:.75}.widget button:disabled{cursor:default;opacity:.45}.widget button.chosen{opacity:1;outline:2px solid var(--accent)}.compose{border-top:1px solid var(--line);padding:10px 12px;display:flex;flex-direction:column;gap:8px}.chips{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.chip{border:1px solid var(--line);background:var(--surface);padding:5px 11px;font-size:12.5px;cursor:pointer}.chip:hover{border-color:var(--accent)}.chip .k{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-right:5px}form.in{display:flex;gap:8px}form.in input{flex:1 1;min-width:0;border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:9px 12px;font:inherit;color:var(--ink)}form.in button{border:0;background:var(--accent);color:#1b1306;font-weight:600;border-radius:10px;padding:0 14px;cursor:pointer}.chip:disabled,form.in button:disabled{opacity:.5;cursor:default}.typing{align-self:flex-start;display:flex;gap:4px;padding:10px 12px}.typing i{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:b 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes b{0%,80%,to{opacity:.25}40%{opacity:1}}.foot{font-size:11px;color:var(--muted);text-align:center;padding-bottom:8px}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.seg{display:flex;background:var(--sunk);border-radius:8px;padding:2px}.seg button{border:0;background:transparent;padding:4px 10px;border-radius:6px;font-size:12px;cursor:pointer;color:var(--muted)}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);font-weight:600}.stopbtn{border:1px solid var(--line)!important;background:var(--surface)!important;color:var(--ink)!important;border-radius:10px;padding:0 14px;cursor:pointer;font-weight:600}.tool.err{border-left-color:var(--warn)}.tool.err>div:nth-child(2){color:var(--warn)}.msg code{font-family:var(--mono);font-size:12px;background:var(--surface);padding:0 4px;border-radius:4px}.msg.user{white-space:pre-wrap}.sys.err{border-color:var(--warn);color:var(--warn)}.usage{font-size:11px;color:var(--muted);margin-top:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}a.reset{text-decoration:none;color:var(--ink)}.picker{max-width:560px;margin:0 auto;padding:48px 16px}.picker h1{font-family:var(--display);font-size:28px;margin:0 0 4px}.picker .lede{color:var(--muted);margin:0 0 20px}.picker ul{list-style:none;margin:0;padding:0;gap:8px}.picker a,.picker ul{display:flex;flex-direction:column}.picker a{gap:2px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);text-decoration:none;min-height:44px}.picker a:hover{border-color:var(--accent)}.picker a span{font-size:12.5px}.picker .empty,.picker a span{color:var(--muted)}form.in .mic{flex:none;width:44px;min-height:44px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;display:grid;place-items:center;padding:0;cursor:pointer}form.in .mic svg{width:20px;height:20px}form.in .mic.on{background:var(--accent);border-color:var(--accent);color:#1b1306}.voicebar{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--ink);background:var(--sunk);border-radius:10px;padding:8px 10px;flex-wrap:wrap}.voicebar .pulse{width:10px;height:10px;border-radius:50%;background:var(--muted);flex:none}.voicebar.listening .pulse{background:var(--ok);animation:vpulse 1.2s ease-in-out infinite}.voicebar.speaking .pulse{background:var(--accent);animation:vpulse .8s ease-in-out infinite}.voicebar.thinking .pulse{background:var(--info)}.voicebar button{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:4px 10px;font-size:12px;cursor:pointer;min-height:32px}.voicebar button:first-of-type{margin-left:auto}@keyframes vpulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.5}}@media (prefers-reduced-motion:reduce){.voicebar .pulse{animation:none!important}}.skgroup{margin-bottom:6px}.skg{font-size:11px;font-weight:600;color:var(--ink);margin:10px 0 2px;display:flex;gap:6px;align-items:baseline}.skg span{color:var(--muted);font-weight:500}.skill .use{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.skill .nm .src{font-style:normal;font-family:var(--body);font-size:9.5px;font-weight:600;letter-spacing:.03em;margin-left:6px;padding:1px 5px;border-radius:4px;background:var(--sunk);color:var(--muted);vertical-align:1px}.skill .nm .src.vercel{background:var(--info-soft);color:var(--info)}.skill .nm .src.hfb-builder{background:var(--accent-soft);color:var(--accent-ink)}.skill .nm .src.mattpocock{background:var(--ok-soft);color:var(--ok)}.msg a{color:inherit;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}.msg.agent a{color:var(--info)}.msg a:hover{text-decoration-thickness:2px}.paypage{max-width:520px;margin:0 auto;padding:40px 16px}.paypage .back{color:var(--muted);font-size:13px;text-decoration:none}.paypage h1{font-family:var(--display);font-size:28px;margin:12px 0 6px}.paypage .lede{color:var(--muted);margin:0 0 20px}.paypage .plan{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:6px 16px;margin-bottom:20px}.paypage .line{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.paypage .line:last-child{border-bottom:0}.paypage .total b{font-size:18px}.paypage .cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border:0;border-radius:10px;background:var(--accent);color:#1b1306;font:inherit;font-weight:600;text-decoration:none;cursor:pointer;width:100%}.paypage .note{font-size:12px;color:var(--muted);margin-top:10px}.paypage .ok{color:var(--ok);font-weight:600}.widget a.pay{display:block;text-align:left;border:1px solid var(--accent);background:var(--accent);color:#1b1306;border-radius:9px;padding:8px 10px;text-decoration:none;font-weight:600}.widget a.pay small{display:block;font-weight:400;opacity:.8}.widget.connect form{display:flex;flex-direction:column;gap:8px}.widget.connect .cf{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted)}.widget.connect .cf input{font:inherit;font-size:13.5px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 10px}.widget.connect .cf input:focus{outline:2px solid var(--accent);outline-offset:1px}.widget.connect .cerr{color:var(--warn);margin:0}.widget.connect p a{color:inherit}form.in .clip{flex:none;width:44px;min-height:44px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;display:grid;place-items:center;padding:0;cursor:pointer}form.in .clip svg{width:20px;height:20px}form.in .clip:disabled{opacity:.5;cursor:default}.pending{display:flex;flex-wrap:wrap;gap:6px}.pchip{display:inline-flex;align-items:center;gap:4px;background:var(--sunk);border-radius:10px;padding:3px}.pchip button{border:0;background:transparent;font-size:16px;line-height:1;width:28px;height:28px;border-radius:8px;cursor:pointer;color:var(--muted)}.pchip button:hover{background:var(--surface);color:var(--ink)}.pchip.up{padding:6px 10px;font-size:12px;color:var(--muted)}.att{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.fchip{display:inline-flex;align-items:center;gap:6px;max-width:240px;padding:5px 8px;border-radius:8px;background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:12px}.fchip b{font-size:10px;letter-spacing:.04em;color:var(--accent-ink)}.fchip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.fchip small{color:var(--muted);white-space:nowrap}.fchip.img{padding:0;overflow:hidden;width:72px;height:72px}.fchip.img img{width:100%;height:100%;object-fit:cover;display:block}.chatwrap.dragging{outline:2px dashed var(--accent);outline-offset:-6px}.paypage .err{color:var(--warn);font-weight:600}.gallery{max-width:1120px;margin:0 auto;padding:0 16px 40px}.ghead{display:flex;align-items:center;gap:12px;padding:12px 0;flex-wrap:wrap}.ghead .mark{color:var(--ink);text-decoration:none}.gtitle{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:12px 0 20px;flex-wrap:wrap}.gtitle h1{font-family:var(--display);font-size:clamp(26px,4vw,34px);margin:0}.gtitle p{margin:4px 0 0;color:var(--muted)}.deckview .cta,.gallery .cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:10px;background:var(--accent);color:#1b1306;font-weight:600;text-decoration:none}.ggrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));grid-gap:16px;gap:16px}.gcard{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s}.gcard:hover{border-color:var(--accent);box-shadow:0 4px 18px rgba(0,0,0,.06)}.gprev{display:block;aspect-ratio:16/10;background:var(--sunk);position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.gprev .frame{position:absolute;inset:0;pointer-events:none}.gprev iframe{width:400%;height:400%;border:0;transform:scale(.25);transform-origin:0 0;background:#fff}.gprev .ph{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;grid-gap:4px;gap:4px;color:var(--muted);background:linear-gradient(135deg,var(--sunk),var(--accent-soft))}.gprev .ph b{font-family:var(--display);font-size:44px;color:var(--accent-ink);line-height:1}.gprev .ph small{font-size:12px}.gbody{padding:12px 14px 14px;flex-direction:column}.gbody,.grow{display:flex;gap:8px}.grow{align-items:flex-start;justify-content:space-between}.grow h2{font-family:var(--display);font-size:16px;margin:0;line-height:1.3}.grow h2 a{color:var(--ink);text-decoration:none}.chip{flex:none;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--sunk);color:var(--muted);white-space:nowrap}.chip.live{background:var(--ok-soft);color:var(--ok)}.chip.complete{background:var(--info-soft);color:var(--info)}.chip.building{background:var(--accent-soft);color:var(--accent-ink)}.grail{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:3px;gap:3px}.grail span{height:4px;border-radius:2px;background:var(--sunk)}.grail span.done{background:var(--ok)}.grail span.cur{background:var(--accent)}.gmeta{margin:0;font-size:12px;color:var(--muted)}.gact{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}.gact a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:9px;font-size:13px;font-weight:600;text-decoration:none}.gact .open{background:var(--ink);color:var(--bg)}.gact .site{border:1px solid var(--line);color:var(--ink)}.gempty{background:var(--surface);border:1px dashed var(--line);border-radius:14px;padding:40px 20px;text-align:center}.gempty h2{font-family:var(--display);margin:0 0 6px}.gempty p{color:var(--muted);max-width:52ch;margin:0 auto 16px}@media (prefers-reduced-motion:reduce){.gcard{transition:none}}.typing .tstatus{margin-left:8px;font-size:12px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.typing{align-items:center}@keyframes chipfade{0%,to{opacity:1}50%{opacity:.55}}.chip.working{animation:chipfade 1.6s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.chip.working{animation:none}}.origin{align-self:flex-start;font-size:10.5px;font-weight:600;letter-spacing:.03em;padding:2px 7px;border-radius:5px}.origin.tn{background:var(--accent-soft);color:var(--accent-ink)}.origin.conn{background:var(--info-soft);color:var(--info)}.gprev .ph.conn b{font-size:24px;color:var(--info)}.gimport{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:20px}.gimp-head h2{font-family:var(--display);font-size:16px;margin:0}.gimp-head p{margin:4px 0 10px;color:var(--muted);font-size:13px}.gimp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.gimp-list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;padding:8px 0;border-top:1px solid var(--line)}.gimp-list .nm{display:flex;flex-direction:column;min-width:0}.gimp-list .nm b{font-size:14px}.gimp-list .nm a,.gimp-list .nm b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gimp-list .nm a{font-size:12px;color:var(--muted)}.gimp-list button{min-height:44px;padding:0 14px;border-radius:9px;border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent-ink);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.src-chip{font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--info-soft);color:var(--info);white-space:nowrap}.gerr{color:var(--warn);font-weight:600}.gnote{color:var(--muted);font-size:13px}@media (max-width:560px){.gimp-list li{grid-template-columns:1fr;gap:6px}.gimp-list button{width:100%}}.addhub{margin-top:28px}.addhub h2{font-family:var(--display);font-size:16px;margin:0 0 8px}.addhub form{display:flex;gap:8px}.addhub input{flex:1 1;min-width:0;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font:inherit;background:var(--surface);color:var(--ink)}.addhub button{min-height:44px;padding:0 16px;border:0;border-radius:10px;background:var(--accent);color:#1b1306;font:inherit;font-weight:600;cursor:pointer}.addhub ul{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.addhub .addrow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.addhub .addrow span{display:flex;flex-direction:column;min-width:0}.addhub .addrow small{color:var(--muted);font-size:12px}.gimp-list .nm .xid{font-family:var(--mono);font-size:11px;color:var(--muted)}.gsync{display:block;margin-top:2px;font-size:12px}.charges{width:100%;border-collapse:collapse;margin-top:10px;font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.charges td,.charges th{padding:4px 0;text-align:right;font-weight:400;vertical-align:top}.charges th[scope=row]{text-align:left;color:var(--ink)}.charges thead th{color:var(--muted);font-size:11px;border-bottom:1px solid var(--line)}.charges thead th:first-child{text-align:left}.charges small{display:block;color:var(--muted);font-size:10.5px}.charges tfoot td,.charges tfoot th{border-top:1px solid var(--line);font-weight:600;padding-top:6px}.deckview{max-width:1100px;margin:0 auto;padding:0 16px 64px}.deckview h1{font-family:var(--display);font-size:28px;margin:24px 0 4px}.deckview .lede{color:var(--muted);font-size:13px;margin-bottom:20px}.deckview .slides{list-style:none;display:grid;grid-gap:20px;gap:20px;padding:0;margin:0}.deckview .slides img{width:100%;height:auto;display:block;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.12),0 8px 24px rgba(0,0,0,.08)}.dstart{max-width:520px;margin:40px auto 12px;padding:28px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.dstart h2{font-family:var(--display);font-size:22px;margin:0 0 6px}.dstart p{color:var(--muted);font-size:14px;margin:0 0 20px;line-height:1.5}.dstart label{display:block;font-size:12px;font-weight:600;margin-bottom:6px}.dstart .row{display:flex;gap:8px}.dstart input{flex:1 1;min-width:0;font:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg,#fff);color:inherit}.dstart button[type=submit]{font:inherit;font-weight:600;font-size:14px;padding:10px 16px;border:0;border-radius:10px;background:var(--accent);color:var(--on-accent,#fff);cursor:pointer;white-space:nowrap}.dstart .link{margin-top:12px;background:none;border:0;padding:4px 0;color:var(--muted);font:inherit;font-size:13px;text-decoration:underline;cursor:pointer}.msg .inlineimg{display:block;max-width:100%;max-height:360px;border-radius:10px;margin:8px 0;border:1px solid var(--line)}@media (max-width:520px){.dstart{margin:16px 0;padding:20px}.dstart .row{flex-direction:column}.dstart .row>*{width:100%;flex:none}}.gbrain{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;margin:0 0 20px;background:var(--surface)}.gbrain h2{font-size:15px;margin:0 0 2px}.gbrain p{margin:0;color:var(--muted);font-size:13px}.gbrain .ghost{white-space:nowrap;font-size:13px;font-weight:600;padding:9px 14px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:inherit}.newbiz{display:flex;gap:8px;flex-wrap:wrap}.newbiz input{flex:1 1 180px;font:inherit;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:transparent;color:inherit}@media (max-width:520px){.gbrain{flex-direction:column;align-items:flex-start}}.gbrain p a{color:var(--ink,inherit);text-decoration:underline;text-underline-offset:2px}.drail{overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding-bottom:2px}.ctx.embedded,.dpanel{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex:none}.ctx.embedded{overflow:visible}.ctx.embedded .meter{position:static;border-radius:0}.ctxh,.dpanel h2{font-family:var(--display);font-size:14px;margin:0;padding:12px 14px 8px;display:flex;align-items:baseline;gap:8px}.ctxh small,.dpanel h2 small{margin-left:auto;font-family:var(--body);font-weight:500;font-size:11px;color:var(--muted)}.ctxh{border-bottom:1px solid var(--line)}@media (max-width:860px){.drail[data-tab=ctx] .dpanel,.drail[data-tab=map] .ctx{display:none}}.layers{display:flex;flex-direction:column;padding:0 8px 8px}.lrow{display:grid;grid-template-columns:22px minmax(0,1fr) auto;grid-gap:2px 8px;gap:2px 8px;align-items:center;text-align:left;width:100%;border:1px solid transparent;background:none;border-radius:10px;padding:7px 8px;cursor:pointer;min-height:44px}.lrow:hover:not(:disabled){background:var(--sunk)}.lrow:disabled{cursor:default}.lrow.active{border-color:var(--accent);background:var(--accent-soft)}.lrow .ix{font-family:var(--mono);font-size:11px;color:var(--muted);text-align:center}.lrow.s-done .ix{color:var(--ok);font-weight:700}.lrow .nm{font-weight:600;font-size:13px;min-width:0}.lrow .ex{font-size:11px;color:var(--muted);min-width:0;text-overflow:ellipsis;white-space:nowrap}.lrow .cov,.lrow .ex{grid-column:2/4;overflow:hidden}.lrow .cov{height:4px;border-radius:4px;background:var(--sunk);margin-top:2px}.lrow .cov span{display:block;height:100%;background:var(--muted);transition:width .5s ease}.lrow.s-done .cov span{background:var(--ok)}.lrow.s-working .cov span{background:var(--accent)}.lrow.s-started .cov span{background:var(--warn)}.pill{font-size:10.5px;font-weight:600;padding:2px 7px;border-radius:999px;white-space:nowrap;background:var(--sunk);color:var(--muted);grid-row:1;grid-column:3}.pill.done{background:var(--ok-soft);color:var(--ok)}.pill.working{background:var(--accent-soft);color:var(--accent-ink)}.pill.started{background:var(--warn-soft);color:var(--warn)}.handoff{display:flex;gap:10px;align-items:center;margin:0 12px 12px;padding:8px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:inherit}.handoff:hover{border-color:var(--accent)}.handoff img{width:96px;aspect-ratio:16/9;object-fit:cover;border-radius:6px;flex:none}.handoff b{display:block;font-size:13px}.handoff small{color:var(--muted);font-size:11.5px}.tree{font-family:var(--mono);font-size:11.5px;padding:0 12px 12px;display:flex;flex-direction:column}.tree .r{display:flex;gap:6px;align-items:baseline;padding:1px 4px;color:var(--muted);opacity:.55;white-space:nowrap;min-width:0;border-radius:4px;transition:background .8s ease}.tree .r.dir,.tree .r.wr{opacity:1;color:var(--ink)}.tree .r.dir{font-weight:500}.tree .r.root a{color:var(--ink);text-decoration:none;border-bottom:1px dotted var(--muted)}.tree .r.root a,.tree .r.root span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}.tree .r.fl{background:var(--accent-soft)}.tree .g{color:var(--muted);opacity:.7;white-space:pre}.tree .ok{color:var(--ok)}.tree .ok.off{color:var(--muted)}.tree .d{font-family:var(--body);font-size:10.5px;overflow:hidden;text-overflow:ellipsis;margin-left:auto;padding-left:6px}.dtool,.tree .d{color:var(--muted);min-width:0}.dtool{align-self:stretch;font-size:12.5px;border-left:2px solid var(--ok);padding:1px 0 1px 10px}.dtool summary{cursor:pointer;list-style:none;display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}.dtool summary::-webkit-details-marker{display:none}.dtool summary .ic{font-size:11px;color:var(--ok);font-weight:700}.dtool summary em{font-style:normal;font-size:11px;color:var(--accent-ink)}.dtool.err{border-left-color:var(--warn)}.dtool.err summary .ic{color:var(--warn)}.dtool.enf{border-left-color:var(--accent)}.dtool .call,.dtool .res{font-family:var(--mono);font-size:11px;overflow-wrap:anywhere;margin-top:3px}.dtool .call .fn{color:var(--info)}.dtool[open] summary{color:var(--ink)}.lrow.s-onfile .cov span{background:var(--info)}.lrow.s-onfile .ix,.pill.onfile{color:var(--info)}.pill.onfile{background:var(--info-soft)}.msg.user a.fchip,.msg.user a.fchip span{color:var(--ink);text-decoration:none}.widget .wbody{font-size:13px;color:var(--muted);margin:0 0 10px}.widget .wbody p{margin:0 0 6px}.widget .wbody ul{margin:2px 0 6px;padding-left:18px}.widget .wbody b{color:var(--ink)}.widget:has(.wbody){width:min(100%,520px)}.logojob{align-self:flex-start;width:min(100%,380px);border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface);box-shadow:0 2px 8px rgba(0,0,0,.06)}.logojob .wk{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.logojob h4{margin:2px 0 8px;font-family:var(--display);font-size:15px}.logojob .lj-time{display:flex;align-items:baseline;gap:8px}.logojob .lj-time b{font-size:22px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.01em}.logojob .lj-time span{font-size:12px;color:var(--muted)}.logojob .lj-bar{height:6px;border-radius:999px;background:var(--sunk);margin:8px 0;overflow:hidden}.logojob .lj-bar i{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width 1s linear}.logojob .lj-step{margin:0 0 6px;font-size:13px}.logojob .lj-concepts{display:flex;gap:6px;margin:0 0 8px;padding:0;list-style:none}.logojob .lj-concepts li{font-size:11.5px;padding:2px 8px;border-radius:999px;background:var(--sunk);color:var(--muted)}.logojob .lj-concepts li.done{background:var(--ok-soft);color:var(--ok)}.logojob .lj-note{margin:0;font-size:12.5px;color:var(--muted)}.logojob.failed{border-color:var(--warn)}@media (prefers-reduced-motion:reduce){.logojob .lj-bar i{transition:none}}.widget .inlineimg{display:block;max-width:100%;border-radius:8px;margin:4px 0 8px;border:1px solid var(--line)}.widget:has(.inlineimg){width:min(100%,560px)}.threads{display:flex;flex-direction:column;gap:2px;padding:0 8px 10px;max-height:40vh;overflow-y:auto}.newthread,.thread{display:flex;align-items:center;gap:8px;min-height:36px;padding:6px 8px;border:1px solid transparent;border-radius:8px;text-decoration:none;color:inherit;font-size:13px}.newthread:hover,.thread:hover{background:var(--sunk)}.thread.on{border-color:var(--accent);background:var(--accent-soft)}.thread .nm{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread .when{flex:none;font-size:11px;color:var(--muted)}.newthread{font-weight:600;color:var(--accent-ink)}