/* Stable controls and geometry across theme font changes. */
html{overflow-x:clip}body{min-width:320px}button,input,select,textarea{touch-action:manipulation}button:disabled{cursor:default}nav .nav,.theme-button,.account-button,.catalog-filter-panel summary,.catalog-filter-label,.catalog-filter-panel select,.catalog-controls button,.search input,.catalog-status,.community-tabs button{font-family:'DM Sans',system-ui,sans-serif!important}.nav{min-height:40px;font-size:12px!important;line-height:18px;white-space:nowrap}.theme-button{width:80px;height:40px;flex-shrink:0;justify-content:center;font-size:10px!important;padding:8px}.account-button{width:125px;height:40px;font-size:11px!important;overflow:hidden;text-overflow:ellipsis}.catalog-upgraded #filters,.catalog-upgraded #catalog-note{display:none!important}.catalog-upgraded .section-head{align-items:center}.catalog-upgraded .search{width:min(420px,46%);height:46px;position:relative;flex-shrink:0}.catalog-upgraded .search input{font-size:15px;line-height:22px;height:44px;width:100%;padding:10px 0}.catalog-upgraded .search kbd{display:none}.clear-search{font:22px/1 system-ui!important;border:0;background:none;color:var(--muted);padding:9px;flex-shrink:0}.catalog-filter-panel{border:1px solid var(--line);background:var(--panel);margin:22px 0 15px}.catalog-filter-panel summary{cursor:pointer;padding:13px 16px;color:var(--text);font-size:13px;line-height:20px;min-height:46px;list-style:none;display:flex;justify-content:space-between;align-items:center}.catalog-filter-panel summary:after{content:'+';font-size:22px;color:var(--mint)}.catalog-filter-panel[open] summary{border-bottom:1px solid var(--line)}.catalog-filter-panel[open] summary:after{content:'−'}.catalog-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:15px;align-items:end;padding:16px}.catalog-filter-label{display:flex;flex-direction:column;gap:8px;font-size:11px;color:var(--muted);min-width:0}.catalog-filter-panel select{width:100%;min-width:0;height:44px;background:var(--bg);color:var(--text);border:1px solid var(--line);padding:9px 10px;font-size:14px;line-height:22px}.catalog-filter-panel select:disabled{opacity:.65}.catalog-filter-panel .text-button{height:44px;padding:10px;font-size:12px}.catalog-filter-hint{margin:0;padding:0 16px 15px;font:11px/1.7 'DM Sans',system-ui;color:var(--muted)}.catalog-upgraded .toolbar{justify-content:flex-end;margin:0 0 17px}.catalog-controls{margin:0}.catalog-upgraded .catalog-controls button{font-size:11px;line-height:20px;min-height:40px;padding:9px 14px}.catalog-upgraded .catalog-status{font-size:12px;line-height:20px;min-height:38px}.game-skeleton>div{aspect-ratio:2/3;background:var(--panel);border:1px solid var(--line);animation:skeleton-pulse 1.3s ease-in-out infinite alternate}.game-skeleton i{display:block;width:80%;height:10px;background:var(--line);margin-top:13px}.game-skeleton i:last-child{width:45%;height:7px;margin-top:8px}@keyframes skeleton-pulse{to{opacity:.4}}.game-stores{padding:17px;border:1px solid var(--line);background:var(--bg)}.game-stores h3{font:8px/1.8 var(--heading-font);color:var(--mint);margin:0 0 13px}.store-buttons{display:flex;flex-wrap:wrap;gap:8px}.store-link{border:1px solid var(--line);padding:10px 12px;font:12px 'DM Sans',system-ui;color:var(--text);min-height:40px;line-height:20px}.store-link:hover{border-color:var(--mint);color:var(--mint)}.game-stores p{font:10px/1.8 var(--reading-font);color:var(--muted);margin:11px 0 0}.community-tabs{display:flex;border-bottom:1px solid var(--line);margin:0 0 26px}.community-tabs button{min-width:100px;height:44px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font-size:14px}.community-tabs button.selected{border-bottom-color:var(--mint);color:var(--text)}.feed-scopes{display:flex;gap:9px;margin:0 0 18px}.feed-scopes .chip{font:12px 'DM Sans',system-ui}.follow-counts{display:flex;gap:23px;padding:21px 28px 0}.follow-counts button{border:0;background:none;color:var(--muted);padding:0;font:12px 'DM Sans',system-ui}.follow-counts button:hover{color:var(--mint)}.follow-button{background:var(--mint);color:var(--on);border:1px solid var(--mint);padding:10px 14px;font:600 12px 'DM Sans',system-ui;min-height:40px;white-space:nowrap}.follow-button:disabled{opacity:.6}.players-search{display:flex;align-items:center;gap:12px;padding:0 14px;background:var(--panel);border:1px solid var(--line);max-width:500px;margin-bottom:25px;color:var(--green)}.players-search>span{font-size:23px}.players-search input{width:100%;height:46px;border:0;background:none;color:var(--text);outline:0;font:15px 'DM Sans',system-ui}.players-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.directory-player{min-width:0;padding:23px;background:var(--panel);border:1px solid var(--line);display:flex;align-items:flex-start;flex-direction:column;gap:14px}.directory-handle{font:13px var(--data-font);color:var(--muted);margin:0}.directory-bio{font:12px/1.8 var(--reading-font);color:var(--text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0;overflow-wrap:anywhere}.directory-count{font:11px 'DM Sans',system-ui;color:var(--muted);margin-top:auto}.directory-player .follow-button{width:100%}#more-players{display:block;margin:25px auto}.install-app,.apk-download{font:12px 'DM Sans',system-ui;border:1px solid var(--line);padding:10px 12px;background:var(--panel);color:var(--mint);white-space:nowrap}.install-dialog{width:min(470px,calc(100% - 24px));padding:30px}.install-dialog p{font:13px/1.9 'DM Sans',system-ui;color:var(--muted)}.install-dialog .primary{display:inline-block;margin-top:12px;font-size:8px}.offline-banner{position:fixed;left:0;right:0;bottom:0;background:var(--green);color:var(--on);font:12px/1.7 'DM Sans',system-ui;padding:10px 20px;text-align:center;z-index:45}.hero-news{height:365px;min-height:365px}.hero-news .hero-content{height:100%;padding-bottom:65px}.hero-news h1,[data-theme=synth] .hero-news h1,[data-theme=light] .hero-news h1{font-size:18px!important;line-height:28px!important;height:84px;max-height:84px;-webkit-line-clamp:3}.hero-news .hero-content>p{height:44px;line-height:22px!important;margin-bottom:17px}.news-footer{height:49px}.news-actions{height:42px}.favorite-game .game-title{height:36px;line-height:18px}.profile-editor,.account-dialog,.public-list-dialog,.install-dialog,#game-dialog,#list-dialog{max-height:calc(100dvh - 28px);overscroll-behavior:contain}.profile-editor input,.profile-editor select{min-height:44px}footer{flex-wrap:wrap;row-gap:15px}footer span:last-child{margin-left:0}
@media(max-width:1050px){header{gap:10px}header .brand{font-size:12px}.nav{padding:10px 8px!important;font-size:11px!important}.theme-button{width:72px}.account-button{width:108px}.catalog-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-filter-grid>.text-button{grid-column:1/-1;justify-self:start;height:34px;padding:5px 0}.players-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px));-webkit-text-size-adjust:100%}header{position:sticky;top:0;z-index:20;display:grid!important;grid-template-columns:minmax(0,1fr) 73px 102px;gap:8px!important;height:calc(66px + env(safe-area-inset-top,0px))!important;min-height:0;padding:calc(12px + env(safe-area-inset-top,0px)) 16px 12px!important;align-items:center;background:var(--bg);border-bottom:1px solid var(--line)}header:before{content:'';position:absolute;top:0;left:0;right:0;height:env(safe-area-inset-top,0px);background:#12141f}header .brand{min-width:0;white-space:nowrap;font-size:10px!important;gap:6px!important;letter-spacing:-.7px!important;overflow:hidden}header .flag-logo{height:28px;width:22px}header .beta{display:none}.theme-button,.account-button{order:0!important;margin:0!important;min-width:0;max-width:none;width:100%;height:40px;padding:8px!important;font-size:10px!important;line-height:20px!important;overflow:hidden;text-overflow:ellipsis}.theme-button{gap:5px}.theme-button b{font-weight:600}.theme-button span{height:7px;width:7px;flex-shrink:0}.account-button{box-shadow:none}
 nav{position:fixed!important;left:0;right:0;bottom:0;z-index:30;width:100%!important;height:calc(68px + env(safe-area-inset-bottom,0px))!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:0!important;padding:4px 8px calc(4px + env(safe-area-inset-bottom,0px));background:var(--panel);border-top:1px solid var(--line);margin:0!important;order:0!important;box-shadow:0 -6px 22px #0002}nav .nav{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;width:100%;height:58px;min-height:58px;font-size:10px!important;line-height:15px!important;font-weight:500;padding:6px 2px!important;border:0!important;background:none!important;box-shadow:none!important;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;position:relative}nav .nav:before{content:attr(data-icon);display:block;font:22px/24px 'DM Sans',system-ui;color:inherit}nav .nav.active{color:var(--mint)!important}nav .nav.active:after{display:block!important;content:'';position:absolute;left:22%;right:22%;top:0;bottom:auto;height:2px;background:var(--mint)}nav .nav:active{transform:none}
 main{padding:18px 16px 0!important;max-width:none}.hero-news{height:360px;min-height:360px;margin-top:0}.hero-news .hero-content{padding:21px 20px 70px}.hero-news h1,[data-theme=synth] .hero-news h1,[data-theme=light] .hero-news h1{font-size:16px!important;line-height:25px!important;height:75px;max-height:75px;margin:15px 0 12px!important}.hero-news .hero-content>p{font-size:12px!important;height:44px;line-height:22px!important;max-width:none;margin-bottom:14px!important}.hero-news .eyebrow{height:14px;line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:6px}.news-footer{height:50px;padding:10px 12px}.news-actions{gap:16px}.news-actions .primary{font-size:7px;padding:12px 10px;min-height:40px;white-space:nowrap}.news-actions .text-button{font:12px 'DM Sans',system-ui}.news-source{font:10px 'DM Sans',system-ui}.news-controls span{font:11px 'DM Sans',system-ui}
 .workspace{padding-top:27px}.catalog-upgraded .section-head{display:flex;align-items:stretch;flex-direction:column;gap:19px}.section-head h2{font-size:13px;line-height:23px;min-height:23px}.catalog-upgraded .search{width:100%!important;height:49px;background:var(--panel);gap:9px}.catalog-upgraded .search input{font-size:16px;height:47px;line-height:23px}.catalog-filter-panel{margin:12px 0 13px}.catalog-filter-panel summary{min-height:46px;padding:12px 14px}.catalog-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px}.catalog-filter-label:last-of-type{grid-column:1/-1}.catalog-filter-panel select{height:46px;font-size:16px;line-height:24px}.catalog-filter-hint{font-size:11px;padding:0 14px 14px}.catalog-upgraded .toolbar{margin-bottom:12px}.catalog-upgraded .catalog-controls{display:grid;grid-template-columns:1fr 1.5fr;width:100%;gap:10px}.catalog-upgraded .catalog-controls button{font-size:12px;line-height:20px;height:44px;padding:11px 10px;white-space:nowrap}.catalog-upgraded .catalog-status{font-size:11px;min-height:36px;padding-bottom:13px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.game-meta{font-size:13px;line-height:17px}.game-title{font-family:var(--reading-font);font-size:12px;line-height:18px;margin:10px 0 6px;min-height:18px}.hud{margin-top:20px}.hud-item{height:78px;padding:14px;gap:12px}.hud-number{font-size:13px!important;line-height:20px;min-height:20px}.hud-label{font:9px/13px 'DM Sans',system-ui!important}.hud-icon{width:24px;font-size:24px}.hud-level{width:44px;gap:3px}.hud-level i{width:6px;height:16px}.account-sync{font-size:11px;line-height:19px;padding-top:13px}
 dialog{max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;margin:auto;scrollbar-width:thin}dialog input,dialog select,dialog textarea{font-size:16px!important;line-height:23px}dialog label{font:12px/18px 'DM Sans',system-ui}.dialog-top h2,dialog h2{line-height:1.8}.dialog-actions .primary,.auth-submit{height:44px;min-height:44px;white-space:nowrap}.profile-editor .form-row{grid-template-columns:1fr}.favorite-inputs{grid-template-columns:1fr}.profile-editor select{height:46px}.player-actions .primary{height:42px;min-height:42px;line-height:20px}.player-name h2{font:700 20px/26px var(--reading-font)!important;letter-spacing:-.4px}.follow-counts{padding:20px 18px 0;gap:23px}.follow-counts button{min-height:32px;font-size:12px}.player-actions .follow-button{font-size:12px;min-height:42px}.players-grid{grid-template-columns:1fr;gap:14px}.directory-player{padding:21px}.players-search{max-width:none}.players-search input{font-size:16px}.community-tabs button{font-size:14px;height:46px}.feed-scopes .chip{font-size:12px;padding:9px 12px}.social-page .feed-toolbar .chip{font:11px 'DM Sans',system-ui;padding:8px 10px}.social-page-head h1{font-size:17px!important;line-height:1.8!important;height:auto!important}.social-page-head .eyebrow{font-size:6px;line-height:2}.feed-toolbar{gap:10px}.post-review,.directory-bio{font:13px/1.9 var(--reading-font)}.public-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.post-cover{width:55px;height:83px}.store-link{min-height:44px;padding:11px 12px;font-size:13px}.game-stores{padding:15px}.game-stores h3{font-size:7px}.game-stores p{font-size:11px}.install-app,.apk-download{font-size:12px;min-height:44px}.offline-banner{bottom:calc(68px + env(safe-area-inset-bottom,0px));font-size:11px;padding:9px 12px}footer{padding-bottom:16px}.preview-posts{grid-template-columns:1fr}.install-dialog .primary{font-size:7px;line-height:20px;padding:12px}.favorite-heading h3{font-size:8px}
}
@media(min-width:761px){nav .nav:before{display:none}}
@media(prefers-reduced-motion:reduce){.game-skeleton>div{animation:none}}
