:root{--bg:#f6f5f2;--card:#fff;--ink:#1d1d1b;--mut:#6b6a66;--line:#e2e0da;--acc:#1f6f5c;--acc-ink:#fff;--acc-soft:#e3f1ed;--warn:#a65b00;--warn-soft:#fbefdc;--bad:#b3261e;--bad-soft:#fbe4e2;--radius:10px}@media (prefers-color-scheme:dark){:root{--bg:#161615;--card:#1f1f1d;--ink:#eeede8;--mut:#9a988f;--line:#34332f;--acc:#4fb89d;--acc-ink:#0f1f1a;--acc-soft:#1b2e29;--warn:#e0a050;--warn-soft:#2e2415;--bad:#f2877f;--bad-soft:#35201e}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0;font:15px/1.45 system-ui,Segoe UI,sans-serif}button,input,select,textarea{font:inherit;color:inherit}h1{margin:0 0 4px;font-size:22px}h2{margin:0 0 10px;font-size:15px;font-weight:700}.mut{color:var(--mut)}.small{font-size:12px}a{color:var(--acc)}.shell{flex-direction:column;min-height:100dvh;display:flex}.top{background:var(--card);border-bottom:1px solid var(--line);z-index:5;align-items:center;gap:12px;padding:10px 16px;display:flex;position:sticky;top:0}.brand{color:var(--acc);letter-spacing:.2px;margin-right:auto;font-weight:800}.nav{gap:4px;display:flex}.nav button{cursor:pointer;color:var(--mut);background:0 0;border:0;border-radius:8px;padding:8px 12px}.nav button.on{background:var(--acc-soft);color:var(--acc);font-weight:700}.who{color:var(--mut);text-align:right;font-size:13px;line-height:1.2}main{width:100%;max-width:980px;margin:0 auto;padding:18px 16px 90px}@media (width<=640px){.top{flex-wrap:wrap}.nav{background:var(--card);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));z-index:6;justify-content:space-around;position:fixed;bottom:0;left:0;right:0}.nav button{flex:1;padding:10px 4px}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:14px;padding:16px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.between{justify-content:space-between}.grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}label{color:var(--mut);margin-bottom:3px;font-size:12px;display:block}input,select{border:1px solid var(--line);background:var(--bg);border-radius:8px;width:100%;padding:9px 10px}input:focus,select:focus,button:focus-visible{outline:2px solid var(--acc);outline-offset:1px}button.btn{border:1px solid var(--acc);background:var(--acc);color:var(--acc-ink);cursor:pointer;border-radius:8px;padding:9px 14px;font-weight:600}button.btn.sec{color:var(--acc);background:0 0}button.btn.bad{color:var(--bad);border-color:var(--bad);background:0 0}button.btn:disabled{opacity:.5;cursor:default}.badge{background:var(--acc-soft);color:var(--acc);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px;display:inline-block}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.bad{background:var(--bad-soft);color:var(--bad)}.badge.gray{background:var(--line);color:var(--mut)}.msg{border-radius:8px;margin:10px 0;padding:10px 12px;font-size:14px}.msg.err{background:var(--bad-soft);color:var(--bad)}.msg.ok{background:var(--acc-soft);color:var(--acc)}.msg.warn{background:var(--warn-soft);color:var(--warn)}.list>.item{border-top:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;padding:12px 0;display:flex}.list>.item:first-child{border-top:0}.item .grow{flex:1;min-width:0}.item.arch{opacity:.55}.entry{border-top:1px solid var(--line);padding:12px 0}.entry:first-child{border-top:0}.diff{background:var(--bg);border-radius:8px;margin:6px 0 0;padding:8px 10px;font-size:13px}.diff .old{color:var(--bad);text-decoration:line-through}.diff .new{color:var(--acc);font-weight:600}.sheet-back{z-index:20;background:#00000073;justify-content:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);width:min(520px,100%);height:100%;padding:16px;overflow:auto}.tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:14px;display:flex}.tabs button{cursor:pointer;color:var(--mut);background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 12px}.tabs button.on{color:var(--acc);border-color:var(--acc);font-weight:700}.toast{background:var(--ink);color:var(--bg);z-index:30;border-radius:999px;max-width:90vw;padding:10px 16px;font-size:14px;position:fixed;bottom:80px;left:50%;transform:translate(-50%)}.center{place-items:center;min-height:100dvh;padding:16px;display:grid}.center .card{width:min(400px,100%)}.linkbox{word-break:break-all;background:var(--bg);border:1px dashed var(--acc);border-radius:8px;margin:8px 0;padding:10px;font-family:ui-monospace,Consolas,monospace;font-size:12px}.board{scroll-snap-type:x proximity;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex;overflow-x:auto}.col{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);scroll-snap-align:start;flex:1 0 250px;min-width:250px;padding:10px}.col.over{outline:2px dashed var(--acc);outline-offset:-2px}.col h2{margin-bottom:8px}.jcard{background:var(--bg);border:1px solid var(--line);cursor:pointer;border-radius:8px;gap:4px;margin-bottom:8px;padding:10px;display:grid}.jcard:hover{border-color:var(--acc)}.jcard img{object-fit:cover;border-radius:6px;width:100%;height:110px}.jcard[draggable=true]{cursor:grab}a.btn{border:1px solid var(--acc);background:var(--acc);color:var(--acc-ink);border-radius:8px;padding:9px 14px;font-weight:600;text-decoration:none;display:inline-block}a.btn.sec{color:var(--acc);background:0 0}.kpis{margin-bottom:4px}.kpi{gap:2px;margin:0;display:grid}.kpi b{font-size:22px}.legend{color:var(--mut);flex-wrap:wrap;gap:4px 14px;margin-bottom:8px;font-size:12px;display:flex}.legend i{border-radius:2px;width:10px;height:10px;margin-right:5px;display:inline-block}.barrow{align-items:center;gap:8px;margin:5px 0;display:flex}.bar{background:var(--bg);border-radius:4px;flex:1;height:16px;display:flex;overflow:hidden}.tablewrap{margin-top:12px;overflow-x:auto}.tbl{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.tbl th,.tbl td{text-align:right;border-bottom:1px solid var(--line);white-space:nowrap;padding:7px 8px}.tbl th:first-child,.tbl td:first-child{text-align:left;white-space:normal}.tbl th{color:var(--mut);font-size:12px;font-weight:600}.tbl tr.tot td{border-top:2px solid var(--line);border-bottom:0;font-weight:700}@media (width<=640px){.nav button{padding:10px 2px;font-size:12px}}.bell{color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;padding:6px;display:grid;position:relative}.bell:hover{background:var(--acc-soft)}.bell .dot{background:var(--bad);color:#fff;border-radius:999px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:11px;font-weight:700;display:grid;position:absolute;top:0;right:0}.toast.alert{background:var(--bad);color:#fff;cursor:pointer;bottom:90px}button.brand{cursor:pointer;font:inherit;color:var(--acc);background:0 0;border:0;padding:0;font-weight:800}@media (width<=640px){.nav button.home{display:none}}
