
/* 405: scoped navigation only; all surfaces follow active theme tokens. */
.mp405-toggle{display:flex;gap:4px;margin:6px 4px 12px}.mp405-toggle button{flex:1;border:1px solid var(--t-line,#ccd4df);border-radius:9px;padding:7px;background:var(--t-surface,#fff);color:var(--t-text,#182b43);cursor:pointer}.mp405-toggle button[aria-pressed=true]{background:var(--t-surface2,#e5edf7);font-weight:700;outline:1px solid var(--t-line,#ccd4df)}
html body #app#app#app#app#app>.sidebar #navModules#navModules.mp405-grouped>button{display:none!important}
.mp405-groups,.mp405-futures{display:flex;flex-direction:column;gap:5px;min-width:0}
.mp405-group,.mp405-item{display:flex!important;align-items:center;gap:12px!important;width:100%;text-align:left;box-sizing:border-box;border:1px solid var(--t-line,#cbd5e1)!important;border-radius:9px!important;padding:11px!important;background:var(--t-surface,#fff)!important;color:var(--t-text,#182b43)!important;cursor:pointer;white-space:normal!important;min-height:44px;font:inherit;font-size:13px;line-height:1.4}.mp405-group{justify-content:space-between}.mp405-group:hover,.mp405-group.selected,.mp405-group.current,.mp405-item:hover,.mp405-item.active{background:var(--t-surface2,#e7eff8)!important;box-shadow:inset 3px 0 var(--t-accent,#2684ef)}
.mp405-item i{width:12px;height:12px;flex:0 0 12px;background:var(--t-accent,#2684ef);border-radius:50%}.mp405-item span{min-width:0;overflow-wrap:anywhere}.mp405-item small,.mp405-license small{display:block;font-size:11px;opacity:.75;margin-top:3px}
.mp405-flyout{position:fixed;z-index:21000;overflow:auto;box-sizing:border-box;border:1px solid var(--t-line,#cbd5e1);border-radius:12px;box-shadow:0 12px 32px #0004;background:var(--t-surface,#fff);color:var(--t-text,#182b43);padding:12px;isolation:isolate}.mp405-flyout header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px}.mp405-flyout header button{background:var(--t-surface2,#e7eff8);color:var(--t-text,#182b43);border:1px solid var(--t-line,#ccd4df);border-radius:8px;font-size:22px;padding:2px 10px;cursor:pointer}.mp405-items{display:flex;flex-direction:column;gap:6px}.mp405-placeholder{padding:22px;border:1px solid var(--t-line,#ccd4df);border-radius:12px;background:var(--t-surface,#fff);color:var(--t-text,#182b43)}.mp405-placeholder h2{font-size:20px}.mp405-badge{display:inline-block;padding:5px 10px;border-radius:20px;background:var(--t-surface2,#e7eff8)}.mp405-license{padding:18px;margin-top:18px;border:1px solid var(--t-line,#ccd4df);border-radius:12px;background:var(--t-surface,#fff);color:var(--t-text,#182b43)}.mp405-license-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px;margin:12px 0}.mp405-license label{display:flex;align-items:center;gap:10px;border:1px solid var(--t-line,#ccd4df);border-radius:8px;padding:10px}.mp405-license input{width:18px!important;height:18px!important;flex:0 0 18px;margin:0!important}.mp405-license button{padding:10px;border-radius:8px;background:var(--t-surface2,#e7eff8);color:var(--t-text,#182b43);border:1px solid var(--t-line,#ccd4df)}
html #app>.sidebar #navModules.mp405-grouped{display:flex!important;flex-direction:column!important}
@media(max-width:650px){.mp405-flyout{max-width:calc(100vw - 24px)}.mp405-license-grid{grid-template-columns:1fr}}

#navModules.mp405-mini .mp405-group span{display:none}#navModules.mp405-mini .mp405-group:before{content:"◆";color:var(--t-accent,#2684ef)}#navModules.mp405-mini .mp405-group{justify-content:center;padding:8px!important}.mp405-toggle button{min-width:0;font-size:12px}

.mp405-toggle.mp405-small{flex-direction:column;margin:4px 0 8px}.mp405-toggle.mp405-small button{padding:4px 1px;font-size:10px}#navModules.mp405-mini .mp405-futures .mp405-item span{display:none}#navModules.mp405-mini .mp405-futures .mp405-item{justify-content:center}.mp405-group:focus-visible,.mp405-item:focus-visible,.mp405-toggle button:focus-visible{outline:2px solid var(--t-accent,#2684ef);outline-offset:2px}

/* List and Groups expose the same authorized module catalog. */
html body #app#app#app#app#app>.sidebar #navModules#navModules>.mp405-futures{display:flex!important}

/* Unified module cards: colors follow the active application theme. */
html body #app#app#app#app#app#app>.sidebar #navModules#navModules{gap:4px!important}
html body #app#app#app#app#app#app>.sidebar #navModules#navModules>button,
html body #app#app#app#app#app#app>.sidebar #navModules#navModules .mp405-item,
html body #app#app#app#app#app#app>.sidebar #navModules#navModules .mp405-group{
box-sizing:border-box!important;width:100%!important;min-height:36px!important;margin:0!important;padding:7px 10px!important;border:1px solid var(--t-line,var(--t-border,#cbd5e1))!important;border-radius:9px!important;background:var(--t-surface,#fff)!important;color:var(--t-text,#182b43)!important;text-align:left!important;font:inherit!important;font-size:12.5px!important;line-height:1.35!important;gap:12px!important;white-space:normal!important;box-shadow:none!important}
html body #app#app#app#app#app#app>.sidebar #navModules#navModules button:hover,
html body #app#app#app#app#app#app>.sidebar #navModules#navModules button.active,
html body #app#app#app#app#app#app>.sidebar #navModules#navModules button.current,
html body #app#app#app#app#app#app>.sidebar #navModules#navModules button.selected{background:var(--t-surface2,#e7eff8)!important;box-shadow:inset 3px 0 var(--t-accent,#2684ef)!important}
html body #app#app#app#app#app#app>.sidebar #navModules#navModules .mp-nav-label{color:inherit!important;font-size:12.5px!important;line-height:1.35!important;white-space:normal!important}
html body #app#app#app#app#app#app>.sidebar #navModules#navModules .v256-dot,
html body #app#app#app#app#app#app>.sidebar #navModules#navModules .mp405-item i{width:12px!important;height:12px!important;min-width:12px!important;flex:0 0 12px!important;margin-left:0!important}

html body #app#app#app#app#app#app>.sidebar #navModules#navModules .mp405-item small{font-size:10px!important;line-height:1.2!important;margin-top:1px!important;color:var(--t-muted,#60758f)!important;opacity:1}

/* All module indicators use the active theme accent, including collapsed navigation. */
html body #app#app#app#app#app#app>.sidebar #navModules#navModules .v256-dot,
html body #app#app#app#app#app#app>.sidebar #navModules#navModules .mp405-item i,
html body #app#app#app#app#app#app>.sidebar #navModules#navModules .ch-dot{
--dot256:var(--t-accent)!important;background:var(--t-accent,#2684ef)!important;box-shadow:none!important}
