body #app .sidebar{bottom:auto!important;height:auto!important;max-height:calc(100dvh - 96px)!important;border-radius:0 18px 18px 0!important;overflow-y:auto!important}
body #app .sidebar-scroll{flex:0 0 auto!important;overflow:visible!important;padding-bottom:4px!important}
body #app .sidebar-footer{margin-top:6px!important;flex:0 0 auto!important}
.sidebar-tools summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;padding:12px 14px;border-radius:10px;font-weight:700;min-height:44px}
.sidebar-tools summary::-webkit-details-marker{display:none}.sidebar-tools summary::after{content:'⌄';margin-left:auto}.sidebar-tools[open] summary::after{content:'⌃'}
.sidebar-tools button{width:100%;padding-left:24px!important}.sidebar-tools summary:hover{background:#168dd020}.sidebar-tools summary:focus-visible{outline:2px solid #168dd0;outline-offset:-2px}
.sidebar-brand .menu-logo{position:relative;width:196px;max-width:100%;height:35px}
body #app .sidebar-brand .menu-logo img{width:100%!important;filter:none!important}
body #app .sidebar-brand .menu-logo-day{display:none!important;position:absolute;inset:0;clip-path:inset(0 0 0 20%)}
body.theme-day #app .sidebar-brand .menu-logo-day{display:block!important;filter:brightness(.3) saturate(.8)!important}
.sidebar-brand small{line-height:1.5!important}
@media(max-width:760px){body #app .sidebar{max-height:calc(100dvh - 142px)!important}}
body #jobUpdatesDialog{border-radius:20px;padding:24px;box-shadow:0 24px 80px #00152955;background:#f4f9fd;color:#173b52;border-color:#aacbdf}
body:not(.theme-day) #jobUpdatesDialog{background:#102b44;color:#eef7ff;border-color:#427591}
#jobUpdatesDialog h2{margin-top:0}#jobUpdatesDialog .update-actions button{border:1px solid #86abc766;border-radius:10px;background:#168dd018;color:inherit;font:inherit;font-size:13px;padding:10px 13px}
#jobUpdatesDialog ul li{margin:10px 0;padding:12px;border:1px solid #86abc744;border-radius:12px;background:#168dd00a}
#jobUpdatesDialog li button{font:inherit;line-height:1.5}#jobUpdatesDialog li small{opacity:.75;font-size:12px}

.sidebar-tools summary{color:#deedf7}body.theme-day .sidebar-tools summary{color:#23495c}

body #app .sidebar{top:auto!important;bottom:16px!important;max-height:calc(100dvh - 96px)!important}
@media(max-width:760px){body #app .sidebar{bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;max-height:calc(100dvh - 154px)!important}}
body.crew-view #app .sidebar{top:auto!important;bottom:calc(78px + env(safe-area-inset-bottom,0px))!important}
#paintInventory .paint-inventory{max-width:680px;margin:20px auto;padding:28px;border-radius:18px}#paintInventory .inventory-setup{padding:20px;border:1px solid #86abc766;border-radius:12px;margin-top:20px}#paintInventory h2{font-size:18px}#paintInventory p{line-height:1.6}

body #app .sidebar-tools summary{font-family:inherit!important;font-size:12px!important;font-weight:700!important;line-height:1.15!important;letter-spacing:0!important}
.sidebar .side-icon svg{width:22px;height:22px;display:block}

#gracoMonitorMenu[hidden]{display:none!important}
#gracoPumpMonitor{--gm-bg:rgba(8,34,52,.94);--gm-card:#102f46;--gm-tile:#0b273c;--gm-text:#eef8ff;--gm-muted:#a8c2d2;--gm-line:#345d75;--gm-blue:#25a9ef;--gm-green:#42d793;--gm-gold:#f0bd45;--gm-red:#ff6971;padding:76px 22px 100px;overflow:auto}
body.theme-day #gracoPumpMonitor{--gm-bg:rgba(248,252,255,.94);--gm-card:rgba(255,255,255,.82);--gm-tile:#edf7fd;--gm-text:#153b52;--gm-muted:#58768a;--gm-line:#b7d2e2;--gm-blue:#087fbd;--gm-green:#148857;--gm-gold:#b27600;--gm-red:#c72b35}
#gracoPumpMonitor .graco-monitor{box-sizing:border-box;width:min(1180px,100%);max-width:none;margin:0 auto;padding:30px;border:1px solid var(--gm-line);border-radius:26px;background:var(--gm-bg);color:var(--gm-text);box-shadow:0 18px 55px #00182f24;backdrop-filter:blur(15px)}
.graco-monitor-head{display:flex;align-items:center;gap:18px;padding-bottom:24px;border-bottom:1px solid var(--gm-line)}.graco-monitor-mark{display:grid;place-items:center;flex:0 0 64px;width:64px;height:64px;border-radius:18px;color:white;background:linear-gradient(145deg,#27b8f0,#0679bb);box-shadow:0 9px 22px #087fbd40}.graco-monitor-mark svg{width:42px;height:42px}.graco-monitor-head>div:nth-child(2){min-width:0}.graco-monitor-eyebrow{display:block;color:var(--gm-blue);font-size:11px;font-weight:900;letter-spacing:.18em;margin-bottom:5px}.graco-monitor-head h1{margin:0!important;font-size:clamp(25px,3vw,38px)!important;line-height:1.08;color:var(--gm-text)!important;text-shadow:none!important}.graco-monitor-head p{margin:8px 0 0;color:var(--gm-muted);font-size:15px}.graco-refresh{display:flex;align-items:center;gap:8px;margin-left:auto;padding:11px 15px;border:1px solid var(--gm-line);border-radius:12px;background:var(--gm-tile);color:var(--gm-text);font:inherit;font-weight:800;cursor:pointer}.graco-refresh:hover{border-color:var(--gm-blue);color:var(--gm-blue)}.graco-refresh:disabled{cursor:wait;opacity:.65}.graco-refresh svg{width:19px;height:19px}.graco-refresh.is-loading svg{animation:graco-spin .8s linear infinite}@keyframes graco-spin{to{transform:rotate(360deg)}}
.graco-monitor-state{display:flex;align-items:center;gap:13px;min-height:52px;box-sizing:border-box;padding:14px 17px;border:1px solid var(--gm-line);border-radius:15px;margin:22px 0 16px;background:var(--gm-tile)}.graco-state-dot{display:block;flex:0 0 12px;width:12px;height:12px;border-radius:50%;background:var(--gm-gold);box-shadow:0 0 0 5px color-mix(in srgb,var(--gm-gold) 18%,transparent)}.graco-monitor-state[data-kind=live] .graco-state-dot{background:var(--gm-green);box-shadow:0 0 0 5px color-mix(in srgb,var(--gm-green) 18%,transparent)}.graco-monitor-state[data-kind=error] .graco-state-dot,.graco-monitor-state[data-kind=stale] .graco-state-dot{background:var(--gm-red);box-shadow:0 0 0 5px color-mix(in srgb,var(--gm-red) 18%,transparent)}.graco-monitor-state strong{display:block;font-size:14px}.graco-monitor-state p{margin:3px 0 0;color:var(--gm-muted);font-size:12px;line-height:1.4}
.graco-monitor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.graco-pump-card{overflow:hidden;border:1px solid var(--gm-line);border-radius:19px;background:var(--gm-card);box-shadow:0 8px 22px #00182f12}.graco-pump-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid var(--gm-line)}.graco-pump-identity{display:flex;align-items:center;gap:13px;min-width:0}.graco-pump-icon{display:grid!important;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,#29b5ed,#087cb8);color:#fff;font-size:21px!important;font-weight:900}.graco-pump-identity small{display:block;color:var(--gm-muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.graco-pump-identity h2{margin:3px 0 0;font-size:18px;overflow-wrap:anywhere}.graco-status{display:flex!important;align-items:center;gap:7px;flex:0 0 auto;padding:7px 10px;border-radius:999px;background:color-mix(in srgb,var(--gm-red) 12%,transparent);color:var(--gm-red);font-size:11px!important;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.graco-status i{width:7px;height:7px;border-radius:50%;background:currentColor}.graco-status.is-live{color:var(--gm-green);background:color-mix(in srgb,var(--gm-green) 12%,transparent)}.graco-status.is-stale{color:var(--gm-gold);background:color-mix(in srgb,var(--gm-gold) 12%,transparent)}
.graco-readings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.graco-reading{display:flex;align-items:center;gap:11px;min-height:76px;box-sizing:border-box;padding:13px;border:1px solid color-mix(in srgb,var(--gm-line) 72%,transparent);border-radius:14px;background:var(--gm-tile)}.graco-reading-icon{display:grid!important;place-items:center;flex:0 0 35px;width:35px;height:35px;border-radius:10px;background:color-mix(in srgb,var(--gm-blue) 14%,transparent);color:var(--gm-blue);font-size:20px!important;font-weight:900}.graco-reading-label{display:block;color:var(--gm-muted);font-size:10px!important;font-weight:800;text-transform:uppercase;letter-spacing:.045em}.graco-reading-value{display:flex!important;align-items:baseline;gap:5px;margin-top:5px!important;font-size:25px!important;line-height:1}.graco-reading-value small{color:var(--gm-muted);font-size:11px;font-weight:800}.graco-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--gm-line)}.graco-detail{padding:14px 17px;border-right:1px solid var(--gm-line)}.graco-detail:last-child{border-right:0}.graco-detail span{display:block;color:var(--gm-muted);font-size:10px!important;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.graco-detail strong{display:block;margin-top:5px!important;font-size:12px!important;line-height:1.35;overflow-wrap:anywhere}.graco-detail-alert{color:var(--gm-red)}
@media(max-width:900px){.graco-monitor-grid{grid-template-columns:1fr}.graco-monitor-head{align-items:flex-start}.graco-monitor-mark{flex-basis:54px;width:54px;height:54px}.graco-monitor-mark svg{width:35px;height:35px}}
@media(max-width:600px){#gracoPumpMonitor{padding:68px 10px 105px}#gracoPumpMonitor .graco-monitor{padding:17px;border-radius:20px}.graco-monitor-head{gap:11px;flex-wrap:wrap}.graco-monitor-head p{font-size:13px}.graco-refresh{width:100%;justify-content:center;margin:4px 0 0}.graco-readings{grid-template-columns:1fr}.graco-details{grid-template-columns:1fr}.graco-detail{border-right:0;border-bottom:1px solid var(--gm-line)}.graco-detail:last-child{border-bottom:0}.graco-pump-card-head{align-items:flex-start;padding:16px}.graco-status{padding:6px 8px}.graco-monitor-state{align-items:flex-start}}

/* Match Admin and Settings to the shared menu icon dimensions. */
body #app .sidebar #crew-admin-menu .side-icon svg,body #app .sidebar .sidebar-settings .side-icon svg{display:block!important;width:22px!important;height:22px!important;flex:none!important;fill:none!important;stroke-width:1.8!important}

/* Center the menu brand without a subtitle. */
body #app .sidebar-brand{display:flex;align-items:center;justify-content:center}
body #app .sidebar-brand .menu-logo{margin-inline:auto}
body #app .sidebar-brand .menu-logo img{object-position:center!important}

/* Compact desktop navigation icons, aligned with the menu button. */
@media(min-width:761px){
 body .topbar .top-nav-btn{box-sizing:border-box!important;width:36px!important;min-width:36px!important;height:36px!important;padding:0!important;gap:0!important;flex:0 0 36px!important;align-items:center!important;justify-content:center!important;}
 body .topbar .top-nav-btn svg{display:block;width:20px;height:20px;flex:0 0 20px;pointer-events:none;}
 body .topbar .top-nav-btn:hover{border-color:#72b6d1!important;box-shadow:0 0 0 2px rgba(68,165,204,.18)!important;}
 body .topbar .top-nav-btn:focus-visible{outline:2px solid #38bde7;outline-offset:3px;}
}
