/*
KAR PMS Brasil — Tema Global v1.5.1
© HotelRevenue — Todos os direitos reservados.

Paleta aprovada:
Fundo: #101820
Sidebar: #0B1218
Cartões: #17212B
Cartões claros: #F4F1EA
Ação principal: #2AA6A1
Destaque: #C9A047
Verde OK: #3FA66B
Aviso: #D99A2B
Erro: #C94C4C
*/

:root{
  --kar-bg:#101820;
  --kar-sidebar:#0B1218;
  --kar-card:#17212B;
  --kar-card-2:#1D2A35;
  --kar-paper:#F4F1EA;
  --kar-paper-2:#FAF8F2;
  --kar-action:#2AA6A1;
  --kar-action-dark:#0F6B66;
  --kar-gold:#C9A047;
  --kar-ok:#3FA66B;
  --kar-warning:#D99A2B;
  --kar-error:#C94C4C;
  --kar-text:#F4F7F8;
  --kar-muted:#A9B6C2;
  --kar-ink:#101820;
  --kar-line:rgba(201,160,71,.18);
  --kar-line-soft:rgba(255,255,255,.08);
}

html, body{
  background:
    radial-gradient(circle at 88% 8%, rgba(201,160,71,.10), transparent 30%),
    radial-gradient(circle at 12% 92%, rgba(42,166,161,.10), transparent 34%),
    linear-gradient(135deg, #0B1218 0%, #101820 100%) !important;
  color:var(--kar-text) !important;
}

body, input, select, textarea, button{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}

a{color:inherit}

.app-shell,
.app,
.layout,
.admin-layout,
.seller-layout,
.auth-page,
body.login,
body.signup{
  background:transparent !important;
}

/* Sidebar / menus */
.sidebar,
.side,
.sidenav,
.admin-sidebar,
.seller-sidebar,
aside{
  background:linear-gradient(180deg,#0B1218 0%,#081015 100%) !important;
  border-right:1px solid rgba(201,160,71,.14) !important;
  color:var(--kar-text) !important;
}

.sidebar .brand,
.brand,
.logo,
.app-logo{
  color:var(--kar-text) !important;
}

.sidebar .brand span,
.brand span,
.logo-mark,
.app-logo-mark{
  border-color:var(--kar-gold) !important;
  color:var(--kar-gold) !important;
  background:rgba(201,160,71,.10) !important;
}

.sidebar nav p,
.nav-section,
.menu-section,
.sidebar .label{
  color:#D9C37A !important;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.sidebar nav a,
.sidebar a,
.menu a,
.nav a,
.admin-sidebar a,
.seller-sidebar a{
  color:#EDF3F4 !important;
  border-color:transparent !important;
}

.sidebar nav a:hover,
.sidebar a:hover,
.menu a:hover,
.nav a:hover,
.admin-sidebar a:hover,
.seller-sidebar a:hover{
  background:rgba(42,166,161,.12) !important;
  border-color:rgba(42,166,161,.22) !important;
}

.sidebar nav a.active,
.sidebar a.active,
.menu a.active,
.nav a.active,
.admin-sidebar a.active,
.seller-sidebar a.active,
[aria-current="page"]{
  background:linear-gradient(135deg,rgba(42,166,161,.34),rgba(15,107,102,.78)) !important;
  color:#FFFFFF !important;
  border-color:rgba(201,160,71,.28) !important;
  box-shadow:0 14px 30px rgba(0,0,0,.24) !important;
}

/* Main areas */
.main,
.content,
.page,
.admin-main,
.seller-main{
  background:transparent !important;
  color:var(--kar-text) !important;
}

.topbar,
.header,
.page-header,
.admin-header,
.seller-header{
  background:rgba(23,33,43,.82) !important;
  color:var(--kar-text) !important;
  border:1px solid rgba(201,160,71,.14) !important;
  border-radius:22px !important;
  box-shadow:0 18px 44px rgba(0,0,0,.16) !important;
}

.topbar h1,
.header h1,
.page-header h1,
h1{
  color:var(--kar-text) !important;
}

.topbar p,
.header p,
.page-header p,
.user-pill,
.muted,
.help,
.help-text{
  color:var(--kar-muted) !important;
}

/* Cards and panels */
.card,
.panel,
.box,
.widget,
.kpi,
.stat-card,
.admin-card,
.seller-card,
.metric-card{
  background:linear-gradient(180deg,rgba(23,33,43,.98),rgba(15,25,34,.98)) !important;
  color:var(--kar-text) !important;
  border:1px solid rgba(201,160,71,.14) !important;
  box-shadow:0 22px 58px rgba(0,0,0,.20) !important;
}

.card h2,.card h3,.card h4,
.panel h2,.panel h3,
.box h2,.box h3,
.widget h2,.widget h3,
.kpi strong,
.stat-card strong,
.admin-card h2,.seller-card h2{
  color:var(--kar-text) !important;
}

.card p,.card small,
.panel p,.panel small,
.box p,.box small,
.widget p,.widget small,
.kpi small{
  color:var(--kar-muted) !important;
}

/* Light cards: calendar/table/landing readable sections */
.light-card,
.paper-card,
.pricing-card,
.white-card,
.table-card,
.premium-calendar-notice,
.premium-calendar-header-card,
.premium-calendar-filter-card,
.premium-calendar-board-card{
  background:var(--kar-paper) !important;
  color:var(--kar-ink) !important;
  border-color:rgba(201,160,71,.30) !important;
}

.light-card h1,.light-card h2,.light-card h3,
.paper-card h1,.paper-card h2,.paper-card h3,
.pricing-card h1,.pricing-card h2,.pricing-card h3,
.white-card h1,.white-card h2,.white-card h3,
.table-card h1,.table-card h2,.table-card h3{
  color:var(--kar-ink) !important;
}

.light-card p,.light-card small,
.paper-card p,.paper-card small,
.pricing-card p,.pricing-card small,
.white-card p,.white-card small,
.table-card p,.table-card small{
  color:#5F6F78 !important;
}

/* Buttons */
button,
.btn,
.button,
input[type="submit"],
a.btn,
.cta,
.admin-btn,
.seller-btn{
  border-radius:13px !important;
  font-weight:900 !important;
}

button,
.btn:not(.btn2):not(.secondary):not(.danger),
.button,
input[type="submit"],
a.btn:not(.btn2):not(.secondary):not(.danger),
.cta,
.admin-btn,
.seller-btn{
  background:linear-gradient(135deg,var(--kar-action),var(--kar-action-dark)) !important;
  color:#FFFFFF !important;
  border:1px solid rgba(255,255,255,.06) !important;
  box-shadow:0 14px 30px rgba(42,166,161,.18) !important;
}

.btn2,
.secondary,
a.secondary,
button.secondary{
  background:rgba(244,241,234,.08) !important;
  color:#EAF2F0 !important;
  border:1px solid rgba(201,160,71,.22) !important;
}

.danger,
button.danger,
.btn.danger{
  background:linear-gradient(135deg,var(--kar-error),#8E2E2E) !important;
  color:#FFFFFF !important;
}

/* Forms */
input,
select,
textarea{
  background:#0E1822 !important;
  color:#F4F7F8 !important;
  border:1px solid rgba(201,160,71,.18) !important;
  border-radius:12px !important;
}

input::placeholder,
textarea::placeholder{
  color:#7F909E !important;
}

label{
  color:#D6E1E3 !important;
}

/* Tables */
table{
  color:inherit;
}

th{
  color:inherit;
}

td{
  color:inherit;
}

/* Auth/login/signup */
.auth-card,
.login-card,
.signup-card,
.form-card{
  background:linear-gradient(180deg,rgba(23,33,43,.98),rgba(15,25,34,.98)) !important;
  color:var(--kar-text) !important;
  border:1px solid rgba(201,160,71,.18) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.28) !important;
}

.auth-card h1,.login-card h1,.signup-card h1,
.auth-card h2,.login-card h2,.signup-card h2{
  color:var(--kar-text) !important;
}

/* KAR Guard */
.kg-hero,
.kg-hero-pro,
.guard-card,
.kar-guard-card{
  background:
    radial-gradient(circle at 86% 12%, rgba(201,160,71,.24), transparent 32%),
    linear-gradient(135deg,#0B1F1A,#101820) !important;
  border:1px solid rgba(201,160,71,.24) !important;
  color:var(--kar-text) !important;
}

.kg-eyebrow,
.guard-badge{
  background:rgba(201,160,71,.13) !important;
  border-color:rgba(201,160,71,.35) !important;
  color:#E4C66C !important;
}

.kg-alert.kg-ok,
.alert-success{
  border-color:rgba(63,166,107,.38) !important;
}

.kg-alert.kg-warning,
.alert-warning{
  border-color:rgba(217,154,43,.42) !important;
}

.kg-alert.kg-danger,
.alert-danger{
  border-color:rgba(201,76,76,.42) !important;
}

/* Landing */
.hero,
.landing-hero,
.marketing-hero{
  background:
    radial-gradient(circle at 80% 10%, rgba(201,160,71,.16), transparent 30%),
    linear-gradient(135deg,#0B1218,#101820) !important;
  color:var(--kar-text) !important;
}

.kicker,
.eyebrow,
.badge-premium{
  color:var(--kar-gold) !important;
}

/* Status colors */
.ok,.success,.text-success,.status-ok{color:var(--kar-ok)!important}
.warning,.text-warning,.status-warning{color:var(--kar-warning)!important}
.error,.danger,.text-danger,.status-danger{color:var(--kar-error)!important}

/* Calendar approved base — harmonized, not destroyed */
.premium-calendar-page{
  color:var(--kar-ink) !important;
}

.premium-calendar-notice,
.premium-calendar-header-card,
.premium-calendar-filter-card,
.premium-calendar-board-card{
  background:var(--kar-paper) !important;
  border-color:rgba(201,160,71,.30) !important;
}

.premium-calendar-notice p,
.premium-calendar-header-card h2{
  color:var(--kar-ink) !important;
}

.premium-calendar-header-card span,
.premium-calendar-filter-card label span,
.premium-calendar-legend{
  color:#66706F !important;
}

.premium-calendar-header-card nav a.today,
.premium-calendar-filter-card button{
  background:linear-gradient(135deg,var(--kar-action),var(--kar-action-dark)) !important;
  color:#FFFFFF !important;
}

.premium-calendar-table th,
.premium-day-cell{
  background:var(--kar-paper-2) !important;
  color:var(--kar-ink) !important;
}

.premium-calendar-table th.is-weekend,
.premium-day-cell.is-weekend{
  background:#ECE7DD !important;
}

.premium-calendar-table th.is-today,
.premium-day-cell.is-today{
  background:#DDF1EE !important;
}

.premium-calendar-table th.is-today strong b{
  background:var(--kar-action) !important;
  color:#FFFFFF !important;
}

.premium-unit-head,
.premium-unit-cell{
  background:#101820 !important;
  color:#FFFFFF !important;
  border-color:#25313C !important;
}

.premium-unit-cell strong{
  color:#FFFFFF !important;
}

.premium-unit-cell small{
  color:#B8C2C9 !important;
}

.premium-calendar-bottom article{
  background:linear-gradient(180deg,#101820,#0B1218) !important;
  border-color:rgba(201,160,71,.18) !important;
}

.premium-calendar-bottom h3{
  color:#F4F7F8 !important;
}

.premium-calendar-bottom p{
  color:#B8C2C9 !important;
}




/* v1.5.2 — HOTFIX contraste e legibilidade
   © HotelRevenue — Todos os direitos reservados.
   Mantém a paleta Teal/Gold, mas corrige textos invisíveis e contrastes baixos.
*/

/* Base de leitura */
:root{
  --kar-readable-white:#F8FAFC;
  --kar-readable-soft:#D7E0E7;
  --kar-readable-muted:#AEBCC7;
  --kar-readable-dark:#101820;
  --kar-readable-paper:#F4F1EA;
  --kar-readable-paper-2:#FBF8F0;
}

/* Nunca deixar texto escuro em fundo escuro */
body,
.main,
.content,
.page,
.app-shell{
  color:var(--kar-readable-white) !important;
}

/* Cabeçalhos e textos principais */
h1,h2,h3,h4,h5,h6,
.card h1,.card h2,.card h3,.card h4,
.panel h1,.panel h2,.panel h3,
.box h1,.box h2,.box h3,
.widget h1,.widget h2,.widget h3{
  color:var(--kar-readable-white) !important;
}

/* Texto secundário em cards escuros */
.card p,.card small,.card span,
.panel p,.panel small,.panel span,
.box p,.box small,.box span,
.widget p,.widget small,.widget span,
.kpi small,.kpi span,
.help,.muted,.text-muted{
  color:var(--kar-readable-muted) !important;
}

/* KPI: números sempre visíveis */
.kpi strong,
.stat-card strong,
.metric-card strong,
.card .value,
.card .amount{
  color:#FFFFFF !important;
}

/* Links em fundo escuro */
.card a:not(.btn),
.panel a:not(.btn),
.main a:not(.btn){
  color:#7ED8D3 !important;
}

/* Forms em fundo escuro */
label,
.form label,
.card label,
.panel label{
  color:var(--kar-readable-soft) !important;
}

input,
select,
textarea{
  background:#101B26 !important;
  color:#FFFFFF !important;
  border:1px solid rgba(201,160,71,.28) !important;
}

input:focus,
select:focus,
textarea:focus{
  outline:none !important;
  border-color:#2AA6A1 !important;
  box-shadow:0 0 0 3px rgba(42,166,161,.18) !important;
}

input::placeholder,
textarea::placeholder{
  color:#91A1AE !important;
}

/* Opções dos selects */
select option{
  background:#101B26 !important;
  color:#FFFFFF !important;
}

/* Botões secundários mais legíveis */
.btn2,
.secondary,
a.secondary,
button.secondary,
.btn.btn2{
  background:#1F2D38 !important;
  color:#F8FAFC !important;
  border:1px solid rgba(201,160,71,.28) !important;
}

/* Botões principais com texto sempre branco */
button,
.btn:not(.btn2):not(.secondary):not(.danger),
input[type="submit"],
a.btn:not(.btn2):not(.secondary):not(.danger){
  color:#FFFFFF !important;
}

/* Tabelas escuras */
table:not(.premium-calendar-table) th{
  color:#F8FAFC !important;
  background:rgba(244,241,234,.06) !important;
}

table:not(.premium-calendar-table) td{
  color:#D7E0E7 !important;
}

table:not(.premium-calendar-table) tr{
  border-color:rgba(255,255,255,.08) !important;
}

/* Badges e pills */
.badge,
.tag,
.pill,
.user-pill,
.status,
.label{
  color:#F8FAFC !important;
}

/* Cards claros: textos devem ficar escuros */
.light-card,
.paper-card,
.pricing-card,
.white-card,
.table-card,
.auth-light,
.premium-calendar-notice,
.premium-calendar-header-card,
.premium-calendar-filter-card,
.premium-calendar-board-card,
.premium-calendar-menu,
.kg-alert{
  color:#101820 !important;
}

.light-card h1,.light-card h2,.light-card h3,.light-card h4,
.paper-card h1,.paper-card h2,.paper-card h3,.paper-card h4,
.pricing-card h1,.pricing-card h2,.pricing-card h3,.pricing-card h4,
.white-card h1,.white-card h2,.white-card h3,.white-card h4,
.table-card h1,.table-card h2,.table-card h3,.table-card h4,
.premium-calendar-notice h1,.premium-calendar-notice h2,.premium-calendar-notice h3,
.premium-calendar-header-card h1,.premium-calendar-header-card h2,.premium-calendar-header-card h3,
.premium-calendar-filter-card h1,.premium-calendar-filter-card h2,.premium-calendar-filter-card h3,
.kg-alert strong{
  color:#101820 !important;
}

.light-card p,.light-card small,.light-card span,
.paper-card p,.paper-card small,.paper-card span,
.pricing-card p,.pricing-card small,.pricing-card span,
.white-card p,.white-card small,.white-card span,
.table-card p,.table-card small,.table-card span,
.premium-calendar-notice p,
.premium-calendar-filter-card label span,
.premium-calendar-header-card span,
.premium-calendar-legend,
.kg-alert p{
  color:#5F6F78 !important;
}

/* Forms em cards claros */
.light-card input,.light-card select,.light-card textarea,
.paper-card input,.paper-card select,.paper-card textarea,
.pricing-card input,.pricing-card select,.pricing-card textarea,
.white-card input,.white-card select,.white-card textarea,
.table-card input,.table-card select,.table-card textarea,
.premium-calendar-filter-card input,
.premium-calendar-filter-card select{
  background:#FFFFFF !important;
  color:#101820 !important;
  border:1px solid #D8CDB8 !important;
}

/* Calendário aprovado: garantir leitura */
.premium-calendar-page{
  color:#101820 !important;
}

.premium-calendar-filter-card label,
.premium-calendar-filter-card label span{
  color:#5F6F78 !important;
  opacity:1 !important;
}

.premium-calendar-filter-card input,
.premium-calendar-filter-card select{
  color:#101820 !important;
  background:#FFFFFF !important;
  font-weight:800 !important;
}

.premium-calendar-table th{
  color:#101820 !important;
}

.premium-calendar-table th small{
  color:#64748B !important;
}

.premium-day-cell{
  color:#101820 !important;
}

.premium-unit-head,
.premium-unit-cell{
  color:#FFFFFF !important;
}

.premium-unit-cell strong{
  color:#FFFFFF !important;
}

.premium-unit-cell small{
  color:#B8C2C9 !important;
}

.premium-calendar-bottom article,
.premium-calendar-bottom article h3{
  color:#FFFFFF !important;
}

.premium-calendar-bottom article p{
  color:#C8D8EA !important;
}

/* Menu contexto calendário */
.premium-calendar-menu,
.premium-calendar-menu *{
  color:#101820 !important;
}

.premium-calendar-menu button{
  color:#101820 !important;
}

/* Admin e vendedores: listas/tabelas/formulários */
.admin-main label,
.seller-main label,
.admin-card label,
.seller-card label{
  color:#D7E0E7 !important;
}

.admin-main input,
.admin-main select,
.admin-main textarea,
.seller-main input,
.seller-main select,
.seller-main textarea{
  background:#101B26 !important;
  color:#FFFFFF !important;
}

/* Landing: secções claras */
.landing-light,
.section-light,
.offer,
.plans .card{
  background:#F4F1EA !important;
  color:#101820 !important;
}

.landing-light *,
.section-light *,
.offer *,
.plans .card *{
  color:inherit;
}

.offer p,
.plans .card p,
.plans .card small{
  color:#5F6F78 !important;
}

/* Evitar dourado em texto pequeno sobre fundo claro/escuro quando perde contraste */
.kicker,
.eyebrow{
  color:#D8B85A !important;
}

/* Footer */
footer,
.footer{
  color:#AEBCC7 !important;
}

/* Fallback forte para elementos inline que vinham com cores antigas pouco legíveis */
[style*="color:#fff"],
[style*="color: #fff"]{
  color:#FFFFFF !important;
}

/* Títulos no login/signup */
.login-card p,
.signup-card p,
.auth-card p{
  color:#AEBCC7 !important;
}

.login-card label,
.signup-card label,
.auth-card label{
  color:#D7E0E7 !important;
}




/* v1.5.3 — Gráficos do Dashboard */
.dash-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
  background:rgba(23,33,43,.72);
  border:1px solid rgba(201,160,71,.14);
  border-radius:22px;
  padding:16px 18px;
  box-shadow:0 18px 44px rgba(0,0,0,.16);
}
.dash-toolbar h2{margin:4px 0 0;color:#F8FAFC;font-size:22px}
.dash-eyebrow{display:block;color:#C9A047;text-transform:uppercase;letter-spacing:.12em;font-weight:950;font-size:12px}
.dash-actions{display:flex;gap:10px;flex-wrap:wrap}
.chart-card{min-height:250px}
.chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.chart-head h2{margin:0 0 6px;font-size:20px;color:#F8FAFC!important}
.chart-head p{margin:0;color:#AEBCC7!important;line-height:1.45}
.chart-head strong{font-size:28px;color:#F8FAFC!important;white-space:nowrap}
.chart-card canvas{display:block;width:100%;max-width:100%;margin-top:8px}
@media(max-width:900px){
  .dash-toolbar{display:block}
  .dash-actions{margin-top:12px}
  .dashboard-charts{grid-template-columns:1fr!important}
}




/* v1.5.4 — Reservas e status em PT */
.reservas-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  background:rgba(23,33,43,.82);
  border:1px solid rgba(201,160,71,.14);
  border-radius:22px;
  padding:20px;
  margin-bottom:18px;
  box-shadow:0 18px 44px rgba(0,0,0,.16);
}
.reservas-hero h2{margin:4px 0 6px;color:#F8FAFC!important;font-size:28px}
.reservas-hero p{margin:0;color:#AEBCC7!important;line-height:1.45}
.reservas-hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.nova-reserva-btn{
  font-size:15px!important;
  padding:14px 20px!important;
  box-shadow:0 18px 38px rgba(42,166,161,.24)!important;
}
.nova-reserva-btn.small{padding:11px 15px!important;font-size:13px!important}
.reservas-stats{margin-bottom:18px}
.reservas-filters form{
  display:grid;
  grid-template-columns:1.5fr repeat(5, minmax(130px,1fr)) auto;
  gap:12px;
  align-items:end;
}
.reservas-filters label,
.reservation-form label{
  display:block;
  color:#D7E0E7!important;
  font-weight:850;
  font-size:13px;
}
.reservas-filters input,
.reservas-filters select,
.reservation-form input,
.reservation-form select,
.reservation-form textarea{
  display:block;
  width:100%;
  margin-top:6px;
}
.filter-actions,
.form-actions{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
.reservas-list-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
.reservas-list-head h2{margin:0 0 5px;color:#F8FAFC!important}
.reservas-list-head p{margin:0;color:#AEBCC7!important}
.reservas-table td strong{
  display:block;
  color:#F8FAFC!important;
}
.reservas-table td small{
  display:block;
  color:#AEBCC7!important;
  margin-top:3px;
}
.row-actions{text-align:right}
.kar-status-pill,
.kar-pay-pill,
.source-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:950;
  white-space:nowrap;
  border:1px solid transparent;
}
.kar-status-confirmada{
  background:rgba(63,166,107,.16)!important;
  color:#7EE0A0!important;
  border-color:rgba(63,166,107,.36)!important;
}
.kar-status-pendente{
  background:rgba(217,154,43,.18)!important;
  color:#FFD27A!important;
  border-color:rgba(217,154,43,.42)!important;
}
.kar-status-em_estadia{
  background:rgba(42,166,161,.20)!important;
  color:#7EE8E2!important;
  border-color:rgba(42,166,161,.42)!important;
}
.kar-status-saida{
  background:rgba(201,160,71,.16)!important;
  color:#E4C66C!important;
  border-color:rgba(201,160,71,.36)!important;
}
.kar-status-cancelada{
  background:rgba(201,76,76,.18)!important;
  color:#FF9A9A!important;
  border-color:rgba(201,76,76,.42)!important;
}
.kar-status-no_show{
  background:rgba(148,163,184,.16)!important;
  color:#D5DEE8!important;
  border-color:rgba(148,163,184,.32)!important;
}
.kar-status-bloqueio{
  background:rgba(201,76,76,.24)!important;
  color:#FFD1D1!important;
  border-color:rgba(201,76,76,.50)!important;
}
.kar-pay-paid{
  background:rgba(63,166,107,.15)!important;
  color:#7EE0A0!important;
  border-color:rgba(63,166,107,.34)!important;
}
.kar-pay-partial{
  background:rgba(217,154,43,.16)!important;
  color:#FFD27A!important;
  border-color:rgba(217,154,43,.38)!important;
}
.kar-pay-pending{
  background:rgba(201,76,76,.16)!important;
  color:#FF9A9A!important;
  border-color:rgba(201,76,76,.38)!important;
}
.kar-pay-none{
  background:rgba(148,163,184,.12)!important;
  color:#D5DEE8!important;
  border-color:rgba(148,163,184,.28)!important;
}
.source-pill{
  background:rgba(201,160,71,.12)!important;
  color:#E4C66C!important;
  border-color:rgba(201,160,71,.28)!important;
}
.reservation-form-card{
  max-width:1100px;
}
.form-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(160px,1fr));
  gap:14px;
  margin-bottom:14px;
}
.form-errors{
  background:rgba(201,76,76,.16)!important;
  border-color:rgba(201,76,76,.42)!important;
  margin-bottom:18px;
}
.form-errors strong{color:#FFB4B4!important}
.form-errors li{color:#FFD1D1!important}
@media(max-width:1100px){
  .reservas-filters form{grid-template-columns:1fr 1fr}
  .form-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .reservas-hero,.reservas-list-head{display:block}
  .reservas-hero-actions{margin-top:14px}
  .reservas-filters form,.form-grid{grid-template-columns:1fr}
}




/* v1.5.6 — KAR Guard Pro */
.guard-check-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.guard-check-grid span{
  display:flex;
  align-items:center;
  min-height:42px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(244,241,234,.07);
  border:1px solid rgba(201,160,71,.16);
  color:#D7E0E7!important;
  font-weight:850;
}
@media(max-width:800px){.guard-check-grid{grid-template-columns:1fr}}




/* v1.5.7 — Status global em PT */
.kar-status-pill,
.kar-pay-pill,
.source-pill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  border-radius:999px!important;
  padding:7px 10px!important;
  font-size:12px!important;
  font-weight:950!important;
  white-space:nowrap!important;
  border:1px solid transparent!important;
  line-height:1!important;
}

/* OK / positivo */
.kar-status-confirmada,
.kar-status-pago,
.kar-status-ativo,
.kar-status-disponivel,
.kar-status-limpo,
.kar-status-vistoriado,
.kar-status-concluido,
.kar-pay-paid{
  background:rgba(63,166,107,.16)!important;
  color:#7EE0A0!important;
  border-color:rgba(63,166,107,.36)!important;
}

/* Atenção */
.kar-status-pendente,
.kar-status-parcial,
.kar-status-aberto,
.kar-status-media,
.kar-pay-partial{
  background:rgba(217,154,43,.18)!important;
  color:#FFD27A!important;
  border-color:rgba(217,154,43,.42)!important;
}

/* Operação em curso */
.kar-status-em_estadia{
  background:rgba(42,166,161,.20)!important;
  color:#7EE8E2!important;
  border-color:rgba(42,166,161,.42)!important;
}

/* Movimento / neutro premium */
.kar-status-saida,
.kar-status-fechado,
.kar-status-baixa{
  background:rgba(201,160,71,.16)!important;
  color:#E4C66C!important;
  border-color:rgba(201,160,71,.36)!important;
}

/* Erro / risco */
.kar-status-cancelada,
.kar-status-bloqueio,
.kar-status-sujo,
.kar-status-alta,
.kar-status-falhou,
.kar-status-erro,
.kar-pay-pending{
  background:rgba(201,76,76,.18)!important;
  color:#FF9A9A!important;
  border-color:rgba(201,76,76,.42)!important;
}

/* Informativo/cinzento */
.kar-status-no_show,
.kar-status-inativo,
.kar-pay-none{
  background:rgba(148,163,184,.16)!important;
  color:#D5DEE8!important;
  border-color:rgba(148,163,184,.32)!important;
}

/* Source/origem */
.source-pill{
  background:rgba(201,160,71,.12)!important;
  color:#E4C66C!important;
  border-color:rgba(201,160,71,.28)!important;
}

/* Corrigir textos antigos que ainda apareçam como status cru */
.status.confirmed::before{content:"Confirmada"}
.status.pending::before{content:"Pendente"}
.status.cancelled::before{content:"Cancelada"}
.status.dirty::before{content:"Sujo"}
.status.clean::before{content:"Limpo"}
.status.open::before{content:"Aberto"}
.status.completed::before{content:"Concluído"}
