/* =========================================================
   REBRANDING GOLD - UI UNIFICADA TIPO MYMUNDOFLIX
   Ajustes finales: colores consistentes, textos nítidos,
   login/registro premium y cards animadas sin empalmes.
   ========================================================= */
:root{
  --mm-purple:#220a9f;
  --mm-purple-2:#3315c8;
  --mm-blue:#1e63ff;
  --mm-red:#f0142f;
  --mm-green:#05c548;
  --mm-text:#172033;
  --mm-muted:#667085;
  --mm-bg:#eef3f9;
  --mm-card:#ffffff;
  --mm-cyan:#08e0ff;
}
html{ text-rendering:geometricPrecision; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
body.store-body{ background:var(--mm-bg)!important; color:var(--mm-text)!important; font-family:'Inter','Montserrat','Poppins',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif!important; }
.rg-page{ background:var(--mm-bg)!important; }
.rg-page:before{ opacity:.18!important; background-image:radial-gradient(#f1334d 1.15px,transparent 1.2px),radial-gradient(#7c3aed 1px,transparent 1.2px)!important; background-size:92px 92px,138px 138px!important; }
.top-strip{ background:#fff!important; color:#111827!important; border:0!important; height:34px; display:flex; align-items:center; box-shadow:0 1px 0 rgba(15,23,42,.07); }
.top-strip .container{ min-height:34px!important; }
.top-strip span{ line-height:1.1; white-space:nowrap; }
.top-strip i{ color:#111827!important; margin-right:4px; }
.dot-live{ background:#05c548!important; }
.store-navbar{ min-height:67px!important; background:linear-gradient(90deg,#1c0794 0%,#2811ad 60%,#21008d 100%)!important; box-shadow:0 10px 26px rgba(25,0,112,.22)!important; }
.store-navbar .container{ align-items:center!important; }
.nav-logo{ width:145px!important; height:56px!important; object-fit:contain!important; background:#050609!important; border-radius:0!important; padding:4px 12px!important; box-shadow:none!important; }
.navbar-brand strong{ color:#fff!important; text-shadow:none!important; font-weight:900!important; letter-spacing:.1px!important; }
.search-wrap{ min-width:430px!important; height:44px; background:transparent!important; border:0!important; padding:0!important; gap:7px!important; }
.search-wrap i{ width:43px; height:43px; display:grid; place-items:center; background:rgba(255,255,255,.13); border-radius:10px; color:#fff!important; box-shadow:0 8px 20px rgba(0,0,0,.12); padding:0!important; }
.search-wrap:before{ content:'\f186'; font-family:'Font Awesome 6 Free'; font-weight:900; width:43px; height:43px; display:grid; place-items:center; background:rgba(255,255,255,.13); border-radius:10px; color:#ffd43b; box-shadow:0 8px 20px rgba(0,0,0,.12); }
.search-wrap input,.search-wrap select{ height:36px!important; border-radius:6px!important; border:0!important; color:#1f2937!important; background:#fff!important; box-shadow:none!important; font-weight:700!important; }
.search-wrap input::placeholder{ color:#8da0bc!important; opacity:1!important; }
.search-wrap select{ color:#6b7280!important; }
.btn-dashboard,.btn-login,.btn-register{ height:38px!important; border-radius:6px!important; padding:0 16px!important; font-size:.82rem!important; letter-spacing:.1px; text-transform:uppercase; font-weight:950!important; box-shadow:none!important; text-shadow:none!important; }
.btn-login{ background:var(--mm-green)!important; color:#fff!important; border:0!important; }
.btn-register{ background:var(--mm-red)!important; color:#fff!important; }
.btn-dashboard{ background:#fff!important; color:var(--mm-purple)!important; }
.hero-store{ min-height:385px!important; margin:0!important; background:linear-gradient(110deg,#05086d,#1149b5 54%,#05c8ef)!important; }
.hero-store:before{ background:linear-gradient(90deg,rgba(3,9,82,.78),rgba(31,36,178,.24)),repeating-linear-gradient(140deg,rgba(255,255,255,.08) 0 1px,transparent 1px 22px)!important; }
.hero-content{ padding:72px 0!important; }
.hero-chip{ background:#1d6fff!important; color:#fff!important; text-shadow:none!important; font-weight:950!important; }
.hero-title{ line-height:1!important; text-shadow:none!important; letter-spacing:-1px!important; color:#fff!important; }
.hero-title .pre{ color:#fff!important; text-shadow:0 3px 14px rgba(0,0,0,.2)!important; }
.hero-title span:last-child{ color:#2cecff!important; text-shadow:0 0 18px rgba(44,236,255,.25)!important; }
.hero-subtitle{ color:#f7fbff!important; text-shadow:none!important; font-weight:700!important; line-height:1.55!important; }
.catalog-section{ background:#fff!important; padding-top:66px!important; }
.section-heading{ margin-bottom:36px!important; }
.section-heading small{ color:#111827!important; text-shadow:none!important; font-weight:1000!important; line-height:1!important; }
.section-heading h2{ line-height:.9!important; color:transparent!important; text-shadow:none!important; filter:none!important; margin-top:10px!important; }
.store-grid{ gap:34px!important; align-items:stretch!important; }
.product-card{ border-radius:14px!important; overflow:hidden!important; background:#fff!important; box-shadow:0 14px 32px rgba(15,23,42,.17)!important; transform-style:preserve-3d; will-change:transform; }
.product-card:hover{ box-shadow:0 28px 64px rgba(15,23,42,.27)!important; }
.product-image{ height:290px!important; background-size:cover!important; background-position:center!important; }
.combo-grid .product-image{ height:320px!important; }
.product-image:before{ content:''; position:absolute; inset:0; background:inherit; background-size:cover; background-position:center; transition:transform .55s ease,filter .55s ease; z-index:0; }
.product-card:hover .product-image:before{ transform:scale(1.08); filter:saturate(1.1) contrast(1.05); }
.product-image:after{ z-index:1!important; background:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.18) 62%,rgba(0,0,0,.76) 100%)!important; }
.product-badge,.product-price,.product-stars,.quick-actions{ z-index:4!important; }
.product-badge{ background:linear-gradient(135deg,#f0142f,#bd1028)!important; text-shadow:none!important; box-shadow:0 10px 24px rgba(240,20,47,.32)!important; }
.product-price{ font-size:2.05rem!important; text-shadow:0 3px 8px rgba(0,0,0,.55)!important; line-height:1!important; }
.product-price small{ color:#fff!important; text-shadow:none!important; }
.product-info{ min-height:170px!important; padding:14px 15px 16px!important; background:linear-gradient(135deg,#fff 20%,color-mix(in srgb,var(--c2) 45%,#fff))!important; }
.product-info h3{ color:#111827!important; text-shadow:none!important; line-height:1.18!important; letter-spacing:-.2px!important; margin-bottom:6px!important; min-height:auto!important; word-break:normal!important; overflow-wrap:anywhere; }
.product-info p{ color:#667085!important; text-shadow:none!important; line-height:1.35!important; height:42px!important; margin-bottom:12px!important; }
.buyers-row{ min-height:31px!important; overflow:hidden!important; }
.buyers-row small{ color:#667085!important; line-height:1.2!important; text-shadow:none!important; max-width:calc(100% - 104px); }
.avatar{ text-shadow:none!important; }
.card-action{ border-radius:9px!important; text-shadow:none!important; line-height:1!important; min-height:42px; }
.quick-actions{ right:13px!important; top:13px!important; }
.quick-btn{ color:#fff!important; border:1px solid rgba(255,255,255,.28)!important; }
.quick-btn:hover{ color:#1c0794!important; }
.whatsapp-float{ background:#16d463!important; }
/* Modal login/registro exactamente integrado al estilo tienda */
.modal-backdrop.show{ opacity:.28!important; }
.modal-dialog{ --bs-modal-width:430px; }
.modal-glass{ position:relative!important; background:#fff!important; color:#243044!important; border:0!important; border-radius:18px!important; box-shadow:0 28px 80px rgba(15,23,42,.20)!important; overflow:visible!important; padding:26px!important; }
.modal-glass:before{ content:''!important; position:absolute!important; width:360px!important; height:540px!important; left:-38px!important; top:-20px!important; z-index:-1!important; border-radius:26px!important; background:linear-gradient(145deg,#16009e 0%,#3521d8 45%,#8c80ff 100%)!important; transform:rotate(-7deg)!important; opacity:.95!important; box-shadow:0 30px 60px rgba(31,13,160,.22)!important; }
.modal-glass:after{ content:''; position:absolute; inset:0; border-radius:18px; border:1px solid rgba(15,23,42,.08); pointer-events:none; }
.modal-glass .modal-header{ padding:0 0 22px!important; display:block!important; border:0!important; }
.modal-glass .modal-header .d-flex{ display:block!important; }
.modal-glass .brand-logo{ display:none!important; }
.modal-glass .fw-bold{ color:#273247!important; font-size:1.38rem!important; line-height:1.2!important; font-weight:800!important; text-shadow:none!important; margin-top:8px!important; }
.modal-glass .small{ color:#6b7280!important; line-height:1.3!important; }
.modal-glass .btn-close{ position:absolute!important; right:14px!important; top:12px!important; filter:none!important; opacity:.55!important; }
.modal-glass .modal-body{ padding:0!important; }
.modal-glass .form-label{ color:#64748b!important; font-size:.68rem!important; font-weight:950!important; letter-spacing:.8px!important; margin-bottom:7px!important; text-shadow:none!important; }
.modal-glass .form-control,.modal-glass .form-select{ height:43px!important; border-radius:9px!important; border:1px solid #cbd6e2!important; background:#f8fafc!important; color:#263247!important; font-size:.92rem!important; font-weight:700!important; box-shadow:0 5px 12px rgba(15,23,42,.06)!important; }
.modal-glass .form-control::placeholder{ color:#94a3b8!important; opacity:1!important; }
.modal-glass .form-control:focus,.modal-glass .form-select:focus{ border-color:#2812b8!important; box-shadow:0 0 0 4px rgba(40,18,184,.12)!important; }
.modal-glass .btn-primary{ min-height:46px!important; border:0!important; border-radius:7px!important; background:#2110a5!important; color:#fff!important; font-weight:950!important; text-transform:uppercase!important; box-shadow:0 15px 30px rgba(33,16,165,.24)!important; text-shadow:none!important; }
.modal-glass .btn-primary:hover{ background:#17008f!important; transform:translateY(-2px); }
.modal-glass .text-muted-soft{ color:#59677c!important; font-weight:700!important; text-shadow:none!important; }
.modal-glass .alert{ border-radius:10px!important; font-size:.88rem!important; font-weight:800!important; }
/* Página registro directa */
.register-page{ min-height:100vh; background:var(--mm-bg); color:var(--mm-text); overflow-x:hidden; position:relative; }
.register-page:before{ content:''; position:fixed; inset:0; pointer-events:none; background-image:radial-gradient(#f1334d 1.1px,transparent 1.2px),radial-gradient(#7c3aed 1px,transparent 1.2px); background-size:92px 92px,138px 138px; opacity:.18; }
.register-shell{ position:relative; min-height:calc(100vh - 101px); display:grid; place-items:center; padding:90px 16px 80px; }
.register-card-wrap{ position:relative; width:min(100%,430px); }
.register-card-wrap:before{ content:''; position:absolute; inset:-28px -32px -28px -42px; background:linear-gradient(145deg,#16009e,#3521d8 45%,#8c80ff); border-radius:26px; transform:rotate(-7deg); box-shadow:0 30px 70px rgba(31,13,160,.23); }
.register-card{ position:relative; background:#fff; border-radius:18px; padding:40px 42px 34px; box-shadow:0 28px 80px rgba(15,23,42,.20); color:#263247; }
.register-card h1{ font-size:1.35rem; margin:0 0 28px; font-weight:850; color:#273247; text-shadow:none; }
.register-card label{ color:#64748b; font-size:.68rem; font-weight:950; letter-spacing:.8px; text-transform:uppercase; margin-bottom:7px; }
.register-card .form-control,.register-card .form-select{ height:43px; border-radius:9px; border:1px solid #cbd6e2; background:#f8fafc; color:#263247; font-weight:700; box-shadow:0 5px 12px rgba(15,23,42,.06); }
.register-card .form-control:focus,.register-card .form-select:focus{ border-color:#2812b8; box-shadow:0 0 0 4px rgba(40,18,184,.12); }
.register-card .btn-primary{ min-height:46px; border:0; border-radius:7px; background:#2110a5; font-weight:950; text-transform:uppercase; box-shadow:0 15px 30px rgba(33,16,165,.24); }
.register-card .divider{ height:1px; background:#e2e8f0; margin:22px 0 18px; }
.register-card a{ color:#334155; text-decoration:none; font-weight:800; }
@media(max-width:1199px){ .store-grid{ grid-template-columns:repeat(3,minmax(0,1fr))!important; } .search-wrap{ min-width:330px!important; } }
@media(max-width:991px){ .top-strip{ display:none!important; } .store-navbar .container{ flex-wrap:wrap; } .nav-logo{ width:118px!important; } .search-wrap{ order:3; width:100%; min-width:100%!important; margin:8px 0 0!important; } .store-grid{ grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:24px!important; } .hero-content{ padding:56px 0!important; } }
@media(max-width:575px){ .store-navbar{ min-height:auto!important; padding:8px 0!important; } .nav-logo{ width:96px!important; height:42px!important; padding:2px 8px!important; } .btn-dashboard,.btn-login,.btn-register{ height:35px!important; padding:0 10px!important; font-size:.74rem!important; } .hero-store{ min-height:310px!important; } .hero-title{ font-size:2.45rem!important; } .store-grid{ grid-template-columns:1fr!important; gap:22px!important; } .product-image,.combo-grid .product-image{ height:300px!important; } .section-heading h2{ font-size:3rem!important; } .modal-glass{ padding:22px!important; margin:0 8px; } .modal-glass:before{ left:-20px!important; right:auto; width:300px!important; height:500px!important; } .register-card{ padding:34px 24px 30px; } .register-card-wrap:before{ inset:-22px -16px -22px -20px; } }

/* =========================================================
   MYMUNDOFLIX V2 - MISMO DISEÑO EN TODA LA WEB
   Corrige textos borrosos, formularios empalmados y unifica
   login/registro/tienda con colores sólidos y nítidos.
   ========================================================= */
*{text-shadow:none!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;}
body,button,input,select,textarea{font-family:'Inter','Montserrat','Poppins',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif!important;}
.top-strip{height:34px!important;min-height:34px!important;}
.top-strip .container{max-width:1220px!important;}
.store-navbar{height:72px!important;min-height:72px!important;padding:0!important;}
.store-navbar .container{max-width:1220px!important;height:72px!important;}
.nav-logo{width:150px!important;height:58px!important;object-fit:contain!important;background:#050505!important;border-radius:0!important;padding:5px 14px!important;}
.navbar-brand strong{font-size:1.05rem!important;color:#fff!important;}
.search-wrap{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;width:auto!important;}
.search-wrap input{width:170px!important;min-width:170px!important;}
.search-wrap select{width:130px!important;min-width:130px!important;}
.btn-login,.btn-register,.btn-dashboard{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;height:38px!important;line-height:38px!important;white-space:nowrap!important;border-radius:6px!important;font-size:.8rem!important;font-weight:950!important;}
.btn-login{background:#05c548!important;color:#fff!important;}
.btn-register{background:#ef1728!important;color:#fff!important;}
.btn-dashboard{background:#fff!important;color:#220a9f!important;}

/* Formularios login/registro como tarjeta premium nítida */
.register-page{background:#eef3f9!important;color:#273247!important;min-height:100vh!important;overflow-x:hidden!important;}
.register-shell{min-height:calc(100vh - 106px)!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:72px 18px 48px!important;background:#eef3f9!important;position:relative!important;}
.register-shell:before,.register-shell:after{content:'';position:fixed;width:3px;height:3px;background:#e73b4f;border-radius:50%;box-shadow:180px 80px #e73b4f,360px 210px rgba(231,59,79,.65),760px 135px rgba(231,59,79,.55),1010px 310px rgba(231,59,79,.65),1140px 220px rgba(231,59,79,.48);opacity:.75;pointer-events:none;}
.register-card-wrap{position:relative;width:min(430px,100%);z-index:2;}
.register-card-wrap:before{content:'';position:absolute;inset:-26px -42px -18px -42px;border-radius:28px;background:linear-gradient(145deg,#14009d 0%,#2d17c8 52%,#8176ff 100%);transform:rotate(-7deg);box-shadow:0 30px 65px rgba(34,10,159,.22);z-index:-1;}
.register-card{background:#fff!important;border-radius:18px!important;box-shadow:0 22px 55px rgba(15,23,42,.16)!important;border:1px solid rgba(15,23,42,.06)!important;padding:42px 42px 34px!important;color:#273247!important;}
.register-card h1{font-size:1.45rem!important;font-weight:850!important;letter-spacing:.2px!important;color:#273247!important;margin:0 0 30px!important;}
.register-card .form-label,.modal-glass .form-label{display:block!important;color:#64748b!important;font-size:.68rem!important;font-weight:950!important;letter-spacing:.75px!important;text-transform:uppercase!important;margin-bottom:8px!important;line-height:1.1!important;}
.register-card .form-control,.register-card .form-select,.modal-glass .form-control,.modal-glass .form-select{height:46px!important;border-radius:10px!important;border:1px solid #c8d3df!important;background:#f8fafc!important;color:#273247!important;font-size:.94rem!important;font-weight:700!important;box-shadow:0 5px 13px rgba(15,23,42,.07)!important;outline:none!important;}
.register-card .form-control::placeholder,.modal-glass .form-control::placeholder{color:#94a3b8!important;opacity:1!important;}
.register-card .form-control:focus,.register-card .form-select:focus,.modal-glass .form-control:focus,.modal-glass .form-select:focus{border-color:#2510ad!important;box-shadow:0 0 0 4px rgba(37,16,173,.13),0 5px 13px rgba(15,23,42,.08)!important;}
.register-card .btn-primary,.modal-glass .btn-primary{height:48px!important;border-radius:8px!important;background:#2110a5!important;border:0!important;color:#fff!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.2px!important;box-shadow:0 13px 26px rgba(33,16,165,.22)!important;}
.register-card .btn-primary:hover,.modal-glass .btn-primary:hover{background:#2d17c8!important;transform:translateY(-1px)!important;}
.register-card .divider{height:1px;background:#dbe4ef;margin:28px 0 18px!important;}
.register-card a,.modal-glass a{color:#273247!important;font-weight:800!important;text-decoration:none!important;}
.register-card .alert,.modal-glass .alert{border-radius:12px!important;font-weight:750!important;font-size:.9rem!important;}
.phone-combo{display:grid!important;grid-template-columns:138px 1fr!important;gap:10px!important;align-items:end!important;}
.phone-combo .form-select,.phone-combo .form-control{width:100%!important;min-width:0!important;}
.modal-glass{width:100%!important;max-width:430px!important;margin:0 auto!important;padding:42px!important;border-radius:18px!important;background:#fff!important;color:#273247!important;overflow:visible!important;}
.modal-glass:before{width:390px!important;height:560px!important;left:-45px!important;top:-30px!important;border-radius:28px!important;background:linear-gradient(145deg,#14009d 0%,#2d17c8 52%,#8176ff 100%)!important;transform:rotate(-7deg)!important;}
.modal-glass .modal-header{padding:0 0 28px!important;}
.modal-glass .modal-body{padding:0!important;}
.modal-glass .brand-logo{display:none!important;}
.modal-glass .fw-bold{font-size:1.45rem!important;font-weight:850!important;color:#273247!important;}
.modal-glass .btn-close{filter:none!important;opacity:.55!important;}

@media(max-width:991px){
  .store-navbar{height:auto!important;min-height:66px!important;padding:7px 0!important;}
  .store-navbar .container{height:auto!important;min-height:60px!important;}
  .search-wrap{display:none!important;}
  .nav-logo{width:118px!important;height:50px!important;}
  .register-shell{padding-top:50px!important;}
}
@media(max-width:520px){
  .register-card{padding:34px 22px 28px!important;}
  .register-card-wrap:before{inset:-18px -16px -16px -14px!important;}
  .phone-combo{grid-template-columns:1fr!important;gap:12px!important;}
  .modal-glass{padding:32px 22px!important;margin:0 12px!important;}
}
