/* CRM INMOBILIARIO 2026 · panel admin */
*{margin:0;padding:0;box-sizing:border-box}
:root{--gold:#B6844F;--dark:#25313F;--bg:#f4f2ee;--line:#e2ddd4;--ink:#222b35;
  --ok:#2e8b57;--warn:#c9862c;--bad:#9d4343}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.awrap{max-width:1180px;margin:0 auto;padding:0 18px}

.abar{background:var(--dark);color:#fff}
.abar-in{display:flex;justify-content:space-between;align-items:center;height:58px}
.alogo{font-size:1.05rem;letter-spacing:.03em}
.alogo b{color:var(--gold)}
.auser{display:flex;gap:16px;align-items:center;font-size:.9rem}
.aout{opacity:.7}
.aout:hover{opacity:1;color:var(--gold)}

.amain{padding:26px 18px 60px}
.atitle{font-size:1.5rem;font-weight:700;margin:6px 0 4px}
.asub{color:#69737e;font-size:.92rem}
.acrumb{font-size:.85rem;color:#69737e}
.acrumb:hover{color:var(--gold)}
.ahead{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.ahead-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

.flash{background:#e2f2e8;color:var(--ok);padding:12px 16px;border-radius:6px;margin-bottom:16px;font-weight:600;font-size:.92rem}
.flash-error{background:#f7e2e2;color:var(--bad)}

.abtn{display:inline-block;background:#fff;border:1px solid var(--line);padding:9px 16px;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit}
.abtn:hover{border-color:var(--gold);color:var(--gold)}
.abtn-gold{background:var(--gold);border-color:var(--gold);color:#fff}
.abtn-gold:hover{color:#fff;filter:brightness(1.08)}
.abtn-block{display:block;width:100%;text-align:center}

.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;transition:all .15s;display:block}
.card:hover{border-color:var(--gold);box-shadow:0 4px 16px rgba(0,0,0,.06);transform:translateY(-2px)}
.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.card h2{font-size:1.15rem}
.card-sub{color:#69737e;font-size:.88rem;margin:2px 0 14px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.kpis div{text-align:center;background:var(--bg);border-radius:6px;padding:10px 4px}
.kpis strong{display:block;font-size:1.15rem;color:var(--dark)}
.kpis span{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:#69737e}

.apill{display:inline-block;padding:3px 11px;border-radius:99px;font-size:.72rem;font-weight:700;letter-spacing:.04em;background:#e6f0e9;color:var(--ok);white-space:nowrap}
.apill-proximamente{background:#e8ecf5;color:#4a5f8a}
.apill-ultimas_unidades{background:#f7ead2;color:var(--warn)}
.apill-vendida,.apill-entregada{background:#ececec;color:#7a828c}

.apanel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px;margin-bottom:20px}
.apanel h2{font-size:1.05rem;margin-bottom:14px}
.apanel h2 small{font-weight:400;color:#8a93a0;font-size:.82rem}
.atable-wrap{overflow-x:auto}
.atable{width:100%;border-collapse:collapse;font-size:.9rem;min-width:640px}
.atable th{text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:#8a93a0;padding:8px 10px;border-bottom:2px solid var(--line)}
.atable td{padding:10px;border-bottom:1px solid var(--line);vertical-align:middle}
.aref{font-weight:700}
.amuted{color:#8a93a0;font-size:.84rem}

.ainput,.aselect{padding:8px 10px;border:1px solid var(--line);border-radius:6px;font-size:.9rem;font-family:inherit;background:#fdfcfa;max-width:150px}
.ainput:focus,.aselect:focus{outline:2px solid var(--gold);border-color:transparent}
.price-input{max-width:110px;font-weight:700;text-align:right}
.lead-notes{max-width:190px}
.status-select{font-weight:600}
.status-select.st-disponible{color:var(--ok)}
.status-select.st-reservada{color:var(--warn)}
.status-select.st-vendida{color:#7a828c}
.status-select.st-bloqueada{color:var(--bad)}
.save-note{min-height:20px;font-size:.88rem;font-weight:600;margin-top:8px}
.save-note.ok{color:var(--ok)}
.save-note.error{color:var(--bad)}

.snippet{background:var(--dark);color:#d8e0ea;border-radius:8px;padding:16px;font-size:.85rem;overflow-x:auto;margin-bottom:12px;line-height:1.7}
.upload-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

.edit-form{background:#fff;border:1px solid var(--line);border-radius:10px;padding:24px;max-width:820px}
.edit-form label{display:block;font-size:.85rem;font-weight:600;margin-bottom:14px}
.edit-form input,.edit-form select,.edit-form textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:6px;font-size:.93rem;margin-top:5px;font-family:inherit;background:#fdfcfa}
.edit-form input:focus,.edit-form select:focus,.edit-form textarea:focus{outline:2px solid var(--gold);border-color:transparent}
.agrid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:600px){.agrid2{grid-template-columns:1fr}}

.login-body{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--dark),#31404f)}
.login-card{background:#fff;border-radius:12px;padding:38px;width:100%;max-width:400px;margin:18px}
.login-card h1{font-size:1.5rem;text-align:center}
.login-card h1 b{color:var(--gold)}
.login-sub{text-align:center;color:#8a93a0;font-size:.9rem;margin:4px 0 22px}
.login-card label{display:block;font-size:.85rem;font-weight:600;margin-bottom:14px}
.login-card input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:6px;font-size:.95rem;margin-top:5px;font-family:inherit}
.login-card input:focus{outline:2px solid var(--gold);border-color:transparent}
