@import url("./agenda_mobile_critical-1.0.0.css?v=20260913-agenda-critical-r21");
@import url("./design_liquid_glass-1.0.0.css?v=20260913-system-glass-r13");
@import url("./agenda_mobile_controls-1.0.0.css?v=20260913-controls-r27");

/* KineSys — Sidebar Liquid Glass 1.0.0-r50
 * Direção visual: iOS-like frosted glass com tinta teal/petróleo KineSys.
 * A própria folha já carregada pelo index é a fonte visual; seletores com alta
 * especificidade impedem design_polish/design_experience de apagar o material.
 * Somente apresentação: navegação, rotas e permissões permanecem intactas.
 */

:root{
  --ks-nav-glass-teal:rgba(22,126,129,.36);
  --ks-nav-glass-teal-mid:rgba(15,105,111,.40);
  --ks-nav-glass-petrol:rgba(9,66,76,.48);
  --ks-nav-glass-text:rgba(249,255,255,.96);
  --ks-nav-glass-text-soft:rgba(238,252,250,.76);
  --ks-nav-glass-section:rgba(226,248,245,.67);
  --ks-nav-glass-accent:#8AE5DA;
  --ks-nav-glass-accent-strong:#B6F4ED;
  --ks-nav-glass-rim:rgba(255,255,255,.62);
}

/*
 * MATERIAL PRINCIPAL
 * Tinta leve + blur alto + semitransparência. No mobile, o conteúdo real da
 * página aparece difuso atrás; no desktop, os reflexos mantêm a leitura de vidro.
 */
html body.ks-design-ready #ks_sidebar#ks_sidebar{
  isolation:isolate!important;
  background-color:var(--ks-nav-glass-teal)!important;
  background-image:
    radial-gradient(150% 55% at -12% -7%,rgba(255,255,255,.52) 0%,rgba(255,255,255,.20) 23%,rgba(255,255,255,0) 55%),
    radial-gradient(76% 25% at 107% 15%,rgba(129,238,226,.22) 0%,rgba(129,238,226,.06) 43%,rgba(129,238,226,0) 76%),
    linear-gradient(128deg,rgba(255,255,255,.17) 0%,rgba(255,255,255,.050) 19%,rgba(255,255,255,0) 44%),
    linear-gradient(180deg,var(--ks-nav-glass-teal) 0%,var(--ks-nav-glass-teal-mid) 49%,var(--ks-nav-glass-petrol) 100%)!important;
  background-blend-mode:screen,normal,soft-light,normal!important;
  border:0!important;
  border-right:1px solid rgba(236,255,252,.44)!important;
  border-radius:0 27px 27px 0!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.62),
    inset 1px 0 0 rgba(255,255,255,.42),
    inset -1px 0 0 rgba(255,255,255,.15),
    inset 0 -1px 0 rgba(255,255,255,.07),
    18px 0 44px rgba(4,35,42,.18),
    3px 0 14px rgba(40,126,128,.10)!important;
  -webkit-backdrop-filter:blur(34px) saturate(178%) brightness(1.045) contrast(1.025)!important;
  backdrop-filter:blur(34px) saturate(178%) brightness(1.045) contrast(1.025)!important;
}

/* Reflexo especular / shimmer suave na região superior e lateral esquerda. */
html body.ks-design-ready #ks_sidebar#ks_sidebar::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  opacity:1!important;
  border-radius:inherit!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.11) 4%,rgba(255,255,255,0) 13%),
    radial-gradient(118% 30% at 18% 0%,rgba(255,255,255,.48) 0%,rgba(255,255,255,.16) 25%,rgba(255,255,255,0) 62%),
    radial-gradient(62% 20% at 88% 12%,rgba(148,245,235,.18) 0%,rgba(148,245,235,.04) 45%,rgba(148,245,235,0) 78%)!important;
}

/* Rim light: linha de vidro muito fina, mais luminosa no topo/esquerda. */
html body.ks-design-ready #ks_sidebar#ks_sidebar::after{
  content:""!important;
  position:absolute!important;
  inset:1px!important;
  z-index:0!important;
  pointer-events:none!important;
  border:1px solid rgba(242,255,253,.22)!important;
  border-top-color:rgba(255,255,255,.62)!important;
  border-left-color:rgba(255,255,255,.54)!important;
  border-right-color:rgba(236,255,252,.18)!important;
  border-radius:0 26px 26px 0!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.29),
    inset 1px 0 0 rgba(255,255,255,.20),
    inset 0 -1px 0 rgba(3,48,56,.08)!important;
}

html body.ks-design-ready #ks_sidebar#ks_sidebar > *{
  position:relative!important;
  z-index:1!important;
}

/* Marca: branca e translúcida, com acento aqua da identidade KineSys. */
html body.ks-design-ready #ks_sidebar#ks_sidebar .header-brand::before{
  display:block!important;
  background:linear-gradient(180deg,rgba(221,255,251,.96),var(--ks-nav-glass-accent))!important;
  box-shadow:0 0 16px rgba(138,229,218,.22)!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .header-brand h1{
  color:rgba(252,255,255,.98)!important;
  text-shadow:0 1px 1px rgba(0,36,42,.18)!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .header-brand h1 span{
  color:var(--ks-nav-glass-accent-strong)!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .header-brand p{
  display:block!important;
  color:var(--ks-nav-glass-text-soft)!important;
}

/* Cartão do usuário = segunda lâmina de vidro sobre a lâmina principal. */
html body.ks-design-ready #ks_sidebar#ks_sidebar .header-welcome{
  padding:10px 11px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.16) 0%,rgba(255,255,255,.070) 100%)!important;
  border:1px solid rgba(242,255,253,.31)!important;
  border-top-color:rgba(255,255,255,.43)!important;
  border-left-color:rgba(255,255,255,.34)!important;
  border-radius:18px!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.31),
    inset 0 -1px 0 rgba(1,47,55,.08),
    0 9px 24px rgba(2,38,45,.08)!important;
  color:var(--ks-nav-glass-text)!important;
  -webkit-backdrop-filter:blur(18px) saturate(152%) brightness(1.03)!important;
  backdrop-filter:blur(18px) saturate(152%) brightness(1.03)!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .ks-user-kicker{
  display:block!important;
  color:rgba(226,250,247,.66)!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .header-welcome strong,
html body.ks-design-ready #ks_sidebar#ks_sidebar .header-welcome #lbl_usuario_logado{
  color:rgba(255,255,255,.98)!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .header-welcome small,
html body.ks-design-ready #ks_sidebar#ks_sidebar .header-welcome p,
html body.ks-design-ready #ks_sidebar#ks_sidebar .header-welcome span:not(#lbl_usuario_logado){
  color:rgba(236,251,249,.78)!important;
}

/* Labels e itens permanecem leves; o vidro não vira uma lista de cartões. */
html body.ks-design-ready #ks_sidebar#ks_sidebar :is(.menu-section-title,.nav-section-title,.sidebar-section-title,.dropdown-label,.ks-nav-label){
  color:var(--ks-nav-glass-section)!important;
  font-weight:690!important;
  letter-spacing:.005em!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .dropdown-content a,
html body.ks-design-ready #ks_sidebar#ks_sidebar .nav-link{
  min-height:42px!important;
  border:1px solid transparent!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.018)!important;
  color:var(--ks-nav-glass-text)!important;
  text-shadow:0 1px 1px rgba(0,34,40,.15)!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease,color .16s ease!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .ks-nav-icon,
html body.ks-design-ready #ks_sidebar#ks_sidebar .dropdown-content a i,
html body.ks-design-ready #ks_sidebar#ks_sidebar .nav-link i,
html body.ks-design-ready #ks_sidebar#ks_sidebar .nav-link svg{
  color:rgba(198,247,241,.92)!important;
  opacity:.98!important;
  filter:drop-shadow(0 1px 1px rgba(0,31,37,.13))!important;
}

html body.ks-design-ready #ks_sidebar#ks_sidebar .dropdown-content a:hover,
html body.ks-design-ready #ks_sidebar#ks_sidebar .nav-link:hover{
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(242,255,253,.10)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09)!important;
  transform:translateX(1px)!important;
}

html body.ks-design-ready #ks_sidebar#ks_sidebar .dropdown-content a:focus-visible,
html body.ks-design-ready #ks_sidebar#ks_sidebar .nav-link:focus-visible{
  outline:2px solid rgba(182,244,237,.76)!important;
  outline-offset:1px!important;
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(242,255,253,.16)!important;
}

/* Item ativo: pill/lâmina de vidro retroiluminada, não bloco sólido. */
html body.ks-design-ready #ks_sidebar#ks_sidebar .dropdown-content li.ks-active a,
html body.ks-design-ready #ks_sidebar#ks_sidebar .nav-item.active .nav-link,
html body.ks-design-ready #ks_sidebar#ks_sidebar .nav-link.active{
  background:
    linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.085) 100%)!important;
  border:1px solid rgba(239,255,252,.28)!important;
  border-top-color:rgba(255,255,255,.40)!important;
  border-left-color:rgba(255,255,255,.34)!important;
  color:#fff!important;
  box-shadow:
    inset 2px 0 0 var(--ks-nav-glass-accent),
    inset 0 1px 0 rgba(255,255,255,.24),
    0 7px 18px rgba(1,34,41,.08),
    0 0 16px rgba(88,213,202,.055)!important;
  -webkit-backdrop-filter:blur(16px) saturate(154%) brightness(1.035)!important;
  backdrop-filter:blur(16px) saturate(154%) brightness(1.035)!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .dropdown-content li.ks-active a .ks-nav-icon,
html body.ks-design-ready #ks_sidebar#ks_sidebar .nav-item.active .ks-nav-icon,
html body.ks-design-ready #ks_sidebar#ks_sidebar .nav-link.active .ks-nav-icon{
  color:var(--ks-nav-glass-accent-strong)!important;
}

html body.ks-design-ready #ks_sidebar#ks_sidebar .ks-nav-logout{
  border-top-color:rgba(242,255,253,.10)!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .ks-nav-logout a{
  color:rgba(255,219,214,.88)!important;
}
html body.ks-design-ready #ks_sidebar#ks_sidebar .ks-nav-logout a:hover{
  background:rgba(255,132,122,.08)!important;
  border-color:rgba(255,224,220,.10)!important;
  color:#fff0ed!important;
}

/* Backdrop do drawer: escurece pouco para o fundo ainda participar do vidro. */
html body.ks-design-ready .ks-nav-backdrop{
  background:rgba(6,32,38,.19)!important;
  -webkit-backdrop-filter:blur(5px) saturate(112%)!important;
  backdrop-filter:blur(5px) saturate(112%)!important;
}

/* Mobile: mais blur e um pouco menos de tinta, porque há conteúdo real atrás. */
@media(max-width:820px){
  html body.ks-design-ready #ks_sidebar#ks_sidebar{
    border-radius:0 30px 30px 0!important;
    background-color:rgba(21,125,128,.31)!important;
    background-image:
      radial-gradient(145% 55% at -9% -6%,rgba(255,255,255,.55) 0%,rgba(255,255,255,.20) 24%,rgba(255,255,255,0) 57%),
      radial-gradient(80% 29% at 106% 15%,rgba(137,240,229,.21) 0%,rgba(137,240,229,.05) 45%,rgba(137,240,229,0) 76%),
      linear-gradient(180deg,rgba(27,139,141,.31) 0%,rgba(13,103,110,.34) 48%,rgba(7,64,75,.42) 100%)!important;
    border-right:1px solid rgba(242,255,253,.47)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.66),
      inset 1px 0 0 rgba(255,255,255,.46),
      inset -1px 0 0 rgba(255,255,255,.17),
      22px 0 52px rgba(1,24,31,.22)!important;
    -webkit-backdrop-filter:blur(40px) saturate(185%) brightness(1.045) contrast(1.02)!important;
    backdrop-filter:blur(40px) saturate(185%) brightness(1.045) contrast(1.02)!important;
  }
}

/* Fallback sem backdrop-filter: mantém a mesma linguagem, sem fingir transparência. */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  html body.ks-design-ready #ks_sidebar#ks_sidebar{
    background:linear-gradient(180deg,#2b8d8e 0%,#176d73 48%,#0c4c57 100%)!important;
    background-image:none!important;
  }
}

@media(prefers-reduced-transparency:reduce){
  html body.ks-design-ready #ks_sidebar#ks_sidebar{
    background:linear-gradient(180deg,#328f90 0%,#1c7075 48%,#0d505a 100%)!important;
    background-image:none!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  html body.ks-design-ready .ks-nav-backdrop{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
}

/* Live regions continuam acessíveis sem ocupar espaço visual. */
body.ks-design-ready .kds-visually-hidden,
body.ks-design-ready #ks_route_status.kds-visually-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
}
