/* LUCIO SISTEMAS · SIDEBAR V25 · 2026-09-29 */
:root{--lucio-side-mini:104px;--lucio-side-full:284px;--lucio-blue:#0b63d8;--lucio-blue-soft:#eef6ff;--lucio-line:#d8e8f8}
@media(min-width:1101px){
body .portal-shell{grid-template-columns:var(--lucio-side-mini) minmax(0,1fr)!important;transition:grid-template-columns .22s ease!important}
html.lucio-sidebar-expanded body .portal-shell{grid-template-columns:var(--lucio-side-full) minmax(0,1fr)!important}
body .portal-sidebar{position:sticky!important;top:0!important;height:100vh!important;padding:14px 12px!important;background:#fff!important;border-right:1px solid var(--lucio-line)!important;box-shadow:5px 0 22px rgba(28,79,132,.045)!important;overflow:hidden!important;transition:padding .22s ease!important}
body .portal-sidebar:after{display:none!important}
.lucio-sidebar-head{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:112px;padding:2px 0 10px;border-bottom:1px solid #edf3f9}
body .portal-brand{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:auto!important;min-height:58px!important;margin:0!important;padding:0!important;gap:12px!important;border:0!important;overflow:hidden!important}
body .brand-car-mark,body .brand-car-mark svg{width:58px!important;height:46px!important;min-width:58px!important;stroke:var(--lucio-blue)!important}
.lucio-brand-copy{display:none;min-width:0;white-space:nowrap}.lucio-brand-copy strong{font-size:23px!important;line-height:.9!important}.lucio-brand-copy small{font-size:8px!important}
html.lucio-sidebar-expanded .lucio-sidebar-head{min-height:82px;flex-direction:row;justify-content:space-between;padding:0 2px 10px}
html.lucio-sidebar-expanded body .portal-brand{justify-content:flex-start!important}.lucio-sidebar-expanded .lucio-brand-copy{display:block}
.lucio-sidebar-toggle{display:grid!important;place-items:center!important;flex:none;width:38px;height:38px;padding:0;border:1px solid #cfe0f2;border-radius:13px;background:#f5f9ff;color:var(--lucio-blue);font:900 22px/1 system-ui;cursor:pointer;box-shadow:none!important}
.lucio-sidebar-toggle:hover{background:#eaf4ff!important;border-color:#b8d7f6!important}.lucio-sidebar-toggle span{transition:transform .18s}.lucio-sidebar-expanded .lucio-sidebar-toggle span{transform:rotate(180deg)}
body .portal-menu{display:flex!important;flex:1!important;min-height:0!important;flex-direction:column!important;gap:6px!important;margin:10px 0 0!important;padding:0 2px 82px!important;overflow-y:auto!important;overflow-x:hidden!important;max-height:calc(100vh - 128px)!important}
.lucio-nav>a,.lucio-nav-group>summary{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:13px!important;min-height:50px!important;margin:0!important;padding:0 12px!important;border:1px solid transparent!important;border-radius:15px!important;background:transparent!important;color:#526476!important;text-decoration:none!important;font-size:0!important;font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;box-shadow:none!important;list-style:none!important;cursor:pointer!important}
.lucio-nav>a:hover,.lucio-nav-group>summary:hover{background:#f4f8fc!important;color:#244d7d!important}.lucio-nav>a.active,.lucio-nav-group[open]>summary{background:var(--lucio-blue-soft)!important;color:#0b55b7!important;border-color:#d8e8f8!important;box-shadow:inset 4px 0 0 var(--lucio-blue)!important}
html.lucio-sidebar-expanded .lucio-nav>a,html.lucio-sidebar-expanded .lucio-nav-group>summary{justify-content:flex-start!important;font-size:12px!important}
.lucio-nav-group{margin:0!important;border:0!important}.lucio-nav-group>summary::-webkit-details-marker{display:none!important}
.lucio-nav-label,.lucio-nav-chevron{display:none}.lucio-sidebar-expanded .lucio-nav-label,.lucio-sidebar-expanded .lucio-nav-chevron{display:inline}.lucio-sidebar-expanded .lucio-nav-chevron{margin-left:auto;font-size:18px;transition:transform .18s}.lucio-sidebar-expanded .lucio-nav-group[open]>.lucio-nav-chevron{transform:rotate(90deg)}
.lucio-nav-children{display:none!important}.lucio-sidebar-expanded .lucio-nav-group[open]>.lucio-nav-children{display:grid!important;gap:3px!important;margin:2px 0 5px 36px!important}.lucio-nav-children a{min-height:36px!important;padding:0 10px!important;border-radius:10px!important;font-size:10px!important;display:flex!important;align-items:center!important}.lucio-nav-children a.active,.lucio-nav-children a:hover{background:#eef6ff!important;color:#0b55b7!important}
}.lucio-nav-icon{display:block!important;flex:none!important;width:24px!important;height:24px!important;min-width:24px!important}.lucio-icon{background:currentColor!important;mask:var(--lucio-icon) center/contain no-repeat!important;-webkit-mask:var(--lucio-icon) center/contain no-repeat!important;color:#0b63d8!important}
.lucio-icon-home{--lucio-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3 2 12h3v9h6v-6h2v6h6v-9h3L12 3Z'/%3E%3C/svg%3E")}.lucio-icon-car{--lucio-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m5 5 2-2h10l2 2 2 6v8h-3v-2H6v2H3v-8l2-6Zm2 1-1 4h12l-1-4H7Zm-1 7a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm12 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z'/%3E%3C/svg%3E")}.lucio-icon-grid,.lucio-icon-ai{--lucio-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 3h7v7H3V3Zm11 0h7v7h-7V3ZM3 14h7v7H3v-7Zm11 0h7v7h-7v-7Z'/%3E%3C/svg%3E")}.lucio-icon-folder{--lucio-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 5h7l2 2h9v12H3V5Zm2 4v8h14V9H5Z'/%3E%3C/svg%3E")}.lucio-icon-wrench{--lucio-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14 3a6 6 0 0 0-5 9L3 18l3 3 6-6a6 6 0 0 0 8-7l-4 4-3-1-1-3 4-4a6 6 0 0 0-2-1Z'/%3E%3C/svg%3E")}.lucio-icon-bell{--lucio-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a2 2 0 0 1 2 2v1a6 6 0 0 1 4 6v4l2 3H4l2-3v-4a6 6 0 0 1 4-6V4a2 2 0 0 1 2-2Zm-2 18h4a2 2 0 0 1-4 0Z'/%3E%3C/svg%3E")}.lucio-icon-shield{--lucio-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2 4 5v6c0 5 3 9 8 11 5-2 8-6 8-11V5l-8-3Zm0 4 4 2v3c0 3-1 5-4 7-3-2-4-4-4-7V8l4-2Z'/%3E%3C/svg%3E")}.lucio-icon-settings{--lucio-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m10 2 1 2h2l1-2 3 2-1 2 1 2h2v4h-2l-1 2 1 2-3 2-1-2h-2l-1 2-3-2 1-2-1-2H5V8h2l1-2-1-2 3-2Zm2 6a4 4 0 1 0 0 8 4 4 0 0 0 0-8Z'/%3E%3C/svg%3E")}.lucio-icon-user{--lucio-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3a5 5 0 1 1 0 10 5 5 0 0 1 0-10Zm-8 18a8 8 0 0 1 16 0H4Z'/%3E%3C/svg%3E")}.lucio-icon-chart{--lucio-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 20h18v2H3V20Zm2-8h3v6H5v-6Zm6-5h3v11h-3V7Zm6-4h3v15h-3V3Z'/%3E%3C/svg%3E")}
body .portal-foot{position:absolute!important;left:12px!important;right:12px!important;bottom:14px!important;margin:0!important;padding:0!important;z-index:8!important}.lucio-sidebar-expanded body .portal-foot{left:18px!important;right:18px!important}
body .portal-logout{width:100%!important;min-height:50px!important;padding:0 12px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;border:1px solid #d8e8f8!important;border-radius:14px!important;background:#fff!important;color:#0b55b7!important;font-size:0!important;font-weight:800!important;box-shadow:none!important}.lucio-sidebar-expanded body .portal-logout{justify-content:flex-start!important;font-size:12px!important}
body .ls-top-user{display:none!important}
}@media(max-width:1100px){
body .portal-shell{display:block!important}
body .portal-sidebar{display:flex!important;flex-direction:column!important;position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(88vw,320px)!important;height:100vh!important;z-index:1000!important;padding:16px!important;background:#fff!important;border-right:1px solid #d8e8f8!important;box-shadow:14px 0 36px rgba(7,29,77,.18)!important;transform:translateX(-105%)!important;transition:transform .22s ease!important;overflow:hidden!important}
body.menu-open .portal-sidebar{transform:none!important}.lucio-sidebar-toggle{display:none!important}.lucio-sidebar-head{min-height:76px!important;flex-direction:row!important;justify-content:flex-start!important}.lucio-brand-copy,.lucio-nav-label,.lucio-nav-chevron{display:inline!important}.lucio-nav-chevron{margin-left:auto!important}
body .portal-brand{justify-content:flex-start!important}.lucio-nav>a,.lucio-nav-group>summary{justify-content:flex-start!important;font-size:12px!important}.lucio-nav-group[open]>.lucio-nav-children{display:grid!important;gap:3px!important;margin:2px 0 5px 36px!important}
body .portal-menu{max-height:none!important;padding-bottom:84px!important;overflow-y:auto!important}.lucio-mobile-menu{display:grid!important}.portal-top{position:relative!important}.lucio-mobile-menu{margin-bottom:10px!important}
body .portal-foot{left:16px!important;right:16px!important}.portal-logout{justify-content:flex-start!important;font-size:12px!important}
}
@media(min-width:1101px){.lucio-mobile-menu{display:none!important}}
.lucio-mobile-menu{width:42px;height:42px;border:1px solid #d7e6f5;border-radius:12px;background:#fff;color:#0b57bd;place-items:center;font-size:20px;cursor:pointer}
/* V25.1 HARD LOCK - overrides legacy sidebar selectors */
@media(min-width:1101px){
html body.lucio-home-view .portal-shell,html body:not(.lucio-home-view) .portal-shell{display:grid!important;grid-template-columns:var(--lucio-side-mini) minmax(0,1fr)!important}
html.lucio-sidebar-expanded body.lucio-home-view .portal-shell,html.lucio-sidebar-expanded body:not(.lucio-home-view) .portal-shell{grid-template-columns:var(--lucio-side-full) minmax(0,1fr)!important}
html body.lucio-home-view .portal-sidebar,html body:not(.lucio-home-view) .portal-sidebar{position:sticky!important;top:0!important;left:auto!important;width:var(--lucio-side-mini)!important;height:100vh!important;transform:none!important;padding:14px 12px!important;overflow:hidden!important}
html.lucio-sidebar-expanded body.lucio-home-view .portal-sidebar,html.lucio-sidebar-expanded body:not(.lucio-home-view) .portal-sidebar{width:var(--lucio-side-full)!important}
html body .lucio-sidebar-toggle{display:grid!important}
html body .lucio-mobile-menu{display:none!important}
html body:not(.lucio-home-view) .portal-menu,html body.lucio-home-view .portal-menu{padding:0 2px 82px!important;overflow-y:auto!important;overflow-x:hidden!important;max-height:calc(100vh - 128px)!important}
html body:not(.lucio-home-view) .portal-foot,html body.lucio-home-view .portal-foot{position:absolute!important;left:12px!important;right:12px!important;bottom:14px!important;margin:0!important;padding:0!important}
html.lucio-sidebar-expanded body:not(.lucio-home-view) .portal-foot,html.lucio-sidebar-expanded body.lucio-home-view .portal-foot{left:18px!important;right:18px!important}
}@media(max-width:1100px){
html body.lucio-home-view .portal-shell,html body:not(.lucio-home-view) .portal-shell{display:block!important;grid-template-columns:none!important}
html body.lucio-home-view .portal-sidebar,html body:not(.lucio-home-view) .portal-sidebar{display:flex!important;flex-direction:column!important;position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(88vw,320px)!important;height:100dvh!important;z-index:1000!important;padding:16px!important;background:#fff!important;transform:translateX(-105%)!important;transition:transform .22s ease!important;overflow:hidden!important}
html body.menu-open.lucio-home-view .portal-sidebar,html body.menu-open:not(.lucio-home-view) .portal-sidebar{transform:none!important}
html body .lucio-sidebar-toggle{display:none!important}
html body .lucio-mobile-menu{display:grid!important}
html body:not(.lucio-home-view) .portal-menu,html body.lucio-home-view .portal-menu{max-height:calc(100dvh - 180px)!important;padding:0 2px 88px!important;overflow-y:auto!important;overflow-x:hidden!important}
html body:not(.lucio-home-view) .portal-foot,html body.lucio-home-view .portal-foot{position:absolute!important;left:16px!important;right:16px!important;bottom:14px!important;margin:0!important;padding:0!important}
html body:not(.lucio-home-view) .portal-top,html body.lucio-home-view .portal-top{margin-left:0!important;width:100%!important}
html body:not(.lucio-home-view) .portal-content,html body.lucio-home-view .portal-content{margin-left:0!important;width:100%!important}
}.lucio-brand-copy{overflow:visible!important;max-width:142px!important}.lucio-brand-copy strong{font-size:20px!important;line-height:.92!important;letter-spacing:-.02em!important;white-space:nowrap!important}
body .portal-logout>span:first-child{font-size:16px!important;line-height:1!important}
body.menu-open #yum-chat-launch{display:none!important}
@media(max-width:1100px){html body .lucio-brand-copy strong{font-size:21px!important}.lucio-nav-children a{font-size:11px!important}}
html.lucio-sidebar-expanded body .portal-brand{width:auto!important;flex:1 1 auto!important;min-width:0!important;overflow:visible!important}
html.lucio-sidebar-expanded .lucio-brand-copy{max-width:118px!important;overflow:visible!important}
html.lucio-sidebar-expanded .lucio-brand-copy strong{font-size:19px!important;letter-spacing:-.03em!important}
@media(max-width:1100px){
html body .lucio-sidebar-toggle{display:grid!important;position:absolute!important;right:14px!important;top:18px!important;z-index:5!important}
html body .portal-logout .lucio-nav-label{display:inline!important;font-size:12px!important}
html body .portal-logout{justify-content:center!important;font-size:12px!important}
}
