/* =====================================================================
   MiniShopCR QR Creator · Identidad v3 (oct 2026) — capa final del panel.
   Misma línea que www.minishopcr.com. Solo tipografía, colores y componentes.
   Rollback: quitar el <link> a este archivo en templates/base.html.
   ===================================================================== */
:root{
  --bg:#f6f8fd; --card:#ffffff; --fg:#14213d; --muted:#53627f; --border:#e1e8f5;
  --link:#2f5bea; --link-hover:#1f44c4; --primary:#2f5bea; --success:#16a34a; --card-soft:#f3f6fd;
  --shadow:0 1px 2px rgba(20,33,61,.04),0 14px 34px -18px rgba(20,33,61,.22);
  --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;
  --bs-primary:#2f5bea; --bs-primary-rgb:47,91,234; --bs-link-color:#2f5bea; --bs-link-color-rgb:47,91,234;
  --bs-body-font-family:var(--f-body); --bs-body-color:#14213d; --bs-border-color:#e1e8f5;
}
body{font-family:var(--f-body);background:radial-gradient(#e1e8f5 1.2px,transparent 1.2px) 0 0/22px 22px,#f6f8fd!important}
body::before{display:none!important}
h1,h2,h3,h4,.h1,.h2,.h3,.h4,.card-title{font-family:var(--f-display);letter-spacing:-.02em;font-weight:800}
.navbar{background:#fff!important;border-bottom:0!important;position:sticky;top:0;z-index:1030}
.navbar::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:6px;background:linear-gradient(180deg,#1b2f8f 0 20%,#fff 20% 40%,#e5242b 40% 60%,#fff 60% 80%,#1b2f8f 80%)}
.navbar-brand.qr-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:800!important;letter-spacing:-.02em;color:#14213d!important}
.navbar-brand.qr-brand img{width:36px;height:36px;object-fit:contain;border-radius:10px;border:1px solid #e1e8f5;background:#fff;padding:2px}
.navbar-brand.qr-brand b{color:#2f5bea}
.navbar-brand.qr-brand small{font-family:var(--f-mono);font-size:.7rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#0f7a46}
.navbar-nav .nav-link{font-weight:600;color:#14213d;border-radius:10px}
.navbar-nav .nav-link:hover,.navbar-nav .nav-link.active{background:#eaf0ff;color:#2f5bea}
main.container{padding-top:32px!important}
.btn{border-radius:12px;font-weight:700}
.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;background:#2f5bea!important;border-color:#2f5bea!important;box-shadow:0 10px 22px -14px #2f5bea}
.btn-primary:hover{background:#1f44c4!important}
.btn-outline-primary{--bs-btn-color:#2f5bea;--bs-btn-border-color:#c9d6fb;--bs-btn-hover-bg:#2f5bea;--bs-btn-hover-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-color:#06331b}
.navbar .btn-danger{background:#fff!important;color:#14213d!important;border:1px solid #e1e8f5!important}
.navbar .btn-danger:hover{color:#b91c1c!important;border-color:#fecaca!important}
.card{border-radius:20px!important;border:1px solid #e1e8f5!important;box-shadow:var(--shadow)!important}
.form-control,.form-select{border-radius:12px;border-color:#e1e8f5}
.form-control:focus,.form-select:focus{border-color:#2f5bea;box-shadow:0 0 0 4px rgba(47,91,234,.16)}
.form-check-input:checked{background-color:#2f5bea;border-color:#2f5bea}
.alert{border-radius:14px}
.table > thead th,.table-light th{font-family:var(--f-mono);font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#53627f;background:#f3f6fd!important}
.badge{font-family:var(--f-mono);font-weight:500;letter-spacing:.02em;border-radius:999px}
footer.qr-foot{background:#fff!important;color:#53627f!important;border-top:1px solid #e1e8f5;font-size:.88rem}
footer.qr-foot a{color:#53627f;font-weight:600}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
