:root{--bg:#f3f6f4;--surface:#fff;--surface-2:#f8faf9;--text:#16231d;--muted:#617169;--line:#dce5df;--green:#087a60;--green-2:#056249;--green-soft:#e7f5f0;--amber:#b87308;--amber-soft:#fff2d9;--red:#bf3f4b;--red-soft:#ffeaed;--blue:#2563c4;--blue-soft:#eaf1ff;--shadow:0 12px 34px rgba(30,60,47,.08);--radius:18px}
*{box-sizing:border-box}html{font-size:17px;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:"Lexend",system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.muted{color:var(--muted)}.nowrap{white-space:nowrap}.text-right{text-align:right}.full{width:100%}.mobile-only{display:none}
.button{min-height:52px;border-radius:13px;border:1px solid var(--line);padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--surface);font-weight:750;font-size:.95rem;cursor:pointer;transition:.18s}.button:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(20,55,40,.09)}.button.primary{background:var(--green);border-color:var(--green);color:#fff}.button.primary:hover{background:var(--green-2)}.button.secondary{background:var(--green-soft);color:var(--green-2);border-color:transparent}.button.danger{background:var(--red-soft);color:var(--red);border-color:transparent}.button.small{min-height:42px;padding:0 14px;font-size:.85rem}.button.large{min-height:58px;font-size:1rem}.icon{font-size:1.25em;line-height:1}.icon-button{width:50px;height:50px;border:1px solid var(--line);background:var(--surface);border-radius:14px;display:grid;place-items:center;font-size:1.25rem;cursor:pointer;position:relative}.badge-count{position:absolute;right:-5px;top:-5px;min-width:22px;height:22px;border-radius:12px;background:var(--red);color:#fff;border:2px solid var(--surface);font-size:.68rem;display:grid;place-items:center;font-weight:800}
.login-body,.install-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 10% 10%,#e2f3ed 0,transparent 35%),radial-gradient(circle at 90% 90%,#e8effc 0,transparent 33%),var(--bg)}.login-card,.install-card{width:min(100%,620px);background:var(--surface);border:1px solid var(--line);border-radius:25px;padding:34px;box-shadow:0 22px 70px rgba(22,50,38,.12)}.login-card{width:min(100%,460px)}.login-logo,.install-brand{display:flex;align-items:center;gap:13px;margin-bottom:25px}.logo-mark{width:50px;height:50px;border-radius:15px;background:var(--green);color:#fff;display:grid;place-items:center;font-size:1.4rem;font-weight:900;box-shadow:0 8px 22px rgba(8,122,96,.22)}.login-logo>div,.install-brand>div{display:flex;flex-direction:column}.login-logo strong,.install-brand strong{font-size:1.3rem}.login-logo small,.install-brand small{color:var(--muted);font-size:.83rem}.login-card h1,.install-card h1{font-size:1.65rem;margin:0 0 8px}.login-card>.lead,.install-card>.lead{color:var(--muted);margin:0 0 26px;line-height:1.55}.login-help{text-align:center;color:var(--muted);font-size:.86rem;margin:18px 0 0}.install-shell{width:min(100%,720px);padding:30px 0}.install-brand{padding-left:10px}.step-label{display:inline-flex;color:var(--green-2);background:var(--green-soft);border-radius:9px;padding:7px 10px;font-size:.73rem;letter-spacing:.08em;font-weight:850;margin-bottom:15px}.form-section{padding:18px 0;border-top:1px solid var(--line)}.form-section h2{font-size:1.05rem;margin:0 0 17px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.form-grid label,.single-field{display:flex;flex-direction:column;gap:7px}.form-grid label.wide{grid-column:1/-1}label>span{font-weight:750;font-size:.9rem}label>small{color:var(--muted);font-size:.76rem}.form-grid input,.form-grid select,.form-grid textarea,.single-field input,.single-field select,.single-field textarea,.search-input{width:100%;min-height:52px;border:2px solid var(--line);border-radius:13px;background:var(--surface);padding:0 14px;outline:0;color:var(--text)}.form-grid textarea,.single-field textarea{padding-top:13px;min-height:95px;resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.single-field input:focus,.single-field select:focus,.single-field textarea:focus,.search-input:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(8,122,96,.1)}.check-row{display:flex;align-items:center;gap:12px;padding:17px;border:2px solid var(--line);border-radius:14px;margin:7px 0 20px;cursor:pointer}.check-row input{width:24px;height:24px;accent-color:var(--green)}.check-row>span{display:flex;flex-direction:column}.check-row small{color:var(--muted);font-size:.8rem;margin-top:2px}.success-card{text-align:center}.success-check{width:76px;height:76px;border-radius:50%;background:var(--green-soft);color:var(--green);display:grid;place-items:center;margin:0 auto 20px;font-size:2.2rem;font-weight:900}.alert{border-radius:13px;padding:14px 16px;margin:15px 0;font-weight:650;line-height:1.45}.alert.error{background:var(--red-soft);color:#8e2933}.alert.success{background:var(--green-soft);color:var(--green-2)}
.app{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:270px;background:var(--surface);border-right:1px solid var(--line);padding:25px 18px;display:flex;flex-direction:column;z-index:50}.brand{display:flex;align-items:center;gap:11px;padding:0 9px 22px}.brand .logo-mark{width:44px;height:44px;border-radius:13px}.brand>span:last-child{display:flex;flex-direction:column}.brand strong{font-size:1.18rem}.brand small{font-size:.78rem;color:var(--muted)}.side-label{font-size:.7rem;color:#839188;font-weight:800;letter-spacing:.1em;margin:14px 12px 8px}.side-nav{display:flex;flex-direction:column;gap:4px}.side-nav a{min-height:49px;border-radius:12px;padding:0 13px;display:flex;align-items:center;gap:12px;color:var(--muted);font-weight:650;font-size:.91rem}.side-nav a .nav-icon{width:28px;text-align:center;font-size:1.15rem}.side-nav a:hover{background:var(--surface-2);color:var(--text)}.side-nav a.active{background:var(--green-soft);color:var(--green-2);font-weight:800}.side-nav a em{margin-left:auto;min-width:25px;height:23px;border-radius:12px;background:var(--amber-soft);color:var(--amber);display:grid;place-items:center;font-style:normal;font-size:.72rem}.sidebar-user{margin-top:auto;border-top:1px solid var(--line);padding:16px 8px 0;display:flex;align-items:center;gap:10px}.user-avatar{width:42px;height:42px;border-radius:13px;background:var(--green-soft);color:var(--green-2);display:grid;place-items:center;font-weight:850}.sidebar-user>span{display:flex;flex-direction:column;min-width:0;flex:1}.sidebar-user strong{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user small{font-size:.73rem;color:var(--muted)}.sidebar-user a{font-size:1.15rem;color:var(--muted)}
.main{margin-left:270px;min-height:100vh}.topbar{min-height:92px;display:flex;align-items:center;padding:18px 34px;background:rgba(255,255,255,.9);backdrop-filter:blur(13px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.page-heading h1{font-size:1.55rem;margin:0 0 4px;letter-spacing:-.025em}.page-heading p{margin:0;color:var(--muted);font-size:.87rem}.top-actions{margin-left:auto;display:flex;gap:10px;align-items:center}.menu-button{display:none}.content{padding:28px 34px 100px;max-width:1500px;margin:0 auto}.flash{position:fixed;right:25px;bottom:25px;z-index:120;max-width:430px;background:#17362b;color:#fff;border-radius:15px;padding:15px 18px;box-shadow:0 18px 50px rgba(0,0,0,.22);font-weight:700;animation:slideIn .25s}.flash.error{background:#8f2e37}.welcome{background:linear-gradient(120deg,#0a765d,#129372);color:#fff;border-radius:22px;padding:26px 28px;margin-bottom:18px;display:flex;align-items:center;position:relative;overflow:hidden}.welcome:after{content:"";position:absolute;width:220px;height:220px;border:40px solid rgba(255,255,255,.06);border-radius:50%;right:14%;top:-130px}.welcome h2{font-size:1.45rem;margin:0 0 6px}.welcome p{margin:0;color:rgba(255,255,255,.8);font-size:.9rem}.welcome .button{margin-left:auto;position:relative;z-index:1;background:#fff;color:var(--green-2);border:0}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.summary-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:19px;box-shadow:var(--shadow);display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center}.summary-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--green-soft);font-size:1.35rem}.summary-card.amber .summary-icon{background:var(--amber-soft)}.summary-card.blue .summary-icon{background:var(--blue-soft)}.summary-card.red .summary-icon{background:var(--red-soft)}.summary-card p{grid-column:2;margin:0;color:var(--muted);font-size:.8rem}.summary-card strong{font-size:1.35rem;line-height:1;letter-spacing:-.02em}.quick-title,.section-title{display:flex;align-items:center;justify-content:space-between;margin:24px 0 12px}.quick-title h2,.section-title h2{font-size:1.12rem;margin:0}.quick-title p,.section-title p{font-size:.82rem;color:var(--muted);margin:3px 0 0}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.quick-action{min-height:135px;background:var(--surface);border:2px solid var(--line);border-radius:18px;padding:18px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;transition:.18s}.quick-action:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:var(--shadow)}.quick-action .quick-icon{width:45px;height:45px;border-radius:13px;background:var(--green-soft);display:grid;place-items:center;font-size:1.35rem}.quick-action strong{font-size:.96rem}.quick-action small{font-size:.78rem;color:var(--muted);line-height:1.35}.two-columns{display:grid;grid-template-columns:1.35fr .9fr;gap:16px;margin-top:18px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.card .section-title{margin:0 0 13px}.simple-list{display:flex;flex-direction:column}.simple-row{display:grid;grid-template-columns:44px 1fr auto;gap:11px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.simple-row:first-child{border-top:0}.row-avatar{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--green-soft);color:var(--green-2);font-weight:850;font-size:.78rem}.simple-row>span:nth-child(2){display:flex;flex-direction:column}.simple-row strong{font-size:.9rem}.simple-row small{color:var(--muted);font-size:.77rem;margin-top:3px}.row-amount{text-align:right}.row-amount strong{color:var(--green-2)}.status{display:inline-flex;min-height:30px;align-items:center;justify-content:center;padding:0 10px;border-radius:9px;background:var(--green-soft);color:var(--green-2);font-weight:800;font-size:.75rem;text-transform:capitalize}.status.pendiente,.status.mora,.status.alta{background:var(--amber-soft);color:var(--amber)}.status.disponible,.status.en_proceso{background:var(--blue-soft);color:var(--blue)}.status.anulado,.status.cancelado{background:var(--red-soft);color:var(--red)}.empty{padding:28px;text-align:center;border:2px dashed var(--line);border-radius:15px;color:var(--muted)}.empty .empty-icon{display:block;font-size:2rem;margin-bottom:8px}.empty strong{display:block;color:var(--text);margin-bottom:5px}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.search-wrap{position:relative;width:min(440px,100%)}.search-wrap span{position:absolute;left:15px;top:50%;transform:translateY(-50%)}.search-input{padding-left:46px;background:var(--surface)}.table-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:auto}.data-table{width:100%;min-width:830px;border-collapse:collapse}.data-table th{background:var(--surface-2);color:var(--muted);font-size:.73rem;text-align:left;letter-spacing:.04em;padding:14px 16px}.data-table td{padding:15px 16px;border-top:1px solid var(--line);font-size:.86rem;vertical-align:middle}.data-table td strong{display:block}.data-table td small{display:block;color:var(--muted);margin-top:4px}.table-actions{display:flex;gap:7px;justify-content:flex-end}.link-button{border:0;background:transparent;color:var(--green-2);font-weight:800;cursor:pointer;padding:8px}.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.property-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.property-card-head{min-height:90px;background:linear-gradient(135deg,#e2f2ec,#b9d9cd);padding:15px;display:flex;align-items:flex-start;justify-content:space-between}.property-card-head .property-icon{font-size:2.2rem;align-self:center;margin-left:10px}.property-card-body{padding:18px}.property-card-body>small{color:var(--green-2);font-weight:800;text-transform:uppercase;font-size:.7rem}.property-card-body h3{font-size:1.05rem;margin:6px 0}.property-card-body p{font-size:.8rem;color:var(--muted);margin:0;min-height:38px}.property-card-foot{border-top:1px solid var(--line);margin-top:15px;padding-top:14px;display:flex;align-items:center;justify-content:space-between}.property-card-foot strong{font-size:1rem}.property-card-foot small{color:var(--muted);font-size:.75rem}.pending-card{border-left:5px solid var(--amber)}
.dialog{width:min(680px,calc(100% - 30px));max-height:92vh;border:0;border-radius:22px;padding:0;background:var(--surface);color:var(--text);box-shadow:0 28px 90px rgba(0,0,0,.3)}.dialog::backdrop{background:rgba(8,20,14,.56);backdrop-filter:blur(4px)}.dialog-head{padding:22px 24px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start}.dialog-head h2{font-size:1.3rem;margin:0 0 4px}.dialog-head p{font-size:.83rem;color:var(--muted);margin:0}.dialog-close{margin-left:auto;width:44px;height:44px;border:0;border-radius:12px;background:var(--surface-2);font-size:1.35rem;cursor:pointer}.dialog form{padding:23px 24px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.notice-card{display:flex;gap:12px;padding:15px;border-radius:14px;background:var(--blue-soft);margin-bottom:10px}.notice-card.warning{background:var(--amber-soft)}.notice-card.success{background:var(--green-soft)}.notice-card>span{font-size:1.3rem}.notice-card strong{font-size:.9rem}.notice-card p{font-size:.8rem;color:var(--muted);margin:3px 0 0}.report-banner{background:linear-gradient(120deg,#173c30,#087a60);color:#fff;border-radius:22px;padding:27px;display:flex;align-items:center;margin-bottom:17px}.report-banner h2{font-size:1.35rem;margin:0 0 5px}.report-banner p{margin:0;color:rgba(255,255,255,.77);font-size:.87rem}.report-banner .button{margin-left:auto;background:#fff;color:var(--green-2);border:0}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px}.settings-card h2{font-size:1.05rem;margin:0 0 15px}.bottom-nav{display:none}
@keyframes slideIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:1150px){.summary-grid,.quick-grid{grid-template-columns:repeat(2,1fr)}.property-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.sidebar{transform:translateX(-105%);transition:.25s;box-shadow:0 0 50px rgba(0,0,0,.22)}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.menu-button{display:grid;width:50px;height:50px;border:1px solid var(--line);border-radius:14px;background:var(--surface);place-items:center;font-size:1.2rem;margin-right:13px}.sidebar-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:45}.topbar{padding:16px 20px}.content{padding:22px 20px 100px}.two-columns{grid-template-columns:1fr}.bottom-nav{display:grid;position:fixed;bottom:0;left:0;right:0;height:75px;background:rgba(255,255,255,.96);border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);z-index:40;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--muted);font-size:.7rem;font-weight:700}.bottom-nav a span{font-size:1.25rem}.bottom-nav a.active{color:var(--green-2)}.mobile-only{display:initial}}
@media(max-width:680px){html{font-size:16px}.login-body,.install-body{padding:12px}.login-card,.install-card{padding:23px;border-radius:20px}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}.topbar{min-height:80px;padding:12px 14px}.page-heading h1{font-size:1.25rem}.page-heading p{display:none}.top-actions .button span.button-label{display:none}.top-actions .button{width:50px;padding:0}.content{padding:15px 13px 96px}.welcome{padding:21px;display:block}.welcome h2{font-size:1.2rem}.welcome .button{width:100%;margin:18px 0 0}.summary-grid,.quick-grid{grid-template-columns:1fr 1fr;gap:10px}.summary-card{padding:14px;grid-template-columns:40px 1fr;gap:9px}.summary-icon{width:40px;height:40px}.summary-card strong{font-size:1.05rem}.summary-card p{font-size:.73rem}.quick-action{min-height:132px;padding:14px}.quick-action small{font-size:.73rem}.property-grid{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}.toolbar>.button{width:100%}.card{padding:16px}.simple-row{grid-template-columns:40px 1fr auto}.row-avatar{width:38px;height:38px}.report-banner{padding:21px;display:block}.report-banner .button{width:100%;margin:17px 0 0}.settings-grid{grid-template-columns:1fr}.dialog{width:100%;max-height:94vh;border-radius:22px 22px 0 0;margin:auto 0 0}.dialog form,.dialog-head{padding:18px}.dialog-actions{position:sticky;bottom:-18px;background:var(--surface);padding:14px 0 0}.flash{right:13px;left:13px;bottom:87px}.mobile-card-table{min-width:0}.mobile-card-table thead{display:none}.mobile-card-table,.mobile-card-table tbody,.mobile-card-table tr,.mobile-card-table td{display:block;width:100%}.mobile-card-table tr{padding:14px;border-top:1px solid var(--line)}.mobile-card-table tr:first-child{border-top:0}.mobile-card-table td{border:0;padding:5px 0;display:flex;justify-content:space-between;gap:12px}.mobile-card-table td:before{content:attr(data-label);color:var(--muted);font-size:.75rem;font-weight:700}.mobile-card-table td:first-child{display:block}.mobile-card-table td:first-child:before{display:none}.mobile-card-table .table-actions{justify-content:flex-start;margin-top:7px}}
@media(max-width:390px){.summary-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.quick-action{min-height:120px}.quick-action small{display:none}}
@media print{.sidebar,.topbar,.bottom-nav,.button,.toolbar{display:none!important}.main{margin:0}.content{padding:0}.card,.table-card{box-shadow:none}.report-banner{background:#fff;color:#111;border:1px solid #ddd}.report-banner p{color:#555}}

/* Versión 1.1: interfaz accesible, moderna y sencilla para adultos mayores */
:root{--bg:#f4f7f5;--surface:#fff;--surface-2:#f7faf8;--text:#17211d;--muted:#52645b;--line:#d6e1db;--green:#087d63;--green-2:#04624c;--green-soft:#e4f4ee;--amber:#9b6100;--amber-soft:#fff0cf;--red:#a93440;--red-soft:#fde7e9;--blue:#2458a6;--blue-soft:#e8f0ff;--shadow:0 10px 28px rgba(23,54,41,.08);--radius:19px}
html{font-size:18px;scroll-behavior:smooth}body{line-height:1.5}.mobile-button-label{display:none}.button{min-height:56px;border-radius:15px;font-size:1rem;padding-inline:22px}.button:focus-visible,.icon-button:focus-visible,.menu-button:focus-visible,.quick-action:focus-visible,.side-nav a:focus-visible,.bottom-nav a:focus-visible{outline:4px solid rgba(8,125,99,.22);outline-offset:3px}.icon-button,.menu-button{width:54px;height:54px;border-radius:16px}.logo-mark{font-size:1.2rem}.logo-mark i{line-height:1}.sidebar{width:288px;padding:24px 17px}.main{margin-left:288px}.side-nav{gap:6px}.side-nav a{min-height:56px;border-radius:14px;padding:0 12px;font-size:.96rem;gap:11px}.side-nav a .nav-icon{width:39px;height:39px;border-radius:11px;background:var(--surface-2);display:grid;place-items:center;font-size:1rem}.side-nav a.active .nav-icon{background:#fff;box-shadow:0 3px 12px rgba(8,125,99,.12)}.logout-button{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--surface-2)}.topbar{min-height:88px;padding:16px 30px}.content{padding:28px 30px 112px;max-width:1400px}.page-heading h1{font-size:1.55rem}.welcome{min-height:174px;padding:28px 30px;background:linear-gradient(125deg,#08765e,#0c9674);box-shadow:0 15px 34px rgba(8,125,99,.2)}.welcome-label{display:inline-flex;align-items:center;gap:8px;margin-bottom:9px;font-size:.78rem;font-weight:800;color:#fff;background:rgba(255,255,255,.16);padding:6px 10px;border-radius:99px}.welcome h2{font-size:1.55rem}.welcome p{font-size:.95rem}.summary-card{min-height:116px;padding:20px;border-width:1px}.summary-icon{width:54px;height:54px;border-radius:16px;font-size:1.25rem;color:var(--green-2)}.summary-card.amber .summary-icon{color:var(--amber)}.summary-card.blue .summary-icon{color:var(--blue)}.summary-card.red .summary-icon{color:var(--red)}.summary-card strong{font-size:1.42rem}.summary-card p{font-size:.84rem}.quick-action{min-height:148px}.quick-copy{display:flex;flex-direction:column;gap:6px}.quick-action strong{font-size:1rem}.quick-action small{font-size:.8rem;line-height:1.45}.quick-icon.warning{background:var(--amber-soft);color:var(--amber)}.quick-arrow{display:none}.system-alert{display:flex;align-items:flex-start;gap:14px}.system-alert>i{font-size:1.3rem;margin-top:3px}.system-alert>div{display:flex;flex-direction:column;gap:3px}.system-alert span{font-weight:600}.form-grid input,.form-grid select,.form-grid textarea,.single-field input,.single-field select,.single-field textarea,.search-input{min-height:58px;font-size:1rem;border-radius:14px}.dialog-close{font-size:0}.dialog-close:after{content:'Cerrar';font-size:.8rem;font-weight:800}.bottom-nav a span{width:40px;height:32px;border-radius:11px;display:grid;place-items:center}.bottom-nav a.active span{background:var(--green-soft)}

@media(max-width:900px){.main{margin-left:0}.sidebar{width:min(330px,86vw)}.topbar{padding:14px 18px}.content{padding:22px 18px 110px}.bottom-nav{height:84px;box-shadow:0 -7px 24px rgba(26,55,43,.09)}.bottom-nav a{font-size:.75rem;gap:3px}.bottom-nav a span{font-size:1.12rem}.sidebar-overlay{border:0}}

@media(max-width:680px){html{font-size:17px}.topbar{min-height:76px;padding:10px 12px;gap:8px}.menu-button{width:50px;height:50px;margin-right:2px;flex:none}.page-heading{min-width:0}.page-heading h1{font-size:1.18rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-actions{gap:6px}.top-actions .button.payment-shortcut{width:auto;min-width:76px;padding:0 12px}.top-actions .button .button-label{display:none}.top-actions .button .mobile-button-label{display:inline}.top-actions .icon-button{width:50px;height:50px}.content{padding:15px 12px 105px}.welcome{min-height:0;padding:22px;border-radius:20px;margin-bottom:13px}.welcome:after{opacity:.65}.welcome h2{font-size:1.35rem}.welcome p{font-size:.9rem;max-width:300px}.welcome .button{min-height:58px;font-size:1rem;margin-top:20px}.summary-grid{grid-template-columns:1fr;gap:11px}.summary-card{min-height:96px;padding:15px 16px;grid-template-columns:55px 1fr;gap:12px;border-radius:18px}.summary-icon{width:52px;height:52px}.summary-card strong{font-size:1.28rem}.summary-card p{font-size:.84rem}.quick-title{margin:25px 3px 12px}.quick-title h2{font-size:1.18rem}.quick-title p{font-size:.86rem}.quick-grid{grid-template-columns:1fr;gap:10px}.quick-action{min-height:88px;padding:13px 15px;display:grid;grid-template-columns:54px minmax(0,1fr) 18px;align-items:center;justify-items:start;gap:13px;text-align:left;border-width:1px;border-radius:18px}.quick-action .quick-icon{width:54px;height:54px;border-radius:15px;font-size:1.18rem}.quick-action strong{font-size:1.02rem}.quick-action small{font-size:.79rem;display:block}.quick-arrow{display:block;color:#819087;font-size:.8rem}.two-columns{margin-top:15px}.card,.settings-card{border-radius:18px}.section-title h2{font-size:1.08rem}.simple-row{padding:14px 0}.toolbar{gap:11px}.toolbar>.button{min-height:58px}.table-card{border-radius:18px}.mobile-card-table tr{padding:17px}.mobile-card-table td{padding:7px 0}.mobile-card-table td:before{font-size:.8rem}.dialog-head h2{font-size:1.25rem}.dialog-head p{font-size:.88rem}.dialog-actions{display:grid;grid-template-columns:1fr}.dialog-actions .button{width:100%}.bottom-nav{height:83px}.bottom-nav a{font-size:.72rem;font-weight:800}.bottom-nav a span{font-size:1.08rem}.login-card{padding:25px 21px}.login-card h1{font-size:1.6rem}.login-card>.lead{font-size:.95rem}}

@media(max-width:410px){.top-actions .icon-button{display:none}.top-actions .button.payment-shortcut{min-width:82px}.bottom-nav a{font-size:.67rem}.bottom-nav a span{width:36px}.summary-card strong{font-size:1.2rem}}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

@media print{.sidebar,.topbar,.bottom-nav,.button,.toolbar{display:none!important}.main{margin:0}.content{padding:0}}

/* Versión 1.2: personalización, avisos y formularios móviles seguros */
:root{--green:#315fa8;--green-2:#23467f;--green-soft:#e8eef9;--bg:#f4f6fa;--surface-2:#f6f8fb;--line:#d6dde8;--shadow:0 10px 28px rgba(31,48,76,.09)}
html.font-large{font-size:18px}html.font-extra{font-size:20px}html.high-contrast{--text:#090d0b;--muted:#354039;--line:#9ba9a1;--shadow:0 8px 22px rgba(0,0,0,.14)}html.reduce-motion *,html.reduce-motion *:before,html.reduce-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.welcome{background:linear-gradient(125deg,var(--green-2),var(--green));box-shadow:0 15px 34px color-mix(in srgb,var(--green),transparent 72%)}.property-card-head{background:linear-gradient(135deg,var(--green-soft),color-mix(in srgb,var(--green),#fff 72%))}.report-banner{background:linear-gradient(120deg,var(--green-2),var(--green))}.button:focus-visible,.icon-button:focus-visible,.menu-button:focus-visible,.quick-action:focus-visible,.side-nav a:focus-visible,.bottom-nav a:focus-visible{outline-color:color-mix(in srgb,var(--green),transparent 70%)}

.dialog[open]{display:flex;flex-direction:column;overflow:hidden;max-height:min(92dvh,900px)}.dialog-head{flex:none}.dialog form{min-height:0;overflow-y:auto;overscroll-behavior:contain;scroll-padding-bottom:110px}.dialog::backdrop{background:rgba(20,27,35,.58)}.dialog-actions{background:var(--surface);z-index:2}.dialog-actions .button{white-space:normal;line-height:1.2}.dialog-close{flex:none}.dialog-close:after{content:'Cerrar'}

.toast-container{position:fixed;right:22px;bottom:22px;width:min(430px,calc(100% - 28px));display:flex;flex-direction:column;gap:11px;z-index:500;pointer-events:none}.app-toast{pointer-events:auto;display:grid;grid-template-columns:46px minmax(0,1fr) 38px;gap:12px;align-items:start;background:#fff;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:18px;padding:15px 13px 15px 15px;box-shadow:0 18px 52px rgba(17,27,39,.22);opacity:0;transform:translateY(14px);transition:.22s}.app-toast.visible{opacity:1;transform:none}.app-toast.success{border-left-color:var(--green)}.app-toast.warning{border-left-color:var(--amber)}.app-toast.error{border-left-color:var(--red)}.app-toast.update{border-left-color:#7652ad}.toast-icon{width:42px;height:42px;border-radius:13px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;font-size:1.1rem}.app-toast.success .toast-icon{background:var(--green-soft);color:var(--green-2)}.app-toast.warning .toast-icon{background:var(--amber-soft);color:var(--amber)}.app-toast.error .toast-icon{background:var(--red-soft);color:var(--red)}.app-toast.update .toast-icon{background:#eee8fa;color:#6a46a1}.toast-copy{min-width:0}.toast-copy strong{display:block;font-size:.96rem;line-height:1.3}.toast-copy p{margin:4px 0 0;color:var(--muted);font-size:.83rem;line-height:1.45}.toast-action{border:0;background:var(--green-soft);color:var(--green-2);border-radius:10px;margin-top:10px;padding:9px 12px;font-weight:850;cursor:pointer}.toast-close{width:36px;height:36px;border:0;border-radius:10px;background:var(--surface-2);color:var(--muted);cursor:pointer}.flash{visibility:hidden}

.settings-heading{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:19px;padding:18px 20px;margin-bottom:16px}.settings-heading-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:var(--green-soft);color:var(--green-2);font-size:1.2rem}.settings-heading h2{margin:0;font-size:1.2rem}.settings-heading p{margin:3px 0 0;color:var(--muted);font-size:.84rem}.settings-card-wide{grid-column:1/-1}.settings-card-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}.settings-card-title>span{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:var(--green-soft);color:var(--green-2)}.settings-card-title h2{margin:0 0 2px}.settings-card-title p{margin:0;color:var(--muted);font-size:.8rem}.settings-section{border-top:1px solid var(--line);padding:20px 0}.settings-section:first-of-type{border-top:0;padding-top:0}.settings-section h3{font-size:.95rem;margin:0 0 14px}.color-control{min-height:58px;border:2px solid var(--line);border-radius:14px;display:flex;align-items:center;gap:12px;padding:7px 12px;background:#fff}.color-input{width:44px!important;height:42px!important;min-height:42px!important;padding:0!important;border:0!important;border-radius:10px!important;overflow:hidden;cursor:pointer}.color-control b{font-size:.84rem;color:var(--muted)}.color-presets{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.color-presets button{min-height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 13px;font-weight:750;cursor:pointer}.color-presets button:before{content:'';display:inline-block;width:14px;height:14px;border-radius:50%;background:var(--preset);margin-right:7px;vertical-align:-2px}.toggle-row{display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:15px;padding:14px;margin-top:10px;cursor:pointer}.toggle-row input{width:25px;height:25px;accent-color:var(--green);flex:none}.toggle-row>span{display:flex;flex-direction:column}.toggle-row strong{font-size:.9rem}.toggle-row small{font-size:.78rem;color:var(--muted);margin-top:2px}.settings-note{font-size:.78rem;color:var(--muted);margin:12px 0 0}.settings-card form>.button{margin-top:15px}

.notification-center{padding:20px 22px 22px;min-height:0;overflow-y:auto}.notification-list{display:flex;flex-direction:column;gap:10px}.notification-item{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.notification-item.unread{border-color:color-mix(in srgb,var(--green),#fff 58%);background:var(--green-soft)}.notification-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue)}.notification-icon.success{background:var(--green-soft);color:var(--green-2)}.notification-icon.warning{background:var(--amber-soft);color:var(--amber)}.notification-item strong{font-size:.92rem}.notification-item p{margin:3px 0;color:var(--muted);font-size:.82rem}.notification-item small{color:var(--muted);font-size:.72rem}.notification-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:17px;padding-top:17px;border-top:1px solid var(--line)}.notification-actions form{padding:0;overflow:visible}.notifications-dialog{width:min(620px,calc(100% - 30px))}

@media(max-width:680px){html.font-large{font-size:18px}html.font-extra{font-size:19.5px}.dialog{width:calc(100% - 12px);max-height:calc(100dvh - 14px);height:auto;border-radius:24px;margin:auto}.dialog[open]{max-height:calc(100dvh - 14px)}.dialog-head{padding:18px 17px}.dialog-head>div{min-width:0;padding-right:6px}.dialog-head h2{font-size:1.28rem}.dialog-head p{line-height:1.4}.dialog form{flex:1;padding:18px 17px;overflow-y:auto;padding-bottom:18px}.dialog-actions{position:sticky;bottom:-18px;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:9px;margin:22px -17px -18px;padding:13px 17px calc(13px + env(safe-area-inset-bottom));box-shadow:0 -9px 24px rgba(27,40,34,.08)}.dialog-actions .button{width:100%;min-height:56px;padding:8px 10px;font-size:.9rem}.dialog-close{width:54px;height:48px}.toast-container{left:10px;right:10px;bottom:calc(92px + env(safe-area-inset-bottom));width:auto}.app-toast{grid-template-columns:42px minmax(0,1fr) 34px;padding:13px 10px 13px 13px;border-radius:16px}.toast-icon{width:39px;height:39px}.toast-copy strong{font-size:.93rem}.toast-copy p{font-size:.8rem}.settings-heading{padding:15px}.settings-heading-icon{width:48px;height:48px}.settings-card{padding:17px}.settings-section{padding:18px 0}.color-presets{display:grid;grid-template-columns:1fr 1fr}.color-presets button{width:100%}.notification-center{padding:15px}.notification-item{grid-template-columns:44px 1fr;padding:12px}.notification-icon{width:42px;height:42px}.notification-actions{display:grid;grid-template-columns:1fr}.notification-actions .button,.notification-actions form,.notification-actions form .button{width:100%}.notifications-dialog{width:calc(100% - 12px)}}

@media(max-width:380px){.dialog-actions{grid-template-columns:1fr}.dialog-actions .button.primary{order:-1}.color-presets{grid-template-columns:1fr}}
.flash{visibility:visible}

/* Versión 1.3: identidad propia, lectura clara y experiencia tipo aplicación */
body{font-family:"Lexend",system-ui,-apple-system,"Segoe UI",sans-serif;font-feature-settings:"kern" 1,"liga" 1;overscroll-behavior-y:none}.button,.quick-action,.side-nav a,.bottom-nav a{font-weight:700}h1,h2,h3,strong{letter-spacing:.005em}.button,.icon-button,.menu-button,.quick-action,.sidebar-close,.bottom-nav a{touch-action:manipulation}.button:active,.icon-button:active,.menu-button:active,.quick-action:active,.sidebar-close:active{transform:scale(.97)}

.login-body,.install-body{background:linear-gradient(145deg,color-mix(in srgb,var(--green),#fff 94%),var(--bg) 48%,color-mix(in srgb,var(--blue),#fff 94%));background-attachment:fixed}.login-card,.install-card{box-shadow:0 22px 55px rgba(25,39,54,.1);border-top:5px solid var(--green)}.login-card h1,.install-card h1{letter-spacing:.01em}.login-help{border-top:1px solid var(--line);padding-top:17px}

.sidebar{box-shadow:5px 0 28px rgba(26,40,54,.04)}.sidebar-close{display:none;position:absolute;right:15px;top:18px;width:48px;height:48px;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--text);font-size:1.15rem;cursor:pointer}.side-nav a{position:relative}.side-nav a.active:before{content:"";position:absolute;left:-17px;width:5px;height:30px;border-radius:0 6px 6px 0;background:var(--green)}

.topbar{background:color-mix(in srgb,var(--surface),transparent 3%);box-shadow:0 1px 0 var(--line);border-bottom:0}.page-heading-icon{width:52px;height:52px;border-radius:17px;background:var(--green-soft);color:var(--green-2);display:grid;place-items:center;margin-right:13px;font-size:1.15rem;flex:none}.page-heading h1{letter-spacing:.005em}.content>section,.content>div,.content>article{animation:appRise .38s cubic-bezier(.2,.75,.25,1) both}.content>:nth-child(2){animation-delay:.045s}.content>:nth-child(3){animation-delay:.09s}.content>:nth-child(4){animation-delay:.135s}

.welcome{background:var(--green);border:1px solid color-mix(in srgb,var(--green),#fff 24%);box-shadow:none;border-radius:20px}.welcome:after{display:none}.welcome-label{background:rgba(0,0,0,.13)}.welcome .button{box-shadow:none}.summary-card{position:relative;overflow:hidden;box-shadow:none;border-color:color-mix(in srgb,var(--line),var(--green) 8%)}.summary-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--green)}.summary-card.amber:before{background:var(--amber)}.summary-card.blue:before{background:var(--blue)}.summary-card.red:before{background:var(--red)}.summary-card:nth-child(1){animation:cardLift .42s .08s both}.summary-card:nth-child(2){animation:cardLift .42s .13s both}.summary-card:nth-child(3){animation:cardLift .42s .18s both}.summary-card:nth-child(4){animation:cardLift .42s .23s both}

.quick-grid{grid-template-columns:1.15fr 1fr 1fr;grid-template-rows:repeat(2,minmax(102px,auto));gap:12px}.quick-action{min-height:102px;padding:15px 17px;display:grid;grid-template-columns:52px minmax(0,1fr) 16px;align-items:center;justify-items:start;gap:13px;text-align:left;border:1px solid var(--line);border-radius:17px;box-shadow:none}.quick-action:hover{box-shadow:none;background:var(--surface-2)}.quick-action .quick-icon{width:52px;height:52px;border-radius:16px;font-size:1.15rem}.quick-arrow{display:block;color:var(--muted);font-size:.76rem}.quick-action.primary-action{grid-row:1/3;background:var(--green);border-color:var(--green);color:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:25px}.quick-action.primary-action:hover{background:var(--green-2);border-color:var(--green-2)}.quick-action.primary-action .quick-icon{width:64px;height:64px;border-radius:20px;background:rgba(255,255,255,.18);color:#fff;font-size:1.45rem}.quick-action.primary-action strong{font-size:1.18rem}.quick-action.primary-action small{color:rgba(255,255,255,.86);font-size:.9rem;max-width:270px}.quick-action.primary-action .quick-arrow{display:none}.quick-action:nth-child(4),.quick-action:nth-of-type(4){grid-column:2/4}.card,.table-card,.settings-card,.property-card{box-shadow:none}.property-card{transition:transform .18s,border-color .18s}.property-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--green),#fff 55%)}

.dialog[open]{animation:dialogPop .26s cubic-bezier(.2,.8,.25,1)}.dialog-head{position:relative}.dialog-close{transition:background .18s,transform .18s}.dialog-close:hover{background:var(--green-soft);color:var(--green-2)}.dialog-actions{box-shadow:0 -1px 0 var(--line)}.app-toast{animation:toastArrive .3s cubic-bezier(.2,.8,.25,1)}.badge-count{animation:badgeBreathe 2.2s ease-in-out infinite}.sidebar.open{animation:drawerIn .26s cubic-bezier(.2,.8,.25,1)}

@keyframes appRise{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes cardLift{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:none}}@keyframes dialogPop{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}@keyframes sheetUp{from{opacity:.5;transform:translateY(100%)}to{opacity:1;transform:none}}@keyframes drawerIn{from{transform:translateX(-100%)}to{transform:none}}@keyframes toastArrive{from{transform:translateY(18px)}to{transform:none}}@keyframes badgeBreathe{0%,100%{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes activeNav{0%{transform:scale(.82)}70%{transform:scale(1.08)}100%{transform:scale(1)}}

@media(max-width:1150px){.quick-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.quick-action.primary-action{grid-row:auto;grid-column:1/-1;display:grid;grid-template-columns:62px minmax(0,1fr) 18px;padding:20px}.quick-action.primary-action .quick-arrow{display:block;color:#fff}.quick-action:nth-child(4),.quick-action:nth-of-type(4){grid-column:auto}}

@media(max-width:900px){.sidebar-close{display:grid;place-items:center}.brand{padding-right:52px}.content{padding-bottom:126px}.sidebar-overlay{backdrop-filter:blur(3px)}.bottom-nav{left:10px;right:10px;bottom:max(9px,env(safe-area-inset-bottom));height:76px;padding:5px 6px;border:1px solid color-mix(in srgb,var(--line),#000 5%);border-radius:22px;background:color-mix(in srgb,var(--surface),transparent 3%);box-shadow:0 15px 42px rgba(23,35,48,.2);overflow:hidden}.bottom-nav a{min-width:0;border-radius:16px;transition:color .18s,background .18s,transform .18s}.bottom-nav a span{height:34px}.bottom-nav a.active{background:var(--green-soft);color:var(--green-2)}.bottom-nav a.active span{background:transparent;animation:activeNav .3s ease-out}.toast-container{bottom:calc(98px + env(safe-area-inset-bottom))}}

@media(max-width:680px){body{background:color-mix(in srgb,var(--bg),#fff 18%)}.topbar{padding-top:max(10px,env(safe-area-inset-top));background:rgba(255,255,255,.96)}.page-heading-icon{width:46px;height:46px;border-radius:15px;margin-right:7px;font-size:1rem}.page-heading h1{font-size:1.2rem}.content{padding:15px 12px calc(122px + env(safe-area-inset-bottom))}.welcome{border-radius:18px;padding:21px}.summary-card{border-radius:16px}.quick-grid{grid-template-columns:1fr;gap:10px}.quick-action,.quick-action.primary-action{grid-column:auto;grid-row:auto;min-height:90px;display:grid;grid-template-columns:56px minmax(0,1fr) 18px;padding:14px 16px}.quick-action.primary-action .quick-icon{width:56px;height:56px;border-radius:17px;font-size:1.24rem}.quick-action.primary-action strong{font-size:1.08rem}.quick-action.primary-action small{font-size:.82rem}.quick-action.primary-action .quick-arrow{display:block}.dialog{width:100%;max-height:calc(100dvh - 8px);border-radius:26px 26px 0 0;margin:auto 0 0}.dialog[open]{max-height:calc(100dvh - 8px);animation:sheetUp .32s cubic-bezier(.2,.8,.25,1)}.dialog-head{padding:29px 17px 17px}.dialog-head:before{content:"";position:absolute;top:9px;left:50%;width:48px;height:5px;border-radius:9px;background:#c7d0cb;transform:translateX(-50%)}.dialog form{padding-top:17px}.dialog-actions{box-shadow:0 -12px 28px rgba(25,38,32,.08)}.form-grid input,.form-grid select,.form-grid textarea,.single-field input,.single-field select,.single-field textarea,.search-input{min-height:60px;border-radius:15px}.login-card,.install-card{border-top-width:4px;border-radius:21px}.bottom-nav{height:74px}.bottom-nav a{font-size:.69rem}.bottom-nav a span{width:36px;height:31px}.app-toast{border-radius:18px}}

@media(max-width:430px){.page-heading-icon{display:none}.top-actions .button.payment-shortcut{min-width:84px}.bottom-nav{left:7px;right:7px}.bottom-nav a{font-size:.64rem}.bottom-nav a span{font-size:1.02rem}.quick-action small{line-height:1.35}}

@media(prefers-reduced-motion:reduce){.content>section,.content>div,.content>article,.summary-card,.dialog[open],.app-toast,.badge-count,.sidebar.open,.bottom-nav a.active span{animation:none!important}}

/* Versión 1.4: inicio compacto, limpio y pensado primero para teléfono */
.welcome{min-height:0;background:transparent;color:var(--text);border:0;border-radius:0;padding:8px 3px 15px;margin:0}.welcome-copy{max-width:720px}.welcome-label{background:var(--green-soft);color:var(--green-2);padding:6px 10px;margin-bottom:10px}.welcome h2{font-size:1.52rem;margin-bottom:4px}.welcome p{color:var(--muted);font-size:.92rem}.home-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:2px 2px 12px}.home-section-title>div{display:flex;flex-direction:column;gap:2px}.home-section-title strong{font-size:1.05rem}.home-section-title small{color:var(--muted);font-size:.77rem}.home-section-title>a{display:inline-flex;align-items:center;gap:7px;color:var(--green-2);font-size:.78rem;font-weight:700;white-space:nowrap}.summary-card:before{display:none}.summary-card{border-color:var(--line);border-radius:16px}.summary-card:hover{border-color:color-mix(in srgb,var(--green),#fff 58%)}

@media(max-width:900px){.bottom-nav{height:70px;border-radius:20px;padding:4px 6px}.bottom-nav a{position:relative;background:transparent!important;border-radius:13px;gap:1px}.bottom-nav a:before{content:"";position:absolute;top:-4px;left:50%;width:0;height:3px;border-radius:0 0 5px 5px;background:var(--green);transform:translateX(-50%);transition:width .2s}.bottom-nav a.active:before{width:28px}.bottom-nav a.active span{background:var(--green);color:#fff;border-radius:11px}.bottom-nav a.active{color:var(--green-2)}.toast-container{bottom:calc(90px + env(safe-area-inset-bottom))}}

@media(max-width:680px){.topbar{min-height:68px;padding:8px 11px;gap:7px}.menu-button{width:48px;height:48px;border-radius:15px}.top-actions .button.payment-shortcut{min-height:48px;height:48px;min-width:83px;border-radius:15px;padding:0 13px}.top-actions .icon-button{display:grid;width:48px;height:48px}.content{padding:11px 11px calc(112px + env(safe-area-inset-bottom))}.welcome{padding:7px 3px 13px}.welcome-label{font-size:.72rem;margin-bottom:8px}.welcome h2{font-size:1.35rem;margin:0 0 3px}.welcome p{font-size:.82rem;line-height:1.4;max-width:none}.home-section-title{margin:1px 3px 10px;align-items:center}.home-section-title strong{font-size:.98rem}.home-section-title small{font-size:.69rem}.home-section-title>a{font-size:.7rem}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:15px}.summary-card{min-width:0;min-height:112px;padding:13px;display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto auto;gap:9px 8px;align-content:center;border-radius:17px}.summary-icon{width:42px;height:42px;border-radius:13px;font-size:1rem}.summary-card strong{min-width:0;font-size:clamp(.98rem,4.2vw,1.19rem);line-height:1.1;white-space:nowrap;letter-spacing:-.02em}.summary-card p{grid-column:1/-1;font-size:.72rem;line-height:1.3;margin:0}.quick-title{margin:19px 3px 10px}.quick-title h2{font-size:1.05rem}.quick-title p{font-size:.75rem}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.quick-action,.quick-action.primary-action{position:relative;grid-column:auto;grid-row:auto;min-height:118px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;padding:14px;border-radius:17px}.quick-action .quick-icon,.quick-action.primary-action .quick-icon{width:46px;height:46px;border-radius:14px;font-size:1.05rem}.quick-action strong,.quick-action.primary-action strong{font-size:.91rem;line-height:1.25}.quick-action small,.quick-action.primary-action small{display:none}.quick-action .quick-arrow,.quick-action.primary-action .quick-arrow{display:none}.two-columns{margin-top:13px}.bottom-nav{left:8px;right:8px;bottom:max(7px,env(safe-area-inset-bottom));height:68px}.bottom-nav a{font-size:.62rem}.bottom-nav a span{width:34px;height:29px;font-size:.98rem}.bottom-nav a.active span{animation:activeNav .28s ease-out}}

@media(max-width:370px){.home-section-title small{display:none}.summary-grid{gap:7px}.summary-card{padding:11px;min-height:108px;grid-template-columns:38px minmax(0,1fr)}.summary-icon{width:38px;height:38px}.summary-card strong{font-size:.94rem}.quick-action,.quick-action.primary-action{min-height:108px;padding:12px}.bottom-nav a{font-size:.58rem}}

/* Versión 1.5: lenguaje visual propio, sin colección de tarjetas genéricas */
.login-body{min-height:100dvh;padding:28px;background:color-mix(in srgb,var(--bg),#fff 28%);place-items:center}.login-shell{width:min(1060px,100%);min-height:min(720px,calc(100dvh - 56px));display:grid;grid-template-columns:.92fr 1.08fr;background:var(--surface);border:1px solid var(--line);border-radius:34px;overflow:hidden;box-shadow:0 30px 90px rgba(24,34,48,.14)}.login-showcase{position:relative;isolation:isolate;display:flex;flex-direction:column;padding:42px;background:linear-gradient(155deg,var(--green-2),var(--green));color:#fff;overflow:hidden}.login-showcase:before,.login-showcase:after{content:"";position:absolute;z-index:-1;border:1px solid rgba(255,255,255,.16);border-radius:50%}.login-showcase:before{width:420px;height:420px;right:-250px;top:-160px;box-shadow:0 0 0 42px rgba(255,255,255,.035),0 0 0 86px rgba(255,255,255,.025)}.login-showcase:after{width:260px;height:260px;left:-170px;bottom:-120px;box-shadow:0 0 0 36px rgba(255,255,255,.035)}.login-showcase .login-logo{margin:0}.login-showcase .logo-mark{background:#fff;color:var(--green-2);box-shadow:none}.login-showcase .login-logo small{color:rgba(255,255,255,.72)}.login-message{margin:auto 0;padding:52px 0 42px}.login-kicker{display:inline-flex;align-items:center;gap:8px;font-size:.76rem;font-weight:600;letter-spacing:.03em;background:rgba(0,0,0,.15);padding:7px 11px;border-radius:99px}.login-message h1{font-size:clamp(2.15rem,4vw,3.15rem);line-height:1.08;letter-spacing:-.045em;margin:18px 0 17px}.login-message h1 em{font-style:normal;color:rgba(255,255,255,.72)}.login-message p{max-width:420px;font-size:1rem;line-height:1.65;color:rgba(255,255,255,.78);margin:0}.login-benefits{display:flex;flex-direction:column;gap:11px;font-size:.84rem;color:rgba(255,255,255,.9)}.login-benefits span{display:flex;align-items:center;gap:9px}.login-benefits i{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.16);font-size:.68rem}.login-form-panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(38px,6vw,72px)}.login-form-heading{display:flex;align-items:center;gap:14px}.login-form-heading>span{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--green-soft);color:var(--green-2);font-size:1.1rem}.login-form-heading>div{display:flex;flex-direction:column}.login-form-heading small{font-size:.67rem;letter-spacing:.13em;color:var(--green-2);font-weight:700}.login-form-heading h2{font-size:1.55rem;margin:3px 0 0}.login-form-panel>.lead{color:var(--muted);margin:14px 0 28px;font-size:.9rem}.login-form-panel form{display:flex;flex-direction:column;gap:18px}.login-field{gap:8px}.login-field>span:first-child{display:flex;align-items:center;gap:8px;font-size:.82rem}.login-field>span:first-child i{color:var(--green-2);width:18px}.login-field input{min-height:60px;border:0;border-bottom:2px solid var(--line);border-radius:0;padding:0 5px;background:transparent}.login-field input:focus{border-color:var(--green);box-shadow:none}.password-control{position:relative;display:block}.password-control input{padding-right:55px}.password-control button{position:absolute;right:0;top:50%;transform:translateY(-50%);width:48px;height:48px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:1rem}.login-submit{min-height:64px;border:0;border-radius:18px;background:var(--text);color:#fff;padding:0 11px 0 22px;display:flex;align-items:center;justify-content:space-between;font-weight:700;cursor:pointer;margin-top:6px;transition:transform .18s,background .18s}.login-submit i{width:43px;height:43px;border-radius:14px;display:grid;place-items:center;background:var(--green);transition:transform .18s}.login-submit:hover{background:#080d0b}.login-submit:hover i{transform:translateX(2px)}.login-submit:active{transform:scale(.985)}.login-form-panel .alert{display:flex;align-items:flex-start;gap:9px;margin:0 0 18px}.login-form-panel .login-help{display:flex;align-items:flex-start;justify-content:center;gap:8px;border:0;padding:0;margin:22px 0 0;font-size:.76rem;line-height:1.45}.login-form-panel .login-help i{margin-top:2px;color:var(--green-2)}

.summary-grid{grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:0;background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:none}.summary-card,.summary-card.amber,.summary-card.blue,.summary-card.red{min-height:118px;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.summary-card:last-child{border-right:0}.summary-card:hover{background:var(--surface-2);border-color:var(--line);transform:none}.summary-icon{border-radius:50%;background:transparent!important;border:1px solid color-mix(in srgb,var(--green),#fff 62%)}.summary-card.amber .summary-icon{border-color:color-mix(in srgb,var(--amber),#fff 55%)}.summary-card.blue .summary-icon{border-color:color-mix(in srgb,var(--blue),#fff 58%)}.summary-card.red .summary-icon{border-color:color-mix(in srgb,var(--red),#fff 62%)}

.quick-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:1fr;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden}.quick-action,.quick-action.primary-action{grid-column:auto!important;grid-row:auto;min-height:132px;border:0;border-right:1px solid var(--line);border-radius:0;box-shadow:none;padding:20px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;background:transparent;color:var(--text)}.quick-action:last-child{border-right:0}.quick-action:hover{transform:none;background:var(--surface-2);border-color:var(--line)}.quick-action.primary-action{background:var(--green);color:#fff}.quick-action.primary-action:hover{background:var(--green-2)}.quick-action .quick-icon,.quick-action.primary-action .quick-icon{width:48px;height:48px;border-radius:50%;font-size:1.08rem}.quick-action.primary-action .quick-icon{background:rgba(255,255,255,.17)}.quick-action.primary-action strong{font-size:1rem}.quick-action.primary-action small{font-size:.78rem}.quick-action .quick-arrow{display:none}

.property-grid.property-ledger{display:flex;flex-direction:column;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden}.property-ledger .property-card{display:grid;grid-template-columns:105px minmax(0,1fr);border:0;border-bottom:1px solid var(--line);border-radius:0;overflow:visible;background:transparent;box-shadow:none}.property-ledger .property-card:last-child{border-bottom:0}.property-ledger .property-card:hover{transform:none;border-color:var(--line);background:var(--surface-2)}.property-ledger .property-card-head{min-height:100%;padding:17px 13px;background:color-mix(in srgb,var(--green),#fff 91%);display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:13px;border-right:1px solid var(--line)}.property-ledger .property-icon{margin:0;font-size:1.55rem;color:var(--green-2)}.property-ledger .status{min-height:27px;padding:0 8px;font-size:.64rem}.property-ledger .property-card-body{padding:19px 21px}.property-ledger .property-card-body h3{font-size:1.1rem;margin:5px 0}.property-ledger .property-card-body p{min-height:0}.property-ledger .property-card-foot{gap:15px}.property-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap}.property-actions form{margin:0}.property-action{min-height:44px;border:0;border-radius:10px;background:transparent;color:var(--muted);padding:0 11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600;font-size:.76rem;cursor:pointer}.property-action:hover{background:var(--green-soft);color:var(--green-2)}.property-action.delete:hover{background:var(--red-soft);color:var(--red)}

.confirm-dialog{width:min(430px,calc(100% - 28px));border:0;border-radius:26px;background:var(--surface);color:var(--text);padding:27px;box-shadow:0 28px 90px rgba(11,20,30,.28);text-align:center}.confirm-dialog[open]{animation:dialogPop .24s cubic-bezier(.2,.8,.25,1)}.confirm-dialog::backdrop{background:rgba(18,24,32,.6);backdrop-filter:blur(4px)}.confirm-symbol{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:var(--red-soft);color:var(--red);font-size:1.5rem}.confirm-dialog h2{font-size:1.3rem;margin:0 0 8px}.confirm-dialog p{font-size:.86rem;line-height:1.5;color:var(--muted);margin:0}.confirm-actions{display:grid;grid-template-columns:1fr 1.15fr;gap:9px;margin-top:23px}.confirm-actions button{min-height:55px;border:1px solid var(--line);border-radius:15px;background:var(--surface);font-weight:700;cursor:pointer}.confirm-actions [data-confirm-accept]{border-color:var(--red);background:var(--red);color:#fff}

@media(max-width:900px){.login-shell{grid-template-columns:.85fr 1.15fr}.login-showcase{padding:30px}.login-message h1{font-size:2.15rem}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-action:nth-child(2n){border-right:0}.quick-action:nth-child(-n+2){border-bottom:1px solid var(--line)}}

@media(max-width:680px){.login-body{padding:0;display:block;background:var(--surface)}.login-shell{width:100%;min-height:100dvh;display:grid;grid-template-columns:1fr;grid-template-rows:215px 1fr;border:0;border-radius:0;box-shadow:none}.login-showcase{padding:22px 23px}.login-showcase:before{width:280px;height:280px;right:-170px;top:-130px}.login-showcase:after{display:none}.login-showcase .login-logo{margin:0}.login-showcase .logo-mark{width:46px;height:46px}.login-message{padding:28px 0 0;margin:0}.login-kicker{display:none}.login-message h1{font-size:1.65rem;line-height:1.12;margin:0}.login-message p,.login-benefits{display:none}.login-form-panel{justify-content:flex-start;padding:28px 22px calc(25px + env(safe-area-inset-bottom))}.login-form-heading>span{width:46px;height:46px}.login-form-heading h2{font-size:1.3rem}.login-form-panel>.lead{margin:12px 0 23px}.login-form-panel form{gap:17px}.login-field input{min-height:58px}.login-submit{min-height:62px;margin-top:4px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-radius:20px}.summary-card,.summary-card.amber,.summary-card.blue,.summary-card.red{min-height:112px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px}.summary-card:nth-child(2n){border-right:0}.summary-card:nth-last-child(-n+2){border-bottom:0}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-radius:20px}.quick-action,.quick-action.primary-action{min-height:114px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px}.quick-action:nth-child(2n){border-right:0}.quick-action:nth-last-child(-n+2){border-bottom:0}.quick-action .quick-icon,.quick-action.primary-action .quick-icon{width:44px;height:44px}.property-grid.property-ledger{border-radius:20px}.property-ledger .property-card{grid-template-columns:72px minmax(0,1fr)}.property-ledger .property-card-head{padding:14px 8px;justify-content:flex-start}.property-ledger .property-icon{font-size:1.25rem}.property-ledger .status{font-size:0;width:13px;height:13px;min-height:13px;min-width:13px;padding:0;border-radius:50%;margin-top:5px}.property-ledger .property-card-body{padding:16px 14px}.property-ledger .property-card-body h3{font-size:1rem}.property-ledger .property-card-foot{display:block}.property-ledger .property-card-foot>span{display:block;margin-bottom:12px}.property-actions{justify-content:flex-start;border-top:1px solid var(--line);padding-top:8px}.property-action{min-height:46px;padding:0 10px}.property-action span{font-size:.7rem}.confirm-dialog{margin:auto 10px 10px;width:calc(100% - 20px);border-radius:24px}.confirm-actions{grid-template-columns:1fr}}

@media(max-width:380px){.login-shell{grid-template-rows:188px 1fr}.login-showcase{padding:18px 20px}.login-message{padding-top:20px}.login-message h1{font-size:1.45rem}.login-form-panel{padding:23px 18px calc(20px + env(safe-area-inset-bottom))}.login-form-panel>.lead{margin-bottom:18px}.property-action{padding:0 8px}.property-action span{display:none}.property-action{width:46px}}

/* Versión 1.6: formularios sin contenido tapado */
.dialog>form{display:flex;flex:1;flex-direction:column;min-height:0;padding:0;overflow:hidden}.dialog>form>.form-grid{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:23px 24px 28px;scroll-padding-bottom:28px}.dialog>form>.dialog-actions{position:static;flex:none;margin:0;padding:15px 24px calc(15px + env(safe-area-inset-bottom));border-top:1px solid var(--line);box-shadow:0 -10px 24px rgba(24,35,30,.07)}.install-toast .toast-icon{background:var(--green);color:#fff}.install-toast .toast-action{min-height:42px;padding:0 15px;background:var(--green);color:#fff;border-radius:12px}.install-toast .toast-copy p{font-size:.86rem}

@media(max-width:680px){.dialog{height:min(92dvh,820px);max-height:calc(100dvh - 8px)}.dialog[open]{height:min(92dvh,820px);max-height:calc(100dvh - 8px)}.dialog>form{padding:0;overflow:hidden}.dialog>form>.form-grid{display:grid;grid-template-columns:1fr;gap:17px;padding:18px 17px 30px;overflow-y:auto;scrollbar-gutter:stable;scroll-padding-bottom:30px}.dialog>form>.dialog-actions{position:static;display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:9px;margin:0;padding:12px 17px calc(12px + env(safe-area-inset-bottom));background:var(--surface);box-shadow:0 -12px 28px rgba(24,35,30,.09)}.dialog>form>.dialog-actions .button{min-width:0;width:100%;min-height:56px;padding:6px 9px;font-size:clamp(.78rem,3.5vw,.88rem);white-space:nowrap}.toast-container{bottom:calc(90px + env(safe-area-inset-bottom))}}

@media(max-width:360px){.dialog>form>.dialog-actions{grid-template-columns:1fr}.dialog>form>.dialog-actions .button.primary{order:-1}}

/* Versión 1.7: sistema visual Liquid Glass premium */
:root{--glass-fill:rgba(255,255,255,.64);--glass-fill-strong:rgba(255,255,255,.82);--glass-fill-soft:rgba(255,255,255,.46);--glass-line:rgba(255,255,255,.78);--glass-shadow:0 18px 50px rgba(25,38,54,.12),inset 0 1px 0 rgba(255,255,255,.9);--glass-blur:blur(24px) saturate(175%)}
body{background:radial-gradient(circle at 8% 4%,color-mix(in srgb,var(--green),transparent 78%) 0,transparent 31%),radial-gradient(circle at 96% 90%,rgba(90,145,255,.18) 0,transparent 33%),linear-gradient(145deg,color-mix(in srgb,var(--bg),#fff 12%),var(--bg) 52%,color-mix(in srgb,var(--bg),#dce9ff 14%));background-attachment:fixed}.app{position:relative;isolation:isolate}.app:before{content:"";position:fixed;z-index:-1;inset:10% 8% auto auto;width:240px;height:240px;border-radius:50%;background:color-mix(in srgb,var(--green),transparent 88%);filter:blur(14px);pointer-events:none}

.sidebar,.topbar,.bottom-nav,.summary-grid,.quick-grid,.property-grid.property-ledger,.card,.table-card,.settings-card,.settings-heading,.property-card,.notification-item{background:var(--glass-fill);border-color:var(--glass-line);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow)}.sidebar{background:var(--glass-fill-strong);border-right-color:rgba(255,255,255,.72);box-shadow:10px 0 46px rgba(28,42,59,.09),inset -1px 0 0 rgba(255,255,255,.8)}.topbar{background:var(--glass-fill-soft);border-bottom:1px solid rgba(255,255,255,.62);box-shadow:0 8px 34px rgba(31,45,63,.07),inset 0 1px 0 rgba(255,255,255,.85);-webkit-backdrop-filter:blur(28px) saturate(190%);backdrop-filter:blur(28px) saturate(190%)}.content{position:relative}.page-heading-icon,.menu-button,.icon-button,.sidebar-close,.logout-button{background:rgba(255,255,255,.52);border-color:rgba(255,255,255,.82);box-shadow:0 8px 24px rgba(32,48,67,.08),inset 0 1px 0 rgba(255,255,255,.92);-webkit-backdrop-filter:blur(14px) saturate(170%);backdrop-filter:blur(14px) saturate(170%)}.page-heading-icon{color:var(--green-2)}.side-nav a .nav-icon{background:rgba(255,255,255,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.84)}.side-nav a:hover{background:rgba(255,255,255,.45)}.side-nav a.active{background:color-mix(in srgb,var(--green),transparent 84%);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}

.welcome-label,.status,.welcome-label{border:1px solid rgba(255,255,255,.68);box-shadow:inset 0 1px 0 rgba(255,255,255,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.summary-grid,.quick-grid,.property-grid.property-ledger{box-shadow:0 22px 58px rgba(26,39,55,.11),inset 0 1px 0 rgba(255,255,255,.92);border-color:rgba(255,255,255,.76)}.summary-card,.quick-action,.property-ledger .property-card{border-color:rgba(255,255,255,.7)}.summary-card:hover,.quick-action:hover,.property-ledger .property-card:hover{background:rgba(255,255,255,.32)}.summary-icon,.quick-icon{background:rgba(255,255,255,.46)!important;border-color:rgba(255,255,255,.86)!important;box-shadow:0 9px 24px rgba(33,50,69,.09),inset 0 1px 0 rgba(255,255,255,.92)}.quick-action.primary-action{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(155deg,color-mix(in srgb,var(--green),#fff 12%),var(--green) 55%,var(--green-2));box-shadow:inset 0 1px 0 rgba(255,255,255,.36)}.quick-action.primary-action:after{content:"";position:absolute;z-index:-1;inset:-70% -35% auto auto;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.18);filter:blur(8px)}

.button,.property-action,.color-presets button{border-color:rgba(255,255,255,.76);background:rgba(255,255,255,.5);box-shadow:0 9px 24px rgba(28,42,58,.08),inset 0 1px 0 rgba(255,255,255,.95);-webkit-backdrop-filter:blur(15px) saturate(175%);backdrop-filter:blur(15px) saturate(175%)}.button.primary,.payment-shortcut{position:relative;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--green),#fff 14%),var(--green) 56%,var(--green-2));border-color:color-mix(in srgb,var(--green),#fff 25%);box-shadow:0 12px 28px color-mix(in srgb,var(--green),transparent 72%),inset 0 1px 0 rgba(255,255,255,.42)}.button.primary:before,.payment-shortcut:before{content:"";position:absolute;inset:0 8% auto;height:45%;border-radius:0 0 50% 50%;background:linear-gradient(180deg,rgba(255,255,255,.24),transparent);pointer-events:none}.button.secondary{background:color-mix(in srgb,var(--green-soft),transparent 18%);border-color:rgba(255,255,255,.72)}.button:hover,.icon-button:hover,.menu-button:hover{box-shadow:0 13px 32px rgba(28,42,58,.13),inset 0 1px 0 #fff}.badge-count{box-shadow:0 6px 16px rgba(179,40,55,.28),inset 0 1px 0 rgba(255,255,255,.42)}

.form-grid input,.form-grid select,.form-grid textarea,.single-field input,.single-field select,.single-field textarea,.search-input,.color-control,.toggle-row{background:rgba(255,255,255,.5);border-color:rgba(255,255,255,.84);box-shadow:inset 0 1px 0 rgba(255,255,255,.94),0 8px 24px rgba(31,47,65,.055);-webkit-backdrop-filter:blur(12px) saturate(160%);backdrop-filter:blur(12px) saturate(160%)}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.single-field input:focus,.single-field select:focus,.single-field textarea:focus,.search-input:focus{background:rgba(255,255,255,.76);border-color:color-mix(in srgb,var(--green),#fff 22%);box-shadow:0 0 0 4px color-mix(in srgb,var(--green),transparent 83%),inset 0 1px 0 #fff}.property-ledger .property-card-head,.property-card-head{background:linear-gradient(155deg,rgba(255,255,255,.48),color-mix(in srgb,var(--green),transparent 87%));border-color:rgba(255,255,255,.7)}.data-table th{background:rgba(255,255,255,.28)}.data-table td{border-color:rgba(255,255,255,.62)}

.dialog{background:var(--glass-fill-strong);border:1px solid rgba(255,255,255,.88);box-shadow:0 35px 110px rgba(12,23,38,.32),inset 0 1px 0 #fff;-webkit-backdrop-filter:blur(34px) saturate(190%);backdrop-filter:blur(34px) saturate(190%)}.dialog::backdrop,.confirm-dialog::backdrop{background:rgba(20,29,42,.42);-webkit-backdrop-filter:blur(14px) saturate(125%);backdrop-filter:blur(14px) saturate(125%)}.dialog-head,.dialog>form>.dialog-actions{border-color:rgba(255,255,255,.72);background:rgba(255,255,255,.24);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}.dialog-close{background:rgba(255,255,255,.48);border:1px solid rgba(255,255,255,.8);box-shadow:inset 0 1px 0 #fff,0 8px 20px rgba(29,43,59,.08)}.confirm-dialog{background:var(--glass-fill-strong);border:1px solid rgba(255,255,255,.84);-webkit-backdrop-filter:blur(30px) saturate(185%);backdrop-filter:blur(30px) saturate(185%)}

.bottom-nav{background:rgba(255,255,255,.58);border-color:rgba(255,255,255,.82);box-shadow:0 22px 58px rgba(20,33,49,.2),inset 0 1px 0 rgba(255,255,255,.96);-webkit-backdrop-filter:blur(28px) saturate(190%);backdrop-filter:blur(28px) saturate(190%)}.bottom-nav a.active span{background:linear-gradient(155deg,color-mix(in srgb,var(--green),#fff 12%),var(--green-2));box-shadow:0 8px 20px color-mix(in srgb,var(--green),transparent 68%),inset 0 1px 0 rgba(255,255,255,.42)}.app-toast{background:rgba(255,255,255,.76);border-color:rgba(255,255,255,.86);box-shadow:0 24px 68px rgba(15,28,44,.22),inset 0 1px 0 #fff;-webkit-backdrop-filter:blur(26px) saturate(190%);backdrop-filter:blur(26px) saturate(190%)}.toast-icon,.toast-close,.toast-action{box-shadow:inset 0 1px 0 rgba(255,255,255,.86)}

.login-body{background:radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--green),transparent 72%),transparent 34%),radial-gradient(circle at 90% 88%,rgba(84,140,255,.2),transparent 36%),linear-gradient(145deg,color-mix(in srgb,var(--bg),#fff 18%),var(--bg))}.login-shell{background:rgba(255,255,255,.5);border-color:rgba(255,255,255,.82);box-shadow:0 38px 120px rgba(19,32,48,.2),inset 0 1px 0 #fff;-webkit-backdrop-filter:blur(30px) saturate(185%);backdrop-filter:blur(30px) saturate(185%)}.login-showcase{background:linear-gradient(155deg,color-mix(in srgb,var(--green-2),transparent 4%),color-mix(in srgb,var(--green),transparent 8%));box-shadow:inset 0 1px 0 rgba(255,255,255,.28)}.login-form-panel{background:rgba(255,255,255,.34);-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%)}.login-form-heading>span,.login-submit i{box-shadow:0 10px 26px color-mix(in srgb,var(--green),transparent 75%),inset 0 1px 0 rgba(255,255,255,.7)}.login-submit{background:linear-gradient(155deg,#25312c,#111914);box-shadow:0 15px 34px rgba(17,25,21,.2),inset 0 1px 0 rgba(255,255,255,.18)}

@keyframes liquidReveal{from{opacity:0;transform:translateY(12px) scale(.985);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}.summary-grid,.quick-grid,.property-grid.property-ledger,.card,.table-card,.settings-card{animation:liquidReveal .42s cubic-bezier(.2,.78,.22,1) both}

@media(max-width:900px){.topbar{background:rgba(255,255,255,.58)}.sidebar{background:rgba(255,255,255,.8)}.sidebar-overlay{background:rgba(24,34,47,.28);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}}

@media(max-width:680px){body{background:radial-gradient(circle at 0 0,color-mix(in srgb,var(--green),transparent 82%),transparent 34%),radial-gradient(circle at 100% 75%,rgba(86,142,255,.14),transparent 35%),linear-gradient(150deg,color-mix(in srgb,var(--bg),#fff 18%),var(--bg));background-attachment:fixed}.topbar{background:rgba(255,255,255,.62);border-bottom-color:rgba(255,255,255,.8)}.content{padding-left:12px;padding-right:12px}.summary-grid,.quick-grid,.property-grid.property-ledger{border-radius:24px}.dialog{width:calc(100% - 14px);margin:auto 7px 7px;border-radius:32px}.dialog-head{border-radius:31px 31px 0 0}.dialog-head:before{background:rgba(91,105,99,.36);box-shadow:0 1px 0 rgba(255,255,255,.9)}.dialog>form>.dialog-actions{border-radius:0 0 31px 31px}.bottom-nav{left:9px;right:9px;bottom:max(8px,env(safe-area-inset-bottom));border-radius:23px}.app-toast{background:rgba(255,255,255,.8);border-radius:21px}.login-shell{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.login-form-panel{background:rgba(255,255,255,.68);border-radius:30px 30px 0 0;margin-top:-28px;position:relative;z-index:2;box-shadow:0 -12px 42px rgba(26,39,55,.1),inset 0 1px 0 #fff}}

html.high-contrast{--glass-fill:#fff;--glass-fill-strong:#fff;--glass-fill-soft:#fff}html.high-contrast .sidebar,html.high-contrast .topbar,html.high-contrast .bottom-nav,html.high-contrast .summary-grid,html.high-contrast .quick-grid,html.high-contrast .property-grid.property-ledger,html.high-contrast .card,html.high-contrast .table-card,html.high-contrast .settings-card,html.high-contrast .dialog,html.high-contrast .app-toast{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;border-color:var(--line)}

@media(prefers-reduced-transparency:reduce){:root{--glass-fill:#fff;--glass-fill-strong:#fff;--glass-fill-soft:#fff}.sidebar,.topbar,.bottom-nav,.summary-grid,.quick-grid,.property-grid.property-ledger,.card,.table-card,.settings-card,.dialog,.app-toast,.login-shell,.login-form-panel{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important}}

@media(prefers-reduced-motion:reduce){.summary-grid,.quick-grid,.property-grid.property-ledger,.card,.table-card,.settings-card{animation:none!important}}

/* Versión 1.7.1: hojas móviles compactas, claras y sin contenido cortado */
.dialog-close:after{content:none}.dialog-title{display:flex;align-items:center;gap:13px;min-width:0}.dialog-head-icon{width:48px;height:48px;display:grid;place-items:center;flex:none;border-radius:16px;background:color-mix(in srgb,var(--green),transparent 86%);color:var(--green-2);border:1px solid rgba(255,255,255,.82);box-shadow:inset 0 1px 0 rgba(255,255,255,.92)}.dialog-eyebrow{display:block;margin-bottom:2px;color:var(--green-2);font-size:.62rem;font-weight:800;letter-spacing:.12em}.field-label{display:flex;align-items:center;gap:8px}.field-label i{width:18px;color:var(--green-2);text-align:center}.payment-dialog{width:min(620px,calc(100% - 30px))}.payment-dialog .payment-grid{gap:15px}.payment-more{grid-column:1/-1;border:1px solid rgba(255,255,255,.82);border-radius:16px;background:rgba(255,255,255,.38);overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}.payment-more summary{min-height:54px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;color:var(--green-2);font-weight:750;font-size:.86rem}.payment-more summary::-webkit-details-marker{display:none}.payment-more summary>span{display:flex;align-items:center;gap:9px}.payment-more summary small{color:var(--muted);font-size:.68rem;font-weight:650}.payment-more[open] summary{border-bottom:1px solid rgba(255,255,255,.74)}.payment-more-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:15px}.payment-more-grid label{display:flex;flex-direction:column;gap:7px}.payment-more-grid .wide{grid-column:1/-1}.dialog .button.primary{background:var(--green);border-color:var(--green);box-shadow:0 10px 24px color-mix(in srgb,var(--green),transparent 72%),inset 0 1px 0 rgba(255,255,255,.3)}.dialog .button.primary:before{display:none}

@media(max-width:680px){
  .dialog,.dialog[open]{width:calc(100% - 24px);height:auto;max-height:calc(100dvh - 24px - env(safe-area-inset-bottom));margin:auto 12px max(12px,env(safe-area-inset-bottom));border-radius:27px;background:rgba(248,250,253,.9);box-shadow:0 24px 70px rgba(15,25,39,.26),inset 0 1px 0 #fff}
  .dialog-head{padding:25px 16px 14px;border-radius:26px 26px 0 0;background:rgba(255,255,255,.34)}
  .dialog-head:before{top:8px;width:42px;height:4px;background:rgba(87,98,108,.28)}
  .dialog-head>div{padding-right:0}.dialog-head h2{font-size:1.18rem;line-height:1.25;margin:0 0 2px}.dialog-head p{font-size:.76rem;line-height:1.35}.dialog-title{gap:10px}.dialog-head-icon{width:42px;height:42px;border-radius:14px;font-size:.94rem}.dialog-eyebrow{font-size:.56rem}
  .dialog-close{width:44px;height:44px;margin-left:10px;border-radius:50%;font-size:1rem;color:var(--text)}
  .dialog>form>.form-grid{gap:13px;padding:14px 16px 18px;scrollbar-gutter:auto;scroll-padding-bottom:18px}
  .dialog .form-grid label{gap:6px}.dialog .form-grid label>span{font-size:.8rem}
  .dialog .form-grid input,.dialog .form-grid select,.dialog .form-grid textarea{min-height:54px;border:1px solid rgba(207,216,228,.94);border-radius:14px;background:rgba(255,255,255,.78);padding-inline:14px;box-shadow:0 5px 16px rgba(28,43,60,.045),inset 0 1px 0 #fff;font-size:1rem}
  .dialog .form-grid textarea{min-height:86px;padding-top:13px}
  .dialog>form>.dialog-actions{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:9px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-radius:0 0 26px 26px;background:rgba(250,251,253,.93);box-shadow:0 -8px 24px rgba(22,34,48,.07)}
  .dialog>form>.dialog-actions .button{min-height:52px;padding:0 10px;border-radius:15px;font-size:.82rem;white-space:normal}
  .dialog>form>.dialog-actions .button.primary{font-size:.86rem}.dialog-cancel{background:transparent;box-shadow:none;border-color:rgba(196,206,218,.8)}
  .payment-dialog .payment-grid{gap:12px}.payment-dialog .payment-grid>label:nth-of-type(2),.payment-dialog .payment-grid>label:nth-of-type(3){min-width:0}
  .payment-more{border-color:rgba(205,215,226,.86);background:rgba(255,255,255,.58)}.payment-more summary{min-height:50px;padding:0 14px}.payment-more-grid{grid-template-columns:1fr;gap:12px;padding:13px}.payment-more-grid .wide{grid-column:auto}
}

@media(max-width:370px){.dialog,.dialog[open]{width:calc(100% - 14px);margin-left:7px;margin-right:7px}.dialog>form>.dialog-actions{grid-template-columns:1fr}.dialog>form>.dialog-actions .button.primary{order:-1}.dialog-title .dialog-head-icon{display:none}}

/* Versión 1.8: identidad editorial oscura inspirada en la referencia del usuario */
:root{--ink:#171c1a;--ink-2:#222a27;--night-blue:#2d4169;--paper:#fff;--paper-soft:#f4f5f7;--field:#e4e5e7;--soft-line:#e2e4e7;--soft-shadow:0 18px 50px rgba(14,20,18,.1)}
html{background:var(--ink)}body{font-family:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--ink);letter-spacing:0;color:var(--text)}
.app{background:var(--ink);min-height:100vh}
.app:before{display:none}
.sidebar,.login-showcase{background-color:var(--ink);background-image:radial-gradient(circle at 7% 8%,var(--night-blue) 0 38px,transparent 39px),radial-gradient(circle at 28% 18%,var(--night-blue) 0 31px,transparent 32px),radial-gradient(circle at 17% 34%,var(--night-blue) 0 42px,transparent 43px),radial-gradient(circle at 78% 10%,var(--night-blue) 0 34px,transparent 35px),radial-gradient(circle at 91% 30%,var(--night-blue) 0 39px,transparent 40px),radial-gradient(circle at 48% 58%,var(--night-blue) 0 37px,transparent 38px),radial-gradient(circle at 86% 72%,var(--night-blue) 0 29px,transparent 30px),radial-gradient(circle at 4% 76%,var(--night-blue) 0 44px,transparent 45px)}
.sidebar{width:286px;padding:26px 19px;color:#fff;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.brand{position:relative;z-index:1;padding:0 8px 25px}.brand .logo-mark,.login-showcase .logo-mark{background:#fff;color:var(--ink);border:1px solid rgba(0,0,0,.08);box-shadow:0 13px 34px rgba(0,0,0,.24)}.brand small,.sidebar-user small,.side-label{color:rgba(255,255,255,.58)}
.side-label{font-size:.64rem;letter-spacing:.14em;margin-top:17px}
.side-nav{position:relative;z-index:1;gap:6px}.side-nav a{color:rgba(255,255,255,.72);border-radius:17px;min-height:52px;padding:0 12px;font-weight:650}.side-nav a .nav-icon{background:rgba(255,255,255,.08);color:#fff;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.side-nav a:hover{background:rgba(255,255,255,.1);color:#fff}.side-nav a.active{background:#fff;color:var(--ink);box-shadow:0 12px 30px rgba(0,0,0,.2)}.side-nav a.active:before{display:none}.side-nav a.active .nav-icon{background:var(--night-blue);color:#fff}.side-nav a em{background:var(--night-blue);color:#fff}
.sidebar-user{position:relative;z-index:1;border-color:rgba(255,255,255,.14)}.user-avatar{background:#fff;color:var(--ink);border-radius:50%}.logout-button,.sidebar-close{background:rgba(255,255,255,.1)!important;color:#fff;border-color:rgba(255,255,255,.14)!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.main{margin-left:286px;background:color-mix(in srgb,var(--bg),#fff 62%);border-radius:38px 0 0 38px;min-height:100vh;overflow:clip}
.topbar{min-height:100px;padding:19px 34px;background:#fff;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.page-heading-icon{background:var(--ink);color:#fff;border:0;border-radius:17px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.page-heading h1{font-size:1.5rem;font-weight:800}.page-heading p{color:#7e8581}.menu-button,.icon-button{background:var(--field);color:var(--ink);border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.badge-count{border-color:#fff}
.content{padding:30px 34px 100px;background:color-mix(in srgb,var(--bg),#fff 62%)}
.welcome{padding:2px 3px 20px}.welcome-label{background:var(--ink);color:#fff;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.welcome h2{font-size:1.6rem;font-weight:800}.welcome p{color:#6f7773}
.home-section-title strong,.quick-title h2,.section-title h2{font-weight:800}.home-section-title>a{color:var(--ink)}
.summary-grid,.quick-grid,.property-grid.property-ledger,.card,.table-card,.settings-card,.settings-heading,.property-card,.notification-item{background:#fff;border:1px solid var(--soft-line);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.summary-grid,.quick-grid,.property-grid.property-ledger{border-radius:25px 45px 25px 25px;overflow:hidden}
.summary-card,.summary-card.amber,.summary-card.blue,.summary-card.red{background:transparent;border-color:var(--soft-line);box-shadow:none}.summary-card:hover{background:#f6f7f8}.summary-icon{background:var(--field)!important;color:var(--ink)!important;border:0!important;box-shadow:none!important}.summary-card.amber .summary-icon{background:#fff0d2!important;color:#8d5b00!important}.summary-card.blue .summary-icon{background:#e1e9f8!important;color:#294d8f!important}.summary-card.red .summary-icon{background:#f8e3e5!important;color:#9f313b!important}
.quick-action,.quick-action.primary-action{background:#fff;color:var(--ink);border-color:var(--soft-line);box-shadow:none}.quick-action:hover{background:#f1f2f3}.quick-action.primary-action{background:var(--ink);color:#fff}.quick-action.primary-action:hover{background:#090c0b}.quick-action.primary-action:after{display:none}.quick-icon,.quick-action.primary-action .quick-icon{background:var(--field)!important;color:var(--ink)!important;border:0!important;box-shadow:none!important}.quick-action.primary-action .quick-icon{background:#fff!important}.quick-action.primary-action small{color:rgba(255,255,255,.68)}
.card,.table-card,.settings-card,.settings-heading,.property-card{border-radius:24px}.card,.settings-card{box-shadow:0 10px 34px rgba(17,24,21,.045)}.table-card{overflow:auto}.data-table th{background:#eff0f2;color:#68706c}.data-table td{border-color:var(--soft-line)}.simple-row{border-color:var(--soft-line)}.row-avatar{background:var(--field);color:var(--ink);border-radius:50%}.row-amount strong{color:var(--ink)}
.property-ledger .property-card{background:#fff;border-color:var(--soft-line)}.property-ledger .property-card:hover{background:#f7f7f8}.property-ledger .property-card-head,.property-card-head{background:var(--ink);color:#fff;border:0}.property-ledger .property-icon{color:#fff}.property-ledger .status{background:#fff;color:var(--ink);border:0;box-shadow:none}.property-action{background:transparent;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.property-action:hover{background:var(--field)}
.button,.color-presets button{background:var(--field);color:var(--ink);border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.button.primary,.payment-shortcut,.dialog .button.primary{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:none}.button.primary:before,.payment-shortcut:before{display:none}.button.primary:hover,.payment-shortcut:hover{background:#090c0b;box-shadow:none}.button.secondary{background:var(--field);color:var(--ink);border:0}.button.danger{background:#f8e3e5;color:#9f313b}.button:active,.quick-action:active{transform:scale(.98)}
.form-grid input,.form-grid select,.form-grid textarea,.single-field input,.single-field select,.single-field textarea,.search-input,.color-control,.toggle-row{background:var(--field);border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.single-field input:focus,.single-field select:focus,.single-field textarea:focus,.search-input:focus{background:#eceef0;border:0;box-shadow:0 0 0 4px color-mix(in srgb,var(--green),transparent 78%)}label>span{font-weight:750}.search-wrap span{color:#606764}
.settings-heading-icon,.settings-card-title>span,.notification-icon,.toast-icon{background:var(--ink);color:#fff}.toggle-row{border-radius:18px}.color-control{border-radius:18px}.color-presets button{border-radius:14px}.notice-card{border-radius:18px}
.bottom-nav{background:var(--ink);border:0;box-shadow:0 15px 40px rgba(0,0,0,.28);-webkit-backdrop-filter:none;backdrop-filter:none}.bottom-nav a{color:rgba(255,255,255,.65)}.bottom-nav a.active{color:#fff}.bottom-nav a.active span{background:#fff;color:var(--ink);box-shadow:none}
.dialog,.confirm-dialog{background:#fff;border:0;box-shadow:0 28px 90px rgba(0,0,0,.32);-webkit-backdrop-filter:none;backdrop-filter:none}.dialog::backdrop,.confirm-dialog::backdrop{background:rgba(12,16,15,.66);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog-head,.dialog>form>.dialog-actions{background:#fff;border-color:var(--soft-line);-webkit-backdrop-filter:none;backdrop-filter:none}.dialog-head-icon{background:var(--ink);color:#fff;border:0;box-shadow:none}.dialog-eyebrow,.field-label i{color:#646b67}.dialog-close{background:var(--field);color:var(--ink);border:0;box-shadow:none}.payment-more{background:#f5f6f7;border-color:var(--soft-line);box-shadow:none}.payment-more summary{color:var(--ink)}.dialog-cancel{background:var(--field)}
.app-toast{background:var(--ink);color:#fff;border:0;border-left:5px solid var(--night-blue);box-shadow:0 22px 58px rgba(0,0,0,.3);-webkit-backdrop-filter:none;backdrop-filter:none}.app-toast .toast-copy p{color:rgba(255,255,255,.68)}.toast-close{background:rgba(255,255,255,.1);color:#fff;box-shadow:none}.toast-action,.install-toast .toast-action{background:#fff;color:var(--ink);box-shadow:none}.app-toast .toast-icon,.install-toast .toast-icon{background:#fff;color:var(--ink);box-shadow:none}

/* Login vertical inspirado en la referencia */
.login-showcase{background-image:none}
.login-body{min-height:100dvh;padding:24px;background:var(--ink);place-items:center}.login-shell{width:min(440px,100%);min-height:min(800px,calc(100dvh - 48px));display:flex;flex-direction:column;background:var(--ink);border:1px solid rgba(255,255,255,.12);border-radius:26px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.38);-webkit-backdrop-filter:none;backdrop-filter:none}.login-showcase{position:relative;min-height:300px;padding:24px;overflow:hidden;box-shadow:none}.login-showcase:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 13% 14%,var(--night-blue) 0 35px,transparent 36px),radial-gradient(circle at 42% 8%,var(--night-blue) 0 31px,transparent 32px),radial-gradient(circle at 66% 30%,var(--night-blue) 0 38px,transparent 39px),radial-gradient(circle at 90% 18%,var(--night-blue) 0 30px,transparent 31px),radial-gradient(circle at 20% 64%,var(--night-blue) 0 42px,transparent 43px),radial-gradient(circle at 52% 78%,var(--night-blue) 0 36px,transparent 37px),radial-gradient(circle at 90% 68%,var(--night-blue) 0 43px,transparent 44px);z-index:0}.login-showcase:after{display:none}.login-showcase .login-logo{position:absolute;z-index:2;left:50%;bottom:52px;transform:translateX(-50%);margin:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}.login-showcase .logo-mark{width:104px;height:104px;border-radius:23px;font-size:2.35rem}.login-showcase .login-logo>div{display:none}.login-message,.login-benefits{display:none}.login-form-panel{position:relative;z-index:3;flex:1;display:flex;justify-content:flex-start;background:#fff;border-radius:0 74px 0 0;margin:0;padding:54px 56px 36px;text-align:center;-webkit-backdrop-filter:none;backdrop-filter:none}.login-form-heading{display:block}.login-form-heading>span,.login-form-heading small{display:none}.login-form-heading h2{font-size:2rem;font-weight:800;letter-spacing:-.035em;margin:0}.login-form-panel>.lead{margin:8px 0 28px;color:#8a8f8c;font-size:.86rem}.login-form-panel form{gap:18px;text-align:left}.login-field{gap:7px}.login-field>span:first-child{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#777d79}.login-field>span:first-child i{display:none}.login-field input{min-height:56px;padding:0 18px;border:0;border-radius:18px;background:#dedfe1}.login-field input:focus{background:#e7e8e9;border:0;box-shadow:0 0 0 4px color-mix(in srgb,var(--green),transparent 78%)}.password-control button{right:4px}.login-submit{min-height:58px;margin-top:1px;border-radius:12px;background:var(--ink);padding:0 19px;justify-content:center;box-shadow:none}.login-submit i{display:none}.login-submit:hover{background:#090c0b}.login-help{color:#8b908d!important;font-size:.73rem!important;margin-top:auto!important;padding-top:26px!important}.login-help i{display:none}

@media(max-width:900px){.main{margin-left:0;border-radius:0}.sidebar{width:286px}.sidebar-overlay{background:rgba(10,13,12,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}}

@media(max-width:680px){
  body{background:var(--ink)}.main{background:var(--ink);overflow:visible}.topbar{position:relative;min-height:124px;padding:calc(12px + env(safe-area-inset-top)) 13px 34px;background-color:var(--ink);color:#fff;overflow:hidden}.topbar:after{content:"";position:absolute;inset:0 0 0 42%;background-image:radial-gradient(circle at 18% 14%,var(--night-blue) 0 28px,transparent 29px),radial-gradient(circle at 55% 56%,var(--night-blue) 0 35px,transparent 36px),radial-gradient(circle at 90% 18%,var(--night-blue) 0 25px,transparent 26px);opacity:.75;pointer-events:none}.topbar>*{position:relative;z-index:1}.page-heading-icon{display:grid;width:44px;height:44px;background:#fff;color:var(--ink)}.page-heading h1{font-size:1.25rem;color:#fff}.page-heading p{display:none}.menu-button,.top-actions .icon-button{background:rgba(255,255,255,.11);color:#fff;border:1px solid rgba(255,255,255,.12)}.top-actions .button.payment-shortcut{background:#fff;color:var(--ink);border:0}
  .content{position:relative;z-index:2;margin-top:-24px;padding:24px 12px calc(112px + env(safe-area-inset-bottom));min-height:calc(100dvh - 100px);background:color-mix(in srgb,var(--bg),#fff 65%);border-radius:34px 34px 0 0}.welcome{padding:3px 3px 17px}.welcome-label{font-size:.66rem}.welcome h2{font-size:1.42rem}.welcome p{font-size:.82rem}
  .summary-grid,.quick-grid,.property-grid.property-ledger{border-radius:22px 38px 22px 22px}.summary-card,.summary-card.amber,.summary-card.blue,.summary-card.red{background:#fff}.summary-card:hover{background:#fff}.quick-action,.quick-action.primary-action{background:#fff}.quick-action.primary-action{background:var(--ink)}
  .card,.table-card,.settings-card,.settings-heading,.property-card{border-radius:22px 34px 22px 22px}.bottom-nav{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));height:70px;border-radius:21px}.bottom-nav a.active{background:transparent}.bottom-nav a.active:before{background:#fff}
  .dialog,.dialog[open]{background:#fff;border-radius:28px 42px 28px 28px}.dialog-head{border-radius:27px 41px 0 0}.dialog>form>.dialog-actions{border-radius:0 0 27px 27px}.dialog .form-grid input,.dialog .form-grid select,.dialog .form-grid textarea{background:var(--field);border:0;box-shadow:none}.dialog .form-grid input:focus,.dialog .form-grid select:focus,.dialog .form-grid textarea:focus{background:#eceef0;box-shadow:0 0 0 4px color-mix(in srgb,var(--green),transparent 78%)}
  .login-body{padding:0;display:block}.login-shell{width:100%;min-height:100dvh;border:0;border-radius:0;box-shadow:none}.login-showcase{min-height:310px;padding:0}.login-showcase .login-logo{bottom:48px}.login-showcase .logo-mark{width:98px;height:98px}.login-form-panel{min-height:calc(100dvh - 286px);margin-top:-24px;padding:52px 38px calc(30px + env(safe-area-inset-bottom));border-radius:0 68px 0 0}.login-form-heading h2{font-size:1.86rem}.login-form-panel>.lead{margin-bottom:25px}.login-help{margin-top:28px!important}
}

@media(max-width:380px){.login-showcase{min-height:275px}.login-showcase .logo-mark{width:86px;height:86px}.login-form-panel{min-height:calc(100dvh - 250px);padding:42px 25px calc(24px + env(safe-area-inset-bottom));border-radius:0 54px 0 0}.login-form-heading h2{font-size:1.68rem}.page-heading-icon{display:none}}

html.high-contrast body,html.high-contrast .content{background:#fff}html.high-contrast .main{background:#fff}html.high-contrast .sidebar,html.high-contrast .topbar,html.high-contrast .bottom-nav{background:var(--ink);color:#fff}html.high-contrast .summary-grid,html.high-contrast .quick-grid,html.high-contrast .property-grid.property-ledger,html.high-contrast .card,html.high-contrast .table-card,html.high-contrast .settings-card,html.high-contrast .dialog,html.high-contrast .app-toast{border-color:#7c817e}

/* El instalador también conserva la nueva identidad */
.install-body{min-height:100dvh;background-color:var(--ink);background-image:radial-gradient(circle at 7% 9%,var(--night-blue) 0 45px,transparent 46px),radial-gradient(circle at 92% 14%,var(--night-blue) 0 38px,transparent 39px),radial-gradient(circle at 12% 86%,var(--night-blue) 0 34px,transparent 35px);padding:26px}.install-shell{width:min(760px,100%)}.install-brand{color:#fff;padding:0 8px 16px}.install-brand small{color:rgba(255,255,255,.62)}.install-brand .logo-mark{background:#fff;color:var(--ink);box-shadow:0 14px 35px rgba(0,0,0,.26)}.install-card{background:#fff;border:0;border-radius:26px 58px 26px 26px;box-shadow:0 26px 80px rgba(0,0,0,.34)}.install-card .step-label{background:var(--ink);color:#fff}.install-card .form-section{border-color:var(--soft-line)}.install-card .form-grid input{background:var(--field);border:0;box-shadow:none}.install-card .check-row{background:#f2f3f4;border:0;border-radius:18px}.success-check{background:var(--ink);color:#fff}
@media(max-width:680px){.install-body{padding:0;display:block}.install-shell{width:100%;padding:0}.install-brand{min-height:180px;padding:34px 24px;align-items:flex-start}.install-card{min-height:calc(100dvh - 160px);border-radius:0 58px 0 0;padding:30px 21px;margin-top:-20px}.install-card h1{font-size:1.55rem}.install-card .form-grid input{min-height:56px;border-radius:17px}}

/* Versión 1.8.1: corrección definitiva de escritorio y menú móvil */
.app{isolation:auto}.sidebar{background-color:var(--ink)!important;background-image:radial-gradient(circle at 7% 8%,var(--night-blue) 0 38px,transparent 39px),radial-gradient(circle at 28% 18%,var(--night-blue) 0 31px,transparent 32px),radial-gradient(circle at 17% 34%,var(--night-blue) 0 42px,transparent 43px),radial-gradient(circle at 78% 10%,var(--night-blue) 0 34px,transparent 35px),radial-gradient(circle at 91% 30%,var(--night-blue) 0 39px,transparent 40px),radial-gradient(circle at 48% 58%,var(--night-blue) 0 37px,transparent 38px),radial-gradient(circle at 86% 72%,var(--night-blue) 0 29px,transparent 30px),radial-gradient(circle at 4% 76%,var(--night-blue) 0 44px,transparent 45px)!important;color:#fff!important}.sidebar .brand strong,.sidebar .sidebar-user strong{color:#fff}.content{width:100%;max-width:1240px;margin:0 auto}.topbar{padding-left:max(30px,calc((100vw - 286px - 1240px)/2 + 30px));padding-right:max(30px,calc((100vw - 286px - 1240px)/2 + 30px))}
.sidebar-overlay{border:0;padding:0;opacity:0;transition:opacity .2s;background:rgba(6,9,8,.52)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.sidebar-overlay.visible{opacity:1}.menu-open{overflow:hidden;touch-action:none}

@media(min-width:901px){.sidebar{transform:none!important}.sidebar-close{display:none!important}}

@media(max-width:900px){.sidebar{width:min(326px,calc(100vw - 52px));padding:calc(22px + env(safe-area-inset-top)) 17px calc(20px + env(safe-area-inset-bottom));border-radius:0 30px 30px 0;overflow-y:auto;overscroll-behavior:contain;box-shadow:18px 0 55px rgba(0,0,0,.34)!important;z-index:70}.sidebar.open{transform:translateX(0)!important}.sidebar-overlay{z-index:60}.sidebar-close{right:15px;top:calc(16px + env(safe-area-inset-top));z-index:3}.brand{padding-right:54px}.bottom-nav{background:var(--ink)!important;color:#fff!important;z-index:50}.topbar{padding-left:20px;padding-right:20px}}

@media(max-width:680px){.topbar{padding-left:13px;padding-right:13px}.content{max-width:none;margin-top:-24px}.sidebar .side-nav a{min-height:54px;font-size:.94rem}.sidebar .side-label{margin-top:14px}.sidebar-user{padding-bottom:4px}}

@media(prefers-reduced-transparency:reduce){.sidebar,.bottom-nav,.app-toast{background:var(--ink)!important;color:#fff!important}.sidebar .side-nav a.active{background:#fff!important;color:var(--ink)!important}}
@media(max-width:680px) and (prefers-reduced-transparency:reduce){.topbar{background:var(--ink)!important;color:#fff!important}.login-showcase{background-color:var(--ink)!important}.login-form-panel{background:#fff!important}}

/* Versión 1.9.0: configuración persistente, modo oscuro y administración completa */
.sidebar-user>.user-avatar{width:44px;height:44px;min-width:44px;min-height:44px;flex:0 0 44px;aspect-ratio:1;border-radius:50%!important;display:grid;place-items:center;line-height:1;overflow:hidden}
.sidebar-user>span:not(.user-avatar){display:flex;flex-direction:column;min-width:0;flex:1}
.row-avatar{min-width:42px;aspect-ratio:1;flex:none;border-radius:50%!important}

.theme-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.theme-choice{position:relative;min-height:118px;padding:14px;border:2px solid var(--soft-line);border-radius:20px;background:var(--surface);display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;cursor:pointer;transition:border-color .18s,transform .18s,background .18s}
.theme-choice:hover{transform:translateY(-2px)}.theme-choice:has(input:checked){border-color:var(--green);background:color-mix(in srgb,var(--green),var(--surface) 93%);box-shadow:0 0 0 4px color-mix(in srgb,var(--green),transparent 84%)}
.theme-choice:focus-within{outline:3px solid color-mix(in srgb,var(--green),transparent 65%);outline-offset:2px}.theme-choice input{position:absolute;opacity:0;pointer-events:none}
.theme-choice>span:last-child{display:flex;flex-direction:column;gap:4px}.theme-choice strong{font-size:.92rem}.theme-choice small{color:var(--muted);font-size:.74rem;line-height:1.35}
.theme-choice-preview{width:48px;height:58px;border-radius:15px;display:grid;place-items:center;font-size:1.15rem;border:1px solid var(--soft-line)}.light-preview{background:#fff;color:#252b28}.dark-preview{background:#151a18;color:#fff}.system-preview{background:linear-gradient(90deg,#fff 50%,#151a18 50%);color:var(--green);text-shadow:0 1px 4px rgba(0,0,0,.25)}

.record-table th:last-child,.record-table td:last-child{width:190px}.record-actions{display:flex;align-items:center;gap:7px}.record-actions form{margin:0}.record-action{min-height:42px;border:0;border-radius:12px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:.78rem;font-weight:800;cursor:pointer;white-space:nowrap}.record-action.edit{background:var(--field);color:var(--ink)}.record-action.delete{background:#f8e3e5;color:#9f313b}.record-action:hover{filter:brightness(.97)}.record-action:active{transform:scale(.97)}
.status.inactivo,.status.vencido{background:#e8eaec;color:#555d59}

html.large-controls .button,html.large-controls .icon-button,html.large-controls .menu-button{min-height:58px}html.large-controls .form-grid input,html.large-controls .form-grid select,html.large-controls .single-field input,html.large-controls .single-field select{min-height:58px}html.large-controls .toggle-row{min-height:66px}

html.dark-mode{color-scheme:dark;--bg:#101512;--surface:#1a201d;--surface-2:#232a26;--text:#f3f5f4;--muted:#a3ada7;--line:#353e39;--field:#252c28;--soft-line:#323a36;--soft-shadow:0 18px 50px rgba(0,0,0,.28)}
html.dark-mode body,html.dark-mode .app{background:#0f1412;color:var(--text)}html.dark-mode .main,html.dark-mode .content{background:#131916}html.dark-mode .topbar{background:#181e1b;color:var(--text);border-bottom:1px solid var(--soft-line)}html.dark-mode .page-heading h1,html.dark-mode .page-heading p{color:var(--text)}
html.dark-mode .summary-grid,html.dark-mode .quick-grid,html.dark-mode .property-grid.property-ledger,html.dark-mode .card,html.dark-mode .table-card,html.dark-mode .settings-card,html.dark-mode .settings-heading,html.dark-mode .property-card,html.dark-mode .notification-item{background:#1a201d;border-color:var(--soft-line);color:var(--text)}
html.dark-mode .summary-card,html.dark-mode .summary-card.amber,html.dark-mode .summary-card.blue,html.dark-mode .summary-card.red,html.dark-mode .quick-action{background:transparent;border-color:var(--soft-line);color:var(--text)}html.dark-mode .summary-card:hover,html.dark-mode .quick-action:hover{background:#222925}html.dark-mode .quick-action.primary-action{background:#080b0a;color:#fff;border-color:#080b0a}html.dark-mode .quick-action.primary-action:hover{background:#050706}
html.dark-mode .data-table th{background:#242b27;color:#b8c0bc}html.dark-mode .data-table td,html.dark-mode .simple-row{border-color:var(--soft-line)}html.dark-mode .data-table a{color:#dbe5df}
html.dark-mode .property-ledger .property-card{background:#1a201d;border-color:var(--soft-line)}html.dark-mode .property-ledger .property-card:hover{background:#202723}html.dark-mode .property-card-body,html.dark-mode .property-card-foot{color:var(--text)}html.dark-mode .property-action:hover{background:#272e2a}
html.dark-mode .button,html.dark-mode .button.secondary,html.dark-mode .color-presets button{background:var(--field);color:var(--text)}html.dark-mode .button.primary,html.dark-mode .payment-shortcut,html.dark-mode .dialog .button.primary{background:#f5f7f6;color:#101512;border-color:#f5f7f6}html.dark-mode .button.primary:hover,html.dark-mode .payment-shortcut:hover{background:#dfe4e1}html.dark-mode .button.danger{background:#4a2428;color:#ffb8bf}
html.dark-mode .form-grid input,html.dark-mode .form-grid select,html.dark-mode .form-grid textarea,html.dark-mode .single-field input,html.dark-mode .single-field select,html.dark-mode .single-field textarea,html.dark-mode .search-input,html.dark-mode .color-control,html.dark-mode .toggle-row{background:var(--field);color:var(--text);border-color:var(--line)}html.dark-mode .form-grid input:focus,html.dark-mode .form-grid select:focus,html.dark-mode .form-grid textarea:focus,html.dark-mode .single-field input:focus,html.dark-mode .single-field select:focus,html.dark-mode .single-field textarea:focus,html.dark-mode .search-input:focus{background:#2a322d}html.dark-mode input::placeholder,html.dark-mode textarea::placeholder{color:#7f8a84}
html.dark-mode .theme-choice{background:#1e2521;border-color:var(--soft-line)}html.dark-mode .theme-choice:has(input:checked){background:color-mix(in srgb,var(--green),#1e2521 85%)}html.dark-mode .record-action.edit{background:#2a322d;color:#f2f5f3}html.dark-mode .record-action.delete{background:#482529;color:#ffbdc4}html.dark-mode .status.inactivo,html.dark-mode .status.vencido{background:#303733;color:#c1c8c4}
html.dark-mode .dialog,html.dark-mode .confirm-dialog,html.dark-mode .dialog-head,html.dark-mode .dialog>form>.dialog-actions{background:#1a201d;color:var(--text);border-color:var(--soft-line)}html.dark-mode .dialog-close,html.dark-mode .dialog-cancel{background:var(--field);color:var(--text)}html.dark-mode .payment-more{background:#202723;border-color:var(--soft-line)}
html.dark-mode .login-form-panel{background:#1a201d;color:var(--text)}html.dark-mode .login-form-panel>.lead,html.dark-mode .login-help{color:var(--muted)!important}html.dark-mode .login-field input{background:#272e2a;color:var(--text)}html.dark-mode .login-field input:focus{background:#2d3530}html.dark-mode .login-submit{background:#f5f7f6;color:#101512}html.dark-mode .login-submit:hover{background:#dfe4e1}
html.dark-mode .home-section-title>a,html.dark-mode .row-amount strong{color:var(--text)}html.dark-mode .empty{border-color:var(--line)}html.dark-mode .empty strong{color:var(--text)}html.dark-mode .notice-card{color:#202622}

@media(max-width:680px){
  .theme-picker{grid-template-columns:1fr}.theme-choice{min-height:90px;grid-template-columns:50px minmax(0,1fr);padding:12px 13px}.theme-choice-preview{height:56px}
  .record-table td:has(.record-actions){display:block}.record-table td:has(.record-actions):before{display:block;margin-bottom:9px}.record-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:9px}.record-actions form,.record-action{width:100%}.record-action{min-height:50px;font-size:.84rem}
  html.dark-mode .main,html.dark-mode .content{background:#131916}html.dark-mode .summary-card,html.dark-mode .summary-card.amber,html.dark-mode .summary-card.blue,html.dark-mode .summary-card.red,html.dark-mode .quick-action{background:#1a201d}html.dark-mode .dialog,html.dark-mode .dialog[open],html.dark-mode .dialog-head,html.dark-mode .dialog>form>.dialog-actions{background:#1a201d}html.dark-mode .dialog .form-grid input,html.dark-mode .dialog .form-grid select,html.dark-mode .dialog .form-grid textarea{background:var(--field);color:var(--text)}
}

@media(prefers-reduced-transparency:reduce){html.dark-mode .login-form-panel,html.dark-mode .dialog,html.dark-mode .dialog-head{background:#1a201d!important;color:var(--text)!important}}

/* Versión 1.9.1: propiedades retiradas sin perder historial */
.archived-property-row form{margin:0}.archived-property-row .button{white-space:nowrap}
@media(max-width:680px){.archived-property-row{grid-template-columns:42px minmax(0,1fr)}.archived-property-row form{grid-column:1/-1;width:100%}.archived-property-row form .button{width:100%;min-height:52px}}

/* Versión 2.0: preferencias por dispositivo, modo fácil/pro y oscuro premium */
.device-preferences-card{position:relative;overflow:hidden}.device-preferences-card:after{content:"";position:absolute;right:-70px;top:-85px;width:210px;height:210px;border-radius:50%;background:color-mix(in srgb,var(--green),transparent 90%);pointer-events:none}.device-preferences-card>*{position:relative;z-index:1}
.experience-picker{display:grid;grid-template-columns:1fr 1fr;gap:12px}.experience-choice{position:relative;min-height:126px;padding:17px;border:2px solid var(--soft-line);border-radius:22px;background:var(--surface);display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:14px;cursor:pointer;transition:border-color .18s,transform .18s,background .18s}.experience-choice:hover{transform:translateY(-2px)}.experience-choice:has(input:checked){border-color:var(--green);background:color-mix(in srgb,var(--green),var(--surface) 93%);box-shadow:0 0 0 4px color-mix(in srgb,var(--green),transparent 84%)}.experience-choice:focus-within{outline:3px solid color-mix(in srgb,var(--green),transparent 65%);outline-offset:2px}.experience-choice input{position:absolute;opacity:0;pointer-events:none}.experience-choice>span:last-child{display:flex;flex-direction:column;gap:5px}.experience-choice strong{font-size:1rem}.experience-choice small{color:var(--muted);font-size:.78rem;line-height:1.5}.experience-choice-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:var(--field);color:var(--green-2);font-size:1.18rem}.device-preference-status{display:flex;align-items:center;gap:8px;margin:15px 0 0;padding:12px 14px;border-radius:14px;background:var(--green-soft);color:var(--green-2);font-size:.78rem;font-weight:800}
.account-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.account-row{grid-template-columns:42px minmax(0,1fr) auto;border:1px solid var(--soft-line);border-radius:18px;padding:12px;background:var(--surface-2)}.account-actions{display:flex;align-items:center;gap:7px}.account-actions form{margin:0}.self-account{display:inline-flex;align-items:center;gap:6px;padding:0 8px;color:var(--green-2);font-size:.73rem;font-weight:800;white-space:nowrap}.archive-card{align-self:start}.archived-record-row{grid-template-columns:42px minmax(0,1fr) auto}.archived-record-row form{margin:0}.archived-record-row .button{white-space:nowrap}

html.experience-easy{font-size:17px}html.experience-easy .button,html.experience-easy .icon-button,html.experience-easy .menu-button{min-height:58px}html.experience-easy .form-grid input,html.experience-easy .form-grid select,html.experience-easy .single-field input,html.experience-easy .single-field select{min-height:60px}html.experience-easy .record-action{min-height:50px}html.experience-easy .content{max-width:1120px}html.experience-easy .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html.experience-easy .quick-action.primary-action{grid-column:1/-1!important;min-height:142px}html.experience-easy .quick-action:nth-child(2){border-left:0}html.experience-easy .quick-action small{font-size:.8rem;line-height:1.45}
html.experience-pro{font-size:15.5px}html.experience-pro .content{max-width:1320px;padding-top:22px}html.experience-pro .button{min-height:46px}html.experience-pro .form-grid input,html.experience-pro .form-grid select,html.experience-pro .single-field input,html.experience-pro .single-field select{min-height:50px}html.experience-pro .summary-card{min-height:104px}html.experience-pro .quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}html.experience-pro .quick-action,html.experience-pro .quick-action.primary-action{grid-column:auto!important;min-height:112px;padding:16px}html.experience-pro .quick-icon{width:42px;height:42px}html.experience-pro .data-table th,html.experience-pro .data-table td{padding-top:12px;padding-bottom:12px}html.experience-pro .settings-section{padding-top:15px;margin-top:15px}

html.dark-mode{color-scheme:dark;--ink:#080b10;--night-blue:#18335c;--bg:#0a0d12;--surface:#151a22;--surface-2:#1b222c;--text:#f5f7fb;--muted:#a7b1bf;--line:#34404e;--field:#202832;--soft-line:#2c3642;--green-soft:color-mix(in srgb,var(--green),#101720 78%);--blue-soft:#182b45;--amber-soft:#3b2d14;--red-soft:#3b2027;--soft-shadow:0 20px 55px rgba(0,0,0,.34);--glass-fill:rgba(21,26,34,.9);--glass-fill-strong:rgba(18,23,31,.96);--glass-fill-soft:rgba(17,22,30,.86);--glass-line:rgba(125,157,196,.14);--glass-shadow:0 20px 55px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.045)}
html.dark-mode body,html.dark-mode .app{background:#080b10;color:var(--text)}html.dark-mode body{background-image:radial-gradient(circle at 10% 4%,color-mix(in srgb,var(--green),transparent 88%),transparent 30%),radial-gradient(circle at 94% 88%,rgba(37,87,160,.17),transparent 35%),linear-gradient(150deg,#080b10,#0d1219 55%,#090d13)}html.dark-mode .main,html.dark-mode .content{background:#0d1117;color:var(--text)}html.dark-mode .topbar{background:rgba(15,20,28,.94);border-color:#27313d;box-shadow:0 10px 30px rgba(0,0,0,.25)}html.dark-mode .page-heading h1,html.dark-mode .page-heading p,html.dark-mode h1,html.dark-mode h2,html.dark-mode h3,html.dark-mode strong{color:var(--text)}
html.dark-mode .summary-grid,html.dark-mode .quick-grid,html.dark-mode .property-grid.property-ledger,html.dark-mode .card,html.dark-mode .table-card,html.dark-mode .settings-card,html.dark-mode .settings-heading,html.dark-mode .property-card,html.dark-mode .notification-item{background:#151a22;border-color:#2b3541;box-shadow:0 20px 48px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.035)}html.dark-mode .summary-card,html.dark-mode .summary-card.amber,html.dark-mode .summary-card.blue,html.dark-mode .summary-card.red,html.dark-mode .quick-action{background:transparent;border-color:#2b3541;color:var(--text)}html.dark-mode .summary-card:hover,html.dark-mode .quick-action:hover{background:#1b222c}html.dark-mode .quick-action.primary-action{background:linear-gradient(150deg,color-mix(in srgb,var(--green),#234a7c 20%),color-mix(in srgb,var(--green),#07101e 62%));color:#fff;border-color:transparent}
html.dark-mode .data-table th{background:#1d2530;color:#bdc7d4}html.dark-mode .data-table td,html.dark-mode .simple-row{border-color:#2c3642}html.dark-mode .data-table a,html.dark-mode a{color:#dce9ff}html.dark-mode .property-ledger .property-card{background:#151a22;border-color:#2c3642}html.dark-mode .property-ledger .property-card:hover{background:#1b222c}html.dark-mode .property-ledger .property-card-head{background:linear-gradient(155deg,#202a37,color-mix(in srgb,var(--green),#111820 78%));border-color:#303b48}
html.dark-mode .button,html.dark-mode .button.secondary,html.dark-mode .color-presets button{background:#242d38;color:var(--text);border-color:#34404e;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}html.dark-mode .button.primary,html.dark-mode .payment-shortcut,html.dark-mode .dialog .button.primary{background:linear-gradient(180deg,color-mix(in srgb,var(--green),#fff 10%),var(--green));color:#fff;border-color:color-mix(in srgb,var(--green),#fff 18%)}html.dark-mode .button.primary:hover,html.dark-mode .payment-shortcut:hover{background:color-mix(in srgb,var(--green),#fff 9%)}html.dark-mode .button.danger{background:#48252c;color:#ffc2c8}
html.dark-mode .form-grid input,html.dark-mode .form-grid select,html.dark-mode .form-grid textarea,html.dark-mode .single-field input,html.dark-mode .single-field select,html.dark-mode .single-field textarea,html.dark-mode .search-input,html.dark-mode .color-control,html.dark-mode .toggle-row{background:#202832;color:var(--text);border-color:#354150;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}html.dark-mode .form-grid input:focus,html.dark-mode .form-grid select:focus,html.dark-mode .form-grid textarea:focus,html.dark-mode .single-field input:focus,html.dark-mode .single-field select:focus,html.dark-mode .single-field textarea:focus,html.dark-mode .search-input:focus{background:#242e3a;border-color:color-mix(in srgb,var(--green),#fff 25%);box-shadow:0 0 0 4px color-mix(in srgb,var(--green),transparent 76%)}html.dark-mode option{background:#202832;color:#f5f7fb}html.dark-mode input::placeholder,html.dark-mode textarea::placeholder{color:#7f8c9d}
html.dark-mode .theme-choice,html.dark-mode .experience-choice{background:#19212b;border-color:#303b48}html.dark-mode .theme-choice:has(input:checked),html.dark-mode .experience-choice:has(input:checked){background:color-mix(in srgb,var(--green),#17202b 82%)}html.dark-mode .experience-choice-icon{background:#242e3a;color:#d7e6ff}html.dark-mode .device-preference-status{background:#17283a;color:#c9e0ff}html.dark-mode .account-row{background:#1b222c;border-color:#2f3a47}html.dark-mode .record-action.edit{background:#26313d;color:#f5f7fb}html.dark-mode .record-action.delete{background:#49262d;color:#ffc0c7}html.dark-mode .self-account{color:#a8d4ff}
html.dark-mode .dialog,html.dark-mode .confirm-dialog,html.dark-mode .dialog-head,html.dark-mode .dialog>form>.dialog-actions{background:#151a22;color:var(--text);border-color:#303a46}html.dark-mode .dialog-close,html.dark-mode .dialog-cancel{background:#252e39;color:var(--text);border-color:#34404e}html.dark-mode .dialog::backdrop,html.dark-mode .confirm-dialog::backdrop{background:rgba(2,5,9,.72);backdrop-filter:blur(9px)}html.dark-mode .payment-more{background:#1b222c;border-color:#303a46}html.dark-mode .app-toast{background:rgba(22,28,37,.96);border-color:#34404e;color:var(--text);box-shadow:0 25px 70px rgba(0,0,0,.42)}html.dark-mode .toast-close{color:var(--text)}
html.dark-mode .login-form-panel{background:#151a22;color:var(--text)}html.dark-mode .login-field input{background:#202832;color:var(--text)}html.dark-mode .login-submit{background:linear-gradient(180deg,color-mix(in srgb,var(--green),#fff 10%),var(--green));color:#fff}html.dark-mode .notice-card{color:var(--text)}html.dark-mode .notice-card p{color:#c2cad5}html.dark-mode .empty{border-color:#354150}html.dark-mode .bottom-nav{background:#10151d!important;border-color:#28333f;color:#fff!important}

@media(max-width:900px){.account-list{grid-template-columns:1fr}html.experience-pro .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){
  .experience-picker{grid-template-columns:1fr}.experience-choice{min-height:106px;padding:14px;grid-template-columns:50px minmax(0,1fr)}.experience-choice-icon{width:50px;height:50px}.account-row{grid-template-columns:42px minmax(0,1fr)}.account-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.account-actions .record-action,.account-actions form{width:100%}.self-account{grid-column:1/-1;justify-content:center;min-height:42px}.archived-record-row{grid-template-columns:42px minmax(0,1fr)}.archived-record-row form{grid-column:1/-1;width:100%}.archived-record-row form .button{width:100%;min-height:52px}
  html.experience-easy{font-size:18px}html.experience-easy .summary-grid,html.experience-easy .quick-grid{grid-template-columns:1fr}html.experience-easy .summary-card,html.experience-easy .summary-card.amber,html.experience-easy .summary-card.blue,html.experience-easy .summary-card.red,html.experience-easy .quick-action,html.experience-easy .quick-action.primary-action{border-right:0;border-bottom:1px solid var(--line);min-height:104px}html.experience-easy .summary-card:last-child,html.experience-easy .quick-action:last-child{border-bottom:0}html.experience-easy .content{padding-left:14px;padding-right:14px}html.experience-easy .bottom-nav a{font-size:.68rem}
  html.experience-pro{font-size:16px}html.experience-pro .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html.experience-pro .quick-action,html.experience-pro .quick-action.primary-action{min-height:108px;padding:13px}html.experience-pro .quick-action small{font-size:.7rem}html.experience-pro .content{padding-left:10px;padding-right:10px}
  html.dark-mode .main,html.dark-mode .content{background:#0d1117}html.dark-mode .topbar{background-color:#090d13}html.dark-mode .summary-card,html.dark-mode .summary-card.amber,html.dark-mode .summary-card.blue,html.dark-mode .summary-card.red,html.dark-mode .quick-action{background:#151a22}html.dark-mode .dialog,html.dark-mode .dialog[open],html.dark-mode .dialog-head,html.dark-mode .dialog>form>.dialog-actions{background:#151a22}html.dark-mode .dialog .form-grid input,html.dark-mode .dialog .form-grid select,html.dark-mode .dialog .form-grid textarea{background:#202832;color:var(--text)}
}

/* Versión 2.1: vista previa y administración de documentos */
.document-name{display:flex;align-items:center;gap:12px;min-width:220px}.document-name>span:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}.document-name strong{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-type-icon{width:44px;height:44px;min-width:44px;border-radius:14px;display:grid;place-items:center;font-size:1.15rem;background:var(--field);color:var(--blue)}.document-type-icon.pdf{background:#f9e4e7;color:#a62f3b}.document-type-icon.word{background:#e4edf9;color:#285a99}.document-type-icon.image{background:#e2f4ed;color:#197052}.document-actions{display:flex;align-items:center;gap:7px;justify-content:flex-end}.document-actions form{margin:0}.document-actions .record-action{text-decoration:none}.record-action.preview{background:var(--green-soft);color:var(--green-2)}
.document-preview-dialog{width:min(1080px,calc(100% - 30px));height:min(860px,calc(100dvh - 34px));max-height:calc(100dvh - 34px);overflow:hidden}.document-preview-dialog[open]{display:flex;flex-direction:column}.document-preview-body{position:relative;flex:1;min-height:0;background:#e9edf2;overflow:hidden}.document-preview-body iframe{display:block;width:100%;height:100%;border:0;background:#fff;opacity:0;transition:opacity .2s ease}.document-preview-body.loaded iframe{opacity:1}.document-preview-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--muted);font-weight:800}.document-preview-loading i{font-size:1.65rem;color:var(--green)}.document-preview-body.loaded .document-preview-loading{display:none}.document-preview-actions{flex:none;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface)}
html.dark-mode .document-type-icon{background:#26313d}.dark-mode .document-type-icon.pdf{background:#49262d;color:#ffc0c7}.dark-mode .document-type-icon.word{background:#1d3048;color:#b7d6ff}.dark-mode .document-type-icon.image{background:#19352c;color:#9ee2c8}html.dark-mode .record-action.preview{background:#173247;color:#c9e4ff}html.dark-mode .document-preview-body{background:#090d13}html.dark-mode .document-preview-body iframe{background:#151a22}html.dark-mode .document-preview-actions{background:#151a22;border-color:#303a46}
@media(max-width:900px){.document-actions{justify-content:flex-start;flex-wrap:wrap}.document-table td:last-child{min-width:280px}}
@media(max-width:680px){.document-table-card{background:transparent!important;border:0!important;box-shadow:none!important}.document-table tr{margin-bottom:12px;padding:15px!important;border:1px solid var(--line)!important;border-radius:20px 30px 20px 20px;background:var(--surface)}.document-table td:last-child{min-width:0}.document-name{min-width:0}.document-name strong{white-space:normal;word-break:break-word}.document-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding-top:7px}.document-actions form{width:100%}.document-actions .record-action{width:100%;min-height:52px}.document-actions form:last-child:nth-child(3){grid-column:1/-1}.document-preview-dialog,.document-preview-dialog[open]{width:calc(100% - 10px);height:calc(100dvh - 8px);max-height:calc(100dvh - 8px);margin:auto 5px 4px;border-radius:26px 38px 26px 26px}.document-preview-dialog .dialog-head{padding:17px}.document-preview-dialog .dialog-head h2{max-width:270px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-preview-actions{display:grid;grid-template-columns:.8fr 1.2fr;padding:11px 14px calc(11px + env(safe-area-inset-bottom))}.document-preview-actions .button{width:100%;min-height:54px}}

/* Versión 2.2.1: una sola mano, con saludo corto y sin superposición */
.welcome-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.animated-wave{display:inline-grid;place-items:center;width:38px;height:38px;flex:0 0 38px;margin:-5px 0 -4px;vertical-align:middle}.animated-wave img,.animated-wave .wave-fallback{grid-area:1/1;width:100%;height:100%}.animated-wave img{display:none;object-fit:contain;filter:drop-shadow(0 4px 7px rgba(31,39,50,.15));transform-origin:72% 76%}.animated-wave .wave-fallback{display:grid;place-items:center;font-size:27px;line-height:1}.animated-wave.wave-ready img{display:block;animation:welcome-wave 1.65s cubic-bezier(.34,1.56,.64,1) .18s 1 both}.animated-wave.wave-ready .wave-fallback{display:none}.animated-wave.wave-failed img{display:none}.animated-wave.wave-failed .wave-fallback{display:grid}.dark-mode .animated-wave img{filter:drop-shadow(0 5px 9px rgba(0,0,0,.35))}
@keyframes welcome-wave{0%,100%{transform:rotate(0deg) scale(1)}18%{transform:rotate(16deg) scale(1.05)}36%{transform:rotate(-13deg) scale(1.05)}54%{transform:rotate(12deg) scale(1.04)}72%{transform:rotate(-7deg) scale(1.02)}88%{transform:rotate(4deg) scale(1)}}
@media(max-width:680px){.animated-wave{width:34px;height:34px;flex-basis:34px;margin:-3px 0 -2px}.animated-wave .wave-fallback{font-size:25px}}

/* Versión 2.3: calendario, recordatorios y contratos centralizados */
.payment-calendar-callout{margin:20px 0 8px;min-height:86px;padding:16px 18px;display:grid;grid-template-columns:54px minmax(0,1fr) 24px;align-items:center;gap:14px;border:1px solid color-mix(in srgb,var(--green),transparent 72%);border-radius:20px 30px 20px 20px;background:linear-gradient(135deg,var(--green-soft),color-mix(in srgb,var(--surface),var(--green) 5%));transition:transform .18s ease,box-shadow .18s ease}.payment-calendar-callout:hover{transform:translateY(-2px);box-shadow:0 15px 35px color-mix(in srgb,var(--green),transparent 83%)}.payment-calendar-callout>span{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:var(--green);color:#fff;font-size:1.35rem}.payment-calendar-callout>div{display:flex;flex-direction:column;gap:4px}.payment-calendar-callout strong{font-size:1.05rem}.payment-calendar-callout small{color:var(--muted)}
.payment-due-grid{margin-top:0}.payment-due-card{border-top:5px solid var(--blue)}.payment-due-card.vencido{border-top-color:var(--red)}.payment-due-card.hoy{border-top-color:#c47a00}.payment-due-card.proximo{border-top-color:var(--blue)}.payment-due-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.payment-due-head>strong{font-size:.8rem;color:var(--muted)}.payment-due-actions{display:grid;grid-template-columns:1.35fr .8fr;gap:9px;margin-top:15px}.payment-due-actions .button{padding:0 12px}.payment-all-good{margin-top:20px}
.status.vencido{background:var(--red-soft);color:var(--red)}.status.hoy{background:var(--amber-soft);color:#9b6100}.status.proximo{background:var(--blue-soft);color:var(--blue)}.status.pagado{background:var(--green-soft);color:var(--green-2)}
.calendar-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:22px 24px;margin-bottom:16px;border:1px solid var(--line);border-radius:24px 36px 24px 24px;background:linear-gradient(140deg,var(--surface),color-mix(in srgb,var(--green-soft),var(--surface) 58%));box-shadow:var(--soft-shadow)}.calendar-heading h2{font-size:1.7rem;margin:8px 0 4px}.calendar-heading p{margin:0;color:var(--muted)}.calendar-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:var(--green);color:#fff;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.calendar-navigation{display:flex;gap:8px}.calendar-navigation .button{min-height:46px;padding:0 14px}
.calendar-status-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--surface)}.calendar-status{min-height:64px;padding:12px 15px;display:flex;align-items:center;justify-content:center;gap:8px;border-right:1px solid var(--line);font-size:.83rem;color:var(--muted)}.calendar-status:last-child{border-right:0}.calendar-status i{font-size:1.05rem}.calendar-status strong{font-size:1.05rem;color:var(--text)}.calendar-status.paid i{color:var(--green)}.calendar-status.today i{color:#b36e00}.calendar-status.upcoming i{color:var(--blue)}.calendar-status.overdue i{color:var(--red)}
.calendar-board{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));overflow:auto;border:1px solid var(--line);border-radius:22px 34px 22px 22px;background:var(--surface);box-shadow:var(--soft-shadow)}.calendar-weekday{position:sticky;top:0;z-index:2;padding:13px 8px;text-align:center;background:var(--ink);color:#fff;font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.calendar-day{min-height:146px;padding:9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}.calendar-day:nth-child(7n){border-right:0}.calendar-day.empty-day{background:var(--field)}.calendar-day.is-today{background:color-mix(in srgb,var(--green-soft),var(--surface) 45%);box-shadow:inset 0 0 0 2px var(--green)}.calendar-day-number{min-height:27px;display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.calendar-day-number>span{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;font-weight:850}.calendar-day.is-today .calendar-day-number>span{background:var(--green);color:#fff}.calendar-day-number small{font-size:.58rem;color:var(--green-2);font-weight:900}.calendar-event{width:100%;min-height:44px;margin-top:5px;padding:7px 8px;border:0;border-left:4px solid var(--blue);border-radius:9px;background:var(--blue-soft);color:var(--text);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;text-align:left;cursor:pointer}.calendar-event strong{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem}.calendar-event small{font-size:.62rem;color:var(--muted)}.calendar-event.vencido{border-left-color:var(--red);background:var(--red-soft)}.calendar-event.hoy{border-left-color:#c47a00;background:var(--amber-soft)}.calendar-event.pagado{border-left-color:var(--green);background:var(--green-soft);cursor:default}.calendar-event.pagado small{color:var(--green-2)}.calendar-more{display:block;margin:7px 2px 0;color:var(--muted);font-weight:800;font-size:.66rem}
.calendar-agenda{margin-top:24px}.calendar-agenda-list{display:flex;flex-direction:column;gap:10px}.calendar-agenda-item{display:grid;grid-template-columns:64px minmax(0,1fr) minmax(145px,.55fr) minmax(140px,.55fr);align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-left:6px solid var(--blue);border-radius:18px 28px 18px 18px;background:var(--surface)}.calendar-agenda-item.vencido{border-left-color:var(--red)}.calendar-agenda-item.hoy{border-left-color:#c47a00}.calendar-agenda-item.pagado{border-left-color:var(--green)}.agenda-date{width:58px;height:58px;border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--field)}.agenda-date strong{font-size:1.25rem}.agenda-date small{text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:850}.agenda-person,.agenda-amount{display:flex;flex-direction:column;gap:4px;min-width:0}.agenda-person small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-amount{align-items:flex-start}.agenda-done{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:48px;border-radius:13px;background:var(--green-soft);color:var(--green-2);font-weight:850}
.contract-flow-card{display:grid;grid-template-columns:54px minmax(0,1fr);gap:14px;align-items:center;margin:0 0 18px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--green),transparent 70%);border-radius:20px 30px 20px 20px;background:linear-gradient(135deg,var(--green-soft),var(--surface))}.contract-flow-card>span{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--green);color:#fff;font-size:1.2rem}.contract-flow-card strong{font-size:1rem}.contract-flow-card p{margin:5px 0 0;color:var(--muted);line-height:1.5}.dialog>form.contract-form>.contract-form-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px 28px}.dialog>form.contract-form>.contract-form-body .form-grid{padding:0;overflow:visible}.contract-form-step{grid-column:1/-1;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;margin:17px 0 11px;padding-top:15px;border-top:1px solid var(--line)}.contract-form-step:first-of-type{margin-top:0;padding-top:0;border-top:0}.contract-form-step>span{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--ink);color:#fff;font-weight:900}.contract-form-step>div{display:flex;flex-direction:column;gap:2px}.contract-form-step small{color:var(--muted)}.contract-file-picker{position:relative;min-height:82px;margin:0 0 8px;padding:15px;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px;border:2px dashed color-mix(in srgb,var(--green),transparent 48%);border-radius:16px;background:var(--green-soft);cursor:pointer}.contract-file-picker>i{font-size:1.8rem;color:var(--red)}.contract-file-picker>span{display:flex;flex-direction:column;gap:3px}.contract-file-picker small{color:var(--muted)}.contract-file-picker input{grid-column:1/-1;width:100%;min-height:46px;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:11px}.contract-file-actions{display:flex;gap:6px;align-items:center}.contract-file-actions .record-action{min-height:42px}.no-contract-file{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.78rem}.contract-row td:first-child small{display:flex;align-items:center;gap:6px}.document-links{display:flex;flex-direction:column;gap:4px}.document-links strong,.document-links small{display:flex;align-items:center;gap:6px}.document-links small{color:var(--muted)}.document-toolbar{margin-top:16px}.notification-link{display:inline-flex;align-items:center;gap:6px;margin-top:9px;color:var(--green-2);font-weight:850;font-size:.78rem}
html.dark-mode .payment-calendar-callout,html.dark-mode .calendar-heading,html.dark-mode .contract-flow-card{background:linear-gradient(135deg,#17283a,#151a22);border-color:#314154}html.dark-mode .calendar-status-summary,html.dark-mode .calendar-board,html.dark-mode .calendar-day,html.dark-mode .calendar-agenda-item{background:#151a22;border-color:#2b3541}html.dark-mode .calendar-day.empty-day{background:#10151d}html.dark-mode .calendar-day.is-today{background:#17283a}html.dark-mode .calendar-event.proximo{background:#1d3048}html.dark-mode .calendar-event.vencido{background:#49262d}html.dark-mode .calendar-event.hoy{background:#3b2d14}html.dark-mode .calendar-event.pagado{background:#19352c}html.dark-mode .agenda-date,html.dark-mode .contract-file-picker input{background:#202832}html.dark-mode .contract-file-picker{background:#19352c;border-color:#376d5b}
@media(max-width:900px){.calendar-heading{align-items:flex-start;flex-direction:column}.calendar-navigation{width:100%}.calendar-navigation .button{flex:1}.calendar-status-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-status:nth-child(2){border-right:0}.calendar-status:nth-child(-n+2){border-bottom:1px solid var(--line)}.calendar-agenda-item{grid-template-columns:58px minmax(0,1fr) minmax(130px,.6fr)}.calendar-agenda-item>.button,.calendar-agenda-item>.agenda-done{grid-column:2/-1}.contract-table-card{overflow-x:auto}}
@media(max-width:680px){.payment-calendar-callout{grid-template-columns:48px minmax(0,1fr) 18px;padding:13px}.payment-calendar-callout>span{width:48px;height:48px}.payment-due-actions{grid-template-columns:1fr}.calendar-heading{padding:17px;border-radius:20px 28px 20px 20px}.calendar-heading h2{font-size:1.4rem}.calendar-navigation{display:grid;grid-template-columns:1fr .75fr 1fr}.calendar-navigation .button{padding:0 8px;font-size:.78rem}.calendar-status-summary{border-radius:17px}.calendar-status{padding:10px 7px;font-size:.72rem}.calendar-status strong{font-size:.95rem}.calendar-board{display:none}.calendar-agenda{margin-top:18px}.calendar-agenda-item{grid-template-columns:55px minmax(0,1fr);gap:10px;padding:12px}.calendar-agenda-item .agenda-amount{grid-column:2}.calendar-agenda-item>.button,.calendar-agenda-item>.agenda-done{grid-column:1/-1;width:100%}.agenda-date{width:52px;height:52px}.contract-flow-card{grid-template-columns:46px minmax(0,1fr);padding:14px}.contract-flow-card>span{width:46px;height:46px}.dialog>form.contract-form>.contract-form-body{padding:14px 16px 22px}.dialog>form.contract-form>.contract-form-body .form-grid{display:grid;grid-template-columns:1fr;gap:14px}.contract-form-step{margin-left:0;margin-right:0}.contract-file-picker{grid-template-columns:38px minmax(0,1fr)}.contract-file-picker>i{font-size:1.5rem}.contract-file-actions{justify-content:flex-start}.document-links strong,.document-links small{align-items:flex-start}}

/* Versión 2.3.1: alta de contratos en tres acciones sencillas */
.contract-simple-note{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:14px 16px;border-radius:16px;background:var(--green-soft);color:var(--text)}.contract-simple-note>i{width:38px;height:38px;flex:0 0 38px;border-radius:12px;display:grid;place-items:center;background:var(--green);color:#fff}.contract-simple-note>span,.contract-simple-copy{display:flex;flex-direction:column;gap:3px}.contract-simple-note small,.contract-simple-copy small{color:var(--muted);font-size:.76rem}.contract-simple-grid{display:flex;flex-direction:column;gap:12px}.contract-simple-field{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:11px;padding:15px;border:1px solid var(--line);border-radius:18px 27px 18px 18px;background:var(--surface);cursor:pointer}.contract-simple-number{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--ink);color:#fff;font-weight:900}.contract-simple-copy strong{font-size:.95rem}.contract-simple-field select{grid-column:1/-1;width:100%;min-height:58px;padding:0 15px;border:0;border-radius:14px;background:var(--field);color:var(--text);font:inherit;font-weight:750;outline:0}.contract-simple-field select:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--green),transparent 78%)}.contract-simple-file{min-height:130px;border:2px dashed color-mix(in srgb,var(--green),transparent 48%);background:color-mix(in srgb,var(--green-soft),var(--surface) 45%)}.contract-simple-file input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.contract-file-button{grid-column:1/-1;min-height:54px;padding:8px 14px;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:9px;background:var(--green);color:#fff;font-weight:850;pointer-events:none}.contract-file-button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contract-simple-file:focus-within{box-shadow:0 0 0 4px color-mix(in srgb,var(--green),transparent 78%)}.contract-simple-file.has-file{border-style:solid;border-color:var(--green);background:var(--green-soft)}.contract-simple-file.has-file .contract-file-button{background:var(--ink)}
html.dark-mode .contract-simple-note{background:#19352c}html.dark-mode .contract-simple-field{background:#151a22;border-color:#303a46}html.dark-mode .contract-simple-file{background:#17283a;border-color:#376d5b}
@media(max-width:680px){.contract-simple-note{padding:12px}.contract-simple-field{padding:13px;grid-template-columns:40px minmax(0,1fr)}.contract-simple-number{width:40px;height:40px}.contract-simple-field select{min-height:60px}.contract-simple-file{min-height:126px}}

/* Versión 2.3.2: administración sencilla de avisos */
.notification-actions{flex-wrap:wrap}.notification-clear-button{white-space:nowrap}.notification-actions form[data-confirm]{margin-left:auto}
@media(max-width:680px){.notification-actions form[data-confirm]{margin-left:0}.notification-clear-button{white-space:normal}}

/* RentOS 3.2 — capacidades SaaS usando el lenguaje visual original */
.form-section-title{display:flex!important;flex-direction:row!important;align-items:center;gap:12px;margin:8px 0 0;padding:15px 16px;border-radius:17px;background:var(--green-soft);color:var(--text)}.form-section-title>i{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--green);color:#fff}.form-section-title>span{display:flex;flex-direction:column;gap:3px}.form-section-title small{color:var(--muted);font-size:.76rem}
.pending-money{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.pending-money>span{display:flex;flex-direction:column;gap:2px;padding:10px;border-radius:13px;background:var(--field)}.pending-money small{color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.pending-money strong{font-size:.9rem}.pending-money .balance{background:var(--amber-soft)}
.finance-extra-grid{margin-top:22px}.finance-extra-grid .section-title{align-items:flex-start}.debt-row{grid-template-columns:44px minmax(0,1fr) auto auto}.notes-list .simple-row{grid-template-columns:44px minmax(0,1fr) auto}.empty.compact{min-height:150px;padding:25px}.danger-text{color:var(--red)!important}.message-preview{display:block;max-width:380px;line-height:1.4}.contract-expiry{display:flex!important;align-items:center;gap:5px;margin-top:5px;color:#a26200;font-weight:800}.contract-extra-fields{grid-column:1/-1;padding:0!important;overflow:visible!important}.contract-extra-fields label{display:flex;flex-direction:column;gap:7px}
.role-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0 24px 8px}.role-guide>span{display:flex;flex-direction:column;gap:4px;padding:12px 13px;border-radius:14px;background:var(--field)}.role-guide small{color:var(--muted);line-height:1.4}.role-guide-wide{grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 16px}.permission-users{display:flex;flex-direction:column;gap:10px}.permission-person{border:1px solid var(--line);border-radius:17px;background:var(--surface);overflow:hidden}.permission-person>summary{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 14px;cursor:pointer;list-style:none}.permission-person>summary::-webkit-details-marker{display:none}.permission-person>summary>span:nth-child(2){display:flex;flex-direction:column}.permission-person>summary small{color:var(--muted)}.permission-person form{padding:0 14px 14px}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:5px 0 12px}.permission-grid label{display:grid;grid-template-columns:minmax(0,1fr) 160px;align-items:center;gap:8px;padding:9px 11px;border-radius:12px;background:var(--field)}.permission-grid label>span{font-size:.8rem}.permission-grid select{min-height:42px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:0 9px;color:var(--text)}
.license-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}.license-grid>span{display:flex;flex-direction:column;gap:3px;padding:12px;border-radius:14px;background:var(--field)}.license-grid small{color:var(--muted);font-size:.72rem}.license-grid strong{font-size:.92rem}.whatsapp-settings-layout{align-items:start}.status.pending,.status.processing{background:var(--amber-soft);color:#8a5b00}.status.sent{background:var(--green-soft);color:var(--green-2)}.status.failed,.status.cancelled{background:var(--red-soft);color:var(--red)}
.superadmin-company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.superadmin-company-card{position:relative}.superadmin-company-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.superadmin-company-head h3{margin:0}.superadmin-company-head p{margin:4px 0 0;color:var(--muted)}.company-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.company-metrics span{display:flex;flex-direction:column;gap:2px;padding:10px;border-radius:13px;background:var(--field)}.company-metrics small{color:var(--muted);font-size:.68rem}.company-actions{display:flex;gap:8px;flex-wrap:wrap}.platform-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:12px;background:var(--ink);color:#fff;font-size:.75rem;font-weight:850}.audit-action{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem}.settings-card details.company-editor{margin-top:10px}.settings-card details.company-editor>summary{cursor:pointer;color:var(--green-2);font-weight:850}.settings-card details.company-editor>.form-grid{margin-top:13px}
html.dark-mode .form-section-title,html.dark-mode .pending-money>span,html.dark-mode .role-guide>span,html.dark-mode .permission-grid label,html.dark-mode .license-grid>span,html.dark-mode .company-metrics span{background:#202832}.html-dark-placeholder{display:none}
@media(max-width:1000px){.role-guide-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-grid{grid-template-columns:1fr}.superadmin-company-grid{grid-template-columns:1fr}}
@media(max-width:680px){.pending-money{grid-template-columns:1fr 1fr}.pending-money .balance{grid-column:1/-1}.debt-row,.notes-list .simple-row{grid-template-columns:40px minmax(0,1fr)}.debt-row .row-amount,.debt-row .record-action,.notes-list .row-amount{grid-column:2}.role-guide,.role-guide-wide{grid-template-columns:1fr;margin-left:0;margin-right:0}.permission-person form{padding:0 10px 12px}.permission-grid label{grid-template-columns:1fr}.permission-grid select{width:100%}.license-grid{grid-template-columns:1fr 1fr}.company-metrics{grid-template-columns:1fr 1fr}.superadmin-company-grid{grid-template-columns:1fr}}


/* RentOS 3.3 · permisos visibles sin romper la identidad original */
.side-nav a .nav-copy{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.side-nav a .nav-lock{margin-left:auto;width:26px;height:26px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.09);color:rgba(255,255,255,.58);font-size:.7rem;flex:0 0 26px}
.side-nav a.nav-locked{color:rgba(255,255,255,.52)}
.side-nav a.nav-locked .nav-icon{color:rgba(255,255,255,.62)}
.side-nav a.nav-locked:hover{color:#fff}
.side-nav a.nav-locked.active{background:#fff;color:var(--ink)}
.side-nav a.nav-locked.active .nav-lock{background:#eceef0;color:var(--ink)}
.side-nav a.nav-locked.active .nav-icon{background:var(--night-blue);color:#fff}
.restricted-module{min-height:calc(100vh - 230px);background:#fff;border:1px solid var(--soft-line);border-radius:25px 45px 25px 25px;display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);align-items:center;gap:56px;padding:clamp(34px,6vw,78px);overflow:hidden;position:relative}
.restricted-module:after{content:"";position:absolute;right:-80px;bottom:-110px;width:260px;height:260px;border-radius:50%;background:var(--night-blue);opacity:.055;pointer-events:none}
.restricted-art{position:relative;min-height:300px;display:grid;place-items:center}
.restricted-icon{width:138px;height:138px;border-radius:38px;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:3rem;box-shadow:0 24px 60px rgba(23,28,26,.18);position:relative;z-index:2}
.restricted-orbit{position:absolute;border-radius:50%;background:var(--night-blue)}
.restricted-orbit.orbit-one{width:88px;height:88px;left:12%;top:14%;opacity:.92}
.restricted-orbit.orbit-two{width:48px;height:48px;right:12%;bottom:18%;opacity:.7}
.restricted-copy{position:relative;z-index:2;max-width:650px}
.restricted-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:var(--ink);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.02em;margin-bottom:18px}
.restricted-copy h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1.02;letter-spacing:-.035em;margin:0 0 16px;color:var(--ink);max-width:650px}
.restricted-copy>p{font-size:1rem;color:#6f7773;line-height:1.7;margin:0 0 24px;max-width:60ch}
.restricted-note{display:flex;align-items:flex-start;gap:12px;background:var(--paper-soft);border-radius:17px;padding:15px 17px;color:#606864;font-size:.86rem;line-height:1.55;margin-bottom:22px;max-width:620px}
.restricted-note>i{margin-top:3px;color:var(--night-blue)}
.restricted-home{width:max-content}
@media(min-width:1200px){.sidebar{width:300px}.main{margin-left:300px}.content{max-width:1280px}.topbar{padding-left:max(34px,calc((100vw - 300px - 1280px)/2 + 34px));padding-right:max(34px,calc((100vw - 300px - 1280px)/2 + 34px))}.sidebar-user strong{font-size:.9rem}.sidebar-user small{font-size:.74rem}.side-nav a{padding-right:11px}}
@media(max-width:900px){.restricted-module{min-height:calc(100vh - 250px);grid-template-columns:1fr;gap:8px;padding:34px 24px;text-align:left}.restricted-art{min-height:190px;justify-items:start}.restricted-icon{width:104px;height:104px;border-radius:30px;font-size:2.25rem}.restricted-orbit.orbit-one{width:64px;height:64px;left:130px;top:10px}.restricted-orbit.orbit-two{width:36px;height:36px;right:auto;left:210px;bottom:24px}.restricted-copy h2{font-size:2rem}.restricted-home{width:100%}}

.bottom-nav a.nav-locked{color:rgba(255,255,255,.42)}
.bottom-nav a>span{position:relative}
.bottom-lock{position:absolute;right:-4px;top:-4px;width:15px;height:15px;border-radius:50%;background:#fff;color:var(--ink);display:grid;place-items:center;font-size:.45rem;box-shadow:0 2px 7px rgba(0,0,0,.18)}
.bottom-nav a.nav-locked.active{color:#fff}
