/* Site-wide responsive safety layer */
html{overflow-x:hidden}body{max-width:100%;overflow-x:clip}body.mobile-menu-open{overflow:hidden;touch-action:none}*,*::before,*::after{min-width:0}pre,code{max-width:100%;overflow-wrap:anywhere}pre{overflow-x:auto}iframe,video,canvas,svg,img{max-width:100%}table{max-width:100%}.container{width:min(100% - 2rem,1180px)}.mobile-menu-toggle,.mobile-menu{display:none}

@media(max-width:1120px){
  .nav-actions>.notification-link,.nav-actions>.create-button,.nav-actions>.profile-pill,.nav-actions>.link-button,.nav-actions>form.inline,.nav-actions>a.btn{display:none!important}
  .navbar-inner{grid-template-columns:auto minmax(160px,1fr) auto auto!important;gap:.6rem!important}.mobile-menu-toggle{position:relative;display:grid;width:2.55rem;height:2.55rem;place-content:center;gap:4px;padding:0;border:1px solid var(--border);border-radius:14px;color:var(--text);background:var(--surface-strong);box-shadow:var(--shadow-sm);cursor:pointer}.mobile-menu-toggle span{display:block;width:18px;height:2px;border-radius:4px;background:currentColor;transition:transform .38s cubic-bezier(.2,.85,.25,1),opacity .2s,width .25s}.mobile-menu-toggle span:nth-child(2){width:13px;margin-left:auto}.mobile-menu-toggle.is-open span:nth-child(1){transform:translateY(6px) rotate(45deg)}.mobile-menu-toggle.is-open span:nth-child(2){width:0;opacity:0}.mobile-menu-toggle.is-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .mobile-menu[hidden]{display:none}.mobile-menu{position:fixed;z-index:180;inset:0;display:block}.mobile-menu-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(5,8,22,.58);opacity:0;backdrop-filter:blur(0);transition:opacity .32s ease,backdrop-filter .32s ease}.mobile-menu-sheet{position:absolute;top:0;right:0;width:min(90vw,390px);height:100dvh;display:flex;flex-direction:column;overflow:hidden;padding:1rem;border-left:1px solid var(--border);border-radius:28px 0 0 28px;color:var(--text);background:color-mix(in srgb,var(--surface-strong) 96%,transparent);box-shadow:-28px 0 70px rgba(5,8,22,.28);transform:translateX(104%) scale(.98);transform-origin:right center;transition:transform .42s cubic-bezier(.2,.86,.24,1);backdrop-filter:blur(24px)}.mobile-menu.is-open .mobile-menu-backdrop{opacity:1;backdrop-filter:blur(8px)}.mobile-menu.is-open .mobile-menu-sheet{transform:translateX(0) scale(1)}
  .mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding:.25rem .2rem 1rem}.mobile-menu-head>div{display:grid}.mobile-menu-head small{color:var(--primary);font-size:.68rem;font-weight:900;letter-spacing:.13em}.mobile-menu-head strong{font-size:1.25rem}.mobile-menu-head>button{width:2.7rem;height:2.7rem;border:0;border-radius:50%;color:var(--text);background:var(--surface-muted);font-size:1.65rem;line-height:1;transition:transform .3s ease,background .2s}.mobile-menu-head>button:hover{background:color-mix(in srgb,var(--primary) 15%,var(--surface));transform:rotate(90deg)}
  .mobile-menu-profile{display:grid;grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.75rem;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:19px;color:var(--text);background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,var(--surface)),color-mix(in srgb,var(--primary-2) 8%,var(--surface)))}.mobile-menu-profile>span{display:grid;width:3rem;height:3rem;place-items:center;border-radius:15px;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));font-weight:900}.mobile-menu-profile div{display:grid}.mobile-menu-profile small{color:var(--text-muted)}.mobile-menu-profile>b{font-size:1.6rem;color:var(--primary)}
  .mobile-menu-links{flex:1;display:grid;align-content:start;gap:.28rem;overflow-y:auto;padding:.2rem .1rem}.mobile-menu-links>a{display:grid;grid-template-columns:2.6rem minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.65rem;border-radius:16px;color:var(--text);opacity:0;transform:translateX(30px);transition:background .2s ease,transform .38s cubic-bezier(.2,.85,.25,1),opacity .3s ease}.mobile-menu.is-open .mobile-menu-links>a{opacity:1;transform:none}.mobile-menu.is-open .mobile-menu-links>a:nth-child(2){transition-delay:.035s}.mobile-menu.is-open .mobile-menu-links>a:nth-child(3){transition-delay:.07s}.mobile-menu.is-open .mobile-menu-links>a:nth-child(4){transition-delay:.105s}.mobile-menu.is-open .mobile-menu-links>a:nth-child(5){transition-delay:.14s}.mobile-menu.is-open .mobile-menu-links>a:nth-child(6){transition-delay:.175s}.mobile-menu-links>a:hover,.mobile-menu-links>a:focus-visible{background:color-mix(in srgb,var(--primary) 11%,var(--surface-muted));transform:translateX(4px)}.mobile-menu-links>a>span{display:grid;width:2.6rem;height:2.6rem;place-items:center;border-radius:13px;color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,var(--surface));font-size:1.15rem;font-weight:900}.mobile-menu-links div{display:grid}.mobile-menu-links small{color:var(--text-muted);font-size:.75rem}.mobile-menu-links em{min-width:1.45rem;padding:.18rem .38rem;border-radius:99px;color:#fff;background:#ef4444;text-align:center;font-size:.7rem;font-style:normal}.mobile-menu-logout{padding-top:.75rem;border-top:1px solid var(--border)}.mobile-menu-logout button{display:flex;width:100%;align-items:center;justify-content:space-between;padding:.8rem 1rem;border:0;border-radius:15px;color:#ef476f;background:color-mix(in srgb,#ef476f 9%,var(--surface));font-weight:800}
  .hero-grid{grid-template-columns:1fr!important}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))!important}.stats-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}.profile-library-panel,.member-search-grid{grid-template-columns:1fr!important}.footer-inner{flex-wrap:wrap}.admin-grid{grid-template-columns:1fr!important}
}

@media(max-width:720px){
  html.mobile-overlay-locked,body.mobile-overlay-locked{overflow:hidden!important;overscroll-behavior:none!important}
  .chat-private-composer{align-items:center}.chat-private-composer textarea{height:40px!important;min-height:40px!important;max-height:96px;padding:9px 10px!important}
  #report-dialog{padding:.5rem!important}#report-dialog .report-modal{width:calc(100% - 1rem);max-height:calc(100dvh - 1rem);margin:.5rem;padding:1.25rem!important;border-radius:22px!important;overflow-y:auto!important}#report-dialog .report-modal h2{padding-right:2.5rem}#report-dialog .report-modal form,#report-dialog .report-modal label{width:100%}#report-dialog .report-modal textarea{width:100%;box-sizing:border-box}#report-dialog .modal-actions{gap:.65rem;margin-top:1rem}
  .navbar .navbar-inner{grid-template-columns:minmax(0,1fr) repeat(4,auto)!important}
  :root{--mobile-gutter:.85rem}.container{width:calc(100% - (var(--mobile-gutter) * 2))}.section{padding-top:1.25rem;padding-bottom:1.25rem}.navbar{padding:.55rem 0}.navbar-inner{grid-template-columns:minmax(0,1fr) auto auto auto!important;gap:.42rem!important}.brand span:last-child{font-size:.95rem}.brand-mark{width:2.3rem!important;height:2.3rem!important}.navbar-search{order:5!important;grid-column:1/-1!important;width:100%;height:2.85rem!important}.nav-actions{display:contents!important}.nav-actions>.language-picker{grid-column:2}.nav-actions>.theme-switch{grid-column:3}.nav-actions>.chat-nav-button{grid-column:4}.nav-actions>a,.nav-actions>form,.nav-actions>.notification-link{display:none!important}.mobile-menu-toggle{grid-column:5;grid-row:1}.language-trigger{min-height:2.4rem;padding:.4rem .58rem}.language-menu{position:fixed;top:4rem;right:.8rem}.theme-switch,.chat-nav-button,.mobile-menu-toggle{width:2.45rem!important;height:2.45rem!important;flex-basis:2.45rem!important}.mobile-menu-sheet{width:min(94vw,390px);padding:.8rem;border-radius:24px 0 0 24px}
  .hero-surface,.card,.profile-hero,.profile-library,.topic-surface,.reply-composer,.community-card{border-radius:20px!important}.hero-surface,.topic-surface{padding:1rem!important}.section-title,.reply-list-toolbar,.profile-library-head,.profile-actions{align-items:stretch!important;flex-direction:column!important}.section-title h1{font-size:clamp(1.65rem,8vw,2.25rem)}.hero h1{font-size:clamp(2.2rem,12vw,3.6rem)}.grid-3,.card-grid,.stats-row{grid-template-columns:1fr!important}.quick-actions,.topic-actions,.profile-actions,.form-actions{flex-wrap:wrap}.btn{max-width:100%;white-space:normal}.topic-heading-row{align-items:flex-start;gap:.75rem}.topic-author-avatar{flex-basis:3.2rem;width:3.2rem;height:3.2rem;border-radius:16px}.topic-heading-copy h1{font-size:clamp(1.55rem,8vw,2.15rem)}.topic-meta{font-size:.8rem}.topic-meta>span+span::before{display:none}.topic-content-panel{overflow-wrap:anywhere}.reply-filter-group,.profile-library-tabs{width:100%;overflow-x:auto;scrollbar-width:none}.reply-filter-group::-webkit-scrollbar,.profile-library-tabs::-webkit-scrollbar{display:none}.reply-filter,.profile-library-tabs button{flex:1 0 auto}.member-search-card{grid-template-columns:3.1rem minmax(0,1fr)}.member-search-stats{display:none}.achievement-panel-head{align-items:stretch;flex-direction:column}.achievement-card{min-width:0;flex:1 1 140px}.xp-progress>div{flex-wrap:wrap}.profile-follower-row{align-items:flex-start}.profile-follower-row .btn{font-size:.72rem}.search-page .search-input{font-size:16px}.chat-panel{max-width:100vw!important}.chat-panel-header{padding:14px}.chat-tabs{overflow-x:auto}.chat-message{max-width:100%;overflow:hidden}.chat-message>div{overflow-wrap:anywhere}.chat-image-lightbox{padding:58px 8px 8px}.toast-stack{top:auto;right:.75rem;bottom:.75rem;width:calc(100vw - 1.5rem)}
  .footer-inner{display:grid!important;gap:1rem}.footer-links{display:flex;flex-wrap:wrap;gap:.75rem}form input,form textarea,form select{max-width:100%;font-size:16px}table{display:block;width:100%;overflow-x:auto;white-space:nowrap}.route-skeleton-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.route-skeleton-detail,.route-skeleton-profile{border-radius:20px}
}

@media(max-width:420px){.container{width:calc(100% - 1rem)}.navbar-inner{gap:.3rem!important}.brand span:last-child{display:none}.brand-mark{width:2.35rem!important;height:2.35rem!important}.language-trigger{padding:.35rem .5rem}.mobile-menu-sheet{width:100%;border-left:0;border-radius:0}.topic-author-avatar{flex-basis:2.85rem;width:2.85rem;height:2.85rem}.topic-heading-copy h1{font-size:1.55rem}.profile-followers-dialog{height:88dvh}.account-type-options{grid-template-columns:1fr!important}}

@media(prefers-reduced-motion:reduce){.mobile-menu *{transition-duration:.01ms!important;animation-duration:.01ms!important}.mobile-menu-toggle span{transition-duration:.01ms!important}}
