:root{font-family:Inter,system-ui,-apple-system,sans-serif;color:#203046;background:#f6f8fa}*{box-sizing:border-box}body{margin:0}.wrap{max-width:1250px;margin:auto;padding:28px 18px}header,.toolbar,.actions,.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}h1{font-size:27px;margin:0}h2{font-size:18px}p,small{color:#64748b}button,select,input{font:inherit}button{border:1px solid #d8e0e6;background:#fff;border-radius:9px;padding:10px 13px;cursor:pointer}button.primary{background:#087d50;color:#fff;border-color:#087d50}button:disabled{opacity:.45;cursor:not-allowed}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:25px 0}.card,.panel{background:#fff;border:1px solid #e4e9ee;border-radius:15px;padding:17px}.card strong{display:block;font-size:32px;margin:7px 0}.card small{display:block;line-height:1.6}.toolbar{margin:15px 0}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button.active{background:#e2f3ea;border-color:#087d50;color:#075d3e}input,select{padding:10px;border:1px solid #d7e0e6;border-radius:8px;background:#fff;max-width:100%}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:960px}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid #edf0f2;font-size:13px}th{color:#64748b;font-size:12px}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable:hover{color:#087d50;background:#f2faf5}.pill.renew{background:#fff0d6;color:#8a5600}.pill.expired{background:#fee9e9;color:#bd2929}td b{display:block}.pill{display:inline-block;padding:5px 9px;border-radius:20px;font-size:12px;background:#eaf1ff;color:#27549d}.pill.t{background:#f0eaff;color:#6d39aa}.pill.late{background:#fee9e9;color:#bd2929}.pill.today{background:#fff2dc;color:#965d00}.pill.ok{background:#e0f5e8;color:#126d41}.mini{font-size:12px;color:#64748b}.actions{justify-content:flex-start;gap:5px}.actions button{font-size:12px;padding:7px 9px}.actions a{font-size:12px;padding:8px;background:#087d50;color:#fff;border-radius:8px;text-decoration:none}dialog{border:0;border-radius:16px;box-shadow:0 15px 65px #142b3950;width:min(560px,95vw);max-height:90vh;overflow:auto;padding:24px}dialog::backdrop{background:#0f172a88}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fields label{font-size:12px;color:#475569}.fields input,.fields select{width:100%;margin-top:5px}.wide{grid-column:1/-1}[hidden]{display:none!important}.note{background:#fff6df;border-radius:10px;padding:11px;font-size:13px;color:#795b19;margin:15px 0}.subtle{color:#64748b;font-size:12px}.empty{text-align:center;padding:40px;color:#64748b}@media(max-width:750px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.wrap{padding:18px 12px}h1{font-size:22px}.fields{grid-template-columns:1fr}.wide{grid-column:auto}}.overview{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start}.overview .cards{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.calendar{background:#fff;border:1px solid #e4e9ee;border-radius:15px;padding:16px}.calhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.calhead button{padding:5px 10px}.weekdays,.calgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.weekdays span{text-align:center;font-size:11px;color:#64748b}.day{border:1px solid transparent;padding:0;min-height:37px;font-size:12px;border-radius:8px}.day.empty{background:transparent}.day.good{background:#fff;color:#64748b;border-color:#edf0f2}.day.done{background:#e2f5e9;color:#146c42}.day.soon{background:#fff0cd;color:#8b5b00}.day.overdue{background:#fce3e3;color:#ae2929}.day.selected{outline:2px solid #155c43;outline-offset:1px;font-weight:700}.day.today{border-color:#64748b}.callegend{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;font-size:11px;color:#64748b}.dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:4px}.selectedbar{margin:16px 0 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.selectedbar h2{margin:0}.task-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 12px}.task-tabs button.active{background:#e2f3ea;border-color:#087d50;color:#075d3e}.task-col[hidden]{display:none}.pill.consult{background:#e7edff;color:#284e9a}.pill.follow{background:#fff1d6;color:#845600}.selectedbar button{font-size:12px}@media(max-width:850px){.overview{grid-template-columns:1fr}.calendar{max-width:440px;width:100%}}@media(max-width:460px){.overview .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card strong{font-size:25px}}.pending-panel{background:#fff;border:1px solid #e4e9ee;border-radius:15px;margin:16px 0 6px;padding:17px}.pending-panel h2{margin:0;font-size:18px}.pending-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.pending-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pending-item{display:flex;gap:10px;justify-content:space-between;align-items:center;border:1px solid #edf0f2;border-radius:11px;padding:12px;min-width:0}.pending-item b{font-size:13px}.pending-item p{margin:3px 0 0;font-size:12px}.pending-item button{font-size:12px;flex-shrink:0;padding:8px 10px}.pending-empty{color:#64748b;font-size:13px;margin:0}.pending-count{background:#fee9e9;color:#ae2929;border-radius:20px;padding:4px 9px;font-size:12px}@media(max-width:720px){.pending-items{grid-template-columns:1fr}}tr.target-row{background:#fff8e5}.auth-page{min-height:100vh;display:grid;place-items:center;background:#f6f8fa;padding:20px}.auth-card{width:min(430px,100%);background:#fff;padding:30px;border-radius:18px;border:1px solid #e4e9ee}.auth-card label{display:block;margin:12px 0;color:#475569;font-size:14px}.auth-card input{width:100%;margin-top:6px}.auth-card button{width:100%;margin-top:16px}.app-meta{font-size:12px;color:#64748b;display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin-bottom:12px}#sync-status{font-weight:600}
