/* Plannus Entregas: navegação, estrutura e ações da aplicação. */
.app{display:grid;grid-template-columns:248px minmax(0,1fr);height:100dvh;overflow:hidden}
.app.is-menu-collapsed{grid-template-columns:64px minmax(0,1fr)}
.app-sidebar{height:100%;min-height:0;display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--line);overflow:hidden;position:relative;z-index:40;padding:0}
.sidebar-head{height:72px;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font:750 19px/1 var(--font-body);letter-spacing:-.5px;text-transform:uppercase;white-space:nowrap}
.brand .dot{height:6px;width:6px;flex:none;border-radius:50%;background:var(--signal);box-shadow:9px 0 var(--signal),0 9px var(--signal),9px 9px var(--signal);margin:0 10px 8px 0}
.menu-toggle{display:grid;place-items:center;width:34px;height:34px;min-height:34px;flex:none;padding:0;border:1px solid var(--line);border-radius:6px;background:#fff;color:#475467;box-shadow:none}
.menu-toggle svg,.toolbar svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;flex:none}
#menu{flex:1;min-height:0;overflow:auto;overflow-x:hidden;padding:12px 10px;scrollbar-width:thin;scrollbar-color:#cbd2dc transparent;overscroll-behavior:contain}
.nav-group+ .nav-group{margin-top:12px;padding-top:12px;border-top:1px solid #e9ecf1}
.nav-group>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:6px 10px;min-height:28px;font-size:10px;font-weight:650;text-transform:uppercase;color:#667085;letter-spacing:0;border-radius:4px}
.nav-group>summary::-webkit-details-marker{display:none}.nav-group>summary::after{content:'⌄';font-size:14px}.nav-group:not([open])>summary::after{content:'›'}.nav-group>summary:hover{background:#f8f9fb}
.nav-item{width:100%;display:flex;align-items:center;justify-content:flex-start;min-height:36px;padding:8px 10px;margin:2px 0;border:0;border-radius:6px;background:transparent;color:#475467;box-shadow:none;text-align:left;font:550 12px/18px var(--font-body)}
.nav-label{display:flex;align-items:center;gap:10px;min-width:0}.nav-text{overflow-wrap:anywhere}.nav-icon{width:18px;height:18px;display:grid;place-items:center;flex:none}.nav-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nav-item:hover{background:#f2f4f7;color:#182230;box-shadow:none}.nav-item.is-active{background:#fff0f3;color:#bd1231;box-shadow:inset 3px 0 0 #dc1235;font-weight:650}.nav-item .short{display:none}
.app.is-menu-collapsed .brand,.app.is-menu-collapsed .nav-text,.app.is-menu-collapsed .nav-group>summary{display:none}.app.is-menu-collapsed .sidebar-head{justify-content:center;padding:12px 0}.app.is-menu-collapsed .nav-item{justify-content:center;padding:8px 0}.app.is-menu-collapsed .nav-label{gap:0}
main{min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden;padding:0}
.app-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;flex:none;min-height:72px;padding:12px 20px;margin:0;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;background:#fff}
.app-header>div:first-child{min-width:0;flex:1 1 260px}.header-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.app-header h1{font-size:18px;line-height:24px;letter-spacing:-.3px;margin:0}.app-header #workLabel{font-size:12px;color:#667085;margin-top:4px;display:block;overflow-wrap:anywhere}
.app-header .toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin:0}.app-header .toolbar button:not([hidden]){display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:7px 10px;border-radius:6px;font-size:12px;line-height:18px;font-weight:600;box-shadow:none;white-space:nowrap}.app-header .toolbar .primary{background:var(--signal);border-color:var(--signal);color:#fff}.app-header .toolbar .secondary{background:#fff;color:#344054;border:1px solid #dfe3e9}.app-header .toolbar button:hover:not(:disabled){filter:brightness(.97)}
.main-content{flex:1;min-height:0;overflow:auto;padding:20px;background:var(--surface);scroll-padding-top:12px;isolation:isolate}
.section-title::before{display:none}.section-title{gap:0}.page-panel{box-shadow:none}.report-type-tabs{padding-bottom:10px;border-bottom:1px solid var(--line)}
:is(button,summary,a):focus-visible{outline:2px solid var(--signal);outline-offset:2px}
@media(max-width:1100px){.app-header .toolbar{justify-content:flex-start}.app-header>div:first-child{flex-basis:100%}}
@media(max-width:700px){.app,.app.is-menu-collapsed{grid-template-columns:64px minmax(0,1fr)}.app:not(.is-menu-collapsed) .app-sidebar{position:absolute;inset:0 auto 0 0;width:248px;box-shadow:12px 0 40px #10182826}.app:not(.is-menu-collapsed) main{grid-column:2}.app-header{padding:12px}.app-header h1{font-size:16px}.app-header .toolbar{gap:6px}.app-header .toolbar button{min-height:38px;font-size:11px;padding:6px 8px}.main-content{padding:12px}.brand{font-size:18px}.main-content .card{padding:14px}}
