/* Clasionce app navegable — design system tomado de /prototipo/ */
:root{
  --ink:#13131a; --ink-soft:#3a3a47; --ink-mute:#6c6c78;
  --paper:#f4f1ea; --paper-2:#ebe6db;
  --red:#e4322b; --red-deep:#b41f1a;
  --green:#1f9d6b; --amber:#f0a830; --blue:#2f6bd4;
  --line:#d8d2c4; --line-soft:#e6e0d2;
  --white:#fffdf8;
  --shadow-sm:0 6px 16px -10px rgba(0,0,0,.3);
  --shadow-md:0 12px 30px -22px rgba(0,0,0,.5);
  --shadow-lg:0 22px 44px -24px rgba(0,0,0,.55);
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{font-family:'Sora',sans-serif;background:var(--paper);color:var(--ink);min-height:100vh;background-image:radial-gradient(circle at 90% 0%,#ece7dc,transparent 50%);}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}

/* Layout */
.wrap{max-width:1180px;margin:0 auto;padding:0 22px;}
.wrap-narrow{max-width:900px;}

/* Header */
.app-header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;backdrop-filter:blur(8px);}
.app-header .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:14px;gap:18px;}
.logo{font-weight:800;font-size:22px;letter-spacing:-1.1px;}
.logo b{color:var(--red);}
.logo .demo{font-family:'Space Mono';font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--red);margin-left:8px;font-weight:700;border:1px solid var(--red);padding:2px 6px;border-radius:6px;vertical-align:middle;}
.nav{display:flex;gap:15px;align-items:center;font-size:13.5px;font-weight:600;color:var(--ink-soft);}
.nav a{transition:color .15s;}
.nav a.active,.nav a:hover{color:var(--ink);}
.nav a.active{position:relative;}
.nav a.active::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--red);border-radius:2px;}
.nav-btn{background:var(--ink);color:var(--paper);padding:8px 16px;border-radius:10px;font-weight:700;font-size:13px;}
.nav-btn:hover{color:var(--paper);}

/* Dropdown "Productos" (Mercado Emprendedor / Feria Americana) */
.nav-dd{position:relative;display:flex;align-items:center;}
.nav-dd-toggle{display:inline-flex;align-items:center;gap:5px;}
.nav-dd-toggle .cv{font-size:9px;transition:transform .18s;opacity:.7;}
.nav-dd:hover .nav-dd-toggle .cv,.nav-dd:focus-within .nav-dd-toggle .cv{transform:rotate(180deg);}
.nav-dd-menu{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%) translateY(6px);min-width:236px;background:var(--white);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-md);padding:6px;display:flex;flex-direction:column;gap:2px;opacity:0;visibility:hidden;transition:opacity .15s,transform .15s;z-index:50;}
.nav-dd-menu::before{content:"";position:absolute;top:-12px;left:0;right:0;height:14px;}
.nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}
.nav-dd-menu a{display:flex;flex-wrap:wrap;align-items:center;gap:1px 7px;padding:9px 12px;border-radius:9px;color:var(--ink);font-size:13.5px;font-weight:700;}
.nav-dd-menu a:hover{background:var(--paper-2);color:var(--ink);}
.nav-dd-menu a small{flex-basis:100%;font-family:'Space Mono',monospace;font-size:9.5px;font-weight:400;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-mute);}
/* Encabezados de sección del menú (Tu actividad / Tus ventas / Cuenta). */
.nav-dd-head{font:700 9.5px/1 'Space Mono',monospace;text-transform:uppercase;letter-spacing:.8px;color:var(--ink-mute);padding:9px 12px 3px;opacity:.6;}
.nav-dd-menu>.nav-dd-head:first-child{padding-top:4px;}
/* Encabezado de usuario en el menú de cuenta (deja claro quién está logueado). */
.nav-dd-user{display:flex;align-items:center;gap:10px;padding:6px 12px 11px;margin-bottom:3px;border-bottom:1px solid var(--line-soft);}
.nav-dd-user-ic{font-size:27px;color:var(--ink-mute);line-height:1;}
.nav-dd-user-tx{display:flex;flex-direction:column;min-width:0;}
.nav-dd-user-tx b{font-size:14px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:175px;}
.nav-dd-user-tx small{font-family:'Space Mono',monospace;font-size:9px;text-transform:uppercase;letter-spacing:.6px;color:var(--ink-mute);}
.nav-dd-menu a.active{color:var(--red);}
.nav-dd-menu a.active::after{display:none;}
/* Submenú anidado: secundarias agrupadas ("Mi negocio") */
.nav-dd-sub{position:relative;}
.nav-dd-sub-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:1px 7px;padding:9px 28px 9px 12px;border-radius:9px;color:var(--ink);font-size:13.5px;font-weight:700;cursor:default;}
.nav-dd-sub-toggle small{flex-basis:100%;}
.nav-dd-sub-toggle::after{content:"‹";position:absolute;right:11px;top:50%;transform:translateY(-50%);font-size:15px;font-weight:700;opacity:.55;}
.nav-dd-sub:hover>.nav-dd-sub-toggle{background:var(--paper-2);}
.nav-dd-sub-toggle small{font-family:'Space Mono',monospace;font-size:9.5px;font-weight:400;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-mute);}
.nav-dd-sub-menu{position:absolute;top:-7px;right:calc(100% + 7px);min-width:230px;background:var(--white);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-md);padding:6px;display:flex;flex-direction:column;gap:2px;opacity:0;visibility:hidden;transform:translateX(6px);transition:opacity .15s,transform .15s;z-index:60;}
.nav-dd-sub-menu::before{content:"";position:absolute;top:0;right:-12px;width:14px;height:100%;}
.nav-dd-sub:hover .nav-dd-sub-menu{opacity:1;visibility:visible;transform:translateX(0);}
.nav-dd-sub-menu a{display:flex;flex-direction:column;gap:1px;padding:9px 12px;border-radius:9px;color:var(--ink);font-size:13.5px;font-weight:700;}
.nav-dd-sub-menu a:hover{background:var(--paper-2);}
.nav-dd-sub-menu a small{font-family:'Space Mono',monospace;font-size:9.5px;font-weight:400;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-mute);}
/* Salir: separador + ítem alineado con el resto + icono */
.nav-dd-logout{margin-top:4px;padding-top:6px;border-top:1px solid var(--line-soft);}
.nav-dd-logout button{display:flex;align-items:center;gap:9px;width:100%;padding:9px 12px;border-radius:9px;background:none;border:0;cursor:pointer;color:var(--ink);font-size:13.5px;font-weight:700;font-family:inherit;text-align:left;}
.nav-dd-logout button:hover{background:var(--paper-2);color:var(--red);}
.nav-dd-logout button i{font-size:13px;opacity:.8;width:16px;text-align:center;}

/* Hamburguesa (oculta en desktop) */
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:38px;border-radius:10px;flex:0 0 42px;}
.nav-toggle span{display:block;width:22px;height:2.5px;margin:0 auto;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s;}
.nav-toggle.on span:nth-child(1){transform:translateY(7.5px) rotate(45deg);}
.nav-toggle.on span:nth-child(2){opacity:0;}
.nav-toggle.on span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg);}
.nav-icon .ilbl{display:none;}

/* ===== Barra de herramientas del panel (cuenta/negocio) ===== */
.app-header--panel .wrap{gap:12px;}
.panel-nav{display:flex;align-items:stretch;justify-content:space-between;flex:1;min-width:0;gap:8px;}
.panel-nav-tools{display:flex;align-items:stretch;gap:1px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;}
.panel-nav-tools::-webkit-scrollbar{display:none;}
.panel-nav-side{display:flex;align-items:stretch;gap:1px;flex:0 0 auto;padding-left:8px;border-left:1px solid var(--line);}
.panel-tool{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;flex:0 0 auto;min-width:54px;padding:7px 6px 6px;border-radius:10px;color:var(--ink-soft);text-align:center;transition:background .14s,color .14s;}
.panel-tool:hover{background:var(--paper-2);color:var(--ink);}
.panel-tool .pt-ico{position:relative;font-size:17px;line-height:1;height:19px;display:flex;align-items:center;}
.panel-tool .pt-lbl{font-family:'Space Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.2px;text-transform:uppercase;white-space:nowrap;}
.panel-tool.active{background:var(--white);color:var(--red);box-shadow:var(--shadow-sm);}
/* Publicar: CTA destacado (leitmotiv). Rojo lleno; se mantiene al estar activo. */
.panel-tool--cta{background:var(--red);color:#fff;box-shadow:var(--shadow-sm);}
.panel-tool--cta:hover{background:var(--red-deep,#c2261f);color:#fff;}
.panel-tool--cta.active{background:var(--red);color:#fff;}
.panel-tool .pt-badge{position:absolute;top:-7px;right:-10px;}
.panel-tool--exit{color:var(--ink-mute);}
.panel-tool--exit:hover{color:var(--red);background:var(--paper-2);}

/* ===== Header responsive: menú hamburguesa ===== */
@media(max-width:1024px){
  .app-header .wrap{gap:10px;}
  .nav-toggle{display:flex;}
  /* Accesos rápidos siempre visibles en la barra (no enterrados en el hamburguesa).
     Prefijo .app-header para ganarle en especificidad al `.nav-actions{display:none}`
     default, que está más abajo en el archivo (misma especificidad → ganaría el último). */
  .app-header .nav-actions{display:flex;align-items:center;gap:2px;margin-left:auto;}
  .nav-actions .nav-icon{width:40px;height:40px;}
  /* Sus equivalentes dentro del hamburguesa se ocultan (evitar duplicado). */
  .nav .nav-icon-dup{display:none;}
  .nav{
    display:none;position:absolute;top:100%;left:0;right:0;z-index:40;
    background:var(--paper);border-bottom:1px solid var(--line);
    flex-direction:column;align-items:stretch;gap:0;
    padding:6px 22px 18px;box-shadow:var(--shadow-md);
  }
  .nav.open{display:flex;}
  .nav>a{display:flex;align-items:center;width:100%;padding:14px 2px;border-bottom:1px solid var(--line-soft);font-size:15.5px;color:var(--ink);}
  .nav a.active::after{display:none;}
  .nav>a.nav-icon{height:auto;border:0;border-bottom:1px solid var(--line-soft);border-radius:0;justify-content:flex-start;gap:12px;color:var(--ink);font-size:15.5px;}
  .nav>a.nav-icon:hover{background:none;}
  .nav>a.nav-icon .ilbl{display:inline;font-weight:600;white-space:nowrap;}
  .nav>a.nav-icon .nav-badge{position:static !important;margin-left:auto;}
  .nav>a.nav-cta{color:#fff;border-bottom:none;align-self:flex-start;width:auto;margin-top:12px;padding:11px 18px;font-size:14px;}
  .nav>a.nav-btn{color:var(--paper);border-bottom:none;align-self:flex-start;width:auto;margin-top:10px;padding:11px 18px;font-size:14px;}
  /* Dropdown plano en mobile: items siempre visibles, indentados */
  .nav-dd{display:block;width:100%;}
  .nav-dd-toggle{display:flex;align-items:center;width:100%;padding:14px 2px;border-bottom:1px solid var(--line-soft);font-size:15.5px;color:var(--ink);}
  .nav-dd-toggle .cv{display:none;}
  .nav-dd-menu{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;border:0;background:none;padding:0 0 0 16px;min-width:0;border-radius:0;gap:0;}
  .nav-dd-menu::before{display:none;}
  .nav-dd-menu a{padding:12px 2px;border-bottom:1px solid var(--line-soft);border-radius:0;font-weight:600;}
  .nav-dd-menu a small{display:none;}
  /* Submenú: en mobile se aplana e indenta junto al resto */
  .nav-dd-sub-toggle{padding:12px 2px;border-bottom:1px solid var(--line-soft);font-weight:700;color:var(--ink-mute);font-size:13px;text-transform:uppercase;letter-spacing:.5px;}
  .nav-dd-sub-toggle::after{display:none;}
  .nav-dd-sub-toggle small{display:none;}
  .nav-dd-sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:none;padding:0 0 0 16px;min-width:0;border-radius:0;gap:0;}
  .nav-dd-sub-menu::before{display:none;}
  .nav-dd-sub-menu a{padding:12px 2px;border-bottom:1px solid var(--line-soft);border-radius:0;font-weight:600;}
  .nav-dd-sub-menu a small{display:none;}
}

/* ===== Searchbar responsive: full-width en mobile ===== */
.searchbar input{min-width:0;}
@media(max-width:600px){
  .searchbar{flex-direction:column;align-items:stretch;gap:8px;padding:10px;}
  .searchbar select{border-right:none;width:100%;background:var(--paper-2);border-radius:10px;padding:12px 14px;}
  .searchbar input{width:100%;background:var(--paper-2);border-radius:10px;padding:13px 14px;}
  .searchbar button{width:100%;justify-content:center;padding:14px;}
  .bsq-bar{flex-wrap:wrap;}
  .bsq-bar input{flex:1 1 60%;}
}

/* Selector de localidad en el buscador */
.bsq-bar .bsq-loc{appearance:none;background:var(--paper-2);border:1px solid var(--line);border-radius:12px;font-family:inherit;font-size:13.5px;font-weight:700;color:var(--ink);padding:11px 12px;cursor:pointer;outline:none;flex:0 0 auto;max-width:44%;}
.bsq-bar .bsq-loc:focus{border-color:var(--red);}
.bsq-bar .sb-loc-pin.bsq{display:inline-flex;align-items:center;color:var(--red);margin-left:2px;}

/* Botón selector de localidad (abre el picker) — mismo chip en home, buscador, desktop y mobile.
   Especificidad alta para ganarle al estilo rojo de `.searchbar button` (el botón Buscar). */
.searchbar .sb-loc-btn,.bsq-bar .sb-loc-btn{
  display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;
  background:var(--paper-2);color:var(--ink);border:1px solid var(--line);border-radius:12px;
  font-family:inherit;font-size:13.5px;font-weight:700;padding:10px 13px;cursor:pointer;white-space:nowrap;
}
.searchbar .sb-loc-btn:hover,.bsq-bar .sb-loc-btn:hover{border-color:var(--ink-mute);}
.sb-loc-btn .pin{color:var(--red);display:inline-flex;align-items:center;}
.sb-loc-btn .car{color:var(--ink);}
.sb-loc-btn .chev{color:var(--ink-mute);font-size:11px;}
.bsq-bar .sb-loc-btn{max-width:46%;}
.sb-loc-btn .car{overflow:hidden;text-overflow:ellipsis;}
@media(max-width:600px){
  .searchbar .sb-loc-btn{width:100%;justify-content:flex-start;}
}

/* Hero (home) */
.hero{padding:64px 0 36px;}
.hero .eyebrow{font-family:'Space Mono';font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:14px;}
.hero h1{font-size:56px;line-height:1.02;font-weight:800;letter-spacing:-2.4px;max-width:780px;}
.hero h1 em{font-style:normal;color:var(--red);}
.hero p{font-size:17px;color:var(--ink-soft);line-height:1.5;margin-top:18px;max-width:600px;}
@media(max-width:700px){.hero h1{font-size:38px;letter-spacing:-1.6px;} .hero{padding:36px 0 24px;}}

/* Search bar */
.searchbar{margin-top:30px;background:var(--white);border:1px solid var(--line);border-radius:18px;padding:8px;box-shadow:var(--shadow-md);display:flex;gap:6px;align-items:center;max-width:680px;}
.searchbar select{appearance:none;background:transparent;border:none;font-family:inherit;font-size:13px;font-weight:700;color:var(--ink);padding:10px 12px 10px 16px;border-right:1px solid var(--line);cursor:pointer;outline:none;}
.searchbar input{flex:1;border:1px solid var(--line);background:var(--paper);border-radius:11px;font-family:inherit;font-size:15px;padding:12px 14px;outline:none;color:var(--ink);transition:border-color .15s,background .15s;}
.searchbar input:focus{border-color:var(--ink-mute);background:var(--white);}
.searchbar input::placeholder{color:var(--ink-mute);}
.searchbar button{background:var(--red);color:white;padding:12px 22px;border-radius:12px;font-weight:700;font-size:14px;transition:background .15s;}
.searchbar button:hover{background:var(--red-deep);}

/* Section heading */
.section{padding:46px 0;}
.section + .section{padding-top:0;}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:22px;gap:16px;flex-wrap:wrap;}
.section-head h2{font-size:30px;font-weight:800;letter-spacing:-1.2px;}
.section-head .gt-eyebrow{font-family:'Space Mono';font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:6px;}
.section-head .see-all{font-size:13px;font-weight:700;color:var(--red);display:inline-flex;align-items:center;gap:6px;}
.section-head .see-all:hover{color:var(--red-deep);}
.see-more-wrap{text-align:center;margin-top:26px;}
.see-more{display:inline-flex;align-items:center;gap:9px;background:var(--white);border:1px solid var(--line);border-radius:30px;padding:13px 28px;font-weight:700;font-size:14px;color:var(--ink);box-shadow:var(--shadow-sm);transition:border-color .15s,color .15s,transform .1s;}
/* El atributo [hidden] (display:none de UA) lo pisa .see-more (misma especificidad). Esta
   regla lo restaura: sin esto, los botones "Ver más" no se ocultaban nunca. */
.see-more[hidden]{display:none;}
.see-more:hover{border-color:var(--red);color:var(--red);transform:translateY(-2px);}
.see-more:active{transform:translateY(0);}
.section-head .reset-filters{cursor:pointer;}
.section-head .reset-filters:hover h2{color:var(--red-deep);}
.section-head .reset-filters:hover .gt-eyebrow{opacity:.7;}
.section-head .results{font-family:'Space Mono';font-size:11.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-soft);font-weight:700;white-space:nowrap;}
.section-head .results b{color:var(--red);font-size:18px;letter-spacing:0;}

/* Card grid */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:22px;}
.grid-2{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));}

/* Card de aviso */
.card{background:var(--white);border:1px solid rgba(0,0,0,.06);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-md);transition:transform .18s,box-shadow .18s;display:flex;flex-direction:column;text-decoration:none;color:inherit;}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);}
.card .ph{position:relative;aspect-ratio:4/3;background:var(--paper-2);overflow:hidden;}
.card .ph-track{display:flex;width:100%;height:100%;transition:transform .45s cubic-bezier(.22,.61,.36,1);will-change:transform;}
.card .ph-track img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;transition:transform .35s;}
.card:hover .ph-track img{transform:scale(1.04);}
.card .ph .ph-nav{position:absolute;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background:rgba(255,253,248,.92);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;padding-bottom:2px;box-shadow:0 2px 8px -2px rgba(0,0,0,.45);opacity:0;transition:opacity .15s,background .15s;z-index:4;}
.card .ph .ph-nav:hover{background:#fff;}
.card .ph .ph-nav.prev{left:8px;}
.card .ph .ph-nav.next{right:8px;}
.card:hover .ph .ph-nav{opacity:1;}
.card .ph .ph-dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:5px;z-index:4;}
.card .ph .ph-dots span{width:6px;height:6px;border-radius:50%;background:rgba(255,253,248,.55);transition:background .15s;}
.card .ph .ph-dots span.on{background:#fff;}
@media(hover:none){.card .ph .ph-nav{opacity:.85;}}
.card .ph .price-tag{position:absolute;left:12px;bottom:12px;background:rgba(19,19,26,.92);color:white;font-weight:800;font-size:14px;padding:7px 11px;border-radius:10px;letter-spacing:-.3px;backdrop-filter:blur(4px);z-index:3;}
.card .ph .price-tag .cur{font-family:'Space Mono';font-size:10px;font-weight:700;opacity:.7;margin-right:3px;}
.card .ph .badge{position:absolute;top:10px;right:10px;background:rgba(255,253,248,.95);color:var(--ink);font-family:'Space Mono';font-size:10px;font-weight:700;letter-spacing:.5px;padding:5px 9px;border-radius:8px;text-transform:uppercase;}
.card .ph .badge.alq{background:var(--blue);color:white;}
.card .ph .badge.usd{background:var(--green);color:white;}
.card .ph .badge.brand{background:var(--red);color:#fff;text-transform:none;letter-spacing:0;font-family:'Sora',sans-serif;font-size:11.5px;font-weight:700;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 11px;border-radius:10px;left:auto;box-shadow:0 2px 8px -2px rgba(228,50,43,.4);}
.card .ph .badge.brand.particular{background:rgba(255,253,248,.95);color:var(--ink-soft);font-weight:700;}
.card .ph .price-tag .per-mes{font-family:'Space Mono';font-size:9px;font-weight:700;margin-left:4px;opacity:.7;letter-spacing:.5px;text-transform:uppercase;}
.card .ph .price-tag .pt-op{display:block;font-family:'Space Mono';font-size:9px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;margin-bottom:2px;color:#ffd9a3;}
.card .ph .price-tag .pt-op.alq{color:#9ec3ff;}
/* Precio de oferta: original tachado + oferta resaltada */
.price-old{text-decoration:line-through;opacity:.55;font-weight:700;margin-right:7px;}
.price-old .cur{opacity:.5;}
.price-oferta{color:#ffb4a0;}
.price-line .price-oferta{color:#ff7a5c;}
.card .ph .price-tag .price-old{font-size:.78em;}
.card .ph .badge-oferta{position:absolute;top:10px;left:10px;background:var(--red);color:#fff;font-family:'Space Mono';font-size:10px;font-weight:700;letter-spacing:.5px;padding:5px 9px;border-radius:8px;text-transform:uppercase;box-shadow:0 2px 8px -2px rgba(228,50,43,.5);z-index:3;}
.card .ph .badge-oferta i{margin-right:3px;}
/* Destacado: estrellita roja. Se apila con la Oferta en la esquina superior izquierda. */
.card .ph .badge-stack{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:6px;align-items:flex-start;z-index:3;}
.card .ph .badge-stack .badge-oferta{position:static;top:auto;left:auto;}
/* Estrellita compacta (solo ícono) para no chocar con el nombre de la tienda. */
.card .ph .badge-destacado{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;background:var(--red);border-radius:8px;box-shadow:0 2px 10px -2px rgba(228,50,43,.6);}
.card .ph .badge-destacado i{margin:0;color:#ffd54a;font-size:13px;}
.card.is-destacado{border-color:rgba(228,50,43,.55);box-shadow:0 0 0 2px rgba(228,50,43,.45),var(--shadow-md);}
.card.is-destacado:hover{box-shadow:0 0 0 2px rgba(228,50,43,.55),var(--shadow-lg);}
.card .b{padding:14px 16px 18px;display:flex;flex-direction:column;gap:7px;flex:1;}
.card .b .title{font-size:14.5px;font-weight:700;line-height:1.3;letter-spacing:-.3px;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px;}
.card .b .meta{font-size:11.5px;color:var(--ink-mute);font-family:'Space Mono';letter-spacing:.4px;text-transform:uppercase;font-weight:700;display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.card .b .meta .dot{width:3px;height:3px;border-radius:50%;background:var(--line);}
.card .b .meta .neg-chip{background:var(--green);color:#fff;border-radius:6px;padding:1px 7px;font-size:10px;letter-spacing:.5px;}
.card .b .loc{font-size:13px;color:var(--ink-soft);display:flex;align-items:center;gap:5px;margin-top:auto;padding-top:4px;}
.card .b .loc svg{flex:0 0 12px;}

/* Filtros */
.filters{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:14px 18px;box-shadow:var(--shadow-sm);margin-bottom:26px;display:flex;gap:18px;align-items:center;flex-wrap:wrap;}
.filters .results{font-family:'Space Mono';font-size:11.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-soft);font-weight:700;}
.filters .results b{color:var(--red);font-size:14px;letter-spacing:0;}
.filters .results .results-pg{opacity:.7;font-size:10.5px;}
.filters .group{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.filters label{font-size:12px;color:var(--ink-mute);font-weight:600;}
.filters select,.filters input[type=text]{background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:600;color:var(--ink);outline:none;cursor:pointer;transition:border-color .15s;}
.filters select:focus,.filters input[type=text]:focus{border-color:var(--red);}
.filters .clear{font-size:12px;color:var(--red);font-weight:700;margin-left:auto;}
/* Búsqueda con botón (Enter o clic) */
.filters .group.search{gap:0;background:var(--paper);border:1px solid var(--line);border-radius:9px;overflow:hidden;transition:border-color .15s;}
.filters .group.search:focus-within{border-color:var(--red);}
.filters .group.search input[type=text]{background:none;border:0;border-radius:0;padding:7px 12px;min-width:180px;cursor:text;}
.filters .filters-go{display:inline-flex;align-items:center;justify-content:center;border:0;background:var(--red);color:#fff;padding:0 13px;align-self:stretch;font-size:13px;cursor:pointer;transition:background .15s;}
.filters .filters-go:hover{background:#b8281f;}
/* Precio: Mín – Máx con estilo de input */
.filters .group.precio input[type=number]{background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:7px 10px;width:88px;font-family:inherit;font-size:13px;font-weight:600;color:var(--ink);outline:none;text-align:right;transition:border-color .15s;-moz-appearance:textfield;}
.filters .group.precio input[type=number]::-webkit-outer-spin-button,.filters .group.precio input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.filters .group.precio input[type=number]:focus{border-color:var(--red);}
.filters .group.precio .precio-dash{color:var(--ink-mute);font-weight:700;}

/* Detalle */
.detail{padding:30px 0 50px;}
.crumbs{font-family:'Space Mono';font-size:11px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-mute);font-weight:700;margin-bottom:18px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.crumbs a{color:var(--ink-mute);transition:color .15s;}
.crumbs a:hover{color:var(--red);}
.crumbs .sep{color:var(--line);}
.crumbs .current{color:var(--ink);}

.detail-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:36px;align-items:start;}
@media(max-width:900px){.detail-grid{grid-template-columns:1fr;gap:28px;}}

.gallery{display:flex;flex-direction:column;gap:10px;}
.gallery .main{aspect-ratio:4/3;background:var(--paper-2);border-radius:18px;overflow:hidden;position:relative;box-shadow:var(--shadow-md);}
.gallery .main img{width:100%;height:100%;object-fit:cover;}
.gallery .main .navbtn{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;background:rgba(255,253,248,.95);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;box-shadow:var(--shadow-sm);transition:background .15s;}
.gallery .main .navbtn:hover{background:var(--white);}
.gallery .main .navbtn.prev{left:14px;}
.gallery .main .navbtn.next{right:14px;}
.gallery .main .counter{position:absolute;bottom:14px;right:14px;background:rgba(19,19,26,.85);color:white;font-family:'Space Mono';font-size:11px;font-weight:700;padding:5px 10px;border-radius:8px;letter-spacing:.5px;}
.gallery .thumbs{display:flex;gap:8px;flex-wrap:wrap;}
.gallery .thumb{width:80px;aspect-ratio:4/3;border-radius:10px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .15s;background:var(--paper-2);}
.gallery .thumb.active{border-color:var(--red);}
.gallery .thumb img{width:100%;height:100%;object-fit:cover;}

.detail-info .price-box{background:var(--ink);color:var(--paper);border-radius:16px;padding:22px 24px;box-shadow:var(--shadow-md);}
.detail-info .price-box .cur{font-family:'Space Mono';font-size:13px;letter-spacing:1px;color:var(--amber);font-weight:700;text-transform:uppercase;}
.detail-info .price-box .amount{font-size:42px;font-weight:800;letter-spacing:-1.8px;margin-top:6px;line-height:1;}
.detail-info .price-box .price-ars{margin-top:4px;font-family:'Space Mono';font-size:14px;font-weight:700;color:#cfc9bd;letter-spacing:-.3px;}
.detail-info .price-box .op{margin-top:12px;font-size:13px;color:#a8a39a;font-weight:600;}
.detail-info .price-box .price-negot{margin-top:12px;display:inline-flex;align-items:center;gap:7px;background:rgba(240,168,48,.16);color:var(--amber);border:1px solid rgba(240,168,48,.35);border-radius:30px;padding:6px 12px;font-size:12.5px;font-weight:700;}
.detail-info .price-box .price-negot svg{width:14px;height:14px;flex:0 0 14px;}
.detail-info .price-box .price-negot span{color:#a8a39a;font-weight:600;}
.detail-info .price-box .contact-vendor{margin-top:16px;width:100%;background:var(--red);color:#fff;border-radius:12px;padding:13px;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .15s,transform .1s;}
.detail-info .price-box .contact-vendor:hover{background:var(--red-deep);}
.detail-info .price-box .contact-vendor:active{transform:scale(.98);}
.detail-info .price-box .contact-vendor.sent{background:rgba(255,253,248,.12);color:var(--paper);cursor:default;}
.detail-info .price-box .contact-reveal{margin-top:12px;font-size:12.5px;color:#b5b0a6;line-height:1.45;}
.detail-info h1{font-size:30px;font-weight:800;letter-spacing:-1.2px;line-height:1.1;margin-top:22px;}
.detail-info .loc-big{margin-top:12px;font-size:14px;color:var(--ink-soft);display:flex;align-items:center;gap:6px;font-weight:600;}
.detail-info .meta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.detail-info .chip{background:var(--paper-2);border:1px solid var(--line);border-radius:20px;padding:6px 12px;font-size:12px;font-weight:700;color:var(--ink-soft);display:inline-flex;align-items:center;gap:6px;}
.detail-info .chip.high{background:var(--red);color:white;border-color:var(--red);}
.detail-info .vendor{margin-top:22px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:flex;gap:12px;align-items:center;}
.detail-info .vendor .av{width:42px;height:42px;border-radius:50%;background:var(--paper-2);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--red);font-size:18px;flex:0 0 42px;}
.detail-info .vendor .v-meta .role{font-family:'Space Mono';font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--ink-mute);font-weight:700;}
.detail-info .vendor .v-meta{flex:1;min-width:0;}
.detail-info .vendor .v-meta .name{font-weight:700;font-size:14px;margin-top:2px;}
.detail-info .vendor .msg-vendor{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;background:var(--paper-2);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:9px 13px;font-weight:700;font-size:13px;transition:.15s;}
.detail-info .vendor .msg-vendor:hover{background:var(--line);}
.detail-info .msg-vendor-cta{margin-top:12px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--red);color:#fff;border-radius:12px;padding:14px;font-weight:700;font-size:14.5px;cursor:pointer;box-shadow:0 12px 26px -12px rgba(228,50,43,.7);transition:background .15s;}
.detail-info .msg-vendor-cta:hover{background:var(--red-deep);color:#fff;}

/* Reveal-on-scroll (cards aparecen al scrollear) */
.card.reveal{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease;}
.card.reveal.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){.card.reveal{opacity:1;transform:none;transition:none;}}
.load-sentinel{height:1px;width:100%;}

/* Caja de mensaje inline (al pie de la ficha) */
.msg-inline{margin-top:24px;background:var(--white);border:1px solid var(--line-soft);border-radius:18px;padding:22px 24px;}
.msg-inline .mh{display:flex;align-items:center;gap:9px;font-size:15px;font-weight:700;letter-spacing:-.3px;margin-bottom:16px;color:var(--ink);}
.msg-inline .mh svg{color:var(--red);}
.msg-inline .mh b{font-weight:800;}

/* Modal "Enviar mensaje al vendedor" */
.msg-modal{position:fixed;inset:0;background:rgba(19,19,26,.55);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:70;padding:20px;}
.msg-modal.show{display:flex;}
.msg-card{width:100%;max-width:460px;background:var(--white);border-radius:22px;box-shadow:var(--shadow-lg);padding:24px;position:relative;max-height:92vh;overflow-y:auto;}
.msg-x{position:absolute;top:14px;right:16px;font-size:24px;line-height:1;color:var(--ink-mute);width:32px;height:32px;border-radius:50%;}
.msg-x:hover{background:var(--paper-2);color:var(--ink);}
.msg-h{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.msg-h .av{width:46px;height:46px;flex:0 0 46px;border-radius:50%;background:linear-gradient(135deg,#c9402f,#8a2a1f);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;}
.msg-h .hi .rol{font-family:'Space Mono';font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-mute);font-weight:700;}
.msg-h .hi .nm{font-size:18px;font-weight:800;letter-spacing:-.5px;margin-top:1px;}
.msg-item{display:flex;align-items:center;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:10px;margin-bottom:16px;}
.msg-item .ph{width:56px;height:44px;flex:0 0 56px;border-radius:9px;background-size:cover;background-position:center;background-color:var(--paper-2);}
.msg-item .it{min-width:0;}
.msg-item .it .t{font-size:13px;font-weight:700;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.msg-item .it .p{font-size:12px;color:var(--ink-soft);margin-top:3px;font-weight:600;}
.msg-sug{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;}
.msg-sug .chip{background:var(--white);border:1.5px solid var(--line);border-radius:30px;padding:8px 13px;font-size:12.5px;font-weight:600;color:var(--ink-soft);transition:.15s;}
.msg-sug .chip:hover{border-color:var(--ink);color:var(--ink);}
.msg-ta{width:100%;border:1.5px solid var(--line);background:var(--paper);border-radius:14px;padding:13px 15px;font-family:'Sora';font-size:14px;color:var(--ink);line-height:1.5;resize:vertical;min-height:96px;}
.msg-ta:focus{outline:none;border-color:var(--ink);background:var(--white);}
.msg-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;}
.msg-foot .hint{font-size:11px;color:var(--ink-mute);font-family:'Space Mono';letter-spacing:.3px;}
.msg-send{display:inline-flex;align-items:center;gap:8px;background:var(--red);color:#fff;border-radius:13px;padding:13px 20px;font-weight:700;font-size:14px;box-shadow:0 12px 26px -12px rgba(228,50,43,.7);transition:background .15s;}
.msg-send:hover{background:var(--red-deep);}
.msg-ok{text-align:center;padding:14px 6px;}
.msg-ok .ring{width:74px;height:74px;border-radius:50%;background:var(--green);color:#fff;font-size:38px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;box-shadow:0 16px 34px -14px rgba(31,157,107,.6);}
.msg-ok h3{font-size:21px;font-weight:800;letter-spacing:-.6px;}
.msg-ok p{font-size:13.5px;color:var(--ink-soft);line-height:1.5;margin:10px auto 0;max-width:330px;}
.msg-ok .go{margin-top:18px;background:var(--ink);color:var(--paper);border-radius:13px;padding:13px 24px;font-weight:700;font-size:14px;}

.descripcion{margin-top:32px;padding:24px;background:var(--white);border:1px solid var(--line-soft);border-radius:18px;}
.descripcion h3{font-size:13px;font-family:'Space Mono';text-transform:uppercase;letter-spacing:1.4px;color:var(--red);font-weight:700;margin-bottom:14px;}
.descripcion p{font-size:14.5px;line-height:1.6;color:var(--ink-soft);white-space:pre-wrap;}

.source-link{margin-top:24px;font-size:12.5px;color:var(--ink-mute);display:flex;align-items:center;gap:6px;}
.source-link a{color:var(--red);font-weight:700;}

/* Badge "acepta permuta" sobre la galería */
.gallery .main .perm-badge{position:absolute;left:14px;bottom:14px;background:var(--ink);color:var(--paper);font-family:'Space Mono';font-size:11px;font-weight:700;letter-spacing:.5px;padding:7px 11px;border-radius:9px;display:flex;align-items:center;gap:6px;box-shadow:var(--shadow-sm);}
.gallery .main .perm-badge b{color:var(--amber);}

/* Bloque permuta en detalle */
.permblock{margin-top:32px;background:linear-gradient(125deg,var(--ink),#26262f);border-radius:22px;padding:26px 28px;color:var(--paper);position:relative;overflow:hidden;box-shadow:var(--shadow-md);}
.permblock::after{content:"⇄";position:absolute;right:-10px;bottom:-46px;font-size:190px;color:rgba(228,50,43,.13);font-weight:700;line-height:1;pointer-events:none;}
.permblock .pblbl{font-family:'Space Mono';font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--amber);font-weight:700;display:flex;align-items:center;gap:8px;position:relative;z-index:2;}
.permblock h3{font-size:24px;font-weight:800;letter-spacing:-.8px;margin-top:10px;line-height:1.12;position:relative;z-index:2;}
.permblock .psub{font-size:13.5px;color:#b5b0a6;margin-top:8px;line-height:1.45;position:relative;z-index:2;max-width:560px;}
.perm-acc{margin-top:20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:11px;position:relative;z-index:2;}
.acccard{background:rgba(255,253,248,.07);border:1px solid rgba(255,253,248,.12);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px;}
.acccard.off{opacity:.42;}
.acccard .aic{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:17px;background:rgba(31,157,107,.2);}
.acccard.off .aic{background:rgba(228,50,43,.18);}
.acccard .al{font-size:14px;font-weight:700;color:var(--white);}
.acccard .as{font-size:11.5px;color:#a8a39a;line-height:1.35;}
.perm-diff{margin-top:18px;background:rgba(255,253,248,.08);border:1px solid rgba(255,253,248,.14);border-radius:13px;padding:14px 16px;position:relative;z-index:2;}
.perm-diff .dt{font-size:11px;color:#a8a39a;font-weight:700;font-family:'Space Mono';letter-spacing:.5px;text-transform:uppercase;}
.perm-diff .dv{font-size:15px;font-weight:600;margin-top:5px;line-height:1.4;}
.perm-diff .dv span{color:var(--amber);font-weight:700;}
.perm-cta{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap;align-items:center;position:relative;z-index:2;}
.perm-cta .btn{background:var(--red);color:#fff;border-radius:13px;padding:14px 22px;font-weight:700;font-size:14.5px;display:inline-flex;align-items:center;gap:9px;box-shadow:0 14px 28px -14px rgba(228,50,43,.8);transition:background .15s,transform .1s;}
.perm-cta .btn:hover{background:var(--red-deep);}
.perm-cta .btn:active{transform:scale(.98);}
.perm-cta .sub{font-size:12px;color:#a8a39a;line-height:1.4;max-width:320px;}

/* ===================== PERMUTAS ===================== */
.perm-page{padding:30px 0 50px;}
.perm-page .eyebrow{font-family:'Space Mono';font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--red);font-weight:700;}
.perm-page h1{font-size:38px;font-weight:800;letter-spacing:-1.6px;margin-top:8px;line-height:1.04;}
.perm-page h1 em{font-style:normal;color:var(--red);}
.perm-page .lead{font-size:15px;color:var(--ink-soft);margin-top:12px;max-width:620px;line-height:1.5;}
@media(max-width:700px){.perm-page h1{font-size:28px;letter-spacing:-1px;}}

/* Toggle Autos/Inmuebles */
.perm-toggle{display:flex;gap:6px;background:var(--paper-2);padding:6px;border-radius:16px;margin:4px 0 22px;max-width:760px;border:1px solid var(--line);}
.perm-toggle a{flex:1;justify-content:center;padding:14px 18px;border-radius:11px;font-weight:700;font-size:15px;color:var(--ink-soft);display:inline-flex;align-items:center;gap:8px;transition:.15s;}
.perm-toggle a:hover{color:var(--ink);}
.perm-toggle a.on{background:var(--white);color:var(--ink);box-shadow:var(--shadow-sm);}
@media(max-width:560px){.perm-toggle a{padding:12px 8px;font-size:13px;gap:5px;}}

/* Selector destacado de localidad (inmuebles) */
.loc-feature{display:flex;align-items:center;gap:14px;width:100%;max-width:760px;background:var(--white);border:1.5px solid var(--ink);border-radius:14px;padding:13px 18px;margin-bottom:14px;text-align:left;cursor:pointer;transition:.15s;box-shadow:var(--shadow-sm);}
.loc-feature:hover{background:var(--paper-2);}
.loc-feature .pin{display:inline-flex;color:var(--red);font-size:20px;}
.loc-feature .lf-text{display:flex;flex-direction:column;line-height:1.2;flex:1;min-width:0;}
.loc-feature .lf-text small{font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-mute);}
.loc-feature .lf-text b{font-size:19px;font-weight:800;letter-spacing:-.5px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.loc-feature .lf-chev{color:var(--ink-soft);font-size:13px;}

/* Hint del rango de precio aproximado */
.filters .precio-hint{flex-basis:100%;width:100%;font-family:'Space Mono',monospace;font-size:12.5px;letter-spacing:.4px;color:var(--ink-soft);padding-top:2px;}
.filters .precio-hint b{color:var(--ink);font-weight:700;}

/* Banner "lo que ofrecés" */
.myoffer{margin-top:24px;background:var(--ink);color:var(--paper);border-radius:16px;padding:16px 20px;display:flex;align-items:center;gap:14px;box-shadow:var(--shadow-md);max-width:760px;}
.myoffer .thumb{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#4a4a55,#2a2a32);flex:0 0 48px;display:flex;align-items:center;justify-content:center;font-size:22px;}
.myoffer .info{flex:1;min-width:0;}
.myoffer .info .lbl{font-family:'Space Mono';font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#a8a39a;font-weight:700;}
.myoffer .info .car{font-size:15px;font-weight:700;margin-top:2px;}
.myoffer .info .want{font-size:12px;color:#b5b0a6;margin-top:3px;}
.myoffer .perm-filtros{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px;}
.myoffer .pf-chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--paper);background:rgba(255,255,255,.08);border:1px solid #44444f;border-radius:999px;padding:3px 9px;}
.myoffer .pf-chip.ok i{color:var(--green);}
.myoffer .pf-chip.no i{color:var(--red);}
.myoffer .edit{font-size:12px;font-weight:700;color:var(--paper);border:1px solid #44444f;border-radius:20px;padding:8px 14px;white-space:nowrap;}
.myoffer .edit:hover{border-color:#6a6a76;}
/* Selector "permutar usando" (cuando tengo varias permutas en el rubro) */
.perm-offer-pick{display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:760px;margin:10px 0 0;}
.perm-offer-pick label{font-family:'Space Mono';font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-soft);font-weight:700;display:inline-flex;align-items:center;gap:7px;}
.perm-offer-pick label i{color:var(--red);}
.perm-offer-pick select{flex:1;min-width:200px;font:inherit;font-size:14px;font-weight:700;color:var(--ink);background:var(--white);border:1.5px solid var(--ink);border-radius:11px;padding:10px 14px;cursor:pointer;box-shadow:var(--shadow-sm);}
.perm-offer-pick select:hover{background:var(--paper-2);}

/* ---- Inmuebles: lista por compatibilidad ---- */
.perm-count{font-family:'Space Mono';font-size:12px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-soft);font-weight:700;margin:28px 0 16px;}
.perm-count b{color:var(--red);}
.perm-widen{display:flex;align-items:flex-start;gap:9px;background:#fdf6e9;border:1px solid #f0dcae;border-radius:12px;padding:11px 14px;margin:0 0 18px;font-size:13px;line-height:1.45;color:var(--ink-soft);max-width:760px;}
.perm-widen i{color:var(--amber);margin-top:2px;}
.perm-widen b{color:var(--ink);font-weight:800;}
.perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:22px;}
.mcard{background:var(--white);border:1px solid rgba(0,0,0,.05);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-md);display:flex;flex-direction:column;}
.mcard .top{position:relative;display:block;height:180px;background:var(--paper-2);background-size:cover;background-position:center;text-decoration:none;}
.mcard .top::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(0,0,0,.62),transparent 58%);pointer-events:none;}
/* Carrusel de fotos dentro de la card de permuta */
.mcard .top .ph-track{position:absolute;inset:0;z-index:0;display:flex;width:100%;height:100%;transition:transform .4s cubic-bezier(.22,.61,.36,1);will-change:transform;}
.mcard .top .ph-track img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;}
.mcard .top .ph-nav{position:absolute;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background:rgba(255,253,248,.92);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;padding-bottom:2px;box-shadow:0 2px 8px -2px rgba(0,0,0,.45);opacity:0;transition:opacity .15s;z-index:5;}
.mcard:hover .top .ph-nav{opacity:1;}
.mcard .top .ph-nav.prev{left:8px;}
.mcard .top .ph-nav.next{right:8px;}
@media(hover:none){.mcard .top .ph-nav{opacity:.85;}}
.mcard .top .ph-dots{position:absolute;top:14px;left:50%;transform:translateX(-50%);display:flex;gap:5px;z-index:5;}
.mcard .top .ph-dots span{width:6px;height:6px;border-radius:50%;background:rgba(255,253,248,.55);}
.mcard .top .ph-dots span.on{background:#fff;}
.mcard .compat{position:absolute;top:12px;left:12px;z-index:2;display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;font-family:'Space Mono';letter-spacing:.5px;padding:6px 11px;border-radius:30px;color:#fff;}
.mcard .compat.alta{background:var(--green);box-shadow:0 6px 16px -4px rgba(31,157,107,.6);}
.mcard .compat.media{background:var(--amber);color:#5c3d05;}
.mcard .compat.baja{background:#8a8378;}
.mcard .compat .bars{display:flex;gap:2px;align-items:flex-end;height:12px;}
.mcard .compat .bars i{width:3px;background:currentColor;border-radius:1px;display:block;}
.mcard .ttop{position:absolute;bottom:11px;left:15px;right:15px;z-index:2;color:#fff;}
.mcard .ttop .pr{font-size:21px;font-weight:800;letter-spacing:-.5px;}
.mcard .ttop .nm{font-size:13px;font-weight:500;opacity:.95;margin-top:2px;line-height:1.25;}
.mcard .body{padding:16px;display:flex;flex-direction:column;flex:1;}
.swapline{display:flex;align-items:center;gap:11px;}
.swapcol{flex:1;min-width:0;}
.swapcol .sl{font-size:9.5px;font-family:'Space Mono';letter-spacing:.5px;text-transform:uppercase;color:var(--ink-mute);font-weight:700;}
.swapcol .sv{font-size:13px;font-weight:600;margin-top:4px;line-height:1.3;color:var(--ink);}
.swapico{flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:var(--paper-2);display:flex;align-items:center;justify-content:center;color:var(--red);}
.matchwhy{margin-top:14px;background:#f3f9f5;border:1px solid #cce8d9;border-radius:12px;padding:11px 13px;display:flex;gap:10px;align-items:flex-start;}
.matchwhy.media{background:#fdf6e9;border-color:#f0dcae;}
.matchwhy .wic{flex:0 0 auto;width:22px;height:22px;border-radius:6px;background:var(--green);display:flex;align-items:center;justify-content:center;color:#fff;margin-top:1px;}
.matchwhy.media .wic{background:var(--amber);}
.matchwhy .wt{font-size:12px;line-height:1.45;color:var(--ink-soft);}
.matchwhy .wt b{color:var(--ink);font-weight:700;}
.diffrow{margin-top:13px;display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:var(--paper-2);border-radius:11px;}
.diffrow .dt{font-size:11px;color:var(--ink-soft);font-weight:700;font-family:'Space Mono';letter-spacing:.4px;text-transform:uppercase;}
.diffrow .dv{font-size:16px;font-weight:800;letter-spacing:-.4px;text-align:right;}
.diffrow .dv.up{color:var(--red-deep);}
.diffrow .dv.down{color:var(--green);}
.diffrow .dv small{font-size:10px;font-weight:600;color:var(--ink-soft);display:block;}
.perm-actions{margin-top:auto;padding-top:15px;display:flex;gap:10px;}
.perm-actions button,.perm-actions a.contact{border-radius:12px;font-family:inherit;font-weight:700;font-size:13.5px;padding:13px;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;line-height:1;transition:transform .1s,background .15s,border-color .15s;}
.perm-actions button:active,.perm-actions a.contact:active{transform:scale(.97);}
.perm-actions .skip{flex:0 0 52px;background:var(--paper-2);color:var(--ink-soft);}
.perm-actions .skip:hover{background:var(--line);}
.perm-actions .contact{flex:1;background:var(--ink);color:var(--paper);}
.perm-actions .contact:hover{background:#000;}
.perm-actions .contact.alta{background:var(--green);box-shadow:0 12px 24px -12px rgba(31,157,107,.6);}
.perm-actions .contact.alta:hover{background:#178a5c;}
/* CTA de descubrimiento (anónimo): secundario, no compite con el banner */
.perm-actions .contact.disc{background:var(--white);color:var(--ink);border:1.5px solid var(--line);}
.perm-actions .contact.disc:hover{background:var(--paper-2);border-color:var(--ink-mute);}
.perm-actions .contact.disc .ci{color:var(--red);font-weight:800;}

/* ---- Autos: deck swipe ---- */
.deck-wrap{display:grid;grid-template-columns:minmax(0,420px) 1fr;gap:40px;align-items:start;margin-top:26px;}
@media(max-width:820px){.deck-wrap{grid-template-columns:1fr;}}
.deck{position:relative;height:540px;touch-action:none;}
.swipe-card{position:absolute;inset:0;background:var(--white);border-radius:24px;box-shadow:var(--shadow-lg);overflow:hidden;display:flex;flex-direction:column;border:1px solid rgba(0,0,0,.05);transition:transform .05s linear;will-change:transform;cursor:grab;}
.swipe-card.behind1{transform:scale(.94) translateY(16px);filter:brightness(.98);}
.swipe-card.behind2{transform:scale(.88) translateY(32px);filter:brightness(.95);}
.swipe-card:active{cursor:grabbing;}
.swipe-card .photo{height:56%;position:relative;display:flex;align-items:flex-end;background:var(--paper-2);background-size:cover;background-position:center;}
.swipe-card .photo::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.8),rgba(0,0,0,.05) 55%,rgba(0,0,0,.2));}
.matchpill{position:absolute;top:14px;left:14px;z-index:3;background:var(--green);color:#fff;font-size:11px;font-weight:700;padding:6px 11px;border-radius:30px;display:flex;align-items:center;gap:5px;box-shadow:0 6px 16px -4px rgba(31,157,107,.6);font-family:'Space Mono';letter-spacing:.5px;}
.distpill{position:absolute;top:14px;right:14px;z-index:3;background:rgba(255,255,255,.94);color:var(--ink);font-size:11px;font-weight:700;padding:6px 11px;border-radius:30px;}
.swipe-card .photo .cap{position:relative;z-index:2;padding:18px;color:#fff;width:100%;}
.swipe-card .photo .cap .name{font-size:23px;font-weight:800;letter-spacing:-.6px;line-height:1.05;}
.swipe-card .photo .cap .sub{font-size:13px;opacity:.92;margin-top:5px;font-weight:500;}
.swipe-card .cbody{flex:1;padding:16px 18px 18px;display:flex;flex-direction:column;}
.swipe-card .specs{display:flex;flex-wrap:wrap;gap:7px;}
.swipe-card .spec{background:var(--paper-2);border-radius:9px;padding:6px 11px;font-size:11.5px;font-weight:600;color:var(--ink-soft);display:flex;gap:5px;align-items:center;}
.swipe-card .spec b{color:var(--ink);font-weight:700;}
.diffbox{margin-top:auto;background:linear-gradient(100deg,#fff4e8,#ffe9d4);border:1px solid #f3d4ac;border-radius:14px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;}
.diffbox.down{background:linear-gradient(100deg,#eaf7f0,#d7efe2);border-color:#bfe3d0;}
.diffbox .t{font-size:11px;color:var(--ink-soft);font-weight:600;}
.diffbox .v{font-size:18px;font-weight:800;letter-spacing:-.5px;text-align:right;}
.diffbox .v small{font-size:10px;font-weight:600;color:var(--ink-soft);display:block;}
.diffbox.up .v{color:var(--red-deep);}
.diffbox.down .v{color:var(--green);}
.stamp{position:absolute;top:30px;z-index:5;font-family:'Space Mono';font-weight:700;font-size:30px;letter-spacing:1px;padding:6px 16px;border-radius:12px;border:4px solid;opacity:0;transition:opacity .08s;text-transform:uppercase;pointer-events:none;}
.stamp.like{left:18px;color:var(--green);border-color:var(--green);transform:rotate(-14deg);}
.stamp.nope{right:18px;color:var(--red);border-color:var(--red);transform:rotate(14deg);}
.deck-actions{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:22px;}
.act{border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--white);box-shadow:0 10px 22px -8px rgba(0,0,0,.3);transition:transform .15s;}
.act:active{transform:scale(.9);}
.act.nope{width:64px;height:64px;color:var(--red);border:1px solid #f1c9c7;}
.act.info{width:50px;height:50px;color:var(--ink-soft);border:1px solid var(--line);}
.act.like{width:64px;height:64px;color:#fff;background:var(--green);box-shadow:0 12px 26px -8px rgba(31,157,107,.7);}
.act.rewind{width:50px;height:50px;color:var(--amber);border:1px solid #f3ddb0;}
.deck-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;gap:14px;background:var(--white);border:1px dashed var(--line);border-radius:24px;}
.deck-empty .ic{width:74px;height:74px;border-radius:50%;background:var(--paper-2);display:flex;align-items:center;justify-content:center;}
.deck-empty h3{font-size:20px;font-weight:800;letter-spacing:-.5px;}
.deck-empty p{font-size:13.5px;color:var(--ink-soft);line-height:1.5;max-width:260px;}
.deck-empty .btn{margin-top:6px;background:var(--ink);color:var(--paper);padding:13px 22px;border-radius:13px;font-weight:700;font-size:13.5px;}

/* Panel lateral explicativo (autos) */
.deck-side .how{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:22px 24px;box-shadow:var(--shadow-sm);}
.deck-side .how h3{font-size:13px;font-family:'Space Mono';text-transform:uppercase;letter-spacing:1.2px;color:var(--red);font-weight:700;margin-bottom:14px;}
.deck-side .how .step{display:flex;gap:13px;align-items:flex-start;margin-bottom:16px;}
.deck-side .how .step:last-child{margin-bottom:0;}
.deck-side .how .step .n{flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--paper-2);display:flex;align-items:center;justify-content:center;font-family:'Space Mono';font-weight:700;font-size:13px;color:var(--ink);}
.deck-side .how .step .tx{font-size:13.5px;color:var(--ink-soft);line-height:1.45;}
.deck-side .how .step .tx b{color:var(--ink);}

/* Match modal */
.matchmodal{position:fixed;inset:0;z-index:100;background:rgba(19,19,26,.6);backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;padding:30px;opacity:0;pointer-events:none;transition:opacity .3s;}
.matchmodal.show{opacity:1;pointer-events:auto;}
.matchcard{background:var(--paper);border-radius:28px;padding:32px 28px 26px;width:100%;max-width:380px;text-align:center;transform:scale(.85) translateY(20px);transition:transform .4s cubic-bezier(.18,.9,.32,1.4);box-shadow:var(--shadow-lg);}
.matchmodal.show .matchcard{transform:none;}
.matchcard .big{font-family:'Space Mono';font-weight:700;font-size:13px;letter-spacing:3px;color:var(--red);text-transform:uppercase;}
.matchcard h2{font-size:30px;font-weight:800;letter-spacing:-1.2px;margin-top:5px;line-height:1;}
.matchcard .swap{display:flex;align-items:center;justify-content:center;gap:8px;margin:24px 0 18px;}
.matchcard .swap .swapcar{flex:1;}
.matchcard .swap .ph{height:84px;border-radius:14px;background:var(--paper-2);background-size:cover;background-position:center;box-shadow:0 8px 18px -8px rgba(0,0,0,.4);}
.matchcard .swap .lbl{font-size:11.5px;font-weight:700;margin-top:8px;line-height:1.2;}
.matchcard .swap .lbl small{display:block;color:var(--ink-soft);font-size:10.5px;font-weight:500;}
.matchcard .swap .arr{flex:0 0 auto;color:var(--red);}
.matchcard .pdiff{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:11px;font-size:13px;color:var(--ink-soft);margin-bottom:18px;}
.matchcard .pdiff b{color:var(--ink);}
.matchcard .mbtn{display:block;width:100%;border-radius:14px;padding:15px;font-weight:700;font-size:14.5px;margin-bottom:9px;}
.matchcard .mbtn.primary{background:var(--red);color:#fff;}
.matchcard .mbtn.primary:hover{background:var(--red-deep);}
.matchcard .mbtn.ghost{background:transparent;color:var(--ink-soft);}

/* Footer */
.app-footer{background:var(--ink);color:#a8a39a;padding:40px 0;margin-top:60px;font-size:13px;}
.app-footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;align-items:flex-end;}
.app-footer .logo{color:var(--paper);font-size:20px;}
.app-footer .logo b{color:var(--red);}
.app-footer .note{max-width:520px;line-height:1.55;}
.footer-contacto{display:flex;flex-direction:column;gap:4px;margin-top:12px;font-size:12.5px;}
.footer-contacto i{color:var(--red);margin-right:6px;width:15px;text-align:center;}
.app-footer a{color:var(--paper);font-weight:700;text-decoration:underline;text-decoration-color:var(--red);}

/* Empty state */
.empty{padding:60px 24px;text-align:center;color:var(--ink-mute);background:var(--white);border:1px dashed var(--line);border-radius:18px;font-size:14px;}
.empty b{display:block;color:var(--ink);font-size:18px;margin-bottom:6px;}

/* Loading */
.skeleton{background:linear-gradient(90deg,var(--paper-2) 0%,var(--white) 50%,var(--paper-2) 100%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:18px;}
@keyframes shimmer{0%{background-position:200% 0;}100%{background-position:-200% 0;}}

/* Nav CTA (Publicar) */
.nav-cta{background:var(--red);color:#fff;padding:8px 16px;border-radius:10px;font-weight:700;font-size:13px;box-shadow:0 8px 18px -10px rgba(228,50,43,.7);}
.nav-cta:hover{background:var(--red-deep);color:#fff;}

/* Barra de acciones (favoritos/mensajes/carrito): sólo en mobile (ver @media). */
.nav-actions{display:none;}
/* Nav iconos (buscar / matches / ingresar) */
.nav-icon{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink-soft);border:1px solid transparent;position:relative;}
.nav-icon:hover{color:var(--ink);background:var(--paper-2);}
.nav-icon.active{color:var(--ink);border-color:var(--line);}
.nav-icon .dot{position:absolute;top:6px;right:7px;width:8px;height:8px;border-radius:50%;background:var(--red);border:2px solid var(--paper);}

/* ============ BANDEJA DE MATCHES ============ */
.mx-page{padding:26px 0 60px;}
.mx-page .eyebrow{font-family:'Space Mono';font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--red);font-weight:700;}
.mx-page h1{font-size:34px;font-weight:800;letter-spacing:-1.4px;margin-top:6px;}
.mx-page .lead{font-size:15px;color:var(--ink-soft);margin-top:10px;max-width:620px;line-height:1.5;}
.mx-list{margin-top:26px;max-width:760px;display:flex;flex-direction:column;gap:12px;}
.mx-row{display:flex;align-items:center;gap:14px;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:var(--shadow-sm);transition:transform .15s,box-shadow .15s;}
.mx-row:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);}
.mx-row .av{width:48px;height:48px;flex:0 0 48px;border-radius:50%;background:linear-gradient(135deg,#c9402f,#8a2a1f);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:18px;position:relative;}
.mx-row .av .v{position:absolute;bottom:-2px;right:-2px;color:var(--blue);background:var(--white);border-radius:50%;}
.mx-row .mid{flex:1;min-width:0;}
.mx-row .mid .top{display:flex;align-items:center;gap:8px;}
.mx-row .mid .nm{font-size:15px;font-weight:700;letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mx-row .mid .swap{font-family:'Space Mono';font-size:10.5px;color:var(--ink-mute);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mx-row .mid .msg{font-size:13px;color:var(--ink-soft);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mx-row .mid .msg.unread{color:var(--ink);font-weight:600;}
.mx-row .end{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:7px;}
.mx-row .end .t{font-size:11px;color:var(--ink-mute);font-family:'Space Mono';}
.mx-row .end .badge{min-width:20px;height:20px;padding:0 6px;border-radius:30px;background:var(--red);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.mx-row .end .pill{font-family:'Space Mono';font-size:9px;letter-spacing:.5px;color:var(--green);background:#e8f3ec;border:1px solid #cce8d9;padding:3px 7px;border-radius:20px;font-weight:700;}

/* ============ BUSCADOR GLOBAL ============ */
.bsq-page{padding:26px 0 60px;}
.bsq-page .eyebrow{font-family:'Space Mono';font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--red);font-weight:700;}
.bsq-page h1{font-size:34px;font-weight:800;letter-spacing:-1.4px;margin-top:6px;}
.bsq-bar{margin-top:22px;background:var(--white);border:1px solid var(--line);border-radius:18px;padding:8px;box-shadow:var(--shadow-md);display:flex;gap:6px;align-items:center;max-width:720px;}
.bsq-bar input{flex:1;min-width:0;border:1px solid var(--line);background:var(--paper);border-radius:11px;font-family:inherit;font-size:15px;padding:12px 14px;outline:none;color:var(--ink);transition:border-color .15s,background .15s;}
.bsq-bar input:focus{border-color:var(--ink-mute);background:var(--white);}
.bsq-bar input::placeholder{color:var(--ink-mute);}
.bsq-bar .bsq-clear{flex:0 0 auto;padding:11px 12px;color:var(--ink-mute);font-weight:700;font-size:13px;}
.bsq-bar .bsq-clear:hover{color:var(--ink);}
.bsq-bar .bsq-go{flex:0 0 auto;background:var(--red);color:#fff;padding:12px 22px;border-radius:12px;font-weight:700;font-size:14px;transition:background .15s;}
.bsq-bar .bsq-go:hover{background:var(--red-deep);}
@media(max-width:600px){
  .bsq-bar .sb-loc-btn{order:1;}
  .bsq-bar input{order:2;flex:1 1 100%;}
  .bsq-bar .bsq-clear{order:3;}
  .bsq-bar .bsq-go{order:4;flex:1;justify-content:center;text-align:center;}
}
.bsq-tipo{display:inline-flex;gap:4px;background:var(--paper-2);padding:5px;border-radius:13px;margin-top:16px;}
.bsq-tipo button{padding:8px 16px;border-radius:9px;font-weight:700;font-size:13.5px;color:var(--ink-soft);}
.bsq-tipo button.on{background:var(--white);color:var(--ink);box-shadow:var(--shadow-sm);}
.bsq-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.bsq-chips .c{background:var(--white);border:1px solid var(--line);border-radius:30px;padding:8px 14px;font-size:13px;font-weight:600;color:var(--ink-soft);}
.bsq-chips .c:hover{border-color:var(--ink-mute);color:var(--ink);}
.bsq-group{margin-top:34px;}
.bsq-group .gh{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px;gap:12px;}
.bsq-group .gh h2{font-size:22px;font-weight:800;letter-spacing:-.8px;}
.bsq-group .gh .cnt{font-size:13px;font-weight:700;color:var(--red);font-family:'Space Mono';}
.bsq-group .gh a{font-size:13px;font-weight:700;color:var(--red);}
.bsq-empty{padding:50px 24px;text-align:center;color:var(--ink-mute);font-size:15px;}
.bsq-empty b{display:block;color:var(--ink);font-size:18px;margin-bottom:6px;}

/* ============ LOGIN / REGISTRO ============ */
.lg-page{padding:50px 0 70px;display:flex;justify-content:center;}
.lg-card{width:100%;max-width:420px;background:var(--white);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-md);padding:30px 28px 28px;}
.lg-card .lg-logo{text-align:center;font-weight:800;font-size:26px;letter-spacing:-1.2px;margin-bottom:4px;}
.lg-card .lg-logo b{color:var(--red);}
.lg-card .lg-sub{text-align:center;font-size:13.5px;color:var(--ink-soft);margin-bottom:22px;}
.lg-tabs{display:flex;background:var(--paper-2);border-radius:12px;padding:4px;margin-bottom:22px;}
.lg-tabs button{flex:1;padding:11px;border-radius:9px;font-weight:700;font-size:13.5px;color:var(--ink-soft);transition:.15s;}
.lg-tabs button.on{background:var(--white);color:var(--ink);box-shadow:var(--shadow-sm);}
.lg-field{margin-bottom:14px;}
.lg-field label{font-size:11px;font-weight:600;color:var(--ink-soft);display:block;margin-bottom:6px;text-transform:uppercase;letter-spacing:.4px;font-family:'Space Mono';}
.lg-field input{width:100%;border:1.5px solid var(--line);background:var(--white);border-radius:12px;padding:13px 14px;font-family:'Sora';font-size:14px;color:var(--ink);}
.lg-field input:focus{outline:none;border-color:var(--ink);}
.lg-field.reg{display:none;}
.lg-card.register .lg-field.reg{display:block;}
.lg-card.register .lg-field.login-only{display:none;}
.lg-submit{width:100%;background:var(--red);color:#fff;border-radius:14px;padding:15px;font-weight:700;font-size:15px;margin-top:6px;box-shadow:0 12px 26px -12px rgba(228,50,43,.7);}
.lg-submit:hover{background:var(--red-deep);}
.lg-or{text-align:center;font-size:11px;color:var(--ink-mute);font-family:'Space Mono';letter-spacing:1px;text-transform:uppercase;margin:18px 0;position:relative;}
.lg-or::before,.lg-or::after{content:"";position:absolute;top:50%;width:38%;height:1px;background:var(--line);}
.lg-or::before{left:0;}.lg-or::after{right:0;}
.lg-social{display:flex;flex-direction:column;gap:10px;}
.lg-social button{display:flex;align-items:center;justify-content:center;gap:10px;border:1.5px solid var(--line);background:var(--white);border-radius:12px;padding:12px;font-weight:700;font-size:13.5px;color:var(--ink);}
.lg-social button:hover{background:var(--paper-2);}
.lg-foot{text-align:center;font-size:12px;color:var(--ink-mute);margin-top:20px;line-height:1.5;}
.lg-foot a{color:var(--red);font-weight:700;}

/* ============ MODAL PERFIL DE PERMUTA ============ */
.perf-modal{position:fixed;inset:0;background:rgba(19,19,26,.55);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:60;padding:20px;}
.perf-modal.show{display:flex;}
.perf-card{width:100%;max-width:460px;background:var(--white);border-radius:22px;box-shadow:var(--shadow-lg);padding:26px;max-height:90vh;overflow-y:auto;}
.perf-card h2{font-size:22px;font-weight:800;letter-spacing:-.8px;}
.perf-card .sub{font-size:13px;color:var(--ink-soft);margin-top:5px;margin-bottom:20px;line-height:1.45;}
.perf-card .grp{margin-bottom:18px;}
.perf-card .grp > label{font-size:11px;font-weight:600;color:var(--ink-soft);display:block;margin-bottom:8px;text-transform:uppercase;letter-spacing:.4px;font-family:'Space Mono';}
.perf-card .ctrl{width:100%;border:1.5px solid var(--line);background:var(--white);border-radius:12px;padding:12px 14px;font-family:'Sora';font-size:14px;color:var(--ink);}
.perf-card .ctrl:focus{outline:none;border-color:var(--ink);}
.perf-card .row2{display:flex;gap:11px;}.perf-card .row2>*{flex:1;}
.perf-card .acts{display:flex;gap:10px;margin-top:8px;}
.perf-card .acts button{flex:1;border-radius:13px;padding:14px;font-weight:700;font-size:14px;}
.perf-card .acts .save{background:var(--red);color:#fff;box-shadow:0 12px 26px -12px rgba(228,50,43,.7);}
.perf-card .acts .save:hover{background:var(--red-deep);}
.perf-card .acts .cancel{background:var(--paper-2);color:var(--ink);}
.perf-steps{display:flex;align-items:center;gap:7px;margin-bottom:18px;}
.perf-steps .dot{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;font-family:'Space Mono';flex:0 0 26px;}
.perf-steps .dot.a{background:var(--red);color:#fff;}
.perf-steps .dot.b{background:var(--ink);color:#fff;}
.perf-steps .dot.c{background:var(--line);color:var(--ink-soft);}
.perf-steps .ln{flex:1;height:2px;background:var(--line);border-radius:2px;}
.perf-steps .ln.fill{background:var(--ink);}
.perf-block{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:16px;margin-bottom:14px;}
.perf-block .bhead{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.perf-block .bhead .ic{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:17px;background:var(--paper-2);flex:0 0 34px;}
.perf-block.offer .bhead .ic{background:#fdeceb;color:var(--red);}
.perf-block.want .bhead .ic{background:#e4f6ee;color:var(--green);}
.perf-block .bhead .ic.money{background:#fff4e8;color:var(--amber);}
.perf-block .bhead .tt{font-size:15px;font-weight:800;letter-spacing:-.4px;}
.perf-block .bhead .ss{font-size:11.5px;color:var(--ink-soft);margin-top:1px;}
.perf-block .grp{margin-bottom:12px;}
.perf-block .grp:last-child{margin-bottom:0;}
.perf-block .grp>label{font-size:10.5px;font-weight:600;color:var(--ink-soft);display:block;margin-bottom:6px;text-transform:uppercase;letter-spacing:.4px;font-family:'Space Mono';}
.perf-block .ctrl{width:100%;border:1.5px solid var(--line);background:var(--paper);border-radius:11px;padding:11px 13px;font-family:'Sora';font-size:13.5px;font-weight:500;color:var(--ink);}
.perf-block .ctrl:focus{outline:none;border-color:var(--ink);}
.perf-block .row2{display:flex;gap:10px;}.perf-block .row2>*{flex:1;}
.pillrow{display:flex;flex-wrap:wrap;gap:7px;}
.pill{border:1.5px solid var(--line);background:var(--paper);border-radius:30px;padding:8px 13px;font-size:12px;font-weight:600;color:var(--ink-soft);cursor:pointer;transition:.15s;user-select:none;}
.pill.on{background:var(--ink);color:var(--paper);border-color:var(--ink);}
.toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--paper);border:1.5px solid var(--line);border-radius:11px;padding:11px 13px;margin-bottom:9px;}
.toggle:last-child{margin-bottom:0;}
.toggle .tl{font-size:13px;font-weight:600;line-height:1.3;}
.sw{width:44px;height:26px;border-radius:30px;background:var(--line);position:relative;transition:.2s;flex:0 0 44px;cursor:pointer;}
.sw.on{background:var(--green);}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:.2s;box-shadow:0 2px 4px rgba(0,0,0,.2);}
.sw.on::after{left:21px;}

/* ============ CHAT (conversación de match) ============ */
.chat-page{padding:26px 0 50px;}
.chat-shell{max-width:640px;margin:0 auto;background:var(--white);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-md);overflow:hidden;display:flex;flex-direction:column;height:calc(100vh - 150px);min-height:520px;}
.chat-top{flex:0 0 auto;padding:14px 18px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);background:var(--white);}
.chat-top .back{width:38px;height:38px;flex:0 0 38px;border-radius:50%;border:1.5px solid var(--line);background:var(--white);display:flex;align-items:center;justify-content:center;color:var(--ink);}
.chat-top .back:hover{background:var(--paper-2);}
.chat-top .av{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#c9402f,#8a2a1f);flex:0 0 42px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;position:relative;}
.chat-top .av .on{position:absolute;bottom:0;right:0;width:11px;height:11px;border-radius:50%;background:var(--green);border:2.5px solid var(--white);}
.chat-top .ci{flex:1;min-width:0;}
.chat-top .ci .nm{font-size:15px;font-weight:700;letter-spacing:-.3px;display:flex;align-items:center;gap:5px;}
.chat-top .ci .nm .v{color:var(--blue);}
.chat-top .ci .st{font-size:11px;color:var(--green);font-weight:600;}

.chat-banner{flex:0 0 auto;background:linear-gradient(125deg,var(--ink),#26262f);color:var(--paper);padding:14px 18px;position:relative;overflow:hidden;}
.chat-banner::after{content:"⇄";position:absolute;right:-10px;bottom:-24px;font-size:96px;color:rgba(228,50,43,.16);font-weight:700;line-height:1;}
.chat-banner .mb-k{font-family:'Space Mono';font-size:9.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--amber);font-weight:700;position:relative;z-index:2;}
.chat-banner .mb-swap{display:flex;align-items:center;gap:11px;margin-top:9px;position:relative;z-index:2;}
.chat-banner .mb-car{flex:1;display:flex;align-items:center;gap:9px;min-width:0;}
.chat-banner .mb-car .ph{width:48px;height:38px;border-radius:8px;background-size:cover;background-position:center;background-color:#1f1f27;flex:0 0 48px;}
.chat-banner .mb-car .nm{font-size:11.5px;font-weight:600;line-height:1.2;min-width:0;}
.chat-banner .mb-car .nm small{display:block;color:#a8a39a;font-size:9.5px;font-weight:500;}
.chat-banner .mb-ar{flex:0 0 auto;color:var(--red);}
.chat-banner .mb-diff{margin-top:10px;background:rgba(255,253,248,.09);border:1px solid rgba(255,253,248,.14);border-radius:10px;padding:8px 11px;font-size:11.5px;position:relative;z-index:2;color:#d8d2c4;}
.chat-banner .mb-diff b{color:#fff;}

.chat-msgs{flex:1;overflow-y:auto;overflow-x:hidden;padding:18px;display:flex;flex-direction:column;gap:10px;background:var(--paper);}
.chat-msgs .daysep{text-align:center;font-size:10.5px;color:var(--ink-soft);font-weight:600;font-family:'Space Mono';margin:4px 0;}
.chat-msgs .sys{align-self:center;background:#e8f3ec;border:1px solid #cce8d9;color:#157a51;font-size:11px;font-weight:600;padding:7px 13px;border-radius:30px;text-align:center;max-width:85%;line-height:1.35;}
.chat-msgs .bub{max-width:78%;padding:11px 14px;border-radius:18px;font-size:13.5px;line-height:1.4;}
.chat-msgs .bub .t{font-size:9.5px;font-weight:600;margin-top:4px;opacity:.6;font-family:'Space Mono';}
.chat-msgs .bub.them{align-self:flex-start;background:var(--white);border:1px solid rgba(0,0,0,.06);border-bottom-left-radius:5px;color:var(--ink);}
.chat-msgs .bub.me{align-self:flex-end;background:var(--ink);color:var(--paper);border-bottom-right-radius:5px;}
.chat-msgs .bub.me .t{color:#a8a39a;text-align:right;}
.chat-msgs .offercard{align-self:flex-start;max-width:82%;background:var(--white);border:1.5px solid var(--amber);border-radius:18px;overflow:hidden;}
.chat-msgs .offercard .oc-h{background:#fff8ee;padding:9px 13px;font-size:10.5px;font-weight:700;color:#a8730f;font-family:'Space Mono';letter-spacing:.5px;border-bottom:1px solid #f1ddb8;}
.chat-msgs .offercard .oc-b{padding:13px;}
.chat-msgs .offercard .oc-b .l{font-size:12px;color:var(--ink-soft);font-weight:600;}
.chat-msgs .offercard .oc-b .v{font-size:17px;font-weight:800;letter-spacing:-.5px;margin-top:2px;}
.chat-msgs .offercard .oc-act{display:flex;gap:8px;margin-top:12px;}
.chat-msgs .offercard .oc-act button{flex:1;border-radius:10px;padding:11px;font-weight:700;font-size:12.5px;}
.chat-msgs .offercard .oc-act .acc{background:var(--green);color:#fff;}
.chat-msgs .offercard .oc-act .neg{background:var(--paper-2);color:var(--ink);}

.chat-quick{flex:0 0 auto;display:flex;gap:8px;padding:10px 18px;overflow-x:auto;background:var(--white);border-top:1px solid var(--line);}
.chat-quick .qchip{flex:0 0 auto;background:var(--paper);border:1.5px solid var(--line);border-radius:30px;padding:9px 14px;font-size:12.5px;font-weight:600;color:var(--ink);white-space:nowrap;}
.chat-quick .qchip:hover{background:var(--paper-2);}
.chat-composer{flex:0 0 auto;display:flex;align-items:center;gap:9px;padding:12px 16px;background:var(--white);border-top:1px solid var(--line);}
.chat-composer .plus{width:40px;height:40px;flex:0 0 40px;border-radius:50%;background:var(--paper-2);display:flex;align-items:center;justify-content:center;color:var(--ink);}
.chat-composer .inp{flex:1;background:var(--paper);border:1.5px solid var(--line);border-radius:24px;padding:11px 16px;font-family:'Sora';font-size:14px;color:var(--ink);}
.chat-composer .inp:focus{outline:none;border-color:var(--ink);}
.chat-composer .send{width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 18px -8px rgba(228,50,43,.7);}
.chat-composer .send:active{transform:scale(.92);}

/* ============ PUBLICAR (wizard) ============ */
.pub-page{padding:26px 0 50px;}
.pub-shell{max-width:680px;margin:0 auto;}
.pub-head .k{font-family:'Space Mono';font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--red);font-weight:700;}
.pub-head h1{font-size:34px;font-weight:800;letter-spacing:-1.4px;margin-top:4px;}
.pub-progress{display:flex;gap:6px;margin:18px 0 22px;}
.pub-progress .pg{flex:1;height:5px;border-radius:3px;background:var(--line);transition:.3s;}
.pub-progress .pg.done{background:var(--ink);}
.pub-progress .pg.cur{background:var(--red);}
.pub-card{background:var(--white);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-md);padding:26px 26px 28px;}
/* Banner de cupo en la pantalla de publicar */
.pub-cupo{background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-sm);padding:14px 18px;margin-bottom:14px;}
.pub-cupo-head{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;color:var(--ink);}
.pub-cupo-head i{font-size:17px;margin-top:2px;color:var(--red);flex:0 0 auto;}
.pub-cupo-hint{display:none;margin-top:10px;padding:9px 12px;border-radius:10px;font-size:13.5px;line-height:1.5;}
.pub-cupo-hint i{margin-right:5px;}
.pub-cupo-hint.ok{background:rgba(31,157,107,.12);color:#157a4f;border:1px solid rgba(31,157,107,.35);}
.pub-cupo-hint.warn{background:#fff7ed;color:#9a4a06;border:1px solid #f0c48a;}
.pub-cupo-hint.bad{background:#fdf3f2;color:#b41f1a;border:1px solid #e7b8b5;}
.pub-step{display:none;}
.pub-step.active{display:block;animation:pubfade .3s;}
@keyframes pubfade{from{opacity:0;transform:translateX(16px);}to{opacity:1;transform:none;}}
.pub-step .lead{font-size:22px;font-weight:800;letter-spacing:-.7px;line-height:1.15;}
.pub-step .leadsub{font-size:13.5px;color:var(--ink-soft);line-height:1.45;margin:6px 0 20px;}

.catgrid{display:grid;grid-template-columns:1fr 1fr;gap:13px;}
.catopt{background:var(--white);border:2px solid var(--line);border-radius:18px;padding:18px 16px;transition:.15s;display:flex;flex-direction:column;gap:10px;}
.catopt:hover{border-color:var(--ink-mute);}
.catopt.on{border-color:var(--ink);box-shadow:0 10px 24px -16px rgba(0,0,0,.4);}
.catopt .ci{width:48px;height:48px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:24px;}
.catopt .ci svg{width:23px;height:23px;}
.catopt.inm .ci{background:#fdeceb;}.catopt.veh .ci{background:#e7eefb;}.catopt.serv .ci{background:#e4f6ee;}.catopt.otro .ci{background:#f3eede;}
.catopt.veh .ci{color:var(--blue);}.catopt.inm .ci{color:var(--red);}.catopt.serv .ci{color:var(--green);}.catopt.otro .ci{color:var(--amber);}
.catopt .cn{font-size:15px;font-weight:700;letter-spacing:-.3px;}
.catopt .cd{font-size:11.5px;color:var(--ink-soft);line-height:1.3;}

.pub-field{margin-bottom:15px;}
.pub-field label{font-size:11px;font-weight:600;color:var(--ink-soft);display:block;margin-bottom:6px;text-transform:uppercase;letter-spacing:.4px;font-family:'Space Mono';}
.pub-ctrl{width:100%;border:1.5px solid var(--line);background:var(--white);border-radius:12px;padding:13px 14px;font-family:'Sora';font-size:14px;font-weight:500;color:var(--ink);}
.pub-ctrl:focus{outline:none;border-color:var(--ink);}
.pub-row2{display:flex;gap:12px;}.pub-row2>*{flex:1;}
.pillrow{display:flex;flex-wrap:wrap;gap:8px;}
.pill{border:1.5px solid var(--line);background:var(--white);border-radius:30px;padding:9px 15px;font-size:12.5px;font-weight:600;color:var(--ink-soft);transition:.15s;}
.pill.on{background:var(--ink);color:var(--paper);border-color:var(--ink);}

.pub-photos{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.pub-photos .photo{aspect-ratio:1;border-radius:13px;background-size:cover;background-position:center;position:relative;overflow:hidden;background-color:var(--paper-2);}
.pub-photos .photo .rm{position:absolute;top:5px;right:5px;width:22px;height:22px;border-radius:50%;background:rgba(19,19,26,.75);display:flex;align-items:center;justify-content:center;color:#fff;}
.pub-photos .photo.add{border:2px dashed var(--line);background:var(--white);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--ink-soft);}
.pub-photos .photo.add:hover{border-color:var(--ink-mute);}
.pub-photos .photo.add .pa{font-size:11px;font-weight:600;}
.photohint{font-size:12px;color:var(--ink-soft);margin-top:11px;display:flex;align-items:center;gap:6px;}
.photohint svg{color:var(--green);flex:0 0 auto;}

.permtoggle{background:linear-gradient(125deg,var(--ink),#26262f);border-radius:20px;padding:20px;color:var(--paper);position:relative;overflow:hidden;}
.permtoggle::after{content:"⇄";position:absolute;right:-12px;bottom:-30px;font-size:130px;color:rgba(228,50,43,.16);font-weight:700;line-height:1;}
.permtoggle .pth{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:2;}
.permtoggle .ptt{flex:1;}
.permtoggle .ptt .k{font-family:'Space Mono';font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--amber);font-weight:700;}
.permtoggle .ptt h3{font-size:17px;font-weight:800;letter-spacing:-.5px;margin-top:5px;}
.permtoggle .ptt p{font-size:12px;color:#b5b0a6;margin-top:5px;line-height:1.4;}
.sw{width:50px;height:29px;border-radius:30px;background:#44444f;position:relative;transition:.2s;flex:0 0 50px;}
.sw.on{background:var(--green);}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:23px;height:23px;border-radius:50%;background:#fff;transition:.2s;}
.sw.on::after{left:24px;}
.permdetail{position:relative;z-index:2;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,253,248,.14);display:none;}
.permdetail.show{display:block;animation:pubfade .3s;}
.permdetail .pdl{font-size:12px;font-weight:600;color:#e8e3d8;margin-bottom:9px;}
.permdetail .pillrow .pill{background:rgba(255,253,248,.08);border-color:rgba(255,253,248,.18);color:#d8d2c4;}
.permdetail .pillrow .pill.on{background:var(--white);color:var(--ink);border-color:var(--white);}
.permdetail .diffq{margin-top:15px;}
.permdetail .diffq label{color:#a8a39a;}
.permdetail .diffq .pub-ctrl{background:rgba(255,253,248,.08);border-color:rgba(255,253,248,.18);color:#fff;}

.plan{background:var(--white);border:2px solid var(--line);border-radius:16px;padding:15px;margin-bottom:11px;display:flex;align-items:center;gap:13px;transition:.15s;}
.plan:hover{border-color:var(--ink-mute);}
.plan.on{border-color:var(--red);box-shadow:0 10px 24px -16px rgba(228,50,43,.5);}
.plan .radio{width:22px;height:22px;border-radius:50%;border:2px solid var(--line);flex:0 0 22px;display:flex;align-items:center;justify-content:center;}
.plan.on .radio{border-color:var(--red);}
.plan.on .radio::after{content:"";width:11px;height:11px;border-radius:50%;background:var(--red);}
.plan .pi{flex:1;}
.plan .pi .pn{font-size:14.5px;font-weight:700;}
.plan .pi .pd{font-size:11.5px;color:var(--ink-soft);margin-top:2px;line-height:1.35;}
.plan .pp{font-size:14px;font-weight:800;text-align:right;}
.plan .pp small{display:block;font-size:10px;color:var(--ink-soft);font-weight:600;}
.plan .pp .free{color:var(--green);}

.summ{display:flex;flex-direction:column;gap:1px;background:var(--line);border-radius:13px;overflow:hidden;border:1px solid var(--line);margin-top:16px;}
.summ .sr{background:var(--white);padding:12px 15px;display:flex;justify-content:space-between;align-items:center;gap:14px;}
.summ .sr .sl{font-size:12px;color:var(--ink-soft);font-weight:600;}
.summ .sr .sv{font-size:13px;font-weight:700;text-align:right;}
.summ .sr .sv.ok{color:var(--green);}

.pub-foot{display:flex;gap:12px;margin-top:22px;}
.pub-foot button{border-radius:14px;font-weight:700;font-size:14.5px;padding:16px;display:flex;align-items:center;justify-content:center;gap:8px;}
.pub-foot .prev{flex:0 0 56px;background:var(--paper-2);color:var(--ink);}
.pub-foot .prev:hover{background:var(--line);}
.pub-foot .next{flex:1;background:var(--red);color:#fff;box-shadow:0 12px 26px -12px rgba(228,50,43,.7);}
.pub-foot .next:hover{background:var(--red-deep);}

.pub-success{text-align:center;padding:30px 10px;}
.pub-success .ring{width:90px;height:90px;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 18px 40px -14px rgba(31,157,107,.6);margin:0 auto 18px;}
.pub-success h2{font-size:26px;font-weight:800;letter-spacing:-.8px;}
.pub-success p{font-size:13.5px;color:var(--ink-soft);line-height:1.5;max-width:380px;margin:12px auto 0;}
.pub-success .sbtn{margin-top:20px;background:var(--ink);color:var(--paper);border-radius:14px;padding:15px 26px;font-weight:700;font-size:14px;}

@media(max-width:560px){
  .catgrid{grid-template-columns:1fr;}
  .pub-photos{grid-template-columns:repeat(3,1fr);}
  .chat-shell{height:calc(100vh - 120px);}
}

/* ============ SISTEMA DE CUENTA (account.js) ============ */
/* Toast */
.cm-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);background:var(--ink);color:var(--paper);padding:12px 20px;border-radius:30px;font-size:13.5px;font-weight:600;box-shadow:var(--shadow-lg);z-index:90;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;max-width:90vw;text-align:center;}
.cm-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

/* Modal genérico */
.cm-modal{position:fixed;inset:0;background:rgba(19,19,26,.55);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:80;padding:20px;}
.cm-modal.show{display:flex;}
.cm-card{width:100%;max-width:440px;background:var(--white);border-radius:22px;box-shadow:var(--shadow-lg);padding:26px;position:relative;max-height:90vh;overflow-y:auto;}
.cm-x{position:absolute;top:14px;right:16px;font-size:24px;line-height:1;color:var(--ink-mute);width:32px;height:32px;border-radius:50%;}
.cm-x:hover{background:var(--paper-2);color:var(--ink);}
.cm-logo{font-weight:800;font-size:24px;letter-spacing:-1.1px;text-align:center;}
.cm-logo b{color:var(--red);}
.cm-h{font-size:21px;font-weight:800;letter-spacing:-.7px;margin-top:4px;display:flex;align-items:center;gap:8px;}
.cm-h svg{color:var(--red);}
.cm-sub{font-size:13.5px;color:var(--ink-soft);line-height:1.45;margin:6px 0 18px;}
.cm-inp{width:100%;border:1.5px solid var(--line);background:var(--paper);border-radius:12px;padding:13px 14px;font-family:'Sora';font-size:14px;color:var(--ink);}
.cm-inp:focus{outline:none;border-color:var(--ink);background:var(--white);}
.cm-primary{width:100%;background:var(--red);color:#fff;border-radius:13px;padding:14px;font-weight:700;font-size:14.5px;margin-top:12px;box-shadow:0 12px 26px -12px rgba(228,50,43,.7);}
.cm-primary:hover{background:var(--red-deep);}
.cm-foot{text-align:center;font-size:12px;color:var(--ink-mute);margin-top:16px;}
.cm-foot a{color:var(--red);font-weight:700;}

/* Auth modal */
.cm-social{display:flex;flex-direction:column;gap:10px;}
.cm-soc{display:flex;align-items:center;justify-content:center;gap:10px;border:1.5px solid var(--line);background:var(--white);border-radius:12px;padding:13px;font-weight:700;font-size:13.5px;color:var(--ink);}
.cm-soc:hover{background:var(--paper-2);}
.cm-or{text-align:center;font-size:11px;color:var(--ink-mute);font-family:'Space Mono';letter-spacing:1px;text-transform:uppercase;margin:16px 0 12px;}

/* Locality picker */
.cm-locpicker .cm-loc-list{margin-top:14px;max-height:48vh;overflow-y:auto;border:1px solid var(--line);border-radius:14px;}
.cm-loc-dep{font-family:'Space Mono';font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-mute);font-weight:700;padding:12px 14px 5px;background:var(--paper);position:sticky;top:0;}
.cm-loc-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:12px 14px;border-bottom:1px solid var(--line-soft);text-align:left;font-size:14px;font-weight:600;color:var(--ink);}
.cm-loc-row:hover{background:var(--paper);}
.cm-loc-row.on{background:#fdeceb;color:var(--red);}
.cm-loc-row small{font-size:11px;color:var(--ink-mute);font-weight:600;white-space:nowrap;}
.cm-loc-row.on small{color:var(--red);}

/* Saved searches */
.cm-ss-list{display:flex;flex-direction:column;gap:10px;}
.cm-ss-row{display:flex;align-items:center;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:12px 14px;}
.cm-ss-info{flex:1;min-width:0;}
.cm-ss-q{font-size:14px;font-weight:700;letter-spacing:-.2px;}
.cm-ss-meta{font-size:11.5px;color:var(--ink-soft);margin-top:3px;}
.cm-ss-act{display:flex;align-items:center;gap:7px;flex:0 0 auto;}
.cm-ss-badge{background:var(--green);color:#fff;font-size:10.5px;font-weight:700;padding:4px 8px;border-radius:20px;font-family:'Space Mono';}
.cm-ss-go{background:var(--ink);color:var(--paper);border-radius:9px;padding:8px 12px;font-weight:700;font-size:12.5px;}
.cm-ss-del{width:28px;height:28px;border-radius:8px;background:var(--paper-2);color:var(--ink-soft);font-size:18px;line-height:1;}
.cm-ss-del:hover{background:var(--line);}
.cm-empty{font-size:13.5px;color:var(--ink-soft);line-height:1.5;background:var(--paper);border:1px dashed var(--line);border-radius:14px;padding:20px;}
.cm-empty b{color:var(--ink);}

/* Prefs modal */
.cm-prefgrid{display:flex;flex-direction:column;gap:9px;}
.cm-ch{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:2px solid var(--line);border-radius:13px;padding:13px 15px;text-align:left;}
.cm-ch b{font-size:14px;font-weight:700;}
.cm-ch small{font-size:11.5px;color:var(--ink-soft);}
.cm-ch.on{border-color:var(--red);background:#fdeceb;}
.cm-wa{margin-top:13px;}
.cm-wa label,.cm-prefrow label{font-size:12px;color:var(--ink-soft);font-weight:600;}
.cm-prefrow{margin-top:14px;}
.cm-check{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--ink);font-weight:600;cursor:pointer;}
.cm-check input{width:18px;height:18px;accent-color:var(--red);}

/* Menú de cuenta */
.cm-menu{position:fixed;z-index:85;background:var(--white);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);padding:8px;min-width:230px;display:flex;flex-direction:column;}
.cm-menu-head{display:flex;align-items:center;gap:10px;padding:8px 10px 12px;border-bottom:1px solid var(--line-soft);margin-bottom:6px;}
.cm-menu-head .cm-av{width:40px;height:40px;flex:0 0 40px;border-radius:50%;background:linear-gradient(135deg,#c9402f,#8a2a1f);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:17px;}
.cm-menu-head .nm{font-size:14px;font-weight:700;}
.cm-menu-head .em{font-size:11.5px;color:var(--ink-mute);}
.cm-menu button{text-align:left;padding:11px 12px;border-radius:9px;font-size:13.5px;font-weight:600;color:var(--ink);}
.cm-menu button:hover{background:var(--paper);}
.cm-menu button.danger{color:var(--red);}

/* Avatar mini en el header */
.nav-icon.is-user{background:var(--paper-2);}
.cm-av-mini{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#c9402f,#8a2a1f);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex:0 0 26px;}
@media(max-width:1024px){ .nav-icon.is-user{background:none;} }

/* Barra "Guardar búsqueda" en el buscador */
.bsq-save{display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(125deg,var(--ink),#26262f);color:var(--paper);border-radius:16px;padding:14px 18px;margin:6px 0 26px;flex-wrap:wrap;}
.bsq-save .t{font-size:13.5px;color:#d8d2c4;line-height:1.4;flex:1;min-width:200px;}
.bsq-save .t b{color:#fff;}
.bsq-save-btn{flex:0 0 auto;background:var(--red);color:#fff;border-radius:11px;padding:11px 16px;font-weight:700;font-size:13.5px;box-shadow:0 10px 22px -10px rgba(228,50,43,.7);}
.bsq-save-btn:hover{background:var(--red-deep);}

/* Preferencia de canal del vendedor en Publicar */
.pub-canal{display:flex;flex-direction:column;gap:9px;margin-top:8px;}
.pub-canal .opt{display:flex;align-items:center;gap:11px;border:2px solid var(--line);border-radius:13px;padding:13px 15px;cursor:pointer;}
.pub-canal .opt .ic{width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:var(--paper-2);display:flex;align-items:center;justify-content:center;font-size:17px;}
.pub-canal .opt b{font-size:14px;font-weight:700;display:block;}
.pub-canal .opt small{font-size:11.5px;color:var(--ink-soft);}
.pub-canal .opt.on{border-color:var(--red);background:#fdeceb;}

/* ============ MAPAS (Leaflet) ============ */
/* Mapa en la ficha de inmueble */
.detalle-mapa{margin-top:26px;}
.detalle-mapa h3{font-size:13px;font-family:'Space Mono';text-transform:uppercase;letter-spacing:1.4px;color:var(--red);font-weight:700;margin-bottom:12px;}
.detalle-mapa #mapaInmueble{height:300px;border-radius:16px;overflow:hidden;border:1px solid var(--line);z-index:0;}
.mapa-nota{font-size:12.5px;color:var(--ink-soft);margin-top:10px;display:flex;align-items:center;gap:6px;}
.mapa-nota svg{color:var(--red);flex:0 0 auto;}
.mapa-fallback{padding:30px;text-align:center;color:var(--ink-mute);background:var(--paper);border:1px dashed var(--line);border-radius:16px;}

/* Toggle Mapa/Lista en el listado */
.map-toggle{display:inline-flex;align-items:center;gap:7px;background:var(--white);border:1px solid var(--line);border-radius:11px;padding:9px 15px;font-weight:700;font-size:13.5px;color:var(--ink);box-shadow:var(--shadow-sm);}
.map-toggle:hover{border-color:var(--ink-mute);}
.map-toggle.on{background:var(--ink);color:var(--paper);border-color:var(--ink);}
.map-toggle svg{color:var(--red);}
.map-toggle.on svg{color:var(--amber);}

/* Mapa del listado */
.lista-mapa{display:none;height:560px;max-height:72vh;border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-md);z-index:0;}
.leaflet-popup-content{font-family:'Sora',sans-serif;font-size:13px;}
.leaflet-popup-content a{color:var(--red);font-weight:700;}

/* ===================== TIENDAS OFICIALES ===================== */

/* --- Detalle: card de vendedor enlazada a su micrositio --- */
.detail-info .vendor a.av{cursor:pointer;text-decoration:none;transition:transform .12s;}
.detail-info .vendor a.av:hover{transform:scale(1.06);}
.detail-info .vendor .v-meta .name.store-link{color:var(--ink);display:inline-block;text-decoration:none;transition:color .12s;}
.detail-info .vendor .v-meta .name.store-link:hover{color:var(--red);}
.detail-info .vendor .v-meta .ver-tienda{display:inline-block;margin-top:3px;font-family:'Space Mono';font-size:10.5px;letter-spacing:.4px;text-transform:uppercase;font-weight:700;color:var(--red);text-decoration:none;}
.detail-info .vendor .v-meta .ver-tienda:hover{text-decoration:underline;}
.detail-info .vendor .role-verif{display:inline-flex;vertical-align:-2px;color:var(--blue);margin-left:2px;}

/* Precio + Margen juntos en una línea dentro de la barra de filtros */
.filters .pair{display:flex;gap:14px;align-items:flex-end;flex-wrap:nowrap;}

/* --- Directorio de tiendas (cards grandes con el perfil del comercio) --- */
.store-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;}
.store-card{position:relative;background:var(--white);border:1px solid rgba(0,0,0,.06);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-md);transition:transform .18s,box-shadow .18s;text-decoration:none;color:inherit;display:flex;flex-direction:column;}
.store-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px -24px rgba(0,0,0,.6);}
/* Link estirado: la card entera navega al micrositio; los links de contacto van por encima. */
.sc-stretch{position:absolute;inset:0;z-index:1;}
.sc-cover{height:84px;background:linear-gradient(115deg,#1b1b24 0%,#3a1714 55%,var(--red-deep) 100%);position:relative;}
.sc-logo{position:absolute;left:16px;bottom:-22px;z-index:2;width:56px;height:56px;border-radius:14px;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:24px;border:3px solid var(--white);box-shadow:var(--shadow-sm);}
.sc-logo i{font-size:22px;}
.sc-verif{position:absolute;top:10px;right:10px;z-index:2;color:var(--blue);background:var(--white);border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);}
.sc-body{padding:30px 16px 16px;display:flex;flex-direction:column;gap:3px;}
.sc-rol{font-family:'Space Mono';font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-mute);font-weight:700;}
.sc-name{font-weight:800;font-size:16.5px;letter-spacing:-.4px;line-height:1.15;}
.sc-loc{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ink-soft);margin-top:2px;}
.sc-loc svg,.sc-loc i{color:var(--red);flex:0 0 auto;font-size:12px;}
.sc-verif-lbl{display:inline-flex;align-items:center;gap:4px;font-family:'Space Mono';font-size:10px;letter-spacing:.4px;text-transform:uppercase;font-weight:700;color:var(--blue);margin-left:8px;}
.sc-verif-lbl svg,.sc-verif-lbl i{flex:0 0 auto;font-size:11px;}
.sc-desc{font-size:13px;line-height:1.55;color:var(--ink-soft);margin-top:8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.sc-info{position:relative;z-index:2;display:flex;flex-direction:column;gap:6px;margin-top:11px;padding-top:12px;border-top:1px solid var(--line);}
.sc-info .sc-i{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--ink-soft);min-width:0;text-decoration:none;transition:color .12s;}
.sc-info .sc-i span,.sc-info .sc-i{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sc-info .sc-i i{width:15px;text-align:center;color:var(--red);font-size:12px;flex:0 0 auto;}
.sc-info a.sc-i:hover{color:var(--red);}

/* --- Micrositio (tienda.html) --- */
.store-hero{background:var(--white);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-md);}
.sh-banner{height:96px;background:linear-gradient(115deg,#1b1b24 0%,#3a1714 55%,var(--red-deep) 100%);position:relative;}
.sh-banner::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 140% at 85% -20%,rgba(255,255,255,.12),transparent 60%);}
/* Con portada cargada: mostrar la imagen COMPLETA (sin recorte), el alto se adapta. */
.sh-banner--img{height:auto;background:none;}
.sh-banner--img::after{display:none;}
.sh-banner--img img{display:block;width:100%;height:auto;}
.sh-main{display:flex;align-items:flex-start;gap:18px;padding:16px 26px 0;position:relative;z-index:2;}
.sh-logo{margin-top:-58px;width:92px;height:92px;flex:0 0 92px;border-radius:20px;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:42px;border:4px solid var(--white);box-shadow:var(--shadow-md);}
.sh-logo i{font-size:36px;}
.sh-id{flex:1;min-width:0;padding-top:2px;}
.sh-rol{display:flex;align-items:center;gap:10px;font-family:'Space Mono';font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-mute);font-weight:700;}
.sh-verif{display:inline-flex;align-items:center;gap:5px;color:var(--blue);font-size:11px;}
.sh-verif svg{flex:0 0 auto;}
.sh-id h1{font-size:29px;font-weight:800;letter-spacing:-1px;line-height:1.05;margin:3px 0 6px;}
.sh-sub{display:flex;flex-wrap:wrap;align-items:center;gap:7px 16px;font-size:13px;color:var(--ink-soft);}
.sh-demo{display:inline-flex;align-items:center;gap:5px;color:var(--ink-mute);font-size:11px;}
.sh-loc{display:inline-flex;align-items:center;gap:5px;}
.sh-loc svg{color:var(--red);}
.sh-web{display:inline-flex;align-items:center;gap:5px;color:var(--red);font-weight:600;text-decoration:none;}
.sh-web:hover{text-decoration:underline;}
.sh-web svg{flex:0 0 auto;}
.sh-msg{flex:0 0 auto;align-self:center;display:inline-flex;align-items:center;gap:7px;background:var(--red);color:#fff;border-radius:12px;padding:12px 20px;font-weight:700;font-size:14px;text-decoration:none;box-shadow:var(--shadow-sm);transition:background .15s,transform .1s;}
.sh-msg:hover{background:var(--red-deep);transform:translateY(-1px);}
.sh-about{margin:18px 26px 0;padding:18px 0 24px;border-top:1px solid var(--line);}
.sh-about p{font-size:14.5px;line-height:1.6;color:var(--ink-soft);max-width:760px;margin:0 0 14px;}
.sh-contact{display:flex;flex-wrap:wrap;gap:10px 22px;}
.sh-contact span,.sh-contact a{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink);font-weight:500;text-decoration:none;}
.sh-contact a:hover{color:var(--red);}
.sh-contact svg{color:var(--red);flex:0 0 auto;}
.sh-nocontact{font-size:13px;color:var(--ink-mute);font-style:italic;}
.sh-contact{display:flex;flex-wrap:wrap;gap:8px 22px;}
.sh-contact .sh-c{display:inline-flex;align-items:center;gap:8px;color:var(--ink-soft);font-size:13.5px;font-weight:600;text-decoration:none;transition:color .15s;}
.sh-contact .sh-c:hover{color:var(--red);}
.sh-contact .sh-c i{width:16px;text-align:center;color:var(--red);}
.sh-contact .sh-c span{overflow:hidden;text-overflow:ellipsis;}

@media(max-width:640px){
  .sh-main{flex-direction:column;align-items:flex-start;gap:10px;padding:14px 18px 0;}
  .sh-logo{margin-top:-52px;width:78px;height:78px;flex-basis:78px;font-size:34px;}
  .sh-msg{align-self:stretch;justify-content:center;}
  .sh-id h1{font-size:24px;}
  .sh-about{margin-left:18px;margin-right:18px;}
}

/* ===================== Buscador (/buscar) ===================== */
.search-page{padding:30px 0 60px;}
.search-top{margin-bottom:16px;}
.search-input{position:relative;display:flex;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-md);padding:4px 14px;max-width:760px;}
.search-input svg{color:var(--ink-mute);flex:0 0 20px;}
.search-input input{flex:1;border:none;background:transparent;font-family:inherit;font-size:17px;font-weight:600;color:var(--ink);padding:15px 10px;outline:none;min-width:0;}
.search-input input::placeholder{color:var(--ink-mute);font-weight:500;}
.q-clear{flex:0 0 auto;background:var(--paper-2);border:none;color:var(--ink-soft);width:26px;height:26px;border-radius:50%;cursor:pointer;font-size:13px;line-height:1;}
.q-clear:hover{background:var(--line);}

.search-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px;}
.search-tabs .st{font-family:'Space Mono';font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;background:var(--white);border:1px solid var(--line);color:var(--ink-soft);padding:8px 16px;border-radius:999px;cursor:pointer;transition:all .15s;}
.search-tabs .st:hover{border-color:var(--ink-mute);}
.search-tabs .st.on{background:var(--ink);color:var(--white);border-color:var(--ink);}

.search-layout{display:grid;grid-template-columns:248px 1fr;gap:26px;align-items:start;}

.search-filters{background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-sm);padding:16px 18px;position:sticky;top:84px;}
.sf-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;font-weight:800;letter-spacing:-.4px;}
.sf-toggle{display:none;}
.sf-head-toggle{display:flex;align-items:center;gap:8px;font:inherit;color:inherit;}
.sf-caret{display:none;font-size:12px;color:var(--ink-mute);transition:transform .2s;}
.sf-clear{background:none;border:none;color:var(--red);font-weight:700;font-size:12px;cursor:pointer;font-family:inherit;}
.sf-block{padding:12px 0;border-top:1px solid var(--line);}
.sf-block:first-of-type{border-top:none;}
.sf-label{display:block;font-size:12px;font-weight:700;color:var(--ink-mute);margin-bottom:7px;font-family:'Space Mono';letter-spacing:.4px;text-transform:uppercase;}
.search-filters select,.search-filters input[type=number]{width:100%;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:9px 11px;font-family:inherit;font-size:13px;font-weight:600;color:var(--ink);outline:none;}
.search-filters select:focus,.search-filters input[type=number]:focus{border-color:var(--red);}
.sf-chips{display:flex;gap:6px;flex-wrap:wrap;}
.sf-chips button{flex:1;min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:8px 6px;font-family:inherit;font-size:12.5px;font-weight:700;color:var(--ink-soft);cursor:pointer;transition:all .15s;white-space:nowrap;}
/* Operación: 4 opciones (incluye "Temporario", larga) → 2×2 para que no se salga del panel. */
.sf-chips[data-facet="operacion"] button{flex:1 1 calc(50% - 3px);}
.sf-chips button.on{background:var(--ink);color:var(--white);border-color:var(--ink);}
.sf-range{display:flex;align-items:center;gap:8px;}
.sf-range span{color:var(--ink-mute);}
.sf-check{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink-soft);cursor:pointer;margin-bottom:8px;}
.sf-check:last-child{margin-bottom:0;}
.sf-check input{width:16px;height:16px;accent-color:var(--red);cursor:pointer;}
.sf-cnt{font-family:'Space Mono';font-size:11px;font-weight:700;color:var(--ink-mute);margin-left:auto;}
.sf-facets{display:flex;flex-direction:column;gap:2px;}
.sf-facet{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;border-radius:9px;font-size:13px;font-weight:600;color:var(--ink-soft);}
.sf-facet:hover{background:var(--paper);color:var(--ink);}
.sf-facet.on{background:var(--red);color:#fff;}
.sf-facet-c{font-family:'Space Mono';font-size:11px;font-weight:700;opacity:.7;flex:0 0 auto;}
.sf-facet.on .sf-facet-c{opacity:.85;}

.search-results{min-width:0;}
.sr-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;flex-wrap:wrap;}
.sr-count{font-family:'Space Mono';font-size:12.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-soft);font-weight:700;}
.sr-count b{color:var(--red);font-size:15px;letter-spacing:0;}
.sr-ms{color:var(--ink-mute);font-weight:400;text-transform:none;letter-spacing:0;}
.sr-sort{font-size:13px;color:var(--ink-mute);font-weight:600;display:flex;align-items:center;gap:8px;}
.sr-sort select{background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:700;color:var(--ink);outline:none;cursor:pointer;}
.search-results .grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));}
/* Bandas de expansión (cercanos / parecidos): invitan a anexar más resultados abajo. */
.sr-bands{display:flex;flex-direction:column;gap:10px;margin-top:22px;}
.sr-band{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  background:var(--paper-2);border:1px solid var(--line);border-radius:14px;padding:14px 18px;}
.sr-band.expanded{opacity:.7;}
.sr-band .sa-txt{font-size:14px;color:var(--ink-soft);}
.sr-band .sa-txt i{color:var(--red);margin-right:7px;}
.sr-band .sa-txt b{color:var(--ink);}
.sr-band .sa-btn{flex:0 0 auto;background:var(--ink);color:#fff;border:none;border-radius:10px;
  padding:10px 16px;font-family:inherit;font-size:13.5px;font-weight:800;cursor:pointer;transition:filter .15s;}
.sr-band .sa-btn:hover{filter:brightness(1.15);}
/* Secciones anexadas (resultados cercanos / parecidos), separadas de los exactos. */
.sr-extra{margin-top:26px;}
.sr-extra .sx-h{display:flex;align-items:center;gap:9px;font-size:15px;font-weight:800;color:var(--ink);
  margin:0 0 14px;padding-top:18px;border-top:1px dashed var(--line);}
.sr-extra .sx-h i{color:var(--red);}
.sr-empty{text-align:center;padding:50px 20px;color:var(--ink-mute);}
.sr-empty p{font-size:16px;margin-bottom:14px;}
.sr-more-wrap{text-align:center;margin-top:30px;}

/* Barra de búsqueda de /buscar: input de texto + botón + pill de localidad */
.us-top{display:flex;align-items:stretch;gap:12px;margin-bottom:16px;flex-wrap:wrap;}
.us-searchform{flex:1;min-width:280px;max-width:none;margin:0;}
.us-searchform input[type=search]{flex:1;border:none;background:transparent;font-family:inherit;font-size:17px;font-weight:600;color:var(--ink);padding:14px 10px;outline:none;min-width:0;-webkit-appearance:none;}
.us-searchform input::placeholder{color:var(--ink-mute);font-weight:500;}
.us-searchform input::-webkit-search-cancel-button{display:none;}
.us-go{flex:0 0 auto;background:var(--red);color:#fff;border:none;border-radius:11px;padding:0 20px;margin-left:6px;font-family:inherit;font-size:14px;font-weight:800;cursor:pointer;transition:filter .15s;}
.us-go:hover{filter:brightness(.93);}
.us-top .search-loc{flex:0 0 auto;border-radius:16px;}
.st-lbl{align-self:center;font-family:'Space Mono';font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-mute);margin-right:2px;}
@media (max-width:560px){ .us-top{flex-direction:column;} .us-go{padding:12px 20px;} }

/* Landing limpio (sin búsqueda): última búsqueda + guardadas + ayuda */
.search-landing{padding:6px 0;}
.sl-hero{margin-bottom:26px;}
.sl-hero h2{font-size:26px;font-weight:800;letter-spacing:-.8px;margin-bottom:6px;}
.sl-hero p{color:var(--ink-soft);font-size:15px;max-width:560px;}
.sl-block{margin-bottom:26px;}
.sl-h{font-family:'Space Mono';font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-mute);margin-bottom:12px;}
.sl-card{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--white);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-sm);padding:16px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s;}
.sl-card:hover{border-color:var(--red);box-shadow:var(--shadow-md);}
.sl-card-t{font-size:16px;font-weight:700;color:var(--ink);}
.sl-card-t i{color:var(--red);margin-right:7px;}
.sl-card-c{font-family:'Space Mono';font-size:12px;font-weight:700;color:var(--ink-mute);}
.sl-card-go{margin-left:auto;color:var(--red);font-weight:800;font-size:14px;}
.sl-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-bottom:10px;}
.sl-item{position:relative;background:var(--white);border:1px solid var(--line);border-radius:12px;transition:border-color .15s;}
.sl-item:hover{border-color:var(--red);}
.sl-it-link{display:flex;flex-direction:column;gap:5px;padding:13px 30px 13px 15px;text-decoration:none;}
.sl-del{position:absolute;top:6px;right:6px;width:22px;height:22px;border:none;background:var(--paper-2);color:var(--ink-mute);border-radius:50%;font-size:12px;line-height:1;cursor:pointer;opacity:0;transition:opacity .15s,background .15s,color .15s;}
.sl-item:hover .sl-del{opacity:1;}
.sl-del:hover{background:var(--red);color:#fff;}
.sl-it-t{font-size:14px;font-weight:700;color:var(--ink);}
.sl-it-m{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--ink-mute);}
.sl-it-m i{color:var(--red);}
.sl-it-new{background:var(--red);color:#fff;font-family:'Space Mono';font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;}
.sl-more{color:var(--red);font-weight:700;font-size:13px;text-decoration:none;}
.sl-more:hover{text-decoration:underline;}
.sl-asist-btn{display:inline-flex;align-items:center;gap:9px;background:var(--paper-2);border:1px dashed var(--line);border-radius:12px;padding:13px 18px;font-family:inherit;font-size:14px;font-weight:700;color:var(--ink-soft);cursor:pointer;transition:all .15s;}
.sl-asist-btn:hover{border-color:var(--red);color:var(--ink);}
.sl-asist-btn i{color:var(--red);font-size:17px;}

/* En /buscar el asistente flotante (fijo abajo-derecha) y los filtros son DOS
   formas de la misma búsqueda → comparten la columna derecha. Resultados a la
   izquierda; filtros a la derecha (ancho ~ panel del asistente). Cuando el
   asistente está ABIERTO se repliegan los filtros y los resultados toman todo
   el ancho (el asistente "ocupa" ese lugar); al minimizarlo reaparecen. */
.usearch .search-layout{grid-template-columns:1fr 320px;}
.usearch .search-results{order:1;}
.usearch .search-filters{order:2;}

/* Layout APILADO del rubro (inmuebles/vehículos): lugar → tipo → buscador → filtros
   desplegables → cantidad/orden → avisos. El buscador va fuera de los filtros (arriba,
   como la portada); los filtros son un panel colapsable a lo ancho. Ver listado.blade. */
.usearch .ll-searchbar{margin:2px 0 14px;}
.usearch .ll-searchbar .sf-search{max-width:640px;}
.usearch .ll-filters{position:static;top:auto;order:0;margin-bottom:18px;}
.usearch .ll-filters .sf-caret{display:inline-block;}
.usearch .ll-filters .sf-head{margin-bottom:0;}
.usearch .ll-filters .sf-head-toggle{cursor:pointer;flex:1;}
.usearch .ll-filters .sf-body{display:none;}
.usearch .ll-filters .sf-toggle:checked ~ .sf-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:6px 22px;align-items:start;margin-top:10px;}
.usearch .ll-filters .sf-toggle:checked ~ .sf-head .sf-caret{transform:rotate(180deg);}
.usearch .ll-filters .sf-block{border-top:none;padding:8px 0;}
.usearch .ll-filters .sf-apply{grid-column:1/-1;max-width:240px;}
/* Al abrir el asistente, los filtros se repliegan PERO la columna sigue
   reservada → la grilla de resultados no cambia de ancho (cards inmutables). */
body:has(.casist.open) .usearch .search-filters{visibility:hidden;}
/* En el layout apilado del rubro los filtros van a lo ancho (no en columna): al abrir el
   asistente NO se ocultan (el chat flota, no reemplaza una columna). */
body:has(.casist.open) .usearch .ll-filters{visibility:visible;}
/* En /buscar el panel del asistente toma el MISMO ancho que la ficha de filtros
   y se alinea a su columna (borde derecho = borde interno del .wrap, 22px de
   padding sobre max-width 1180) → ocupa exactamente el mismo lugar. */
body:has(.usearch) .casist{right:max(22px, (100vw - 1180px)/2 + 22px);}
body:has(.usearch) .casist-panel{width:320px;}
.sf-asist{display:flex;align-items:center;gap:8px;width:100%;margin:4px 0 10px;padding:10px 12px;
  background:rgba(228,50,43,.06);border:1px dashed var(--red);border-radius:11px;color:var(--red);
  font-family:inherit;font-size:12.5px;font-weight:700;text-align:left;line-height:1.3;cursor:pointer;transition:background .15s;}
.sf-asist:hover{background:rgba(228,50,43,.12);}
.sf-asist i{font-size:14px;flex:0 0 auto;}

@media (max-width:860px){
  .search-layout,
  .usearch .search-layout{grid-template-columns:1fr;}
  .search-filters{position:static;}
  .usearch .search-filters{order:0;}
  body:has(.casist.open) .usearch .search-filters{visibility:visible;}
  /* Filtros colapsables en mobile: arrancan cerrados para no tapar los avisos;
     el encabezado "Filtros" (label) los despliega. Toggle CSS-only, sin JS. */
  .sf-head-toggle{cursor:pointer;flex:1;}
  .sf-caret{display:inline-block;}
  .sf-body{display:none;}
  .sf-toggle:checked ~ .sf-body{display:block;}
  .sf-toggle:checked ~ .sf-head .sf-caret{transform:rotate(180deg);}
}

/* ===================== Auth + formularios ===================== */
.auth-wrap{max-width:440px;margin:48px auto;padding:0 18px;}
.auth-card{background:var(--white);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-md);padding:30px 28px;}
.auth-card h1{font-size:26px;font-weight:800;letter-spacing:-.8px;}
.auth-sub{color:var(--ink-mute);margin:6px 0 20px;font-size:14px;}
.auth-form{display:flex;flex-direction:column;gap:14px;}
.auth-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--ink-soft);}
.auth-opt{color:var(--ink-mute);font-weight:400;}
.auth-form input[type=text],.auth-form input[type=email],.auth-form input[type=password]{background:var(--paper);border:1px solid var(--line);border-radius:11px;padding:12px 14px;font-family:inherit;font-size:15px;font-weight:500;color:var(--ink);outline:none;transition:border-color .15s;}
.auth-form input:focus{border-color:var(--red);background:var(--white);}
/* Select (tipo de teléfono móvil/fijo): mismo look que los inputs + flecha propia */
.auth-form select{background-color:var(--paper);border:1px solid var(--line);border-radius:11px;padding:12px 30px 12px 13px;font-family:inherit;font-size:14px;font-weight:600;color:var(--ink);outline:none;cursor:pointer;transition:border-color .15s,background-color .15s;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%238a8275' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M1 1.5 6 6.5 11 1.5'/></svg>");background-repeat:no-repeat;background-position:right 11px center;background-size:11px;}
.auth-form select:focus{border-color:var(--red);background-color:var(--white);}
.auth-check{flex-direction:row !important;align-items:center;gap:8px;font-weight:500 !important;color:var(--ink-mute) !important;}
.auth-check input{width:16px;height:16px;accent-color:var(--red);}
.auth-btn{background:var(--red);color:#fff;border:none;border-radius:12px;padding:14px;font-family:inherit;font-weight:700;font-size:15px;cursor:pointer;transition:background .15s;margin-top:4px;}
.auth-btn:hover{background:var(--red-deep);}
.auth-error{background:#fdecea;border:1px solid #f5c2bd;color:var(--red-deep);border-radius:10px;padding:11px 14px;font-size:13.5px;font-weight:600;margin-bottom:16px;}
.auth-ok{background:#e8f6ef;border:1px solid #b6e3cd;color:var(--green);border-radius:10px;padding:11px 14px;font-size:13.5px;font-weight:600;margin-bottom:16px;}
.auth-alt{margin-top:18px;text-align:center;font-size:13.5px;color:var(--ink-mute);}
.auth-alt a{color:var(--red);font-weight:700;}
.auth-or{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--ink-mute);font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;}
.auth-or::before,.auth-or::after{content:"";flex:1;height:1px;background:var(--line);}
.auth-google{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:13px;font-weight:700;font-size:14.5px;cursor:pointer;transition:background .15s,box-shadow .15s;text-decoration:none;}
.auth-google:hover{background:#f7f4ee;box-shadow:var(--shadow-sm);}
.auth-google svg{width:20px;height:20px;flex:0 0 20px;}

/* Login/registro en dos columnas: form a un lado, planes al otro */
.auth-split{max-width:980px;margin:44px auto;padding:0 18px;display:grid;grid-template-columns:minmax(0,430px) minmax(0,1fr);gap:30px;align-items:start;}
.auth-split .auth-card{margin:0;}
.auth-aside{align-self:stretch;}
.auth-aside-head h2{font-size:21px;font-weight:800;letter-spacing:-.5px;margin:0 0 4px;}
.auth-aside-head p{color:var(--ink-mute);font-size:13.5px;margin:0 0 16px;line-height:1.45;}
.auth-plan-list{display:flex;flex-direction:column;gap:10px;}
.auth-plan-mini{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:15px 17px;}
.auth-plan-mini.pop{border-color:var(--red);box-shadow:0 10px 26px -20px rgba(0,0,0,.5);}
.auth-plan-tag{position:absolute;top:-9px;left:14px;background:var(--red);color:#fff;font:700 10px 'Space Mono',monospace;letter-spacing:.5px;text-transform:uppercase;padding:3px 8px;border-radius:6px;}
.auth-plan-mini .nom{font-weight:800;font-size:15.5px;letter-spacing:-.2px;}
.auth-plan-mini .feat{font-size:12.5px;color:var(--ink-mute);margin-top:3px;line-height:1.35;}
.auth-plan-mini .precio{font-weight:800;font-size:19px;white-space:nowrap;color:var(--ink);}
.auth-plan-mini .precio small{font-size:11px;color:var(--ink-mute);font-weight:600;}
.auth-plan-more{display:inline-flex;align-items:center;gap:7px;margin-top:14px;color:var(--red);font-weight:700;font-size:13.5px;text-decoration:none;}
.auth-plan-more:hover{text-decoration:underline;}
@media(max-width:840px){
  .auth-split{grid-template-columns:1fr;max-width:440px;gap:24px;}
  .auth-aside{order:2;}
}
.pub-wrap{max-width:760px;margin:36px auto 70px;padding:0 18px;}
.pub-wrap h1{font-size:28px;font-weight:800;letter-spacing:-1px;margin-bottom:4px;}
.pub-sub{color:var(--ink-mute);margin-bottom:24px;}
.pub-form{display:flex;flex-direction:column;gap:18px;}
.pub-card{background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-sm);padding:20px 22px;}
.pub-card h3{font-size:15px;font-weight:800;margin-bottom:14px;font-family:'Space Mono';letter-spacing:.4px;text-transform:uppercase;color:var(--ink-soft);}
.pub-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.pub-field{display:flex;flex-direction:column;gap:6px;}
.pub-field.full{grid-column:1 / -1;}
.pub-field label{font-size:12.5px;font-weight:700;color:var(--ink-soft);}
.pub-field input,.pub-field select,.pub-field textarea{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:11px 13px;font-family:inherit;font-size:14px;font-weight:500;color:var(--ink);outline:none;transition:border-color .15s;}
.pub-field input:focus,.pub-field select:focus,.pub-field textarea:focus{border-color:var(--red);background:var(--white);}
.pub-field textarea{min-height:120px;resize:vertical;}
.pub-row-check{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--ink-soft);}
.pub-row-check input{width:16px;height:16px;accent-color:var(--red);}
.pub-actions{display:flex;gap:12px;align-items:center;}
@media (max-width:640px){.pub-grid{grid-template-columns:1fr;}}

/* Mis avisos */
.mine-wrap{max-width:980px;margin:36px auto 70px;padding:0 18px;}
.mine-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;flex-wrap:wrap;gap:12px;}
.mine-row{display:flex;gap:14px;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:12px;box-shadow:var(--shadow-sm);}
.mine-row img{width:84px;height:64px;object-fit:cover;border-radius:9px;flex:0 0 84px;background:var(--paper-2);}
.mine-row .mr-body{flex:1;min-width:0;}
.mine-row .mr-title{font-weight:700;letter-spacing:-.3px;}
.mine-row .mr-meta{font-size:12.5px;color:var(--ink-mute);margin-top:2px;}
.estado-badge{font-family:'Space Mono';font-size:10.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;border-radius:999px;padding:4px 10px;flex:0 0 auto;}
.estado-pendiente{background:#fdf3e0;color:#a96a10;}
.estado-publicado{background:#e8f6ef;color:var(--green);}
.estado-rechazado{background:#fdecea;color:var(--red-deep);}
.estado-pausado{background:var(--paper-2);color:var(--ink-mute);}

/* ===================== Localidad (modal + pill) + interpretado ===================== */
.search-loc{display:inline-flex;align-items:center;gap:6px;background:var(--paper-2);border:1px solid var(--line);border-radius:12px;padding:0 14px;font-family:inherit;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer;white-space:nowrap;}
.search-loc svg{color:var(--red);}
.search-loc.loc-empty{color:var(--red);border-color:var(--red);}
.search-top{display:flex;gap:10px;align-items:stretch;}
.search-top .search-input{flex:1;}

[data-loc-pill].loc-empty [data-loc-label]{color:var(--red);}

.loc-overlay{position:fixed;inset:0;background:rgba(19,19,26,.55);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:1000;padding:18px;}
.loc-overlay.on{display:flex;}
.loc-modal{background:var(--white);border-radius:20px;box-shadow:0 30px 80px -20px rgba(0,0,0,.6);max-width:440px;width:100%;padding:30px 28px;text-align:center;animation:locPop .2s ease;}
@keyframes locPop{from{transform:translateY(12px) scale(.98);opacity:0;}to{transform:none;opacity:1;}}
.loc-icon{font-size:34px;color:var(--red);line-height:1;}
.loc-modal h2{font-size:23px;font-weight:800;letter-spacing:-.6px;margin:6px 0 4px;}
.loc-modal p{color:var(--ink-mute);font-size:14px;margin-bottom:18px;}
.loc-modal input{width:100%;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:13px 15px;font-family:inherit;font-size:16px;font-weight:600;color:var(--ink);outline:none;}
.loc-modal input:focus{border-color:var(--red);background:var(--white);}
.loc-quick{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin:14px 0 4px;}
.loc-quick button{background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:7px 13px;font-family:inherit;font-size:12.5px;font-weight:700;color:var(--ink-soft);cursor:pointer;transition:all .15s;}
.loc-quick button:hover{background:var(--ink);color:#fff;border-color:var(--ink);}
.loc-actions{display:flex;flex-direction:column;gap:8px;margin-top:18px;}
.loc-go{background:var(--red);color:#fff;border:none;border-radius:12px;padding:14px;font-family:inherit;font-weight:700;font-size:15px;cursor:pointer;}
.loc-go:hover{background:var(--red-deep);}
.loc-skip{background:none;border:none;color:var(--ink-mute);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;text-decoration:underline;}

.search-detected{margin:14px 0 4px;font-size:13px;color:var(--ink-soft);display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.search-detected .sd-lbl{font-family:'Space Mono';font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-mute);font-weight:700;}
.search-detected .sd-chip{background:var(--ink);color:#fff;border-radius:999px;padding:4px 12px;font-weight:700;font-size:12.5px;}

@media (max-width:560px){
  .search-top{flex-wrap:wrap;}
  .search-loc{order:-1;width:100%;justify-content:flex-start;padding:11px 14px;}
}

/* ===================== Gate operación + búsqueda progresiva ===================== */
.op-gate{background:var(--white);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-md);padding:34px 26px;text-align:center;margin-bottom:8px;}
.op-gate h3{font-size:22px;font-weight:800;letter-spacing:-.6px;}
.op-gate p{color:var(--ink-mute);margin:6px 0 20px;}
.op-gate-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.op-gate-btns button{flex:1;min-width:160px;max-width:240px;background:var(--paper-2);border:2px solid var(--line);border-radius:14px;padding:20px 18px;font-family:inherit;font-size:17px;font-weight:800;color:var(--ink);cursor:pointer;transition:all .15s;}
.op-gate-btns button:hover{border-color:var(--red);background:var(--white);transform:translateY(-2px);box-shadow:var(--shadow-sm);}

.widen-sep{grid-column:1 / -1;display:flex;align-items:center;gap:14px;margin:18px 0 4px;color:var(--ink-soft);}
.widen-sep::before,.widen-sep::after{content:"";flex:1;height:1px;background:var(--line);}
.widen-sep span{font-family:'Space Mono';font-size:12px;letter-spacing:.5px;text-transform:uppercase;font-weight:700;white-space:nowrap;}

/* ===================== Ofrecimiento conversacional de ampliación ===================== */
.sr-range{color:var(--ink);font-weight:700;}
.widen-box{margin-top:26px;background:var(--paper-2);border:1px solid var(--line);border-radius:16px;padding:20px 22px;}
.widen-box .wb-lead{font-size:15px;color:var(--ink-soft);margin-bottom:14px;}
.widen-box .wb-lead b{color:var(--ink);font-weight:700;}
.wb-opts{display:flex;flex-wrap:wrap;gap:10px;}
.wb-opts button{background:var(--white);border:1px solid var(--line);border-radius:11px;padding:10px 16px;font-family:inherit;font-size:13.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:all .15s;}
.wb-opts button:hover{border-color:var(--ink-mute);transform:translateY(-1px);box-shadow:var(--shadow-sm);}
.wb-opts button b{color:var(--red);font-weight:800;}
.wb-opts button.wb-relax{background:var(--ink);color:#fff;border-color:var(--ink);}
.wb-opts button.wb-relax b{color:#fff;}
.wb-opts button.wb-relax span{opacity:.6;}

/* ===================== Verticales de productos (colecciones) ===================== */
.coll-hero{padding:46px 0 30px;border-bottom:1px solid var(--line);}
.coll-hero h1{font-size:40px;font-weight:800;letter-spacing:-1.6px;line-height:1;margin:6px 0 8px;}
.coll-hero p{color:var(--ink-soft);font-size:16px;max-width:600px;}
.coll-hero .gt-eyebrow{color:var(--red);}
.coll-mercado-emprendedor{background:linear-gradient(180deg,#eef6f1,transparent);}
.coll-mercado-emprendedor .gt-eyebrow{color:var(--green);}
.coll-tiendas-americanas{background:linear-gradient(180deg,#eef2fb,transparent);}
.coll-tiendas-americanas .gt-eyebrow{color:var(--blue);}
.coll-usados-antiguedades{background:linear-gradient(180deg,#f6f1e8,transparent);}
.coll-usados-antiguedades .gt-eyebrow{color:var(--amber);}

/* ===================== Paginación ===================== */
.pager{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-top:30px;}
.pager-info{font-family:'Space Mono';font-size:12px;letter-spacing:.4px;color:var(--ink-mute);}
.pager-info b{color:var(--ink);}
.pager-nav{display:flex;gap:6px;flex-wrap:wrap;}
.pager-btn{min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;background:var(--white);border:1px solid var(--line);border-radius:10px;font-family:inherit;font-size:14px;font-weight:700;color:var(--ink);text-decoration:none;transition:all .15s;}
.pager-btn:hover{border-color:var(--ink-mute);}
.pager-btn.on{background:var(--ink);color:#fff;border-color:var(--ink);}
.pager-btn.disabled{opacity:.4;cursor:default;}
.pager-dots{align-self:center;color:var(--ink-mute);padding:0 4px;}

/* ===================== Asistente (chat) ===================== */
.asis{padding:22px 0 50px;}
.asis-grid{display:grid;grid-template-columns:380px 1fr;gap:24px;align-items:start;}
.asis-chat{background:var(--white);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;height:calc(100vh - 130px);position:sticky;top:84px;overflow:hidden;}
.asis-chat-top{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line);}
.asis-bot-id{font-weight:800;letter-spacing:-.3px;display:flex;align-items:center;gap:8px;}
.asis-dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(31,157,107,.18);}
.asis-loc{display:inline-flex;align-items:center;gap:5px;background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:5px 11px;font-family:inherit;font-size:12px;font-weight:700;color:var(--ink);cursor:pointer;}
.asis-loc svg{color:var(--red);}
.asis-log{flex:1;overflow-y:auto;padding:18px 16px;display:flex;flex-direction:column;gap:10px;}
.msg{max-width:88%;padding:11px 14px;border-radius:16px;font-size:14px;line-height:1.45;}
.msg.bot{background:var(--paper-2);color:var(--ink);border-bottom-left-radius:5px;align-self:flex-start;}
.msg.user{background:var(--ink);color:#fff;border-bottom-right-radius:5px;align-self:flex-end;}
.msg.bot b{font-weight:800;}
.msg-opts{display:flex;flex-wrap:wrap;gap:7px;align-self:flex-start;max-width:95%;}
.msg-opts .chip{background:var(--white);border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:700;color:var(--ink);cursor:pointer;transition:all .15s;}
.msg-opts .chip:hover{border-color:var(--red);color:var(--red);}
.msg-opts .chip.primary{background:var(--ink);color:#fff;border-color:var(--ink);}
.msg-opts .chip.primary:hover{background:var(--red);border-color:var(--red);color:#fff;}
.msg-opts .chip.on{background:var(--red);color:#fff;border-color:var(--red);}
.msg-opts .chip:disabled{opacity:.5;cursor:default;}
.msg.typing{display:flex;gap:4px;align-items:center;}
.msg.typing span{width:7px;height:7px;border-radius:50%;background:var(--ink-mute);animation:blink 1.2s infinite;}
.msg.typing span:nth-child(2){animation-delay:.2s;} .msg.typing span:nth-child(3){animation-delay:.4s;}
@keyframes blink{0%,60%,100%{opacity:.25;}30%{opacity:1;}}
.asis-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);}
.asis-input input{flex:1;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-family:inherit;font-size:15px;color:var(--ink);outline:none;}
.asis-input input:focus{border-color:var(--red);background:var(--white);}
.asis-input button{background:var(--red);color:#fff;border:none;border-radius:12px;width:46px;font-size:16px;cursor:pointer;}
.asis-input button:hover{background:var(--red-deep);}
.asis-res-head{font-family:'Space Mono';font-size:13px;letter-spacing:.4px;color:var(--ink-soft);margin-bottom:14px;font-weight:700;}
.asis-res-head b{color:var(--red);font-size:15px;}
.asis-results .grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));}
@media (max-width:880px){
  .asis-grid{grid-template-columns:1fr;}
  .asis-chat{height:auto;position:static;}
  .asis-log{max-height:48vh;}
}

/* ===================== Buscador unificado (diálogo + filtros + grilla) ===================== */
.usearch{padding:22px 0 50px;}
.us-convo{background:var(--white);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-md);overflow:hidden;margin-bottom:18px;}
.us-log{max-height:300px;overflow-y:auto;padding:18px 18px 6px;display:flex;flex-direction:column;gap:10px;}
.us-input{display:flex;gap:8px;align-items:center;padding:12px;border-top:1px solid var(--line);}
.us-input .search-loc{flex:0 0 auto;}
.us-input input{flex:1;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-family:inherit;font-size:15px;color:var(--ink);outline:none;min-width:0;}
.us-input input:focus{border-color:var(--red);background:var(--white);}
.us-input button[type=submit]{flex:0 0 auto;background:var(--red);color:#fff;border:none;border-radius:12px;width:46px;height:44px;font-size:16px;cursor:pointer;}
.us-input button[type=submit]:hover{background:var(--red-deep);}
@media (max-width:560px){ .us-input{flex-wrap:wrap;} .us-input .search-loc{order:-1;} }

/* ===== Motor de permutas: banner-invitación + modo descubrimiento (app real) ===== */
.perm-toggle .pt-ico{font-size:17px;line-height:1;}
.myoffer.perm-invite{background:linear-gradient(180deg,var(--white),var(--paper-2));border:1px dashed var(--line);color:var(--ink);}
.myoffer.perm-invite .thumb{background:var(--paper-2);color:var(--red);font-size:26px;}
.myoffer.perm-invite .info .lbl{color:var(--red);}
.myoffer.perm-invite .info .car{color:var(--ink);}
.myoffer.perm-invite .info .want{color:var(--ink-soft);}
.myoffer .edit{display:inline-flex;align-items:center;white-space:nowrap;text-decoration:none;}
/* En el banner-invitación el botón va sólido rojo (sobre fondo claro el crema no se veía) */
.myoffer.perm-invite .edit{background:var(--red);color:#fff;border:0;padding:10px 18px;font-weight:700;border-radius:22px;transition:background .15s,transform .1s;}
.myoffer.perm-invite .edit:hover{background:var(--red-deep);border:0;}
.myoffer.perm-invite .edit:active{transform:scale(.97);}
.perm-acc-mini{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 10px;}
.perm-acc-mini .acc-chip{font-size:12.5px;font-weight:700;color:var(--ink-soft);background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:5px 10px;}
.perm-busca{font-size:13px;color:var(--ink-mute);margin:0 0 12px;line-height:1.4;}
.perm-busca::first-letter{text-transform:none;}

/* ===== Form de publicar: selección de tipos de permuta ===== */
.perm-q{font-size:13px;font-weight:700;color:var(--ink-soft);margin:0 0 10px;}
.perm-typegrid{display:flex;flex-wrap:wrap;gap:8px;}
.perm-typecheck{display:inline-flex;align-items:center;gap:7px;cursor:pointer;border:1px solid var(--line);border-radius:999px;padding:8px 13px;font-weight:600;font-size:13.5px;color:var(--ink-soft);background:var(--white);transition:.12s;user-select:none;}
.perm-typecheck:hover{border-color:var(--ink-mute);}
.perm-typecheck input{accent-color:var(--red);width:15px;height:15px;}
.perm-typecheck:has(input:checked){border-color:var(--red);color:var(--ink);background:#fff;box-shadow:inset 0 0 0 1px var(--red);}
.perm-typecheck .pt-fa{font-size:14px;color:var(--ink-mute);width:18px;text-align:center;margin-right:2px;}
.perm-typecheck:has(input:checked) .pt-fa{color:var(--red);}

/* ----------------------------------------------------- Mis matches (permutas) */
.nav-badge{display:inline-block;background:var(--red);color:#fff;font-size:11px;font-weight:800;font-family:'Space Mono';line-height:1;padding:3px 6px;border-radius:20px;margin-left:4px;vertical-align:middle;}
.matches-page{padding:30px 0 60px;}
/* Columna centrada angosta, en línea con el resto del panel (mis-pedidos, mensajes…). */
.matches-page .wrap{max-width:760px;}
.matches-page .eyebrow{font-family:'Space Mono';font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--red);font-weight:700;}
.matches-page h1{font-size:34px;font-weight:800;letter-spacing:-1.4px;margin-top:8px;}
.matches-page .lead{font-size:15px;color:var(--ink-soft);margin-top:10px;max-width:620px;line-height:1.5;}
.flash{margin-top:18px;border-radius:12px;padding:12px 16px;font-size:14px;font-weight:600;}
.flash.ok{background:#f3f9f5;border:1px solid #cce8d9;color:#147a52;}
.flash.err{background:#fdf2f1;border:1px solid #f3cfcd;color:var(--red-deep);}
.matches-tabs{display:flex;gap:8px;margin:24px 0 18px;}
.mt-tab{background:var(--paper-2);border:1px solid var(--line);border-radius:11px;padding:10px 16px;font-family:inherit;font-weight:700;font-size:14px;color:var(--ink-soft);cursor:pointer;display:inline-flex;align-items:center;gap:8px;}
.mt-tab span{font-family:'Space Mono';font-size:12px;background:var(--white);border-radius:20px;padding:2px 7px;color:var(--ink-mute);}
.mt-tab.on{background:var(--ink);color:#fff;border-color:var(--ink);}
.mt-tab.on span{background:rgba(255,255,255,.18);color:#fff;}
.matches-list{display:grid;gap:14px;}
.matches-empty{color:var(--ink-mute);font-size:14.5px;line-height:1.5;padding:26px 0;}
.matches-empty a{color:var(--red);font-weight:700;}
.match-card{background:var(--white);border:1px solid rgba(0,0,0,.06);border-radius:18px;box-shadow:var(--shadow-md);padding:16px 18px;}
.match-card.e-rechazada,.match-card.e-cancelada,.match-card.e-cerrada{opacity:.72;}
.mc-head{display:flex;align-items:center;gap:8px;margin-bottom:13px;}
.mc-badge{font-family:'Space Mono';font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:5px 10px;border-radius:20px;}
.mc-badge.b-pend{background:#fdf6e9;color:#8a5d05;border:1px solid #f0dcae;}
.mc-badge.b-ok{background:#f3f9f5;color:#147a52;border:1px solid #cce8d9;}
.mc-badge.b-no{background:#fdf2f1;color:var(--red-deep);border:1px solid #f3cfcd;}
.mc-badge.b-mute{background:var(--paper-2);color:var(--ink-mute);border:1px solid var(--line);}
.mc-sub{font-size:13px;font-weight:700;color:var(--ink-soft);}
.mc-when{margin-left:auto;font-size:12px;color:var(--ink-mute);}
.mc-swap{display:flex;align-items:stretch;gap:10px;}
.mc-aviso{flex:1;min-width:0;display:flex;gap:10px;text-decoration:none;color:inherit;background:var(--paper-2);border-radius:12px;padding:9px;transition:background .15s;}
.mc-aviso:hover{background:var(--line-soft);}
.mc-thumb{flex:0 0 56px;width:56px;height:56px;border-radius:9px;background:var(--line) center/cover no-repeat;}
.mc-info{min-width:0;}
.mc-lbl{font-family:'Space Mono';font-size:9.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-mute);font-weight:700;}
.mc-tit{font-size:13.5px;font-weight:700;margin-top:2px;line-height:1.2;}
.mc-precio{font-size:13px;font-weight:800;color:var(--ink-soft);margin-top:3px;}
.mc-ico{flex:0 0 auto;align-self:center;font-size:18px;color:var(--red);}
.mc-diff{margin-top:12px;font-size:13.5px;color:var(--ink-soft);}
.mc-diff b{font-weight:800;color:var(--ink);}
.mc-diff .up{color:var(--red-deep);}
.mc-diff .down{color:var(--green);}
.mc-msg{margin-top:10px;font-size:13.5px;color:var(--ink-soft);font-style:italic;line-height:1.45;border-left:3px solid var(--line);padding-left:11px;}
.mc-contact{margin-top:12px;font-size:13.5px;color:var(--ink-soft);background:#f3f9f5;border:1px solid #cce8d9;border-radius:11px;padding:10px 13px;}
.mc-contact a{color:var(--ink);font-weight:700;}
.mc-soon{display:block;font-size:11.5px;color:var(--ink-mute);margin-top:3px;}
.mc-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.mc-actions form{margin:0;}
.mc-btn{border:0;border-radius:10px;padding:10px 15px;font-family:inherit;font-weight:700;font-size:13px;cursor:pointer;transition:background .15s,transform .1s;}
.mc-btn:active{transform:scale(.97);}
.mc-btn.ok{background:var(--green);color:#fff;}
.mc-btn.no{background:var(--white);color:var(--red-deep);border:1.5px solid #f3cfcd;}
.mc-btn.ghost{background:var(--paper-2);color:var(--ink-soft);}
@media(max-width:560px){.mc-swap{flex-direction:column;}.mc-ico{transform:rotate(90deg);}}

/* ── Favoritos (corazón) ─────────────────────────────────────────────── */
.fav-btn{position:absolute;display:flex;align-items:center;justify-content:center;border:0;cursor:pointer;background:rgba(255,253,248,.92);color:var(--ink-mute);border-radius:50%;box-shadow:0 2px 10px -2px rgba(0,0,0,.35);z-index:5;transition:transform .12s,color .15s,background .15s;}
.fav-btn:hover{background:#fff;transform:scale(1.08);}
.fav-btn.on{color:var(--red);}
/* En la card: esquina inferior derecha de la foto. */
.card .ph .fav-btn{bottom:12px;right:12px;width:34px;height:34px;font-size:15px;}
/* En el detalle: arriba a la derecha del visor. */
.gallery .gal-ph .fav-btn{top:12px;right:12px;width:42px;height:42px;font-size:18px;}

/* ── Galería del detalle (pasador) ───────────────────────────────────── */
.gallery .gal-ph{position:relative;border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--line);aspect-ratio:4/3;}
.gallery .gal-ph .ph-track{display:flex;width:100%;height:100%;transition:transform .45s cubic-bezier(.22,.61,.36,1);will-change:transform;}
.gallery .gal-ph .ph-track img{flex:0 0 100%;width:100%;height:100%;object-fit:contain;background:#fff;}
.gallery .gal-ph .ph-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:rgba(255,253,248,.92);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1;padding-bottom:3px;box-shadow:0 2px 10px -2px rgba(0,0,0,.4);cursor:pointer;border:0;z-index:4;transition:background .15s;}
.gallery .gal-ph .ph-nav:hover{background:#fff;}
.gallery .gal-ph .ph-nav.prev{left:12px;}
.gallery .gal-ph .ph-nav.next{right:12px;}
.gallery .gal-ph .ph-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:4;}
.gallery .gal-ph .ph-dots span{width:7px;height:7px;border-radius:50%;background:rgba(19,19,26,.3);transition:background .15s;}
.gallery .gal-ph .ph-dots span.on{background:var(--ink);}
.gal-thumbs{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap;}
.gal-thumbs img{width:74px;height:56px;object-fit:cover;border-radius:8px;border:1px solid var(--line);cursor:pointer;opacity:.6;transition:opacity .15s,border-color .15s;}
.gal-thumbs img.on,.gal-thumbs img:hover{opacity:1;border-color:var(--ink);}
.gal-empty{border-radius:18px;background:var(--paper-2);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;color:var(--ink-mute);}

/* ── Modal "guardá tus favoritos" (anónimos) ─────────────────────────── */
.fav-overlay{position:fixed;inset:0;background:rgba(19,19,26,.55);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:1000;padding:20px;}
.fav-overlay.on{display:flex;}
.fav-modal{background:var(--white);border-radius:20px;padding:30px 28px;max-width:380px;width:100%;text-align:center;box-shadow:0 24px 60px -20px rgba(0,0,0,.5);}
.fav-modal-ico{width:58px;height:58px;border-radius:50%;background:#fdecec;color:var(--red);display:flex;align-items:center;justify-content:center;font-size:24px;margin:0 auto 14px;}
.fav-modal h2{font-size:22px;font-weight:800;letter-spacing:-.6px;margin-bottom:8px;}
.fav-modal p{color:var(--ink-soft);font-size:14px;line-height:1.5;margin-bottom:20px;}
.fav-modal-acts{display:flex;flex-direction:column;gap:10px;}
.fav-modal .fav-go{background:var(--red);color:#fff;border-radius:11px;padding:12px;font-weight:700;text-decoration:none;font-size:14px;}
.fav-modal .fav-alt{background:var(--paper-2);color:var(--ink);border:1px solid var(--line);border-radius:11px;padding:12px;font-weight:700;text-decoration:none;font-size:14px;}
.fav-modal .fav-skip{background:none;border:0;color:var(--ink-mute);font-size:13px;font-weight:600;cursor:pointer;margin-top:14px;font-family:inherit;}
.fav-modal .fav-skip:hover{color:var(--ink);}

/* ── Modal de login global (auth-modal.js / partials/login-modal) ───────── */
.auth-modal{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:20px}
.auth-modal[hidden]{display:none}
.auth-modal-back{position:absolute;inset:0;background:rgba(19,19,26,.55);backdrop-filter:blur(3px)}
.auth-modal-box{position:relative;background:var(--white);border-radius:20px;padding:30px 28px 26px;max-width:400px;width:100%;box-shadow:0 24px 60px -20px rgba(0,0,0,.5);text-align:center}
.auth-modal-x{position:absolute;top:13px;right:15px;all:unset;cursor:pointer;font-size:24px;line-height:1;color:var(--ink-mute)}
.auth-modal-x:hover{color:var(--ink)}
.auth-modal-ico{width:58px;height:58px;border-radius:50%;background:#fdecec;color:var(--red);display:flex;align-items:center;justify-content:center;font-size:24px;margin:0 auto 14px}
.auth-modal-box h2{font-size:21px;font-weight:800;letter-spacing:-.5px;margin-bottom:6px}
.auth-modal-box>p{color:var(--ink-soft);font-size:14px;line-height:1.5;margin-bottom:16px}
.auth-modal-err{background:#fdecec;color:var(--red);font-size:13px;font-weight:700;border-radius:10px;padding:9px 12px;margin-bottom:12px}
.auth-modal-form{display:flex;flex-direction:column;gap:11px;text-align:left}
.auth-modal-form>label{font-size:12px;font-weight:700;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.5px;display:flex;flex-direction:column;gap:5px}
.auth-modal-form input[type=text],.auth-modal-form input[type=password]{border:1px solid var(--line);border-radius:10px;padding:11px 13px;font-family:inherit;font-size:14.5px;width:100%}
.auth-modal-form input:focus{outline:none;border-color:var(--red)}
.auth-modal-pw{position:relative}
.auth-modal-eye{position:absolute;right:8px;bottom:7px;all:unset;cursor:pointer;color:var(--ink-mute);padding:4px;font-size:14px}
.auth-modal-eye:hover{color:var(--ink)}
.auth-modal-check{flex-direction:row!important;align-items:center;gap:7px!important;text-transform:none!important;font-weight:600!important;font-size:13px!important;color:var(--ink-soft)!important}
.auth-modal-check input{width:auto}
.auth-modal-go{background:var(--red);color:#fff;border:0;border-radius:11px;padding:12px;font-weight:700;font-size:14px;cursor:pointer;font-family:inherit;margin-top:3px}
.auth-modal-go:hover{filter:brightness(1.05)}
.auth-modal-alt{text-align:center;margin-top:14px;font-size:13px;color:var(--ink-soft)}
.auth-modal-alt a{color:var(--red);font-weight:700;text-decoration:none}

/* ── Modal de novedades al loguear (partials/novedades-modal) ───────────── */
.nov-modal{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px;transition:opacity .2s}
.nov-modal.nov-hide{opacity:0}
.nov-back{position:absolute;inset:0;background:rgba(19,19,26,.55);backdrop-filter:blur(3px)}
.nov-box{position:relative;background:var(--white);border-radius:20px;padding:28px 26px 22px;max-width:400px;width:100%;box-shadow:0 24px 60px -20px rgba(0,0,0,.5);text-align:center;animation:novIn .22s ease}
@keyframes novIn{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
.nov-x{position:absolute;top:12px;right:14px;all:unset;cursor:pointer;font-size:23px;line-height:1;color:var(--ink-mute)}
.nov-x:hover{color:var(--ink)}
.nov-ico{width:54px;height:54px;border-radius:50%;background:#fdecec;color:var(--red);display:flex;align-items:center;justify-content:center;font-size:22px;margin:0 auto 12px}
.nov-box h2{font-size:20px;font-weight:800;letter-spacing:-.5px;margin-bottom:4px}
.nov-box>p{color:var(--ink-soft);font-size:13.5px;margin-bottom:14px}
.nov-list{display:flex;flex-direction:column;gap:8px;text-align:left}
.nov-item{display:flex;align-items:center;gap:11px;padding:11px 13px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--ink);font-weight:700;font-size:14px;transition:background .12s,border-color .12s}
.nov-item:hover{background:var(--paper-2);border-color:var(--red)}
.nov-item-ic{width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:#fdecec;color:var(--red);display:flex;align-items:center;justify-content:center;font-size:14px}
.nov-item-t{flex:1;min-width:0}
.nov-go{color:var(--ink-mute);font-size:13px}
.nov-dismiss{margin-top:14px;background:none;border:0;color:var(--ink-mute);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}
.nov-dismiss:hover{color:var(--ink)}

/* ── Colección: accesos "por producto / por tienda" ──────────────────── */
.vista-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px;}
.vista-card{display:flex;align-items:center;gap:14px;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:16px 18px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow-sm);transition:border-color .15s,transform .12s,box-shadow .15s;}
.vista-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px -12px rgba(0,0,0,.3);}
.vista-card.on{border-color:var(--red);box-shadow:0 0 0 1px var(--red) inset;}
.vista-card .vc-ico{width:44px;height:44px;flex:0 0 44px;border-radius:12px;background:var(--paper-2);color:var(--ink-soft);display:flex;align-items:center;justify-content:center;font-size:19px;}
.vista-card.on .vc-ico{background:var(--red);color:#fff;}
.vista-card .vc-txt{display:flex;flex-direction:column;line-height:1.25;}
.vista-card .vc-txt b{font-size:15px;font-weight:800;}
.vista-card .vc-txt small{color:var(--ink-mute);font-size:12.5px;}
@media(max-width:560px){.vista-cards{grid-template-columns:1fr;}}

/* Card de vendedor linkeada a su tienda */
.vendor-head.linked{border-radius:10px;margin:-4px;padding:4px;transition:background .15s;}
.vendor-head.linked:hover{background:var(--paper-2);}

/* Form de publicar/editar en modo sólo-lectura (Ver aviso finalizado) */
.pub-fs{border:0;margin:0;padding:0;min-width:0;display:block;}
.pub-fs[disabled]{opacity:.92;}
.pub-fs[disabled] input,.pub-fs[disabled] select,.pub-fs[disabled] textarea{background:var(--paper-2);cursor:not-allowed;color:var(--ink-soft);}

/* Colección: chips de rubro → subrubro (jerárquico) */
.cv-chips{margin-bottom:22px;}
.cv-chips .ll-tipos{flex-wrap:wrap;overflow-x:visible;}
.cv-chips .ll-subtipos{margin-top:10px;padding-top:12px;border-top:1px dashed var(--line);}
.cv-chips .ll-subtipos .ll-chip{font-size:12.5px;padding:6px 11px;border-radius:9px;}
.cv-chips .ll-subtipos .ll-chip:not(.on){background:var(--paper);}

/* ============================================================= Reacciones sociales */
/* Barra en la ficha (me gusta / compartir / consultas) */
.rk-bar{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.rk-act{display:inline-flex;align-items:center;gap:7px;background:var(--paper-2);border:1px solid var(--line);border-radius:11px;padding:9px 14px;font-weight:700;font-size:13px;color:var(--ink);cursor:pointer;font-family:inherit;line-height:1}
.rk-act i{font-size:14px}
.rk-act .rk-n{font-family:'Space Mono',monospace;font-size:12.5px;color:var(--ink-mute);min-width:10px}
.rk-act .rk-n:empty{min-width:0}
button.rk-act:hover{background:var(--paper)}
.rk-like.on{border-color:var(--red)}
.rk-like.on i,.rk-like .fa-solid.fa-heart{color:var(--red)}
.rk-share-btn:hover{border-color:var(--ink)}
.rk-stat{cursor:default}
button.rk-stat{cursor:pointer}

/* Mini-reacciones en las cards (ceros ocultos por JS) */
.rk-mini{display:flex;align-items:center;gap:15px;margin-top:9px;min-height:24px}
.rk-mini-i{display:inline-flex;align-items:center;gap:5px;font-family:'Space Mono',monospace;font-size:13px;color:var(--ink-mute)}
.rk-mini-i i{font-size:16px}
.rk-mini-i .fa-heart{color:var(--red)}
/* Corazón unificado: ES el botón de favorito (♥/me gusta) Y muestra el contador. Siempre
   visible (es el toggle); el número se oculta cuando está en 0 (reacciones.js lo vacía). */
.rk-fav{display:inline-flex;align-items:center;gap:5px;background:none;border:0;cursor:pointer;padding:1px;color:var(--ink-mute);font-family:'Space Mono',monospace;font-size:13px;line-height:1;transition:color .15s;-webkit-tap-highlight-color:transparent}
.rk-fav i{font-size:19px;transition:transform .12s}
.rk-fav:hover{color:var(--red)}
.rk-fav:active i{transform:scale(.84)}
.rk-fav.on,.rk-fav.on i{color:var(--red)}
.rk-fav .rk-num{font-weight:700}
.rk-fav .rk-num:empty{display:none}
.rk-mini-share{margin-left:auto;display:inline-flex;align-items:center;gap:5px;background:none;border:0;color:var(--ink-mute);cursor:pointer;font-family:'Space Mono',monospace;font-size:13px;padding:4px 7px;border-radius:8px}
.rk-mini-share:hover{color:var(--ink);background:var(--paper-2)}
.rk-mini-share i{font-size:16px}

/* Popover del menú de compartir */
.rk-share-menu{position:absolute;z-index:1200;background:var(--white,#fff);border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 40px -12px rgba(0,0,0,.35);padding:6px;min-width:170px;display:none;flex-direction:column;gap:2px}
.rk-share-menu.on{display:flex}
.rk-share-menu button{all:unset;display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:9px;font-size:13.5px;font-weight:600;cursor:pointer;color:var(--ink)}
.rk-share-menu button:hover{background:var(--paper-2)}
.rk-share-menu button i{width:18px;text-align:center;font-size:15px}

/* Toast "link copiado" */
.rk-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(14px);background:var(--ink);color:#fff;padding:10px 18px;border-radius:11px;font-size:13.5px;font-weight:700;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:1300}
.rk-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}

/* ── Páginas institucionales (ayuda, términos, privacidad) ───────────────── */
.legal-wrap{max-width:820px;margin:36px auto 0;padding:0 18px;}
.legal-bc{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-mute);margin-bottom:14px;}
.legal-bc a{color:var(--ink-mute);}
.legal-bc a:hover{color:var(--red);}
.legal-bc strong{color:var(--ink-soft);font-weight:700;}
.legal-card{background:var(--white);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-md);padding:34px 36px;}
.legal-card h1{font-size:30px;font-weight:800;letter-spacing:-1px;line-height:1.1;}
.legal-body{margin-top:20px;color:var(--ink-soft);font-size:15.5px;line-height:1.65;}
.legal-body h2{font-size:21px;font-weight:800;color:var(--ink);letter-spacing:-.4px;margin:34px 0 6px;padding-bottom:8px;border-bottom:2px solid var(--line);}
.legal-body h2:first-child{margin-top:0;}
.legal-body h3{font-size:16.5px;font-weight:800;color:var(--ink);margin:22px 0 4px;}
.legal-body p{margin:10px 0;}
.legal-body ul,.legal-body ol{margin:10px 0 10px 22px;display:flex;flex-direction:column;gap:5px;}
.legal-body li{padding-left:2px;}
.legal-body strong{color:var(--ink);}
.legal-body a{color:var(--red);font-weight:700;text-decoration:underline;}
.legal-otras{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:22px 0 60px;padding:0 4px;}
.legal-otras span{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-mute);}
.legal-otras a{background:var(--white);border:1px solid var(--line);border-radius:30px;padding:8px 16px;font-size:13px;font-weight:700;color:var(--ink);transition:border-color .15s,color .15s;}
.legal-otras a:hover{border-color:var(--red);color:var(--red);}
@media(max-width:600px){.legal-card{padding:24px 20px;}.legal-card h1{font-size:24px;}}

/* Links institucionales en el pie del sitio */
.footer-links{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:14px;}
.footer-links a{color:#cfc9bf;font-weight:600;font-size:12.5px;text-decoration:none;}
.footer-links a:hover{color:var(--paper);text-decoration:underline;text-decoration-color:var(--red);}

/* Footer responsive: el bloque fiscal (logo AFIP + links) debe poder ENCOGER (no forzar su
   ancho max-content), si no en móvil desborda el viewport y aparece scroll horizontal. */
.app-footer .footer-wrap{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px 32px;}
.footer-brand{flex:1 1 300px;min-width:0;}
.footer-fiscal{display:flex;flex-direction:column;align-items:flex-end;gap:12px;flex:0 1 auto;min-width:0;max-width:100%;}
@media (max-width:640px){
  .app-footer .footer-wrap{align-items:flex-start;}
  .footer-fiscal{flex-basis:100%;align-items:flex-start;}
}

/* Botones legales en login / registro */
.auth-legal{margin-top:22px;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px;}
.auth-legal-note{font-size:12.5px;color:var(--ink-mute);margin-bottom:2px;line-height:1.45;}
.auth-legal-btn{display:flex;align-items:center;gap:10px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:13px 16px;font-size:14px;font-weight:700;color:var(--ink);transition:border-color .15s,background .15s,color .15s;}
.auth-legal-btn i{color:var(--red);font-size:15px;width:18px;text-align:center;}
.auth-legal-btn:hover{border-color:var(--red);background:var(--white);color:var(--red);}
.auth-legal-btn:hover i{color:var(--red);}

/* ===== Publicidad — slots de banner (estáticos + AdSense) ===== */
.banner-slot{display:flex;justify-content:center;align-items:center;overflow:hidden;}
.banner-slot .banner-static{display:block;line-height:0;max-width:100%;}
.banner-slot .banner-static img{display:block;max-width:100%;height:auto;}
.banner-slot ins.adsbygoogle{display:block;width:100%;}
/* Top / footer: leaderboard centrado, ancho de página */
.banner-top,.banner-footer{margin:14px auto;padding:0 20px;max-width:998px;min-height:0;}
.banner-footer{margin-top:34px;margin-bottom:6px;}
.banner-top .banner-static img,.banner-footer .banner-static img{max-height:120px;}
/* Sidebar: dentro de la columna de filtros (rectángulo) */
.banner-sidebar{margin-top:18px;width:100%;}
.banner-sidebar .banner-static img{width:100%;border-radius:14px;}
/* In-feed: ocupa el ancho completo de la grilla de resultados */
.banner-infeed{grid-column:1 / -1;margin:6px 0;}
.banner-infeed .banner-static img{width:100%;border-radius:14px;max-height:160px;object-fit:cover;}

/* ===== Noticias destacadas de Elonce (bajo los clasificados) ===== */
.noticias-elonce{margin:46px 0 10px;}
.noticias-elonce .ne-head{margin-bottom:18px;}
.noticias-elonce .ne-eyebrow{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--red);}
.noticias-elonce h2{margin:4px 0 0;font-size:24px;letter-spacing:-.5px;}
.noticias-elonce h2 b{color:var(--red);}
.ne-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;}
.ne-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--ink);transition:border-color .15s,box-shadow .15s,transform .15s;}
.ne-card:hover{border-color:var(--red);box-shadow:var(--shadow-sm);transform:translateY(-2px);}
.ne-thumb{height:120px;background:var(--paper-2) center/cover no-repeat;}
.ne-body{padding:12px 13px 13px;display:flex;flex-direction:column;gap:6px;flex:1;}
.ne-title{margin:0;font-size:14.5px;font-weight:700;line-height:1.3;}
.ne-sum{margin:0;font-size:12.5px;color:var(--ink-mute);line-height:1.4;}
.ne-src{margin-top:auto;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--red);display:inline-flex;align-items:center;gap:5px;}
