.joy-sidebar .joy-menu-toggle{display:none}
@media(max-width:700px){
 .joy-sidebar{position:relative!important;box-sizing:border-box;width:100%!important;padding:10px 16px!important;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
 .joy-sidebar .sidebar-title{padding:0;font-size:20px;letter-spacing:1px}
 .joy-sidebar .sidebar-title small{display:none}
 .joy-sidebar .joy-menu-toggle{display:block;width:auto;min-height:44px;padding:10px 15px;border:1px solid #7992b7;border-radius:10px;color:white;font-size:16px;white-space:nowrap}
 .joy-sidebar .joy-menu-links{display:none;width:100%;min-width:0}
 .joy-sidebar.is-open .joy-menu-links{display:block}
 .joy-sidebar nav{display:grid!important;grid-template-columns:minmax(0,1fr);overflow:visible!important;gap:4px}
 .joy-sidebar nav a,.joy-sidebar nav button{box-sizing:border-box;width:100%;white-space:normal;overflow-wrap:anywhere;font-size:16px;min-height:44px;padding:11px 12px}
 .joy-sidebar .sidebar-secondary{margin-top:10px;padding-top:10px}
 .joy-sidebar .joy-menu-toggle:focus-visible,.joy-sidebar nav a:focus-visible{outline:2px solid white;outline-offset:2px}
 body:has(.joy-sidebar) .hero{margin-bottom:18px;gap:12px}
 body:has(.joy-sidebar) .hero h1{font-size:clamp(28px,8vw,36px);margin:6px 0 10px}
 body:has(.joy-sidebar) .hero p{font-size:16px;line-height:1.5}
 body:has(.joy-sidebar) .hero-side{justify-content:flex-start;gap:8px}
 body:has(.joy-sidebar) .hero-side .refresh{min-height:44px;padding:10px 16px;font-size:15px}
 body:has(.joy-sidebar) .stats{gap:10px;margin-bottom:18px}
 body:has(.joy-sidebar) .stat{padding:14px;min-width:0}
 body:has(.joy-sidebar) .stat b{font-size:25px}
}
/* Shared internal navigation, with a device-local pinned preference. */
body.internal-navigation{padding-left:250px!important}
.internal-navigation .joy-sidebar{position:fixed;inset:0 auto 0 0;box-sizing:border-box;width:230px;padding:20px 14px;background:#10274b;color:white;overflow-y:auto;z-index:30}
.internal-navigation .sidebar-title{font-size:20px;font-weight:800;letter-spacing:1px;padding:0 8px 16px}.internal-navigation .sidebar-title small{display:block;font-size:13px;font-weight:400;letter-spacing:0;margin-top:6px;color:#bbceeb}
.internal-navigation .joy-sidebar nav{display:grid;gap:5px}
.internal-navigation .joy-sidebar nav a,.internal-navigation .joy-sidebar nav button,.internal-navigation .navigation-pin,.internal-navigation .joy-menu-toggle{box-sizing:border-box;display:block;width:100%;min-height:44px;padding:11px 12px;border:0;border-radius:10px;background:transparent;color:#e5eeff;text-align:left;font:inherit;font-size:14px;font-weight:600;text-decoration:none;white-space:normal;cursor:pointer}
.internal-navigation .joy-sidebar nav a:hover,.internal-navigation .joy-sidebar nav button:hover,.internal-navigation .joy-sidebar .selected{background:#245798;color:white}
.internal-navigation .joy-sidebar .sidebar-secondary{border-top:1px solid #ffffff26;margin-top:18px;padding-top:12px}
.internal-navigation .joy-sidebar .joy-menu-toggle{display:block;border:1px solid #6a83a6;margin-bottom:8px}
.internal-navigation .navigation-pin{margin-bottom:12px;background:#ffffff12;border:1px solid #6a83a6}
.internal-navigation .joy-menu-links{display:block}.internal-navigation header .nav-actions:empty,.internal-navigation header .actions:empty{display:none}
body.internal-navigation.navigation-collapsed{padding-left:80px!important}
.internal-navigation.navigation-collapsed .joy-sidebar{width:64px;padding:12px 8px}
.internal-navigation.navigation-collapsed .sidebar-title,.internal-navigation.navigation-collapsed .joy-menu-links{display:none}
.internal-navigation.navigation-collapsed .joy-menu-toggle{text-align:center;font-size:22px;padding:8px}
@media(max-width:700px){
 body.internal-navigation,body.internal-navigation.navigation-collapsed{padding-left:0!important}
 .internal-navigation .joy-sidebar{position:relative;inset:auto;width:100%;padding:10px 16px}
 .internal-navigation .joy-sidebar .sidebar-title{display:block;padding:0;font-size:20px}.internal-navigation .sidebar-title small{display:none}
 .internal-navigation .joy-sidebar .joy-menu-toggle{width:auto;margin:0;min-width:44px}
 .internal-navigation .joy-menu-links{display:none}.internal-navigation .joy-sidebar.is-open .joy-menu-links{display:block}
 .internal-navigation .navigation-pin{display:none}
}
@media print{.internal-navigation .joy-sidebar{display:none!important}body.internal-navigation,body.internal-navigation.navigation-collapsed{padding-left:0!important}}
/* Compact navigation controls; comfortable touch targets remain on phones. */
.internal-navigation .joy-sidebar .joy-menu-toggle,.internal-navigation .joy-sidebar .navigation-pin{width:auto;min-height:28px;padding:5px 9px;font-size:12px;line-height:16px;border-radius:7px;margin-bottom:6px}
.internal-navigation .joy-sidebar .navigation-pin{margin-bottom:12px}
.internal-navigation.navigation-collapsed .joy-sidebar .joy-menu-toggle{width:100%;min-height:36px;font-size:20px;padding:6px}
@media(pointer:coarse){.internal-navigation .joy-sidebar .joy-menu-toggle,.internal-navigation .joy-sidebar .navigation-pin{min-height:44px;padding:10px}}
.internal-navigation .navigation-controls{display:flex;align-items:center;gap:6px;margin-bottom:12px}
.internal-navigation .navigation-controls .joy-menu-toggle,.internal-navigation .navigation-controls .navigation-pin{width:auto;min-height:24px;margin:0;padding:3px 7px;font-size:12px;line-height:16px;border-radius:5px;white-space:nowrap}
.internal-navigation.navigation-collapsed .navigation-controls .navigation-pin{display:none}
.internal-navigation.navigation-collapsed .navigation-controls .joy-menu-toggle{width:100%;font-size:20px;min-height:32px}
@media(max-width:700px){.internal-navigation .navigation-controls{margin:0}.internal-navigation .navigation-controls .navigation-pin{display:none}}
@media(pointer:coarse){.internal-navigation .navigation-controls .joy-menu-toggle,.internal-navigation .navigation-controls .navigation-pin{min-height:44px}}
/* Quiet, compact controls that sit beneath the sidebar heading. */
.internal-navigation .navigation-controls{gap:5px}
.internal-navigation .navigation-controls .joy-menu-toggle,.internal-navigation .navigation-controls .navigation-pin{min-height:22px;padding:2px 6px;border:1px solid #ffffff26;border-radius:6px;background:#ffffff08;color:#cbd9ed;font-weight:500;box-shadow:inset 0 1px 0 #ffffff08;transition:background .15s,border-color .15s,color .15s}
.internal-navigation .navigation-controls button:hover{background:#ffffff14;border-color:#ffffff45;color:#fff}
.internal-navigation .navigation-controls .navigation-pin[aria-pressed="true"]{background:#7baafa1a;border-color:#8bb7ff55;color:#d9e8ff}
.internal-navigation .navigation-controls button:focus-visible{outline:2px solid #9dc4ff;outline-offset:3px}
@media(pointer:coarse){.internal-navigation .navigation-controls .joy-menu-toggle,.internal-navigation .navigation-controls .navigation-pin{min-height:44px}}
@media(prefers-reduced-motion:reduce){.internal-navigation .navigation-controls button{transition:none}}
.internal-navigation .joy-sidebar a.access-locked{opacity:.72}
.internal-navigation .joy-sidebar a.access-locked:after{content:'🔒';font-size:11px;margin-left:auto}
.internal-navigation .joy-sidebar a.company-access{background:#2e7df630;color:#fff;border:1px solid #8ab7f755;margin-bottom:10px}
.tool-card.access-locked .tool-link{flex-wrap:wrap;gap:8px}
.access-lock-label{padding:5px 9px;border-radius:8px;background:#eef2f7;color:#596c84;font-size:12px;font-weight:650}
.internal-access-dialog{width:min(520px,calc(100% - 32px));padding:28px;border:1px solid #dbe5f2;border-radius:22px;color:#071731;background:#fff;box-shadow:0 30px 100px #061d423d;font-family:Inter,system-ui,sans-serif}
.internal-access-dialog::backdrop{background:#061d4270}
.internal-access-dialog h2{margin:0;font-size:24px;line-height:1.25;letter-spacing:-.025em}
.internal-access-dialog p{margin:16px 0 24px;color:#63728a;line-height:1.65}
.internal-access-dialog button{padding:12px 20px;border:0;border-radius:12px;background:#061d42;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.internal-access-dialog button:focus-visible{outline:3px solid #2e7df6;outline-offset:3px}
@media print{.internal-access-dialog{display:none!important}}
