/* Workspace: collapsible menu, listing panel that sits beside the list, step-through arrows, manager tools grouped. */
.mng{margin:10px 0 0;border:1px solid var(--line);border-radius:12px;background:var(--bg)}.mng>summary{cursor:pointer;list-style:none;padding:10px 14px;font:600 13px var(--fb);color:var(--muted);display:flex;align-items:center;justify-content:space-between}
.mng>summary::-webkit-details-marker{display:none}.mng>summary::after{content:"▾";font-size:12px;transition:transform .15s}.mng[open]>summary::after{transform:rotate(180deg)}.mng>.act{padding:0 12px 12px}
.ro .mng{display:none}
.space.sel,.pcard2.sel{box-shadow:inset 3px 0 0 var(--accent);background:var(--raise)}.pcard2.sel{box-shadow:0 0 0 2px var(--accent)}
.dnav{display:inline-flex;align-items:center;gap:4px;margin-left:auto;margin-right:8px;color:var(--muted);font:600 12.5px var(--fm)}
.dnav button{width:36px;height:36px;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:10px;font-size:18px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.dnav button:disabled{opacity:.35;cursor:default}.dnav span{min-width:52px;text-align:center}
.panel .phead{gap:6px}
@media(min-width:901px){
  .menubtn{display:inline-flex}
  body.sbhide .app{grid-template-columns:minmax(0,1fr)}body.sbhide .side{display:none}
  .main{transition:margin-right .22s}
}
@media(min-width:901px){:root{--dw:clamp(340px,27vw,390px)}body.dopen .main{margin-right:var(--dw)}#drawer{width:var(--dw);box-shadow:-8px 0 30px -14px rgba(0,0,0,.25)}}

@media(min-width:901px){#drawer .phead{padding:14px 36px 14px 20px}#drawer .dnav{margin-right:14px}}
@media(min-width:901px){.side #gsLive{font-size:0;gap:0;padding:0 9px}.side #gsLive svg{margin:0}.side .gsearch input{padding-right:78px}}

/* steady left menu: only the filters scroll; the nav and your name stay put (no sliding footer) */
html{scrollbar-gutter:stable}
@media(min-width:901px){
  .side{overflow:hidden;height:100vh;height:100dvh}
  .side-ctx{flex:none;overflow:visible}
  .side-foot{position:static;margin-top:0;flex:none}
}
/* nav + filters scroll together in one area; the logo/search/add button above and your name below stay put */
.side-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
/* with the menu collapsed: search sits under the title, Filters beside the sort, the menu slides over on demand */
@media(min-width:901px){
  body.sbhide .pagebar{flex-wrap:wrap;row-gap:8px}
  body.sbhide .pagebar .gsearch{order:9;flex:1 1 100%;max-width:640px;margin:0}body.sbhide .pagebar .gsearch input{height:40px}
  body.sbhide #mFilters:not([hidden]){display:inline-flex;align-items:center;gap:6px}#mFilters svg{width:17px;height:17px}
  body.sbhide.navopen .side{display:flex;position:fixed;left:0;top:0;bottom:0;width:320px;z-index:1500;box-shadow:var(--sh2)}
  body.sbhide.navopen .navscrim{display:block;position:fixed;inset:0;background:rgba(10,8,4,.4);z-index:1400}
  body.sbhide .sideclose{display:inline-flex}
  body.sbhide.sheet-filters .side>*:not(.side-scroll):not(.side-top){display:none}body.sbhide.sheet-filters .side-scroll .nav{display:none}
  body.sbhide.sheet-filters #fDone{display:block!important;position:sticky;bottom:0;width:100%;height:46px;margin-top:10px;box-shadow:0 14px 0 14px var(--surface)}
}
#mFilters .dot{background:var(--accent);color:var(--on-accent);border-radius:999px;font-size:11px;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}
.side>*:not(.side-scroll){flex-shrink:0}
@media(min-width:901px){.side-foot{box-shadow:0 -12px 12px -12px rgba(30,20,0,.22)}}
.trail{border-left:2px solid var(--line);margin:2px 0 14px 4px;padding-left:12px;font-size:13px}.trail>div{padding:3px 0}
