/* Shared mobile layout. Desktop styles remain in their page-specific sheets. */
.mobile-menu-toggle,.mobile-panel-toggle,.mobile-panel-close{display:none}
.mobile-panel-backdrop[hidden]{display:none!important}
@media(max-width:960px){
 .mobile-navigation-ready #shell{display:block;min-height:100dvh}
 .mobile-navigation-ready #shell>main{margin:0;min-width:0;padding:0}
 .mobile-navigation-ready #shell>aside{position:fixed;inset:0 auto 0 0;box-sizing:border-box;width:min(86vw,330px);height:100vh;height:100dvh;margin:0;padding:16px 14px max(16px,env(safe-area-inset-bottom));border-radius:0 18px 18px 0;border:1px solid var(--border,#343034);background:var(--side,#191919);z-index:220;transform:translateX(-105%);visibility:hidden;display:flex;flex-direction:column;overflow:hidden;transition:transform .2s ease,visibility .2s}
 .mobile-navigation-ready.mobile-panel-open #shell>aside{transform:none;visibility:visible}
 body.mobile-panel-open{overflow:hidden}
 .mobile-panel-backdrop{position:fixed;inset:0;z-index:210;border:0;border-radius:0;padding:0;background:#0009;touch-action:none}
 .mobile-navigation-ready #shell>aside .server-identity{margin-top:42px;padding:8px 0 16px;flex-shrink:0}
 .mobile-navigation-ready #nav{display:block;flex:1 1 auto;min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain;margin:8px 0;padding:0 2px 12px;scrollbar-width:thin}
 .mobile-navigation-ready #nav details.navgroup{display:block}
 .mobile-navigation-ready #nav details.navgroup>.navgroup-head{display:flex;min-height:44px;padding:10px}
 .mobile-navigation-ready #nav details.navgroup>.navgroup-body{display:grid;gap:5px}
 .mobile-navigation-ready #nav button{width:100%;min-height:44px;padding:11px 12px;white-space:normal;text-align:left;line-height:1.4;border-radius:9px}
 .mobile-navigation-ready #shell>aside .side-footer{display:flex;flex-wrap:wrap;flex-shrink:0;gap:10px;padding-top:12px;margin:0}
 .mobile-navigation-ready .side-footer #logout{min-height:44px;width:auto;margin:0 0 0 auto}
 .mobile-panel-toggle,.mobile-panel-close{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;padding:10px;border:1px solid var(--border,#343034);border-radius:10px;background:var(--field,#201d20);color:var(--text,#eee)}
 .mobile-panel-close{position:absolute;right:14px;top:12px}
 .mobile-panel-toggle svg,.mobile-panel-close svg,.mobile-menu-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
 .mobile-navigation-ready .topbar{position:sticky;top:0;z-index:30;box-sizing:border-box;height:68px;margin:0;padding:10px 12px;gap:10px;border-radius:0;border-width:0 0 1px;background:var(--surface,#191919)}
 .mobile-navigation-ready .topbar-label{flex:1;min-width:0;padding:0;font-size:12px}
 .mobile-navigation-ready .topbar-label .topbar-divider,.mobile-navigation-ready .topbar-label .topbar-divider+span{display:none}
 .mobile-navigation-ready .topbar-right{flex:none;gap:8px}
 .mobile-navigation-ready .topbar-right .language-switch{margin:0}
 .mobile-navigation-ready #user .avatar{display:block;width:28px;height:28px}
 .mobile-navigation-ready #user span.avatar{display:grid;place-items:center;border-radius:50%;line-height:1}
 .mobile-navigation-ready #user>span:not(.avatar){display:none}
 .mobile-navigation-ready .page-body{padding:24px 16px calc(32px + env(safe-area-inset-bottom));min-width:0}
 .mobile-navigation-ready .page-body>header{margin-bottom:20px}
 .mobile-navigation-ready .page-body h1{font-size:clamp(23px,5.7vw,30px);line-height:1.25;overflow-wrap:anywhere}
 .mobile-navigation-ready .home-greeting{font-size:24px;line-height:1.3}
 .mobile-navigation-ready :is(input:not([type=checkbox]):not([type=radio]),textarea,select){font-size:16px!important;max-width:100%;box-sizing:border-box}
}
@media(max-width:760px){
 html{scroll-padding-top:84px}
 .wrap{width:calc(100% - 32px)}
 .public-header.mobile-header-ready{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto auto;width:100%;min-height:72px;padding:12px 16px;margin:0;gap:8px;position:sticky;top:0;z-index:90;background:#111113;border-bottom:1px solid #ffffff12}
 .public-header.mobile-header-ready>.wordmark{grid-column:1;grid-row:1;font-size:19px;gap:8px;white-space:nowrap}
 .public-header.mobile-header-ready>.wordmark img{width:32px;height:32px}
 .public-header.mobile-header-ready>.language-switch{grid-column:2;grid-row:1;margin:0}
 .public-header.mobile-header-ready>.mobile-menu-toggle{grid-column:3;grid-row:1;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;border:1px solid #343034;border-radius:10px;background:#1a191c;color:#eee}
 .public-header.mobile-header-ready>nav,.public-header.mobile-header-ready>.button{display:none}
 .public-header.mobile-public-open>nav{display:flex;grid-column:1/-1;grid-row:2;flex-direction:column;align-items:stretch;gap:4px;margin:6px 0 0;padding:10px 0;border-top:1px solid #ffffff10}
 .public-header.mobile-public-open>nav a{display:flex;align-items:center;min-height:44px;padding:6px 12px;box-sizing:border-box;border-radius:8px;font-size:15px}
 .public-header.mobile-public-open>nav a:is(:hover,:focus-visible){background:#ffffff08}
 .public-header.mobile-public-open>.button{display:flex;grid-column:1/-1;grid-row:3;width:100%;min-height:46px;margin:0 0 4px;box-sizing:border-box;justify-content:center;font-size:14px}
 .mobile-public-nav{display:none!important}
 .language-trigger{min-width:62px;height:44px}
 .marketing .hero{padding-block:34px 36px;gap:12px}
 .marketing .hero h1{font-size:clamp(31px,8.3vw,46px);line-height:1.12;letter-spacing:-1px;margin-bottom:22px;overflow-wrap:normal}
 .marketing .hero-description{font-size:16px;line-height:1.7;margin-bottom:24px}
 .marketing .hero-actions{display:flex;flex-direction:column;gap:10px;margin-top:0}
 .marketing .hero-actions .button{width:100%;min-height:48px;box-sizing:border-box;padding:13px 16px;font-size:14px}
 .marketing .command-chips{flex-wrap:wrap;gap:7px;margin-top:20px}
 .marketing .hero-art{max-width:100%;width:auto;padding:0}
 .hero-avatar{--tile-size:min(220px,62vw);padding:24px 12px 12px}
 .marketing .hero-tile{animation:none}
 .marketing .features{padding-block:22px 32px}
 .marketing .section-intro h2,.marketing .start-section h2,.marketing .faq-intro h2{font-size:28px;line-height:1.2;letter-spacing:-.6px}
 .marketing .module-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 .marketing .module-grid article,.marketing .module-grid article:nth-child(n){grid-column:auto;padding:20px;min-width:0}
 .marketing .module-grid h3,.marketing .module-grid article:nth-child(n) h3{font-size:18px;line-height:1.4}
 .marketing .module-grid p{font-size:14px;line-height:1.65}
 .marketing .module-heading{gap:12px}
 .marketing .start-section{padding:28px 20px;border-radius:14px}
 .marketing .faq-section{padding-block:36px;gap:24px}
 .site-footer-inner{gap:24px!important;padding-block:28px!important}
 .site-footer nav a{min-height:36px;display:inline-flex;align-items:center}
 .server-portal .hub-header{flex-wrap:wrap;min-height:72px;padding-block:12px;gap:8px}
 .server-portal .hub-header>.wordmark{flex:1}
 .server-portal .hub-header .account{gap:6px;margin-left:0}
 .server-portal .hub-header .account .button{min-height:40px;padding:8px}
 .server-portal .hub-header>.language-switch{margin:0}
 .server-portal .hub-main{padding-top:24px}
 .server-portal .hub-intro h1{font-size:28px;line-height:1.2}
 .server-portal .hub-filters{display:flex;min-width:0;width:100%;box-sizing:border-box;overflow:auto}
 .server-portal .hub-filters button{min-height:44px;white-space:nowrap}
 .server-portal .search-box{min-width:0}
 .server-portal .search-box input{font-size:16px}
 .server-portal .guild-link{min-height:156px;padding:18px}
 .server-portal .guild-card-head{margin-bottom:18px}
 .catalog .commands-page{padding-top:26px}
 .catalog .catalog-layout{display:block}
 .catalog .catalog-sidebar{position:static;margin-bottom:20px}
 .catalog .catalog-sidebar nav{flex-wrap:nowrap;overflow:auto;padding:6px;gap:4px;scrollbar-width:thin}
 .catalog .catalog-sidebar nav button{flex:none;min-height:44px;white-space:nowrap;font-size:13px;padding:9px 12px}
 .catalog .command-card{border-radius:12px}
 .catalog .command-description{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
 .catalog .command-body dl{grid-template-columns:minmax(0,1fr)}
 .catalog .command-body dd{margin-left:0;overflow-wrap:anywhere}
 .catalog .command-usage{overflow:auto;max-width:100%;box-sizing:border-box}
 .docs-header{padding:12px 16px;gap:10px;box-sizing:border-box}
 .docs-layout{padding-inline:16px}
 .docs-search input{font-size:16px}
 .docs-menu>summary{min-height:44px;box-sizing:border-box;padding-block:12px}
 .docs-pagination{grid-template-columns:minmax(0,1fr);display:grid}
 .docs-pagination a{min-height:44px;box-sizing:border-box}
 .docs-table{display:block;overflow:auto;max-width:100%;font-size:12px}
 .owner-main{min-width:0}
 .owner-metrics,.owner-diagnostics dl{grid-template-columns:minmax(0,1fr)!important}
 .owner-guild-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
 .owner-guild-identity{min-width:0}
 .owner-guild-identity strong{overflow-wrap:anywhere}
 .owner-update{flex-wrap:wrap;gap:12px}
 .mobile-navigation-ready .home-hero{padding:20px;border-radius:14px}
 .mobile-navigation-ready .home-cards{grid-template-columns:minmax(0,1fr);gap:12px}
 .mobile-navigation-ready .home-module{min-height:112px;padding:18px}
 .mobile-navigation-ready :is(input:not([type=checkbox]):not([type=radio]),textarea,select){font-size:16px!important;max-width:100%;box-sizing:border-box}
 .mobile-navigation-ready :is(.field,.fset,.card,.data-panel,.preview,.form-grid,.settings-grid){min-width:0;max-width:100%;box-sizing:border-box}
 .mobile-navigation-ready .field>label{overflow-wrap:anywhere}
 .mobile-navigation-ready :is(.row,.listitem,.save-toolbar,.action-buttons,.toolbar){flex-wrap:wrap;gap:10px}
 .mobile-navigation-ready :is(.save-toolbar,.command-access-save)>button{min-height:44px;flex:1 1 130px;white-space:normal}
 .mobile-navigation-ready :is(.save-toolbar,.command-access-save){bottom:max(10px,env(safe-area-inset-bottom));padding:12px}
 .mobile-navigation-ready .role-picker-trigger{min-height:44px;max-width:100%;font-size:14px}
 .role-picker-menu{max-width:calc(100vw - 24px);box-sizing:border-box}
 .mobile-navigation-ready .preview{position:static}
 .mobile-navigation-ready .preview-message{padding:14px;grid-template-columns:32px minmax(0,1fr);column-gap:10px}
 .mobile-navigation-ready .preview-avatar{width:32px;height:32px}
 .mobile-navigation-ready .preview-embed{max-width:100%;overflow-wrap:anywhere}
 .mobile-navigation-ready .page-body :is(button,summary){touch-action:manipulation}
 .mobile-navigation-ready .filter-card{min-height:96px}
 .mobile-navigation-ready .filter-grid,.mobile-navigation-ready .filter-grid.secondary{grid-template-columns:minmax(0,1fr)}
 dialog{max-width:calc(100vw - 32px);box-sizing:border-box;padding:20px}
 dialog :is(.dialog-actions,.logout-actions){flex-wrap:wrap;gap:10px}
 dialog button{min-height:44px}
}
@media(max-width:360px){.public-header.mobile-header-ready>.wordmark{font-size:17px;gap:6px}.public-header.mobile-header-ready{padding-inline:12px}.mobile-navigation-ready .topbar{padding-inline:8px;gap:6px}.mobile-navigation-ready .topbar-symbol{display:none}}
@media(prefers-reduced-motion:reduce){.mobile-navigation-ready #shell>aside{transition:none}}
