/* v321. Capa beta reversible. Ninguna regla de pantalla actúa sin la clase beta.
   Colores de estados, canchas/profesores, alertas e importes se conservan. */
@media screen {
  body.palmar-visual-beta {
    --bg:#030507; --panel:#080c11; --panel2:#101722; --line:#263443; --line2:#314158;
    --txt:#edf3fb; --text:#edf3fb; --muted:#a5b4ca;
    --navy-deep:#030507; --navy:#080c11; --navy-mid:#101722; --white:#edf3fb; --slate:#a5b4ca;
    --palmar-beta-neutral-bg:radial-gradient(ellipse at 75% 0,#18222f44,transparent 65%),linear-gradient(145deg,#0b1016,#06090d);
    --palmar-beta-neutral-border:#24303e;
    --palmar-beta-inset-bg:#0a1017; --palmar-beta-inset-hover:#111d2a;
    background:#030507!important; color:#edf3fb; font-family:Inter,Arial,sans-serif!important;
  }
  body.palmar-visual-beta .palmar-shell-wrapper {
    margin-left:286px!important; min-height:100vh;
    background-color:#030507!important;
    background-image:url('assets/reportes-padel-azul-v294.png')!important;
    background-position:right top!important; background-repeat:no-repeat!important;
    background-size:min(100%,clamp(620px,60vw,1200px)) auto!important;
    background-blend-mode:screen;
  }
  body.palmar-visual-beta .palmar-shell-wrapper main {
    background:transparent!important; max-width:1900px; width:100%!important;box-sizing:border-box;
    padding:24px 26px 40px!important; margin-left:auto; margin-right:auto;
  }
  body.palmar-visual-beta .app, body.palmar-visual-beta .app-shell,
  body.palmar-visual-beta .quick-shell {background:transparent!important}
  body.palmar-visual-beta [data-palmar-beta-header] {
    position:relative; min-height:100px; gap:24px; padding-bottom:22px!important;
    margin-bottom:20px; border-bottom:0!important; background:transparent!important;
  }
  body.palmar-visual-beta [data-palmar-beta-header] h1,
  body.palmar-visual-beta h1[data-palmar-beta-header] {
    color:#edf3fb!important; font:700 45px/1.05 Rajdhani,Inter,Arial,sans-serif!important;
    letter-spacing:.1px; margin-top:4px;
  }
  body.palmar-visual-beta [data-palmar-beta-header] :is(p,.lead,.sub) {color:#a5b4ca!important;font-size:13px!important;line-height:1.4}
  body.palmar-visual-beta [data-palmar-beta-header] :is(.eyebrow,.collections-eyebrow) {color:#67c9ec!important;font-size:11px!important;letter-spacing:3px}
  body.palmar-visual-beta [data-palmar-beta-header][data-palmar-beta-art="palm"] {padding-left:96px!important}
  body.palmar-visual-beta [data-palmar-beta-header][data-palmar-beta-art="palm"]:before {
    content:'';position:absolute;left:0;top:0;width:78px;height:78px;
    background:url('assets/palmera-caja-arqueo.png') center/contain no-repeat;pointer-events:none;
  }
  body.palmar-visual-beta [data-palmar-beta-header] :is(.title-icon-art,.client-title-icon,.client-title-icon img,.cash-toolbar-art,.stock-title-palm,.stock-title-palm img,.buffet-heading-icon,.buffet-heading-icon img,.collections-mark,.collections-mark img,.report-brand>img,.heading>.palm,.heading>.palm img,.quick-heading>img) {
    width:78px!important;height:78px!important;object-fit:contain;background:transparent!important;
    border:0!important;box-shadow:none!important;border-radius:0!important;flex:0 0 78px!important;
  }
  /* Sólo contenedores neutros. No selecciona las fichas de estado de la grilla. */
  body.palmar-visual-beta :is(.panel,.settings-card,.stock-catalog-card,.stock-recent-card,.collections-panel,.quick-card,.box):not(.warning):not(.danger):not(.error):not(.success) {
    background:var(--palmar-beta-neutral-bg)!important;
    border-color:var(--palmar-beta-neutral-border);box-shadow:inset 0 1px #b1d0ff09;
  }
  /* Canchas no usa .panel para su grilla: comparte el fondo de Reportes.
     Se retocan sólo superficies neutras, nunca fichas ni indicadores de estado. */
  body.palmar-visual-beta[data-palmar-beta-page="canchas"] :is(.daily-timeline,.court-accounts-panel) {
    background:var(--palmar-beta-neutral-bg)!important;
    border-color:var(--palmar-beta-neutral-border)!important;box-shadow:inset 0 1px #b1d0ff09;
  }
  body.palmar-visual-beta[data-palmar-beta-page="canchas"] :is(.timeline-hours,.timeline-court-label,.timeline-status-strip) {
    background:var(--palmar-beta-inset-bg)!important;
    border-color:var(--palmar-beta-neutral-border)!important;
  }
  body.palmar-visual-beta[data-palmar-beta-page="canchas"] .timeline-free-slot {
    background:var(--palmar-beta-inset-bg)!important;
  }
  body.palmar-visual-beta[data-palmar-beta-page="canchas"] .timeline-free-slot:is(:hover,:focus-visible) {
    background:var(--palmar-beta-inset-hover)!important;
  }
  body.palmar-visual-beta :is(.metric,.collections-kpi,.stock-layout>aside>.card) {background-color:#080c11;border-color:#263443}
  /* Extiende el mismo fondo aprobado de Canchas a los demás menús.
     Lista de superficies reales, no comodines de estado ni botones. Se
     conservan acentos, iconos, fotografías y los colores semánticos. */
  body.palmar-visual-beta :is(.card,.sub-card,.side-card,.cash-panel,.history-panel,.court-info-panel,.fast-actions-panel,.bottom-summary,.quick-load-card,.quick-table-shell,.quick-repeat-panel,.quick-sale-card,.quick-client-panel,.collections-side-card,.collections-summary,.mini-card,.summary):not(.warning):not(.warn):not(.danger):not(.error):not(.success):not(.income):not(.expense):not(.positive):not(.negative):not(.score):not(.green):not(.red):not(.violet):not(.blue):not(.amber) {
    background:var(--palmar-beta-neutral-bg)!important;
    border-color:var(--palmar-beta-neutral-border);box-shadow:inset 0 1px #b1d0ff09;
  }
  body.palmar-visual-beta[data-palmar-beta-page="usuarios"] .section,
  body.palmar-visual-beta[data-palmar-beta-page="profesores"] .section,
  body.palmar-visual-beta[data-palmar-beta-page="caja"] :is(.shift-card,.operator-box-dialog,.cash-closing-dialog),
  body.palmar-visual-beta[data-palmar-beta-page="stock"] #stockModal .stock-modal-card,
  body.palmar-visual-beta[data-palmar-beta-page="cancha-abierta"] .catering-extra-dialog {
    background:var(--palmar-beta-neutral-bg)!important;
    border-color:var(--palmar-beta-neutral-border)!important;
  }
  body.palmar-visual-beta :is(.table-wrap,.table-search,.search-product,.search-global,.collections-summary-metrics,.time-summary,.table-movements,.movement-table,.stock-filters,.stock-history-filters) {
    background:var(--palmar-beta-inset-bg)!important;
    border-color:var(--palmar-beta-neutral-border);
  }
  body.palmar-visual-beta :is(.modal .dialog,.modal .modal-box,.modal>.modal-content,.stock-modal,.quick-sale-dialog) {
    background:linear-gradient(145deg,#101722,#06090d);color:#edf3fb;
  }
  /* Menú nuevo de Reportes, reutilizando exactamente enlaces, perfil y permisos. */
  body.palmar-visual-beta .palmar-sidebar {
    width:286px!important;background:linear-gradient(180deg,#0a111c,#04070b 70%,#080f1b)!important;
    border-right:2px solid #75baff!important;padding:18px 17px 14px;gap:12px;
    box-shadow:4px 0 18px #187affaa,8px 0 36px #185fff55!important;isolation:isolate;
  }
  body.palmar-visual-beta .palmar-sidebar:before {
    content:'';position:absolute;z-index:-1;inset:auto 0 0;height:260px;
    background:linear-gradient(180deg,#050b13 0%,#050b1377 55%,#050b1322),url('assets/clientes-padel-v196.png') center bottom/cover no-repeat;
    opacity:.72;pointer-events:none;
  }
  body.palmar-visual-beta .palmar-sidebar:after {
    content:'';position:absolute;right:0;top:0;width:3px;height:100%;
    background:linear-gradient(#7194ff99,#72caff,#678bff88);box-shadow:0 0 8px #47a2ff,0 0 24px #276aff;pointer-events:none;
  }
  body.palmar-visual-beta .palmar-sidebar .side-brand-stacked {height:96px;gap:12px;margin:0;border-bottom:1px solid #2a3c60;padding:4px 8px 17px}
  body.palmar-visual-beta .palmar-sidebar .side-brand-stacked img {width:62px;height:62px;flex:0 0 62px;object-fit:contain}
  body.palmar-visual-beta .palmar-sidebar .sbs-line1 {font-size:19px;letter-spacing:1px;color:#f0f4ff}
  body.palmar-visual-beta .palmar-sidebar .sbs-line2 {font-size:20px;color:#7798ff;letter-spacing:1px}
  body.palmar-visual-beta .palmar-sidebar .sbs-sub {font-size:8px;letter-spacing:1.3px;color:#a3afd0}
  body.palmar-visual-beta .palmar-sidebar .side-profile {background:linear-gradient(145deg,#111b27,#080d14);border:1px solid #28374a;border-radius:12px}
  body.palmar-visual-beta .palmar-sidebar .side-scroll {overflow-y:auto;overflow-x:hidden;padding:0 0 8px;scrollbar-width:thin;scrollbar-color:#344973 transparent}
  body.palmar-visual-beta .palmar-sidebar .side-group {margin-bottom:14px}
  body.palmar-visual-beta .palmar-sidebar .side-group-label {color:#8297c4;border-bottom:1px solid #263654;padding:10px 9px 8px;font-size:10px;letter-spacing:1.7px;font-weight:500;margin-bottom:5px}
  body.palmar-visual-beta .palmar-sidebar .side-group-label:before {display:none}
  body.palmar-visual-beta .palmar-sidebar .side-link {min-height:43px;padding:10px 12px;gap:13px;border:1px solid transparent;border-radius:10px;color:#e2e8f6;background:transparent;font-size:13px;font-weight:500;margin-bottom:3px}
  body.palmar-visual-beta .palmar-sidebar .side-icon {width:25px;height:25px;flex:0 0 25px;color:#a1b9ed}
  body.palmar-visual-beta .palmar-sidebar .side-icon svg {width:24px;height:24px;stroke-width:1.9}
  body.palmar-visual-beta .palmar-sidebar a.side-link:after {color:#90a8e7;font-size:22px}
  body.palmar-visual-beta .palmar-sidebar a.side-link:hover {background:#152448bb;border-color:#314981;color:#fff}
  body.palmar-visual-beta .palmar-sidebar a.side-link.active {background:linear-gradient(100deg,#3e4bffbb,#20316bd9 30%,#17213eda);border-color:#6676ff;box-shadow:inset 3px 0 #b7d6ff,0 0 13px #405cff55;color:#fff}
  body.palmar-visual-beta .palmar-sidebar a.side-link.active:before {display:none}
  body.palmar-visual-beta .palmar-sidebar a.side-link.active .side-icon {color:#eef5ff;filter:drop-shadow(0 0 5px #91b5ff)}
  body.palmar-visual-beta .palmar-sidebar .side-logout-btn {background:#0b111bd9;border-color:#334875;color:#c6d5ef}
  body.palmar-visual-beta #visualBetaToggle {border-color:#6c91db;background:linear-gradient(145deg,#285596,#172b50);color:#edf5ff}
}
@media screen and (max-width:1280px) {
  body.palmar-visual-beta [data-palmar-beta-header] h1,body.palmar-visual-beta h1[data-palmar-beta-header] {font-size:37px!important}
}
@media screen and (max-width:900px) {
  body.palmar-visual-beta .palmar-shell-wrapper {margin-left:0!important;background-size:min(100%,620px) auto!important}
  body.palmar-visual-beta .palmar-sidebar {width:100%!important;padding:9px 12px;position:sticky;box-shadow:none!important;border-right:0!important;border-bottom:1px solid #344d79}
  body.palmar-visual-beta .palmar-sidebar:before,body.palmar-visual-beta .palmar-sidebar:after {display:none}
  body.palmar-visual-beta .palmar-sidebar .side-scroll {overflow-x:auto;overflow-y:hidden;padding:0}
  body.palmar-visual-beta .palmar-sidebar .side-group {margin:0}
  body.palmar-visual-beta .palmar-sidebar a.side-link {min-height:40px;margin-bottom:0}
  body.palmar-visual-beta [data-palmar-beta-header] {min-height:90px;gap:14px}
}
@media screen and (max-width:620px) {
  body.palmar-visual-beta .palmar-shell-wrapper main {padding:18px 13px 32px!important}
  body.palmar-visual-beta [data-palmar-beta-header] h1,body.palmar-visual-beta h1[data-palmar-beta-header] {font-size:32px!important}
  body.palmar-visual-beta [data-palmar-beta-header][data-palmar-beta-art="palm"] {padding-left:72px!important}
  body.palmar-visual-beta [data-palmar-beta-header][data-palmar-beta-art="palm"]:before {width:58px;height:58px}
}
@media print {
  #visualBetaToggle,#visualBetaStatus {display:none!important}
}
