:root{
  --app-bg:#eef4fb;--app-surface:#ffffff;--app-surface-2:#f7faff;--app-border:#dce7f5;
  --app-text:#10233f;--app-muted:#6f8098;--app-primary:#0d6efd;--app-primary-2:#1d4ed8;
  --app-sidebar:#07162b;--app-sidebar-2:#0d2d59;--app-shadow:0 14px 40px rgba(15,42,80,.10);
}
html[data-theme="dark"]{
  --app-bg:#050b14;--app-surface:#0a1525;--app-surface-2:#0d1c31;--app-border:#173255;
  --app-text:#ecf4ff;--app-muted:#91a5c1;--app-primary:#2f80ff;--app-primary-2:#58a6ff;
  --app-sidebar:#030a14;--app-sidebar-2:#08254a;--app-shadow:0 18px 46px rgba(0,0,0,.32);
  color-scheme:dark;
}
body{background:var(--app-bg)!important;color:var(--app-text);transition:background .2s ease,color .2s ease}
.admin-sidebar,.vendor-sidebar{background:linear-gradient(180deg,var(--app-sidebar) 0%,var(--app-sidebar-2) 100%)!important;border:1px solid rgba(89,157,255,.13);box-shadow:0 16px 44px rgba(0,0,0,.26)!important}
.admin-nav a,.vendor-nav a{border:1px solid transparent}
.admin-nav a:hover,.admin-nav a.active,.vendor-nav a:hover,.vendor-nav a.active{background:linear-gradient(90deg,rgba(20,103,255,.95),rgba(44,129,255,.72))!important;border-color:rgba(105,170,255,.36)}
.admin-main,.vendor-main{background:transparent!important}
.admin-topbar,.vendor-topbar,.admin-card,.vendor-card,.card,.content-box,.sidebar-box,.settings-card,.service-mobile-card,.admin-mobile-card{
  background:var(--app-surface)!important;color:var(--app-text)!important;border:1px solid var(--app-border)!important;box-shadow:var(--app-shadow)!important
}
.admin-topbar-title,.vendor-topbar-title,.admin-card-title,.vendor-card-title,.settings-title,.admin-mobile-card-title,.service-mobile-name{color:var(--app-text)!important}
.admin-topbar-subtitle,.vendor-topbar-subtitle,.text-muted,.settings-help,.service-mobile-type,.admin-kpi-card .label{color:var(--app-muted)!important}
.admin-kpi-card{background:linear-gradient(180deg,var(--app-surface) 0%,var(--app-surface-2) 100%)!important;border-color:var(--app-border)!important;box-shadow:var(--app-shadow)!important}
.admin-kpi-card .value{color:var(--app-text)!important}
.table{--bs-table-bg:transparent!important;--bs-table-color:var(--app-text)!important;--bs-table-border-color:var(--app-border)!important;color:var(--app-text)!important}
.table thead th,.admin-table thead th,.vendor-table thead th{background:var(--app-surface-2)!important;color:var(--app-muted)!important;border-color:var(--app-border)!important}
.table td,.table th{border-color:var(--app-border)!important;color:var(--app-text)!important}
.form-control,.form-select,textarea,input:not([type=checkbox]):not([type=radio]),select{
  background:var(--app-surface-2)!important;color:var(--app-text)!important;border-color:var(--app-border)!important
}
.form-control:focus,.form-select:focus,textarea:focus,input:focus,select:focus{border-color:#3b82f6!important;box-shadow:0 0 0 .2rem rgba(59,130,246,.15)!important}
.form-control::placeholder,input::placeholder,textarea::placeholder{color:var(--app-muted)!important;opacity:.8}
.form-label,label{color:var(--app-text)!important}
.modal-content,.dropdown-menu{background:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.modal-header,.modal-footer{border-color:var(--app-border)!important}
.btn-close{filter:var(--theme-close-filter,none)}
html[data-theme="dark"]{--theme-close-filter:invert(1)}
.alert{border-width:1px}
.theme-toggle{
  position:fixed;right:18px;top:16px;z-index:2100;width:42px;height:42px;border-radius:13px;border:1px solid var(--app-border);
  background:var(--app-surface);color:var(--app-text);display:flex;align-items:center;justify-content:center;box-shadow:var(--app-shadow);cursor:pointer;font-size:18px
}
.theme-toggle:hover{transform:translateY(-1px)}
.vendor-mobile-bottom-nav,.admin-mobile-bottom-nav{background:rgba(7,18,35,.96)!important;border-color:#173255!important;backdrop-filter:blur(18px)}
.vendor-mobile-bottom-nav a,.vendor-mobile-bottom-nav button,.admin-mobile-bottom-nav a{color:#9fb3ce!important}
.vendor-mobile-bottom-nav .active,.admin-mobile-bottom-nav .active{color:#fff!important}
.vendor-more-sheet{background:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.vendor-more-grid a{background:var(--app-surface-2)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
@media(max-width:991.98px){.theme-toggle{top:10px;right:10px;width:38px;height:38px;border-radius:12px}.admin-main,.vendor-main{padding-top:58px!important}}
/* Componentes internos de los dashboards */
.metric-app-card,.service-spotlight-card,.service-mini-box,.sale-mobile-card,.account-mobile-card,.customer-mobile-card,.renewal-mobile-card,.supplier-mobile-card,.settings-logo,.service-mobile-box,.admin-dashboard-stat,.admin-dashboard-money-card{
  background:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important;box-shadow:var(--app-shadow)!important
}
.metric-app-card .value,.metric-app-card .foot,.service-spotlight-title,.service-mini-box .v,.sale-mobile-card strong,.admin-dashboard-stat-value,.admin-dashboard-money-value,.admin-dashboard-title{color:var(--app-text)!important}
.metric-app-card .label,.service-spotlight-type,.service-mini-box .k,.admin-dashboard-stat-label,.admin-dashboard-stat-subtext,.admin-dashboard-money-label,.admin-dashboard-money-subtext,.admin-dashboard-subtitle{color:var(--app-muted)!important}
.sales-section-title,.settings-title{color:var(--app-text)!important}
.dashboard-sales-actions,.sales-filters{background:transparent!important}
html[data-theme="dark"] .btn-outline-primary{color:#70adff;border-color:#2f80ff}html[data-theme="dark"] .btn-outline-secondary{color:#bdcce0;border-color:#526984}
.admin-nav a{display:flex!important;align-items:center;gap:10px}.admin-nav-ico{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.08);font-size:15px}.admin-nav a.active .admin-nav-ico{background:rgba(255,255,255,.18)}
