.panel-session{margin:0 0 20px}.panel-session button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:44px;padding:10px 12px;font:600 12px/1.3 "Segoe UI",Arial,sans-serif;color:var(--green);background:#fff;border:1px solid var(--line);border-radius:9px;cursor:pointer}.panel-session svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.panel-session button:disabled{opacity:.5;cursor:wait}
.panel-mobile-bar,.panel-menu-close,.panel-menu-backdrop{display:none}
@media(max-width:650px){
 .panel-mobile-bar{position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border-bottom:1px solid var(--line);padding:16px;min-height:78px}
 .panel-mobile-bar .brand{font-size:27px;margin:0;text-decoration:none}
 .panel-mobile-bar .brand small{display:block;margin:4px 0 0;font-size:9px;letter-spacing:1.4px}
 .panel-mobile-bar button,.panel-menu-close{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 13px;font:600 13px/1.2 "Segoe UI",Arial,sans-serif;color:var(--green);background:#fff;border:1px solid var(--line);border-radius:10px;cursor:pointer}
 .panel-mobile-bar svg,.panel-menu-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
 .shell>aside{position:fixed;inset:0 auto 0 0;z-index:1100;width:min(320px,88vw);height:100vh;height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding:22px 18px;border-right:1px solid var(--line);border-bottom:0;background:#fff;transform:translateX(-100%);visibility:hidden;pointer-events:none;transition:transform .2s ease,visibility .2s ease;box-shadow:12px 0 40px #163a2c22}
 .panel-menu-open .shell>aside{transform:translateX(0);visibility:visible;pointer-events:auto}
 .panel-menu-open{overflow:hidden}
 .panel-menu-backdrop,.native-page .panel-menu-backdrop{position:fixed;inset:0;z-index:1090;border:0;border-radius:0;background:#153b2e66;padding:0}
 .panel-menu-open .panel-menu-backdrop{display:block}
 .shell>aside .brand{display:block;width:calc(100% - 48px);font-size:27px;margin-bottom:25px}
 .shell>aside .brand small{display:block;margin:5px 0 0;font-size:9px;letter-spacing:1.4px}
 .panel-menu-close{position:absolute;top:19px;right:15px;padding:10px;min-width:44px}
 .shell>aside .nav-caption{display:block;margin:22px 10px 9px;font-size:10px;line-height:1.5}
 .shell>aside nav{display:flex;flex-direction:column;gap:4px;margin:0;overflow:visible}
 .shell>aside nav button,.shell>aside nav a.native-nav{display:flex;align-items:center;flex:0 0 auto;width:100%;min-height:44px;text-align:left;white-space:normal;margin:0;padding:12px 13px;font-size:13px;line-height:1.4;text-decoration:none;border-radius:9px}
 .shell>aside .side-bottom{display:block;margin-top:28px}
 .panel-mobile-bar button:focus-visible,.panel-menu-close:focus-visible,.shell>aside nav button:focus-visible,.shell>aside nav a:focus-visible{outline:3px solid #e8b431;outline-offset:2px}
}
@media(prefers-reduced-motion:reduce){.shell>aside{transition:none}}

/* Related modules share collapsible groups; original permission-controlled links remain intact. */
.mesa-app #panel-navigation .panel-nav-group289{margin:2px 0;min-width:0}
.mesa-app #panel-navigation .panel-nav-summary289{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;min-height:46px;padding:12px 13px;border-radius:10px;font-size:13px;line-height:1.4;color:#d1e2d7;user-select:none}
.panel-nav-summary289::-webkit-details-marker{display:none}.panel-nav-summary289::marker{content:""}
.mesa-app #panel-navigation .panel-nav-summary289>svg{flex:none;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.mesa-app #panel-navigation .panel-nav-summary289>span{flex:1;min-width:0}
.mesa-app #panel-navigation .panel-nav-summary289>.panel-nav-chevron289{width:15px;height:15px;transition:transform .15s}
.mesa-app #panel-navigation .panel-nav-group289[open] .panel-nav-chevron289{transform:rotate(90deg)}
.mesa-app #panel-navigation .panel-nav-summary289:hover,.mesa-app #panel-navigation .panel-nav-group289.is-current>.panel-nav-summary289{background:#ffffff12;color:white}
.mesa-app #panel-navigation .panel-nav-group289.is-current>.panel-nav-summary289{font-weight:650}
.mesa-app #panel-navigation .panel-nav-children289{display:grid;gap:3px;margin:4px 4px 9px 23px;padding:2px 0 2px 12px;border-left:1px solid #ffffff24;min-width:0}
.mesa-app #panel-navigation .panel-nav-children289 :is(button,a.native-nav){display:flex;align-items:center;gap:10px;margin:0;min-height:42px;width:100%;padding:9px 10px;font-size:12px;line-height:1.45;white-space:normal;text-align:left;text-decoration:none;border-radius:8px}
.mesa-app #panel-navigation .panel-nav-children289 svg{flex:none;width:17px;height:17px}
.mesa-app #panel-navigation .panel-nav-children289 :is(button,a).active{background:#ffffff16;color:white}
.mesa-app #panel-navigation .panel-nav-summary289:focus-visible{outline:3px solid #e8b431;outline-offset:2px}
@media(max-width:650px){.mesa-app #panel-navigation .panel-nav-summary289{min-height:48px}.mesa-app #panel-navigation .panel-nav-children289 :is(button,a.native-nav){min-height:44px;font-size:13px}.mesa-app #panel-navigation .panel-nav-children289{margin-left:23px}}
@media(prefers-reduced-motion:reduce){.panel-nav-chevron289{transition:none!important}}
