:root{--bg:#f3f4f1;--panel:#fff;--ink:#1b2320;--muted:#667571;--line:#d9ded8;--line-strong:#b9c1bc;--accent:#245f8c;--accent-ink:#fff;--accent-soft:#e4edf5;--ok:#2e7d5b;--ok-soft:#e1f1e8;--hold:#8a5a00;--hold-soft:#f7edd6;--warn:#b8541b;--warn-soft:#f7e8de;--sans:"Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;--mono:ui-monospace,"JetBrains Mono",SFMono-Regular,Menlo,monospace}@media (prefers-color-scheme:dark){:root{--bg:#141917;--panel:#1c2320;--ink:#e7ece9;--muted:#97a39e;--line:#2c3632;--line-strong:#3c4844;--accent:#6fa6d6;--accent-ink:#0f1a26;--accent-soft:#1e2e3d;--ok:#6cc49f;--ok-soft:#1f3a2e;--hold:#e0b35a;--hold-soft:#3a2f16;--warn:#e0894f;--warn-soft:#3a2a1e}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);margin:0;font-size:14px;line-height:1.45}button{font:inherit;cursor:pointer}a{color:inherit}.app{grid-template-columns:184px minmax(300px,400px) minmax(0,1fr);gap:14px;max-width:1280px;min-height:100vh;margin:0 auto;padding:16px 20px 40px;display:grid}.app.no-detail{grid-template-columns:184px minmax(0,1fr)}.app.no-detail .empty-detail{display:none}@media (max-width:980px){.app,.app.no-detail{grid-template-columns:1fr}.rail{flex-flow:wrap;gap:6px}.rail>span{flex:30%}.rail .foot{flex-basis:100%}}.rail{flex-direction:column;gap:2px;padding-top:6px;display:flex}.rail h1{margin:0 8px 10px;font-size:15px;font-weight:700}.rail h1 small{color:var(--muted);font-size:12px;font-weight:400;display:block}.rail a{color:var(--ink);border-radius:6px;justify-content:space-between;align-items:center;padding:8px 10px;font-weight:500;text-decoration:none;display:flex}.rail a:hover,.rail a:focus-visible{background:var(--panel);outline:none}.rail a.on{background:var(--panel);box-shadow:inset 3px 0 0 var(--accent)}.rail a b{font-family:var(--mono);color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:500}.rail a.on b{color:var(--accent)}.rail .sep{background:var(--line);height:1px;margin:8px 10px;display:block}.rail .foot{color:var(--muted);margin-top:auto;padding:10px;font-size:12px;line-height:1.5}.rail .link{color:var(--accent);background:0 0;border:0;padding:0;text-decoration:underline}.list{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex-direction:column;min-height:400px;display:flex;overflow:hidden}.list header{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 14px;display:flex}.list header h2{flex:1;margin:0;font-size:15px;font-weight:600}.list header small{color:var(--muted)}.batch{background:var(--accent-soft);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.batch>span:first-child{flex:1}.batch button{background:var(--accent);color:var(--accent-ink);border:0;border-radius:6px;padding:8px 12px;font-weight:600}.batch button.quiet{color:var(--ink);border:1px solid var(--line-strong);background:0 0}.rows{max-height:calc(100vh - 140px);overflow:auto}.row{border-bottom:1px solid var(--line);color:inherit;grid-template-columns:14px 1fr auto;align-items:start;gap:4px 10px;padding:11px 14px;text-decoration:none;display:grid}.row:hover{background:var(--bg)}.row.on{background:var(--accent-soft)}.row .name{font-weight:600}.row .subject{grid-column:2/4}.row .need{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-column:2/4;font-size:13px;display:-webkit-box;overflow:hidden}.row .age{font-family:var(--mono);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.row .mark{background:var(--ok);border-radius:50%;width:10px;height:10px;margin-top:5px}.row .mark.hold{background:var(--hold)}.row .mark.done{background:var(--line-strong)}.group{background:var(--bg);border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding:10px 14px 4px;font-weight:600;display:flex}.group small{color:var(--muted);font-weight:400;font-family:var(--mono);font-size:12px}.detail{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:16px;min-width:0;padding:18px 22px;display:flex}.detail h2{margin:0;font-size:20px;font-weight:600;line-height:1.2}.detail h3{margin:4px 0 0;font-size:14px;font-weight:600}.detail .who{color:var(--muted);font-size:13px}.detail code{font-family:var(--mono);font-size:12px}.empty-detail{color:var(--muted);justify-content:center;align-items:center}.facts{background:var(--bg);border-radius:6px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 16px;padding:12px 14px;display:grid}.facts div span{color:var(--muted);font-size:12px;display:block}.facts div b{font-weight:600}.facts div b.ok{color:var(--ok)}.mail{border:1px solid var(--line);border-radius:6px}.mail .head{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;padding:8px 12px;font-size:12px;display:flex}.mail .body,.context .body{white-space:pre-wrap;word-wrap:break-word;max-width:72ch;padding:12px 14px;line-height:1.55}.mail.draft{border-color:var(--accent)}.mail.draft .head{background:var(--accent-soft);color:var(--ink)}.context{border:1px solid var(--line);border-radius:6px}.context summary{color:var(--muted);cursor:pointer;padding:8px 12px;font-size:12px}.history{color:var(--muted);font-size:13px}.history ul{margin:4px 0 0;padding-left:18px}.history a{color:var(--accent)}.actions{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding-top:12px;display:flex}.actions .primary,.copy-open .primary{background:var(--accent);color:var(--accent-ink);border:0;border-radius:6px;padding:9px 14px;font-weight:600}.actions .quiet{border:1px solid var(--line-strong);color:var(--ink);background:0 0;border-radius:6px;padding:8px 12px}.actions input{min-width:180px;font:inherit;border:1px solid var(--line-strong);background:var(--panel);color:var(--ink);border-radius:6px;flex:1;padding:8px 10px}.actions button:focus-visible,.actions input:focus-visible,.batch button:focus-visible,.rail .link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.actions button:disabled{opacity:.5;cursor:default}.hint{color:var(--muted);flex-basis:100%;font-size:12px}.copy-open{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.steps{margin:0;padding-left:20px}.steps li{margin:0 0 4px}pre.prompt{background:var(--bg);border:1px solid var(--line);font-family:var(--mono);white-space:pre-wrap;-webkit-user-select:all;user-select:all;border-radius:6px;max-height:220px;margin:0;padding:10px 12px;font-size:12px;overflow:auto}.overview{align-content:start;gap:12px;padding:14px;display:grid}.overview header{margin:-14px -14px 0;padding:12px 14px}.kpis{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;display:grid}.kpi{background:var(--bg);border-radius:6px;padding:10px 12px}.kpi b{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:22px;font-weight:500;display:block}.kpi span{color:var(--muted);font-size:12px}.chart{background:var(--bg);border-radius:6px;align-items:flex-end;gap:10px;height:150px;padding:10px 12px 26px;display:flex}.chart .bar{flex:1;align-items:flex-end;gap:3px;height:100%;display:flex;position:relative}.chart .bar i{background:var(--accent);border-radius:3px 3px 0 0;flex:1;min-height:2px;display:block}.chart .bar i.faint{background:var(--line-strong)}.chart .bar span{text-align:center;color:var(--muted);font-size:11px;font-family:var(--mono);position:absolute;bottom:-20px;left:0;right:0}.empty{color:var(--muted);padding:24px 14px}.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;gap:12px;width:min(420px,100%);padding:28px;display:grid}.login-card h1{margin:0;font-size:26px}.login-card label{font-size:13px;font-weight:600}.login-card input{font:inherit;border:1px solid var(--line-strong);background:var(--panel);color:var(--ink);border-radius:6px;padding:10px 12px}.login-card button{font:inherit;background:var(--accent);color:var(--accent-ink);border:0;border-radius:6px;padding:11px 14px;font-weight:600}.login-card button:focus-visible,.login-card input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.login-note{color:var(--muted);margin:0;font-size:14px}.login-error{color:var(--warn);margin:0;font-size:14px}.eyebrow{color:var(--muted);margin:0;font-size:12px}
