.tgj .mobile-menu{position:fixed;inset:0;box-sizing:border-box;width:100%;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:var(--ink);color:var(--white);overflow:hidden;overscroll-behavior:contain}
.tgj .mobile-menu[open]{display:flex;flex-direction:column;animation:portal-menu-in 180ms ease-out both}
.tgj .mobile-menu::backdrop{background:var(--ink)}
.tgj .mobile-menu-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(14px + env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 12px max(20px,env(safe-area-inset-left))}
.tgj .mobile-menu-head .brand{gap:9px;color:var(--white)}
.tgj .mobile-menu-head .brand img{filter:brightness(0) invert(1);width:21px;height:35px}
.tgj .mobile-menu-head .brand>span{font-size:29px;letter-spacing:-1.2px}
.tgj .mobile-menu-head .brand small{font-size:12px;color:#e0e7df;margin-top:4px}
.tgj .mobile-menu-head .brand-dot{color:var(--lime)}
.tgj .mobile-menu-close{background:transparent;color:inherit;display:flex;align-items:center;gap:10px;min-height:48px;padding:8px 0 8px 10px;font-size:13px}
.tgj .mobile-menu-close .icon{width:26px;height:26px}
.tgj .mobile-menu-body{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 max(20px,env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#73897a var(--ink)}
.tgj .mobile-menu-search{width:100%;min-height:48px;padding:12px 14px;display:flex;align-items:center;gap:13px;background:#304139;color:#f6f8f3;text-align:left;border-radius:var(--radius)}
.tgj .mobile-menu-search span{font-size:14px;line-height:1.5}
.tgj .mobile-menu .icon{flex:none}
.tgj .mobile-menu-shortcuts{display:flex;gap:20px;flex-wrap:wrap;padding:6px 0 10px}
.tgj .mobile-menu-shortcuts a{display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px;color:var(--lime)}
.tgj .mobile-menu-shortcuts .icon{width:18px;height:18px}
.tgj .mobile-menu-primary{display:grid;gap:0;padding:0 0 14px}
.tgj .mobile-menu-primary a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;font-size:clamp(20px,5.4vw,24px);font-weight:600;line-height:1.15;letter-spacing:-.025em;padding:8px 0}
.tgj .mobile-menu-primary .icon{width:18px;height:18px;color:var(--lime)}
.tgj .mobile-menu-local{background:#304139;border-radius:var(--radius);padding:0 16px}
.tgj .mobile-menu-local summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;cursor:pointer;font-weight:600;font-size:16px}
.tgj .mobile-menu-local summary::-webkit-details-marker{display:none}
.tgj .mobile-menu-local[open] summary .icon{transform:rotate(45deg)}
.tgj .mobile-menu-local nav{display:grid;padding-bottom:12px}
.tgj .mobile-menu-local nav a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:9px 0;font-size:15px;line-height:1.5}
.tgj .mobile-menu-local nav .icon{width:17px;height:17px}
.tgj .mobile-menu-personal{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:10px 0 8px}
.tgj .mobile-menu-personal a{display:flex;align-items:center;gap:10px;min-height:48px;font-size:14px}
.tgj .mobile-menu-personal .icon{width:20px;height:20px;color:var(--lime)}
.tgj .mobile-menu-meta{display:flex;flex-wrap:wrap;gap:0 24px}
.tgj .mobile-menu-meta a{min-height:44px;display:flex;align-items:center;gap:8px;font-size:13px;color:#e0e7df}
.tgj .mobile-menu-meta .icon{width:15px;height:15px}
.tgj .mobile-menu-related{display:block;background:var(--lime);color:var(--ink);padding:16px;margin-top:12px;border-radius:var(--radius);font-size:13px;line-height:1.5}
.tgj .mobile-menu-related strong{display:flex;align-items:center;justify-content:space-between;margin-top:4px;font-size:21px;letter-spacing:-.035em}
.tgj .mobile-menu :is(a,button,summary):focus-visible{outline:2px solid var(--lime);outline-offset:4px}
.tgj .mobile-menu-related:focus-visible{outline-color:white}
.tgj .mobile-menu a[aria-current=page]{color:var(--lime)}
@keyframes portal-menu-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.tgj .header-actions .mobile-toggle{width:auto;min-width:82px;min-height:48px;gap:8px;padding:8px 0 8px 12px;font-size:13px;font-weight:600}.tgj .mobile-toggle .icon{width:25px;height:25px}}
@media(min-width:651px){.tgj .mobile-menu-body,.tgj .mobile-menu-head{padding-left:max(36px,calc((100vw - 720px)/2));padding-right:max(36px,calc((100vw - 720px)/2))}.tgj .mobile-menu-primary a{font-size:25px;min-height:48px}}
@media(max-width:359px){.tgj .header-inner .brand>span{font-size:26px}.tgj .header-inner{gap:4px}.tgj .mobile-menu-head .brand>span{font-size:25px}.tgj .mobile-menu-personal{gap:8px}.tgj .mobile-menu-personal a{font-size:13px}.tgj .mobile-menu-shortcuts{gap:16px}}
@media(prefers-reduced-motion:reduce){.tgj .mobile-menu[open]{animation:none}}
@media print{.tgj .mobile-menu{display:none!important}}
