
/* NexoTPV Global Premium Theme · negro/dorado */
:root{
    --nexo-bg:#030303;
    --nexo-bg-soft:#080604;
    --nexo-panel:#0f0f0f;
    --nexo-panel-2:#17110a;
    --nexo-gold:#c9973f;
    --nexo-gold-light:#f4d38a;
    --nexo-gold-dark:#8f6423;
    --nexo-text:#fff8e8;
    --nexo-muted:#b8aa8b;
    --nexo-line:rgba(244,211,138,.16);
    --nexo-danger:#ef4444;
    --nexo-ok:#22c55e;
    --nexo-warning:#f59e0b;
    --nexo-shadow:0 24px 80px rgba(0,0,0,.45);
}

html{
    background:var(--nexo-bg);
}

body{
    background:
        radial-gradient(circle at 15% 0%,rgba(244,211,138,.12),transparent 28%),
        radial-gradient(circle at 90% 15%,rgba(201,151,63,.10),transparent 24%),
        linear-gradient(180deg,#020202 0%,#080604 45%,#020202 100%) !important;
    color:var(--nexo-text) !important;
}

/* Layouts generales */
.main,
.content,
.content-wrapper,
.page,
.page-content,
.admin-content,
.dashboard,
.wrapper,
.panel,
.card,
.box,
.widget,
.module-card,
.stat-card,
.kpi-card,
.launch-card,
.check-card,
.superadmin-card{
    color:var(--nexo-text);
}

/* Fondos de panel */
.card,
.box,
.panel,
.widget,
.module-card,
.stat-card,
.kpi-card,
.launch-card,
.check-card,
.superadmin-card,
.table-card,
.form-card,
.section-card,
.admin-card{
    background:linear-gradient(180deg,rgba(24,18,11,.92),rgba(8,8,8,.96)) !important;
    border:1px solid var(--nexo-line) !important;
    border-radius:22px !important;
    box-shadow:var(--nexo-shadow) !important;
}

/* Menús laterales */
.sidebar,
.side-menu,
.admin-sidebar,
.superadmin-sidebar,
.tpv-sidebar,
.nav-sidebar,
.menu-lateral,
.left-sidebar{
    background:linear-gradient(180deg,#050505,#120d07) !important;
    border-right:1px solid rgba(244,211,138,.14) !important;
}

.sidebar a,
.side-menu a,
.admin-sidebar a,
.superadmin-sidebar a,
.tpv-sidebar a,
.nav-sidebar a,
.menu-lateral a,
.left-sidebar a{
    color:#d8caab !important;
}

.sidebar a:hover,
.side-menu a:hover,
.admin-sidebar a:hover,
.superadmin-sidebar a:hover,
.tpv-sidebar a:hover,
.nav-sidebar a:hover,
.menu-lateral a:hover,
.left-sidebar a:hover,
.sidebar .active,
.side-menu .active,
.admin-sidebar .active,
.superadmin-sidebar .active{
    color:var(--nexo-gold-light) !important;
    background:rgba(244,211,138,.08) !important;
}

/* Cabeceras */
.header,
.topbar,
.navbar,
.admin-topbar,
.superadmin-topbar,
.tpv-topbar{
    background:rgba(3,3,3,.82) !important;
    backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(244,211,138,.12) !important;
    color:var(--nexo-text) !important;
}

h1,h2,h3,h4,h5,h6{
    color:var(--nexo-text) !important;
}

p,span,li,label,small,td,th,div{
    border-color:rgba(244,211,138,.12);
}

.text-muted,
.muted,
.help,
.hint,
small{
    color:var(--nexo-muted) !important;
}

/* Botones */
button,
.btn,
.button,
input[type="submit"],
input[type="button"],
.btn-primary,
.btn-success,
.action-btn{
    border-radius:14px !important;
    border:1px solid rgba(244,211,138,.20) !important;
    font-weight:850 !important;
	background:linear-gradient(135deg,var(--nexo-gold-dark),var(--nexo-gold),var(--nexo-gold-light)) !important;
}

.btn-primary,
.btn-gold,
.btn-success,
button[type="submit"],
input[type="submit"],
.primary,
.action-primary{
    background:linear-gradient(135deg,var(--nexo-gold-dark),var(--nexo-gold),var(--nexo-gold-light)) !important;
    color:#130c02 !important;
    box-shadow:0 12px 32px rgba(201,151,63,.25) !important;
}

.btn-secondary,
.btn-dark,
.secondary{
    background:rgba(255,255,255,.05) !important;
    color:var(--nexo-gold-light) !important;
}

/* Formularios */
input,
select,
textarea{
    background:#090909 !important;
    border:1px solid rgba(244,211,138,.18) !important;
    color:var(--nexo-text) !important;
    border-radius:12px !important;
}

input:focus,
select:focus,
textarea:focus{
    outline:none !important;
    border-color:var(--nexo-gold-light) !important;
    box-shadow:0 0 0 3px rgba(244,211,138,.12) !important;
}

::placeholder{
    color:#8d8067 !important;
}

/* Tablas */
table{
    color:var(--nexo-text) !important;
    border-color:rgba(244,211,138,.12) !important;
}

thead,
thead tr,
.table thead{
    background:rgba(244,211,138,.08) !important;
    color:var(--nexo-gold-light) !important;
}

tr,
td,
th{
    border-color:rgba(244,211,138,.10) !important;
}

tbody tr:hover{
    background:rgba(244,211,138,.05) !important;
}

/* Estados */
.ok,
.status-ok,
.badge-ok,
.success{
    color:#d1fae5 !important;
    background:rgba(34,197,94,.14) !important;
    border-color:rgba(34,197,94,.35) !important;
}

.warning,
.warn,
.aviso,
.status-warning{
    color:#fde68a !important;
    background:rgba(245,158,11,.14) !important;
    border-color:rgba(245,158,11,.35) !important;
}

.error,
.danger,
.status-error{
    color:#fecaca !important;
    background:rgba(239,68,68,.14) !important;
    border-color:rgba(239,68,68,.35) !important;
}

/* TPV productos/categorías */
.product-card,
.category-card,
.product,
.category,
.tpv-product,
.tpv-category,
.mesa-card,
.table-item{
    background:linear-gradient(180deg,#17110a,#080808) !important;
    border:1px solid rgba(244,211,138,.16) !important;
    border-radius:20px !important;
    color:var(--nexo-text) !important;
}

.product-card:hover,
.category-card:hover,
.tpv-product:hover,
.tpv-category:hover,
.mesa-card:hover{
    border-color:rgba(244,211,138,.48) !important;
    box-shadow:0 16px 45px rgba(201,151,63,.16) !important;
}

/* Cocina */
.kitchen-card,
.order-card,
.comanda,
.comanda-card{
    background:linear-gradient(180deg,#15110d,#050505) !important;
    border:1px solid rgba(244,211,138,.18) !important;
    border-radius:24px !important;
    color:var(--nexo-text) !important;
}

/* Logo */
.logo img,
.brand img,
.sidebar-logo img,
.login-logo img{
    filter:drop-shadow(0 12px 26px rgba(201,151,63,.26));
}

/* Scrollbar */
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:#050505}
::-webkit-scrollbar-thumb{background:#6d4b18;border-radius:999px}
::-webkit-scrollbar-thumb:hover{background:#c9973f}

/* Responsive */
@media(max-width:900px){
    .card,
    .box,
    .panel,
    .widget{
        border-radius:18px !important;
    }
}
