:root{--bg:#f7f6f3;--surface:#fff;--ink:#1c1b18;--muted:#6f6c64;--line:#e4e2db;--accent:#1c1b18;--open:#b7791f;--open-bg:#fdf6e3;--done:#2f7d4f;--done-bg:#edf7f0;--skipped:#6f6c64;--skipped-bg:#f0efeb;--needs:#b0483a;--needs-bg:#fbeeec}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:15px/1.55 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit}main{max-width:860px;margin:0 auto;padding:2.5rem 1.25rem 5rem}header.site{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:2rem;display:flex}header.site h1{letter-spacing:-.01em;margin:0;font-size:1.1rem}header.site .sub{color:var(--muted);font-size:.85rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;margin-bottom:.75rem;padding:1rem 1.25rem}.project-row{justify-content:space-between;align-items:center;gap:1rem;text-decoration:none;display:flex}.project-row:hover{border-color:var(--muted)}.counts{color:var(--muted);white-space:nowrap;font-size:.85rem}.page-group{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:2rem 0 .75rem;font-size:.8rem}.comment .top{flex-wrap:wrap;align-items:baseline;gap:.6rem;margin-bottom:.35rem;display:flex}.comment .ref{font-variant-numeric:tabular-nums;font-weight:700}.comment .label{color:var(--muted);overflow-wrap:anywhere;font-size:.85rem}.comment .note{white-space:pre-wrap;margin:.25rem 0 .5rem}.comment .meta{color:var(--muted);font-size:.8rem}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:99px;padding:.15rem .6rem;font-size:.72rem;font-weight:600}.badge.open{color:var(--open);background:var(--open-bg)}.badge.pending{color:#5b48c7;background:#efecfb}.badge.done{color:var(--done);background:var(--done-bg)}.badge.skipped{color:var(--skipped);background:var(--skipped-bg)}.badge.needs-input{color:var(--needs);background:var(--needs-bg)}.resolution{border-left:3px solid var(--line);color:var(--muted);margin:.5rem 0;padding:.15rem 0 .15rem .75rem;font-size:.9rem}form.triage{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.6rem;display:flex}form.triage select,form.triage input[type=text]{border:1px solid var(--line);font:inherit;background:var(--surface);border-radius:6px;padding:.35rem .5rem;font-size:.85rem}form.triage input[type=text]{flex:1;min-width:220px}form.triage button{border:1px solid var(--ink);background:var(--ink);color:var(--surface);font:inherit;cursor:pointer;border-radius:6px;padding:.35rem .9rem;font-size:.85rem}.empty{color:var(--muted);text-align:center;padding:3rem 0}.login{text-align:center;max-width:360px;margin:18vh auto 0}.login .button{border:1px solid var(--ink);background:var(--ink);color:var(--surface);border-radius:8px;margin-top:1.25rem;padding:.6rem 1.4rem;text-decoration:none;display:inline-block}.login .error{color:var(--needs);margin-top:1rem;font-size:.9rem}.backend-note{color:var(--muted);text-align:center;margin-top:3rem;font-size:.8rem}main.wide{max-width:none;padding:1.1rem 1.5rem 4rem}.appbar{z-index:20;background:var(--bg);border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:1rem;padding:.7rem 1.5rem;display:flex;position:sticky;top:0}.appbar h1{letter-spacing:-.01em;margin:0;font-size:1.02rem}.appbar .sub{color:var(--muted);font-size:.82rem}.attention{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.65rem 1rem;display:flex}.attention.hot{border-left-color:#8c473d}.attention-count{color:#8c473d;letter-spacing:-.01em;font-size:1.35rem;font-weight:700}.attention-calm{color:var(--muted);font-size:.95rem}.att-chip{border:1px solid var(--line);font:inherit;background:var(--surface);cursor:pointer;border-radius:99px;padding:.3rem .8rem;font-size:.82rem;font-weight:600}.att-chip.answer{color:#8c473d;background:#f6ebe8;border-color:#e0d6d2}.att-chip.confirm{color:#52468c;background:#edeaf7;border-color:#ddd8ea}.att-chip.sel{outline-offset:-1px;outline:2px solid}.attention-agg{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:.82rem}.board-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip-btn{border:1px solid var(--line);background:var(--surface);font:inherit;color:var(--muted);cursor:pointer;border-radius:99px;align-items:center;gap:.35rem;padding:.25rem .7rem;font-size:.8rem;display:inline-flex}.chip-btn.sel{border-color:var(--ink);background:var(--ink);color:var(--surface)}.chip-count{color:#a5a199;font-size:.72rem;font-weight:700}.chip-btn.sel .chip-count{color:var(--surface)}.chip-count.hot{color:#8c473d}.chip-btn.sel .chip-count.hot{color:#f2b8ac}.tools-right{align-items:center;gap:.9rem;display:flex}.live{color:var(--muted);white-space:nowrap;font-size:.78rem}.live-dot{background:#46614f;border-radius:50%;width:7px;height:7px;margin-right:.3rem;animation:4s ease-in-out infinite livepulse;display:inline-block}@keyframes livepulse{0%,to{opacity:1}50%{opacity:.35}}.viewtoggle{border:1px solid var(--line);border-radius:8px;display:flex;overflow:hidden}.viewtoggle button{background:var(--surface);font:inherit;color:var(--muted);cursor:pointer;border:none;padding:.35rem .9rem;font-size:.85rem}.viewtoggle button.sel{background:var(--ink);color:var(--surface)}.moved-chip{border:1px solid var(--line);background:var(--surface);font:inherit;color:var(--muted);cursor:pointer;border-radius:99px;margin:-.4rem 0 .6rem;padding:.2rem .7rem;font-size:.78rem;display:block}.lane-labels{text-transform:uppercase;letter-spacing:.08em;color:#a5a199;gap:.9rem;margin-bottom:.35rem;font-size:.7rem;font-weight:700;display:grid}.lane-labels .human-label{color:#8c473d;border-bottom:1px solid #e0d6d2;grid-column:2/4;padding-bottom:.2rem}.board{align-items:start;gap:.9rem;min-width:1000px;display:grid}main.wide{overflow-x:auto}.lane{background:#f0efeb;border-radius:12px;min-height:160px;padding:.6rem;transition:background .12s,opacity .12s}.lane.human{background:var(--surface);box-shadow:0 1px 3px #1c1b180d}.lane.lane-needs-input.human{border:1px solid #e0d6d2}.lane.lane-pending.human{border:1px solid #ddd8ea}.lane.lane-closed{background:#f0efeb}.lane.over{outline:2px dashed var(--muted);outline-offset:-2px}.lane.dimmed{opacity:.35}.lane-head{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);justify-content:space-between;align-items:baseline;padding:.2rem .4rem .15rem;font-size:.8rem;font-weight:600;display:flex}.lane-count{font-variant-numeric:tabular-nums}.lane-subhead{color:#a5a199;margin:0 0 .5rem;padding:0 .4rem;font-size:.74rem;line-height:1.35}.lane-quiet{color:#a5a199;text-align:center;border:1px dashed #d8d5cc;border-radius:8px;margin:.1rem .2rem .4rem;padding:2.2rem .75rem;font-size:.8rem}.rail-collapse{text-transform:none;letter-spacing:0;margin-left:.5rem}.rail{cursor:pointer;background:#f0efeb;border-radius:12px;flex-direction:column;gap:.6rem;min-height:160px;padding:.75rem .6rem;display:flex}.rail.over{outline:2px dashed var(--muted);outline-offset:-2px}.rail-label{writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);align-self:center;font-size:.78rem;font-weight:700}.rail-bars{flex-direction:column;gap:3px;margin-top:auto;display:flex}.rail-bar{background:#cfccc3;border-radius:2px;min-width:3px;height:4px}.rail-hint{color:#a5a199;text-align:center;font-size:.62rem}.kc{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--line);cursor:pointer;--ring-color:transparent;border-radius:9px;margin-bottom:.5rem;padding:.55rem .75rem;box-shadow:0 1px 3px #1c1b180d}.kc.st-needs-input{border-left-color:#8c473d}.kc.st-pending{border-left-color:#52468c}.kc.st-done{border-left-color:#46614f}.kc.dragging{opacity:.5}.kc-line1{align-items:baseline;gap:.5rem;display:flex}.kc-ref{color:#a5a199;font-variant-numeric:tabular-nums;flex:none;font-size:.75rem;font-weight:700}.kc-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.92rem;font-weight:600;overflow:hidden}.kc-title.untitled{color:var(--muted);font-style:italic;font-weight:400}.kc-age{color:var(--muted);flex:none;font-size:.75rem}.kc-age.stale.wo-answer{color:#8c473d;font-weight:600}.kc-age.stale.wo-confirm{color:#52468c;font-weight:600}.kc-line2{align-items:baseline;gap:.5rem;min-width:0;margin-top:.15rem;font-size:.78rem;display:flex}.kc-wo{flex:none;font-weight:600}.kc-wo.wo-answer{color:#8c473d}.kc-wo.wo-confirm{color:#52468c}.kc-wo.wo-done{color:#46614f}.kc-wo.wo-quiet{color:#a5a199}.kc-wo.wo-agent{color:#3d6a8c}.kc-loc{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.kc-vw{color:#a5a199;flex:none}.kc-round{color:var(--muted);border:1px solid var(--line);border-radius:99px;flex:none;padding:.05rem .45rem;font-size:.68rem;font-weight:600}.kc-body{cursor:default;margin-top:.5rem}.kc-note{white-space:pre-wrap;margin:0;font-size:.9rem}.kc-meta{color:var(--muted);margin-top:.35rem;font-size:.74rem}.kc-thumbs{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;display:flex}.kc-thumb{border:1px solid var(--line);background:#f0efeb;border-radius:6px;width:72px;height:72px;display:block;overflow:hidden}.kc-thumb img{object-fit:cover;width:100%;height:100%;display:block}.kc-attaching{color:var(--muted);align-self:center;font-size:.74rem}.kc-addimg{cursor:pointer}.kc-roundline{margin-top:.4rem}.kc-tried{color:var(--muted);border-left:3px solid var(--line);padding:.15rem 0 .15rem .6rem;font-size:.8rem}.kc-followup{color:#3d3b36;margin-top:.2rem;padding-left:.6rem;font-size:.8rem}.kc-resolution{background:#f0efeb;border-radius:8px;margin-top:.5rem;padding:.5rem .7rem;font-size:.84rem}.kc-restag{text-transform:uppercase;letter-spacing:.07em;color:#a5a199;margin-bottom:.25rem;font-size:.62rem;font-weight:700;display:block}.kc-actions{flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:.55rem;display:flex}.btn.confirm{color:#fff;font:inherit;cursor:pointer;background:#52468c;border:1px solid #52468c;border-radius:7px;padding:.35rem .9rem;font-size:.82rem;font-weight:600}.btn.confirm.answer{background:#8c473d;border-color:#8c473d}.linkish{appearance:none;font:inherit;color:var(--muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0;font-size:.78rem;text-decoration:underline}.linkish:hover{color:var(--ink)}.linkish.del{color:#b3aca3;margin-left:auto}.linkish.del:hover{color:var(--needs)}.del-warn{color:var(--needs);font-size:.8rem;font-weight:600}.btn.danger{border:1px solid var(--needs);background:var(--needs);color:#fff;font:inherit;cursor:pointer;border-radius:7px;padding:.35rem .9rem;font-size:.82rem;font-weight:600}.reason-editor textarea{border:1px solid var(--line);width:100%;font:inherit;resize:vertical;box-sizing:border-box;border-radius:6px;margin-top:.4rem;padding:.45rem .6rem;font-size:.85rem}.kc.arrive{animation:.4s ease-out kcArrive}@keyframes kcArrive{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.kc.ring{animation:1.6s ease-out kcRing}.kc.ring-pending{--ring-color:#52468c73}.kc.ring-needs-input{--ring-color:#8c473d73}.kc.ring-done{--ring-color:#46614f73}.kc.ring-open,.kc.ring-skipped{--ring-color:#6f6c6459}@keyframes kcRing{0%{box-shadow:0 0 0 0 var(--ring-color)}to{box-shadow:0 0 0 10px #0000}}.kc:hover{animation:none}@media (prefers-reduced-motion:reduce){.kc.arrive,.live-dot{animation:none}}.lt-summary{color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;gap:1.2rem;margin-bottom:.8rem;padding:.55rem 1rem;font-size:.85rem;display:flex}.lt-summary strong{color:var(--ink)}.lt-bypage{margin-left:auto;font-size:.78rem}.lt-head,.lt-row{grid-template-columns:56px 1fr 220px 130px 70px 60px;align-items:baseline;gap:.6rem;padding:.45rem .75rem;display:grid}.lt-head{border-bottom:1px solid var(--line);padding-bottom:.3rem}.lt-h{appearance:none;font:inherit;text-transform:uppercase;letter-spacing:.06em;color:#a5a199;text-align:left;cursor:pointer;background:0 0;border:none;padding:0;font-size:.72rem;font-weight:700}.lt-h.sel{color:var(--ink)}.lt-row{background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:8px;margin-top:.35rem;font-size:.85rem}.lt-row.ours{background:#fdfcfa}.lt-row.closed{opacity:.62}.lt-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.lt-title.untitled{color:var(--muted);font-style:italic;font-weight:400}.lt-where{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.lt-rounds{font-variant-numeric:tabular-nums;color:var(--muted)}.lt-expanded{margin-top:.35rem}.lt-expanded .kc{cursor:pointer}.lt-closed-toggle{margin:1rem 0 .4rem;display:block}.setup{text-align:center;max-width:620px;margin:4rem auto}.setup-flow{color:var(--ink);margin-bottom:.6rem;font-size:1.05rem}.setup-sub{color:var(--muted);font-size:.9rem}.setup-snippet{background:var(--surface);border:1px solid var(--line);overflow-wrap:anywhere;text-align:left;border-radius:8px;margin:1rem 0;padding:.8rem 1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;display:block}@media (max-width:980px){.board,.lane-labels{min-width:960px}}@media (min-width:1680px){.lane{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));align-content:start;gap:.5rem;display:grid}.lane-head,.lane-subhead,.lane-quiet{grid-column:1/-1}.lane-subhead,.lane-head,.lane .kc{margin-bottom:0}.lane .kc.expanded{grid-column:1/-1}.lt-head,.lt-row{grid-template-columns:64px minmax(0,1.4fr) minmax(0,1fr) 160px 80px 64px}}@media (min-width:1920px){body{font-size:16px}}
