/* Shared navigation surface: the existing secondary menu extends the dock. */
.floating-navigation-shell{position:fixed;z-index:50;display:flex;background:#FFFFFF;border-radius:32px;box-shadow:0 4px 22px rgba(23,53,47,.08)}
body.navigation-secondary-open .floating-navigation-shell{box-shadow:0 12px 32px rgba(0,0,0,.14),0 3px 8px rgba(0,0,0,.06)}
.mobile-floating-nav{position:relative;display:flex;z-index:45;align-items:center;justify-content:space-evenly;border:0;background:#FFFFFF;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.mobile-floating-nav>button{display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:#161817;cursor:pointer;border-radius:999px;padding:0;min-width:44px;min-height:44px;transition:color .15s,background .15s}
.mobile-floating-nav svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.mobile-floating-nav>button.active{color:var(--green,#214a40)}
.mobile-floating-nav>button:focus-visible{outline:2px solid var(--green,#214a40);outline-offset:2px}
.mobile-import-circle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#111;color:white}
#mobileMore circle{fill:currentColor;stroke:none}
body #sidebar{display:none!important;gap:2px;position:static!important;inset:auto!important;width:260px!important;min-height:0;flex-shrink:1;overflow:auto!important;clip-path:none!important;overscroll-behavior:contain;padding:14px!important;border:0!important;border-radius:inherit!important;background:#FFFFFF!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;z-index:auto!important;transform:none!important;translate:none;will-change:auto!important;transition:none!important}
body.navigation-secondary-open #sidebar{display:flex!important;flex-direction:column;animation:none!important}
body:not(.navigation-admin-authorized) #sidebar #mainNav>[data-page^="admin"]{display:none!important}
body #sidebar .sign-out-button{display:flex!important;gap:10px!important;align-items:center;padding:8px 10px!important;width:100%;font-size:12px}
body #sidebar .sign-out-button span{display:inline!important}
body #sidebarBackdrop{display:none!important}

@media(min-width:768px){
 .floating-navigation-shell{left:20px;top:5%;flex-direction:row-reverse;align-items:stretch;max-width:calc(100vw - 40px);max-height:90dvh;background:#262626}
 body .mobile-floating-nav{left:auto;top:auto;bottom:auto;transform:none;translate:none;flex-direction:column;width:64px;flex:0 0 64px;height:280px;padding:12px 0;border-radius:999px;background:#262626}
 body .mobile-floating-nav>button{position:relative;width:44px;height:44px;flex:0 0 44px;color:#FFFFFF}
 body .mobile-floating-nav>button.active,body .mobile-floating-nav>#mobileMore[aria-expanded="true"]{background:#414141;color:#FFFFFF}
 body .mobile-floating-nav>button[data-mobile-page="imports"]{background:transparent}
 body .mobile-floating-nav>button::after{content:attr(aria-label);position:absolute;left:calc(100% + 14px);top:50%;transform:translateY(-50%);white-space:nowrap;padding:6px 9px;border-radius:7px;background:#262626;color:#FFFFFF;font:500 11px/1.3 'DM Sans',sans-serif;opacity:0;visibility:hidden;pointer-events:none;z-index:2;transition:opacity .12s ease,visibility .12s ease}
 body .mobile-floating-nav>button:hover::after,body .mobile-floating-nav>button:focus-visible::after{opacity:1;visibility:visible}
 body .mobile-floating-nav>button:focus-visible{outline-color:#FFFFFF}
 body .mobile-import-circle{width:40px;height:40px;background:#414141;color:#FFFFFF}
 body .app,body.sidebar-collapsed .app{margin-left:104px!important}
 body .topnav{display:none!important}
 body #sidebar{width:min(260px,calc(100vw - 104px))!important;max-height:90dvh}
 body:has(#modalBackdrop:not(.hidden)) .mobile-floating-nav,body:has(dialog[open]) .mobile-floating-nav{visibility:hidden}
}
@media(max-width:767px){
 .floating-navigation-shell{left:50%;bottom:calc(10px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);flex-direction:column;width:min(340px,calc(100% - 28px));max-height:calc(100dvh - 28px - env(safe-area-inset-bottom,0px));border-radius:25px;background:#000000}
 body .mobile-floating-nav{left:auto;top:auto;bottom:auto;transform:none;flex-direction:row;width:100%;flex-shrink:0;height:50px;padding:3px 8px;border-radius:999px;background:#000000}
 body .mobile-floating-nav>button{flex:1;height:44px;color:#FFFFFF}
 body .app,body.sidebar-collapsed .app{margin-left:0!important}
 html{scroll-padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
 body .app .content{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))!important}
 body .topnav{display:none!important}
 body .toast-stack{bottom:calc(76px + env(safe-area-inset-bottom,0px))}
 body:has(#modalBackdrop:not(.hidden)) .mobile-floating-nav,body:has(dialog[open]) .mobile-floating-nav,body:has(input:focus,textarea:focus,select:focus) .mobile-floating-nav{visibility:hidden;pointer-events:none}
 body #sidebar{width:100%!important;max-height:calc(100dvh - 78px - env(safe-area-inset-bottom,0px));border-radius:25px 25px 0 0!important}
 body.sidebar-mobile-open .mobile-floating-nav{visibility:visible;pointer-events:auto}
 body .mobile-floating-nav>button{position:relative;isolation:isolate}
 body .mobile-floating-nav>button.active,body .mobile-floating-nav>#mobileMore[aria-expanded="true"]{color:#FFFFFF;background:transparent}
 body .mobile-floating-nav>button.active::before,body .mobile-floating-nav>#mobileMore[aria-expanded="true"]::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:14px;background:#262626;z-index:-1;pointer-events:none}
 body .mobile-floating-nav>button[data-mobile-page="imports"]::before{content:none}
 body .mobile-import-circle{background:#262626;color:#FFFFFF}
 body .mobile-floating-nav>button::after{display:none;content:none}
}
@media(prefers-reduced-motion:reduce){body.navigation-secondary-open #sidebar{animation:none}.mobile-floating-nav>button{transition:none}}



/* The secondary menu contains only the seven direct actions. */

body #sidebar>button,body #sidebar .notification-button{display:flex!important;align-items:center!important;gap:10px!important;width:100%!important;min-height:40px;padding:9px 12px!important;margin:0!important;border:0!important;border-radius:10px!important;background:transparent!important;color:var(--ink)!important;font:500 12px 'DM Sans',sans-serif!important;text-align:left;cursor:pointer}
body #sidebar>button:hover,body #sidebar .notification-button:hover{background:#f1f5f3!important}
body #sidebar button>svg{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
body #sidebar .notification-wrap{width:100%}
body #sidebar #notificationBadge{position:static!important;margin-left:auto!important;display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--green,#214a40)!important;color:white!important;font-size:10px!important;line-height:1}
body #sidebar #notificationBadge.hidden{display:none!important}
body #sidebar #signOutButton{position:static!important;inset:auto!important;justify-content:flex-start!important;margin:0!important}body #sidebar #signOutButton span{display:inline!important}
@media(min-width:768px){
 body #sidebar{background:#262626!important;color:#FFFFFF}
 body #sidebar>button,body #sidebar .notification-button{color:#FFFFFF!important}
 body #sidebar>button:hover,body #sidebar .notification-button:hover{background:#414141!important}
 body #sidebar #notificationBadge{background:#414141!important;color:#FFFFFF!important}
}
@media(max-width:767px){
 body #sidebar{background:#000000!important;color:#FFFFFF;border-radius:24px 24px 0 0!important}
 body #sidebar>button,body #sidebar .notification-button{color:#FFFFFF!important}
 body #sidebar>button:hover,body #sidebar .notification-button:hover{background:#262626!important}
 body #sidebar #notificationBadge{background:#333333!important;color:#FFFFFF!important}
}
.navigation-account-access{background:#fff;border-radius:14px;padding:18px;margin-bottom:16px}
.navigation-account-access .workspace{max-width:320px;margin:0}
.navigation-account-access #mainNav{display:flex;flex-wrap:wrap;gap:8px}
.navigation-account-access #mainNav button{border:0;border-radius:8px;padding:10px;background:#f2f6f4;cursor:pointer}
body:not(.navigation-admin-authorized) .navigation-account-access #mainNav,body .navigation-account-access #adminSupportBadge{display:none!important}

#workspaceSelector{position:fixed;inset:auto;margin:0;padding:14px;border:1px solid rgba(0,0,0,.06);border-radius:22px;background:#FFFFFF;color:var(--ink);box-shadow:0 0px 10px 5px rgba(23, 53, 47, 0.04) !important;max-height:calc(100dvh - 28px);overflow:auto}
#workspaceSelector::backdrop{background:transparent;backdrop-filter:none}
#workspaceSelector h2{font-size:13px;margin:0 0 10px}
#workspaceSelector .workspace-list{margin:0;gap:6px}
#workspaceSelector .workspace-option{border:0;background:transparent;padding:10px 8px;min-height:52px;gap:8px;grid-template-columns:28px minmax(0,1fr) auto}
#workspaceSelector .workspace-option.active{background:#f3f7f5;border-radius:10px}
#workspaceSelector .workspace-option>span{width:28px;height:28px;background:#f3f7f5;color:var(--green)}
#workspaceSelector .workspace-option b{font-size:12px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
#workspaceSelector .workspace-option small{font-size:10px;line-height:1.5}
#workspaceSelector .workspace-option i{font-size:10px;white-space:nowrap}
#workspaceSelector .workspace-selector-add{width:100%;text-align:left;min-height:36px;padding:10px 0 0;margin-top:10px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);font-size:12px;cursor:pointer}
