/* =====================================================================
   MiniShopCR Send · Identidad v3 (oct 2026)
   Capa final sobre Bootstrap + style.css + minishopsend-theme.css + admin-revamp.css.
   Misma línea visual que www.minishopcr.com: azul #2F5BEA, azul marino #14213D,
   verde WhatsApp y la franja de la bandera.
   - Tema "M" (MiniShopCR) del selector del cliente = nuevo tema por defecto.
     Los temas A–D siguen disponibles y quien ya los eligió los conserva.
   - No cambia IDs, formularios ni scripts.
   Rollback: quitar el <link> a este archivo en templates/base.html.
   ===================================================================== */

:root{
  --brand-blue:#2f5bea; --brand-blue-ink:#1f44c4; --brand-navy:#14213d; --brand-mist:#eaf0ff;
  --brand-wa:#22c55e; --brand-wa-ink:#0f7a46; --brand-red:#e5242b;
  --brand-bg:#f6f8fd; --brand-line:#e1e8f5; --brand-muted:#53627f;
  --cr-stripe:linear-gradient(180deg,#1b2f8f 0 20%,#fff 20% 40%,#e5242b 40% 60%,#fff 60% 80%,#1b2f8f 80%);
  --f-display:"Bricolage Grotesque","Avenir Next","Segoe UI",system-ui,sans-serif;
  --f-body:"Figtree","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
  --f-mono:"DM Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;

  /* Bootstrap 5.3 */
  --bs-primary:#2f5bea; --bs-primary-rgb:47,91,234;
  --bs-success:#16a34a; --bs-success-rgb:22,163,74;
  --bs-link-color:#2f5bea; --bs-link-color-rgb:47,91,234; --bs-link-hover-color:#1f44c4; --bs-link-hover-color-rgb:31,68,196;
  --bs-body-font-family:var(--f-body);
  --bs-body-color:#14213d; --bs-body-color-rgb:20,33,61;
  --bs-secondary-color:#53627f;
  --bs-border-color:#e1e8f5;
  --bs-border-radius:.75rem; --bs-border-radius-lg:1.25rem;
  --bs-focus-ring-color:rgba(47,91,234,.2);
}

/* ---------- Base ---------- */
body{font-family:var(--f-body)}
h1,h2,h3,h4,.h1,.h2,.h3,.h4,.card-title,.modal-title{font-family:var(--f-display);letter-spacing:-.02em;font-weight:800}
h5,h6,.h5,.h6{font-family:var(--f-body);font-weight:700}
code{font-family:var(--f-mono);color:var(--brand-blue);background:var(--brand-mist);padding:1px 6px;border-radius:6px}

/* ---------- Barra superior ---------- */
.ms-top{position:sticky;top:0;z-index:1030;background:#fff}
.ms-top::after{content:"";display:block;height:6px;background:var(--cr-stripe)}
.ms-top-inner{max-width:1320px;margin:0 auto;padding:10px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.ms-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none!important;color:var(--brand-navy)!important;font-family:var(--f-display);font-weight:800;font-size:1.2rem;letter-spacing:-.02em;white-space:nowrap}
.ms-brand img{width:40px;height:40px;object-fit:contain;border-radius:10px;border:1px solid var(--brand-line);background:#fff;padding:2px}
.ms-brand b{color:var(--brand-blue)}
.ms-brand small{font-family:var(--f-mono);font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-wa-ink)}
.ms-top-nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ms-top-nav a{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:10px;font-weight:600;color:var(--brand-navy)!important;text-decoration:none!important}
.ms-top-nav a:hover{background:var(--brand-mist);color:var(--brand-blue)!important}
.ms-top-nav a.is-active{background:var(--brand-mist);color:var(--brand-blue)!important}
.ms-top-nav a.ms-out{border:1px solid var(--brand-line)}
@media (max-width:640px){
  .ms-top-inner{padding:10px 16px}
  .ms-top-nav .ms-hide-sm{display:none}
}

/* ---------- Pie ---------- */
.ms-foot{margin-top:48px;border-top:1px solid var(--brand-line);background:#fff}
.ms-foot-inner{max-width:1320px;margin:0 auto;padding:18px 24px;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;color:var(--brand-muted);font-size:.88rem}
.ms-foot a{color:var(--brand-muted);font-weight:600}

/* ---------- Botones (todas las páginas) ---------- */
.btn{font-family:var(--f-body);font-weight:700;border-radius:12px}
.btn-primary{--bs-btn-bg:#2f5bea;--bs-btn-border-color:#2f5bea;--bs-btn-hover-bg:#1f44c4;--bs-btn-hover-border-color:#1f44c4;--bs-btn-active-bg:#1f44c4;--bs-btn-active-border-color:#1f44c4;--bs-btn-disabled-bg:#2f5bea;--bs-btn-disabled-border-color:#2f5bea}
.btn-success{--bs-btn-bg:#22c55e;--bs-btn-border-color:#22c55e;--bs-btn-color:#06331b;--bs-btn-hover-bg:#1fb455;--bs-btn-hover-border-color:#1fb455;--bs-btn-hover-color:#06331b;--bs-btn-active-bg:#1fb455;--bs-btn-active-color:#06331b}
.btn-outline-primary{--bs-btn-color:#2f5bea;--bs-btn-border-color:#c9d6fb;--bs-btn-hover-bg:#2f5bea;--bs-btn-hover-border-color:#2f5bea;--bs-btn-active-bg:#2f5bea}
.form-control,.form-select{border-radius:12px;border-color:var(--brand-line)}
.form-control:focus,.form-select:focus{border-color:var(--brand-blue);box-shadow:0 0 0 4px rgba(47,91,234,.16)}
.form-check-input:checked{background-color:var(--brand-blue);border-color:var(--brand-blue)}
.alert{border-radius:14px}
.modal-content{border-radius:22px;border:1px solid var(--brand-line)}
.table > thead th{font-family:var(--f-mono);font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-muted)}

/* ---------- Tema M del panel del cliente (correo y WhatsApp) ---------- */
body[data-module][data-theme="M"]{
  --accent:#2f5bea; --accent-2:#2f5bea; --bg:#f6f8fd; --card:#ffffff; --text:#14213d; --muted:#53627f;
  --outline:#e1e8f5; --shadow:0 1px 2px rgba(20,33,61,.04),0 14px 34px -18px rgba(20,33,61,.22);
  background:var(--bg)!important; color:var(--text);
}
body[data-module="wpp"][data-theme="M"]{--accent:#16a34a; --accent-2:#22c55e}
body[data-module][data-theme="M"] .card{background:#fff!important;border:1px solid var(--outline)!important;border-radius:20px!important;box-shadow:var(--shadow)!important;backdrop-filter:none!important}
/* sin marca de agua ni patrón de agua en campos */
body[data-module][data-theme="M"] main .card:first-child::after{display:none}
body[data-module][data-theme="M"] input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=file]),
body[data-module][data-theme="M"] textarea{background-image:none!important;padding-left:.8rem!important}
/* botones sólidos sin degradado ni brillo */
body[data-module][data-theme="M"] .btn-primary{background:#2f5bea!important;border:1px solid #2f5bea!important;color:#fff!important;box-shadow:0 10px 22px -14px #2f5bea!important}
body[data-module][data-theme="M"] .btn-primary:hover{background:#1f44c4!important}
body[data-module][data-theme="M"] .btn-success{background:#22c55e!important;border:1px solid #22c55e!important;color:#06331b!important;box-shadow:0 10px 22px -14px #22c55e!important}
body[data-module][data-theme="M"] .btn-primary::after,body[data-module][data-theme="M"] .btn-success::after{display:none}
body[data-module][data-theme="M"] .btn-outline-secondary,
body[data-module][data-theme="M"] .btn-outline-primary{background:#fff!important;color:#14213d!important;border:1px solid var(--outline)!important;box-shadow:none!important}
body[data-module][data-theme="M"] .btn-outline-secondary:hover,
body[data-module][data-theme="M"] .btn-outline-primary:hover{color:#2f5bea!important;border-color:#c9d6fb!important;background:#f3f6fd!important}
body[data-module][data-theme="M"] .btn-outline-success{background:#fff!important;color:#0f7a46!important;border:1px solid rgba(34,197,94,.45)!important;box-shadow:none!important}
body[data-module][data-theme="M"] .btn-outline-success:hover{background:#22c55e!important;color:#06331b!important}
/* encabezados del panel */
body[data-module][data-theme="M"] :is(h1,h2,h3,h4){color:#14213d}

/* Selector de tema: más discreto y con la tipografía de la marca */
.ms-theme-switcher{font-family:var(--f-body)}
.ms-theme-switcher .ms-theme-handle{font-weight:700}

/* ---------- Inicio (/inicio) ---------- */
body.ms-home{background:var(--brand-bg)!important;animation:none!important}
body.ms-home::before,body.ms-home::after,
body.ms-home .container::before,body.ms-home .container::after{display:none!important;content:none!important}
.ms-welcome{display:grid;gap:6px;margin:8px 0 24px}
.ms-welcome .mono{font-family:var(--f-mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-blue)}
.ms-welcome h1{font-size:clamp(2rem,4vw,2.8rem);margin:0}
.ms-welcome p{color:var(--brand-muted);margin:0}
.ms-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ms-module{position:relative;display:grid;gap:12px;align-content:start;padding:28px;border-radius:24px;background:#fff;border:1px solid var(--brand-line);box-shadow:0 1px 2px rgba(20,33,61,.04),0 14px 34px -18px rgba(20,33,61,.22)}
.ms-module .ico{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--brand-mist);color:var(--brand-blue)}
.ms-module.wa .ico{background:#e7f9ee;color:var(--brand-wa-ink)}
.ms-module .ico svg{width:28px;height:28px}
.ms-module h2{font-size:1.6rem;margin:0}
.ms-module p{color:var(--brand-muted);margin:0}
.ms-module .btn{justify-self:start;min-height:46px;padding:0 20px;display:inline-flex;align-items:center}
.ms-module.wa{border-color:rgba(34,197,94,.45)}
.ms-account{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;padding-top:20px;border-top:1px solid var(--brand-line)}
@media (max-width:760px){.ms-modules{grid-template-columns:minmax(0,1fr)}}

/* ---------- Ingreso y recuperación ---------- */
.ms-auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:48px;align-items:center;max-width:1000px;margin:24px auto 0;min-height:60vh}
.ms-auth-aside .mono{font-family:var(--f-mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-blue)}
.ms-auth-aside h1{font-size:clamp(2.2rem,4.5vw,3.2rem);margin:10px 0 12px;line-height:1}
.ms-auth-aside p{color:var(--brand-muted);font-size:1.05rem;max-width:40ch}
.ms-auth-aside img{display:block;width:120px;height:120px;object-fit:contain;margin-bottom:12px}
.ms-auth-card{background:#fff;border:1px solid var(--brand-line);border-radius:24px;padding:28px;box-shadow:0 1px 2px rgba(20,33,61,.04),0 24px 48px -24px rgba(20,33,61,.28)}
.ms-auth-card h2{font-size:1.6rem;margin:0 0 4px}
.ms-auth-card .sub{color:var(--brand-muted);margin:0 0 18px}
.ms-auth-card .btn-primary{min-height:48px}
@media (max-width:860px){.ms-auth{grid-template-columns:minmax(0,1fr);gap:16px}.ms-auth-aside img{display:none}}

/* ---------- Administración ---------- */
body:not([data-module]) .card{border-radius:20px!important}
.table thead th{background:#f3f6fd}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* admin-revamp.css usa degradado con !important */
body:not([data-module]) .btn-primary{background:#2f5bea!important;box-shadow:0 10px 22px -14px #2f5bea!important;border:1px solid #2f5bea!important}
body:not([data-module]) .btn-primary:hover{background:#1f44c4!important}
/* Inicio: el CSS anterior fuerza degradados y brillo con !important */
.ms-home .btn-primary{background:#2f5bea!important;border:1px solid #2f5bea!important;color:#fff!important;box-shadow:0 10px 22px -14px #2f5bea!important}
.ms-home .btn-primary:hover{background:#1f44c4!important}
.ms-home .btn-success{background:#22c55e!important;border:1px solid #22c55e!important;color:#06331b!important;box-shadow:0 10px 22px -14px #22c55e!important}
.ms-home .btn-primary::after,.ms-home .btn-success::after,.ms-home .btn-outline-danger::after{display:none!important}
.ms-home .card.home::before,.ms-home .card.home::after{display:none!important}
/* Fondo general fuera de los módulos */
body:not([data-module]){background:var(--brand-bg)}

@media(max-width:700px){.ms-top-inner{flex-wrap:wrap;gap:10px}.ms-top-nav{width:100%;display:flex;overflow-x:auto;justify-content:flex-start;gap:16px;padding-bottom:5px}.ms-top-nav a{flex-shrink:0;min-height:40px;display:inline-flex;align-items:center}}
