
:root{
  --navy:#071a38; --navy2:#102f62; --magenta:#e00086; --magenta2:#ff45aa;
  --pink:#fff0f8; --green:#18a957; --green-soft:#eaf8f0; --yellow:#ffbf2f;
  --red:#d83a52; --bg:#f6f7fb; --white:#fff; --text:#18243a; --muted:#718096;
  --border:#e7eaf0; --shadow:0 16px 40px rgba(10,32,65,.09);
}
*{box-sizing:border-box}
html,body{min-height:100%}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}
button,input,select,textarea{font:inherit}
button{transition:.18s ease}
button:hover{transform:translateY(-1px)}
a{text-decoration:none;color:inherit}
.topbar{
  height:76px;background:#fff;display:flex;align-items:center;justify-content:space-between;
  padding:0 26px;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:30
}
.brand{display:flex;align-items:center;gap:12px}
.logo{
  width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--magenta),var(--magenta2));
  color:#fff;display:grid;place-items:center;font-weight:900;font-size:22px;box-shadow:0 10px 24px rgba(224,0,134,.24)
}
.brand strong{font-size:20px;color:var(--navy)}
.brand small{display:block;color:var(--muted);margin-top:2px}
.top-actions{display:flex;gap:10px;align-items:center}
.btn{border:0;border-radius:12px;padding:11px 16px;font-weight:900;cursor:pointer}
.btn-outline{background:#fff;border:1px solid var(--border);color:var(--navy)}
.btn-dark{background:var(--navy);color:#fff}
.btn-primary{background:linear-gradient(135deg,var(--magenta),var(--magenta2));color:#fff}
.btn-green{background:var(--green);color:#fff}
.btn-red{background:var(--red);color:#fff}
.btn-soft{background:var(--pink);color:var(--magenta)}
.container{max-width:1380px;margin:auto;padding:26px}
.hero{
  display:grid;grid-template-columns:1.3fr .7fr;gap:20px;
  background:linear-gradient(135deg,var(--magenta),#ff3daa 65%,#ff9bd3 130%);
  color:#fff;border-radius:30px;padding:34px;box-shadow:0 18px 45px rgba(224,0,134,.18);overflow:hidden;position:relative
}
.hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.09);right:-70px;top:-80px}
.hero h1{margin:0;font-size:42px;line-height:1.04}
.hero p{font-size:17px;line-height:1.6;color:#ffeaf5;max-width:760px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.hero-actions .btn{padding:14px 19px}
.hero-card{
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);border-radius:24px;padding:22px;
  backdrop-filter:blur(8px);align-self:stretch;position:relative;z-index:1
}
.hero-card h3{margin-top:0}
.hero-card ul{padding-left:20px;line-height:1.8}
.section-title{display:flex;justify-content:space-between;align-items:center;margin:28px 0 14px}
.section-title h2{margin:0;color:var(--navy)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow);padding:21px}
.card h3{margin:0 0 8px;color:var(--navy)}
.card p{color:var(--muted);line-height:1.55}
.pill{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;font-weight:900;font-size:12px}
.pill.pending{background:#fff5d9;color:#a06f00}
.pill.ok{background:var(--green-soft);color:var(--green)}
.pill.red{background:#ffe8ec;color:#b82f46}
.form-shell{max-width:1100px;margin:auto;padding:26px}
.form-card{background:#fff;border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);padding:26px}
.form-card h1{margin-top:0;color:var(--navy)}
.stepper{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:20px 0 24px}
.step{background:#f2f4f8;color:#6f7893;padding:10px;border-radius:12px;text-align:center;font-weight:900;font-size:12px}
.step.active{background:var(--magenta);color:#fff}
.form-section{padding:4px 0 20px;border-bottom:1px solid #eef0f4;margin-bottom:20px}
.form-section:last-of-type{border-bottom:0}
.form-section h2,.form-section h3{color:var(--navy);margin:0 0 14px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:grid;gap:7px}.field.full{grid-column:1/-1}
label{font-size:13px;font-weight:900;color:var(--navy)}
input,select,textarea{width:100%;border:1px solid var(--border);border-radius:12px;padding:12px;background:#fbfcfe;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--magenta);box-shadow:0 0 0 3px rgba(224,0,134,.08)}
textarea{min-height:100px;resize:vertical}
.checkline{display:flex;align-items:flex-start;gap:9px;margin:9px 0;color:#536078;font-size:13px;line-height:1.45}
.checkline input{width:auto;margin-top:3px}
.notice{background:#fff7fb;border:1px solid #f6d5e7;border-radius:15px;padding:14px;color:#6b4960}
.notice.green{background:var(--green-soft);border-color:#bde7cc;color:#17663b}
.actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:18px}
.layout{display:grid;grid-template-columns:260px 1fr;min-height:calc(100vh - 76px)}
.sidebar{background:var(--navy);padding:20px 15px;color:#fff}
.profile{padding:16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);margin-bottom:17px}
.profile strong{display:block}.profile small{color:#b8c9e2}
.verify{display:inline-flex;gap:6px;margin-top:8px;color:#baffd6;font-size:12px;font-weight:900}
.menu{display:grid;gap:6px}
.menu button,.menu a{
  background:transparent;border:0;color:#dfe7f4;padding:12px 13px;text-align:left;border-radius:12px;font-weight:800;cursor:pointer;display:block;width:100%
}
.menu button.active,.menu a.active,.menu button:hover,.menu a:hover{background:#fff;color:var(--navy)}
.content{padding:25px 28px 48px}
.headline{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.headline h1{margin:0;color:var(--navy)}.headline p{margin:6px 0 0;color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
.stat{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:18px}
.stat small{color:var(--muted);font-weight:800}.stat b{display:block;font-size:28px;color:var(--navy);margin-top:5px}
.table-card{background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}
.table-tools{display:flex;justify-content:space-between;gap:10px;padding:18px;border-bottom:1px solid var(--border)}
.table-tools input{max-width:380px}
table{width:100%;border-collapse:collapse}
th,td{padding:14px 16px;text-align:left;border-bottom:1px solid #eef0f4;vertical-align:top}
th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:#718096;background:#fafbfc}
td{font-size:14px}
.small{font-size:12px;color:var(--muted)}
.row-actions{display:flex;gap:7px;flex-wrap:wrap}
.row-actions button{border:0;border-radius:9px;padding:8px 10px;font-size:12px;font-weight:900;cursor:pointer}
.modal-bg{position:fixed;inset:0;background:rgba(4,14,32,.58);display:none;align-items:flex-start;justify-content:center;padding:20px;z-index:80;overflow:auto}
.modal{width:min(900px,100%);background:#fff;border-radius:24px;padding:24px;box-shadow:0 30px 80px rgba(0,0,0,.25);margin:auto}
.modal-header{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:16px}
.modal-header h2{margin:0;color:var(--navy)}
.close-x{border:0;background:#f3f5f8;width:40px;height:40px;border-radius:12px;font-size:25px;color:var(--navy);cursor:pointer}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}
.detail{padding:11px 0;border-bottom:1px solid #eef0f4}
.detail small{display:block;color:var(--muted);font-weight:800;margin-bottom:3px}
.cert{border:10px solid #eef2f6;padding:28px;text-align:center;border-radius:20px}
.cert .seal{width:80px;height:80px;border-radius:50%;margin:0 auto 12px;background:var(--green);color:#fff;font-size:42px;font-weight:900;display:grid;place-items:center}
.cert h1{color:var(--magenta)}.cert h2{color:var(--navy)}
.footer-note{text-align:center;color:#8994a8;font-size:12px;margin-top:24px}
@media(max-width:1050px){
  .hero{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.layout{grid-template-columns:84px 1fr}
  .profile strong,.profile small,.verify span,.menu span{display:none}.stats{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .topbar{padding:0 12px}.brand small{display:none}.top-actions .btn-outline{display:none}
  .container,.form-shell,.content{padding:14px}.hero{padding:24px}.hero h1{font-size:32px}
  .cards,.form-grid,.detail-grid{grid-template-columns:1fr}.stepper{grid-template-columns:1fr 1fr}.sidebar{display:none}.layout{display:block}
  .stats{grid-template-columns:1fr 1fr}.headline{display:block}.table-card{overflow:auto}table{min-width:900px}
}


/* ===== V4 CUENTA AUTOMÁTICA ===== */
.login-commerce-wrap{max-width:1180px;margin:34px auto;padding:0 18px;display:grid;grid-template-columns:1.08fr .72fr;gap:20px}
.login-commerce-visual{border-radius:30px;padding:38px;color:#fff;background:linear-gradient(135deg,#d9007f,#ff42a9);box-shadow:0 20px 48px rgba(217,0,127,.2)}
.login-commerce-visual h1{font-size:44px;line-height:1.04;margin:16px 0}.login-commerce-visual h1 span{color:#fff}
.login-commerce-visual p{line-height:1.6;color:#ffe9f5}.login-chip{display:inline-flex;border:1px solid rgba(255,255,255,.35);padding:8px 11px;border-radius:999px;font-size:12px;font-weight:900}
.login-benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.login-benefit-grid div{background:rgba(255,255,255,.14);padding:14px;border-radius:15px}
.login-commerce-card{background:#fff;border:1px solid var(--border);border-radius:26px;padding:28px;box-shadow:var(--shadow)}
.login-commerce-brand{display:flex;align-items:center;gap:10px;margin-bottom:24px}.login-commerce-brand strong,.login-commerce-brand span{display:block}.login-commerce-brand span{color:var(--muted);font-size:12px}
.login-commerce-card h2{font-size:29px;color:var(--navy);margin:0 0 8px}.login-submit{width:100%;margin-top:20px}
.login-message{margin-top:12px;font-size:13px;font-weight:800}.login-message.error{color:#bc3047}.login-message.ok{color:var(--green)}
.approval-banner{display:flex;gap:14px;align-items:flex-start;padding:17px 19px;border-radius:18px;margin-bottom:18px}
.approval-banner strong{display:block;font-size:15px}.approval-banner p{margin:4px 0 0;line-height:1.5}
.pending-approval{background:#fff6da;border:1px solid #efd782;color:#745300}.approved-state{background:var(--green-soft);border:1px solid #bde7cc;color:#17663b}
.approval-icon{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.72);display:grid;place-items:center;font-weight:900;font-size:20px}
.commerce-hero-panel{display:grid;grid-template-columns:1fr .35fr;gap:18px;padding:28px 32px;border-radius:28px;color:#fff;background:linear-gradient(135deg,#e00086,#ff54b5);box-shadow:0 18px 40px rgba(224,0,134,.16)}
.commerce-hero-panel h1{font-size:38px;margin:11px 0 8px}.commerce-hero-panel p{margin:0}.hero-panel-actions{display:flex;gap:9px;margin-top:18px;flex-wrap:wrap}
.commerce-benefit-card{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:18px}.commerce-benefit-card small,.commerce-benefit-card strong{display:block}.commerce-benefit-card strong{font-size:21px;margin-top:8px}
.account-info-card{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:#fff;border:1px solid var(--border);border-radius:20px;padding:17px;margin:18px 0;box-shadow:var(--shadow)}
.account-info-card small{display:block;color:var(--muted);font-size:11px;font-weight:900}.account-info-card strong{display:block;color:var(--navy);margin-top:5px}
.panel-section-title{color:var(--navy)}
.is-locked{opacity:.48;cursor:not-allowed!important;pointer-events:none}
.locked-card.locked-view{position:relative;opacity:.62}.locked-card.locked-view:after{content:"PENDIENTE DE APROBACIÓN";position:absolute;right:14px;top:14px;background:#fff3cf;color:#846000;padding:6px 8px;border-radius:999px;font-size:9px;font-weight:900}
.documents-review{margin-top:18px}.documents-review h3{color:var(--navy)}.documents-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.document-item{border:1px solid var(--border);border-radius:14px;padding:13px;background:#fbfcfe}.document-item strong,.document-item small{display:block}.document-item small{color:var(--muted);margin-top:4px}
.document-preview-link{display:inline-block;margin-top:9px;color:var(--magenta);font-weight:900;font-size:12px;cursor:pointer}
.credentials-admin{margin-top:15px;background:#071a38;color:#fff;border-radius:15px;padding:14px}.credentials-admin b{color:#ff7ec7}
@media(max-width:850px){.login-commerce-wrap,.commerce-hero-panel{grid-template-columns:1fr}.account-info-card{grid-template-columns:1fr 1fr}.documents-grid{grid-template-columns:1fr}}

/* ===== V5 FUNCIONAL ===== */
.registration-success{background:linear-gradient(135deg,#eafaf1,#f7fffa);border:2px solid #7bdba4;border-radius:22px;padding:24px;color:#145f37;box-shadow:0 14px 34px rgba(24,169,87,.12)}
.registration-success .success-check{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#18a957;color:#fff;font-size:36px;font-weight:900;margin-bottom:10px}
.registration-success h2{margin:0 0 12px;color:#116235}
.form-submitted{opacity:.45;pointer-events:none;filter:grayscale(.1)}
.btn.submitting{opacity:.7;pointer-events:none}
.rejected-state{background:#fff0f2;border:1px solid #f2bdc6;color:#9f2940}
.module-page{max-width:1380px;margin:auto;padding:28px}.module-title h1{margin:0;color:var(--navy);font-size:34px}.module-title p{color:var(--muted);margin:6px 0 20px}
.module-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.module-card{background:#fff;border:1px solid var(--border);border-radius:22px;padding:22px;box-shadow:var(--shadow)}
.module-card h2{margin-top:0;color:var(--navy)}
.item-list{display:grid;gap:10px}.item-row{border:1px solid var(--border);border-radius:15px;padding:14px;background:#fbfcfe;display:flex;justify-content:space-between;gap:15px;align-items:flex-start}
.item-row b{display:block;color:var(--navy)}.item-row small{display:block;color:var(--muted);margin-top:4px;line-height:1.4}
.item-row .item-badge{background:#fff0f8;color:var(--magenta);padding:6px 9px;border-radius:999px;font-weight:900;font-size:11px}
.rating-summary{display:grid;grid-template-columns:.5fr 1fr;gap:18px;background:#fff7fb;border-radius:18px;padding:18px;margin-bottom:15px}.rating-big{font-size:48px;font-weight:900;color:var(--navy)}.stars-big{color:#f4a400;font-size:25px;font-weight:900;margin-left:10px}.small-stars{font-size:18px;margin:0}
.review-card{border-top:1px solid var(--border);padding:16px 0}.review-card p{color:var(--muted)}
.doc-wallet{display:flex;justify-content:space-between;align-items:center;gap:15px;background:linear-gradient(135deg,var(--magenta),var(--magenta2));color:#fff;border-radius:20px;padding:20px;margin-bottom:18px}.doc-wallet small,.doc-wallet strong{display:block}.doc-wallet strong{font-size:30px;margin-top:4px}
.documents-actions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.tool-card{border:1px solid #f0d2e3;background:#fff;border-radius:17px;padding:17px;text-align:left;cursor:pointer}.tool-card b{display:block;color:var(--magenta);font-size:16px}.tool-card span{display:block;color:var(--muted);margin-top:5px;font-size:13px}
.simple-doc-area{margin-top:18px}.simple-doc-form{background:#f8f9fb;border:1px solid var(--border);border-radius:18px;padding:18px}.simple-doc-form h3{margin-top:0;color:var(--navy)}
@media(max-width:850px){.module-grid,.documents-actions-grid,.rating-summary{grid-template-columns:1fr}}

/* ===== V6 DOCUMENTOS PRO / LOGOS ===== */
.commerce-title-row{display:flex;align-items:center;gap:16px;margin-top:12px}
.commerce-title-row h1{margin:0!important}
.commerce-logo-wrap,.big-logo-preview,.public-logo,.doc-top-commerce-logo{
  background:#fff;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;overflow:hidden
}
.commerce-logo-wrap{width:72px;height:72px;border-radius:18px;box-shadow:0 10px 24px rgba(0,0,0,.12)}
.commerce-logo-wrap img,.big-logo-preview img,.public-logo img,.doc-top-commerce-logo img{width:100%;height:100%;object-fit:contain;background:#fff}
.commerce-logo-wrap span,.big-logo-preview span,.public-logo span,.doc-top-commerce-logo span{font-weight:900;color:var(--magenta)}
.commerce-legal-mini{font-size:12px;color:#ffe5f3;margin-top:4px}
.commerce-profile-head{display:flex;align-items:center;gap:16px}
.big-logo-preview{width:100px;height:100px;border-radius:22px;border-color:var(--border)}
.public-profile-demo{text-align:center;background:#fff7fb;border:1px solid #f5d5e7;border-radius:22px;padding:25px}
.public-logo{width:120px;height:120px;border-radius:24px;margin:0 auto 15px;border-color:#f1d7e6}
.public-benefit{margin:15px auto;background:#fff;color:var(--magenta);border:1px solid #f1d7e6;border-radius:14px;padding:12px;font-weight:900}
.rating-inline{color:#f4a400;margin-top:12px}

.document-topbar{height:auto;min-height:82px;padding-top:8px;padding-bottom:8px}
.document-brand-wrap{display:flex;align-items:center;gap:12px}
.doc-top-commerce-logo{width:52px;height:52px;border-radius:14px;border-color:#e9e9ee;box-shadow:0 8px 18px rgba(0,0,0,.06)}
.document-workspace{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;align-items:start}
.document-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:18px}
.doc-type-active{border-color:var(--magenta)!important;box-shadow:0 0 0 2px rgba(224,0,134,.07)}
.live-preview-card{position:sticky;top:100px}
.live-preview-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}.live-preview-head span{font-size:12px;color:var(--muted)}
.document-actions-bar{display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:0;background:#fff;padding:14px 0 2px;border-top:1px solid var(--border);margin-top:14px}
.pro-document-paper{
  --accent:#e00086;--dark:#071a38;--soft:#fff0f8;
  background:#fff;border:1px solid #ddd;min-height:730px;padding:36px;position:relative;overflow:hidden;
  box-shadow:0 10px 28px rgba(0,0,0,.08);font-family:Arial,sans-serif;color:#1d2738
}
.pro-doc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-bottom:3px solid var(--accent);padding-bottom:15px}
.pro-doc-company{display:flex;gap:12px;align-items:center}.pro-doc-logo{width:70px;height:70px;display:grid;place-items:center;overflow:hidden}.pro-doc-logo img{max-width:100%;max-height:100%;object-fit:contain}
.pro-doc-company h2{margin:0;color:var(--dark);font-size:21px}.pro-doc-company p{margin:4px 0 0;color:#667086;font-size:12px}
.pro-doc-type{text-align:right}.pro-doc-type h1{margin:0;color:var(--accent);font-size:24px}.pro-doc-type small{color:#6d7890}
.pro-doc-client{margin:22px 0 14px;background:var(--soft);border-left:5px solid var(--accent);padding:14px;border-radius:10px}
.pro-doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 22px;font-size:13px}
.pro-doc-table{width:100%;border-collapse:collapse;margin:18px 0}.pro-doc-table th,.pro-doc-table td{border-bottom:1px solid #e7e9ef;padding:10px;text-align:left}.pro-doc-table th{background:var(--dark);color:#fff}
.pro-doc-total{display:flex;justify-content:flex-end}.pro-doc-total-box{width:310px;background:var(--soft);padding:14px;border-radius:12px}.pro-doc-total-box div{display:flex;justify-content:space-between;padding:5px 0}.pro-doc-total-box .grand{font-size:20px;font-weight:900;color:var(--dark);border-top:1px solid #ddd;margin-top:5px;padding-top:10px}
.pro-doc-conditions{margin-top:18px;font-size:12px;color:#596377}
.pro-doc-footer{position:absolute;left:36px;right:36px;bottom:24px;border-top:1px solid #dfe2e8;padding-top:10px;display:flex;justify-content:space-between;gap:14px;color:#697386;font-size:10px}
.pro-doc-bottom-logo{width:46px;height:46px;display:grid;place-items:center;overflow:hidden}.pro-doc-bottom-logo img{max-width:100%;max-height:100%;object-fit:contain}
.pro-watermark{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;z-index:0}.pro-watermark img{max-width:55%;max-height:40%;object-fit:contain}.pro-watermark-text{font-size:52px;font-weight:900;transform:rotate(-28deg);white-space:nowrap}
.pro-document-paper>*:not(.pro-watermark){position:relative;z-index:1}
.large-preview{min-height:950px}
.palette-executive{--accent:#2856a3;--dark:#14284b;--soft:#eef3fb}
.palette-emerald{--accent:#15936a;--dark:#20372f;--soft:#edf9f5}
.palette-burgundy{--accent:#8d2948;--dark:#3c1725;--soft:#fbf1f4}
.palette-gold{--accent:#b18a32;--dark:#191919;--soft:#fbf6e9}
.palette-violet{--accent:#7344d5;--dark:#261848;--soft:#f2edff}
.palette-orange{--accent:#eb7428;--dark:#143255;--soft:#fff2e9}
.palette-teal{--accent:#168c91;--dark:#0d3447;--soft:#eaf8f8}
@media(max-width:1000px){.document-workspace{grid-template-columns:1fr}.live-preview-card{position:static}.document-type-grid{grid-template-columns:1fr}.document-brand-wrap{gap:7px}}

/* ===== V7 FOTOS / PUBLICO / AJUSTE BLANCO ===== */
.commerce-hero-panel,.commerce-hero-panel h1,.commerce-hero-panel p,.commerce-hero-panel b,
.commerce-hero-panel span:not(.pill),.commerce-benefit-card,.commerce-benefit-card small,.commerce-benefit-card strong{
  color:#fff!important
}
.commerce-legal-mini{color:#fff!important;opacity:.92}
.owner-gallery-section{background:#fff;border:1px solid var(--border);border-radius:22px;padding:22px;margin:18px 0;box-shadow:var(--shadow)}
.owner-gallery-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}
.owner-gallery-head span{font-size:11px;color:var(--magenta);font-weight:900;letter-spacing:.06em}.owner-gallery-head h2{margin:5px 0;color:var(--navy)}.owner-gallery-head p{margin:0;color:var(--muted)}
.commerce-photo-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.commerce-photo-item{height:150px;border-radius:16px;overflow:hidden;background:#f5f6f9;position:relative;border:1px solid var(--border)}
.commerce-photo-item img{width:100%;height:100%;object-fit:cover}.commerce-photo-item .photo-label{position:absolute;left:8px;bottom:8px;background:rgba(7,26,56,.78);color:#fff;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900}
.commerce-gallery-empty{grid-column:1/-1;padding:28px;border:2px dashed #efd9e6;border-radius:18px;text-align:center;color:#7b8396;background:#fff9fc}
.public-commerce-page{max-width:1320px;margin:auto;padding:22px}
.public-commerce-hero{height:430px;border-radius:30px;overflow:hidden;position:relative;background:#101c38}
.public-hero-photo{position:absolute;inset:0;background-size:cover;background-position:center}.public-commerce-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,26,56,.87),rgba(7,26,56,.35),rgba(7,26,56,.12))}
.public-commerce-info{position:absolute;left:38px;bottom:34px;color:#fff;max-width:720px}.public-commerce-info h1{font-size:44px;margin:12px 0 7px}.public-commerce-info p{margin:0 0 10px}
.public-commerce-logo{width:86px;height:86px;border-radius:20px;background:#fff;padding:7px;display:grid;place-items:center;overflow:hidden;box-shadow:0 12px 26px rgba(0,0,0,.2)}.public-commerce-logo img{width:100%;height:100%;object-fit:contain}.public-commerce-logo span{color:var(--magenta);font-size:34px;font-weight:900}
.public-commerce-benefit{display:inline-block;background:#e00086;padding:10px 14px;border-radius:13px;font-weight:900;margin-top:10px}.public-rating{margin-top:12px;color:#ffd45b}
.public-commerce-grid{display:grid;grid-template-columns:1fr .34fr;gap:18px;margin-top:18px}.public-description{font-size:16px;line-height:1.7;color:#58657d}.public-gallery{grid-template-columns:repeat(3,1fr)}.public-gallery .commerce-photo-item{height:210px}
.public-side-card{height:max-content;position:sticky;top:96px}.public-detail-row{padding:11px 0;border-bottom:1px solid var(--border)}.public-detail-row small{display:block;color:var(--muted);font-weight:800}.public-detail-row b{display:block;margin-top:3px;color:var(--navy)}
@media(max-width:900px){.commerce-photo-gallery{grid-template-columns:1fr 1fr}.public-commerce-grid{grid-template-columns:1fr}.public-side-card{position:static}}
@media(max-width:600px){.commerce-photo-gallery,.public-gallery{grid-template-columns:1fr}.public-commerce-hero{height:500px}.public-commerce-info{left:20px;right:20px;bottom:22px}.public-commerce-info h1{font-size:34px}}

/* ===== V10 CORRECCION TOTAL ===== */
.panel-commerce-logo{
  width:52px;height:52px;border-radius:15px;background:#fff;border:1px solid #ececf2;
  display:grid;place-items:center;overflow:hidden;box-shadow:0 8px 20px rgba(10,30,60,.08)
}
.panel-commerce-logo img{width:100%;height:100%;object-fit:contain;padding:4px;background:#fff}
.panel-commerce-logo span{font-weight:900;font-size:22px;color:var(--magenta)}
.benefit-main{background:linear-gradient(135deg,#fff0f8,#fff);border:1px solid #f4cee3;border-radius:18px;padding:18px;margin-bottom:16px}
.benefit-main small{display:block;font-weight:900;color:#e00086}.benefit-main strong{display:block;font-size:28px;color:#071a38;margin-top:6px}
.benefit-products{display:grid;gap:10px}.benefit-product{border:1px solid var(--border);border-radius:15px;padding:14px;background:#fbfcfe}
.benefit-product h3{margin:0 0 5px;color:#071a38}.benefit-product p{margin:4px 0;color:#667086}.benefit-price{display:flex;gap:12px;align-items:center;margin-top:8px}
.benefit-price .regular{text-decoration:line-through;color:#8992a5}.benefit-price .member{font-weight:900;color:#e00086;font-size:18px}
.photo-upload-status{margin-top:8px;font-size:12px;font-weight:800;color:#168c54}

/* ===== V11 · 50 MODELOS PROFESIONALES REALES ===== */
.pro-document-paper{
  isolation:isolate;
  transition:.2s ease;
}
.pro-document-paper .template-vector{
  position:absolute;pointer-events:none;z-index:0;
}
.pro-document-paper .template-vector.v1{width:180px;height:180px;border-radius:50%;border:22px solid var(--accent);opacity:.075;right:-65px;top:-70px}
.pro-document-paper .template-vector.v2{width:260px;height:70px;background:var(--accent);opacity:.07;transform:rotate(-24deg);right:-70px;top:85px}
.pro-document-paper .template-vector.v3{width:160px;height:160px;right:18px;top:80px;opacity:.08;background-image:radial-gradient(var(--accent) 2px,transparent 2px);background-size:14px 14px}
.pro-document-paper .template-vector.v4{width:220px;height:220px;border:2px solid var(--accent);opacity:.08;right:-90px;top:120px;transform:rotate(45deg)}
.pro-document-paper .template-vector.v5{width:260px;height:120px;right:-50px;top:20px;opacity:.075;background:linear-gradient(135deg,var(--accent) 0 33%,transparent 33% 66%,var(--dark) 66%)}

/* 1-5: full executive header */
.model-family-1 .pro-doc-top{background:linear-gradient(135deg,var(--dark),var(--accent));margin:-36px -36px 24px;padding:28px 36px;border:0;color:#fff}
.model-family-1 .pro-doc-company h2,.model-family-1 .pro-doc-company p,.model-family-1 .pro-doc-type h1,.model-family-1 .pro-doc-type small{color:#fff}

/* 6-10: left sidebar */
.model-family-2{padding-left:118px}
.model-family-2:before{content:"";position:absolute;left:0;top:0;bottom:0;width:86px;background:linear-gradient(180deg,var(--dark),var(--accent));z-index:0}
.model-family-2 .pro-doc-top{border-bottom:0;border-left:5px solid var(--accent);padding-left:16px}
.model-family-2 .pro-doc-footer{left:118px}

/* 11-15: diagonal */
.model-family-3 .pro-doc-top{position:relative;background:var(--dark);margin:-36px -36px 26px;padding:24px 36px 40px;border:0;overflow:hidden}
.model-family-3 .pro-doc-top:after{content:"";position:absolute;left:-5%;right:-5%;height:55px;bottom:-33px;background:#fff;transform:rotate(-4deg)}
.model-family-3 .pro-doc-company,.model-family-3 .pro-doc-type{z-index:1}
.model-family-3 .pro-doc-company h2,.model-family-3 .pro-doc-company p,.model-family-3 .pro-doc-type h1,.model-family-3 .pro-doc-type small{color:#fff}

/* 16-20 split */
.model-family-4 .pro-doc-top{display:grid;grid-template-columns:1fr 1fr;border:0;gap:0;padding:0;margin-bottom:24px}
.model-family-4 .pro-doc-company{background:var(--dark);padding:20px;border-radius:18px 0 0 18px}
.model-family-4 .pro-doc-type{background:var(--soft);padding:20px;border-radius:0 18px 18px 0;display:flex;flex-direction:column;justify-content:center}
.model-family-4 .pro-doc-company h2,.model-family-4 .pro-doc-company p{color:#fff}

/* 21-25 ribbon */
.model-family-5 .pro-doc-top{border-bottom:0;padding-bottom:8px}
.model-family-5 .pro-doc-type{position:relative;background:var(--accent);padding:14px 24px;margin-right:-36px;color:#fff}
.model-family-5 .pro-doc-type:before{content:"";position:absolute;left:-24px;top:0;border-top:28px solid transparent;border-bottom:28px solid transparent;border-right:24px solid var(--accent)}
.model-family-5 .pro-doc-type h1,.model-family-5 .pro-doc-type small{color:#fff}

/* 26-30 premium cards */
.model-family-6{background:linear-gradient(180deg,#fff 0 62%,var(--soft) 62%)}
.model-family-6 .pro-doc-top{border:1px solid #e7e8ed;border-radius:20px;padding:18px;box-shadow:0 10px 24px rgba(0,0,0,.05)}
.model-family-6 .pro-doc-client,.model-family-6 .pro-doc-total-box{box-shadow:0 8px 20px rgba(0,0,0,.05);border:1px solid #ececf1}

/* 31-35 institutional frame */
.model-family-7{border:8px solid var(--dark);outline:2px solid var(--accent);outline-offset:-16px;padding:48px}
.model-family-7 .pro-doc-top{border-bottom:1px solid var(--dark)}
.model-family-7 .pro-doc-footer{left:48px;right:48px}

/* 36-40 corners */
.model-family-8:before,.model-family-8:after{content:"";position:absolute;width:90px;height:90px;z-index:0}
.model-family-8:before{left:0;top:0;border-left:20px solid var(--accent);border-top:20px solid var(--accent)}
.model-family-8:after{right:0;bottom:0;border-right:20px solid var(--dark);border-bottom:20px solid var(--dark)}
.model-family-8 .pro-doc-top{border-bottom:4px double var(--accent)}

/* 41-45 wave */
.model-family-9 .pro-doc-top{background:linear-gradient(135deg,var(--dark),var(--accent));margin:-36px -36px 30px;padding:24px 36px 58px;border:0;border-radius:0 0 48% 16%/0 0 26% 10%}
.model-family-9 .pro-doc-company h2,.model-family-9 .pro-doc-company p,.model-family-9 .pro-doc-type h1,.model-family-9 .pro-doc-type small{color:#fff}

/* 46-50 editorial */
.model-family-10 .pro-doc-top{display:block;text-align:center;border:0}
.model-family-10 .pro-doc-company{justify-content:center}
.model-family-10 .pro-doc-type{text-align:center;margin-top:18px;border-top:1px solid #dadde4;border-bottom:1px solid #dadde4;padding:14px}
.model-family-10 .pro-doc-type h1{letter-spacing:.08em;font-size:20px}
.model-family-10 .pro-doc-client{background:#fff;border:1px solid #e5e7ec;border-left:1px solid #e5e7ec}

/* Model-specific subtle variations */
.model-2,.model-7,.model-12,.model-17,.model-22,.model-27,.model-32,.model-37,.model-42,.model-47{--radius:4px}
.model-3 .pro-doc-table th,.model-8 .pro-doc-table th,.model-13 .pro-doc-table th,.model-18 .pro-doc-table th,.model-23 .pro-doc-table th,.model-28 .pro-doc-table th,.model-33 .pro-doc-table th,.model-38 .pro-doc-table th,.model-43 .pro-doc-table th,.model-48 .pro-doc-table th{letter-spacing:.08em}
.model-4 .pro-doc-client,.model-9 .pro-doc-client,.model-14 .pro-doc-client,.model-19 .pro-doc-client,.model-24 .pro-doc-client,.model-29 .pro-doc-client,.model-34 .pro-doc-client,.model-39 .pro-doc-client,.model-44 .pro-doc-client,.model-49 .pro-doc-client{border-left-width:9px}
.model-5 .pro-doc-logo,.model-10 .pro-doc-logo,.model-15 .pro-doc-logo,.model-20 .pro-doc-logo,.model-25 .pro-doc-logo,.model-30 .pro-doc-logo,.model-35 .pro-doc-logo,.model-40 .pro-doc-logo,.model-45 .pro-doc-logo,.model-50 .pro-doc-logo{border-radius:50%;background:#fff;padding:7px;box-shadow:0 5px 18px rgba(0,0,0,.08)}

/* V12 */
.registered-logo-note{padding:11px 13px;border-radius:12px;background:#eef8f3;border:1px solid #ccebd9;color:#17663b;font-size:12px;font-weight:800}
.pro-doc-top{align-items:flex-start!important;gap:18px!important}.pro-doc-company{min-width:0;flex:1 1 58%}.pro-doc-company h2{line-height:1.08!important;overflow-wrap:anywhere}.pro-doc-type{flex:0 0 38%;max-width:38%;min-width:220px}.pro-doc-type h1{line-height:1.04!important;overflow-wrap:anywhere}.model-family-10 .pro-doc-type,.model-family-4 .pro-doc-type{max-width:none;min-width:0}.pro-document-paper{-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}.pro-doc-table th{font-weight:900!important}


/* ===== V13 · LOGIN BRANDING ===== */

.brand-with-image{gap:14px}
.anamec-brand-logo{height:58px;width:auto;display:block;object-fit:contain}
.login-commerce-wrap{max-width:1260px;grid-template-columns:1.02fr .68fr;align-items:stretch}
.login-commerce-visual{position:relative;overflow:hidden;border-radius:34px;padding:34px;background:linear-gradient(140deg,#ef0f8f 0%,#ff4cb2 48%,#0b224d 120%)}
.login-commerce-visual::after{content:"";position:absolute;right:-120px;top:-120px;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,0) 68%);pointer-events:none}
.login-visual-brand-row{display:flex;align-items:center;gap:14px;margin-bottom:8px;flex-wrap:wrap}
.login-visual-anamec-logo{height:58px;width:auto;display:block;object-fit:contain;background:#fff;border-radius:16px;padding:7px 12px;box-shadow:0 10px 28px rgba(0,0,0,.12)}
.login-chip{background:rgba(255,255,255,.08);backdrop-filter:blur(4px)}
.login-commerce-visual h1{margin-top:12px}
.login-benefit-grid{margin-top:18px}
.login-benefit-grid div{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.08)}
.login-upload-note{margin-top:22px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.18);font-size:13px;font-weight:700}
.login-upload-note b{color:#fff}
.login-visual-image-frame{margin-top:14px;height:310px;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.login-visual-image-frame img{width:100%;height:100%;display:block;object-fit:cover}
.card-anamec-logo{height:50px;width:auto;display:block;object-fit:contain;background:#fff;border-radius:14px;padding:5px 10px;box-shadow:0 8px 18px rgba(237,17,140,.15)}
.login-commerce-brand{align-items:center}
.login-submit + .login-message{margin-top:14px}
@media (max-width:850px){
  .anamec-brand-logo{height:48px}
  .login-visual-anamec-logo{height:50px}
  .login-visual-image-frame{height:230px}
}

/* ===== V14 · PUBLICO COMPLETO + LOGIN RECOVERY ===== */
.password-wrap{position:relative}.password-wrap input{padding-right:70px}
.password-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:#eef2f8;color:#071a38;font-weight:900;padding:8px 10px;border-radius:9px;cursor:pointer;font-size:11px}
.forgot-password-btn{width:100%;margin-top:10px;border:0;background:transparent;color:#d9007f;font-weight:900;cursor:pointer;padding:8px;text-decoration:underline;text-underline-offset:3px}
.recovery-modal{max-width:560px}.recovery-success{display:flex;align-items:center;gap:12px;background:#eaf8f0;border:1px solid #bfe8cf;padding:14px;border-radius:15px}
.recovery-check{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#18a957;color:#fff;font-size:21px;font-weight:900}
.new-password-card{text-align:center;background:linear-gradient(135deg,#fff0f8,#f4f7fc);border:1px solid #efd2e2;border-radius:18px;padding:20px}
.new-password-card small,.new-password-card strong{display:block}.new-password-card strong{font-size:30px;color:#071a38;letter-spacing:.06em;margin:10px 0}
.photo-upload-status{margin-top:8px;color:#168c54;font-size:12px;font-weight:900}
.public-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:17px}
.public-hero-actions .btn{min-width:165px}
.btn-light-public{background:#fff!important;color:#071a38!important;border:1px solid rgba(255,255,255,.55)!important}
.public-benefit-modal{max-width:760px}
.benefit-main{background:linear-gradient(135deg,#fff0f8,#fff);border:1px solid #f4cee3;border-radius:18px;padding:18px;margin-bottom:16px}
.benefit-main small{display:block;color:#d9007f;font-weight:900}.benefit-main strong{display:block;font-size:28px;color:#071a38;margin-top:6px}
.benefit-products{display:grid;gap:10px}.benefit-product{border:1px solid #e5e8ef;border-radius:15px;padding:14px;background:#fbfcfe}
.benefit-product h3{margin:0 0 5px;color:#071a38}.benefit-product p{margin:5px 0;color:#667086}
.benefit-price{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}.benefit-price .regular{text-decoration:line-through;color:#8992a5}.benefit-price .member{font-size:18px;font-weight:900;color:#d9007f}
.public-commerce-logo.is-real-logo{padding:6px;background:#fff}
.public-commerce-logo.is-real-logo img{width:100%;height:100%;object-fit:contain}
.public-gallery .commerce-photo-item{box-shadow:0 8px 18px rgba(12,32,65,.08)}

/* ===== V15 AUTH PRO ===== */
.password-reset-page{min-height:calc(100vh - 85px);display:grid;place-items:center;padding:30px;background:#f5f7fb}
.password-reset-card{width:min(520px,100%);padding:34px}
.password-reset-card h1{margin-top:0;color:#071a38}
.password-rules{margin:12px 0;background:#f7f8fb;border:1px solid #e4e7ee;border-radius:12px;padding:11px 13px;color:#667086;font-size:12px}
/* OCULTAR CATÁLOGO ANTIGUO */
.catalogo-comercios{
  display:none !important;
}

/* =========================================================
   MI COMERCIO · IDENTIDAD VISUAL OFICIAL
   ========================================================= */

.full-width-card{
  grid-column:1 / -1;
}

.commerce-brand-card{
  overflow:hidden;
}

.commerce-brand-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:26px;
}

.commerce-brand-header h2{
  margin:4px 0 7px;
  color:#0b1638;
  font-size:26px;
}

.commerce-brand-header p{
  margin:0;
  color:#68728a;
  max-width:720px;
  line-height:1.6;
}

.brand-eyebrow{
  display:inline-block;
  color:#ec0a88;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
}

.brand-public-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  background:#fce7f3;
  color:#d6077c;
  border:1px solid #f4b9d7;
  border-radius:999px;
  padding:9px 14px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.05em;
}

.commerce-media-grid{
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(420px,1.6fr);
  gap:24px;
  align-items:stretch;
}

.commerce-media-box{
  background:#f8fafc;
  border:1px solid #e3e8f1;
  border-radius:20px;
  padding:18px;
}

.commerce-media-title{
  margin-bottom:14px;
}

.commerce-media-title strong{
  display:block;
  color:#0b1638;
  font-size:15px;
}

.commerce-media-title span{
  display:block;
  color:#8791a5;
  font-size:11px;
  margin-top:3px;
}

.commerce-logo-preview,
.commerce-cover-preview{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(135deg,#eef2f7,#f8fafc);
  border:2px dashed #d5dce8;
}

.commerce-logo-preview{
  height:240px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.commerce-cover-preview{
  height:240px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.commerce-logo-preview img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:22px;
  background:#fff;
}

.commerce-cover-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.commerce-media-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  color:#a2aabd;
  text-align:center;
}

.commerce-media-placeholder strong{
  color:#0b1638;
  font-size:25px;
  font-weight:900;
  letter-spacing:.08em;
}

.commerce-media-placeholder span{
  font-size:12px;
}

.commerce-media-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:14px;
}

.commerce-media-select,
.commerce-media-save{
  min-height:44px;
  border:0;
  border-radius:12px;
  font-weight:900;
  font-size:11px;
  cursor:pointer;
  transition:.2s ease;
}

.commerce-media-select{
  background:#0b1638;
  color:#fff;
}

.commerce-media-select:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(11,22,56,.18);
}

.commerce-media-save{
  background:#ec0a88;
  color:#fff;
}

.commerce-media-save:hover:not(:disabled){
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(236,10,136,.22);
}

.commerce-media-save:disabled{
  background:#d8dde7;
  color:#8f98aa;
  cursor:not-allowed;
}

.commerce-media-status{
  margin-top:16px;
  padding:12px 15px;
  border-radius:12px;
  font-size:13px;
  font-weight:700;
}

.commerce-media-status.success{
  display:block;
  background:#eafaf3;
  color:#18794e;
  border:1px solid #c7efdc;
}

.commerce-media-status.error{
  display:block;
  background:#fff0f2;
  color:#b4233c;
  border:1px solid #ffd0d8;
}

/* Campos institucionales bloqueados */
#miBusinessName[readonly],
#miLegalName[readonly],
#miRuc[readonly],
#miCategory[readonly]{
  background:#f1f4f8;
  color:#59637a;
  cursor:not-allowed;
  border-color:#dce2ec;
}

/* Tablet */
@media(max-width:900px){
  .commerce-media-grid{
    grid-template-columns:1fr;
  }

  .commerce-brand-header{
    flex-direction:column;
  }

  .commerce-cover-preview{
    height:220px;
  }
}

/* Celular */
@media(max-width:600px){
  .commerce-media-actions{
    grid-template-columns:1fr;
  }

  .commerce-logo-preview{
    height:200px;
  }

  .commerce-cover-preview{
    height:190px;
  }

  .commerce-brand-card{
    padding:16px;
  }
}


/* CORRECCION PREVISUALIZACION LOGO Y PORTADA */
.commerce-media-placeholder[hidden],
.commerce-logo-preview img[hidden],
.commerce-cover-preview img[hidden]{
  display:none !important;
}

.commerce-logo-preview img,
.commerce-cover-preview img{
  flex:0 0 100%;
}


/* =========================================================
   PERFIL PUBLICO · GALERIA CARRUSEL UNIVERSAL
   ========================================================= */

#publicCommerceGallery.public-gallery{
  width:100%;
  margin-top:25px;
}

.commerce-gallery-carousel-viewport{
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  border-radius:20px;
}

.commerce-gallery-carousel-viewport::-webkit-scrollbar{
  display:none;
}

.commerce-gallery-carousel-track{
  display:flex;
  gap:18px;
  align-items:stretch;
}

.public-gallery-item{
  flex:0 0 calc((100% - 36px) / 3);
  height:260px;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden;
  border-radius:18px;
  background:#eef2f7;
  box-shadow:0 8px 24px rgba(13,35,72,.10);
  scroll-snap-align:start;
}

.public-gallery-item img{
  display:block;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center;
  margin:0 !important;
}

.commerce-gallery-carousel-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  margin-top:16px;
}

.commerce-gallery-arrow{
  width:44px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:50%;
  background:#09285b;
  color:#fff;
  font-size:29px;
  font-weight:900;
  cursor:pointer;
  transition:.2s ease;
}

.commerce-gallery-arrow:hover{
  background:#ec0a88;
  transform:translateY(-2px);
}

.commerce-gallery-counter{
  min-width:110px;
  text-align:center;
  color:#667085;
  font-size:12px;
  font-weight:800;
}

/* Tablet */
@media(max-width:950px){

  .public-gallery-item{
    flex:0 0 calc((100% - 18px) / 2);
    height:235px;
  }

}

/* Celular */
@media(max-width:620px){

  .public-gallery-item{
    flex:0 0 100%;
    height:220px;
  }

  .commerce-gallery-carousel-track{
    gap:12px;
  }

}


/* =========================================================
   CORRECCION FINAL · CARRUSEL PERFIL PUBLICO
   ========================================================= */

#publicCommerceGallery.public-gallery{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin-top:26px !important;
}

#publicCommerceGallery .commerce-gallery-carousel-viewport{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}

#publicCommerceGallery .commerce-gallery-carousel-viewport::-webkit-scrollbar{
  display:none;
}

#publicCommerceGallery .commerce-gallery-carousel-track{
  display:flex !important;
  width:auto !important;
  max-width:none !important;
  grid-template-columns:none !important;
  gap:16px !important;
  align-items:stretch !important;
}

#publicCommerceGallery .public-gallery-item{
  display:block !important;
  flex:0 0 calc((100% - 32px) / 3) !important;
  width:calc((100% - 32px) / 3) !important;
  min-width:calc((100% - 32px) / 3) !important;
  max-width:none !important;
  height:220px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:#eef2f7 !important;
  scroll-snap-align:start;
}

#publicCommerceGallery .public-gallery-item img{
  display:block !important;
  width:100% !important;
  min-width:100% !important;
  max-width:none !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:0 !important;
}

#publicCommerceGallery .commerce-gallery-carousel-controls{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:18px !important;
  margin-top:18px !important;
}

#publicCommerceGallery .commerce-gallery-arrow{
  flex:0 0 46px !important;
  width:46px !important;
  height:46px !important;
  border-radius:50% !important;
  background:#0b2a5b !important;
  color:#fff !important;
  border:0 !important;
  font-size:28px !important;
  cursor:pointer !important;
}

#publicCommerceGallery .commerce-gallery-arrow:hover{
  background:#ec0a88 !important;
}

#publicCommerceGallery .commerce-gallery-counter{
  min-width:110px !important;
  text-align:center !important;
  font-weight:800 !important;
  color:#667085 !important;
}

/* TABLET */
@media(max-width:900px){

  #publicCommerceGallery .public-gallery-item{
    flex:0 0 calc((100% - 16px) / 2) !important;
    width:calc((100% - 16px) / 2) !important;
    min-width:calc((100% - 16px) / 2) !important;
    height:210px !important;
  }

}

/* CELULAR */
@media(max-width:600px){

  #publicCommerceGallery .public-gallery-item{
    flex:0 0 100% !important;
    width:100% !important;
    min-width:100% !important;
    height:220px !important;
  }

}
.public-commerce-logo{
  width:92px !important;
  height:92px !important;
  background:#fff !important;
  border-radius:20px !important;
  padding:10px !important;
  box-shadow:0 10px 25px rgba(0,0,0,.18) !important;
  overflow:hidden !important;
}

.public-commerce-logo img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}
/* LOGO INSTITUCIONAL ANAMEC EN PERFIL PUBLICO */
.anamec-header-logo{
  width:58px !important;
  height:58px !important;
  background:#fff !important;
  border-radius:14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:7px !important;
  overflow:hidden !important;
}

.anamec-header-logo img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}
/* =========================================================
   PERFIL PUBLICO · MODAL UNIVERSAL DE BENEFICIO
   ========================================================= */

.public-benefit-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(5,18,45,.72);
  backdrop-filter:blur(6px);
}

.public-benefit-modal[hidden]{
  display:none !important;
}

.public-benefit-dialog{
  width:min(520px,100%);
  background:#ffffff;
  border-radius:24px;
  padding:26px;
  box-shadow:0 30px 80px rgba(5,18,45,.30);
  position:relative;
}

.public-benefit-close{
  position:absolute;
  top:16px;
  right:16px;
  width:38px;
  height:38px;
  border:0;
  border-radius:50%;
  background:#f1f4f8;
  color:#0b1f52;
  font-size:22px;
  font-weight:900;
  cursor:pointer;
}

.public-benefit-eyebrow{
  color:#ec0a88;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
}

.public-benefit-dialog h2{
  margin:8px 44px 6px 0;
  color:#0b1f52;
  font-size:25px;
}

.public-benefit-commerce{
  color:#667085;
  margin-bottom:20px;
  font-size:14px;
  font-weight:700;
}

.public-benefit-value{
  background:#fff5fa;
  border:1px solid #f5bfdc;
  border-radius:18px;
  padding:20px;
  color:#0b1f52;
  font-size:20px;
  font-weight:900;
  line-height:1.4;
}

.public-benefit-note{
  margin:16px 0 0;
  color:#667085;
  font-size:13px;
  line-height:1.6;
}

.public-benefit-ok{
  width:100%;
  margin-top:20px;
  min-height:46px;
  border:0;
  border-radius:13px;
  background:#0b2a5b;
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

.public-benefit-ok:hover{
  background:#ec0a88;
}


/* =========================================================
   MI COMERCIO · AJUSTE RESPONSIVE PANEL EMPRESARIAL
   ========================================================= */

body.mi-comercio-page{
  overflow-x:hidden !important;
  background:#f4f7fb;
}

.mi-comercio-page .topbar{
  width:100% !important;
  max-width:none !important;
  padding-left:clamp(18px,3vw,42px) !important;
  padding-right:clamp(18px,3vw,42px) !important;
}

.mi-comercio-page .top-actions{
  flex-shrink:0;
  display:flex;
  gap:10px;
}

.mi-comercio-page .module-page{
  width:calc(100% - 40px) !important;
  max-width:1480px !important;
  margin:0 auto !important;
  padding:34px 0 50px !important;
}

.mi-comercio-page .module-title{
  width:100% !important;
  max-width:none !important;
  margin-bottom:22px !important;
}

.mi-comercio-page .module-grid{
  width:100% !important;
  max-width:none !important;
  display:grid !important;
  grid-template-columns:minmax(0,2fr) minmax(300px,.75fr) !important;
  gap:20px !important;
  align-items:start !important;
}

.mi-comercio-page .module-card{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow:hidden;
}

.mi-comercio-page .module-card:first-child{
  min-width:0 !important;
}

.mi-comercio-page .form-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:15px 16px !important;
  width:100% !important;
}

.mi-comercio-page .field{
  min-width:0 !important;
  width:100% !important;
}

.mi-comercio-page .field.full{
  grid-column:1 / -1 !important;
}

.mi-comercio-page input,
.mi-comercio-page textarea,
.mi-comercio-page select{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}

.mi-comercio-page textarea{
  resize:vertical;
}

.mi-comercio-page .public-profile-demo{
  width:100% !important;
  max-width:100% !important;
}

.mi-comercio-page .commerce-profile-head{
  max-width:100% !important;
}

/* BLOQUE LOGO + PORTADA */
.mi-comercio-page .full-width-card{
  grid-column:1 / -1 !important;
  width:100% !important;
}

.mi-comercio-page .commerce-media-grid{
  width:100% !important;
  grid-template-columns:minmax(260px,.65fr) minmax(0,1.6fr) !important;
  gap:20px !important;
}

.mi-comercio-page .commerce-media-box{
  min-width:0 !important;
  width:100% !important;
}

.mi-comercio-page .commerce-logo-preview,
.mi-comercio-page .commerce-cover-preview{
  width:100% !important;
  max-width:100% !important;
}

.mi-comercio-page .commerce-cover-preview{
  height:260px !important;
}

.mi-comercio-page .commerce-logo-preview{
  height:260px !important;
}

/* GALERIA INTERNA */
.mi-comercio-page .commerce-photo-gallery{
  width:100% !important;
  max-width:100% !important;
  overflow:hidden;
}

/* LAPTOP */
@media(max-width:1150px){

  .mi-comercio-page .module-grid{
    grid-template-columns:minmax(0,1.6fr) minmax(260px,.75fr) !important;
  }

}

/* TABLET */
@media(max-width:900px){

  .mi-comercio-page .module-page{
    width:calc(100% - 28px) !important;
  }

  .mi-comercio-page .module-grid{
    grid-template-columns:1fr !important;
  }

  .mi-comercio-page .full-width-card{
    grid-column:auto !important;
  }

  .mi-comercio-page .commerce-media-grid{
    grid-template-columns:1fr !important;
  }

}

/* CELULAR */
@media(max-width:600px){

  .mi-comercio-page .module-page{
    width:calc(100% - 20px) !important;
    padding-top:22px !important;
  }

  .mi-comercio-page .form-grid{
    grid-template-columns:1fr !important;
  }

  .mi-comercio-page .field.full{
    grid-column:auto !important;
  }

  .mi-comercio-page .topbar{
    align-items:flex-start !important;
    gap:14px;
  }

  .mi-comercio-page .top-actions{
    flex-wrap:wrap;
  }

  .mi-comercio-page .commerce-cover-preview,
  .mi-comercio-page .commerce-logo-preview{
    height:210px !important;
  }

}
/* MI COMERCIO · LOGOS REALES */

.mi-anamec-logo{
  background:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:6px !important;
  overflow:hidden !important;
}

.mi-anamec-logo img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}

#miLogoPreview img,
#publicLogo img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  padding:8px !important;
  background:#fff !important;
  border-radius:inherit !important;
}
  
