:root{color:#12213a;font-synthesis:none;background:#f3f6fa;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}.auth-page{background:radial-gradient(circle at 15% 15%,#173d70 0,#0a1830 38%,#061020 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fff;border-radius:24px;width:min(100%,460px);padding:38px;box-shadow:0 26px 80px #0008}.registration-card{width:min(100%,900px)}.auth-logo{object-fit:contain;width:190px;max-height:72px;margin-bottom:28px}.eyebrow{color:#1674d1;letter-spacing:.13em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:800}.auth-card h1,.page-heading h1{color:#102647;margin:0;font-size:clamp(30px,5vw,46px);line-height:1.05}.muted,.page-heading p{color:#64748b;line-height:1.55}.stack{gap:18px;margin-top:28px;display:grid}label{color:#34445d;gap:7px;font-size:14px;font-weight:700;display:grid}input,select{color:#10213c;background:#fff;border:1px solid #ced9e8;border-radius:10px;width:100%;min-height:46px;padding:10px 12px}input:focus,select:focus{border-color:#2385e5;outline:3px solid #2e89e433}.primary,.secondary{border:0;border-radius:10px;min-height:44px;padding:10px 16px;font-weight:800}.primary{color:#fff;background:#1474d4;box-shadow:0 8px 18px #1474d433}.primary:hover{background:#0d64bc}.secondary{color:#27476f;background:#fff;border:1px solid #cbd7e6}.link-button{color:#1674d1;background:0 0;border:0;padding:8px;font-weight:800}.light{color:#d9ebff}.alert{color:#154875;background:#eaf4ff;border:1px solid #b7d9ff;border-radius:12px;margin:18px 0;padding:14px 16px}.alert-error{color:#a92828;background:#fff0f0;border-color:#ffcaca}.registration-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px;display:grid}.registration-message,.registration-grid .primary{grid-column:1/-1}.back{color:#146dcb;background:0 0;border:0;padding:0 0 26px;font-weight:800}.portal{background:#f3f6fa;min-height:100vh}.portal-header{color:#fff;background:#08172c;justify-content:space-between;align-items:center;min-height:76px;padding:12px max(20px,50vw - 660px);display:flex;box-shadow:0 8px 30px #08172c33}.portal-header img{object-fit:contain;width:170px;max-height:52px}.portal-header>div{align-items:center;gap:16px;display:flex}.portal-main{width:min(1320px,100% - 40px);margin:auto;padding:36px 0 64px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.page-heading p{margin-bottom:0}.security-note{color:#16704a;white-space:nowrap;background:#e4f4ec;border-radius:12px;padding:12px 16px;font-weight:800}.filters{background:#fff;border:1px solid #dfe6ef;border-radius:16px;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:14px;margin-bottom:24px;padding:18px;display:grid;box-shadow:0 8px 24px #12213a0a}.clear{min-width:88px}.bill-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.bill-card{background:#fff;border:1px solid #dce5ef;border-radius:17px;min-width:0;padding:22px;box-shadow:0 10px 28px #10213c0b}.bill-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.bill-code{color:#718096;font-family:ui-monospace,monospace;font-size:13px}.bill-card h2{color:#132a4a;overflow-wrap:anywhere;margin:18px 0 7px;font-size:19px}.bill-place{color:#667790;margin:0 0 20px;font-size:14px}.status{letter-spacing:.05em;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900;display:inline-flex}.status-publicado{color:#147247;background:#e3f7ed}.status-vencido{color:#a35400;background:#fff0da}.status-expirado{color:#4e596b;background:#f0f1f4}.bill-data{border-top:1px solid #eef2f6;border-bottom:1px solid #eef2f6;grid-template-columns:repeat(3,1fr);gap:8px;padding:15px 0;display:grid}.bill-data small{color:#7a8799;font-size:11px;display:block}.bill-data strong{color:#1e3453;margin-top:5px;font-size:14px;display:block}.unavailable{color:#81520c;background:#fff7e8;border-radius:9px;padding:11px;font-size:13px;line-height:1.45}.actions{flex-wrap:wrap;gap:9px;margin-top:17px;display:flex}.actions button{flex:1;min-width:max-content}.warning{color:#8b5000;border-color:#efc37e}.state{color:#68788e;text-align:center;background:#fff;border:1px dashed #c5d2e2;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:250px;padding:30px;display:flex}.spinner{border:3px solid #d5e6f8;border-top-color:#1674d1;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.requests{background:#fff;border:1px solid #dce5ef;border-radius:16px;margin-top:28px;padding:22px}.requests h2{margin:0 0 16px;font-size:19px}.requests>div{border-top:1px solid #edf1f5;grid-template-columns:1fr auto auto;gap:20px;padding:12px 0;display:grid}.requests small{color:#718096}.modal-backdrop{z-index:20;background:#071225b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.detail-modal{background:#fff;border-radius:20px;width:min(620px,100%);max-height:calc(100vh - 40px);padding:30px;position:relative;overflow:auto;box-shadow:0 30px 90px #0008}.modal-close{color:#63738b;background:0 0;border:0;font-size:30px;position:absolute;top:14px;right:18px}.detail-modal h2{margin:0 40px 20px 0}.detail-modal dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.detail-modal dl div{background:#f5f8fb;border-radius:10px;padding:12px}.detail-modal dt{color:#728097;font-size:12px}.detail-modal dd{margin:4px 0 0;font-weight:800}.detail-modal>p{color:#586a81;line-height:1.6}@media (width<=980px){.bill-grid,.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.clear{width:100%}}@media (width<=640px){.auth-page{padding:12px}.auth-card{border-radius:18px;padding:25px 20px}.registration-grid{grid-template-columns:1fr}.portal-header{padding:10px 16px}.portal-header img{width:130px}.portal-header span{display:none}.portal-main{width:min(100% - 24px,1320px);padding-top:24px}.page-heading{flex-direction:column;align-items:flex-start}.security-note{white-space:normal;width:100%}.filters,.bill-grid{grid-template-columns:1fr}.bill-data{grid-template-columns:1fr 1fr}.bill-data>div:last-child{grid-column:1/-1}.actions button{width:100%}.requests>div{grid-template-columns:1fr auto}.requests small{grid-column:1/-1}.detail-modal{padding:25px 18px}.detail-modal dl{grid-template-columns:1fr}}@media (orientation:landscape) and (height<=520px){.auth-page{place-items:start center}.detail-modal{max-height:calc(100vh - 16px)}}@media (width>=1600px){.bill-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.resident-intercom{gap:20px;display:grid}.resident-intercom .portal-tabs{margin:0}.resident-qr{background:#f8fafc;border-radius:16px;justify-items:center;gap:12px;margin-top:20px;padding:18px;display:grid}.resident-qr img{border-radius:12px;width:min(280px,100%)}.link-button{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.back{min-height:44px}.modal-close{width:44px;height:44px}.portal-tabs{flex-wrap:wrap;gap:8px;display:flex}.portal-tabs button{color:#27446b;background:#fff;border:1px solid #cbd5e1;border-radius:12px;min-height:44px;padding:10px 16px;font-weight:800}.portal-tabs button.active{color:#fff;background:#153761}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #2f6df6}html[style*="zoom: 0.8"] .portal button,html[style*="zoom: 0.8"] .portal a,html[style*="zoom: 0.8"] .portal input,html[style*="zoom: 0.8"] .portal select,html[style*="zoom: 0.8"] .portal [role=button]{min-width:55px;min-height:55px}.activation-page{min-height:100dvh}.activation-card{width:min(520px,100% - 28px)}.activation-card>label{gap:7px;margin:14px 0;font-weight:700;display:grid}.activation-card>label input{border:1px solid #cdd6e8;border-radius:9px;min-height:46px;padding:9px 11px}.activation-success{color:#16713b;background:#e4f7eb;border-radius:50%;place-items:center;width:64px;height:64px;margin:10px auto;font-size:34px;font-weight:800;display:grid}:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
