/* =====================================================================
   AUSAPE V8.3 · Corporate Functional UI
   Objetivo: recuperar estilo corporativo oscuro/azul, eliminar solapes,
   quitar toolbars duplicadas y reforzar módulos Fórum/Hotel sin bloquear.
   ===================================================================== */
:root{
  --ausape-blue:#009fe3;
  --ausape-blue-2:#00b8f0;
  --ausape-dark:#003b5c;
  --ausape-dark-2:#005982;
  --ausape-ink:#0b2438;
  --ausape-muted:#5b7186;
  --ausape-soft:#eef8ff;
  --ausape-line:rgba(0,117,170,.18);
  --ausape-card:#ffffff;
  --ausape-radius:18px;
  --ausape-shadow:0 14px 40px rgba(0,62,96,.10);
  --ausape-shadow-strong:0 22px 70px rgba(0,62,96,.18);
  --ausape-ease:cubic-bezier(.22,1,.36,1);
}

/* Limpieza de duplicados V8.2: mantenemos botones nativos del módulo */
.v82-module-toolbar{display:none!important;visibility:hidden!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}

html,body{background:linear-gradient(135deg,#eef9ff 0%,#f8fdff 42%,#ffffff 100%)!important;color:var(--ausape-ink)!important;}
body.v83-corporate-ready *{scrollbar-width:thin;scrollbar-color:rgba(0,159,227,.42) rgba(226,243,252,.7)}
body.v83-corporate-ready ::-webkit-scrollbar{height:10px;width:10px}
body.v83-corporate-ready ::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--ausape-blue),var(--ausape-dark-2));border-radius:999px;border:2px solid #eaf8ff}
body.v83-corporate-ready ::-webkit-scrollbar-track{background:#eaf8ff}

/* Sidebar: vuelta a identidad fuerte, legible y sin blanco sobre blanco */
.sidebar{
  background:
    radial-gradient(circle at 20% 0%,rgba(110,199,232,.38),transparent 28%),
    radial-gradient(circle at 80% 95%,rgba(0,159,227,.26),transparent 32%),
    linear-gradient(180deg,#003b5c 0%,#005b83 54%,#0079ad 100%)!important;
  color:#fff!important;
  border-right:1px solid rgba(255,255,255,.14)!important;
  box-shadow:22px 0 55px rgba(0,44,70,.28)!important;
}
.brand-logo-wrap{
  background:rgba(255,255,255,.95)!important;
  border:1px solid rgba(255,255,255,.45)!important;
  border-radius:24px!important;
  box-shadow:0 18px 40px rgba(0,22,38,.24)!important;
  padding:14px 16px!important;
  overflow:hidden!important;
}
.sidebar-logo{filter:drop-shadow(0 8px 16px rgba(0,102,160,.16))!important;max-height:82px!important;object-fit:contain!important;}
.brand-logo-wrap h1,.brand h1{color:#003b5c!important;text-shadow:none!important;line-height:1.05!important;}
.brand-logo-wrap p,.brand p{color:#4d6d82!important;text-shadow:none!important;font-weight:800!important;}

.nav{display:grid!important;gap:8px!important;padding:10px 6px 22px!important;}
.nav button{
  color:rgba(255,255,255,.95)!important;
  background:rgba(255,255,255,.095)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 8px 20px rgba(0,24,42,.10)!important;
  backdrop-filter:blur(10px)!important;
  font-weight:900!important;
  letter-spacing:-.015em!important;
  min-height:46px!important;
  border-radius:16px!important;
  padding:11px 12px!important;
  text-shadow:0 1px 0 rgba(0,0,0,.16)!important;
  transition:transform .18s var(--ausape-ease),background .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.nav button:hover{background:rgba(255,255,255,.18)!important;border-color:rgba(255,255,255,.34)!important;transform:translateX(4px)!important;box-shadow:0 14px 28px rgba(0,20,36,.18)!important;}
.nav button.active{
  color:#003b5c!important;
  background:linear-gradient(135deg,#ffffff 0%,#e7f8ff 100%)!important;
  border-color:rgba(255,255,255,.8)!important;
  box-shadow:0 18px 34px rgba(0,24,42,.26)!important;
  text-shadow:none!important;
}
.nav button.active::after{background:#f0b040!important;box-shadow:0 0 0 6px rgba(240,176,64,.18)!important;}
.nav button[data-view]::after{box-shadow:none!important;}
.nav button[data-view="forum"]::after,
.nav button[data-view="sponsorpack"]::after,
.nav button[data-view="screens"]::after,
.nav button[data-view="secrets"]::after,
.nav button[data-view="landing"]::after,
.nav button[data-view="incidents"]::after{
  background:rgba(255,255,255,.20)!important;color:#fff!important;border:1px solid rgba(255,255,255,.28)!important;
}
.nav button.active[data-view]::after{background:linear-gradient(135deg,var(--ausape-blue),var(--ausape-blue-2))!important;color:#fff!important;border:0!important;}
.sidebox{background:rgba(255,255,255,.11)!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important;box-shadow:0 14px 28px rgba(0,20,36,.12)!important;}
.sidebox b,.sidebox strong,.sidebox p,.sidebox span{color:#fff!important;text-shadow:0 1px 0 rgba(0,0,0,.12)!important;}
.sidebox small{color:rgba(255,255,255,.78)!important;}

/* Header y secciones con menos pastel y más claridad */
.main{background:linear-gradient(135deg,#eff9ff 0%,#f8fdff 48%,#ffffff 100%)!important;}
.topbar{
  background:rgba(255,255,255,.90)!important;
  border:1px solid rgba(0,117,170,.14)!important;
  box-shadow:0 15px 44px rgba(0,62,96,.10)!important;
  backdrop-filter:blur(14px)!important;
}
.topbar h2{color:var(--ausape-dark)!important;letter-spacing:-.045em!important;}
.topbar p{color:var(--ausape-muted)!important;font-weight:650!important;}
.session-card{background:#fff!important;border:1px solid var(--ausape-line)!important;border-radius:18px!important;box-shadow:0 12px 30px rgba(0,80,122,.09)!important;}

.section{min-width:0!important;}
.section.active{animation:v83SectionIn .28s var(--ausape-ease) both!important;}
.section-title{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:16px!important;align-items:end!important;margin-bottom:18px!important;}
.section-title h3{color:var(--ausape-dark)!important;font-size:clamp(24px,2.1vw,36px)!important;line-height:1.02!important;letter-spacing:-.055em!important;}
.section-title p{color:var(--ausape-muted)!important;font-weight:650!important;max-width:1100px!important;}
.actions,.filters{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important;min-width:0!important;}
.actions .btn,.filters .btn,.top-actions .btn{white-space:nowrap!important;}

.card,.panel,.module-card,.budget-panel,.screen-preview-card,.forum-hero{
  background:#fff!important;
  border:1px solid var(--ausape-line)!important;
  box-shadow:var(--ausape-shadow)!important;
  border-radius:22px!important;
  overflow:hidden!important;
  min-width:0!important;
  position:relative!important;
}
.card::before,.panel::before,.module-card::before{opacity:.75!important;height:3px!important;background:linear-gradient(90deg,var(--ausape-blue),var(--ausape-blue-2),transparent 80%)!important;}
.card:hover,.panel:hover,.module-card:hover{box-shadow:var(--ausape-shadow-strong)!important;}
.card h3{color:var(--ausape-dark)!important;letter-spacing:-.035em!important;}
.muted,small{color:#63798f!important;}

/* KPIs saneados: no solapar, no tarjetas gigantes vacías */
.grid.kpis,.kpis,.budget-kpis,.mini-kpis,.sponsor-summary-grid,.ratio-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
}
.card.kpi,.kpi{min-height:118px!important;padding:18px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:6px!important;}
.kpi span,.card.kpi span{color:#5c7187!important;font-weight:950!important;text-transform:uppercase!important;font-size:12px!important;letter-spacing:.06em!important;}
.kpi b,.card.kpi b{font-size:clamp(28px,2.7vw,46px)!important;line-height:1!important;color:#007eb9!important;overflow-wrap:anywhere!important;}
.kpi small,.card.kpi small{font-weight:650!important;}

/* Botones: menos saturación y mejores estados */
.btn,.mini,button.btn,label.btn{
  border-radius:14px!important;
  font-weight:900!important;
  box-shadow:0 10px 22px rgba(0,80,122,.11)!important;
  border:1px solid rgba(0,117,170,.16)!important;
  transition:transform .16s var(--ausape-ease),box-shadow .16s ease,filter .16s ease,background .16s ease!important;
}
.btn:not(.secondary):not(.ghost):not(.danger):not(.warn),.mini:not(.secondary):not(.ghost):not(.danger):not(.warn){background:linear-gradient(135deg,#009fe3,#007cb7)!important;color:#fff!important;}
.btn.secondary,.mini.secondary{background:#eaf8ff!important;color:#005b83!important;border-color:#bfe9fa!important;}
.btn.ghost,.mini.ghost{background:#fff!important;color:#003b5c!important;border-color:var(--ausape-line)!important;}
.btn.danger,.mini.danger,.danger-mini{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;color:#fff!important;border:0!important;}
.btn.warn,.mini.warn{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important;border:0!important;}
.btn:hover,.mini:hover{transform:translateY(-1px)!important;filter:saturate(1.08)!important;box-shadow:0 16px 34px rgba(0,80,122,.17)!important;}
.btn:active,.mini:active{transform:translateY(0) scale(.99)!important;}

/* Tablas y filtros: profesionales y scroll contenido */
.tablewrap,.tablebox,.matrix-wrap,.forum-matrix-wrap{
  overflow:auto!important;max-width:100%!important;border-radius:18px!important;border:1px solid rgba(0,117,170,.14)!important;background:#fff!important;box-shadow:0 10px 26px rgba(0,80,122,.06)!important;
}
.tablewrap table,.tablebox table{min-width:920px!important;width:100%!important;}
.compact table{min-width:760px!important;}
thead th{position:sticky;top:0;z-index:2;background:linear-gradient(180deg,#eaf8ff,#dff3fd)!important;color:#004d73!important;font-weight:950!important;text-transform:uppercase!important;font-size:11px!important;letter-spacing:.06em!important;}
tbody td{color:#20384c!important;}
tbody tr:hover td{background:#f2fbff!important;}
input,select,textarea,.input{
  color:#10263a!important;background:#fff!important;border:1px solid rgba(0,117,170,.22)!important;border-radius:14px!important;box-shadow:0 7px 16px rgba(0,80,122,.045)!important;min-width:0!important;
}
input:focus,select:focus,textarea:focus,.input:focus{border-color:var(--ausape-blue)!important;box-shadow:0 0 0 4px rgba(0,159,227,.14)!important;outline:none!important;}
.filters>*{flex:1 1 210px!important;min-width:190px!important;}

/* Módulos Fórum/Hotel más claros */
.v83-command-center{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:0 0 18px 0!important;}
.v83-command-card{background:linear-gradient(145deg,#ffffff,#f2fbff)!important;border:1px solid var(--ausape-line)!important;border-radius:20px!important;padding:16px!important;box-shadow:0 12px 30px rgba(0,80,122,.08)!important;display:flex;flex-direction:column;gap:10px;min-width:0;}
.v83-command-card span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#0073a8;}
.v83-command-card b{font-size:18px;color:var(--ausape-dark);letter-spacing:-.03em;}
.v83-command-card p{margin:0;color:var(--ausape-muted);font-weight:650;font-size:13px;line-height:1.4;}
.v83-command-card .mini{width:max-content;max-width:100%;}
.v83-forum-maintenance,.v83-hotel-intuitive{margin-bottom:18px!important;}
.v83-danger-zone{border-color:rgba(220,38,38,.24)!important;background:linear-gradient(145deg,#fff,#fff7f7)!important;}
.v83-danger-zone span{color:#b91c1c!important;}
.v83-bulk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:14px;}
.v83-bulk-grid textarea{min-height:132px!important;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;font-size:12px!important;}
.v83-tool-note{font-size:12px;color:var(--ausape-muted);font-weight:650;margin-top:6px;}
.v83-mini-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}

/* Hotel más operativo */
#hotel .grid.two{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr)!important;align-items:stretch!important;}
#hotelRatiosPanel{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))!important;gap:10px!important;}
#hotelRatiosPanel .ratio-card,#hotelRatiosPanel>div{border-radius:16px!important;border:1px solid var(--ausape-line)!important;background:#f7fcff!important;padding:12px!important;}
#hotelAgencyPreview{background:#f7fcff;border:1px dashed rgba(0,117,170,.22);border-radius:18px;padding:16px!important;}

/* Pantallas y previews */
.room-screen-preview,#screenPreview{aspect-ratio:16/9!important;width:100%!important;min-height:360px!important;border-radius:20px!important;background:#062b45!important;overflow:hidden!important;}
.screen-preview-card{display:flex!important;flex-direction:column!important;}

/* Exportaciones y responsive */
@media(max-width:1280px){.section-title{grid-template-columns:1fr!important}.actions{justify-content:flex-start!important}#hotel .grid.two{grid-template-columns:1fr!important}.grid.two,.two{grid-template-columns:1fr!important}.sidebar{width:260px!important}}
@media(max-width:860px){.app{display:block!important}.sidebar{position:relative!important;width:100%!important;max-height:none!important}.nav{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))!important}.main{padding:14px!important}.filters>*{min-width:100%!important}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.topbar{grid-template-columns:1fr!important}.actions .btn,.actions label.btn{flex:1 1 170px!important;text-align:center!important;justify-content:center!important}}
@media(max-width:560px){.kpis{grid-template-columns:1fr!important}.btn,.mini,label.btn{width:100%!important;justify-content:center!important}.card{border-radius:18px!important}.brand-logo-wrap{padding:12px!important}.sidebar-logo{max-height:62px!important}}
@media print{.v83-command-center,.v83-forum-maintenance,.v83-hotel-intuitive,.actions,.filters,.sidebar,.topbar,.no-print{display:none!important}.card{box-shadow:none!important;border:1px solid #d8edf8!important}body{background:#fff!important}@page{size:A4;margin:10mm}}

/* Animaciones seguras */
.v83-flash{animation:v83Flash .42s var(--ausape-ease) both!important;}
.v83-reveal{animation:v83Reveal .34s var(--ausape-ease) both!important;}
@keyframes v83SectionIn{from{opacity:.0;transform:translateY(8px);filter:blur(1px)}to{opacity:1;transform:none;filter:none}}
@keyframes v83Reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes v83Flash{0%{box-shadow:0 0 0 0 rgba(0,159,227,.32)}100%{box-shadow:0 0 0 12px rgba(0,159,227,0)}}
