/* Width includes padding through the shared border-box rule. */
:root{--sidebar-width:250px}
.shell,.floor .shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}
.sidebar,.floor .sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);max-width:calc(100vw - 40px);padding:26px 12px;z-index:30;overflow-y:auto;transition:transform .2s ease}
.brand{margin:0 12px 26px;gap:10px}
.floor .brand strong{font-size:21px;white-space:nowrap}
.nav{flex-direction:column;gap:4px;overflow:visible;padding:0}
.nav button{font-size:12px;gap:9px;padding:12px 10px;white-space:nowrap;flex-shrink:0}
.nav .icon{display:block;width:17px;height:17px}
.nav .count{display:inline-block}
.nav-label{display:block;margin:15px 10px 8px}
.sidebar-foot{display:block;padding:18px 10px 0}
.header-start{display:flex;align-items:center;gap:16px;min-width:0}
.menu-toggle,.sidebar-close{width:36px;height:36px;flex-shrink:0;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:6px;background:var(--white);color:var(--ink);padding:8px}
.menu-toggle svg{width:19px;height:19px}
.sidebar-close{display:none}
.sidebar-backdrop{position:fixed;inset:0;background:#12263e80;z-index:25;cursor:pointer;border:0}
.sidebar-backdrop[hidden]{display:none}
.sidebar-closed .shell,.sidebar-closed.floor .shell{grid-template-columns:0 minmax(0,1fr)}
.sidebar-closed .sidebar{transform:translateX(-100%);visibility:hidden}
@media(max-width:1024px){
 .shell,.floor .shell,.sidebar-closed .shell,.sidebar-closed.floor .shell{display:block}
 .workspace{grid-column:auto}
 .sidebar,.floor .sidebar{width:250px;position:fixed;padding:22px 12px;box-shadow:10px 0 35px #152b3b22}
 .sidebar .brand{margin:0 4px 26px;gap:8px}
 .floor .brand strong{font-size:18px}
 .brand-mark{width:32px;height:34px;font-size:24px}
 .sidebar-close{display:inline-grid;margin-left:auto;width:28px;height:28px;color:#dce7ef;background:#ffffff10;border-color:#ffffff25;font-size:21px;padding:0}
 .nav-label{display:block}
 .nav{flex-direction:column;flex-wrap:nowrap;overflow:visible}
 .nav .icon,.nav .count{display:block}
 .sidebar-foot{display:block}
 .sidebar-overlay-open{overflow:hidden}
 .header-start{gap:12px}
 .topbar{gap:14px}
 .breadcrumbs{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
@media(max-width:600px){
 .topbar{padding:0 14px;height:64px;gap:10px}
 .header-start{flex:1;gap:10px}
 .topbar .breadcrumbs{font-size:11px;max-width:calc(100vw - 170px)}
 .breadcrumbs b{margin-left:4px}
 .top-actions{gap:0}
 .search{padding:8px}
 .search .icon{display:none}
 .search input{width:84px;font-size:11px}
 .content{padding-left:14px;padding-right:14px}
 .prototype-bar span{min-width:180px}
}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}
