/* Sistema KeS — Controle de Clientes */

@font-face{font-family:'Montserrat';font-weight:400;font-style:normal;font-display:swap;src:url('fonts/Montserrat-Regular.ttf') format('truetype');}
@font-face{font-family:'Montserrat';font-weight:500;font-style:normal;font-display:swap;src:url('fonts/Montserrat-Medium.ttf') format('truetype');}
@font-face{font-family:'Montserrat';font-weight:600;font-style:normal;font-display:swap;src:url('fonts/Montserrat-SemiBold.ttf') format('truetype');}
@font-face{font-family:'Montserrat';font-weight:700;font-style:normal;font-display:swap;src:url('fonts/Montserrat-Bold.ttf') format('truetype');}
@font-face{font-family:'Montserrat';font-weight:800;font-style:normal;font-display:swap;src:url('fonts/Montserrat-ExtraBold.ttf') format('truetype');}
@font-face{font-family:'Montserrat';font-weight:900;font-style:normal;font-display:swap;src:url('fonts/Montserrat-Black.ttf') format('truetype');}

*{box-sizing:border-box;margin:0;padding:0}
html,body,#root{height:100%}
body{font-family:'Montserrat',system-ui,sans-serif;background:#0E1318;color:#fff;-webkit-font-smoothing:antialiased}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:#28323E;border-radius:8px;border:2px solid #0E1318}
::-webkit-scrollbar-track{background:transparent}
input,select,button,textarea{font-family:inherit}

@keyframes kesFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes kesSpin{to{transform:rotate(360deg)}}
@keyframes kesPop{0%{opacity:0;transform:scale(.96)}100%{opacity:1;transform:none}}

/* estados de hover / focus (equivalentes aos style-hover / style-focus do design) */
.hv-red:hover{background:#C73026 !important}
.hv-ghost:hover{border-color:#E03C31 !important;color:#EB6258 !important}
.hv-close:hover{color:#fff !important;border-color:#E03C31 !important}
.hv-danger:hover{border-color:#E03C31 !important;color:#E03C31 !important}
.hv-icon:hover{color:#E03C31 !important}
.hv-link:hover{color:#EB6258 !important}
.hv-row:hover{background:rgba(255,255,255,.02) !important}
input.kes-in:focus,select.kes-in:focus{border-color:#E03C31 !important}
input.kes-underline:focus{border-color:#E03C31 !important}
select.kes-in option{background:#131B23;color:#fff}

/* ============ responsivo ============ */

/* tablets e telas médias — recolhe a barra lateral */
@media(max-width:860px){
  [data-nav-label]{display:none !important}
  [data-sidebar]{width:68px !important;padding:14px 8px !important}
  [data-brandwrap]{justify-content:center !important}
  [data-brandtext]{display:none !important}
  [data-sidebar] button{justify-content:center !important;padding:11px 8px !important}
  header{height:auto !important;min-height:56px;flex-wrap:wrap !important;padding:10px 14px !important;gap:10px !important}
  main > div:last-child{padding:14px !important}
}

/* tabelas: em telas estreitas rolam na horizontal mantendo as colunas alinhadas */
@media(max-width:760px){
  .tbl{overflow-x:auto !important}
  .tbl > div[style*="grid-template-columns"]{min-width:660px}
  .g2{grid-template-columns:1fr !important}
  .g2 > *{grid-column:auto !important}
}

/* celulares */
@media(max-width:560px){
  .g3{grid-template-columns:1fr 1fr !important}
  .gwrap{grid-template-columns:1fr 1fr !important}
  .ovl{padding:8px !important}
  .ovl > div{padding:18px !important;max-height:96vh !important}
  header input[type=date]{width:108px}
  header input[placeholder^="Buscar"]{width:80px !important}
  .scrollx{overflow-x:auto !important;max-width:100%}
  .scrollx button{white-space:nowrap}
}
