:root{--ink:#17212b;--muted:#718096;--line:#e5eaf0;--bg:#f4f7fb;--card:#fff;--nav:#12202d;--blue:#2477d4;--red:#c53030;--amber:#b7791f;--green:#237a4b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}aside{position:fixed;inset:0 auto 0 0;width:236px;background:var(--nav);color:#dce7f0;padding:26px 16px;display:flex;flex-direction:column}.brand{font-size:20px;font-weight:750;letter-spacing:-.5px;padding:0 12px 30px}.brand span{color:#56c596}.brand small{display:block;color:#8ca1b2;font-size:11px;font-weight:500;margin-top:5px}nav{display:grid;gap:5px}nav a{color:#b8cad7;text-decoration:none;padding:12px;border-radius:8px}nav a:hover{background:#20394b;color:#fff}.side-foot{margin-top:auto;color:#90a5b5;font-size:12px;padding:12px}.side-foot a{color:#62d0a0}main{margin-left:236px;padding:34px 42px;max-width:1500px}.top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px}.eyebrow{color:#3988c9;font-weight:750;font-size:11px;letter-spacing:1.2px}h1{font-size:32px;letter-spacing:-1px;margin:7px 0}h2{font-size:17px;margin:0 0 18px}h3{font-size:14px}.muted,small{display:block;color:var(--muted);font-size:12px}.panel{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:22px;box-shadow:0 3px 12px #243b5310}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.panel-head a,.link{color:var(--blue);text-decoration:none;border:0;background:none;cursor:pointer;font:inherit}.subhead{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:22px}.kpis>div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px}.kpis b{display:block;font-size:28px}.kpis span{font-size:12px;color:var(--muted)}.kpis .warn{border-top:3px solid #e2a536}.kpis .danger{border-top:3px solid #dc5c5c}.grid-2{display:grid;grid-template-columns:1.5fr 1fr;gap:22px}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px 9px;vertical-align:middle}th{color:#738190;font-size:11px;text-transform:uppercase;letter-spacing:.5px}tr:last-child td{border-bottom:0}.badge{display:inline-block;padding:5px 8px;border-radius:20px;font-size:11px;font-weight:700}.green{color:#1d6d43;background:#e5f5eb}.red{color:#a52929;background:#fde8e8}.amber{color:#936314;background:#fff5d9}.blue{color:#1f63a4;background:#e5f1ff}.gray{color:#65717d;background:#edf0f3}.list-row{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.empty{color:#8a98a5;text-align:center;padding:25px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;align-items:end}.form-grid .wide{grid-column:1/-1}label{display:grid;gap:6px;color:#526171;font-size:12px;font-weight:650}input,select,textarea{width:100%;border:1px solid #ccd6e0;border-radius:7px;padding:10px;background:#fff;color:var(--ink);font:inherit}textarea{min-height:70px;resize:vertical}.button,button{display:inline-block;padding:10px 15px;border:0;border-radius:7px;text-decoration:none;cursor:pointer;font-weight:700}.primary{background:var(--blue);color:#fff}.danger-text{color:var(--red)}.flash{padding:12px 16px;border-radius:8px;margin-bottom:18px;background:#e5f5eb;color:#1d6d43}.flash.error{background:#fde8e8;color:#a52929}.search{max-width:220px}.check{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.check input{width:auto}.inline{display:inline}.login{display:grid;place-items:center;min-height:100vh;background:linear-gradient(135deg,#12202d,#1e4d68)}.login-card{width:min(410px,calc(100% - 30px));background:#fff;border-radius:14px;padding:34px;box-shadow:0 20px 60px #0004}.login-card .brand{color:var(--ink);padding:0 0 25px}.login-card h1{font-size:25px}.login-card label{margin-top:17px}.login-card button{width:100%;margin-top:22px}@media(max-width:1000px){.kpis{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){aside{position:static;width:auto;padding:15px}aside nav{display:flex;overflow:auto}aside .side-foot{display:none}main{margin:0;padding:22px 14px}.top{gap:15px;flex-direction:column}.kpis{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}table{font-size:12px;min-width:700px}.panel{overflow:auto}}
.entry-line{display:grid!important;grid-template-columns:minmax(260px,2fr) minmax(145px,1fr) minmax(260px,2fr) minmax(185px,1.5fr) minmax(110px,.7fr);gap:14px;align-items:stretch!important;margin-bottom:14px;padding:16px;background:#f8fafc;border:1px solid var(--line);border-radius:10px}
.entry-line label{display:flex;flex-direction:column;align-items:stretch;align-content:flex-start;min-width:0;gap:7px;margin:0}
.entry-line label>select,.entry-line label>input{width:100%;min-height:42px;box-sizing:border-box}
.entry-line .entry-residents{min-height:112px}
.entry-line small{display:block;line-height:1.35;color:var(--muted);min-height:1.35em}
.entry-line .remove-entry-line{align-self:end;width:100%;min-height:42px;white-space:nowrap;margin:0}
@media(max-width:1100px){.entry-line{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-line label:nth-child(3){grid-column:1 / -1}.entry-line .remove-entry-line{justify-self:start;width:auto;min-width:130px}}
@media(max-width:700px){.entry-line{grid-template-columns:1fr}.entry-line label:nth-child(3){grid-column:auto}.entry-line .remove-entry-line{width:100%}}
