/* ÁguiaCast Painel Mult — V1.5.0
   Camada visual não-invasiva sobre o Angular/Nebular compilado. */
:root {
  --aguia-accent: #f5c518;
  --aguia-accent-strong: #ffcf33;
  --aguia-bg: #090a0d;
  --aguia-surface: #101217;
  --aguia-surface-2: #171a20;
  --aguia-surface-3: #20242c;
  --aguia-text: #f4f5f7;
  --aguia-muted: #9097a5;
  --aguia-border: rgba(255,255,255,.09);
  --aguia-shadow: 0 12px 36px rgba(0,0,0,.24);
}

html, body { min-height: 100%; }
body {
  background: var(--aguia-bg) !important;
  color: var(--aguia-text) !important;
  transition: background-color .2s ease, color .2s ease;
}
body.aguia-theme-light {
  --aguia-bg: #f3f5f8;
  --aguia-surface: #ffffff;
  --aguia-surface-2: #f8f9fb;
  --aguia-surface-3: #eef1f5;
  --aguia-text: #1d2129;
  --aguia-muted: #667080;
  --aguia-border: rgba(20,28,40,.12);
  --aguia-shadow: 0 10px 30px rgba(29,33,41,.08);
}

/* Spinner de abertura */
#nb-global-spinner.spinner { background: var(--aguia-bg) !important; }
#nb-global-spinner.spinner div:first-child { box-shadow: 0 3px 3px 0 var(--aguia-accent) !important; }
#nb-global-spinner.spinner div:first-child:before { box-shadow: 0 3px 3px 0 var(--aguia-text) !important; }
#nb-global-spinner.spinner div:first-child:after { box-shadow: 0 3px 3px 0 rgba(245,197,24,.55) !important; }

/* Estrutura principal */
nb-layout .layout,
nb-layout .layout-container,
nb-layout-column,
.content,
.content-wrapper,
.main-container {
  background: var(--aguia-bg) !important;
  color: var(--aguia-text) !important;
}
nb-layout-header nav,
nb-layout-header .fixed {
  background: rgba(16,18,23,.96) !important;
  border-bottom: 1px solid var(--aguia-border) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.10) !important;
}
body.aguia-theme-light nb-layout-header nav,
body.aguia-theme-light nb-layout-header .fixed { background: rgba(255,255,255,.96) !important; }

nb-sidebar .main-container,
nb-sidebar .scrollable,
nb-sidebar {
  background: var(--aguia-surface) !important;
  border-right-color: var(--aguia-border) !important;
}

/* Cards */
nb-card,
.card,
.card-back {
  background: var(--aguia-surface) !important;
  color: var(--aguia-text) !important;
  border: 1px solid var(--aguia-border) !important;
  border-radius: 16px !important;
  box-shadow: var(--aguia-shadow) !important;
}
nb-card-header,
.card-header {
  color: var(--aguia-text) !important;
  border-bottom: 1px solid var(--aguia-border) !important;
  font-weight: 800 !important;
}
nb-card-body, nb-card-footer, .card-body { color: var(--aguia-text) !important; }

/* Menu lateral */
nb-menu .menu-item { border-bottom-color: transparent !important; }
nb-menu .menu-item > a,
nb-menu .menu-item a {
  color: var(--aguia-muted) !important;
  border-radius: 10px !important;
  margin: 3px 10px !important;
  transition: background .15s ease, color .15s ease, transform .15s ease !important;
}
nb-menu .menu-item > a:hover,
nb-menu .menu-item a:hover {
  background: rgba(245,197,24,.08) !important;
  color: var(--aguia-text) !important;
  transform: translateX(2px);
}
nb-menu .menu-item a.active,
nb-menu .menu-item .active,
nb-menu .menu-item.active > a {
  background: rgba(245,197,24,.13) !important;
  color: var(--aguia-accent) !important;
  box-shadow: inset 3px 0 0 var(--aguia-accent) !important;
}
nb-menu nb-icon, nb-menu i { color: currentColor !important; }

/* Formulários */
input, textarea, select, .form-control,
input.input-back,
.aguia-feed-select {
  background: var(--aguia-surface-2) !important;
  color: var(--aguia-text) !important;
  border-color: var(--aguia-border) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}
input:focus, textarea:focus, select:focus, .form-control:focus,
.aguia-feed-select:focus {
  border-color: var(--aguia-accent) !important;
  box-shadow: 0 0 0 2px rgba(245,197,24,.14) !important;
}
input::placeholder, textarea::placeholder { color: var(--aguia-muted) !important; opacity:.8; }
label, legend, h1, h2, h3, h4, h5, h6 { color: var(--aguia-text) !important; }
small, .text-muted { color: var(--aguia-muted) !important; }
ngx-dropzone {
  background: var(--aguia-surface-2) !important;
  border-color: var(--aguia-border) !important;
  border-radius: 12px !important;
  color: var(--aguia-muted) !important;
}

/* Botões principais */
button[nbbutton][status="primary"],
button[nbButton][status="primary"],
.btn-primary,
.aguia-primary {
  background: var(--aguia-accent) !important;
  border-color: var(--aguia-accent) !important;
  color: #111318 !important;
  font-weight: 800 !important;
  border-radius: 10px !important;
}
button[nbbutton][status="primary"]:hover,
button[nbButton][status="primary"]:hover,
.btn-primary:hover { filter: brightness(1.05); }

/* Tabelas */
table, thead, tbody, tr, td, th { color: var(--aguia-text) !important; }
td, th { border-color: var(--aguia-border) !important; }
thead th { background: var(--aguia-surface-2) !important; }
tbody tr:hover { background: rgba(245,197,24,.04) !important; }

/* Marca ÁguiaCast substitui as imagens antigas PlayRadio sem tocar nos bundles */
.aguia-wordmark {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 150px;
  color: var(--aguia-text);
  font-family: Exo, Roboto, Arial, sans-serif;
  line-height: 1;
  text-decoration: none !important;
}
.aguia-wordmark-mark {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 11px;
  background: linear-gradient(145deg,var(--aguia-accent-strong),var(--aguia-accent));
  color: #0d0f13;
  font-weight: 900;
  font-size: 19px;
  box-shadow: 0 8px 20px rgba(245,197,24,.20);
}
.aguia-wordmark-copy { display:flex; flex-direction:column; gap:3px; }
.aguia-wordmark-name { font-weight: 900; letter-spacing: .3px; font-size: 18px; }
.aguia-wordmark-sub { color: var(--aguia-muted); font-size: 9px; letter-spacing: 1.8px; text-transform: uppercase; font-weight: 800; }
.logo-container .aguia-wordmark { min-width: 160px; }
.logo-container .aguia-wordmark-mark { width:30px; height:30px; border-radius:9px; font-size:17px; }
.logo-container .aguia-wordmark-name { font-size:16px; }
.logo-container .aguia-wordmark-sub { font-size:8px; }

/* Login */
.my-login-page {
  background:
    radial-gradient(circle at 18% 18%, rgba(245,197,24,.11), transparent 32%),
    radial-gradient(circle at 82% 78%, rgba(245,197,24,.06), transparent 28%),
    var(--aguia-bg) !important;
  min-height: 100vh !important;
}
.my-login-page .brand {
  width: 280px !important;
  height: auto !important;
  overflow: visible !important;
  margin: 52px auto 24px !important;
  box-shadow: none !important;
  text-align: center;
}
.my-login-page .brand .aguia-wordmark { justify-content:center; min-width:0; }
.my-login-page .brand .aguia-wordmark-mark { width:48px; height:48px; font-size:26px; border-radius:15px; }
.my-login-page .brand .aguia-wordmark-name { font-size:26px; }
.my-login-page .brand .aguia-wordmark-sub { font-size:9px; }
.my-login-page .card-wrapper { max-width: 420px; }
.my-login-page .card-title { text-align:center; font-weight:900 !important; }
.my-login-page .footer { color: var(--aguia-muted) !important; }

/* Barra de preferências */
.aguia-toolbar {
  position: fixed;
  top: 14px;
  right: 14px;
  z-index: 9999;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px;
  border-radius: 13px;
  background: color-mix(in srgb, var(--aguia-surface) 92%, transparent);
  border: 1px solid var(--aguia-border);
  box-shadow: var(--aguia-shadow);
  backdrop-filter: blur(12px);
}
.aguia-toolbar.aguia-toolbar-header {
  position: static;
  margin-left: auto;
  margin-right: 8px;
  box-shadow: none;
  background: transparent;
  border-color: transparent;
  backdrop-filter: none;
}
.aguia-toolbar button {
  border: 1px solid var(--aguia-border);
  background: var(--aguia-surface-2);
  color: var(--aguia-text);
  min-width: 36px;
  height: 32px;
  padding: 0 10px;
  border-radius: 9px;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
.aguia-toolbar button:hover { border-color: var(--aguia-accent); }
.aguia-toolbar button.aguia-active {
  background: var(--aguia-accent);
  color: #111318;
  border-color: var(--aguia-accent);
}
.aguia-toolbar .aguia-sep { width:1px; height:20px; background:var(--aguia-border); }

/* Seletor de feed V1.4.8 preservado */
.aguia-feed-label { display:block; margin:0 0 7px; font-weight:700; color:var(--aguia-text); }
.aguia-feed-select { width:100%; min-height:40px; margin:0 0 10px; padding:0 12px; font:inherit; outline:none; }
.aguia-feed-select option, .aguia-feed-select optgroup { background:var(--aguia-surface-2); color:var(--aguia-text); }
.aguia-feed-help { display:block; margin:-4px 0 10px; color:var(--aguia-muted); line-height:1.35; }

/* Ajustes mobile */
@media (max-width: 768px) {
  .aguia-toolbar { top:8px; right:8px; }
  .aguia-toolbar.aguia-toolbar-header { margin-right:0; }
  .aguia-toolbar button { min-width:32px; padding:0 8px; }
  .logo-container .aguia-wordmark-sub { display:none; }
  .my-login-page .brand { margin-top:72px !important; }
}

/* V1.5.1 — seletor de módulos do aplicativo */
.aguia-modules-button { white-space: nowrap; min-width: 104px !important; }
.aguia-modal-backdrop {
  position: fixed; inset: 0; z-index: 20000; display:flex; align-items:center; justify-content:center;
  padding:24px; background:rgba(0,0,0,.62); backdrop-filter:blur(7px);
}
.aguia-modal-card {
  width:min(760px, 100%); max-height:90vh; overflow:auto; background:var(--aguia-surface);
  color:var(--aguia-text); border:1px solid var(--aguia-border); border-radius:20px;
  box-shadow:0 30px 80px rgba(0,0,0,.38); padding:22px;
}
.aguia-modal-head { display:flex; gap:18px; align-items:flex-start; justify-content:space-between; margin-bottom:16px; }
.aguia-modal-head h3 { margin:0 0 5px; font-size:21px; font-weight:900; }
.aguia-modal-head p { margin:0; color:var(--aguia-muted); font-size:13px; line-height:1.45; }
.aguia-modal-x { width:36px; min-width:36px !important; height:36px; padding:0 !important; border-radius:50% !important; font-size:22px !important; }
.aguia-radio-always, .aguia-module-row {
  display:flex; align-items:center; gap:12px; padding:13px 14px; border:1px solid var(--aguia-border);
  border-radius:14px; background:var(--aguia-surface-2); margin-bottom:9px;
}
.aguia-radio-always { border-color:rgba(245,197,24,.38); background:rgba(245,197,24,.07); }
.aguia-radio-always > span, .aguia-module-icon { width:30px; text-align:center; font-size:19px; flex:0 0 30px; color:var(--aguia-accent); }
.aguia-radio-always > div, .aguia-module-copy { flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
.aguia-radio-always strong, .aguia-module-copy strong { font-size:13.5px; color:var(--aguia-text); }
.aguia-radio-always small, .aguia-module-copy small { font-size:11.5px; color:var(--aguia-muted); line-height:1.35; }
.aguia-module-list { display:grid; grid-template-columns:1fr 1fr; gap:0 10px; }
.aguia-module-loading { grid-column:1/-1; padding:24px; text-align:center; color:var(--aguia-muted); }
.aguia-switch { position:relative; width:46px; height:25px; flex:0 0 46px; }
.aguia-switch input { opacity:0 !important; position:absolute; pointer-events:none; }
.aguia-switch span { position:absolute; inset:0; border-radius:20px; background:#4b4f59; transition:.2s; cursor:pointer; }
.aguia-switch span:before { content:''; position:absolute; width:19px; height:19px; left:3px; top:3px; border-radius:50%; background:#fff; transition:.2s; box-shadow:0 1px 4px rgba(0,0,0,.25); }
.aguia-switch input:checked + span { background:var(--aguia-accent); }
.aguia-switch input:checked + span:before { transform:translateX(21px); background:#15171c; }
.aguia-module-status { min-height:22px; margin:8px 2px 0; font-size:12.5px; font-weight:700; }
.aguia-module-status.aguia-success { color:#34d399; }
.aguia-module-status.aguia-error { color:#fb7185; }
.aguia-modal-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:12px; }
.aguia-modal-actions button { min-height:40px; padding:0 17px; border-radius:10px; border:1px solid var(--aguia-border); font:inherit; font-weight:800; cursor:pointer; }
.aguia-secondary { background:var(--aguia-surface-2); color:var(--aguia-text); }
.aguia-modal-actions .aguia-primary { background:var(--aguia-accent) !important; color:#111318 !important; border-color:var(--aguia-accent) !important; }
.aguia-modal-actions button:disabled { opacity:.6; cursor:wait; }
@media(max-width:760px){
  .aguia-modal-backdrop{padding:10px;align-items:flex-end}.aguia-modal-card{max-height:92vh;border-radius:18px 18px 0 0;padding:16px}
  .aguia-module-list{grid-template-columns:1fr}.aguia-modules-button{min-width:38px!important;font-size:0!important}.aguia-modules-button::first-letter{font-size:14px}
}
