.oik-app-shell{display:flex;height:100vh;height:100dvh;overflow:hidden;background:var(--surface-page)}.oik-app-shell__sidebar{width:var(--sidebar-w);flex-shrink:0;background:linear-gradient(180deg,var(--ink-900) 0,#1b2942 100%);display:flex;flex-direction:column;transition:width .18s ease}.oik-app-shell__sidebar[data-anim=off]{transition:none}.oik-app-shell__sidebar[data-collapsed=true]{width:var(--sidebar-w-collapsed)}.oik-app-shell__brand{height:var(--topbar-h);flex:0 0 var(--topbar-h);padding:0 var(--space-5);box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-family:var(--font-serif);font-weight:600;font-size:22px;letter-spacing:.16em;color:var(--ink-50);border-bottom:1px solid hsla(0,0%,100%,.08);transition:padding .18s ease}.oik-app-shell__sidebar[data-anim=off] .oik-app-shell__brand{transition:none}.oik-app-shell__brand-text{display:inline-block;max-width:120px;opacity:1;overflow:hidden;white-space:nowrap;flex-shrink:0;visibility:visible;transition:max-width .14s ease,opacity .1s ease,visibility 0s}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__brand{padding:0 var(--space-2);justify-content:center;gap:0}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__brand-text{max-width:0;opacity:0;visibility:hidden;transition:max-width .14s ease,opacity 80ms ease,visibility 0s .14s}.oik-app-shell__brand .oik-iconbtn{color:color-mix(in srgb,var(--ink-50) 58%,transparent);flex-shrink:0}.oik-app-shell__brand .oik-iconbtn:hover:not(:disabled){background:hsla(0,0%,100%,.08);color:var(--white)}.oik-app-shell__nav{padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:2px;flex:1 1;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent}.oik-app-shell__nav:focus-within,.oik-app-shell__nav:hover{scrollbar-color:hsla(0,0%,100%,.25) transparent}.oik-app-shell__nav::-webkit-scrollbar{width:4px}.oik-app-shell__nav::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--radius-full)}.oik-app-shell__nav:focus-within::-webkit-scrollbar-thumb,.oik-app-shell__nav:hover::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.25)}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__nav{overflow:hidden}.oik-app-shell__nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--nav-text);font-family:var(--font-ui);font-size:var(--text-base);font-weight:500;text-decoration:none;min-width:0;transition:background .14s ease,color .14s ease}.oik-app-shell__nav-item svg{color:color-mix(in srgb,var(--ink-50) 58%,transparent)}.oik-app-shell__nav-ic{flex:0 0 20px;display:inline-flex;align-items:center;justify-content:center}.oik-app-shell__nav-label{display:inline-block;max-width:180px;white-space:nowrap;overflow:hidden;opacity:1;transform:translateX(0);transition:max-width .18s ease,opacity .1s ease 70ms,transform .1s ease 70ms}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__nav-item{gap:0}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__nav-label{max-width:0;opacity:0;transform:translateX(-4px);transition:max-width .18s ease,opacity 80ms ease,transform 80ms ease}.oik-app-shell__sidebar[data-anim=off] .oik-app-shell__nav-item,.oik-app-shell__sidebar[data-anim=off] .oik-app-shell__nav-label{transition:none}.oik-app-shell__nav .oik-tooltip{display:flex;width:100%}.oik-app-shell__nav .oik-app-shell__nav-item{width:100%;box-sizing:border-box}.oik-app-shell__nav-item:hover{background:var(--nav-hover);color:var(--nav-text-hover);text-decoration:none}.oik-app-shell__nav-item:focus-visible{text-decoration:none}.oik-app-shell__nav-item.is-active{background:linear-gradient(90deg,#334e81,#304670);color:var(--white);font-weight:600}.oik-app-shell__nav-item.is-active svg{color:var(--white)}.oik-app-shell__divider,.oik-app-shell__nav-group-divider{height:1px;width:auto;margin:var(--space-2) var(--space-3);background:hsla(0,0%,100%,.08);border:none}.oik-app-shell__nav-group-divider{display:none}.oik-app-shell__nav-group-label{padding:var(--space-2) var(--space-3) 0;font-family:var(--font-ui);font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:hsla(0,0%,100%,.4)}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__nav-group-label{display:none}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__nav-group-divider{display:block}.oik-app-shell__settings{margin:0 var(--space-3) 2px}.oik-app-shell__logout{width:auto;margin:0 var(--space-3) var(--space-3);border:none;background:none;cursor:pointer}.oik-app-shell__body{flex:1 1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.oik-app-shell__topbar{height:60px;flex-shrink:0;background:var(--surface-card);border-bottom:1px solid var(--border-default);display:flex;align-items:center;gap:var(--space-4);padding:0 var(--space-6)}.oik-app-shell__tenant{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--ink-800)}.oik-app-shell__search{position:relative;flex:1 1;max-width:380px}.oik-app-shell__search-dropdown{position:absolute;top:calc(100% + var(--space-2));left:0;right:0;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-popover);padding:var(--space-2);max-height:420px;overflow-y:auto;z-index:20}.oik-app-shell__search-alcance{margin-bottom:var(--space-2)}.oik-app-shell__search-group+.oik-app-shell__search-group{margin-top:var(--space-3)}.oik-app-shell__search-group-label{font-family:var(--font-ui);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:var(--space-1) var(--space-2)}.oik-app-shell__search-item{display:flex;flex-direction:column;width:100%;text-align:left;gap:2px;padding:var(--space-2);border:none;background:none;border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-ui)}.oik-app-shell__search-item:hover{background:var(--surface-hover)}.oik-app-shell__search-item-titulo{font-size:13px;font-weight:600;color:var(--ink-900)}.oik-app-shell__search-item-subtitulo{font-size:12px;color:var(--text-muted)}.oik-app-shell__search-empty{padding:var(--space-3) var(--space-2);font-size:13px;color:var(--text-muted);text-align:center}.oik-app-shell__spacer{flex:1 1}.oik-app-shell__user{display:flex;align-items:center;gap:var(--space-2)}.oik-app-shell__user-name{font-size:13px;font-weight:600;color:var(--ink-900);font-family:var(--font-ui);line-height:1.2}.oik-app-shell__user-role{font-size:11px;color:var(--text-muted);font-family:var(--font-ui);line-height:1.2}.oik-app-shell__main{flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;padding:clamp(var(--space-4),2vw,var(--space-6))}.oik-app-shell__backdrop,.oik-app-shell__topbar .oik-app-shell__hamburger{display:none}@media (max-width:1023px){.oik-app-shell__sidebar{position:fixed;inset:0 auto 0 0;z-index:40;transform:translateX(-100%);width:min(var(--sidebar-w),calc(100vw - var(--space-12)));transition:transform .18s ease}.oik-app-shell__sidebar[data-mobile-open=true]{transform:translateX(0)}.oik-app-shell__sidebar[data-collapsed=true]{width:min(var(--sidebar-w),calc(100vw - var(--space-12)))}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__brand-text{max-width:120px;opacity:1;visibility:visible}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__brand{padding:0 var(--space-5);justify-content:space-between;gap:var(--space-2)}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__nav-item{gap:var(--space-3)}.oik-app-shell__sidebar[data-collapsed=true] .oik-app-shell__nav-label{max-width:180px;opacity:1;transform:none}.oik-app-shell__nav .oik-tooltip__bub{display:none}.oik-app-shell__topbar .oik-app-shell__hamburger{display:inline-flex}.oik-app-shell__backdrop{display:block;position:fixed;inset:0;background:rgba(15,23,42,.4);z-index:30;opacity:0;pointer-events:none;transition:opacity .2s ease}.oik-app-shell__backdrop[data-open=true]{opacity:1;pointer-events:auto}}@media (prefers-reduced-motion:reduce){.oik-app-shell__backdrop,.oik-app-shell__brand,.oik-app-shell__brand-text,.oik-app-shell__nav-label,.oik-app-shell__sidebar{transition:none}}