:root{--navy:#172b4d;--blue:#0c66e4;--bg:#f1f2f4;--text:#172b4d;--muted:#626f86}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#172b4d,#0c66e4)}.login form{width:min(420px,92vw);background:#fff;padding:36px;border-radius:18px;box-shadow:0 24px 70px #0005}.brand{width:48px;height:48px;border-radius:13px;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:28px}.login h1{margin-bottom:6px}.login p{color:var(--muted);margin-top:0}.login label,#cardForm label{display:grid;gap:7px;margin:16px 0;font-weight:600}.login input,#cardForm input,#cardForm select,#cardForm textarea,.grid input{padding:12px;border:1px solid #dcdfe4;border-radius:8px}.login button,.primary{border:0;background:var(--blue);color:#fff;padding:12px 17px;border-radius:8px;font-weight:700;cursor:pointer;width:100%}#loginError{color:#c9372c;display:block;margin-top:12px}header{height:64px;background:var(--navy);color:#fff;padding:0 24px;display:flex;align-items:center;justify-content:space-between}header b{font-size:20px}header span{opacity:.7;margin-left:12px}.actions{display:flex;gap:9px;align-items:center}.actions input{width:300px;padding:10px 13px;border-radius:8px;border:0}.actions button{width:auto}.ghost{background:#ffffff20;color:#fff;border:0;padding:11px 15px;border-radius:8px;cursor:pointer}nav{background:#fff;padding:12px 24px;display:flex;gap:8px;box-shadow:0 1px 3px #091e4226}nav button{border:0;background:transparent;padding:10px 15px;border-radius:8px;font-weight:650;color:var(--muted);cursor:pointer}nav button.active{background:#e9f2ff;color:var(--blue)}nav select{margin-left:auto;border:1px solid #dcdfe4;border-radius:8px;padding:8px 12px}main{padding:22px}.board{display:grid;grid-template-columns:repeat(6,minmax(260px,1fr));gap:14px;overflow-x:auto;align-items:start;padding-bottom:25px}.column{background:#e4e6ea;border-radius:12px;padding:10px;min-height:540px}.column h3{margin:4px 5px 12px;display:flex;justify-content:space-between;font-size:14px}.count{background:#091e4214;border-radius:20px;padding:2px 8px;color:var(--muted)}.cards{min-height:480px}.card{background:#fff;border-radius:9px;padding:13px;margin-bottom:9px;box-shadow:0 1px 2px #091e4240;cursor:grab;border-left:4px solid #579dff}.card:hover{box-shadow:0 4px 12px #091e4230}.card.overdue{border-left-color:#c9372c}.card.soon{border-left-color:#f5cd47}.card h4{margin:0 0 7px;font-size:14px}.card p{margin:4px 0;color:var(--muted);font-size:12px}.card .tag{display:inline-block;background:#e9f2ff;color:#0055cc;padding:4px 7px;border-radius:5px;font-size:11px;font-weight:700}.drop{outline:2px dashed var(--blue)}#stats{display:flex;gap:12px;margin-bottom:18px}.stat{background:#fff;border-radius:10px;padding:12px 17px;box-shadow:0 1px 2px #091e4220}.stat b{font-size:22px;display:block}.stat span{font-size:12px;color:var(--muted)}dialog{border:0;border-radius:15px;width:min(720px,94vw);padding:0;box-shadow:0 20px 70px #0005}dialog::backdrop{background:#091e4277}dialog form{padding:26px;position:relative}dialog h2{margin-top:0}.close{position:absolute;right:20px;top:15px;border:0;background:transparent;font-size:28px;cursor:pointer}.grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.grid label{display:grid;gap:6px;font-weight:600}.wide{grid-column:1/-1}fieldset{border:1px solid #dcdfe4;border-radius:8px;display:flex;gap:20px}fieldset label{display:flex!important;align-items:center;gap:7px;font-weight:400!important}dialog footer{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}dialog footer button{width:auto}.cancel{border:0;background:#f1f2f4;padding:11px 16px;border-radius:8px;cursor:pointer}@media(max-width:850px){header{height:auto;padding:14px;align-items:flex-start}.actions{flex-wrap:wrap;justify-content:flex-end}.actions input{width:100%}header span{display:none}nav{overflow:auto;padding:8px}nav select{margin-left:0}.board{grid-template-columns:repeat(6,280px)}.grid{grid-template-columns:1fr}.wide{grid-column:auto}#stats{overflow:auto}}
.municipioLabel{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700}.municipioLabel select{margin-left:0}.legend{display:flex;flex-wrap:wrap;gap:7px;margin:-6px 0 16px}.legend span{display:flex;align-items:center;gap:6px;background:#fff;padding:5px 9px;border-radius:20px;font-size:11px}.legend i{width:10px;height:10px;border-radius:50%}.card{border-left:6px solid var(--city,#579dff)}.card.overdue{border-left-color:var(--city,#579dff);box-shadow:inset 0 0 0 2px #c9372c}.card.soon{border-left-color:var(--city,#579dff);box-shadow:inset 0 0 0 2px #f5cd47}.card .tag{background:color-mix(in srgb,var(--city,#579dff) 18%,white);color:#172b4d}.renew{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;background:#e9f2ff;padding:12px;border-radius:8px;font-weight:500!important}.renew input{width:auto!important}@media(max-width:850px){.municipioLabel{margin-left:0}}
