:root{--background:#dce5ee;--line:#9bafbe;--shadow:0 5px 17px #243e4f20;--corporate-primary:#135847;--corporate-ink:#fff;--corporate-secondary:#254955;--corporate-secondary-ink:#fff}
body{background:var(--background)}.content{background:var(--background);padding:22px 26px}.panel,.dashboard-panel,.crm-detail,.crm-directory,.identity-card{border:1px solid #9bafbe;box-shadow:var(--shadow);background:#fff}.crm-layout{gap:22px}.crm-detail{border-radius:15px}.crm-tabs,.tabs{background:#cbd8e2;border-color:#9caebc;padding:7px;gap:6px}.crm-tabs button.active,.tabs button.active{background:var(--corporate-primary);color:var(--corporate-ink);box-shadow:0 3px 7px #162e3a30;font-weight:750}.crm-tabs button:not(.active),.tabs button:not(.active){color:#28414d}.crm-profile,.corporate-band{background:var(--corporate-primary);color:var(--corporate-ink)}.crm-profile h2,.crm-profile .crm-tags,.crm-profile .contact-line,.crm-profile a{color:var(--corporate-ink)}.panel-head{background:#e0e8ee;border-bottom:1px solid #9bafbe}.client-metrics{background:#eef3f7;border-bottom:1px solid #a4b7c4}.lot-card{border:1.5px solid #9bafbe;box-shadow:0 4px 12px #233d5012;background:#fff}.lot-card header{gap:10px;align-items:start}.lot-card-grid{gap:18px}.lot-card.commercial-card-paid,.lot-card.commercial-card-sold{border-top:5px solid #D71920}.lot-card.commercial-card-credit{border-top:5px solid #FF9800}.lot-card.commercial-card-available{border-top:5px solid #159447}.commercial-badge,.lot-status{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 12px;border:1px solid #0002;border-radius:7px;font-size:20px;font-weight:750;line-height:1.15;letter-spacing:.1px;text-align:center;white-space:normal}.commercial-paid,.commercial-sold,.lot-status.sold{background:#D71920!important;color:#fff!important}.commercial-available,.lot-status.available{background:#159447!important;color:#fff!important}.commercial-credit{background:#FF9800!important;color:#111!important}.commercial-reserved,.lot-status.reserved{background:#ffc23c!important;color:#111!important}.commercial-equipment,.commercial-unknown,.commercial-cancelled{background:#5d6870!important;color:#fff!important}.lot-card header .commercial-badge{font-size:18px}.payment-status-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0}.payment-status-label{font-size:12px;color:#536977}.payment-clear{color:#324e5c;font-size:13px;font-weight:650}.paid-note{background:#fff;border:1px solid #b4c2cc;color:#304e5b}.status-overdue{background:#D71920;color:#fff;border:1px solid #9b0d13}.status-current{background:#176b43;color:#fff;border-color:#176b43}.status-upcoming{background:#ffcf3d;color:#352700;border-color:#c99f20}.status-review{background:#566975;color:#fff;border-color:#566975}.status-paid{background:#566975;color:#fff;border-color:#566975}
.debt-alert{display:flex;align-items:center;gap:14px;background:#fff;border:2px solid #D71920;border-left:7px solid #D71920;border-radius:10px;padding:15px;color:#921017;box-shadow:0 3px 10px #ad102012}.debt-alert strong{display:block;color:#a11017;font-size:17px}.debt-alert p{color:#343f47;margin:5px 0;font-size:14px}.debt-alert .alert-triangle{width:45px;height:45px;flex:none;color:#D71920;animation:alert-breathe 2.6s ease-in-out infinite}.debt-alert .debt-action{margin-left:auto;background:#D71920;color:#fff;border-color:#a11017;font-size:13px;white-space:normal;flex-shrink:0}.debt-alert .debt-total{font-weight:750;font-size:16px}.client-debt-alert{margin:17px 22px}.lot-card .debt-alert{flex-wrap:wrap;margin:8px 0}.lot-card .debt-alert .debt-action{margin:0}.lot-card .debt-alert .alert-details{flex:1;min-width:150px}.collection-stat.is-red{background:#D71920;border-color:#a10e16;color:#fff}.collection-stat.is-red strong,.collection-stat.is-red .ui-icon{color:#fff}.debt-alert small{display:block;color:#52616b}.collection-summary-alert{margin:14px 0 20px}.report-link-row{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}.report-link-row a{font-size:13px}.fin-selector{padding:16px;background:#fff;border:1px solid #9bafbe;border-radius:12px;box-shadow:var(--shadow)}.fin-stats>div{background:#fff;border:1px solid #9bafbe;box-shadow:var(--shadow)}
dialog.crm-dialog,dialog.fin-dialog,dialog.lot-dialog,#modal{border:1px solid #7895a7;border-radius:16px;box-shadow:0 24px 70px #092a4060;padding:0;background:#fff}dialog::backdrop{background:#152b3d70}dialog>.collection-body,dialog>.fin-dialog-body{padding:22px}.dialog-heading,.close-row,dialog .fin-heading{background:var(--corporate-primary);color:var(--corporate-ink);padding:18px 22px;border-radius:14px 14px 0 0;margin:0}dialog .dialog-heading h2,dialog .close-row h2,dialog .fin-heading h2{color:var(--corporate-ink);margin:0;font-size:21px}.dialog-heading button,.close-row button{background:#fff;color:#213f4a;border-color:#fff}.crm-dialog>div,.lot-dialog>div,#modal-content,.fin-dialog>div:not(.dialog-heading):not(.collection-body){padding:22px}.crm-dialog .close-row,.lot-dialog .close-row,#modal-content .close-row{margin:-22px -22px 20px}.fin-form,.crm-form{background:#edf2f6;border:1px solid #a7b9c7;border-radius:10px;padding:18px}.fin-form fieldset,.deposit-part{background:white;border:1.5px solid #95adbb;padding:16px;border-radius:10px}input:not([type=checkbox]):not([type=radio]),select,textarea{border:1.5px solid #7e9aab;background:#fff}label{color:#27414f}.dialog-context,.destination-note{background:#e1eaf0;border:1px solid #819eae;color:#173e4c;padding:14px;border-radius:9px}.form-actions{padding-top:16px;border-top:1px solid #a8bac7}.contract-details{background:#f1f5f8;border:1px solid #9cB1bf}.profile-tools button{color:var(--corporate-ink);border-color:currentColor}
.topbar{position:sticky;top:0;z-index:25;background:#fff;padding:12px 24px;border-bottom:2px solid var(--corporate-primary);box-shadow:0 2px 9px #223a4a18;gap:16px}.tenant-identity{display:flex;gap:14px;align-items:center;min-width:0;flex:1}.tenant-identity img{width:100px;height:57px;object-fit:contain;background:#fff;flex:none}.tenant-identity strong{font-size:20px;color:#153f34;display:block;line-height:1.2}.tenant-identity small{font-size:12px;display:block;color:#536e78;margin-top:5px}.account{flex-wrap:wrap;justify-content:flex-end;font-size:13px}.sidebar .brand{font-size:18px}.sidebar .brand small{font-size:8px;letter-spacing:.7px}.sidebar .brand-mark{width:30px;height:33px}.identity-card{border-radius:14px;overflow:hidden}.corporate-band{padding:20px 25px}.corporate-band h2{color:var(--corporate-ink);margin:4px 0}.corporate-band p{margin:0;font-size:11px;letter-spacing:1px}.identity-body{padding:25px}.identity-form{background:#e9eff4;border:1px solid #9bafbe;padding:22px;border-radius:12px;display:grid;grid-template-columns:220px 1fr;gap:24px}.identity-logo{background:#fff;border:1px solid #adc0cc;padding:18px;border-radius:10px;display:flex;flex-direction:column;gap:15px;align-items:start}.identity-logo img{width:100%;max-height:125px;object-fit:contain}.identity-logo small{font-size:12px}.identity-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.identity-fields input[type=color]{padding:4px;height:45px}.identity-form .form-actions{grid-column:1/-1}.identity-form input[type=file]{max-width:100%;font-size:12px}.crm-profile .profile-tools .report-link{color:var(--corporate-ink);font-size:12px;text-decoration:underline}.back-client{margin:0 0 14px}.lot-state-key{display:flex;flex-wrap:wrap;gap:12px;margin:10px 0 18px;font-size:13px}.lot-state-key span{display:flex;gap:5px;align-items:center}.lot-state-key i{width:16px;height:16px;border-radius:4px;background:#159447}.lot-state-key .sold{background:#D71920}.lot-state-key .reserved{background:#ffc23c}.lot-state-key .equipment{background:#5d6870}
@keyframes alert-breathe{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.94)}}
@media(prefers-reduced-motion:reduce){.debt-alert .alert-triangle{animation:none}}
@media(max-width:1050px){.topbar{position:static}.content{padding:17px}.tenant-identity img{width:78px;height:48px}.tenant-identity strong{font-size:18px}.identity-form{grid-template-columns:180px 1fr}.account{font-size:12px}.account .avatar{display:none}}
@media(max-width:680px){.content{padding:12px}.topbar{padding:12px;gap:10px}.tenant-identity{width:100%;flex-basis:100%}.tenant-identity img{width:78px;height:46px}.account{width:100%;justify-content:flex-end}.account>span:not(.avatar){margin-right:auto}.identity-body{padding:15px}.identity-form{grid-template-columns:1fr;padding:14px}.identity-logo{max-width:100%;flex-direction:column}.identity-logo img{max-width:180px;align-self:center}.identity-fields{grid-template-columns:1fr}.commercial-badge,.lot-status{font-size:18px}.debt-alert{align-items:flex-start;flex-wrap:wrap;padding:12px;gap:10px}.debt-alert .alert-details{flex:1;min-width:170px}.debt-alert .debt-action{width:100%;margin:0}.client-debt-alert{margin:12px}.debt-alert .alert-triangle{width:36px;height:36px}.crm-profile{padding:16px}.crm-profile h2{font-size:21px}.crm-dialog>div,.lot-dialog>div,#modal-content,.fin-dialog>div:not(.dialog-heading):not(.collection-body){padding:15px}.crm-dialog .close-row,.lot-dialog .close-row,#modal-content .close-row{margin:-15px -15px 16px}.fin-form,.crm-form{padding:13px}.form-actions{flex-wrap:wrap}}
@media print{.debt-alert .alert-triangle{animation:none!important}.topbar,.sidebar,nav,button,.form-actions{display:none!important}.debt-alert{break-inside:avoid;print-color-adjust:exact}.commercial-badge{print-color-adjust:exact}}

/* Contexto compacto visible también al desplazarse en móvil. */
.tenant-stack{flex:1;min-width:0}.record-context{font-size:12px;font-weight:700;color:#344f5c;margin-top:4px;line-height:1.35;overflow-wrap:anywhere}.record-context:empty{display:none}.lot-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lot-card{min-width:0}
@media(max-width:1050px){.topbar{position:sticky;top:0}.tenant-stack{flex:1}}
@media(max-width:680px){.topbar{padding:8px 12px;gap:6px}.tenant-stack{flex-basis:100%}.tenant-identity img{height:34px;width:72px}.tenant-identity small{display:none}.tenant-identity strong{font-size:16px}.account{gap:6px}.account>span{display:none}.account button{padding:5px 9px;font-size:12px}.record-context{font-size:11px}.lot-card-grid{grid-template-columns:1fr}}
