:root{
  --navy:#0E2A47;--navy2:#143a5e;--green:#1FBE85;--green-d:#0a7a50;
  --ink:#0E2A47;--muted:#5a6c81;--bg:#f4f7fb;--card:#fff;--line:#e4ecf3;
  --red:#d23f3f;--red-bg:#fdeeee;--yellow:#c77f12;--yellow-bg:#fdf6e7;--green-bg:#e9f9f2;
  --shadow:0 1px 3px rgba(14,42,71,.07),0 6px 24px rgba(14,42,71,.06);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:var(--green-d);text-decoration:none}
h1,h2,h3{color:var(--navy);line-height:1.2}
img{max-width:100%}

/* nav */
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.brand img{height:42px;display:block}
.nav-right{display:flex;align-items:center;gap:14px}
.lnk{color:var(--navy);font-weight:600}
.nav-corr{justify-content:space-between}
.brand-corr{display:flex;flex-direction:column}
.brand-corr strong{color:var(--navy);font-size:18px}
.brand-corr span{color:var(--muted);font-size:13px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;border-radius:11px;font-weight:700;font-size:15px;border:0;cursor:pointer;transition:.15s;font-family:inherit}
.btn-green{background:#08855a;color:#fff}
.btn-green:hover{background:var(--green-d)}
.btn-ghost{background:#fff;color:var(--navy);border:1.5px solid var(--line)}
.btn-ghost:hover{border-color:var(--green)}
.btn-navy{background:var(--navy);color:#fff}
.btn-lg{padding:14px 28px;font-size:17px}
.btn-block{width:100%;margin-top:8px}
.btn-sm{padding:7px 13px;font-size:13px;border-radius:9px}
.btn-danger{background:var(--red-bg);color:var(--red)}

/* hero */
main{max-width:1080px;margin:0 auto;padding:0 20px}
.hero{text-align:center;padding:56px 0 40px}
.hero-logo{height:118px;margin-bottom:10px}
.hero-tagline{font-size:20px;color:var(--navy);margin:0 0 26px;letter-spacing:.3px}
.hero-tagline b{color:var(--green-d)}
.hero h1{font-size:38px;max-width:760px;margin:0 auto 18px}
.lead{font-size:19px;color:#3c5066;max-width:680px;margin:0 auto 26px}
.cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.muted{color:var(--muted)}
.center{text-align:center}
.hero .muted{margin-top:14px;font-size:14px}

.how{padding:34px 0}
.how h2,.why h2,.final h2{text-align:center;font-size:28px;margin-bottom:26px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:var(--shadow)}
.step .n{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;background:var(--green-bg);color:var(--green-d);font-weight:800;border-radius:50%;margin-bottom:12px}
.step h3{font-size:18px;margin:0 0 6px}
.step p{margin:0;color:#4a5d72;font-size:15px}
.why{padding:24px 0 10px}
.why-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.why-grid li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column}
.why-grid b{color:var(--navy);font-size:16px;margin-bottom:4px}
.why-grid span{color:#4a5d72;font-size:14px}
.final{text-align:center;padding:44px 0 56px}

.ft{text-align:center;padding:26px;color:var(--muted);font-size:14px;border-top:1px solid var(--line);margin-top:30px}
.ft-pwr a{font-weight:700}

/* auth */
.auth-wrap{display:flex;justify-content:center;padding:42px 20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.auth-card{width:100%;max-width:410px;padding:30px}
.auth-logo{height:54px;display:block;margin:0 auto 16px}
.auth-card h1{text-align:center;font-size:24px;margin:0 0 18px}
form label{display:block;font-weight:600;font-size:14px;color:var(--navy);margin-bottom:13px}
.opt{color:var(--muted);font-weight:400}
form input,form select,form textarea{width:100%;margin-top:5px;padding:11px 13px;border:1.5px solid var(--line);border-radius:10px;font-size:15px;font-family:inherit;background:#fff}
form input:focus,form select:focus,form textarea:focus{outline:0;border-color:var(--green)}
.err{color:var(--red);font-size:14px;margin-top:8px;min-height:1px}
.muted.center{margin-top:16px;font-size:14px}

/* corretor page */
.corr{padding:24px 20px 40px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.grid-alt{margin-top:14px}
.pc{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);display:block;color:inherit;transition:.15s}
.pc:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(14,42,71,.12)}
.pc-img{height:150px;background-size:cover;background-position:center;background-color:#dde8f0}
.pc-noimg{display:flex;align-items:center;justify-content:center;font-size:42px;color:#9db4c7}
.pc-body{padding:14px 16px}
.pc-top{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);margin-bottom:6px}
.pc-tipo{font-weight:700;color:var(--navy)}
.pc-price{font-size:21px;font-weight:800;color:var(--navy)}
.pc-price span{font-size:13px;font-weight:500;color:var(--muted)}
.pc-entrada{font-size:13px;color:var(--green-d);font-weight:700;margin-top:2px}
.pc-badges{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.pc-badges span{background:#eef3f8;color:#4a5d72;font-size:12px;padding:3px 9px;border-radius:20px}
.pc-cta{color:var(--green-d);font-weight:700;font-size:14px;margin-top:4px}
.empty{text-align:center;color:var(--muted);padding:60px 0}

/* detail + funnel */
.detail{padding:22px 20px 40px}
.dgrid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.d-img{height:230px;border-radius:16px;background-size:cover;background-position:center;background-color:#dde8f0;margin-bottom:16px}
.detail h1{font-size:26px;margin:0 0 6px}
.d-price{font-size:26px;font-weight:800;color:var(--navy)}
.d-price span{font-size:15px;color:var(--muted);font-weight:500}
.d-desc{color:#4a5d72}
.d-attrs{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.d-attrs span{background:#eef3f8;color:#3c5066;font-size:13px;padding:5px 11px;border-radius:20px}
.entrada-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-top:14px}
.entrada-box h2{margin:0 0 12px;font-size:18px}
.el{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed var(--line);font-size:14px}
.el i{font-style:normal;font-size:11px;padding:1px 7px;border-radius:10px;margin-left:6px}
.el i.ok,.ok{color:var(--green-d)}.el i.ok{background:var(--green-bg)}
.el i.no,.no{color:#a82323}.el i.no{background:var(--red-bg)}
.el-sum{display:flex;justify-content:space-between;padding-top:10px;font-weight:700;font-size:14px}

.funnel{padding:24px}
.funnel h2{font-size:20px;margin:0 0 4px}
.unavail{padding:20px 22px;background:var(--yellow-bg);border-color:#f1dca6;margin-bottom:14px}
.unavail h2{font-size:18px;margin:0 0 6px}
.f-q{font-size:18px;font-weight:700;color:var(--navy);margin:14px 0 14px}
.f-hint{display:block;font-size:13px;font-weight:500;color:var(--muted);margin-top:5px}
.f-q2{font-size:17px;font-weight:700;color:var(--navy);margin:14px 0}
.f-l{display:block;font-weight:600;margin-bottom:12px}
.f-l input{width:100%;margin-top:5px;padding:11px 13px;border:1.5px solid var(--line);border-radius:10px;font-size:16px;font-family:inherit}
.f-l input:focus{outline:0;border-color:var(--green)}
.opts{display:flex;flex-direction:column;gap:10px}
.opt-btn{text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:14px 16px;font-size:16px;font-weight:600;color:var(--navy);cursor:pointer;font-family:inherit;transition:.12s;display:flex;flex-direction:column}
.opt-btn:hover{border-color:var(--green);background:var(--green-bg)}
.opt-btn small{font-weight:400;color:var(--muted);font-size:13px;margin-top:2px}
.f-progress{margin-top:16px;color:var(--muted);font-size:13px;text-align:center}
.f-back{display:inline-block;margin-bottom:10px;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;text-decoration:none}
.f-back:hover{color:var(--navy)}
.f-entrada{display:flex;gap:10px;margin:6px 0}
.f-entrada div{flex:1;background:#f4f7fb;border-radius:10px;padding:10px;text-align:center;font-size:13px}
.f-entrada b{display:block;font-size:16px;margin-top:2px}
.f-loading{padding:30px;text-align:center;color:var(--muted)}

/* result */
.result{text-align:center;padding:10px 4px}
.r-ico{font-size:46px;margin-bottom:6px}
.result h2{font-size:22px;margin:0 0 6px}
.r-verde h2{color:var(--green-d)}.r-amarillo h2{color:var(--yellow)}
.f-alt{background:var(--green-bg);color:var(--green-d);font-weight:700;border-radius:10px;padding:12px 14px;margin:10px 0;text-align:left}
.motivos{list-style:none;padding:0;margin:14px 0;text-align:left}
.motivos li{padding:7px 0;border-bottom:1px solid var(--line);font-size:15px}
.mok{color:#2f6b54}.msoft{color:#a07418}.mno{color:#a85151}

/* panel */
.p-head{display:flex;align-items:center;justify-content:space-between;padding:12px 22px;background:var(--navy);color:#fff}
.p-head img{height:38px}
.p-head .r{display:flex;align-items:center;gap:14px}
.p-head .r span{font-size:14px;opacity:.85}
.p-head a,.p-head button{color:#fff;font-size:14px;background:transparent;border:0;cursor:pointer;font-family:inherit;font-weight:600}
.tabs{display:flex;gap:6px;padding:14px 22px 0;max-width:1080px;margin:0 auto}
.tab{padding:10px 18px;border-radius:11px 11px 0 0;font-weight:700;cursor:pointer;color:var(--muted);background:transparent;border:0;font-family:inherit;font-size:15px}
.tab.active{background:#fff;color:var(--navy);box-shadow:0 -2px 8px rgba(14,42,71,.05)}
.p-main{max-width:1080px;margin:0 auto;padding:18px 22px 50px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow)}
.stat b{display:block;font-size:26px;color:var(--navy)}
.stat span{color:var(--muted);font-size:13px}
.stat.hl b{color:var(--green-d)}
.lead-card{background:#fff;border:1px solid var(--line);border-left-width:5px;border-radius:12px;padding:14px 16px;margin-bottom:12px;box-shadow:var(--shadow)}
.lead-card.verde{border-left-color:var(--green)}
.lead-card.amarillo{border-left-color:var(--yellow)}
.lead-card.rojo{border-left-color:var(--red)}
.lc-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.lc-name{font-weight:800;font-size:16px;color:var(--navy)}
.lc-prop{color:var(--muted);font-size:13px}
.pill{font-size:12px;font-weight:800;padding:3px 11px;border-radius:20px}
.pill.verde{background:var(--green-bg);color:var(--green-d)}
.pill.amarillo{background:var(--yellow-bg);color:#8a5300}
.pill.rojo{background:var(--red-bg);color:#a82323}
.lc-motivos{list-style:none;padding:0;margin:10px 0 0;font-size:14px}
.lc-motivos li{padding:2px 0}
.lc-alt{background:var(--green-bg);color:var(--green-d);font-weight:600;border-radius:8px;padding:8px 11px;margin-top:8px;font-size:14px}
.lc-actions{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}

.prop-row{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:12px;display:flex;justify-content:space-between;gap:14px;align-items:center;box-shadow:var(--shadow);flex-wrap:wrap}
.pr-info b{color:var(--navy);font-size:16px}
.pr-info div{color:var(--muted);font-size:13px;margin-top:2px}
.pr-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pr-status{padding:7px 10px;border:1.5px solid var(--line);border-radius:9px;font-family:inherit;font-weight:600}
.modal-bg{position:fixed;inset:0;background:rgba(14,42,71,.5);display:flex;align-items:flex-start;justify-content:center;padding:30px 16px;overflow:auto;z-index:50}
.modal{background:#fff;border-radius:18px;width:100%;max-width:560px;padding:26px}
.modal h2{margin:0 0 16px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:6px 0 4px}
.tg{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--navy);background:#f4f7fb;padding:9px 11px;border-radius:9px;cursor:pointer}
.tg input{width:auto;margin:0}
.entrada-preview{background:var(--green-bg);border-radius:11px;padding:12px 14px;margin:8px 0;font-size:14px}
.entrada-preview b{font-size:18px;color:var(--navy)}
.ep-lines{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}
.ep-line{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--ink)}
.ep-line em{font-style:normal;font-size:11px;font-weight:700;padding:1px 6px;border-radius:999px}
.ep-back{color:var(--green-d);background:#fff}
.ep-keep{color:var(--muted);background:#fff}
.ep-tot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(0,0,0,.08);padding-top:7px}
.ep-sub{display:flex;justify-content:space-between;font-size:12.5px;color:var(--muted);margin-top:4px}
.ep-sub b.ep-back{font-size:13px}
.ep-doble{border-top:1px dashed rgba(0,0,0,.12);padding-top:5px}
.share-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:var(--shadow);max-width:560px}
.share-link{display:flex;gap:8px;margin:12px 0}
.share-link input{flex:1;padding:11px;border:1.5px solid var(--line);border-radius:10px;font-size:14px;font-family:inherit}
.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.section-title h2{font-size:20px;margin:0}

@media(max-width:780px){
  .steps,.why-grid,.dgrid,.frow{grid-template-columns:1fr}
  .stats{grid-template-columns:repeat(2,1fr)}
  .hero h1{font-size:29px}.lead{font-size:17px}
}

/* ===== landing v2 (Sexy Canvas) ===== */
.lp section{padding:46px 0}
.lp .hero{padding:44px 0 28px}
.lp .hero-logo{height:84px;margin-bottom:14px}
.eyebrow{display:inline-block;background:var(--green-bg);color:var(--green-d);font-weight:700;font-size:14px;padding:6px 15px;border-radius:30px;margin:0 0 16px}
.lp .hero h1{font-size:47px;line-height:1.08;max-width:840px;margin:0 auto 18px}
.hl{color:var(--green-d)}
.lp .lead{font-size:20px}

.pain{background:#fff;border:1px solid var(--line);border-radius:22px;padding:38px 30px!important;box-shadow:var(--shadow)}
.pain h2{text-align:center;font-size:27px;margin:0 0 28px}
.pain-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:32px;align-items:center}
.wa{background:#ece5dd;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:8px}
.wa-head{font-size:12px;color:#4a5862;text-align:center;margin-bottom:4px;font-weight:600}
.wb{background:#fff;align-self:flex-start;max-width:86%;padding:8px 12px;border-radius:10px;font-size:14px;box-shadow:0 1px 1px rgba(0,0,0,.07)}
.wa-you{background:#d9fdd3;align-self:flex-end}
.wa-gone{background:transparent;box-shadow:none;align-self:center;color:#566472;font-style:italic;font-size:12px}
.pain-list{list-style:none;padding:0;margin:0}
.pain-list li{padding:13px 0 13px 30px;position:relative;font-size:17px;color:#33485c;border-bottom:1px solid var(--line)}
.pain-list li:last-child{border-bottom:0}
.pain-list li:before{content:"✕";position:absolute;left:0;color:var(--red);font-weight:800}

.shift{text-align:center}
.shift h2{font-size:32px;margin:0 0 10px}
.shift-sub{font-size:19px;color:#4a5d72;max-width:640px;margin:0 auto}

.demo-strip h2{text-align:center;font-size:27px;margin:0 0 6px}
.lead-demos{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.ld{background:#fff;border:1px solid var(--line);border-left-width:5px;border-radius:14px;padding:16px;box-shadow:var(--shadow)}
.ld.verde{border-left-color:var(--green)}.ld.amarillo{border-left-color:var(--yellow)}.ld.rojo{border-left-color:var(--red)}
.ld-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:3px}
.ld-top b{font-size:16px;color:var(--navy)}
.ld-prop{color:var(--muted);font-size:13px;margin-bottom:9px}
.ld ul{list-style:none;padding:0;margin:0;font-size:14px}
.ld li{padding:2px 0}
.ld-alt{background:var(--green-bg);color:var(--green-d);font-weight:600;border-radius:8px;padding:8px 10px;margin-top:9px;font-size:13px}
.ld-soft{color:var(--muted);font-size:13px;margin-top:9px;font-style:italic}

.ba h2{text-align:center;font-size:27px;margin:0 0 24px}
.ba-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ba-col{border-radius:16px;padding:22px 24px}
.ba-before{background:var(--red-bg);border:1px solid #f3d2d2}
.ba-after{background:var(--green-bg);border:1px solid #c3ead9}
.ba-col h3{margin:0 0 12px;font-size:19px}
.ba-before h3{color:#b4504f}.ba-after h3{color:var(--green-d)}
.ba-col ul{list-style:none;padding:0;margin:0}
.ba-col li{padding:8px 0 8px 26px;position:relative;font-size:15px;color:#3c5066}
.ba-before li:before{content:"✕";position:absolute;left:0;color:var(--red);font-weight:800}
.ba-after li:before{content:"✓";position:absolute;left:0;color:var(--green-d);font-weight:800}

.honesty-box{background:var(--navy);color:#fff;border-radius:22px;padding:40px 34px;text-align:center}
.honesty-box h2{color:#fff;font-size:26px;margin:0 0 12px}
.honesty-box p{font-size:18px;color:#d8e3ee;max-width:680px;margin:0 auto;line-height:1.6}
.honesty-box b{color:var(--green)}

.lp .final h2{font-size:35px;margin-bottom:20px}

@media(max-width:780px){
  .lp .hero h1{font-size:31px}
  .pain-grid,.ba-grid,.lead-demos{grid-template-columns:1fr}
  .shift h2,.lp .final h2{font-size:25px}
  .pain h2{font-size:22px}
}

/* ===== landing v3 — impacto visual (match al copy) ===== */
h1,h2,h3{font-family:'Sora',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;letter-spacing:-.02em}
.btn{font-family:'Sora',-apple-system,sans-serif}

.hero{background:radial-gradient(130% 130% at 50% -10%, #1a4570 0%, #0e2a47 52%, #081d33 100%);width:100%;padding:0;margin:0;text-align:center}
.hero-inner{max-width:940px;margin:0 auto;padding:54px 20px 62px;text-align:center}
.hero-inner .hero-logo{height:74px;margin-bottom:18px;display:inline-block}
.hero-inner .eyebrow{background:rgba(255,255,255,.10);color:#a9e6cf;border:1px solid rgba(255,255,255,.14)}
.hero-inner h1{color:#fff;font-size:64px;line-height:1.02;font-weight:800;max-width:900px;margin:0 auto 20px}
.hero-inner .hl{color:var(--green)}
.hero-inner .lead{color:#c9d8e6;font-size:20px;max-width:660px;margin:0 auto 28px}
.hero-inner .lead b{color:#fff}
.btn-hero-ghost{background:rgba(255,255,255,.06);color:#fff;border:1.5px solid rgba(255,255,255,.34)}
.btn-hero-ghost:hover{border-color:var(--green);color:var(--green);background:rgba(31,190,133,.08)}
.hero-trust{color:#8aa0b4;font-size:14px;margin-top:16px}

.pain h2,.shift h2,.how h2,.demo-strip h2,.why h2,.ba h2,.lp .final h2,.honesty-box h2{font-weight:800}
.shift h2{font-size:34px}
.lp .final h2{font-size:38px}
.lp section{padding:52px 0}
.lp .final{padding:56px 0 64px}

@media(max-width:780px){
  .hero-inner h1{font-size:40px}
  .hero-inner{padding:40px 18px 46px}
  .shift h2,.lp .final h2{font-size:26px}
}

/* fotos */
.pc-img{position:relative}
.pc-count{position:absolute;bottom:8px;right:8px;background:rgba(14,42,71,.78);color:#fff;font-size:12px;font-weight:600;padding:3px 9px;border-radius:20px}
.d-thumbs{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.d-th{width:66px;height:50px;border-radius:9px;background-size:cover;background-position:center;border:2px solid transparent;cursor:pointer;padding:0;background-color:#dde8f0}
.d-th.active{border-color:var(--green)}
/* upload en panel */
.ph-grid{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.ph-item{position:relative;width:84px;height:64px;border-radius:9px;background-size:cover;background-position:center;background-color:#dde8f0;border:1px solid var(--line)}
.ph-del{position:absolute;top:-7px;right:-7px;width:22px;height:22px;border-radius:50%;background:var(--red);color:#fff;border:0;cursor:pointer;font-size:13px;line-height:1;display:flex;align-items:center;justify-content:center}
.ph-cover{position:absolute;left:4px;bottom:4px;background:var(--green-d);color:#fff;font-size:10px;font-weight:800;padding:1px 6px;border-radius:6px}
.ph-star{position:absolute;left:4px;bottom:4px;width:22px;height:22px;border-radius:6px;background:rgba(0,0,0,.55);color:#fff;border:0;cursor:pointer;font-size:13px;line-height:1;display:flex;align-items:center;justify-content:center}
.ph-star:hover{background:var(--green-d)}
.ph-drop{border:1.5px dashed var(--line);border-radius:11px;padding:16px;text-align:center;color:var(--muted);cursor:pointer;font-size:14px}
.ph-drop:hover{border-color:var(--green);color:var(--green-d)}
.ph-up{font-size:12px;color:var(--muted);margin-top:4px}

/* documentos */
.f-docs{margin:16px 0;padding:16px;background:#f4f7fb;border-radius:12px;text-align:left}
.f-docs h3{margin:0 0 4px;font-size:16px}
.f-doc{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1.5px solid var(--line);border-radius:11px;padding:12px 14px;cursor:pointer;font-weight:600;font-size:14px;color:var(--navy);margin:10px 0;transition:.12s}
.f-doc:hover{border-color:var(--green)}
.f-doc input[type=file]{position:absolute;width:1px;height:1px;opacity:0}
.f-doc-file{font-weight:600;font-size:13px;color:var(--muted);white-space:nowrap}
.f-doc.has-file{border-color:var(--green);background:var(--green-bg)}
.f-doc.has-file .f-doc-file{color:var(--green-d)}
.f-docmsg{color:var(--red);font-size:13px;margin-top:6px}
.f-docok{color:var(--green-d);font-weight:700;text-align:center;padding:14px}
.lc-docs{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.lc-doc{background:#eef3f8;color:var(--navy);font-size:13px;font-weight:600;padding:5px 11px;border-radius:8px}
.lc-doc:hover{background:var(--green-bg);color:var(--green-d)}

/* búsqueda / espera / coincidencias */
.lead-card.espera{border-left-color:#6c8cb5}
.pill.espera{background:#eaf0f7;color:#45617f}
.lc-matches{background:var(--green-bg);border-radius:8px;padding:9px 11px;margin-top:8px;font-size:13px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.lc-matches b{color:var(--green-d)}
.lc-match{background:#fff;border:1px solid #c3ead9;color:var(--green-d);font-weight:600;padding:4px 9px;border-radius:7px}
.more-strip{margin-top:30px;border-top:1px solid var(--line);padding-top:24px}
.more-strip h2{font-size:20px;margin:0 0 16px}

/* perfil para el propietario */
.pf-wrap{display:flex;justify-content:center;padding:30px 16px}
.pf-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);width:100%;max-width:560px;padding:28px}
.pf-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:6px}
.pf-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:700}
.pf-head h1{font-size:24px;margin:4px 0 4px}
.pf-prop{color:var(--muted);font-size:14px}
.pf-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.pf-row b{color:var(--navy)}
.pf-sec{padding:14px 0;border-bottom:1px solid var(--line)}
.pf-sec h3{font-size:16px;margin:0 0 10px}
.pf-nodocs{color:var(--muted);font-size:14px}
.pf-docs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pf-doc-l{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:5px}
.pf-doc img{width:100%;height:120px;object-fit:cover;border-radius:9px;border:1px solid var(--line)}
.pf-pdf{display:inline-block;background:var(--green-bg);color:var(--green-d);font-weight:600;padding:10px 14px;border-radius:9px;font-size:14px}
.pf-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:16px;color:var(--muted);font-size:13px;flex-wrap:wrap}
@media print{.pf-foot button,.nav{display:none}.pf-card{border:0;box-shadow:none}}

/* notificaciones */
.pill-new{background:var(--green);color:#fff;font-size:10px;font-weight:800;padding:2px 7px;border-radius:20px;vertical-align:middle;letter-spacing:.5px}
.tab-badge{background:var(--red);color:#fff;font-size:11px;font-weight:800;padding:1px 7px;border-radius:20px;margin-left:2px}

/* planes / upgrade */
#planchip{font-size:13px;font-weight:700}
.chip-pro{background:var(--green);color:#fff;padding:3px 10px;border-radius:20px}
.chip-free{background:rgba(255,255,255,.14);color:#fff;padding:3px 10px;border-radius:20px}
.plan-usage{color:var(--muted);font-size:14px;margin:-6px 0 14px}
.plan-usage a{font-weight:600}
.up-wrap{text-align:center;padding:46px 20px}
.up-h1{font-size:40px;margin:0 0 8px}
.up-sub{font-size:19px;color:#4a5d72;margin:0 auto 34px;max-width:560px}
.up-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:780px;margin:0 auto;text-align:left}
.up-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow);position:relative}
.up-pro{border:2px solid var(--green)}
.up-tag{position:absolute;top:-12px;right:20px;background:var(--green);color:#fff;font-size:12px;font-weight:800;padding:4px 12px;border-radius:20px}
.up-card h3{font-size:20px;margin:0 0 4px}
.up-price{font-size:34px;font-weight:800;color:var(--navy);margin-bottom:16px}
.up-price span{font-size:15px;font-weight:500;color:var(--muted)}
.up-list{list-style:none;padding:0;margin:0 0 18px}
.up-list li{padding:8px 0;border-bottom:1px solid var(--line);font-size:15px;color:#33485c}
.up-list li.off{color:#9db0c2}
.up-list .soon{background:var(--yellow-bg);color:var(--yellow);font-size:11px;font-weight:700;padding:1px 7px;border-radius:10px;margin-left:4px}
.up-msg{color:var(--green-d);font-weight:700;text-align:center;margin-top:10px;min-height:1px}
@media(max-width:780px){.up-cols{grid-template-columns:1fr}.up-h1{font-size:30px}}

/* mobile polish */
@media(max-width:560px){
  /* nav landing/páginas: encolher pra não colidir */
  .nav{padding:11px 14px}
  .brand img{height:32px}
  .nav-right{gap:9px}
  .nav-right .btn{padding:9px 14px;font-size:13px}
  .nav-right .lnk{font-size:14px}
  .nav-extra{display:none}
  /* header del panel: limpiar congestión */
  .p-head{flex-wrap:wrap;gap:8px 12px;padding:10px 14px}
  .p-head img{height:32px}
  .p-head .r{gap:14px;font-size:13px;flex-wrap:wrap;justify-content:flex-end}
  .p-head #hi{white-space:nowrap}
  .p-head #mipag{display:none}
  .tabs{overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
  .lc-top{flex-direction:column;align-items:flex-start}
  .modal{padding:18px}
  .pf-docs{grid-template-columns:1fr}
  .d-attrs span{font-size:12px}
  main{padding:0 14px}
}

/* agente whatsapp (chat tester) */
.ag-info{background:var(--green-bg);border-radius:12px;padding:14px 16px;font-size:14px;margin-bottom:14px;color:#2f5d4c}
.ag-chat{background:#ece5dd;border-radius:14px;padding:16px;min-height:320px;max-height:460px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}
.ag-msg{max-width:80%;padding:9px 13px;border-radius:12px;font-size:14px;white-space:pre-line;box-shadow:0 1px 1px rgba(0,0,0,.08)}
.ag-bot{background:#fff;align-self:flex-start;border-top-left-radius:3px}
.ag-user{background:#d9fdd3;align-self:flex-end;border-top-right-radius:3px}
.ag-input{display:flex;gap:8px;margin-top:12px}
.ag-input input{flex:1;padding:12px 14px;border:1.5px solid var(--line);border-radius:11px;font-size:15px;font-family:inherit}
.ag-input input:focus{outline:0;border-color:var(--green)}

/* agente extra + doc cta web */
.ag-extra{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
#docopen{border-style:dashed;color:var(--green-d);border-color:#bfe3d4}
#docopen:hover{background:var(--green-bg)}

/* afiliado / indicaciones */
.af-hero{background:linear-gradient(135deg,#0e2a47,#15426b);color:#fff;border-radius:18px;padding:24px 26px;margin-bottom:16px}
.af-rate{font-family:'Sora',sans-serif;font-size:24px;font-weight:800;margin-bottom:8px}
.af-hero p{margin:0;color:#cfe0ef;font-size:15px;line-height:1.55}
.af-hero b{color:var(--green)}
.up-note{font-size:13px;color:var(--muted);margin:-8px 0 14px}
.up-scarcity{display:inline-block;background:#fff3e0;color:#c2410c;font-weight:800;font-size:13px;padding:4px 11px;border-radius:999px;margin:0 0 10px}
.up-price s{color:#b3c0cd;font-size:20px;font-weight:600;margin-right:6px}
.af-foot{margin-top:14px;color:var(--muted);font-size:14px;text-align:center}

/* CRM de leads */
.lead-filters{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}
.lead-filters input{flex:1;min-width:180px;padding:10px 13px;border:1.5px solid var(--line);border-radius:10px;font-size:14px;font-family:inherit}
.lead-filters select{padding:10px 13px;border:1.5px solid var(--line);border-radius:10px;font-family:inherit;font-weight:600;background:#fff}
.lc-crm{padding:6px 10px;border:1.5px solid var(--line);border-radius:9px;font-family:inherit;font-weight:700;font-size:13px;cursor:pointer;background:#fff}
.crm-contactado{border-color:#6c8cb5;color:#45617f}
.crm-visita{border-color:var(--yellow);color:var(--yellow)}
.crm-cerrado{border-color:var(--green);color:var(--green-d)}
.crm-perdido{border-color:var(--red);color:var(--red)}
/* mi cuenta */
.acct{margin-top:18px}
.acct .frow{margin-bottom:10px}
.acct h3{font-size:17px;margin:0 0 12px}
/* Mi cuenta no está dentro de <form>: forzar labels en bloque (si no, quedan inline/apretados) */
.acct label{display:block;font-weight:600;font-size:14px;color:var(--navy);margin-bottom:10px}
.acct label input{display:block;width:100%;margin-top:5px}

/* onboarding */
.onboard{background:var(--green-bg);border:1px solid #c3ead9;border-radius:16px;padding:22px 24px;margin-bottom:16px}
.onboard h3{margin:0 0 14px;font-size:18px}
.ob-step{padding:12px 0;border-bottom:1px solid #c3ead9;display:flex;flex-direction:column;gap:6px}
.ob-step:last-child{border-bottom:0}
.ob-step b{color:var(--navy)}
.ob-step span{color:#3c5066;font-size:14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ob-step.ob-next{background:#fff;border:1.5px solid var(--green);border-radius:12px;padding:14px 16px;margin:6px 0}
.ob-step.ob-done b{color:var(--green-d)}
.ob-step.ob-todo{opacity:.6}
.ob-step .share-link{width:100%}
.warn-box{background:var(--yellow-bg);border:1px solid #f1dca6;border-radius:12px;padding:12px 16px;margin-bottom:14px;font-size:14px;font-weight:600;color:#7a5800}
.warn-box a{font-weight:700;cursor:pointer;text-decoration:underline}
.nudge{color:var(--green-d);font-weight:700;cursor:pointer;text-decoration:underline}
.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}

/* contrato imprimible */
.ctr-bar{display:flex;gap:10px;align-items:center;padding:14px 22px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;flex-wrap:wrap;z-index:5}
.ctr-hint{color:var(--muted);font-size:13px}
.ctr-disc{background:var(--yellow-bg);color:#8a6d1f;padding:10px 22px;font-size:13px;text-align:center}
.contrato{max-width:780px;margin:24px auto;background:#fff;border:1px solid var(--line);border-radius:8px;padding:48px 56px;font-family:Georgia,'Times New Roman',serif;font-size:15px;line-height:1.7;color:#1a1a1a;outline:none}
.contrato h1{font-family:inherit;text-align:center;font-size:20px;color:#000;margin:0 0 24px}
.contrato p{margin:0 0 12px;text-align:justify}
.contrato ul{margin:0 0 12px}.contrato i{color:#555;font-size:13px}
.ctr-firmas{display:flex;justify-content:space-between;gap:30px;margin-top:64px;text-align:center;font-size:14px}
.ctr-firmas>div{flex:1}
.ctr-line{border-top:1px solid #000;margin-bottom:6px;margin-top:30px}
.ctr-foot{text-align:center;color:var(--muted);font-size:12px;padding:20px}
@media print{.ctr-bar,.ctr-disc,.ctr-foot{display:none!important}.contrato{border:0;border-radius:0;margin:0;padding:0;max-width:100%}body{background:#fff}}

/* claim de inquilino */
.f-claim{margin:16px 0;padding:16px;background:var(--green-bg);border-radius:12px;text-align:left}
.f-claim h3{margin:0 0 4px;font-size:16px}
.f-claim input{width:100%;margin:8px 0;padding:11px 13px;border:1.5px solid var(--line);border-radius:10px;font-size:15px;font-family:inherit}

/* alquileres / ledger / cobranza */
.lease-mark{margin:10px 0;font-size:14px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.lease-cfg{margin:8px 0;display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:14px}
.lease-cfg select{padding:7px 10px;border:1.5px solid var(--line);border-radius:9px;font-family:inherit;font-weight:600;background:#fff}
.cz-from{background:var(--green-bg);border-radius:10px;padding:10px 13px;margin:0 0 14px;font-size:14px}
.cz-btns .btn{margin-left:6px}
.cz-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.cz-per{font-weight:700;color:var(--navy)}
.cz-st{font-weight:600}.cz-pagado{color:var(--green-d)}.cz-atrasado{color:var(--red)}.cz-pendiente{color:var(--muted)}
.cz-btns button{margin-left:6px;padding:6px 11px;border:1.5px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-family:inherit;font-weight:600;font-size:13px}
.cz-btns button:hover{border-color:var(--green)}

/* toast (substitui alert) */
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--navy);color:#fff;padding:12px 20px;border-radius:11px;font-weight:600;font-size:14px;box-shadow:0 6px 24px rgba(14,42,71,.25);opacity:0;transition:.3s;z-index:100;max-width:90%;text-align:center}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.toast-err{background:var(--red)}
/* lead card: acciones secundarias colapsadas */
.lc-more{display:none;flex-wrap:wrap;gap:8px;width:100%;margin-top:8px}
.lc-more.open{display:flex}
.lc-morebtn{background:#eef3f8;border:0;border-radius:9px;padding:7px 11px;cursor:pointer;font-family:inherit;font-weight:700;color:var(--navy);font-size:13px}
@media(max-width:560px){.lc-actions{gap:6px}.lease-cfg,.lc-actions{width:100%}.lead-filters input{min-width:100%}}

.up-price .np{white-space:nowrap}

/* opciones avanzadas colapsables en el form de inmueble */
.adv{margin:14px 0;border-top:1px solid var(--line);padding-top:6px}
.adv>summary{cursor:pointer;font-weight:700;color:var(--navy);font-size:14px;padding:8px 0;list-style:none}
.adv>summary::-webkit-details-marker{display:none}
.adv>summary::before{content:'▸ ';color:var(--green-d)}
.adv[open]>summary::before{content:'▾ '}
.adv>summary span{font-weight:400;color:var(--muted);font-size:13px}

/* landing — identidad capta+cobra + acto 2 (cobrar) */
.hero-id{color:#bfe6d6;font-size:16px;font-weight:600;margin:-4px 0 22px;max-width:560px}
.hero-id b{color:#fff}
.shift-id{font-weight:800;color:var(--navy);font-size:21px;max-width:680px;margin:20px auto 0;line-height:1.35}
.libro{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;box-shadow:var(--shadow);text-align:left}
.libro-head{font-weight:700;color:var(--navy);font-size:14px;margin-bottom:10px}
.libro-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px dashed var(--line);font-size:15px;color:var(--navy)}
.libro-row b.ok{color:var(--green-d);font-weight:700}
.libro-foot{margin-top:12px;font-size:12px;color:var(--muted)}

/* landing — beats Sexy Canvas (ganancia/soberba/inveja/amor-libertad/pertenencia) */
.pain-money{text-align:center;max-width:680px;margin:24px auto 0;font-size:18px;color:var(--navy);font-weight:600}
.pain-money b{color:var(--red)}
.vs{text-align:center;padding:34px 0}
.vs h2{font-size:28px;margin-bottom:14px}
.vs-sub{max-width:660px;margin:0 auto;color:#4a5d72;font-size:17px;line-height:1.7}
.vs-sub b{color:var(--navy)}
.vs-q{font-size:24px;font-weight:800;margin-top:20px;color:var(--navy)}
.final-free{max-width:560px;margin:0 auto 22px;font-size:18px;color:#4a5d72;font-weight:600;line-height:1.5}

/* landing — banda Cerrar (visual del clímax) + mid-cta + cobra-sol */
.cerrar-band{background:var(--green-bg);border-radius:22px;padding:34px 30px;margin:30px 0}
.cerrar-inner{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;max-width:980px;margin:0 auto}
.cerrar-text{text-align:left}
.cerrar-text h2{font-size:26px;margin:0 0 12px}
.cerrar-text p{color:#3c5066;font-size:16px;margin:0}
.cerrar-card{background:#fff;border:1px solid #c3ead9;border-radius:16px;padding:20px;box-shadow:var(--shadow)}
.cc-doc{font-weight:700;color:var(--navy);font-size:15px;margin-bottom:10px}
.cc-line{padding:8px 0;border-bottom:1px dashed var(--line);font-size:14px;color:var(--green-d);font-weight:600}
.cc-comm{margin-top:12px;background:var(--green-bg);border-radius:10px;padding:11px;font-weight:800;color:var(--green-d);text-align:center;font-size:15px}
.cobra-sol{text-align:center;max-width:680px;margin:22px auto 0;font-size:16px;color:#3c5066;line-height:1.6}
.cobra-sol b{color:var(--navy)}
.mid-cta{text-align:center;margin-top:30px}
.mid-cta span{display:block;color:var(--muted);font-size:13px;margin-top:8px}
@media(max-width:780px){.cerrar-inner{grid-template-columns:1fr}.cerrar-text h2{font-size:23px}.cerrar-band{padding:24px 18px}}

/* hero 2 columnas + teléfono (producto real) */
.hero-2col{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center;max-width:1080px;margin:0 auto;text-align:left}
.hero-2col .hero-logo,.hero-2col h1{margin-left:0}
.hero-2col .lead,.hero-2col .hero-id{margin-left:0;margin-right:0}
.hero-2col .cta-row{justify-content:flex-start}
.hero-copy{text-align:left}
.hero-visual{display:flex;flex-direction:column;align-items:center}
.phone{width:282px;max-width:80vw;background:#0a1622;border:9px solid #0a1622;border-radius:40px;box-shadow:0 28px 60px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.08);position:relative;overflow:hidden}
.phone-notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:96px;height:20px;background:#0a1622;border-radius:0 0 14px 14px;z-index:2}
.phone img{display:block;width:100%;border-radius:31px}
.phone-tag{margin-top:18px;color:#bfe6d6;font-size:14px;font-weight:600;background:rgba(255,255,255,.08);padding:7px 15px;border-radius:20px}
@media(max-width:880px){
  .hero-2col{grid-template-columns:1fr;text-align:center;gap:30px}
  .hero-2col .hero-logo,.hero-2col h1,.hero-2col .lead,.hero-2col .hero-id{margin-left:auto;margin-right:auto}
  .hero-2col .cta-row{justify-content:center}
  .hero-copy{text-align:center}
  .phone{width:248px}
}
/* scroll-reveal sutil */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal,.reveal.in{opacity:1;transform:none;transition:none}}

/* wa mock en marco de teléfono (depth + temático) */
.wa-phone{background:#0a1622;border:8px solid #0a1622;border-radius:30px;box-shadow:0 18px 44px rgba(14,42,71,.20),0 0 0 1px rgba(14,42,71,.06);overflow:hidden;max-width:300px;margin:0 auto;width:100%}
.wa-bar{background:#075e54;color:#fff;font-size:13px;font-weight:600;padding:11px 14px;display:flex;align-items:center;gap:8px}
.wa-live{width:8px;height:8px;border-radius:50%;background:#3be37a;box-shadow:0 0 0 3px rgba(59,227,122,.25)}
.wa{border-radius:0;margin:0}
/* semáforo dots (en vez de emoji) */
.sdot{display:inline-block;width:11px;height:11px;border-radius:50%;margin:0 1px;vertical-align:-1px}
.sdot.v{background:#1FBE85}.sdot.a{background:#e7a32f}.sdot.r{background:#e25555}
/* iconos inline (en vez de emoji 📒📄💰) */
.ic{width:18px;height:18px;vertical-align:-3px;margin-right:5px;flex:none}
.cc-doc,.libro-head,.cc-comm{display:flex;align-items:center}

/* demo de gestión (público read-only) */
.demo-banner{background:var(--green-bg);border:1px solid #c3ead9;border-radius:14px;padding:16px 18px;font-size:15px;color:#2f5d4c;display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px}
.demo-banner b{color:var(--navy)}
.demo-foot{text-align:center;color:var(--muted);font-size:14px;margin:26px 0 50px;line-height:1.6}

/* tag-link a la demo de gestión (sobre fondo claro) */
.phone-tag-link{background:var(--green-bg);color:var(--green-d);text-decoration:none;cursor:pointer;transition:.12s}
.phone-tag-link:hover{background:#d2f1e3}

/* tarjeta de visita del corredor (página pública /c/:slug) */
/* === Página del corredor: perfil (sticky) + listings, cohesivo === */
.cprof2{max-width:1140px;margin:0 auto;padding:30px 18px 8px;display:grid;grid-template-columns:350px 1fr;gap:36px;align-items:start}
.cprof-side{position:sticky;top:24px}
.cprof-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 14px 44px rgba(14,42,71,.12);overflow:hidden;text-align:center}
.cprof-banner{height:92px;background:linear-gradient(115deg,var(--navy),#15406d 55%,#0a7a50);position:relative}
.cprof-banner::after{content:'';position:absolute;inset:0;background:radial-gradient(150px 70px at 80% 16%,rgba(255,255,255,.16),transparent)}
.cprof-avatar{width:104px;height:104px;border-radius:50%;margin:-56px auto 0;border:4px solid #fff;box-shadow:0 8px 22px rgba(14,42,71,.20);overflow:hidden;background:var(--green);display:flex;align-items:center;justify-content:center;position:relative}
.cprof-avatar img{width:100%;height:100%;object-fit:cover}
.cprof-avatar span{color:#fff;font-size:38px;font-weight:800;font-family:'Sora',-apple-system,sans-serif}
.cprof-body{padding:12px 24px 26px}
.cprof-card h1{font-size:22px;margin:0 0 2px;line-height:1.2}
.cprof-agency{color:var(--green-d);font-weight:700;font-size:14px;margin-bottom:10px}
.cprof-bio{color:#4a5d72;font-size:14.5px;margin:0 0 14px;line-height:1.55}
.cprof-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0 0 16px;font-size:13px;color:var(--muted)}
.cprof-stats span{background:#eef2f7;padding:6px 12px;border-radius:999px;white-space:nowrap}
.cprof-stats b{color:var(--navy)}
.cprof-main{min-width:0}
.cprof-h{font-size:20px;margin:4px 0 18px;color:var(--navy)}
@media(max-width:860px){
  .cprof2{grid-template-columns:1fr;gap:22px;padding-top:18px}
  .cprof-side{position:static;max-width:460px;margin:0 auto;width:100%}
  .cprof-h{text-align:center}
}
/* avatar en Mi cuenta */
.acct-foto{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.acct-avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;background:var(--green);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:24px;flex:none}
.acct-avatar img{width:100%;height:100%;object-fit:cover}

/* WhatsApp manual como CTA secundario discreto en la tarjeta del corredor */
.cprof-wa{display:block;margin-top:11px;color:var(--muted);font-size:14px;text-decoration:none}
.cprof-wa:hover{color:var(--green-d);text-decoration:underline}

/* ============================================================
   DESIGN SYSTEM — polish global (status · iconos · summary · ledger)
   ============================================================ */
/* --- iconos: máscara SVG en currentColor (mismo set en SSR y SPA) --- */
.ic{display:inline-block;width:1.05em;height:1.05em;background:currentColor;-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat;vertical-align:-3px;flex:none}
.ic-lg{width:1.4em;height:1.4em;vertical-align:-5px}
.ic-check{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")}
.ic-check-c{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12l3 3 5-6'/%3E%3C/svg%3E")}
.ic-clock{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}
.ic-upload{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2'/%3E%3Cpath d='M12 15V3m0 0L7 8m5-5 5 5'/%3E%3C/svg%3E")}
.ic-clip{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 8.5 11.8 17.7a4 4 0 0 1-5.7-5.7l9.2-9.2a2.5 2.5 0 0 1 3.5 3.5l-9.1 9.1a1 1 0 0 1-1.4-1.4l8.4-8.4'/%3E%3C/svg%3E")}
.ic-bell{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 8a6 6 0 1 0-12 0c0 7-3 9-3 9h18s-3-2-3-9'/%3E%3Cpath d='M10.3 21a1.9 1.9 0 0 0 3.4 0'/%3E%3C/svg%3E")}
.ic-doc{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3v5h5M14 3H6a1 1 0 0 0-1 1v16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8z'/%3E%3Cpath d='M9 13h6M9 17h4'/%3E%3C/svg%3E")}
.ic-cal{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='17' rx='2'/%3E%3Cpath d='M3 9h18M8 3v3M16 3v3'/%3E%3C/svg%3E")}
.ic-pin{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
.ic-edit{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4z'/%3E%3C/svg%3E")}
.ic-plus{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E")}
.ic-eye{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s4-7 10-7 10 7 10 7-4 7-10 7-10-7-10-7z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E")}
.ic-home{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-8 9 8'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3C/svg%3E")}
.ic-user{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E")}
.ic-wa{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M12 2a10 10 0 0 0-8.7 15l-1.3 5 5.1-1.3A10 10 0 1 0 12 2zm0 18a8 8 0 0 1-4.1-1.1l-.3-.2-3 .8.8-2.9-.2-.3A8 8 0 1 1 12 20zm4.4-5.6c-.2-.1-1.4-.7-1.6-.8s-.4-.1-.5.1-.6.8-.8 1-.3.2-.5.1a6.5 6.5 0 0 1-3.2-2.8c-.2-.4.2-.4.6-1.2a.4.4 0 0 0 0-.4l-.8-1.8c-.2-.5-.4-.4-.5-.4h-.5a.9.9 0 0 0-.7.3 2.8 2.8 0 0 0-.9 2.1 4.9 4.9 0 0 0 1 2.6 11 11 0 0 0 4.3 3.8c2 .8 2 .5 2.4.5a2.4 2.4 0 0 0 1.6-1.1 2 2 0 0 0 .1-1.1c0-.1-.2-.2-.4-.3z'/%3E%3C/svg%3E")}
.ic-arrow{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E")}
.ic-coins{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='9' cy='7' rx='6' ry='3'/%3E%3Cpath d='M3 7v6c0 1.7 2.7 3 6 3'/%3E%3Cpath d='M15 11.5c3.3 0 6 1.3 6 3s-2.7 3-6 3-6-1.3-6-3 2.7-3 6-3z'/%3E%3C/svg%3E")}

/* --- status badge (reemplaza emoji de estado) --- */
.st{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;padding:4px 11px;border-radius:999px;line-height:1.2;white-space:nowrap}
.st::before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.st-ok{color:var(--green-d);background:var(--green-bg)}
.st-late{color:var(--red);background:var(--red-bg)}
.st-rev{color:var(--yellow);background:var(--yellow-bg)}
.st-pend{color:var(--muted);background:#eef2f7}
.rep{display:inline-block;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;line-height:1.2;white-space:nowrap;vertical-align:middle}
.rep-ok{color:var(--green-d);background:var(--green-bg)}
.rep-bad{color:var(--red);background:var(--red-bg)}
.rep-new{color:var(--muted);background:#eef2f7}

/* --- summary / stats bar --- */
.summary{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 20px}
.sum{flex:1;min-width:130px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:15px 17px;box-shadow:var(--shadow)}
.sum b{display:block;font-size:25px;font-family:'Sora',-apple-system,sans-serif;color:var(--navy);line-height:1.1;font-weight:800}
.sum span{font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:5px;margin-top:3px}
.sum.s-late b{color:var(--red)} .sum.s-rev b{color:var(--yellow)} .sum.s-ok b{color:var(--green-d)}

/* --- ledger timeline (reemplaza fila de badges con emoji) --- */
.ledger{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
.lmon{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:46px}
.lmon i.ic{width:15px;height:15px}
.lmon .lring{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1.5px solid transparent}
.lmon .llbl{font-size:10.5px;color:var(--muted);letter-spacing:.2px}
.lmon.ok .lring{background:var(--green-bg);color:var(--green-d)}
.lmon.late .lring{background:var(--red-bg);color:var(--red)}
.lmon.rev .lring{background:var(--yellow-bg);color:var(--yellow)}
.lmon.pend .lring{background:#eef2f7;color:var(--muted)}
.lmon a.lclip{margin-top:1px;color:var(--green-d);font-size:11px}

/* --- card needs-action accent --- */
.lead-card.attn{border-left:3px solid var(--yellow);background:linear-gradient(90deg,#fffdf7,#fff 40%)}
.lead-card.is-late{border-left:3px solid var(--red);background:linear-gradient(90deg,#fff8f8,#fff 40%)}

/* gestión: layout de card (head + nota + cta primaria/secundaria) */
.sec-h{font-size:20px;margin:22px 0 14px;color:var(--navy)}
.lc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:2px}
.lc-head .lc-prop{display:flex;align-items:center;gap:5px;margin-top:2px}
.lc-head .lc-prop .ic{color:var(--muted);width:.95em;height:.95em}
.lc-note{font-size:13.5px;margin:6px 0 2px;display:flex;align-items:flex-start;gap:8px;line-height:1.5;color:#3c5066}
.lc-note .ic{margin-top:2px;color:var(--green-d);flex:none}
.lc-note.attn{color:var(--navy)}
.lc-note.attn .ic{color:var(--yellow)}
.lc-cta{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px}
.lc-more-actions{display:flex;gap:18px}
.lc-more-actions a{color:var(--muted);font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:5px}
.lc-more-actions a:hover{color:var(--green-d)}

/* gestión: config colapsable + botón atrasado suave */
.lc-config{margin-top:12px;border-top:1px solid var(--line);padding-top:8px}
.lc-config summary{cursor:pointer;color:var(--muted);font-size:13px;font-weight:600;list-style:none;user-select:none}
.lc-config summary::-webkit-details-marker{display:none}
.lc-config summary::before{content:'⌄';margin-right:6px;font-weight:700}
.lc-config[open] summary::before{content:'⌃'}
.cf-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;font-weight:600;color:var(--navy);margin:10px 0 4px}
.cf-row select,.cf-row input{width:auto;margin-top:0;flex:1;min-width:150px;padding:8px 11px}
.cf-row .ic{color:var(--muted)}
.cf-note{font-size:12px;color:var(--muted);margin:5px 0}
.btn-soft-danger{background:#fff;color:var(--red);border:1.5px solid var(--red-bg)}
.btn-soft-danger:hover{background:var(--red-bg)}
.btn-soft{background:var(--green-bg);color:var(--green-d);border:1.5px solid var(--green-bg)}
.btn-soft:hover{background:#d3f0e2}
/* Montador de post */
.modal.cmp{max-width:520px}
.cmp-text{width:100%;border:1.5px solid var(--line);border-radius:11px;padding:12px;font-family:inherit;font-size:14px;line-height:1.5;resize:vertical;box-sizing:border-box}
.cmp-cta{background:var(--green-bg);color:var(--navy);border-radius:10px;padding:9px 12px;font-size:13px;margin:10px 0}
.cmp-fotos{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.cmp-foto{width:64px;height:64px;border-radius:9px;background-size:cover;background-position:center;border:1px solid var(--line);position:relative}
.cmp-foto::after{content:'⬇';position:absolute;right:3px;bottom:2px;font-size:11px;background:rgba(0,0,0,.55);color:#fff;border-radius:5px;padding:0 4px}
.cmp-acts{display:flex;flex-direction:column;gap:8px}
.cmp-row{display:flex;gap:8px}
.cmp-row .btn{flex:1}
.cmp-grps-h{font-weight:700;color:var(--navy);margin:14px 0 6px;font-size:14px}
.cmp-grps{display:flex;flex-direction:column;gap:6px}
.cmp-grp{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border:1px solid var(--line);border-radius:9px}
.cmp-grp-n{font-size:13.5px;font-weight:600}
.cmp-grp-a{display:flex;align-items:center;gap:6px}
.cmp-x{border:0;background:none;color:var(--muted);font-size:17px;cursor:pointer;line-height:1;padding:0 2px}
.cmp-x:hover{color:var(--red)}
.cmp-add{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.cmp-add input{flex:1;min-width:120px;border:1.5px solid var(--line);border-radius:8px;padding:7px 9px;font-family:inherit;font-size:13px}
.lc-cta .pr-status{margin-top:0;width:auto;min-width:120px}

/* portal inquilino: hero reputación + fila postulación */
.por-hero{display:flex;gap:14px;align-items:flex-start;background:linear-gradient(120deg,var(--green-bg),#fff 70%);border:1px solid #c7ead9;border-radius:18px;padding:18px;margin-bottom:20px}
.por-ic{width:44px;height:44px;border-radius:13px;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;font-size:22px}
.por-t{font-weight:800;color:var(--navy);margin-bottom:3px}
.por-hero p{margin:0;font-size:13.5px;color:#3c5066;line-height:1.5}
.prow{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:13px 16px;margin-bottom:9px}
.prow b{color:var(--navy);font-size:15px}

.lc-note.muted,.lc-note.muted .ic{color:var(--muted)}
.ic-key{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='15' r='4'/%3E%3Cpath d='M10.8 12.2 20 3M16 7l3 3M14 9l2 2'/%3E%3C/svg%3E")}
.ic-link{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 15 15 9'/%3E%3Cpath d='M11 6l1-1a4 4 0 0 1 6 6l-1 1'/%3E%3Cpath d='M13 18l-1 1a4 4 0 0 1-6-6l1-1'/%3E%3C/svg%3E")}
.ic-gift{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='5' rx='1'/%3E%3Cpath d='M5 13v8h14v-8M12 8v13'/%3E%3Cpath d='M12 8S11 3 8.5 3 6 6 12 8zM12 8s1-5 3.5-5S18 6 12 8z'/%3E%3C/svg%3E")}
.tab .ic{width:1em;height:1em;vertical-align:-2px;margin-right:3px}

/* upgrade: 3 tiers */
.up-cols.up-3{grid-template-columns:repeat(3,1fr);max-width:1080px}
.up-ia{border:2px solid var(--navy)}
.up-tag-ia{background:var(--navy)}
.up-tagline{font-size:14px;color:var(--green-d);font-weight:700;margin:0 0 14px}
.up-ia .up-tagline{color:var(--navy)}
.up-foot{margin-top:28px;color:var(--muted);font-size:15px}
.up-foot a{font-weight:700}
@media(max-width:880px){.up-cols.up-3{grid-template-columns:1fr;max-width:430px}}

/* tease: alquiler garantizado (próximamente) + encuesta WTP */
.gar-tease{background:linear-gradient(120deg,var(--navy),#15406d);color:#fff;border-radius:18px;padding:18px 20px;margin-bottom:18px;box-shadow:var(--shadow)}
.gar-tease .muted{color:#bcd3e8}
.gar-tease b{color:#fff}
.gar-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:12px}
.gar-ic{width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}
.gar-ic.ok{background:var(--green);color:#fff}
.gar-tease.done{display:flex;gap:14px;align-items:center}
.gar-tease input{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff}
.gar-tease input::placeholder{color:#9fbdd8}
.gar-tease .cf-row{color:#fff}
.gar-opts{display:flex;gap:8px;flex-wrap:wrap}
.gar-opt{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;padding:8px 14px;font-weight:700;cursor:pointer;font-family:inherit;transition:.12s}
.gar-opt:hover{background:rgba(255,255,255,.2)}
.gar-opt.sel{background:#08855a;border-color:#08855a}

/* destaque do benefício "renta mensual nueva" dentro do card de tease */
.gar-benefit{display:flex;gap:9px;align-items:flex-start;background:rgba(31,190,133,.16);border:1px solid rgba(31,190,133,.4);border-radius:12px;padding:11px 14px;margin:12px 0;font-size:13.5px;line-height:1.5;color:#eaf6ff}
.gar-benefit .ic{color:#5fe0ab;margin-top:2px;flex:none;width:1.15em;height:1.15em}
.gar-benefit b{color:#9af5d0}

/* páginas legales (long-form) + links del footer */
.legal{max-width:760px;margin:0 auto;padding:34px 22px 50px}
.legal h1{font-size:30px;margin:0 0 4px}
.legal .lg-upd{color:var(--muted);font-size:13px;margin:0 0 22px}
.legal h2{font-size:18px;margin:26px 0 8px}
.legal p{color:#3c5066;line-height:1.65;margin:0 0 12px}
.legal a{font-weight:600}
.ft-links{margin-bottom:8px}
.ft-links a{color:var(--navy);font-weight:600}
.ft-links a:hover{color:var(--green-d)}

/* nudge: renta recurrente por invitar corredores */
.ref-nudge{display:flex;gap:14px;align-items:center;background:linear-gradient(120deg,var(--green-bg),#fff 70%);border:1px solid #c7ead9;border-radius:16px;padding:14px 18px;margin-bottom:18px;box-shadow:var(--shadow)}
.rn-ic{width:40px;height:40px;border-radius:12px;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;font-size:18px}
.rn-body{flex:1}.rn-body b{color:var(--navy)}.rn-body .muted{font-size:13px;margin-top:2px}
.rn-act{display:flex;align-items:center;gap:8px;flex:none}
.rn-x{background:none;border:0;color:var(--muted);font-size:20px;cursor:pointer;line-height:1;padding:0 4px}
.rn-x:hover{color:var(--navy)}
@media(max-width:560px){.ref-nudge{flex-wrap:wrap}.rn-act{width:100%;justify-content:space-between}}

.ob-bonus{background:var(--green-bg);border-color:#c7ead9}
.ob-bonus b .ic{color:var(--green-d);margin-right:4px;vertical-align:-2px}

/* Marketplace (dark/ready): grid de inmuebles + corredor protagonista debajo */
.mkt-hero{background:linear-gradient(120deg,var(--navy),#14233a);color:#fff;padding:40px 20px 32px}
.mkt-hi{max-width:1100px;margin:0 auto}
.mkt-hero h1{font-size:30px;margin:0 0 6px}
.mkt-hero p{color:#b9c7d8;margin:0 0 18px;max-width:560px}
.mkt-search{display:flex;gap:8px;background:#fff;border-radius:14px;padding:8px;align-items:center;max-width:680px;box-shadow:var(--shadow);flex-wrap:wrap}
.mkt-search .ic{color:var(--muted);flex:none;margin-left:6px}
.mkt-search input{flex:1;min-width:160px;border:0;outline:0;font-size:15px;color:var(--navy);background:none}
.mkt-search select{border:0;outline:0;background:var(--green-bg);color:var(--navy);border-radius:10px;padding:9px 10px;font-weight:600;font-size:13px;cursor:pointer}
.mkt-wrap{max-width:1100px;margin:0 auto;padding:22px 20px 54px}
.mkt-count{color:var(--muted);font-size:14px;margin-bottom:14px;font-weight:600}
.mkt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:18px}
.mc{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .12s,box-shadow .12s}
.mc:hover{transform:translateY(-2px);box-shadow:0 8px 26px rgba(13,30,55,.13)}
.mc-prop{display:block;color:inherit}
.mc-corretor{display:flex;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid var(--line);background:var(--bg);color:inherit}
.mc-corretor:hover{background:var(--green-bg)}
.mc-av{width:34px;height:34px;border-radius:50%;overflow:hidden;flex:none;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}
.mc-av img{width:100%;height:100%;object-fit:cover}
.mc-cinfo{flex:1;min-width:0}
.mc-cinfo b{display:block;font-size:13.5px;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mc-cinfo span{font-size:12px;color:var(--muted)}
.mc-go{font-size:12.5px;font-weight:700;color:var(--green-d);white-space:nowrap;display:flex;align-items:center;gap:3px;flex:none}
.mc-go .ic{width:.85em;height:.85em}

/* Marketplace maduro: barra de filtros + estados + selo verificado */
.mkt-search{display:flex;gap:8px;align-items:center;max-width:840px;flex-wrap:wrap;background:none;box-shadow:none;padding:0}
.mkt-qbox{display:flex;align-items:center;gap:6px;background:#fff;border-radius:12px;padding:10px 12px;flex:1;min-width:200px;box-shadow:var(--shadow)}
.mkt-qbox .ic{color:var(--muted);flex:none}
.mkt-qbox input{flex:1;border:0;outline:0;font-size:15px;color:var(--navy);background:none}
.mkt-search select{border:0;outline:0;background:#fff;color:var(--navy);border-radius:12px;padding:11px 12px;font-weight:600;font-size:13.5px;cursor:pointer;box-shadow:var(--shadow)}
.mkt-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:10px}
.mkt-clear{background:none;border:1px solid var(--line);border-radius:9px;padding:7px 12px;font-size:13px;font-weight:600;color:var(--navy);cursor:pointer}
.mkt-clear:hover{background:var(--green-bg);border-color:#c7ead9}
.mkt-empty{grid-column:1/-1;text-align:center;padding:48px 20px;color:var(--muted)}
.mkt-empty .ic{width:46px;height:46px;color:var(--line);margin:0 auto 12px;display:block}
.mkt-empty b{display:block;color:var(--navy);font-size:17px;margin-bottom:4px}
.mkt-empty p{margin:6px auto 0;font-size:14px;max-width:340px}
.mc-verif{display:inline-flex;vertical-align:-2px;margin-left:4px;color:var(--green-d)}
.mc-verif .ic{width:.95em;height:.95em}
.pc-zona .ic{width:.85em;height:.85em;vertical-align:-1px;margin-right:1px}

/* alquiYa Score — widget de reputación del inquilino (estados honestos) */
.rep{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px 20px;box-shadow:var(--shadow);margin-bottom:8px}
.rep-badge{flex:none;width:74px;height:74px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:800;font-size:26px;color:#fff;background:var(--navy);line-height:1}
.rep-badge span{font-size:10px;font-weight:600;opacity:.85;margin-top:1px}
.rep-badge.new{background:linear-gradient(135deg,var(--navy),#33506f)}
.rep-badge.new .ic{width:30px;height:30px}
.rep-badge.build{background:linear-gradient(135deg,#e7a32f,#f0b94f);font-size:24px}
.rep-badge.score.ok{background:linear-gradient(135deg,#12a06e,#1fbe85)}
.rep-badge.score.mid{background:linear-gradient(135deg,#e09a2a,#f0b94f)}
.rep-badge.score.low{background:linear-gradient(135deg,#d44,#e57373)}
.rep-body{flex:1;min-width:0}
.rep-t{font-weight:700;color:var(--navy);font-size:15px}
.rep-sub{font-size:13px;font-weight:700;color:var(--green-d);margin:1px 0 6px}
.rep-low .rep-sub{color:#d44}.rep-mid .rep-sub{color:#c98a1e}
.rep-body p{margin:0;font-size:13px;color:#3c5066;line-height:1.5}
.rep-facts{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.rep-facts span{font-size:12.5px;color:var(--muted)}
.rep-facts b{color:var(--navy);font-size:14px}
.rep-facts .bad b{color:#d44}
.rep-bar{height:7px;background:var(--bg);border-radius:6px;overflow:hidden;margin-top:8px}
.rep-bar span{display:block;height:100%;background:linear-gradient(90deg,#e7a32f,#f0b94f);border-radius:6px;transition:width .4s}
@media(max-width:480px){.rep{flex-direction:column;text-align:center}.rep-facts{justify-content:center}}

/* Admin/operador maduro: KPIs, secciones, WTP, finance */
.ad-kpis{margin-bottom:20px}
.ad-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:720px){.ad-cols{grid-template-columns:1fr}}
.ad-sec{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin-bottom:16px;box-shadow:var(--shadow)}
.ad-sec h2{font-size:16px;margin:0 0 12px;display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap}
.ad-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px}
.ad-h h2{margin:0}
.ad-sec h2 input{width:130px;border:1px solid var(--line);border-radius:8px;padding:5px 8px;font-size:13px;font-weight:600}
.ad-mini{font-size:12.5px;color:var(--muted);margin:4px 0 10px}
.wtp-row{display:flex;align-items:center;gap:10px;margin-bottom:7px}
.wtp-k{width:40px;font-weight:700;color:var(--navy);font-size:14px}
.wtp-bar{flex:1;height:9px;background:var(--bg);border-radius:6px;overflow:hidden}
.wtp-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--green-d));border-radius:6px}
.wtp-n{width:26px;text-align:right;font-weight:700;color:var(--muted);font-size:13px}
.fin-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fin-c{background:var(--bg);border-radius:10px;padding:8px 12px}
.fin-c span{display:block;font-size:11.5px;color:var(--muted)}
.fin-c b{color:var(--navy);font-size:15px}
.ad-plan{text-transform:capitalize;font-weight:700;color:var(--muted)}
.ad-plan.pro{color:var(--green-d)}

.cprof-verif{display:inline-flex;vertical-align:1px;color:var(--green-d)}
.cprof-verif .ic{width:.8em;height:.8em}

/* Lado-oferta: página de propietarios + CTA en marketplace (siempre "un corredor te contacta") */
.mkt-owner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--green-bg);border:1px solid #c7ead9;border-radius:14px;padding:12px 18px;margin-bottom:16px;color:var(--navy);font-size:14px;flex-wrap:wrap}
.mkt-owner b{color:var(--green-d)}
.mkt-owner-go{font-weight:700;color:var(--green-d);white-space:nowrap}
.prop-hero{background:linear-gradient(120deg,var(--navy),#14233a);color:#fff;padding:46px 20px 36px}
.prop-hero-in{max-width:720px;margin:0 auto}
.prop-hero .eyebrow{color:#9fe7c6}
.prop-hero h1{font-size:32px;margin:8px 0 12px;line-height:1.15}
.prop-lead{color:#cdd9e6;font-size:16px;line-height:1.55;margin:0 0 20px}
.prop-lead b{color:#fff}
.prop-bullets{display:flex;flex-direction:column;gap:9px}
.prop-bullets div{display:flex;align-items:center;gap:9px;font-size:14.5px;color:#eaf3fb}
.prop-bullets b{color:#fff}
.prop-bullets .ic{color:#5fe0ab;flex:none;width:1.1em;height:1.1em}
.prop-form-wrap{max-width:560px;margin:-22px auto 50px;padding:0 18px}
.prop-form{padding:22px}
.prop-form h2{font-size:18px;margin:0 0 14px}
.prop-fine{font-size:12px;color:var(--muted);margin:12px 0 0;line-height:1.5}
.prop-done{text-align:center;padding:20px 8px}
.prop-done-ic{width:60px;height:60px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.prop-done-ic .ic{width:30px;height:30px}
.prop-done h2{margin:0 0 8px}
.prop-done p{color:#3c5066;line-height:1.55;margin:0;max-width:380px;margin:0 auto}

/* Board de dueños — lista en el panel del corredor */
.ob-list{margin-top:10px;display:flex;flex-direction:column;gap:8px}
.ob-lead{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px}
.ob-info b{color:var(--navy);font-size:14px}
.ob-monto{color:var(--green-d);font-weight:700}
.ob-info .muted{font-size:12.5px;margin-top:2px}
.ob-done{font-size:12.5px;font-weight:700;color:var(--green-d);white-space:nowrap}
/* Página del dueño: elegir corredor */
.dueno-wrap{max-width:560px;margin:0 auto;padding:26px 18px 50px}
.dueno-head{margin-bottom:18px}
.dueno-head h1{font-size:24px;margin:6px 0 2px}
.dueno-sub{color:#3c5066;font-size:15px;margin:0 0 16px}
.dueno-card{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin-bottom:12px;box-shadow:var(--shadow)}
.dueno-av{width:48px;height:48px;border-radius:50%;overflow:hidden;flex:none;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}
.dueno-av img{width:100%;height:100%;object-fit:cover}
.dueno-info{flex:1;min-width:0}
.dueno-info b{display:block;color:var(--navy);font-size:15px}
.dueno-info span{font-size:12.5px;color:var(--muted)}
.dueno-verif{color:var(--green-d)}.dueno-verif .ic{width:.85em;height:.85em}
.dueno-done{text-align:center;padding:24px 8px}
.dueno-done-ic{width:60px;height:60px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.dueno-done-ic .ic{width:30px;height:30px}

/* fotos como <img> (indexables por Google Imágenes) — object-fit replica el cover de background */
.pc-img img{width:100%;height:100%;object-fit:cover;display:block}
.d-img{overflow:hidden}
.d-img img{width:100%;height:100%;object-fit:cover;display:block}

/* selector de idioma (multilingüe) */
.lang-sw{display:inline-flex;gap:2px;margin-right:4px;align-items:center}
.lang-sw a{font-size:15px;line-height:1;padding:4px 5px;border-radius:7px;text-decoration:none;opacity:.5;filter:grayscale(.6)}
.lang-sw a.on{opacity:1;filter:none;background:rgba(255,255,255,.14)}
.lang-sw a:hover{opacity:1;filter:none}
@media(max-width:560px){.lang-sw{margin-right:0}.lang-sw a{padding:3px 3px}}

/* switcher de idioma en la página del corredor (sin navbar estándar) */
.cprof-lang{display:flex;justify-content:flex-end;max-width:1100px;margin:0 auto;padding:10px 18px 0}

/* Vistoria (inspección entrada/salida) */
.vst-head{display:flex;align-items:center;gap:12px;margin:4px 0 14px}
.vst-back{cursor:pointer;color:var(--navy);font-weight:600;font-size:14px;white-space:nowrap}
.vst-title{font-size:19px;font-weight:800;color:var(--navy)}
.vst-room{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:12px}
.vst-room-h{font-weight:700;color:var(--navy);margin-bottom:8px}
.vst-base{background:#f0f5fa;border-radius:10px;padding:8px;margin-bottom:8px}
.vst-base>span{font-size:12px;color:#5a7184;font-weight:600;display:block;margin-bottom:4px}
.vst-strip{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.vst-strip img{width:72px;height:72px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
.vst-add{width:72px;height:72px;border:2px dashed #b9c9d6;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#7a93a6}
.vst-add .ic{width:24px;height:24px}
.vst-ph{position:relative;display:inline-block;line-height:0}
.vst-rm{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;border:none;background:var(--red,#d23);color:#fff;font-size:14px;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.vst-count{font-size:11.5px;font-weight:700;color:var(--green-d);background:var(--green-bg);padding:1px 8px;border-radius:999px}
.vst-count.low{color:var(--muted);background:#eef2f7}
.vst-tip{font-size:12.5px;color:var(--muted);margin:-2px 0 8px}
.vst-note{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font:inherit;resize:vertical;min-height:42px}
.vst-calc{margin:10px 0}
.vst-calc>div{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;color:#445}
.vst-calc .vst-neto{border-top:1px solid var(--line);margin-top:4px;padding-top:8px;font-size:16px;font-weight:800;color:var(--navy)}
.vst-locked{opacity:.6}
.vst-deduc-row{display:flex;gap:6px;margin-bottom:6px;align-items:center}
.vst-deduc-row .vd-con{flex:2;min-width:0}
.vst-deduc-row .vd-mon{flex:1;min-width:0}
.vst-deduc-row input{border:1px solid var(--line);border-radius:8px;padding:7px 9px;font:inherit}
.vst-deduc-row .vd-x{background:none;border:none;color:#c0392b;font-size:20px;cursor:pointer;padding:0 4px}

/* Vistoria en portales (inquilino/dueño): firmar */
.vst-portal{margin-top:8px;border-top:1px solid var(--line);padding-top:6px}
.vst-prow{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #eef3f7;flex-wrap:wrap}
.vst-prow:last-child{border-bottom:none}
.vst-pacts{display:flex;gap:6px;align-items:center;flex-wrap:wrap}

/* IA: sugerencias de diff entrada×salida */
.ai-diffs{margin-top:10px;background:#f7fafc;border:1px solid var(--line);border-radius:12px;padding:12px}
.ai-d{padding:6px 0;font-size:13px;border-bottom:1px solid #eef3f7}
.ai-d:last-child{border-bottom:none}

/* Vistoria: chip más visible en la tarjeta de alquiler (descubribilidad) */
.lc-vst{cursor:pointer;background:#eaf6ef;color:#1f7a4d;border:1px solid #c5e6d4;border-radius:8px;padding:4px 10px;font-weight:600;display:inline-flex;align-items:center;gap:5px}
.lc-vst:hover{background:#def0e6}

/* Captación de propietario en la página del corredor */
.cprof-owner{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-top:14px}
.cprof-owner-h{font-weight:700;color:var(--navy);margin-bottom:6px}
.cprof-owner p{font-size:13px;color:#5a7184;margin:0 0 12px;line-height:1.45}

/* Re-publicación al cerrar el alquiler (cierre del ciclo) */
.relist-lead{color:#41566b;line-height:1.5;margin:6px 0 16px}
.relist-acts{display:flex;flex-direction:column;gap:8px}
