
:root{--p:#0b3158;--bg:#f3f5f7;--c:#fff;--t:#172033;--m:#6b7280;--l:#e5e7eb;--soft:#edf3f8;--col:#e8edf2;--g:#059669;--r:#dc2626}
body.dark{--p:#102a43;--bg:#0b1220;--c:#111b2b;--t:#e8eef7;--m:#9fb0c3;--l:#26364a;--soft:#17263a;--col:#152235}
*{box-sizing:border-box}body{margin:0;font:14px system-ui;background:var(--bg);color:var(--t)}button,input,select,textarea{font:inherit}
.hidden{display:none!important}.login{min-height:100vh;display:grid;place-items:center;padding:20px}.loginbox{width:min(420px,100%);background:var(--c);border:1px solid var(--l);border-radius:18px;padding:24px;box-shadow:0 15px 45px #0f172a18}
.loginbox h1{margin:0 0 5px}.loginbox p{color:var(--m)}.loginbox input{width:100%;padding:12px;border:1px solid var(--l);border-radius:10px;margin:6px 0;background:var(--c);color:var(--t)}
.side{position:fixed;inset:0 auto 0 0;width:220px;background:var(--p);color:#fff;padding:22px 14px}.brand{font-size:20px;font-weight:800;margin:0 10px 22px}.brand small{display:block;font-size:11px;opacity:.7}
.nav button{width:100%;border:0;background:none;color:#dbeafe;text-align:left;padding:12px;border-radius:10px;margin:2px}.nav button.on{background:#ffffff20;color:#fff}
.main{margin-left:220px;padding:24px}.top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}h1{margin:0;font-size:24px}.sub,.meta{color:var(--m);font-size:12px}
.btn{border:1px solid var(--l);background:var(--c);color:var(--t);border-radius:10px;padding:9px 12px;font-weight:700;cursor:pointer}.btn.p{background:var(--p);color:#fff;border-color:var(--p)}
.grid{display:grid;gap:12px}.kpis{grid-template-columns:repeat(6,1fr)}.card{background:var(--c);border:1px solid var(--l);border-radius:15px;padding:15px;box-shadow:0 5px 18px #0f172a0d}
.lab{font-size:11px;text-transform:uppercase;color:var(--m);font-weight:800}.val{font-size:27px;font-weight:850;margin-top:7px}.two{grid-template-columns:1.25fr .75fr;margin-top:12px}.title{font-weight:800;margin:0 0 11px}
.toolbar{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.toolbar input,.toolbar select{border:1px solid var(--l);background:var(--c);color:var(--t);border-radius:10px;padding:10px}.toolbar input{flex:1;min-width:190px}
.tablewrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:760px}.table td,.table th{padding:10px;border-bottom:1px solid var(--l);text-align:left}.table th{font-size:10px;color:var(--m);text-transform:uppercase}
.badge{display:inline-block;padding:4px 7px;border-radius:99px;background:var(--soft);font-size:10px;font-weight:800}.kanban{display:flex;gap:10px;overflow:auto;padding-bottom:8px}.col{min-width:245px;background:var(--col);padding:9px;border-radius:13px}.chead{font-weight:800;display:flex;justify-content:space-between;padding:5px}
.lead{background:var(--c);border-radius:11px;padding:11px;margin:7px 0;border:1px solid var(--l);cursor:pointer}.lead p{font-size:11px;color:var(--m);margin:5px 0}.page{display:none}.page.on{display:block}.row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px;border:1px solid var(--l);border-radius:11px;margin:7px 0}
.modal{display:none;position:fixed;inset:0;background:#0f172a88;z-index:20;align-items:center;justify-content:center;padding:14px}.modal.on{display:flex}.box{background:var(--c);border-radius:17px;width:min(720px,100%);max-height:92vh;overflow:auto;padding:18px}.mh{display:flex;justify-content:space-between}.form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field label{display:block;font-size:10px;color:var(--m);font-weight:800;margin:5px 0}.field input,.field select,.field textarea{width:100%;border:1px solid var(--l);background:var(--c);color:var(--t);border-radius:9px;padding:9px}.full{grid-column:1/-1}.bottom{display:none}.notice{padding:10px;border-radius:10px;background:var(--soft);margin:10px 0}.chat{background:var(--soft);border:1px solid var(--l);border-radius:14px;padding:12px;max-height:390px;overflow:auto;display:flex;flex-direction:column;gap:8px}.msg{max-width:82%;padding:9px 11px;border-radius:12px;background:var(--c);border:1px solid var(--l);align-self:flex-start;white-space:pre-wrap;word-break:break-word}.msg.out{align-self:flex-end;background:var(--p);color:white;border-color:var(--p)}.msg .mtime{font-size:9px;opacity:.72;margin-top:5px;text-align:right}.chat-empty{text-align:center;color:var(--m);padding:24px 8px}.timeline-tabs{display:flex;gap:6px;margin:4px 0 8px}.timeline-tabs button{border:1px solid var(--l);background:var(--c);color:var(--t);padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800}.timeline-tabs button.on{background:var(--p);color:white;border-color:var(--p)}.danger{border-color:#dc2626;color:#dc2626}.danger:hover{background:#dc2626;color:white}.warn{border-color:#d97706;color:#d97706}.ignored-list{max-height:55vh;overflow:auto}.tl360{background:var(--soft);border:1px solid var(--l);border-radius:14px;padding:12px;max-height:440px;overflow:auto}.tlitem{display:flex;gap:10px;padding:9px 2px;border-bottom:1px solid var(--l)}.tlitem:last-child{border-bottom:0}.tlicon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--c);border:1px solid var(--l);flex:0 0 28px}.tlbody{min-width:0;flex:1}.task-actions{display:flex;gap:6px;align-items:center}.late{color:#dc2626;font-weight:800}.done{opacity:.62;text-decoration:line-through}.priority-alta{font-weight:900}.task-form{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:8px;margin-bottom:12px}.task-form input,.task-form select{border:1px solid var(--l);background:var(--c);color:var(--t);border-radius:9px;padding:9px}.reportbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.reportbar select,.reportbar input{border:1px solid var(--l);background:var(--c);color:var(--t);border-radius:9px;padding:9px}.metricbar{height:7px;background:var(--soft);border-radius:99px;overflow:hidden;margin-top:5px}.metricbar i{display:block;height:100%;background:var(--p);border-radius:99px}.rate{font-weight:900}.empty-note{color:var(--m);padding:12px 0}@media(max-width:760px){.task-form{grid-template-columns:1fr}.tl360{max-height:360px}}
@media(max-width:900px){.kpis{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:1fr}}
@media(max-width:700px){.side{display:none}.main{margin:0;padding:15px 12px 80px}.kpis{grid-template-columns:repeat(2,1fr)}.form{grid-template-columns:1fr}.full{grid-column:auto}.bottom{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--c);border-top:1px solid var(--l);justify-content:space-around;padding:7px;z-index:10}.bottom button{border:0;background:none;font-size:10px;color:var(--m)}.bottom button.on{color:var(--p);font-weight:800}.bottom b{display:block;font-size:17px}}

:focus-visible{outline:3px solid #1687d9;outline-offset:3px}button:disabled{opacity:.55;cursor:wait}#feedback{position:fixed;bottom:75px;left:50%;transform:translateX(-50%);background:#172033;color:white;padding:14px 20px;border-radius:10px;z-index:200;max-width:90vw}#dashActivity{margin-bottom:18px}.card[data-filter],.lead{cursor:pointer}.loginbox label{display:block;margin-top:12px}.modal .box{max-height:92dvh;overflow:auto}.lead{width:100%;text-align:left;color:var(--t)}.page[aria-busy=true]{opacity:.6}@media(max-width:650px){.top{align-items:flex-start;flex-direction:column}.top button{padding:8px}.reportbar{flex-wrap:wrap}.form{grid-template-columns:1fr}.field.full,.full{grid-column:1}.modal{padding:8px}.box{padding:14px}.kpis{grid-template-columns:repeat(2,1fr)}}

button.card{color:var(--t);text-align:left}button.card:hover{border-color:#1687d9}
