:root{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#eef2ff;background:#070b14}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#070b14,#0b1020);min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{max-width:1180px;margin:auto;padding:22px}header{position:sticky;top:0;z-index:10;background:#0a0f1bdc;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid #1d2940;display:flex;justify-content:space-between;align-items:center;padding:14px 22px}.brand{display:flex;gap:14px;align-items:center}.brand h1{margin:0;font-size:25px}.brand p{margin:2px 0 0;color:#7dd3fc}.compact h1{font-size:18px}.compact p{font-size:12px}.logo{width:48px;height:48px;border-radius:16px;background:#38bdf8;color:#06111d;font-weight:900;display:grid;place-items:center}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.cards.four{grid-template-columns:repeat(4,1fr)}.cards article,.panel{background:#111827;border:1px solid #22304a;border-radius:18px;padding:18px;box-shadow:0 10px 30px #0004}.cards span{display:block;color:#94a3b8}.cards strong{display:block;font-size:25px;margin-top:8px}.panel{margin-bottom:18px}.panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.panel h2{margin:0 0 4px}.muted{color:#94a3b8}.small{font-size:12px;color:#94a3b8;line-height:1.45}.primary,.secondary,.ghost,.danger,.whatsapp{border:0;border-radius:12px;padding:11px 14px;font-weight:700}.primary{background:#38bdf8;color:#06111d}.secondary{background:#1e293b;color:#e2e8f0}.ghost{background:transparent;color:#cbd5e1}.danger{background:#3f1d24;color:#fecdd3}.whatsapp{background:#25d366;color:#062c16}.full{width:100%;margin-top:12px}input,select,textarea{width:100%;background:#0b1220;color:#fff;border:1px solid #2b3a55;border-radius:12px;padding:12px;outline:none}textarea{min-height:90px;resize:vertical}label{display:block;margin:12px 0 6px;color:#cbd5e1}.tabs{display:flex;gap:8px;overflow:auto;margin:0 0 18px;padding-bottom:4px}.tabs button{white-space:nowrap;border:1px solid #26344d;background:#0b1220;color:#a8b3c7;border-radius:999px;padding:10px 14px;font-weight:700}.tabs button.active{background:#38bdf8;color:#06111d;border-color:#38bdf8}.client-list{display:grid;gap:12px;margin-top:16px}.client{display:grid;grid-template-columns:1fr auto;gap:12px;padding:15px;border:1px solid #26344d;background:#0b1220;border-radius:14px}.client h3{margin:0 0 5px}.client p{margin:3px 0;color:#a8b3c7}.client-block{display:block}.client-title{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.mini{padding:8px 10px}.badge{align-self:start;border-radius:999px;padding:6px 10px;font-size:12px;text-transform:capitalize}.al-dia,.cobrado{background:#123b2a;color:#86efac}.por-vencer,.pendiente{background:#3b3314;color:#fde68a}.vencido{background:#451a1a;color:#fca5a5}.inactivo{background:#252b38;color:#a8b3c7}.empty{text-align:center;color:#94a3b8;padding:25px}.vehicle-list{display:grid;gap:9px;margin:14px 0}.vehicle{display:grid;grid-template-columns:1fr auto;gap:10px;background:#0f172a;border:1px solid #24314a;border-radius:12px;padding:12px}.vehicle .actions{margin-top:4px}.group-charge{margin:6px 8px 0 0}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:min(440px,100%);background:#111827;border:1px solid #22304a;border-radius:22px;padding:24px}.auth-card h2{margin-top:24px}.auth-card button.primary{width:100%;margin-top:12px}.notice{background:#172554;border:1px solid #1d4ed8;color:#bfdbfe;padding:12px;border-radius:10px;margin:14px 0}.notice.neutral{background:#111b2c;border-color:#31415e;color:#cbd5e1}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000b;display:grid;place-items:center;padding:18px;z-index:30}.modal{width:min(620px,100%);max-height:92vh;overflow:auto;background:#111827;border:1px solid #2b3a55;border-radius:20px;padding:20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.span2{grid-column:1/-1}.month{max-width:190px}.summary-line{display:flex;justify-content:space-between;gap:12px;margin:16px 0;padding:12px;background:#0b1220;border-radius:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-bottom:1px solid #26344d;white-space:nowrap}th{color:#94a3b8;font-size:13px}.item-row{display:grid;grid-template-columns:2fr .7fr 1fr auto;gap:7px;margin:8px 0}code{background:#0b1220;padding:3px 6px;border-radius:6px}@media(max-width:850px){.cards.four{grid-template-columns:1fr 1fr}.client-title{flex-direction:column}.form-grid{grid-template-columns:1fr}.span2{grid-column:auto}}@media(max-width:620px){.cards,.cards.four{grid-template-columns:1fr}.panel-head{align-items:flex-start;flex-direction:column}.client{grid-template-columns:1fr}.badge{justify-self:start}.vehicle{grid-template-columns:1fr}.actions button,.group-charge{width:100%}.item-row{grid-template-columns:1fr 1fr}.item-row input:first-child{grid-column:1/-1}.summary-line{flex-direction:column}}.collection-tools{display:grid;gap:10px;margin-top:16px}.search-box{font-size:16px}.filter-row{display:flex;gap:8px;flex-wrap:wrap}.filter-chip{border:1px solid #31415e;background:#0b1220;color:#cbd5e1;border-radius:999px;padding:9px 12px;font-weight:700}.filter-chip.active{background:#38bdf8;color:#06111d;border-color:#38bdf8}.overdue-note{background:#2a1115;border-color:#7f1d1d;color:#fecaca}.logo-preview{display:flex;align-items:center;gap:12px;color:#86efac}.logo-preview img{max-width:160px;max-height:80px;object-fit:contain;background:#fff;border-radius:10px;padding:6px}.autocomplete-wrap{position:relative}.autocomplete-list{position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:60;background:#0b1220;border:1px solid #31415e;border-radius:12px;max-height:260px;overflow:auto;box-shadow:0 14px 35px #0009}.autocomplete-item{width:100%;border:0;border-bottom:1px solid #22304a;background:#0b1220;color:#eef2ff;text-align:left;padding:11px 12px;display:flex;flex-direction:column;gap:3px}.autocomplete-item:last-child{border-bottom:0}.autocomplete-item:active,.autocomplete-item:hover{background:#172033}.autocomplete-item span,.autocomplete-empty{color:#94a3b8;font-size:13px}.autocomplete-empty{padding:12px}
