:root{--bg:#101114;--surface:#17181c;--surface-2:#1e2025;--line:#2a2c33;--line-strong:#3a3d46;--text:#e7e8ea;--muted:#9b9ea8;--accent:#7fb0ff;--accent-ink:#0d1420;--ok:#6fcf97;--warn:#e8b45a;--bad:#f08a80;--radius:5px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-size:13px}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.45}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1{margin:0;font-size:1.25rem;font-weight:600}h2{margin:0;font-size:1rem;font-weight:600}h3{margin:0 0 var(--s2);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;font-weight:600}p{margin:var(--s1) 0}code,kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}code{background:var(--surface-2);padding:0 var(--s1);margin-right:var(--s1);border-radius:3px}kbd{border:1px solid var(--line-strong);color:var(--muted);border-radius:3px;padding:0 4px}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.muted{color:var(--muted)}.small{font-size:.88rem}.strong{font-weight:600}.error{color:var(--bad);margin:var(--s1) 0}.okmsg{color:var(--ok);margin:var(--s1) 0}.ellipsis{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.row{align-items:center;gap:var(--s2);display:flex}.wrap{flex-wrap:wrap}.end{justify-content:flex-end}.spread{justify-content:space-between;align-items:center;gap:var(--s3);display:flex}.stack{gap:var(--s2);flex-direction:column;align-items:flex-start;display:flex}.stack label{width:100%}.plain{border:0;min-width:0;margin:0;padding:0;display:contents}input,select,textarea{background:var(--bg);color:var(--text);border:1px solid var(--line-strong);border-radius:var(--radius);font:inherit;width:100%;padding:5px 8px}input[type=file]{padding:3px}select{width:auto;max-width:100%}label select{width:100%}textarea{resize:vertical}label{color:var(--muted);font-size:.88rem;display:block}label>input,label>select,label>textarea{color:var(--text);margin-top:2px;font-size:1rem}.btn{background:var(--surface-2);color:var(--text);border:1px solid var(--line-strong);border-radius:var(--radius);font:inherit;cursor:pointer;white-space:nowrap;padding:5px 10px;display:inline-block}.btn:hover{background:#272a31;text-decoration:none}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn.primary kbd{color:var(--accent-ink);border-color:var(--accent-ink)}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.ghost:hover{color:var(--text);background:var(--surface-2)}.btn.small{padding:2px 8px;font-size:.9rem}.action-btn{gap:var(--s2);align-items:center;display:inline-flex}.action-btn .error,.action-btn .okmsg{margin:0;font-size:.88rem}.badge{border:1px solid var(--line-strong);color:var(--muted);white-space:nowrap;border-radius:3px;padding:0 6px;font-size:.82rem;display:inline-block}.badge.ok{color:var(--ok);border-color:#2e5a42}.badge.warn{color:var(--warn);border-color:#6b5427}.badge.bad{color:var(--bad);border-color:#6f3a35}.badge.info{color:var(--accent);border-color:#34507c}.count{color:var(--muted);margin-left:var(--s1);font-size:.9rem;font-weight:400}.empty{color:var(--muted);padding:var(--s3) 0;margin:0}.shell{grid-template-columns:190px minmax(0,1fr);height:100vh;display:grid}.side{background:var(--surface);border-right:1px solid var(--line);padding:var(--s3) var(--s2);gap:var(--s3);flex-direction:column;display:flex;overflow-y:auto}.brand{padding:0 var(--s2);font-weight:700}.nav{padding:4px var(--s2);border-radius:var(--radius);color:var(--muted);justify-content:space-between;display:flex}.nav:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.nav.on{background:var(--surface-2);color:var(--text);font-weight:600}.side-foot{padding:0 var(--s2);gap:var(--s2);flex-direction:column;align-items:flex-start;margin-top:auto;display:flex}.side-foot .btn{padding-left:0}.main{min-width:0;overflow-y:auto}.page{padding:var(--s4) var(--s5);gap:var(--s3);flex-direction:column;display:flex}.page.narrow{max-width:780px}.page-fill{height:100%}.page-head{justify-content:space-between;gap:var(--s3);align-items:flex-start;display:flex}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--s3);gap:var(--s2);flex-direction:column;display:flex}.subcard{border:1px solid var(--line);border-radius:var(--radius);padding:var(--s2) var(--s3);gap:var(--s2);margin-bottom:var(--s2);flex-direction:column;display:flex}.today-grid{gap:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.rows{margin:0;padding:0;list-style:none}.rows li{justify-content:space-between;align-items:center;gap:var(--s3);border-top:1px solid var(--line);padding:4px 0;display:flex}.rows li:first-child{border-top:0}.rows li>.row{flex-shrink:0}.table-wrap{border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--muted);background:var(--surface);font-size:.88rem;font-weight:500;position:sticky;top:0}th,td{padding:4px var(--s2);border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle}tbody tr:last-child>*{border-bottom:0}tbody tr:hover{background:var(--surface)}.num{text-align:right;font-variant-numeric:tabular-nums}td.clip{text-overflow:ellipsis;max-width:280px;overflow:hidden}.views{gap:var(--s1);flex-wrap:wrap;display:flex}.view{padding:2px var(--s2);border-radius:var(--radius);border:1px solid var(--line);color:var(--muted);align-items:center;gap:2px;display:inline-flex}.view a{color:inherit}.view.on{background:var(--surface-2);color:var(--text);border-color:var(--line-strong)}.x{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;padding:0 2px}.x:hover{color:var(--bad)}.filters{gap:var(--s2);flex-wrap:wrap;display:flex}.filters input{width:240px}.save-view input{width:200px}.fold>summary{cursor:pointer;color:var(--muted);padding:var(--s1) 0}.fold[open]>summary{margin-bottom:var(--s2)}.form-grid{gap:var(--s2);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;display:grid}.form-grid .wide{grid-column:span 2}.form-grid .error,.form-grid .okmsg{grid-column:1/-1}.form-actions{align-items:flex-end;display:flex}.note-form{gap:var(--s1);margin-bottom:var(--s3);flex-direction:column;align-items:flex-start;display:flex}.queue{gap:var(--s3);flex:1;grid-template-columns:240px minmax(0,1fr) 240px;min-height:0;display:grid}.queue-list{border:1px solid var(--line);border-radius:var(--radius);margin:0;padding:0;list-style:none;overflow-y:auto}.queue-list button{all:unset;box-sizing:border-box;width:100%;padding:var(--s2);cursor:pointer;border-bottom:1px solid var(--line);flex-direction:column;gap:1px;display:flex}.queue-list button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.queue-list button:hover{background:var(--surface)}.queue-list .sel button{background:var(--surface-2);box-shadow:inset 2px 0 0 var(--accent)}.queue-main{gap:var(--s2);flex-direction:column;min-width:0;min-height:0;display:flex}.toolbar{gap:var(--s1);flex-wrap:wrap;align-items:center;display:flex}.sep{background:var(--line-strong);width:1px;height:18px;margin:0 var(--s1)}.checks{gap:var(--s1);flex-direction:column;display:flex}.check{padding:3px var(--s2);border-radius:var(--radius);border-left:2px solid var(--line-strong);background:var(--surface);font-size:.92rem}.check.ok{border-color:var(--ok)}.check.warn{border-color:var(--warn)}.check.bad{border-color:var(--bad)}.to-line{padding:2px 0}.field{flex-direction:column;display:flex}.field.grow{flex:1;min-height:200px}.field.grow textarea{resize:none;flex:1}.queue-context{border:1px solid var(--line);border-radius:var(--radius);padding:var(--s3);overflow-y:auto}dl{margin:0}dt{color:var(--muted);margin-top:var(--s2);font-size:.85rem}dd{overflow-wrap:anywhere;margin:0}dialog{background:var(--surface);color:var(--text);border:1px solid var(--line-strong);border-radius:var(--radius);padding:var(--s4);width:min(460px,92vw)}dialog::backdrop{background:#0000008c}dialog form{gap:var(--s2);flex-direction:column;display:flex}.kanban{gap:var(--s2);flex:1;grid-auto-columns:minmax(160px,1fr);grid-auto-flow:column;min-height:240px;display:grid;overflow-x:auto}.col{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--s2);gap:var(--s2);flex-direction:column;min-width:0;display:flex;overflow-y:auto}.col.over{border-color:var(--accent)}.col h2{font-size:.92rem}.kcard{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:var(--s2);cursor:grab;flex-direction:column;align-items:flex-start;gap:3px;display:flex}.kcard>.spread{width:100%}.kcard.flagged{border-left:2px solid var(--warn)}.kcard.dragging{opacity:.5}.kcard-title{color:var(--text)}.kcard select{color:var(--muted);margin-top:2px;padding:1px 4px;font-size:.85rem}.scrim{z-index:20;background:#00000059;position:fixed;inset:0 0 0 190px}.panel{background:var(--surface);border-left:1px solid var(--line-strong);z-index:21;width:min(620px,100vw);padding:var(--s2) var(--s4) var(--s5);position:fixed;inset:0 0 0 auto;overflow-y:auto}.panel-bar{justify-content:flex-end;gap:var(--s1);display:flex}.record{gap:var(--s4);flex-direction:column;display:flex}.record section{border-top:1px solid var(--line);padding-top:var(--s3);gap:var(--s2);flex-direction:column;display:flex}.record-head h2{font-size:1.15rem}.timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.tl{padding:var(--s2) 0;border-top:1px solid var(--line);gap:var(--s2);grid-template-columns:96px minmax(0,1fr);display:grid}.tl summary{cursor:pointer}.tl-label{color:var(--muted);margin-right:2px;font-size:.85rem}.tl-text{overflow-wrap:anywhere;margin:0}.email-body{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:var(--s2);margin:var(--s1) 0}.funnel td{min-width:110px}.funnel th[scope=row]{color:var(--text);background:0 0;position:static}.fn-val{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;display:flex}.fn-track{background:var(--surface-2);border-radius:2px;height:6px;margin-top:2px}.fn-bar{background:var(--accent);border-radius:2px;height:100%}.palette-wrap{z-index:50;background:#00000073;justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.palette{background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;width:min(560px,94vw);overflow:hidden}.palette input{border:0;border-bottom:1px solid var(--line);padding:var(--s3);background:0 0;border-radius:0;outline:none;font-size:1.05rem}.palette ul{padding:var(--s1);max-height:50vh;margin:0;list-style:none;overflow-y:auto}.palette li{justify-content:space-between;gap:var(--s3);padding:5px var(--s2);cursor:pointer;border-radius:4px;display:flex}.palette li.sel{background:var(--surface-2)}.palette-msg{padding:var(--s1) var(--s3);color:var(--muted);margin:0}.login{min-height:100vh;padding:var(--s4);place-items:center;display:grid}.login-box{background:var(--surface);border:1px solid var(--line);padding:var(--s5);gap:var(--s3);border-radius:8px;flex-direction:column;width:min(340px,100%);display:flex}@media (max-width:1100px){.queue{grid-template-columns:200px minmax(0,1fr)}.queue-context{display:none}}@media (max-width:760px){:root{font-size:15px}.shell{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.side{border-right:0;border-bottom:1px solid var(--line);padding:var(--s2);flex-direction:row;align-items:center;overflow-x:auto}.side nav{gap:var(--s1);display:flex}.brand{display:none}.scrim{inset:0}.nav{white-space:nowrap;padding:10px var(--s2);gap:var(--s1)}.side-foot{flex-direction:row;align-items:center;margin:0}.side-foot kbd,.side-foot>span{display:none}.side-foot .btn{white-space:nowrap;padding:10px var(--s2)}.page{padding:var(--s3)}.today-grid,.queue{grid-template-columns:minmax(0,1fr)}.queue-list{max-height:150px}.queue-main{min-height:480px}.page-fill{height:auto}.btn{padding:10px 12px}.btn.small{padding:8px 10px}input,select,textarea{padding:9px 8px}.form-grid .wide{grid-column:auto}.tl{grid-template-columns:minmax(0,1fr);gap:0}.kanban{grid-auto-columns:78vw}.filters input,.filters select{width:100%}}
