/* El contenedor del tema (.container-fluid de bootstrap) arrastra margenes negativos
   y en 390px desbordaba a la derecha. Aqui se acota todo a la caja. */
body.rnx-market-home { overflow-x: hidden; }
.content, .content .container-fluid { max-width:100%; padding-left:0; padding-right:0; margin:0; }
.sc-caja, .sc-panel, .sc-soltar, .sc-campo input, .sc-campo textarea, .sc-btn {
    box-sizing: border-box; max-width: 100%; }
.sc-caja { width: 100%; }

/* Subir cuenta para cotizar. Movil primero: un dedo, botones grandes, sin columnas. */

.sc-caja { max-width:620px; margin:0 auto; padding:18px 16px 40px; }
.sc-titulo { font-size:28px; font-weight:950; color:#0f172a; margin:0 0 6px; }
.sc-intro { color:#475569; font-size:15px; line-height:1.6; margin:0 0 20px; }

.sc-pasos { display:flex; gap:8px; margin-bottom:18px; }
.sc-paso { flex:1; display:flex; align-items:center; gap:7px; font-size:12px; font-weight:800;
    color:#94a3b8; padding:8px 6px; border-radius:10px; background:#f1f5f9; }
.sc-paso span { display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px;
    border-radius:999px; background:#cbd5e1; color:#fff; font-size:11px; }
.sc-paso.activo { color:#0f172a; background:#e7f0ff; }
.sc-paso.activo span { background:#0d6efd; }

.sc-panel { background:#fff; border:1px solid #e7edf5; border-radius:16px; padding:18px;
    box-shadow:0 6px 18px rgba(15,23,42,.06); }

.sc-campo { display:block; margin-bottom:16px; }
.sc-campo > span { display:block; font-size:13px; font-weight:800; color:#334155; margin-bottom:6px; }
.sc-campo input, .sc-campo textarea { display:block; width:100%; border-radius:12px; padding:13px 14px;
    font-size:16px; /* 16px evita que iOS haga zoom al enfocar */
    background:#f8fafc; border:1px solid #cbd5e1; color:#0f172a; }
.sc-campo input:focus, .sc-campo textarea:focus { border-color:#0d6efd; outline:none; }
.sc-campo small { display:block; margin-top:6px; font-size:12px; color:#64748b; line-height:1.5; }

.sc-ok { background:#ecfdf5; border:1px solid #a7f3d0; color:#065f46; border-radius:12px;
    padding:12px 14px; font-size:13.5px; margin-bottom:16px; }
.sc-ok i { margin-right:7px; }

.sc-btn { display:block; width:100%; border:0; border-radius:999px; padding:15px 20px;
    background:#0d6efd; color:#fff; font-size:15px; font-weight:900; cursor:pointer;
    min-height:52px; /* objetivo tactil comodo */ }
.sc-btn:hover { background:#3b82f6; }
.sc-btn:disabled { background:#cbd5e1; cursor:not-allowed; }
.sc-btn-sec { background:#f1f5f9; color:#0f172a; text-decoration:none; text-align:center; margin-top:14px; }
.sc-btn-sec:hover { background:#e2e8f0; color:#0f172a; text-decoration:none; }

.sc-soltar { display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center;
    padding:34px 18px; border:2px dashed #cbd5e1; border-radius:16px; background:#f8fafc;
    cursor:pointer; margin-bottom:16px; }
.sc-soltar:active { background:#eef2ff; border-color:#0d6efd; }
.sc-soltar i { font-size:30px; color:#0d6efd; }
.sc-soltar b { font-size:15px; color:#0f172a; }
.sc-soltar small { font-size:12px; color:#64748b; }

.sc-minis { display:grid; grid-template-columns:repeat(auto-fill, minmax(72px,1fr)); gap:7px; margin-bottom:16px; }
.sc-mini { aspect-ratio:1; border-radius:10px; overflow:hidden; background:#f1f5f9; }
.sc-mini img { width:100%; height:100%; object-fit:cover; display:block; }
.sc-mini.sc-mini-zip { display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:4px; padding:7px; border:1px solid #bfdbfe; background:#eff6ff; color:#1d4ed8;
    text-align:center; }
.sc-mini-zip i { font-size:24px; }
.sc-mini-zip span { display:block; width:100%; overflow:hidden; text-overflow:ellipsis;
    white-space:nowrap; font-size:10px; font-weight:800; }

.sc-barra-caja { margin-bottom:14px; }
.sc-barra { height:10px; border-radius:999px; background:#e2e8f0; overflow:hidden; }
.sc-barra-in { height:100%; width:0; background:#0d6efd; border-radius:999px; transition:width .25s ease; }
.sc-estado { margin-top:7px; font-size:12.5px; font-weight:700; color:#475569; }

.sc-error { background:#fef2f2; border:1px solid #fecaca; color:#991b1b; border-radius:12px;
    padding:11px 13px; font-size:13px; margin-bottom:14px; }

.sc-fin { text-align:center; padding:14px 4px; }
.sc-fin i { font-size:46px; color:#22c55e; }
.sc-fin h2 { font-size:22px; font-weight:950; color:#0f172a; margin:12px 0 8px; }
.sc-fin p { color:#475569; font-size:14.5px; line-height:1.65; margin:0; }
.sc-acceso { margin:18px 0; padding:16px; border:1px solid #bfdbfe; border-radius:14px;
    background:#eff6ff; text-align:left; }
.sc-acceso > p { margin:0 0 12px; color:#1e3a8a; }
.sc-acceso .sc-btn { margin-top:10px; }
.sc-acceso small { display:block; margin-top:12px; color:#475569; font-size:12px; line-height:1.5; }
.sc-pin { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 13px;
    border-radius:10px; background:#fff; border:1px solid #dbeafe; }
.sc-pin span { color:#64748b; font-size:12px; font-weight:800; text-transform:uppercase; }
.sc-pin strong { color:#0f172a; font-size:22px; letter-spacing:4px; font-family:ui-monospace,monospace; }

@media (min-width:640px) { .sc-caja { padding-top:26px; } .sc-titulo { font-size:32px; } }
