/*
 * Apolo UI v0.50
 * Rebuild visual consolidado: reemplaza la cadena de parches v3-v49.
 * Mantiene el CSS base del template y concentra acá layout, tema, responsive y componentes propios.
 */
:root {
  --ap-bg: #07090d;
  --ap-bg-soft: #0b0f16;
  --ap-surface: #10151e;
  --ap-surface-2: #151b25;
  --ap-surface-3: #0d1118;
  --ap-border: rgba(217, 181, 66, .18);
  --ap-border-strong: rgba(217, 181, 66, .38);
  --ap-gold: #d9b542;
  --ap-gold-2: #f2d779;
  --ap-gold-dark: #9b720e;
  --ap-text: #f6f2e8;
  --ap-muted: #aaa491;
  --ap-success: #41c982;
  --ap-warning: #f0b84b;
  --ap-danger: #ef6868;
  --ap-info: #73b9ed;
  --ap-sidebar: 252px;
  --ap-header: 72px;
  --ap-radius: 18px;
  --ap-shadow: 0 18px 48px rgba(0,0,0,.28);
  --primary: #d9b542 !important;
  --secondary: #9b720e !important;
  --bs-primary: #d9b542 !important;
  --bs-primary-rgb: 217,181,66 !important;
}

html { background: var(--ap-bg) !important; }
html, body { min-height: 100%; }
body,
body[data-theme-version="dark"],
body.apolo-darkmode {
  background:
    radial-gradient(circle at 14% -10%, rgba(217,181,66,.10), transparent 31rem),
    radial-gradient(circle at 94% 0%, rgba(217,181,66,.045), transparent 25rem),
    var(--ap-bg) !important;
  color: var(--ap-text) !important;
  overflow-x: hidden !important;
}
body:not(.admin) { font-family: Inter, Poppins, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important; }
::selection { background: rgba(217,181,66,.28); color: #fff; }
a { transition: color .18s ease, background .18s ease, border-color .18s ease, opacity .18s ease; }
a:not(.btn):not(.dropdown-item) { color: var(--ap-gold-2); }
a:not(.btn):not(.dropdown-item):hover { color: #fff0af; }

/* Preloader: nunca debe dejar el panel invisible si falla JS */
#preloader {
  background: var(--ap-bg) !important;
  transition: opacity .18s ease, visibility .18s ease !important;
}
body.apolo-ui-ready #preloader { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; }
#main-wrapper { min-height: 100vh !important; background: transparent !important; opacity: 1 !important; visibility: visible !important; }

/* =========================================================
   APP SHELL
   ========================================================= */
.nav-header {
  position: fixed !important;
  inset: 0 auto auto 0 !important;
  width: var(--ap-sidebar) !important;
  height: var(--ap-header) !important;
  z-index: 1200 !important;
  display: flex !important;
  align-items: center !important;
  background: rgba(7,9,13,.97) !important;
  border-right: 1px solid var(--ap-border) !important;
  border-bottom: 1px solid var(--ap-border) !important;
  box-shadow: none !important;
}
.nav-header .brand-logo,
.nav-header .apolo-brand-clean {
  width: 100% !important;
  height: 100% !important;
  padding: 0 48px 0 20px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  background: transparent !important;
  color: var(--ap-text) !important;
  border: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}
.nav-header .brand-logo::before {
  content: "🍾";
  flex: 0 0 auto;
  font-size: 31px;
  line-height: 1;
  filter: drop-shadow(0 6px 14px rgba(217,181,66,.22));
}
.nav-header .brand-logo.apolo-brand-clean::before { content: none; }
.apolo-brand-crown { font-size: 28px !important; line-height: 1 !important; }
.apolo-brand-text { color: #fff5ce !important; font-weight: 900 !important; letter-spacing: .02em !important; }
.nav-control {
  position: absolute !important;
  right: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 11px !important;
  cursor: pointer !important;
}
.hamburger { width: 19px !important; }
.hamburger .line { width: 19px !important; height: 2px !important; margin: 4px 0 !important; background: var(--ap-gold) !important; border-radius: 99px !important; }

body[data-layout] .header,
.apolo-clean-header {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: var(--ap-sidebar) !important;
  width: auto !important;
  height: var(--ap-header) !important;
  z-index: 1100 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: rgba(7,9,13,.88) !important;
  border-bottom: 1px solid var(--ap-border) !important;
  box-shadow: 0 10px 34px rgba(0,0,0,.19) !important;
  backdrop-filter: blur(14px);
}
.header .header-content { height: 100% !important; padding: 0 24px !important; background: transparent !important; }
.header .navbar { height: 100% !important; padding: 0 !important; }
.header-left { min-width: 0; }
.apolo-header-title { color: #fff3c4 !important; font-size: 16px !important; font-weight: 800 !important; }
.search-area { max-width: 360px !important; }
.search-area .form-control,
.search-area .input-group-text { height: 42px !important; }
.header-profile2 .header-info h6 { color: var(--ap-text) !important; }
.header-profile2 .header-info p { color: var(--ap-muted) !important; }
.header-media img { border: 1px solid var(--ap-border-strong) !important; }
.apolo-logout-top { color: var(--ap-gold-2) !important; font-weight: 700 !important; }

.deznav,
.apolo-clean-sidebar {
  position: fixed !important;
  top: var(--ap-header) !important;
  left: 0 !important;
  bottom: 0 !important;
  width: var(--ap-sidebar) !important;
  height: auto !important;
  z-index: 1150 !important;
  padding: 0 !important;
  margin: 0 !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: rgba(7,9,13,.985) !important;
  border-right: 1px solid var(--ap-border) !important;
  box-shadow: 14px 0 32px rgba(0,0,0,.16) !important;
  overflow: hidden !important;
}
.deznav-scroll { height: 100% !important; padding: 16px 12px 18px !important; overflow-y: auto !important; overflow-x: hidden !important; }
.deznav-scroll::-webkit-scrollbar { width: 5px; }
.deznav-scroll::-webkit-scrollbar-thumb { background: rgba(217,181,66,.22); border-radius: 99px; }
.deznav .metismenu { display: flex !important; flex-direction: column !important; gap: 5px !important; min-height: calc(100% - 4px) !important; margin: 0 !important; padding: 0 !important; }
.deznav .metismenu > li { width: 100% !important; list-style: none !important; margin: 0 !important; padding: 0 !important; }
.deznav .menu-title:not(.apolo-crown-menu-title) { display: none !important; }
.apolo-crown-menu-title { display: block !important; padding: 4px 8px 10px !important; }
.apolo-sidebar-crown { display: flex !important; align-items: center !important; gap: 10px !important; padding: 0 7px !important; background: transparent !important; border: 0 !important; }
.apolo-crown-icon { font-size: 23px !important; }
.apolo-crown-sub { color: #8e8776 !important; font-size: 10px !important; font-weight: 800 !important; letter-spacing: .16em !important; text-transform: uppercase !important; }
.deznav .metismenu > li > a {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 45px !important;
  padding: 10px 12px !important;
  border: 1px solid transparent !important;
  border-radius: 13px !important;
  background: transparent !important;
  color: #d8d3c7 !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  overflow: hidden !important;
}
.deznav .menu-icon { flex: 0 0 24px !important; width: 24px !important; height: 24px !important; margin: 0 !important; display: grid !important; place-items: center !important; }
.deznav .menu-icon i { color: #c7a83f !important; font-size: 16px !important; }
.deznav .menu-icon svg { width: 19px !important; height: 19px !important; }
.deznav .menu-icon svg path { stroke: #c7a83f !important; }
.deznav .nav-text { color: inherit !important; font-size: inherit !important; font-weight: inherit !important; min-width: 0 !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.deznav .metismenu > li > a:hover,
.deznav .metismenu > li.mm-active > a,
.deznav .metismenu > li > a.active,
.deznav .metismenu > li > a.apolo-menu-active {
  color: #fff5cf !important;
  background: linear-gradient(135deg, rgba(217,181,66,.16), rgba(217,181,66,.055)) !important;
  border-color: rgba(217,181,66,.24) !important;
  box-shadow: inset 3px 0 0 var(--ap-gold) !important;
}
.apolo-sidebar-logout-item { margin-top: auto !important; padding-top: 14px !important; border-top: 1px solid rgba(255,255,255,.07) !important; }
.apolo-sidebar-logout { color: #dfbf62 !important; }

.content-body,
.apolo-clean-content {
  min-height: calc(100vh - var(--ap-header)) !important;
  margin-left: var(--ap-sidebar) !important;
  padding: calc(var(--ap-header) + 24px) 0 34px !important;
  background: transparent !important;
  color: var(--ap-text) !important;
}
.content-body > .container-fluid,
.apolo-content-container { padding-left: 26px !important; padding-right: 26px !important; max-width: 1600px !important; margin-left: auto !important; margin-right: auto !important; }
.footer,
.apolo-clean-footer { margin-left: var(--ap-sidebar) !important; background: transparent !important; border-top: 1px solid rgba(255,255,255,.05) !important; color: var(--ap-muted) !important; }
.footer .copyright { padding: 18px 24px !important; }
.footer p { margin: 0 !important; color: var(--ap-muted) !important; font-size: 12px !important; }

/* Desktop collapsed sidebar from the original template */
@media (min-width: 992px) {
  body.menu-toggle { --ap-sidebar: 84px; }
  body.menu-toggle .nav-header .brand-logo { font-size: 0 !important; justify-content: center !important; padding: 0 34px 0 0 !important; }
  body.menu-toggle .nav-header .brand-logo::before { font-size: 27px !important; }
  body.menu-toggle .nav-header .apolo-brand-text { display: none !important; }
  body.menu-toggle .deznav .nav-text,
  body.menu-toggle .apolo-crown-sub { display: none !important; }
  body.menu-toggle .deznav .metismenu > li > a { justify-content: center !important; padding-left: 8px !important; padding-right: 8px !important; }
}

/* =========================================================
   TYPOGRAPHY / PAGE HEADER / CARDS
   ========================================================= */
h1,h2,h3,h4,h5,h6 { color: var(--ap-text); }
.page-titles {
  margin: 0 0 20px !important;
  padding: 0 26px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.page-titles .breadcrumb { margin: 0 !important; }
.bc-title, .page-titles h5 { color: #fff2c3 !important; font-size: 20px !important; font-weight: 900 !important; letter-spacing: -.02em !important; }
.breadcrumb-item, .breadcrumb-item a { color: #8f8a7d !important; font-size: 12px !important; }
.breadcrumb-item.active, .breadcrumb-item.active a { color: var(--ap-gold) !important; }

.apolo-page-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 22px; margin: 0 0 24px; }
.apolo-page-head h1 { margin: 4px 0 7px; color: #fff4ca !important; font-size: clamp(1.7rem,3vw,2.35rem) !important; font-weight: 900 !important; letter-spacing: -.04em; }
.apolo-page-head p { margin: 0; max-width: 720px; color: var(--ap-muted) !important; font-size: 14px; line-height: 1.65; }
.apolo-eyebrow, .apolo-kicker { display: inline-flex; align-items: center; color: var(--ap-gold) !important; font-size: 10px !important; font-weight: 900 !important; letter-spacing: .14em !important; text-transform: uppercase !important; }

.card,
.apolo-card,
.apolo-panel,
.apolo-hero-card,
.apolo-form-card,
.apolo-tool-card,
.widget-stat {
  background: linear-gradient(180deg, rgba(18,23,32,.96), rgba(11,14,20,.98)) !important;
  color: var(--ap-text) !important;
  border: 1px solid var(--ap-border) !important;
  border-radius: var(--ap-radius) !important;
  box-shadow: var(--ap-shadow) !important;
}
.card { overflow: hidden; }
.card-header, .card-body, .card-footer { background: transparent !important; color: var(--ap-text) !important; }
.card-header { border-bottom: 1px solid rgba(217,181,66,.12) !important; }
.card-title { color: #fff2c3 !important; font-weight: 850 !important; }
.text-muted, small { color: var(--ap-muted) !important; }

.apolo-hero-card { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 22px !important; padding: 24px !important; margin-bottom: 20px; }
.apolo-hero-card h2 { margin: 4px 0 7px !important; color: #fff !important; font-size: clamp(1.45rem,2.5vw,2rem) !important; font-weight: 900 !important; letter-spacing: -.035em; }
.apolo-hero-card p { margin: 0; color: var(--ap-muted) !important; max-width: 760px; line-height: 1.6; }
.apolo-hero-icon, .apolo-form-icon {
  flex: 0 0 auto;
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  background: rgba(217,181,66,.09) !important;
  border: 1px solid rgba(217,181,66,.22) !important;
  color: var(--ap-gold) !important;
}
.apolo-hero-icon i, .apolo-form-icon i { color: var(--ap-gold) !important; font-size: 25px !important; }

/* Dashboard */
.apolo-dashboard-v20 .container-fluid { max-width: 1600px !important; }
.apolo-dashboard-v20 .apolo-hero-card { margin-top: 0; }
.apolo-dashboard-v20 .row { row-gap: 18px; }
.apolo-stat {
  height: 100%;
  padding: 20px !important;
  border: 1px solid var(--ap-border) !important;
  border-radius: 17px !important;
  background: linear-gradient(180deg, rgba(18,23,32,.92), rgba(10,13,19,.96)) !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.20) !important;
}
.apolo-stat .label, .apolo-stat-label { color: var(--ap-muted) !important; font-size: 11px !important; font-weight: 800 !important; text-transform: uppercase; letter-spacing: .08em; }
.apolo-stat .value, .apolo-stat-value { margin-top: 7px; color: #fff2c7 !important; font-size: clamp(1.55rem,2.6vw,2.2rem) !important; font-weight: 900 !important; letter-spacing: -.04em; }
.apolo-progress { height: 7px !important; margin-top: 12px; border-radius: 999px; background: rgba(255,255,255,.06) !important; overflow: hidden; }
.apolo-progress > * { background: linear-gradient(90deg, var(--ap-gold-dark), var(--ap-gold-2)) !important; }
.apolo-categories-panel, .apolo-orders-panel-v20 { padding: 20px !important; }
.apolo-category-list-v20 { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px !important; }
.apolo-category-card-v20 { display: flex !important; align-items: center !important; gap: 12px !important; padding: 13px !important; border: 1px solid rgba(255,255,255,.07) !important; border-radius: 14px !important; background: rgba(255,255,255,.025) !important; }
.apolo-category-icon-v20 { width: 39px; height: 39px; display:grid; place-items:center; border-radius:12px; background:rgba(217,181,66,.09); color:var(--ap-gold); }
.apolo-category-info-v20 { min-width: 0; flex: 1; }
.apolo-category-info-v20 strong { display:block; color:#f5f0e3; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.apolo-category-count-v20 { color:var(--ap-muted); font-size:12px; }
.apolo-orders-head-v20 { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.apolo-home-orders-v45 { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px !important; }
.apolo-home-order-card-v45 { padding:14px !important; border:1px solid rgba(255,255,255,.07) !important; border-radius:15px !important; background:rgba(255,255,255,.026) !important; min-width:0; }
.apolo-home-order-top-v45 { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; margin-bottom:10px; }
.apolo-home-order-codebox-v45 { min-width:0; }
.apolo-home-order-label-v45 { display:block; color:var(--ap-muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.apolo-home-order-code-v45 { color:#fff0ad; font-weight:900; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.apolo-home-order-client-v45 { margin-bottom:10px; min-width:0; }
.apolo-home-order-client-v45 strong { display:block; color:#fff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.apolo-home-order-meta-v45 { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.apolo-home-order-meta-v45 > div { min-width:0; padding:9px; border-radius:11px; background:rgba(255,255,255,.03); }
.apolo-home-order-meta-v45 strong { display:block; margin-top:2px; color:#f2eee3; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:12px; }
.apolo-empty-v45 { padding:15px; color:var(--ap-muted); border:1px dashed var(--ap-border-strong); border-radius:14px; background:rgba(255,255,255,.02); }

/* =========================================================
   BUTTONS / BADGES / DROPDOWNS
   ========================================================= */
.btn { border-radius: 11px !important; font-weight: 800 !important; }
.btn-primary,
.apolo-btn-primary,
.dt-button,
.dataTables_wrapper .paginate_button.current {
  background: linear-gradient(135deg, #f1d574, #c69c24 58%, #8d6409) !important;
  border: 1px solid rgba(244,215,121,.34) !important;
  color: #171004 !important;
  box-shadow: 0 10px 24px rgba(217,181,66,.14) !important;
}
.btn-primary:hover,
.apolo-btn-primary:hover { filter: brightness(1.07); transform: translateY(-1px); color:#0f0b03 !important; }
.btn-outline-primary,
.apolo-btn-secondary,
.apolo-btn-ghost {
  background: rgba(217,181,66,.045) !important;
  color: var(--ap-gold-2) !important;
  border: 1px solid rgba(217,181,66,.30) !important;
}
.btn-outline-primary:hover,
.apolo-btn-secondary:hover,
.apolo-btn-ghost:hover { background: rgba(217,181,66,.13) !important; color:#fff4c9 !important; border-color:rgba(217,181,66,.5) !important; }
.btn-warning { background: rgba(240,184,75,.13) !important; color:#f5ca72 !important; border-color:rgba(240,184,75,.25) !important; }
.btn-danger, .apolo-btn-danger { background:rgba(239,104,104,.10) !important; color:#ff9d9d !important; border:1px solid rgba(239,104,104,.25) !important; }
.apolo-btn-icon { width: 39px !important; height: 39px !important; padding:0 !important; display:inline-grid !important; place-items:center !important; }
.badge, .apolo-order-status-badge, .apolo-status-badge { border-radius:999px !important; font-weight:800 !important; font-size:10px !important; letter-spacing:.04em; }
.apolo-order-status-badge, .apolo-status-badge { display:inline-flex; align-items:center; min-height:28px; padding:5px 10px; border:1px solid transparent; }
.apolo-status-success, .badge-success { color:#8ae6b5 !important; background:rgba(65,201,130,.10) !important; border-color:rgba(65,201,130,.24) !important; }
.apolo-status-warning, .badge-warning { color:#f7cf7a !important; background:rgba(240,184,75,.11) !important; border-color:rgba(240,184,75,.24) !important; }
.apolo-status-info, .badge-info { color:#a8d9fb !important; background:rgba(115,185,237,.10) !important; border-color:rgba(115,185,237,.23) !important; }
.apolo-status-danger, .badge-danger { color:#ffabab !important; background:rgba(239,104,104,.10) !important; border-color:rgba(239,104,104,.23) !important; }
.apolo-status-dark { color:#c5c2ba !important; background:rgba(255,255,255,.055) !important; border-color:rgba(255,255,255,.09) !important; }
.dropdown-menu { background:#11161f !important; border:1px solid var(--ap-border) !important; border-radius:13px !important; box-shadow:0 18px 45px rgba(0,0,0,.34) !important; padding:6px !important; }
.dropdown-item { color:#ded9cd !important; border-radius:9px !important; font-size:13px !important; }
.dropdown-item:hover, .dropdown-item:focus { background:rgba(217,181,66,.10) !important; color:#fff1bd !important; }

/* =========================================================
   FORMS
   ========================================================= */
.form-control,
.form-select,
.bootstrap-select > .dropdown-toggle,
select.form-control,
textarea.form-control,
input.form-control {
  min-height: 43px;
  background: #0b1017 !important;
  color: var(--ap-text) !important;
  border: 1px solid rgba(217,181,66,.18) !important;
  border-radius: 11px !important;
  box-shadow: none !important;
}
.form-control::placeholder, textarea::placeholder, input::placeholder { color:#77766f !important; opacity:1 !important; }
.form-control:focus,
.form-select:focus,
select.form-control:focus,
textarea.form-control:focus,
input.form-control:focus {
  background:#0d131c !important;
  color:#fff !important;
  border-color:rgba(217,181,66,.62) !important;
  box-shadow:0 0 0 .18rem rgba(217,181,66,.09) !important;
}
.form-label, label { color:#d7d1c0; }
.input-group-text { background:#0b1017 !important; color:var(--ap-gold) !important; border-color:rgba(217,181,66,.18) !important; }
.bootstrap-select .dropdown-menu { background:#11161f !important; }
.bootstrap-select .dropdown-menu li a { color:#ddd7ca !important; }
.tagify { width:100%; background:#0b1017 !important; border:1px solid rgba(217,181,66,.18) !important; border-radius:11px !important; }
.tagify__input { color:var(--ap-text) !important; }
.tagify__tag > div { background:rgba(217,181,66,.12) !important; color:#fff0b6 !important; }

.apolo-form-card { padding: 22px !important; margin-bottom: 20px; }
.apolo-form-card-head { display:flex; align-items:center; gap:14px; padding-bottom:18px; margin-bottom:20px; border-bottom:1px solid rgba(255,255,255,.06); }
.apolo-form-card-head h2 { margin:0 0 3px; color:#fff2c3 !important; font-size:18px !important; font-weight:900 !important; }
.apolo-form-card-head p { margin:0; color:var(--ap-muted) !important; font-size:13px; }
.apolo-grid-2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.apolo-field { margin-bottom:16px; }
.apolo-field label { display:block; margin-bottom:7px; color:#d6d0c1 !important; font-size:12px; font-weight:800; }
.apolo-field label span { color:var(--ap-gold); }
.apolo-file-field { padding:14px; border:1px dashed rgba(217,181,66,.26); border-radius:13px; background:rgba(217,181,66,.025); }
.apolo-form-actions { display:flex; align-items:center; justify-content:flex-end; gap:10px; padding-top:6px; }
.apolo-alert-success, .apolo-alert-error { border-radius:13px !important; border:1px solid !important; padding:13px 15px !important; }
.apolo-alert-success { color:#9ce8bd !important; background:rgba(65,201,130,.08) !important; border-color:rgba(65,201,130,.23) !important; }
.apolo-alert-error { color:#ffb0b0 !important; background:rgba(239,104,104,.08) !important; border-color:rgba(239,104,104,.23) !important; }

/* =========================================================
   TABLES / DATATABLES
   ========================================================= */
.table-responsive,
.apolo-table-shell,
.apolo-pedidos-table-wrap { width:100%; background:transparent !important; border:0 !important; box-shadow:none !important; overflow-x:auto !important; }
.table,
.apolo-table,
.apolo-clean-table,
.apolo-pedidos-table,
table.dataTable {
  width:100% !important;
  margin:0 !important;
  color:var(--ap-text) !important;
  background:transparent !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
}
.table thead th,
table.dataTable thead th {
  padding:13px 12px !important;
  background:rgba(217,181,66,.065) !important;
  color:#e7cc76 !important;
  border:0 !important;
  border-bottom:1px solid rgba(217,181,66,.16) !important;
  font-size:10.5px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.075em !important;
  white-space:nowrap !important;
}
.table tbody td,
table.dataTable tbody td {
  padding:13px 12px !important;
  background:transparent !important;
  color:#e9e4d8 !important;
  border:0 !important;
  border-bottom:1px solid rgba(255,255,255,.055) !important;
  vertical-align:middle !important;
}
.table tbody tr:hover td, table.dataTable tbody tr:hover td { background:rgba(217,181,66,.028) !important; }
.dataTables_wrapper { color:var(--ap-muted) !important; }
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info { color:var(--ap-muted) !important; font-size:12px !important; }
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select { background:#0b1017 !important; color:#eee9df !important; border:1px solid rgba(217,181,66,.18) !important; border-radius:9px !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button { color:#cbc4b3 !important; border:1px solid transparent !important; border-radius:9px !important; background:transparent !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button:hover { color:#fff1bd !important; border-color:rgba(217,181,66,.18) !important; background:rgba(217,181,66,.07) !important; }
.apolo-order-code-pill, .apolo-id-pill { display:inline-flex; align-items:center; min-height:29px; padding:5px 9px; border:1px solid rgba(217,181,66,.22); border-radius:9px; background:rgba(217,181,66,.07); color:#f1d476; font-weight:900; font-size:11px; }
.apolo-table-actions, .apolo-article-actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.apolo-discount-inline { display:flex; align-items:center; gap:7px; }
.apolo-discount-input { width:85px !important; min-height:36px !important; }

/* Article actions, including the formerly invisible edit icon */
.apolo-action-btn { min-height:38px !important; padding:8px 11px !important; border-radius:10px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:7px !important; font-weight:800 !important; }
.apolo-action-edit { background:linear-gradient(135deg,#f3d56f,#c2941d) !important; color:#161004 !important; border:1px solid rgba(217,181,66,.30) !important; }
.apolo-action-edit i, .apolo-action-edit svg, .apolo-edit-icon, .apolo-edit-svg { color:#161004 !important; fill:#161004 !important; stroke:#161004 !important; opacity:1 !important; }
.apolo-action-edit svg path { fill:#161004 !important; }
.apolo-action-activate { color:#8ee7b7 !important; background:rgba(65,201,130,.09) !important; border:1px solid rgba(65,201,130,.22) !important; }
.apolo-action-inactivate { color:#f6cd78 !important; background:rgba(240,184,75,.09) !important; border:1px solid rgba(240,184,75,.22) !important; }
.apolo-action-delete { color:#ffa1a1 !important; background:rgba(239,104,104,.08) !important; border:1px solid rgba(239,104,104,.22) !important; }

/* =========================================================
   PEDIDOS / DETAIL / TOOLS
   ========================================================= */
.apolo-pedidos-table-wrap { margin:0 !important; border-radius:var(--ap-radius) !important; border:1px solid var(--ap-border) !important; background:linear-gradient(180deg,rgba(18,23,32,.94),rgba(10,13,19,.97)) !important; box-shadow:var(--ap-shadow) !important; }
.apolo-pedidos-table { min-width:780px; }
.apolo-ver-pedido-v42 .card, .apolo-ver-pedido-v42 .widget-stat { margin-bottom:18px; }
.apolo-pedido-title-v42 { color:#fff2c3 !important; font-weight:900 !important; }
.apolo-order-status-mobile-v42 { display:inline-flex; }
.apolo-tools-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.apolo-tool-card { padding:20px !important; }
.apolo-sql-editor { min-height:260px !important; width:100% !important; padding:15px !important; border-radius:13px !important; font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace !important; font-size:13px !important; line-height:1.55 !important; }
.apolo-result { padding:14px; border:1px solid rgba(65,201,130,.19); border-radius:12px; background:rgba(65,201,130,.055); color:#a2e8c0; }
.apolo-warning { padding:14px; border:1px solid rgba(240,184,75,.20); border-radius:12px; background:rgba(240,184,75,.055); color:#f3cf85; }

/* =========================================================
   AUTH PAGES
   ========================================================= */
body.apolo-auth-page {
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px;
  background:
    radial-gradient(circle at 12% 8%, rgba(217,181,66,.13), transparent 34rem),
    radial-gradient(circle at 90% 88%, rgba(217,181,66,.055), transparent 30rem),
    #07090d !important;
}
body.apolo-login-pro { display:block; padding:0; }
.apolo-login-shell { min-height:100vh; width:100%; display:grid; grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr); position:relative; overflow:hidden; }
.apolo-login-brand { position:relative; z-index:2; display:flex; flex-direction:column; justify-content:center; padding:clamp(42px,7vw,100px); max-width:760px; }
.apolo-logo-mark { width:72px; height:72px; display:grid; place-items:center; margin-bottom:26px; border-radius:21px; border:1px solid rgba(217,181,66,.25); background:rgba(217,181,66,.07); font-size:34px; box-shadow:0 16px 38px rgba(0,0,0,.22); }
.apolo-login-brand h2 { color:#fff4ca !important; font-size:clamp(2.5rem,5vw,4.7rem) !important; font-weight:950 !important; line-height:.98 !important; letter-spacing:-.055em; }
.apolo-login-brand h2 span { display:block; color:var(--ap-gold) !important; font-size:.45em; letter-spacing:.02em; margin-top:12px; }
.apolo-login-brand > p { margin:24px 0 0; max-width:620px; color:#aaa491 !important; font-size:15px !important; line-height:1.8; }
.apolo-login-chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; }
.apolo-chip { padding:8px 11px; border:1px solid rgba(217,181,66,.16); border-radius:999px; background:rgba(255,255,255,.025); color:#d8d2c2; font-size:11px; font-weight:800; }
.apolo-chip i { color:var(--ap-gold); font-style:normal; }
.apolo-login-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; max-width:500px; margin-top:34px; }
.apolo-login-stats .apolo-stat { min-height:auto; padding:14px !important; box-shadow:none !important; }
.apolo-login-stats strong { display:block; color:#fff1ba; font-size:17px; }
.apolo-login-stats small { display:block; margin-top:3px; font-size:10px !important; }
.apolo-bottle-bg { position:absolute; left:44%; bottom:-120px; width:250px; opacity:.18; filter:blur(.2px); transform:rotate(8deg); pointer-events:none; }
.login,
.register,
.apolo-login-card {
  width:min(100%,440px) !important;
  margin:0 !important;
  padding:34px !important;
  background:linear-gradient(180deg,rgba(19,24,33,.97),rgba(10,13,18,.98)) !important;
  border:1px solid var(--ap-border) !important;
  border-radius:22px !important;
  box-shadow:0 28px 80px rgba(0,0,0,.38) !important;
  color:var(--ap-text) !important;
}
.apolo-login-shell > .login { align-self:center; justify-self:center; position:relative; z-index:3; }
.login .icon, .register .icon { width:48px !important; height:48px !important; margin:0 0 20px !important; display:grid !important; place-items:center !important; border-radius:14px !important; background:rgba(217,181,66,.08) !important; border:1px solid rgba(217,181,66,.18) !important; }
.login .icon svg, .register .icon svg { fill:var(--ap-gold) !important; width:20px !important; height:20px !important; }
.login h1, .register h1 { color:#fff2c6 !important; font-size:24px !important; font-weight:900 !important; letter-spacing:-.03em !important; }
body.apolo-auth-page .form .form-label { padding:17px 0 7px !important; color:#d6d0c1 !important; font-size:12px !important; font-weight:800 !important; }
body.apolo-auth-page .form .form-input { height:46px !important; background:#0a0f16 !important; color:#fff !important; border:1px solid rgba(217,181,66,.18) !important; border-radius:11px !important; }
body.apolo-auth-page .form .form-input:focus { border-color:rgba(217,181,66,.60) !important; box-shadow:0 0 0 3px rgba(217,181,66,.08) !important; }
body.apolo-auth-page .form .form-icon-left { fill:#8d876f !important; }
body.apolo-auth-page .form .form-link { color:var(--ap-gold-2) !important; }
body.apolo-auth-page .form #remember_me { color:#aaa491 !important; font-size:12px !important; }
body.apolo-auth-page .btn.blue { width:100%; height:46px !important; margin-top:10px; background:linear-gradient(135deg,#efd16c,#bd8c16) !important; color:#171004 !important; border-radius:11px !important; box-shadow:0 10px 24px rgba(217,181,66,.13) !important; }
body.apolo-auth-page .register-link { color:#878377 !important; font-size:12px !important; }
.apolo-login-note { margin-top:18px; padding:11px 12px; border-radius:10px; background:rgba(217,181,66,.04); border:1px solid rgba(217,181,66,.10); color:#8e897c; font-size:11px; line-height:1.5; }
.apolo-mobile-brand { display:none; }

/* =========================================================
   MOBILE DRAWER
   ========================================================= */
.apolo-ui-mobilebar,
.apolo-ui-backdrop,
.apolo-ui-close { display:none; }

@media (max-width: 991.98px) {
  :root { --ap-header: 64px; }
  body[data-layout] { padding-top:var(--ap-header) !important; }
  body[data-layout] .nav-header, body[data-layout] .header { display:none !important; }
  .content-body, .apolo-clean-content { margin-left:0 !important; padding-top:18px !important; min-height:calc(100vh - var(--ap-header)) !important; }
  .content-body > .container-fluid, .apolo-content-container { padding-left:14px !important; padding-right:14px !important; }
  .page-titles { padding:0 14px !important; margin-bottom:14px !important; }
  .footer, .apolo-clean-footer { margin-left:0 !important; }

  .apolo-ui-mobilebar {
    position:fixed;
    inset:0 0 auto 0;
    z-index:1400;
    height:var(--ap-header);
    display:grid;
    grid-template-columns:46px 1fr 46px;
    align-items:center;
    gap:8px;
    padding:0 10px;
    background:rgba(7,9,13,.96);
    border-bottom:1px solid var(--ap-border);
    backdrop-filter:blur(14px);
  }
  .apolo-ui-mobilebar button,
  .apolo-ui-mobilebar a { width:40px; height:40px; display:grid; place-items:center; border:1px solid rgba(217,181,66,.16); border-radius:12px; background:rgba(217,181,66,.045); color:var(--ap-gold-2) !important; text-decoration:none; }
  .apolo-ui-mobilebrand { min-width:0; display:flex; align-items:center; justify-content:center; gap:8px; color:#fff1bd; font-size:13px; font-weight:900; letter-spacing:.02em; }
  .apolo-ui-mobilebrand span:last-child { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

  .deznav,
  .apolo-clean-sidebar {
    top:0 !important;
    left:0 !important;
    bottom:0 !important;
    width:min(86vw,300px) !important;
    height:100dvh !important;
    z-index:1500 !important;
    padding-top:58px !important;
    transform:translateX(-104%) !important;
    transition:transform .22s cubic-bezier(.2,.8,.2,1) !important;
    box-shadow:22px 0 60px rgba(0,0,0,.48) !important;
  }
  body.apolo-ui-sidebar-open .deznav { transform:translateX(0) !important; }
  .deznav-scroll { padding-top:8px !important; }
  .apolo-ui-close { position:absolute; display:grid; place-items:center; top:10px; right:10px; width:38px; height:38px; z-index:4; border:1px solid rgba(217,181,66,.17); border-radius:11px; background:rgba(217,181,66,.055); color:var(--ap-gold-2); }
  .apolo-ui-backdrop { position:fixed; inset:0; z-index:1450; display:block; background:rgba(0,0,0,.62); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .2s ease, visibility .2s ease; }
  body.apolo-ui-sidebar-open .apolo-ui-backdrop { opacity:1; visibility:visible; pointer-events:auto; }
  body.apolo-ui-sidebar-open { overflow:hidden !important; }

  .apolo-page-head { align-items:flex-start; flex-direction:column; gap:13px; }
  .apolo-page-head .btn { width:100%; }
  .apolo-grid-2, .apolo-tools-grid { grid-template-columns:1fr; }
  .apolo-form-card { padding:17px !important; }
  .apolo-form-card-head { align-items:flex-start; }
  .apolo-hero-card { padding:18px !important; align-items:flex-start !important; }
  .apolo-hero-icon { width:52px; height:52px; }
  .apolo-category-list-v20, .apolo-home-orders-v45 { grid-template-columns:1fr !important; }
  .content.m-5 { margin:0 14px !important; }

  /* Convert selected data tables to readable stacked cards */
  table.apolo-mobile-cards,
  table.apolo-mobile-cards tbody,
  table.apolo-mobile-cards tr,
  table.apolo-mobile-cards td { display:block !important; width:100% !important; }
  table.apolo-mobile-cards thead { display:none !important; }
  table.apolo-mobile-cards tbody tr { margin-bottom:12px !important; padding:8px 12px !important; border:1px solid var(--ap-border) !important; border-radius:14px !important; background:rgba(16,21,30,.9) !important; }
  table.apolo-mobile-cards tbody td { min-height:39px; padding:9px 0 !important; white-space:normal !important; border-bottom:1px solid rgba(255,255,255,.055) !important; }
  table.apolo-mobile-cards tbody td:last-child { border-bottom:0 !important; }
  .apolo-article-actions { width:100% !important; }
  .apolo-article-actions .btn, .apolo-action-btn { flex:1 1 120px; }
}

@media (max-width: 767.98px) {
  .apolo-pedidos-table-wrap { border:0 !important; background:transparent !important; box-shadow:none !important; overflow:visible !important; }
  .apolo-pedidos-table, .apolo-pedidos-table tbody, .apolo-pedidos-table tr, .apolo-pedidos-table td { display:block !important; width:100% !important; min-width:0 !important; }
  .apolo-pedidos-table thead { display:none !important; }
  .apolo-pedidos-table tbody tr { margin-bottom:12px; padding:13px; border:1px solid var(--ap-border); border-radius:15px; background:linear-gradient(180deg,rgba(18,23,32,.94),rgba(10,13,19,.97)); box-shadow:0 12px 28px rgba(0,0,0,.18); }
  .apolo-pedidos-table tbody td { display:grid !important; grid-template-columns:minmax(92px,38%) minmax(0,1fr); align-items:center; gap:10px; min-height:38px; padding:8px 0 !important; white-space:normal !important; }
  .apolo-pedidos-table tbody td::before { content:attr(data-label); color:#827e74; font-size:9px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
  .apolo-pedidos-table tbody td:last-child { display:block !important; }
  .apolo-pedidos-table tbody td:last-child::before { display:none; }
  .apolo-pedidos-table .dropdown, .apolo-pedidos-table .dropdown > .btn { width:100%; }
  .apolo-pedidos-table .dropdown > .btn { min-height:40px; }
}

@media (max-width: 720px) {
  .apolo-login-shell { display:block; min-height:100vh; padding:20px; }
  .apolo-login-brand, .apolo-bottle-bg { display:none; }
  .apolo-login-shell > .login { margin:10vh auto 0 !important; }
  .apolo-mobile-brand { display:block; text-align:center; margin-bottom:24px; }
  .apolo-mobile-brand .crown { font-size:33px; }
  .apolo-mobile-brand h1 { margin-top:8px !important; font-size:19px !important; }
  .apolo-mobile-brand p { color:#8f8a7d; font-size:11px; }
  body.apolo-auth-page .login,
  body.apolo-auth-page .register { padding:26px 20px !important; }
}

@media (max-width: 575.98px) {
  .content-body > .container-fluid, .apolo-content-container { padding-left:11px !important; padding-right:11px !important; }
  .page-titles { padding:0 11px !important; }
  .apolo-page-head h1 { font-size:1.65rem !important; }
  .apolo-hero-card { gap:13px !important; }
  .apolo-hero-icon { display:none; }
  .apolo-form-actions { flex-direction:column; align-items:stretch; }
  .apolo-form-actions .btn { width:100%; }
  .apolo-home-order-meta-v45 { grid-template-columns:1fr; }
}

/* Accessibility */
:focus-visible { outline:2px solid var(--ap-gold) !important; outline-offset:2px !important; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
}

/* Compatibilidad con el toggle original: custom.js aplica .menu-toggle sobre #main-wrapper. */
@media (min-width: 992px) {
  #main-wrapper.menu-toggle { --ap-sidebar: 84px; }
  #main-wrapper.menu-toggle .nav-header .brand-logo { font-size:0 !important; justify-content:center !important; padding:0 34px 0 0 !important; }
  #main-wrapper.menu-toggle .nav-header .brand-logo::before { font-size:27px !important; }
  #main-wrapper.menu-toggle .nav-header .apolo-brand-text,
  #main-wrapper.menu-toggle .deznav .nav-text,
  #main-wrapper.menu-toggle .apolo-crown-sub { display:none !important; }
  #main-wrapper.menu-toggle .deznav .metismenu>li>a { justify-content:center !important; padding-left:8px !important; padding-right:8px !important; }
}

/* =========================================================
   ARTICULOS / DATATABLE
   ========================================================= */
#example3_processing {
  z-index: 30 !important;
  padding: 12px 16px !important;
  background: rgba(8,11,16,.94) !important;
  border: 1px solid var(--ap-border-strong) !important;
  color: var(--ap-gold-2) !important;
  border-radius: 12px !important;
  box-shadow: var(--ap-shadow) !important;
}
#example3_wrapper .apolo-dt-top,
#example3_wrapper .apolo-dt-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin: 10px 0;
}
#example3_wrapper .dataTables_filter input { max-width: 280px; }
#example3 { table-layout: fixed !important; width: 100% !important; }
#example3 th,
#example3 td { vertical-align: middle !important; }
#example3 td:first-child { width: 110px !important; min-width: 110px; }
#example3 td:nth-child(2) { min-width: 190px !important; white-space: normal !important; }
#example3 td:nth-child(9) { min-width: 95px !important; }
#example3 td:nth-child(10) { min-width: 92px !important; }
#example3 .article-thumb {
  width: 96px !important;
  height: 82px !important;
  object-fit: cover !important;
  border-radius: 13px !important;
  background: var(--ap-surface-3) !important;
  border: 1px solid var(--ap-border) !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.24) !important;
}

@media (max-width: 767.98px) {
  #example3_wrapper .apolo-dt-top,
  #example3_wrapper .apolo-dt-bottom { display:block !important; }
  #example3_wrapper .dataTables_length,
  #example3_wrapper .dataTables_filter,
  #example3_wrapper .dataTables_info,
  #example3_wrapper .dataTables_paginate {
    float:none !important;
    width:100%;
    text-align:left !important;
    margin:8px 0 !important;
  }
  #example3_wrapper .dataTables_filter label,
  #example3_wrapper .dataTables_length label { width:100%; display:block; color:var(--ap-muted) !important; }
  #example3_wrapper .dataTables_filter input { width:100% !important; max-width:none !important; margin:6px 0 0 !important; }
  #example3_wrapper .dataTables_paginate { text-align:center !important; }
  #example3_wrapper .dataTables_paginate .paginate_button { margin:2px !important; border-radius:9px !important; }
  #example3_wrapper .table-responsive { overflow:visible !important; }
  table#example3 { min-width:0 !important; width:100% !important; border-collapse:separate !important; border-spacing:0 11px !important; table-layout:auto !important; }
  #example3 thead { display:none !important; }
  #example3 tbody,
  #example3 tr { display:block !important; width:100% !important; }
  #example3 tbody tr {
    display:block !important;
    margin:0 0 12px !important;
    padding:12px !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,rgba(19,25,35,.96),rgba(10,14,20,.98)) !important;
    border:1px solid var(--ap-border) !important;
    border-radius:15px !important;
    box-shadow:0 12px 28px rgba(0,0,0,.22) !important;
  }
  #example3 tbody td {
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:12px !important;
    width:100% !important;
    min-height:38px;
    padding:9px 0 !important;
    border:0 !important;
    border-bottom:1px solid rgba(217,181,66,.09) !important;
    background:transparent !important;
    color:var(--ap-text) !important;
    text-align:right !important;
    white-space:normal !important;
    word-break:break-word;
    overflow-wrap:anywhere;
  }
  #example3 tbody td::before {
    content:attr(data-label);
    flex:0 0 38%;
    max-width:38%;
    padding-top:2px;
    color:#8f8979;
    font-size:10px;
    font-weight:900;
    line-height:1.25;
    letter-spacing:.07em;
    text-transform:uppercase;
    text-align:left !important;
  }
  #example3 tbody td > * { max-width:62% !important; margin-left:auto !important; }
  #example3 tbody td:last-child { border-bottom:0 !important; padding-bottom:0 !important; }
  #example3 tbody td:first-child {
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    padding:0 0 12px !important;
    border-bottom:1px solid var(--ap-border) !important;
    text-align:left !important;
  }
  #example3 tbody td:first-child::before { display:none !important; }
  #example3 tbody td:first-child > * { max-width:100% !important; margin-left:0 !important; }
  #example3 tbody td:first-child .article-thumb { width:100% !important; height:185px !important; display:block !important; object-fit:cover !important; }
  #example3 tbody td:nth-child(2) { display:block !important; padding-top:8px !important; text-align:left !important; }
  #example3 tbody td:nth-child(2)::before { content:'Artículo'; display:block !important; max-width:100%; margin-bottom:5px; }
  #example3 tbody td:nth-child(2) > * { max-width:100% !important; margin-left:0 !important; }
  #example3 .d-flex.gap-1 { justify-content:flex-end !important; gap:7px !important; flex-wrap:wrap !important; }
  #example3 .orden-input { max-width:110px !important; }
}
