/* OCV ESTRUTURA E LAYOUT GERAL V192.0 — 2026.08.17 */

:root{
  --ocv192-blue:#2563eb;
  --ocv192-blue-dark:#1d4ed8;
  --ocv192-navy:#081426;
  --ocv192-ink:#0f172a;
  --ocv192-muted:#64748b;
  --ocv192-line:#dbe5f0;
  --ocv192-soft:#f6f9fd;
  --ocv192-card:#ffffff;
  --ocv192-success:#059669;
  --ocv192-shadow:0 14px 38px rgba(15,23,42,.08);
}

html.ocv192-booting .appShell,
html.ocv192-booting #clienteInfoSuperiorWrap{
  opacity:.01;
}

html.ocv192-ready .appShell,
html.ocv192-ready #clienteInfoSuperiorWrap{
  opacity:1;
  transition:opacity .16s ease;
}

.ocv192-skip-link{
  position:fixed;
  z-index:2147483647;
  top:10px;
  left:10px;
  padding:11px 15px;
  border-radius:12px;
  background:var(--ocv192-navy);
  color:#fff;
  font-size:13px;
  font-weight:900;
  text-decoration:none;
  transform:translateY(-160%);
  transition:transform .16s ease;
}

.ocv192-skip-link:focus{transform:translateY(0)}

#ocv192LoadBar{
  position:fixed;
  z-index:2147483645;
  top:0;
  left:0;
  width:100%;
  height:3px;
  pointer-events:none;
  opacity:0;
  background:transparent;
}

#ocv192LoadBar span{
  display:block;
  width:18%;
  height:100%;
  border-radius:0 999px 999px 0;
  background:linear-gradient(90deg,#60a5fa,var(--ocv192-blue),#10b981);
  box-shadow:0 0 12px rgba(37,99,235,.38);
  transform:translateX(-110%);
}

#ocv192LoadBar.ocv192-loading{opacity:1}
#ocv192LoadBar.ocv192-loading span{animation:ocv192-progress .52s ease-in-out infinite}
#ocv192LoadBar.ocv192-finished{opacity:0;transition:opacity .18s ease}
#ocv192LoadBar.ocv192-finished span{width:100%;transform:translateX(0);transition:width .12s ease,transform .12s ease}

@keyframes ocv192-progress{
  from{transform:translateX(-110%)}
  to{transform:translateX(610%)}
}

body.ocv192-ready .wrap{
  max-width:1440px!important;
  padding-inline:clamp(12px,2vw,28px)!important;
}

body.ocv192-ready .hero{
  border-radius:24px!important;
  box-shadow:0 18px 46px rgba(2,6,23,.18)!important;
}

body.ocv192-ready #clienteInfoSuperior{
  border-radius:20px!important;
  box-shadow:0 9px 28px rgba(15,23,42,.055)!important;
}

body.ocv192-ready .appShell{
  grid-template-columns:248px minmax(0,1fr)!important;
  gap:20px!important;
  align-items:start!important;
}

body.ocv192-ready .sidebar{
  width:248px!important;
  min-width:248px!important;
  max-width:248px!important;
  top:12px!important;
  transition:width .18s ease,min-width .18s ease,max-width .18s ease!important;
}

body.ocv192-ready .sidebarCard{
  padding:12px!important;
  border-color:var(--ocv192-line)!important;
  box-shadow:var(--ocv192-shadow)!important;
}

body.ocv192-ready .sidebarTitle{
  padding:2px 6px 8px!important;
  margin:0!important;
  font-size:11px!important;
  letter-spacing:.12em!important;
}

body.ocv192-ready .sideNav{gap:7px!important}

body.ocv192-ready .sideNav button{
  position:relative;
  min-height:45px!important;
  padding:10px 12px!important;
  border-radius:13px!important;
  border-color:#dce6f2!important;
  background:rgba(255,255,255,.88)!important;
  color:#23334b!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
  transform:none!important;
  transition:background-color .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease!important;
}

body.ocv192-ready .sideNav button svg{
  width:19px!important;
  height:19px!important;
  flex:0 0 19px!important;
}

body.ocv192-ready .sideNav button:hover{
  border-color:#a9c6fb!important;
  background:#f4f8ff!important;
}

body.ocv192-ready .sideNav button.active{
  border-color:var(--ocv192-blue)!important;
  background:linear-gradient(135deg,var(--ocv192-blue),var(--ocv192-blue-dark))!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(37,99,235,.22)!important;
}

body.ocv192-ready .sideNav button.active::after{
  content:"";
  position:absolute;
  right:8px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 4px rgba(255,255,255,.13);
}

body.ocv192-ready.ocv192-sidebar-collapsed .appShell{
  grid-template-columns:76px minmax(0,1fr)!important;
}

body.ocv192-ready.ocv192-sidebar-collapsed .sidebar{
  width:76px!important;
  min-width:76px!important;
  max-width:76px!important;
}

body.ocv192-ready.ocv192-sidebar-collapsed .sidebarCard{padding:9px!important}
body.ocv192-ready.ocv192-sidebar-collapsed .sidebarTitle{display:none!important}
body.ocv192-ready.ocv192-sidebar-collapsed .sideNav button{
  justify-content:center!important;
  padding:11px!important;
}
body.ocv192-ready.ocv192-sidebar-collapsed .sideNav button span{display:none!important}
body.ocv192-ready.ocv192-sidebar-collapsed .sideNav button.active::after{right:5px!important}

.ocv192-command-bar{
  position:sticky;
  z-index:320;
  top:10px;
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-width:0;
  margin:0 0 14px;
  padding:10px;
  border:1px solid rgba(203,213,225,.88);
  border-radius:18px;
  background:rgba(255,255,255,.93);
  box-shadow:0 12px 32px rgba(15,23,42,.08);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.ocv192-icon-button{
  display:grid!important;
  place-items:center!important;
  flex:0 0 42px;
  width:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  padding:0!important;
  border:1px solid #d8e3f0!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#334155!important;
  box-shadow:none!important;
}

.ocv192-icon-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ocv192-icon-button:hover{background:#eff6ff!important;color:var(--ocv192-blue)!important;border-color:#b9d0fb!important}

.ocv192-current{
  min-width:145px;
  flex:0 1 225px;
  padding:0 4px;
  overflow:hidden;
}

.ocv192-current small{
  display:block;
  margin-bottom:2px;
  color:var(--ocv192-muted);
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ocv192-current strong{
  display:block;
  overflow:hidden;
  color:var(--ocv192-ink);
  font-size:15px;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.ocv192-command-trigger{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex:1 1 340px;
  min-width:160px!important;
  min-height:42px!important;
  padding:8px 12px!important;
  border:1px solid #d8e3f0!important;
  border-radius:12px!important;
  background:#f8fafc!important;
  color:#64748b!important;
  box-shadow:none!important;
  text-align:left!important;
}

.ocv192-command-trigger svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
.ocv192-command-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ocv192-command-trigger kbd{
  margin-left:auto;
  padding:3px 7px;
  border:1px solid #dbe5f0;
  border-radius:7px;
  background:#fff;
  color:#475569;
  font-family:inherit;
  font-size:10px;
  font-weight:900;
}

.ocv192-save-badge{
  display:flex;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
  padding:8px 10px;
  border:1px solid #bbf7d0;
  border-radius:999px;
  background:#ecfdf5;
  color:#047857;
  font-size:10px;
  font-weight:900;
  white-space:nowrap;
}

.ocv192-save-badge::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 0 4px rgba(5,150,105,.1);
}

.ocv192-command-overlay{
  position:fixed;
  z-index:2147483600;
  inset:0;
  display:none;
  align-items:flex-start;
  justify-content:center;
  padding:clamp(70px,10vh,120px) 16px 24px;
  background:rgba(2,6,23,.58);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.ocv192-command-overlay.open{display:flex}

.ocv192-command-dialog{
  width:min(680px,100%);
  max-height:min(640px,78vh);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.28);
  border-radius:22px;
  background:#fff;
  box-shadow:0 32px 100px rgba(2,6,23,.38);
}

.ocv192-command-head{
  display:flex;
  align-items:center;
  gap:11px;
  padding:15px;
  border-bottom:1px solid #e2e8f0;
}

.ocv192-command-head svg{width:22px;height:22px;fill:none;stroke:#64748b;stroke-width:2}
.ocv192-command-head input{
  flex:1;
  min-width:0;
  min-height:44px!important;
  padding:7px 2px!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  color:#0f172a!important;
  box-shadow:none!important;
  font-size:17px!important;
}

.ocv192-command-head button{
  min-width:auto!important;
  min-height:34px!important;
  padding:6px 9px!important;
  border:1px solid #dbe5f0!important;
  border-radius:9px!important;
  background:#f8fafc!important;
  color:#475569!important;
  box-shadow:none!important;
  font-size:11px!important;
}

.ocv192-command-results{
  max-height:min(500px,62vh);
  overflow:auto;
  padding:9px;
  overscroll-behavior:contain;
}

.ocv192-command-label{
  padding:9px 10px 6px;
  color:#64748b;
  font-size:10px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.ocv192-command-item{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center!important;
  gap:11px!important;
  width:100%!important;
  min-height:56px!important;
  padding:8px 10px!important;
  border:1px solid transparent!important;
  border-radius:13px!important;
  background:transparent!important;
  color:#0f172a!important;
  box-shadow:none!important;
  text-align:left!important;
}

.ocv192-command-item:hover,
.ocv192-command-item.active{
  border-color:#c8dbff!important;
  background:#eff6ff!important;
}

.ocv192-command-icon{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:12px;
  background:#eef4ff;
  color:#2563eb;
  font-size:18px;
  font-weight:900;
}

.ocv192-command-copy{min-width:0}
.ocv192-command-copy strong{display:block;font-size:13px;line-height:1.2}
.ocv192-command-copy small{display:block;margin-top:3px;overflow:hidden;color:#64748b;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.ocv192-command-enter{color:#94a3b8;font-size:11px;font-weight:900}
.ocv192-command-empty{padding:32px 18px;text-align:center;color:#64748b;font-size:13px}

body.ocv192-ready .mainArea>main.hidden,
body.ocv192-ready .mainArea>main[hidden]{
  display:none!important;
  content-visibility:hidden;
}

body.ocv192-ready .mainArea>main:not(.hidden):not([hidden]){
  content-visibility:auto;
  contain-intrinsic-size:900px;
}

body.ocv192-ready .mainArea button,
body.ocv192-ready .mainArea input,
body.ocv192-ready .mainArea select{
  min-height:42px;
}

body.ocv192-keyboard *:focus-visible{
  outline:3px solid rgba(37,99,235,.32)!important;
  outline-offset:2px!important;
}

body.dark-pro.ocv192-ready .ocv192-command-bar{
  border-color:#29364a;
  background:rgba(10,18,31,.94);
  box-shadow:0 14px 38px rgba(0,0,0,.3);
}

body.dark-pro.ocv192-ready .ocv192-icon-button,
body.dark-pro.ocv192-ready .ocv192-command-trigger{
  border-color:#2a3950!important;
  background:#0b1423!important;
  color:#cbd5e1!important;
}

body.dark-pro.ocv192-ready .ocv192-current strong{color:#f8fafc}
body.dark-pro.ocv192-ready .ocv192-current small{color:#94a3b8}
body.dark-pro.ocv192-ready .ocv192-command-trigger kbd{border-color:#334155;background:#111c2e;color:#cbd5e1}
body.dark-pro.ocv192-ready .sideNav button{border-color:#26364d!important;background:#0c1626!important;color:#dbe5f2!important}
body.dark-pro.ocv192-ready .sideNav button:hover{border-color:#3b5d91!important;background:#101f35!important}
body.dark-pro.ocv192-ready .sideNav button.active{border-color:#3b82f6!important;background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;color:#fff!important}

body.dark-pro .ocv192-command-dialog{border-color:#334155;background:#0b1423;color:#f8fafc}
body.dark-pro .ocv192-command-head{border-color:#26364d}
body.dark-pro .ocv192-command-head input{color:#f8fafc!important}
body.dark-pro .ocv192-command-head button{border-color:#334155!important;background:#111c2e!important;color:#cbd5e1!important}
body.dark-pro .ocv192-command-item{color:#f8fafc!important}
body.dark-pro .ocv192-command-item:hover,
body.dark-pro .ocv192-command-item.active{border-color:#31588e!important;background:#11223b!important}
body.dark-pro .ocv192-command-icon{background:#132b4d;color:#93c5fd}
body.dark-pro .ocv192-command-copy small,
body.dark-pro .ocv192-command-empty,
body.dark-pro .ocv192-command-label{color:#94a3b8}

@media(max-width:1180px) and (min-width:981px){
  body.ocv192-ready .appShell{grid-template-columns:218px minmax(0,1fr)!important;gap:14px!important}
  body.ocv192-ready .sidebar{width:218px!important;min-width:218px!important;max-width:218px!important}
  .ocv192-save-badge{display:none}
}

@media(max-width:980px){
  body.ocv192-ready .appShell,
  body.ocv192-ready.ocv192-sidebar-collapsed .appShell{
    display:block!important;
  }
  body.ocv192-ready .sidebar,
  body.ocv192-ready.ocv192-sidebar-collapsed .sidebar{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    position:static!important;
  }
  #ocv192SidebarToggle{display:none!important}
  .ocv192-command-bar{top:6px;margin-bottom:12px;border-radius:15px;padding:8px}
  .ocv192-current{min-width:100px;flex-basis:180px}
  .ocv192-save-badge{display:none}
}

@media(max-width:680px){
  body.ocv192-ready .wrap{padding-inline:9px!important}
  body.ocv192-ready .hero{border-radius:18px!important}
  .ocv192-current{flex:1 1 auto;min-width:0}
  .ocv192-command-trigger{flex:0 0 42px!important;width:42px!important;min-width:42px!important;padding:0!important;justify-content:center!important}
  .ocv192-command-trigger span,
  .ocv192-command-trigger kbd{display:none}
  .ocv192-command-overlay{padding:44px 9px 90px}
  .ocv192-command-dialog{border-radius:18px}
  .ocv192-command-head{padding:10px}
  .ocv192-command-head input{font-size:15px!important}
}

@media(prefers-reduced-motion:reduce){
  #ocv192LoadBar span,
  .ocv192-skip-link,
  body.ocv192-ready .sidebar,
  html.ocv192-ready .appShell,
  html.ocv192-ready #clienteInfoSuperiorWrap{
    animation:none!important;
    transition:none!important;
  }
}

@media print{
  .ocv192-command-bar,
  .ocv192-command-overlay,
  #ocv192LoadBar,
  .ocv192-skip-link{display:none!important}
}
