/* Identidad de Ñemby y temas. Los QR conservan blanco y negro en ambos modos. */
.brandmark.municipal-mark{width:45px;height:52px;background:transparent!important;border-radius:0;flex-shrink:0}.municipal-mark img{display:block;width:100%;height:100%;object-fit:contain}.brand small{letter-spacing:1.15px;font-size:8px}.welcome .brandmark.municipal-mark{width:64px;height:72px}.welcome .brand strong{font-size:25px}.welcome .brand small{font-size:8px;color:#c0d4c8}.welcome h1{font-weight:600}.login-theme-control{position:absolute;top:25px;right:28px;z-index:2}.theme-toggle{flex-shrink:0}.theme-toggle:hover{border-color:#8db39e}.municipal-login-label{display:inline-flex;align-items:center;gap:8px;color:#c1d4c8;font-size:11px;line-height:1.7;margin-top:30px}.municipal-login-label:before{content:'';width:6px;height:6px;background:#d9b56e;border-radius:50%}.receipt-municipality{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:16px}.receipt-municipality img{width:43px;height:49px;object-fit:contain}.receipt-municipality b{display:block;font-size:13px}.receipt-municipality small{display:block;margin-top:5px;color:var(--muted);font-size:10px}
[data-theme="dark"]{--bg:#101d25;--ink:#e1ece7;--muted:#a0b3ad;--green:#8ad2b3;--deep:#123d34;--line:#2a3d44;--lime:#d7edac;--orange:#e9b76c;--shadow:none;--dark-panel:#182a32;--dark-control:#1b3039;--portal-warning-bg:#3b3020;--portal-warning:#e9be79;--portal-danger-bg:#3d292d;--portal-danger:#ffb0a6;--portal-surface:#192c33;--portal-control:#1d3037;color-scheme:dark}
[data-theme="dark"] body{background:var(--bg);color:var(--ink)}[data-theme="dark"] .topbar,[data-theme="dark"] .desktopnav,[data-theme="dark"] .panel,[data-theme="dark"] .stat,[data-theme="dark"] .task,[data-theme="dark"] .teamcard,[data-theme="dark"] .alertcard,[data-theme="dark"] .accesscard,[data-theme="dark"] .datechip,[data-theme="dark"] .chip,[data-theme="dark"] .iconbtn,[data-theme="dark"] .role-select,[data-theme="dark"] .company-summary>div,[data-theme="dark"] .commission-totals>div,[data-theme="dark"] .sheethead,[data-theme="dark"] .demochip{background:var(--dark-panel);border-color:var(--line);color:var(--ink)}
[data-theme="dark"] .sheet{background:#12232b}[data-theme="dark"] .taskfoot{background:#14262e;border-color:var(--line)}[data-theme="dark"] .btn.outline,[data-theme="dark"] .option,[data-theme="dark"] .day,[data-theme="dark"] .upload{background:var(--dark-control);border-color:var(--line);color:var(--ink)}[data-theme="dark"] .btn.primary{background:#287959;color:#f6fff9}[data-theme="dark"] .btn.dark{background:#23513f;color:#f2fff7}[data-theme="dark"] .btn:not(.primary):not(.dark):not(.outline):not(.payment-approve){background:#263f35;color:#dcf2dd}[data-theme="dark"] .hero .btn:not(.hero-secondary){background:var(--lime);color:#23482f}[data-theme="dark"] .hero .hero-secondary{background:transparent;color:#d9ebdf;border-color:#94bda04d}[data-theme="dark"] .hero{border:1px solid #2a5041}[data-theme="dark"] .iconbox,[data-theme="dark"] .taskmain .iconbox{background:#233d35;color:#acdaba}[data-theme="dark"] .mini-alert .iconbox{background:#3b3020;color:#e9be79}[data-theme="dark"] .avatar{background:#2b473c;color:#c0e1cd}[data-theme="dark"] .hint,[data-theme="dark"] .muted,[data-theme="dark"] .intro p,[data-theme="dark"] .address,[data-theme="dark"] .taskmeta,[data-theme="dark"] .taskid,[data-theme="dark"] .stat small,[data-theme="dark"] .profiletext span,[data-theme="dark"] .access p,[data-theme="dark"] .accesscard p,[data-theme="dark"] .accessfooter,[data-theme="dark"] .menurow small{color:var(--muted)}[data-theme="dark"] .taskmeta b{color:#bed6c8}[data-theme="dark"] .due{color:#dbb778}[data-theme="dark"] .desktopnav button,[data-theme="dark"] .bottomnav button{color:#a3b6ae}[data-theme="dark"] .desktopnav button.active,[data-theme="dark"] .chip.active{background:#294e3e;color:#c5e9c7}[data-theme="dark"] .bottomnav{background:#15282ff5;border-color:var(--line)}[data-theme="dark"] .bottomnav button.active{color:#b2e0ba}[data-theme="dark"] .bottomnav .fab{background:#23503b;border-color:var(--bg);color:#d7edac}[data-theme="dark"] .bottomnav .fab span{color:#a3b6ae}[data-theme="dark"] .company-app .bottomnav .fab{background:transparent;border:0}[data-theme="dark"] .field input,[data-theme="dark"] .field select,[data-theme="dark"] .field textarea,[data-theme="dark"] .search input{background:var(--dark-control);border-color:#38504c;color:var(--ink)}[data-theme="dark"] input::placeholder,[data-theme="dark"] textarea::placeholder{color:#91a69c}[data-theme="dark"] .tag{background:#264337;color:#b0daba}[data-theme="dark"] .tag.amber{background:var(--portal-warning-bg);color:var(--portal-warning)}[data-theme="dark"] .tag.red{background:var(--portal-danger-bg);color:var(--portal-danger)}[data-theme="dark"] .tag.blue{background:#24384e;color:#abc8ef}[data-theme="dark"] .tag.gray{background:#293c42;color:#b4c5bc}[data-theme="dark"] .count,[data-theme="dark"] .progress{background:#29403b;color:#a6beae}[data-theme="dark"] .portal-demo{background:#1c342c;color:#bdd5c4;border-color:#2a4739}[data-theme="dark"] .portal-copy,[data-theme="dark"] .portal-help p,[data-theme="dark"] .portal-mini-message small,[data-theme="dark"] .obligation-main p,[data-theme="dark"] .obligation-date,[data-theme="dark"] .field-person p,[data-theme="dark"] .field-point p,[data-theme="dark"] .payment-row p,[data-theme="dark"] .payment-row small,[data-theme="dark"] .payments-summary small,[data-theme="dark"] .payments-summary p,[data-theme="dark"] .company-summary span,[data-theme="dark"] .commission-totals p,[data-theme="dark"] .commission-totals small{color:#acc0b4}[data-theme="dark"] .obligation-date b,[data-theme="dark"] .company-summary strong{color:#d5e5d8}[data-theme="dark"] .request-reply{background:#203b30;border-color:#355443;color:#c2dcc9}[data-theme="dark"] .option.selected,[data-theme="dark"] .day.active{background:#284c39;border-color:#7cb58a;color:#d1edcf}[data-theme="dark"] .success .iconbox{background:#294b35;color:#cfebbc}[data-theme="dark"] .team-map{border-color:var(--line);background:#162e32}[data-theme="dark"] .leaflet-tile-pane{filter:brightness(.66) saturate(.65)}[data-theme="dark"] .leaflet-container{background:#20333b}[data-theme="dark"] .leaflet-tooltip,[data-theme="dark"] .leaflet-popup-content-wrapper,[data-theme="dark"] .leaflet-popup-tip{background:#20323a;color:#e2ece6;border-color:#3c524b}[data-theme="dark"] .leaflet-tooltip-top:before{border-top-color:#3c524b}[data-theme="dark"] .leaflet-control-zoom a{background:#20323a;color:#e2ece6;border-color:#3c524b}[data-theme="dark"] .map-legend{color:#acc0b4}
[data-theme="dark"] .payment-sheet{--pay-navy:#e1eaf5;--pay-muted:#a5b5c9;--pay-line:#2d4053;--pay-surface:#10212e;--pay-paper:#162937;--pay-card-bg:#203854;background:var(--pay-paper);color:var(--pay-navy)}[data-theme="dark"] .payment-sheet .sheethead{background:var(--pay-paper);border-color:var(--pay-line)}[data-theme="dark"] .payment-demo-badge{background:#422e28;border-color:#624032;color:#f0b57c}[data-theme="dark"] .payment-sheet .payment-approve{background:var(--pay-red);color:#fff}[data-theme="dark"] .payment-sheet .payment-merchant-icon{background:#243a43}[data-theme="dark"] .payment-sheet .payment-qr-frame{border-color:#496075}[data-theme="dark"] .payment-sheet .checkout-error{background:#422d33;color:#ffb3b8}
[data-theme="dark"] .hero .btn:not(.hero-secondary):not(.primary):not(.dark):not(.outline){background:var(--lime);color:#23482f}
@media(max-width:700px){.brandmark.municipal-mark{width:36px;height:43px}.brand small{font-size:7px;letter-spacing:.7px}.welcome .brandmark.municipal-mark{width:48px;height:56px}.welcome .brand strong{font-size:21px}.welcome .brand small{font-size:7px}.welcome h1{font-size:35px}.municipal-login-label{font-size:10px;margin-top:20px}.login-theme-control{top:24px;right:23px}.login-theme-control .theme-toggle{background:#ffffff16;color:white;border-color:#ffffff3b}.receipt-municipality img{width:37px;height:43px}[data-theme="dark"] .topbar{background:var(--bg)}}
@media(max-width:380px){.topbar{padding:0 16px}.topright{gap:7px}.topright .iconbtn{width:34px;height:34px}.brand{gap:8px}.brand strong{font-size:16px}.brand small{font-size:6px;letter-spacing:.5px}}
