.marketplace-root{width:100%;min-width:0;max-width:1160px;margin:0 auto;padding:22px 18px 110px;color:var(--text);overflow-x:hidden}
.mp-hero{display:flex;align-items:center;justify-content:space-between;padding:28px;border:1px solid rgba(0,201,167,.22);border-radius:24px;background:radial-gradient(circle at 85% 10%,rgba(0,201,167,.14),transparent 36%),linear-gradient(135deg,var(--surface),var(--surface2));box-shadow:0 20px 55px rgba(0,0,0,.18)}
.mp-hero h1{font-size:clamp(1.8rem,4vw,3rem);margin:8px 0 4px;letter-spacing:-.04em}.mp-hero p{color:var(--text2);margin:0}.mp-kicker{font-size:.68rem;letter-spacing:.14em;font-weight:800;color:var(--teal);text-transform:uppercase}.mp-kicker i{margin-right:7px}.mp-icon-btn{width:46px;height:46px;border-radius:50%;border:1px solid var(--border);background:var(--surface2);color:var(--text)}
.mp-icon-btn{flex:0 0 auto;aspect-ratio:1/1;min-width:46px;min-height:46px;display:flex;align-items:center;justify-content:center}
.mp-subnav{display:flex;gap:8px;overflow:auto;padding:18px 2px 12px;scrollbar-width:none}.mp-subnav button{display:flex;gap:8px;align-items:center;white-space:nowrap;border:1px solid var(--border);background:var(--surface);color:var(--text2);padding:11px 15px;border-radius:12px;font:inherit}.mp-subnav button.active{background:var(--teal);color:#041511;border-color:var(--teal);font-weight:700}
.mp-toolbar,.mp-section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:14px 0}.mp-toolbar label,.mp-dialog-card label{display:grid;gap:6px;color:var(--text2);font-size:.78rem}.mp-toolbar select,.mp-dialog-card input,.mp-dialog-card select,.mp-dialog-card textarea,.mp-chat input{border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:11px;padding:11px 12px;font:inherit}.mp-dialog-card textarea{min-height:90px;resize:vertical}.mp-segment{display:flex;padding:4px;background:var(--surface2);border:1px solid var(--border);border-radius:14px}.mp-segment button{border:0;background:transparent;color:var(--text2);padding:10px 16px;border-radius:10px;font-weight:700}.mp-segment button.active{background:var(--surface);color:var(--teal);box-shadow:0 4px 16px rgba(0,0,0,.16)}
.mp-trust-strip{display:flex;flex-wrap:wrap;gap:9px;margin:10px 0 18px}.mp-trust-strip span,.mp-methods span{border:1px solid rgba(0,201,167,.18);background:rgba(0,201,167,.07);color:var(--text2);font-size:.72rem;padding:7px 10px;border-radius:999px}.mp-trust-strip i{color:var(--teal);margin-right:6px}
.mp-ad-list{display:grid;gap:12px}.mp-ad-card{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(150px,1fr) minmax(230px,1.2fr) auto;align-items:center;gap:18px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:18px;transition:.2s}.mp-ad-card:hover{border-color:rgba(0,201,167,.45);transform:translateY(-1px)}.mp-ad-person{display:flex;align-items:center;gap:11px}.mp-avatar{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:50%;border:1px solid rgba(0,201,167,.35);background:linear-gradient(135deg,rgba(0,201,167,.28),rgba(74,143,255,.2));color:var(--text);font-weight:800}.mp-avatar.large{width:68px;height:68px;font-size:1.4rem}.mp-link{border:0;background:none;color:var(--text);font:inherit;font-weight:700;padding:0}.mp-ad-person small{display:block;color:var(--text3);margin-top:4px}.mp-ad-person small i,.mp-profile-top i{color:var(--teal)}.mp-ad-price small,.mp-ad-facts small{display:block;color:var(--text3);font-size:.68rem;text-transform:uppercase}.mp-ad-price strong{font-family:'JetBrains Mono',monospace;font-size:1rem}.mp-ad-facts{display:flex;gap:22px}.mp-methods{display:flex;flex-wrap:wrap;gap:6px;grid-column:1/4}.mp-primary,.mp-empty button,.mp-order-row button,.mp-row-actions button{border:0;border-radius:11px;padding:11px 15px;background:var(--teal);color:#041511;font:inherit;font-weight:750;cursor:pointer}.mp-primary.success{background:#42d392}.mp-primary:disabled,button:disabled{opacity:.5;cursor:not-allowed}.danger,.mp-row-actions button.danger{background:rgba(255,76,96,.12);color:var(--red);border:1px solid rgba(255,76,96,.25)}
.mp-loading,.mp-empty{display:grid;place-items:center;gap:10px;min-height:240px;text-align:center;color:var(--text2);border:1px dashed var(--border);border-radius:18px;background:var(--surface)}.mp-empty i{font-size:2rem;color:var(--text3)}.mp-section-head h2{margin:0;font-size:1.35rem}.mp-section-head p{margin:4px 0 0;color:var(--text3)}.mp-order-list,.mp-method-list{display:grid;gap:10px}.mp-order-row,.mp-method-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px;background:var(--surface);border:1px solid var(--border);border-radius:16px}.mp-order-row h3,.mp-method-card h3{margin:7px 0 3px}.mp-order-row p,.mp-method-card p{margin:0;color:var(--text2)}.mp-order-row>div:last-child{text-align:right}.mp-status{display:inline-block;padding:4px 8px;border-radius:99px;background:rgba(74,143,255,.12);color:#75a9ff;font-size:.65rem;font-weight:800;letter-spacing:.05em}.s-COMPLETED{background:rgba(0,201,167,.12);color:var(--teal)}.s-DISPUTED,.s-CANCELLED,.s-EXPIRED,.s-REFUNDED{background:rgba(255,76,96,.1);color:var(--red)}.mp-countdown{display:block;font-family:'JetBrains Mono',monospace;margin-bottom:7px}.mp-countdown.expired{color:var(--red)}.mp-row-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.mp-row-actions button{background:var(--surface2);color:var(--text);border:1px solid var(--border);padding:8px 10px}.mp-method-card>i{font-size:1.4rem;color:var(--teal)}.mp-method-card>div:nth-child(2){flex:1}
.mp-alert{display:flex;gap:10px;padding:13px 15px;margin:12px 0;border:1px solid rgba(74,143,255,.22);background:rgba(74,143,255,.07);border-radius:13px;color:var(--text2)}.mp-alert p{margin:3px 0 0}.mp-alert.danger{border-color:rgba(255,76,96,.25);background:rgba(255,76,96,.07)}.mp-profile-card{padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:20px}.mp-profile-top{display:flex;align-items:center;gap:16px}.mp-profile-top h2{margin:0}.mp-profile-top p{color:var(--text3);margin:4px 0}.mp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:22px 0}.mp-stats div{padding:14px;background:var(--surface2);border-radius:13px}.mp-stats strong,.mp-stats span{display:block}.mp-stats span{font-size:.7rem;color:var(--text3);margin-top:4px}
.mp-dialog-backdrop{position:fixed;z-index:1400;inset:0;background:rgba(3,8,18,.74);backdrop-filter:blur(8px);display:grid;place-items:center;padding:18px;overflow:auto}.mp-dialog-backdrop>div{width:min(650px,100%);margin:auto}.mp-dialog-card{position:relative;display:grid;gap:14px;background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.55);max-height:calc(100vh - 36px);overflow:auto}.mp-dialog-card h2{margin:0}.mp-dialog-close{position:absolute;right:15px;top:14px;width:36px;height:36px;border:1px solid var(--border);border-radius:50%;background:var(--surface2);color:var(--text);font-size:1.3rem}.mp-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mp-summary span{padding:12px;background:var(--surface2);border-radius:11px;color:var(--text3);font-size:.7rem}.mp-summary strong{display:block;color:var(--text);font-size:.88rem;margin-top:5px}.mp-quote{font-family:'JetBrains Mono';font-weight:700;font-size:1.1rem;padding:14px;border-radius:11px;background:rgba(0,201,167,.08);color:var(--teal)}.mp-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mp-order-title,.mp-roles,.mp-order-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.mp-order-title h2{margin:8px 0 2px}.mp-clock{text-align:right}.mp-clock strong{font-size:1.25rem}.mp-roles{padding:12px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:.8rem}.mp-private{padding:15px;border:1px solid rgba(240,165,0,.2);background:rgba(240,165,0,.05);border-radius:14px}.mp-private h3{margin-top:0}.mp-private>div{display:flex;justify-content:space-between;padding:7px 0;border-top:1px solid var(--border)}.mp-private button{background:none;border:0;color:var(--text);font-family:'JetBrains Mono'}.mp-order-actions{justify-content:flex-start;flex-wrap:wrap}.mp-order-actions>button,.mp-upload{padding:10px 13px;border-radius:10px;border:1px solid var(--border);background:var(--surface2);color:var(--text);font-weight:700}.mp-chat{border-top:1px solid var(--border);padding-top:12px}.mp-messages{display:flex;flex-direction:column;gap:7px;max-height:220px;overflow:auto;padding:8px}.mp-messages p{align-self:flex-start;max-width:80%;margin:0;padding:9px 11px;background:var(--surface2);border-radius:12px 12px 12px 3px}.mp-messages p.mine{align-self:flex-end;background:rgba(0,201,167,.12);border-radius:12px 12px 3px 12px}.mp-messages small{display:block;color:var(--text3);font-size:.62rem;margin-top:3px}.mp-chat form{display:flex;gap:8px}.mp-chat input{flex:1}
@media(max-width:820px){.marketplace-root{padding:12px 12px 100px}.mp-hero{padding:20px}.mp-ad-card{grid-template-columns:1fr 1fr}.mp-ad-person{grid-column:1/3}.mp-ad-facts{grid-column:1/3}.mp-methods{grid-column:1/2}.mp-ad-card>.mp-primary{grid-column:2/3}.mp-stats{grid-template-columns:1fr 1fr}.mp-section-head{align-items:flex-start}.mp-section-head>.mp-primary{font-size:.75rem}.mp-order-row,.mp-method-card{align-items:flex-start}.mp-row-actions{flex-direction:column}}
@media(max-width:520px){.mp-hero p{font-size:.82rem}.mp-subnav button{padding:10px 12px}.mp-subnav span{display:none}.mp-toolbar{align-items:stretch;flex-direction:column}.mp-toolbar label{display:flex;justify-content:space-between;align-items:center}.mp-ad-card{display:flex;flex-direction:column;align-items:stretch}.mp-ad-facts{justify-content:space-between}.mp-ad-price strong{font-size:1.05rem}.mp-order-row{flex-direction:column}.mp-order-row>div:last-child{text-align:left;width:100%}.mp-summary{grid-template-columns:1fr}.mp-grid-3{grid-template-columns:1fr}.mp-order-title,.mp-roles{align-items:flex-start;flex-direction:column}.mp-clock{text-align:left}.mp-dialog-backdrop{padding:0;align-items:end}.mp-dialog-backdrop>div{width:100%}.mp-dialog-card{border-radius:22px 22px 0 0;max-height:92vh;padding:20px}.mp-method-card{display:grid;grid-template-columns:auto 1fr}.mp-method-card .mp-row-actions{grid-column:1/3;flex-direction:row}}
@media(prefers-reduced-motion:reduce){.mp-ad-card{transition:none}}

/* Contención: los importes largos nunca deben ampliar el viewport móvil. */
.mp-ad-card,.mp-ad-person,.mp-ad-facts,.mp-ad-facts span{min-width:0}
.mp-ad-card{overflow:hidden}.mp-ad-person small,.mp-ad-facts span{overflow-wrap:anywhere}
.mp-hero>div,.mp-hero p,.mp-ad-person>div,.mp-private>div,.mp-private button,.mp-chat,.mp-messages{min-width:0}.mp-hero p,.mp-private button,.mp-order-actions>*{overflow-wrap:anywhere}.mp-private{overflow:hidden}.mp-private>div{gap:12px}.mp-private button{width:60%;max-width:60%;text-align:right}.mp-messages p{overflow-wrap:anywhere}
@media(max-width:520px){.mp-toolbar label{display:grid;grid-template-columns:auto minmax(140px,1fr);gap:12px}.mp-ad-facts{display:flex;flex-direction:column;width:100%;gap:10px}.mp-ad-facts span:last-child{text-align:left}.mp-trust-strip{flex-direction:column;align-items:flex-start}.mp-trust-strip span{max-width:100%;white-space:normal}.mp-private>div{align-items:flex-start}.mp-order-actions>*{min-width:0;max-width:100%;white-space:normal}.mp-dialog-card{width:100vw;max-width:100vw;overflow-x:hidden}}

/* Bandeja administrativa mínima de disputas Marketplace. */
.mp-dispute-list{display:grid;gap:12px}.mp-dispute-card{display:grid;grid-template-columns:minmax(230px,1.2fr) minmax(330px,1fr) auto;align-items:center;gap:18px;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:17px}.mp-dispute-card h3{margin:8px 0 4px}.mp-dispute-card code{display:block;max-width:310px;color:var(--text3);font-size:.68rem;overflow-wrap:anywhere}.mp-dispute-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0}.mp-dispute-card dl div{min-width:0}.mp-dispute-card dt{color:var(--text3);font-size:.65rem}.mp-dispute-card dd{margin:4px 0 0;font-weight:700;overflow-wrap:anywhere}.mp-dispute-detail{width:min(820px,100%)}.mp-dispute-detail>.mp-kicker{display:block;padding-right:45px;overflow-wrap:anywhere}.mp-dispute-finance,.mp-date-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mp-dispute-finance div,.mp-date-grid span{padding:12px;background:var(--surface2);border-radius:11px;min-width:0}.mp-dispute-finance small,.mp-date-grid span{color:var(--text3);font-size:.7rem}.mp-dispute-finance strong,.mp-date-grid strong{display:block;color:var(--text);margin-top:5px;overflow-wrap:anywhere}.mp-dispute-detail .mp-roles span{display:grid;gap:5px}.mp-dispute-detail .mp-roles strong{display:grid;gap:2px}.mp-dispute-detail .mp-roles small{color:var(--text3);font-family:'JetBrains Mono',monospace;font-weight:400;overflow-wrap:anywhere}.mp-dispute-detail section h3{font-size:.85rem;margin:4px 0 9px}.mp-evidence-list{display:grid;gap:7px}.mp-evidence-link{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--border);border-radius:11px;color:var(--text);text-decoration:none;background:var(--surface2)}.mp-evidence-link i{color:var(--teal)}.mp-evidence-link span,.mp-evidence-link small{display:block;overflow-wrap:anywhere}.mp-evidence-link small{color:var(--text3);margin-top:3px}.mp-evidence-link.disabled{opacity:.55;pointer-events:none}.mp-admin-chat{display:flex;flex-direction:column;gap:7px;max-height:250px;overflow:auto;padding:10px;background:var(--surface2);border-radius:12px}.mp-admin-chat p{display:grid;gap:4px;margin:0;padding:10px;background:var(--surface);border-left:3px solid var(--border);border-radius:7px;overflow-wrap:anywhere}.mp-admin-chat p.admin{border-left-color:var(--teal)}.mp-admin-chat strong,.mp-admin-chat small{color:var(--text3);font-size:.65rem}.mp-muted{color:var(--text3)}.mp-outcome-choice{display:grid;gap:8px;margin:0;padding:13px;border:1px solid var(--border);border-radius:13px}.mp-outcome-choice legend{padding:0 6px;font-weight:700}.mp-outcome-choice label{display:block}.mp-outcome-choice input{position:absolute;opacity:0;pointer-events:none}.mp-outcome-choice span{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid var(--border);border-radius:10px;color:var(--text2);cursor:pointer}.mp-outcome-choice input:checked+span{border-color:var(--teal);background:rgba(0,201,167,.08);color:var(--text)}.mp-dispute-detail button.danger{background:#c83e50;color:#fff;border:0}.mp-dispute-detail label>small{color:var(--text3)}
@media(max-width:820px){.mp-dispute-card{grid-template-columns:1fr}.mp-dispute-card dl{grid-template-columns:repeat(3,1fr)}.mp-dispute-card>.mp-primary{justify-self:start}}
@media(max-width:520px){.mp-dispute-card dl,.mp-dispute-finance,.mp-date-grid{grid-template-columns:1fr}.mp-dispute-card>.mp-primary{width:100%}.mp-dispute-detail .mp-roles{gap:14px}}

/* P2P — jerarquía compacta, filtros reales y carga progresiva. */
.mp-hero{justify-content:flex-start;gap:14px;padding:18px 20px;border-radius:18px;box-shadow:none;background:linear-gradient(135deg,var(--surface),var(--surface2))}.mp-hero h1{font-size:1.65rem;margin:3px 0}.mp-hero p{font-size:.82rem}.mp-hero .mp-icon-btn{margin-left:auto}.mp-brand-glyph{display:flex!important;align-items:center;justify-content:center;gap:3px;width:54px;height:54px;flex:none;border-radius:17px;background:linear-gradient(145deg,rgba(0,201,167,.22),rgba(74,143,255,.14));border:1px solid rgba(0,201,167,.24)}.mp-brand-glyph i{font-size:.84rem}.mp-brand-glyph i:nth-child(2){color:var(--teal)}
.mp-subnav{padding:12px 0 8px;border-bottom:1px solid var(--border)}.mp-subnav button{border:0;border-radius:9px;background:transparent;padding:9px 13px}.mp-subnav button.active{background:rgba(0,201,167,.12);color:var(--teal)}
/* Navegación modular (2026-08): Marketplace ya traía su propio subnav —
   se reposiciona fijo abajo (reemplazando visualmente al nav global, que
   goTab() oculta con body.module-mode) en vez de moverlo/duplicarlo. */
.mp-subnav{position:fixed;left:0;right:0;bottom:0;z-index:55;margin:0;background:var(--surface);border-top:1px solid var(--border);border-bottom:0;padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px));justify-content:space-around}
.mp-toolbar{display:grid;grid-template-columns:auto 1fr;align-items:end;padding:13px 0;margin:0}.mp-filters{display:grid;grid-template-columns:minmax(110px,1fr) minmax(160px,1.3fr) minmax(110px,.7fr);gap:8px;justify-self:end;width:min(600px,100%)}.mp-toolbar input,.mp-toolbar select{width:100%;min-width:0;border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:10px;padding:10px;font:inherit}.mp-segment button{min-width:96px}.mp-trust-strip{margin:5px 0 12px}

/* Cabecera compacta del mercado: Comprar/Vender + fiat a la derecha, y fila de chips de filtro debajo. Los anuncios deben quedar visibles sin scroll excesivo en 390px. */
.mp-market-controls{margin:10px 0 8px;padding:8px 10px 2px;background:var(--surface);border:1px solid var(--border);border-radius:14px}
.mp-market-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0 8px}
.mp-fiat-select{flex:none;width:auto;min-width:0;border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:10px;padding:9px 10px;font:inherit;font-weight:700}
.mp-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding-bottom:8px}
.mp-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface2);color:var(--text2);border-radius:999px;padding:7px 12px;font:inherit;font-size:.78rem;font-weight:700;white-space:nowrap}
.mp-chip i{font-size:.65rem;color:var(--text3)}
.mp-chip.active{border-color:rgba(0,201,167,.45);color:var(--teal);background:rgba(0,201,167,.08)}
.mp-chip-static{background:transparent;border-style:dashed;color:var(--text3);font-weight:800;letter-spacing:.03em}
.mp-chip-clear{background:rgba(255,76,96,.08);border-color:rgba(255,76,96,.25);color:var(--red)}
.mp-protection-hint{display:flex;align-items:center;gap:7px;margin:0 0 10px;padding:6px 2px;color:var(--text3);font-size:.7rem;line-height:1.3}
.mp-protection-hint i{color:var(--teal);flex:none}
.mp-filter-sheet{max-width:420px}.mp-filter-sheet label{margin-bottom:2px}
.mp-ad-card{padding:16px 18px;border-radius:14px;box-shadow:none}.mp-ad-price strong{font-size:1.15rem}.mp-ad-person small{line-height:1.45}.mp-methods span{padding:5px 8px}.mp-profile-link{display:flex;align-items:center;gap:13px;width:100%;margin:0 0 14px;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--surface2);color:var(--text);text-align:left}.mp-profile-link>span{display:grid;gap:3px;flex:1}.mp-profile-link small{color:var(--text3)}.mp-profile-link>i:first-child{color:var(--teal)}
.mp-market-skeleton{display:grid;gap:12px;padding-top:16px;color:var(--text3)}.mp-market-skeleton i{display:block;height:112px;border-radius:14px;background:linear-gradient(90deg,var(--surface) 25%,var(--surface2) 45%,var(--surface) 65%);background-size:300% 100%;animation:mpShimmer 1.15s linear infinite}@keyframes mpShimmer{to{background-position:-150% 0}}.mp-error-state i{color:var(--red)}
@media(max-width:820px){.mp-toolbar{grid-template-columns:1fr;align-items:stretch}.mp-filters{justify-self:stretch;width:100%}.mp-ad-card{gap:13px}}
@media(max-width:520px){.marketplace-root{padding:8px 10px 100px}.mp-hero{padding:12px;border-radius:14px}.mp-brand-glyph{width:44px;height:44px;border-radius:13px}.mp-hero h1{font-size:1.3rem}.mp-hero p{display:none}.mp-hero .mp-icon-btn{width:38px;height:38px}.mp-subnav{justify-content:space-between}.mp-subnav button{flex:1;justify-content:center;padding:9px 5px}.mp-subnav span{display:block;font-size:.68rem}.mp-filters{grid-template-columns:1fr 1fr}.mp-filters label:last-child{grid-column:2}.mp-filters label:first-child{grid-column:1}.mp-filters label:nth-child(2){grid-column:1/3;grid-row:2}.mp-toolbar label{display:grid;grid-template-columns:1fr;gap:4px}.mp-segment{width:100%}.mp-segment button{flex:1}.mp-trust-strip span:nth-child(2){display:none}.mp-ad-card{padding:14px}.mp-ad-person{order:1}.mp-ad-price{order:2}.mp-ad-facts{order:3}.mp-methods{order:4}.mp-ad-card>.mp-primary{order:5;width:100%}.mp-market-skeleton i{height:148px}
  /* Mercado compacto: header + chips en el menor espacio posible para que el primer anuncio quede visible sin scroll largo en 390px. */
  .mp-market-head{padding:8px 0 6px;gap:8px}.mp-segment{width:auto;flex:1}.mp-segment button{min-width:0;flex:1;padding:8px 6px;font-size:.82rem}.mp-fiat-select{padding:8px 8px;font-size:.82rem}
  .mp-filter-row{gap:6px;padding-bottom:6px}.mp-chip{padding:6px 10px;font-size:.72rem}.mp-chip-static{display:none}
  .mp-protection-hint{font-size:.66rem;margin-bottom:8px}
}

/* Wizard "Publicar anuncio" — 3 pasos en un solo <form>, solo el panel
   activo es visible. Corrige contraste dark-mode de inputs numéricos
   (color-scheme faltaba en <input>, por eso las flechas del spinner se
   veian claras/rotas sobre fondo oscuro), scroll por paso en vez de un
   formulario largo, y footer fijo para que Continuar/Publicar no quede
   tapado por el teclado móvil. */
.mp-dialog-card input[type="number"],.mp-dialog-card input[type="text"],.mp-dialog-card input[type="email"],.mp-dialog-card input:not([type]){color-scheme:dark;background-color:var(--surface2);color:var(--text)}
html[data-theme="light"] .mp-dialog-card input[type="number"],html[data-theme="light"] .mp-dialog-card input[type="text"],html[data-theme="light"] .mp-dialog-card input[type="email"],html[data-theme="light"] .mp-dialog-card input:not([type]){color-scheme:light;background-color:#fff;color:#0f172a}
.mp-wizard{padding-bottom:0}
.mp-wizard-progress{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 6px}
.mp-wizard-dot{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--surface2);border:1px solid var(--border);color:var(--text3);font-size:.72rem;font-weight:800}
.mp-wizard-dot.active{background:rgba(0,201,167,.14);border-color:rgba(0,201,167,.5);color:var(--teal)}
.mp-wizard-step{display:none;gap:14px}
.mp-wizard-step.active{display:grid}
.mp-wizard-step h2{margin:0}
.mp-wizard-hint,.mp-wizard-note{margin:0;color:var(--text3);font-size:.78rem;line-height:1.4}
.mp-wizard-side{width:100%}
.mp-wizard-side button{flex:1}
.mp-wizard-summary{grid-template-columns:1fr}
.mp-wizard-summary span{text-align:left}
.mp-wizard-footer{position:sticky;bottom:0;display:flex;gap:10px;padding:14px 0 calc(4px + env(safe-area-inset-bottom,0px));margin-top:4px;background:var(--surface);border-top:1px solid var(--border)}
.mp-wizard-back{flex:none;padding:11px 16px;border-radius:11px;border:1px solid var(--border);background:var(--surface2);color:var(--text);font:inherit;font-weight:700}
.mp-wizard-next,.mp-wizard-submit{flex:1}
.mp-wizard-methods-empty{display:grid;gap:8px;padding:18px 16px;border:1px dashed rgba(255,76,96,.35);border-radius:14px;background:rgba(255,76,96,.06);text-align:center}
.mp-wizard-methods-empty p{margin:0;color:var(--text2);font-size:.82rem}
.mp-wizard-methods-empty p:first-child{color:var(--text);font-weight:700}
.mp-wizard-methods-empty button{width:100%}
@media(max-width:520px){
  .mp-wizard-dot{width:24px;height:24px;font-size:.68rem}
  .mp-wizard-footer{padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))}
}

/* Bug de producción 2026-08-22: anuncio EXHAUSTED != orden activa terminada.
   Badge de "acción pendiente" en el subnav, separación Activas/Completadas
   y el aviso de orden ligada dentro de Mis anuncios. */
/* Punto 10 (bug de producción 2026-08-22): [hidden] perdía el empate de
   especificidad contra .mp-nav-badge{display:inline-grid} (misma
   especificidad, origen "autor" gana el empate sobre la hoja del user
   agent) — el atributo hidden nunca ocultaba nada y el badge se veía
   siempre como un punto rojo vacío en "P2P"/"Anuncios"/"Perfil", sin
   contar nada real. Con el fix, [hidden] vuelve a ocultar de verdad. El
   badge por defecto (conteo real, ej. Órdenes) usa un tono neutro — el
   rojo queda reservado exclusivamente para alertas críticas reales
   (mp-nav-badge-alert, ej. cuenta P2P restringida/suspendida). */
.mp-nav-badge{display:inline-grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:99px;background:var(--teal);color:#041511;font-size:.6rem;font-weight:800;line-height:1}
.mp-nav-badge[hidden]{display:none}
.mp-nav-badge.mp-nav-badge-alert{background:var(--red);color:#fff}
.mp-order-group-title{margin:18px 0 8px;font-size:.8rem;color:var(--text3);text-transform:uppercase;letter-spacing:.04em}
.mp-order-group-title:first-of-type{margin-top:6px}
.mp-order-pending{display:flex;align-items:center;gap:6px;margin:6px 0 0;color:#f0a500;font-size:.76rem;font-weight:700}
.mp-order-pending i{font-size:.7rem}
.mp-ad-order-link{display:flex;align-items:center;gap:8px;margin:8px 0 0;padding:8px 10px;border-radius:10px;background:rgba(74,143,255,.08);border:1px solid rgba(74,143,255,.2);color:var(--text2);font-size:.76rem}
.mp-ad-order-link button{border:0;background:none;color:#75a9ff;font-weight:700;padding:0;cursor:pointer;text-decoration:underline}

/* ════════════════════════════════════════
   Pantalla 1 (Detalles y pago) — "Contraparte" y enlace a Pantalla 2.
   Pantalla 2 (Seguimiento + Chat) — inspirada visualmente en el chat de
   Enviar a Venezuela (header + resumen + timeline + mensajes + input
   fijo), con motor financiero y clases CSS 100% propias de Marketplace
   (mp-track-*, nunca .p2p-* de Envíos). Bloque "Unificar chat P2P con la
   referencia visual de Enviar a Venezuela", 2026-08-22.
   ════════════════════════════════════════ */
.mp-track-counterparty{display:flex;flex-direction:column;gap:2px;padding:12px;background:var(--surface2);border-radius:12px}
.mp-track-counterparty small{color:var(--text3);font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}
.mp-track-counterparty strong{color:var(--text);font-size:.92rem}
.mp-track-counterparty strong i{color:var(--teal);margin-left:5px}
.mp-track-counterparty span{color:var(--text3);font-size:.74rem}
.mp-track-view-details{align-self:flex-start;border:0;background:none;color:var(--teal);font:inherit;font-weight:700;font-size:.8rem;padding:2px 0;cursor:pointer;text-decoration:underline}

.mp-track{padding-bottom:0}
.mp-track-header{display:flex;align-items:center;gap:12px}
.mp-track-back{flex:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:var(--surface2);color:var(--text)}
.mp-track-header-info{display:flex;flex-direction:column;gap:4px}
.mp-track-header-info h2{margin:0;font-size:1.05rem}
.mp-track-timeline{display:flex;justify-content:space-between;gap:4px;padding:6px 0}
.mp-track-tl-step{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;text-align:center}
.mp-track-tl-dot{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1px solid var(--border);background:var(--surface2);color:var(--text3);font-size:.72rem}
.mp-track-tl-done .mp-track-tl-dot{background:rgba(0,201,167,.16);border-color:var(--teal);color:var(--teal)}
.mp-track-tl-current .mp-track-tl-dot{background:rgba(74,143,255,.16);border-color:#75a9ff;color:#75a9ff}
.mp-track-tl-cancelled .mp-track-tl-dot{background:rgba(255,76,96,.1);border-color:rgba(255,76,96,.3);color:var(--red)}
.mp-track-tl-label{font-size:.6rem;color:var(--text3);line-height:1.2}
.mp-track-tl-done .mp-track-tl-label{color:var(--teal)}
.mp-track-tl-current .mp-track-tl-label{color:#75a9ff}
.mp-track-dispute-banner,.mp-track-alert{display:flex;align-items:center;gap:9px;padding:11px 13px;border-radius:12px;font-size:.8rem}
.mp-track-dispute-banner{background:rgba(255,76,96,.08);border:1px solid rgba(255,76,96,.22);color:var(--red)}
.mp-track-alert{background:rgba(74,143,255,.07);border:1px solid rgba(74,143,255,.2);color:var(--text2);align-items:flex-start}
.mp-track-alert strong{display:block;margin-top:4px;color:var(--text)}
.mp-track-completed{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;text-align:center;color:var(--teal);font-weight:800}
.mp-track-completed i{font-size:1.6rem}
.mp-track-completed small{color:var(--text3);font-weight:400}
.mp-track-actions{display:flex;gap:9px;flex-wrap:wrap}
.mp-track-chat-msgs{display:flex;flex-direction:column;gap:8px;max-height:42vh;overflow:auto;padding:8px 2px}
.mp-track-chat-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:26px 0;color:var(--text3)}
.mp-track-chat-empty i{font-size:1.5rem}
.mp-track-msg{display:flex;flex-direction:column;max-width:82%}
.mp-track-msg-me{align-self:flex-end;align-items:flex-end}
.mp-track-msg-other{align-self:flex-start;align-items:flex-start}
.mp-track-msg-system{align-self:center;align-items:center;max-width:95%}
.mp-track-bubble{padding:9px 12px;border-radius:12px 12px 12px 3px;background:var(--surface2);color:var(--text);font-size:.84rem;overflow-wrap:anywhere}
.mp-track-msg-me .mp-track-bubble{background:rgba(0,201,167,.14);border-radius:12px 12px 3px 12px}
.mp-track-msg-system .mp-track-bubble{background:rgba(74,143,255,.08);color:var(--text2);font-size:.76rem;border-radius:99px;padding:7px 14px}
.mp-track-meta{font-size:.62rem;color:var(--text3);margin-top:3px;padding:0 2px}
.mp-track-evidence-card{display:flex;flex-direction:column;gap:6px;padding:8px;background:var(--surface2);border-radius:12px 12px 3px 12px;max-width:220px}
.mp-track-msg-other .mp-track-evidence-card{border-radius:12px 12px 12px 3px}
.mp-track-evidence-img{width:100%;border-radius:8px;cursor:pointer;display:block}
.mp-track-evidence-link{display:flex;align-items:center;gap:7px;color:var(--text);font-size:.8rem;text-decoration:none}
.mp-track-evidence-link.disabled{opacity:.55;pointer-events:none}
.mp-track-evidence-status{font-size:.66rem;color:var(--text3)}
.mp-track-chat-wrap{position:relative}
.mp-track-new-msgs{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:7px 14px;border:0;border-radius:99px;background:var(--teal);color:#041511;font:inherit;font-size:.74rem;font-weight:700;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.mp-track-new-msgs.hidden{display:none}
.mp-track-chat-bar{position:sticky;bottom:0;display:flex;align-items:center;gap:8px;padding:10px 0 0;margin-top:2px;background:var(--surface);border-top:1px solid var(--border)}
.mp-track-attach{flex:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:var(--surface2);color:var(--text)}
.mp-track-input{flex:1;min-width:0;border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:99px;padding:10px 14px;font:inherit}
.mp-track-send{flex:none;width:38px;height:38px;border-radius:50%;border:0;background:var(--teal);color:#041511}
@media(max-width:520px){
  .mp-track-chat-msgs{max-height:38vh}
  .mp-track-tl-label{font-size:.56rem}
}

/* Pulido móvil Envíos/P2P: una escala única y más información útil por
   pantalla, sin alterar consultas, permisos ni estados financieros. */
.marketplace-root{
  --mp-control-h:40px;
  --mp-radius:14px;
  --mp-gap:10px;
  --mp-title:1.3rem;
  --mp-body:.82rem;
}
.mp-hero{
  min-height:58px;padding:8px 2px;border:0;border-radius:0;
  background:transparent;box-shadow:none;
}
.mp-hero .wallet-home-btn,.mp-hero .mp-icon-btn{
  width:40px;height:40px;min-width:40px;min-height:40px;
  border-radius:12px;background:var(--surface);border:1px solid var(--border);
}
.mp-hero .wallet-home-btn{order:0}.mp-brand-glyph{order:1;width:40px;height:40px;border-radius:12px}.mp-hero>div:last-of-type{order:2}.mp-hero .mp-icon-btn{order:3;margin-left:auto}
.mp-hero h1{font-size:var(--mp-title);line-height:1.1;letter-spacing:-.025em}.mp-hero p{font-size:.74rem}.mp-kicker{font-size:.61rem;letter-spacing:.1em}
.mp-subnav button{min-width:0;min-height:48px;flex-direction:column;gap:3px;padding:5px 4px;font-size:.68rem}
.mp-subnav button>i{display:grid;place-items:center;width:22px;height:22px;font-size:1rem}.mp-subnav span{line-height:1.05;text-align:center}
.mp-market-head{padding:8px 0 6px}.mp-segment{min-height:var(--mp-control-h);border-radius:12px}.mp-segment button{min-height:32px;padding:7px 14px}.mp-fiat-select{height:var(--mp-control-h)}
.mp-filter-row{gap:6px}.mp-chip{min-height:34px;padding:6px 10px}.mp-protection-hint{margin-bottom:8px}
.mp-loading,.mp-empty{min-height:148px;padding:22px 16px;border-radius:var(--mp-radius)}.mp-empty i{font-size:1.55rem}.mp-empty h3{margin:0;font-size:.95rem}.mp-empty button{padding:9px 13px}
.mp-ad-list,.mp-order-list,.mp-method-list{gap:var(--mp-gap)}
.mp-ad-card,.mp-order-row,.mp-method-card{border-radius:var(--mp-radius);box-shadow:none}
.mp-ad-card{padding:14px;gap:12px}.mp-avatar{width:38px;height:38px}.mp-ad-price strong{font-size:1.05rem}.mp-ad-facts{gap:16px}.mp-methods span{font-size:.68rem}
.mp-order-row{padding:13px 14px}.mp-order-row h3,.mp-method-card h3{margin:6px 0 2px;font-size:.92rem}.mp-order-row p,.mp-method-card p{font-size:var(--mp-body)}
.mp-order-terminal{border-color:rgba(0,201,167,.14)}.mp-order-terminal>div:last-child{align-self:center}.mp-order-title:has(.s-COMPLETED) .mp-clock,.mp-order-title:has(.s-CANCELLED) .mp-clock,.mp-order-title:has(.s-EXPIRED) .mp-clock,.mp-order-title:has(.s-REFUNDED) .mp-clock{display:none}
.mp-section-head{margin:10px 0;gap:10px}.mp-section-head h2{font-size:1.08rem}.mp-section-head p{font-size:.72rem;line-height:1.35}.mp-new-ad{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:9px 12px;white-space:nowrap}
.mp-own-ad .mp-row-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.mp-own-ad .mp-row-actions button[disabled]{background:var(--surface2);color:var(--text3);border-color:var(--border)}
@media(max-width:520px){
  .marketplace-root{padding:6px 10px 92px}
  .mp-hero{gap:8px;padding:6px 0}.mp-hero .wallet-home-btn,.mp-hero .mp-icon-btn{width:38px;height:38px;min-width:38px;min-height:38px}.mp-brand-glyph{display:none!important}.mp-hero h1{font-size:1.18rem}.mp-kicker{font-size:.58rem}
  .mp-subnav{padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px))}.mp-subnav button{padding:4px 2px}.mp-subnav span{font-size:.62rem}
  .mp-ad-card{padding:12px}.mp-order-row{padding:12px;gap:10px}.mp-order-row>div:last-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.mp-countdown{margin:0}.mp-row-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.mp-row-actions button{width:100%;padding:8px 7px}
  .mp-section-head>.mp-new-ad{font-size:.72rem}.mp-empty{min-height:132px}
}

/* Marketplace comparte la escala óptica del sistema de bottom navigation.
   Solo normaliza su .mp-subnav fija; no altera contenido ni rutas P2P. */
.marketplace-root .mp-subnav{
  height:calc(var(--mobile-bottom-nav-h) + env(safe-area-inset-bottom,0px));
  gap:0;
  padding:0 4px env(safe-area-inset-bottom,0px);
  align-items:stretch;
  justify-content:space-around;
  overflow:hidden;
}
.marketplace-root .mp-subnav button{
  min-width:0;
  min-height:0;
  flex:1;
  flex-direction:column;
  justify-content:center;
  gap:var(--mobile-bottom-nav-gap);
  padding:5px 2px 4px;
  color:var(--mobile-bottom-nav-inactive);
  font-size:var(--mobile-bottom-nav-label);
  font-weight:650;
  line-height:1.05;
  letter-spacing:0;
  opacity:.9;
}
.marketplace-root .mp-subnav button>i{
  width:var(--mobile-bottom-nav-icon);
  height:var(--mobile-bottom-nav-icon);
  flex:0 0 var(--mobile-bottom-nav-icon);
  display:grid;
  place-items:center;
  font-size:1.28rem;
  line-height:1;
}
.marketplace-root .mp-subnav button>span:not(.mp-nav-badge){
  display:block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:var(--mobile-bottom-nav-label);
}
.marketplace-root .mp-subnav button.active{
  color:var(--teal);
  opacity:1;
}
.marketplace-root .mp-subnav button.active>i{
  filter:drop-shadow(0 0 6px rgba(0,201,167,.5));
}

@media(max-width:520px){
  .mp-market-controls{
    margin-top:12px;
    padding:7px 8px 2px;
    border-radius:13px;
  }
  .mp-market-controls .mp-market-head{padding:5px 0 7px;}
}
