/* Mobile-only presentation. No pricing, requests, model routing or desktop layout changes. */
.am-mobile-switch,.am-mobile-close {display:none;}
.am-table-scroll {display:contents;}
@media (max-width:820px), (max-height:520px) and (pointer:coarse) {
  html:has(body[data-mobile-page]) {min-width:0;scroll-padding-top:64px;}
  body[data-mobile-page] {min-width:0;max-width:100%;--am-safe:env(safe-area-inset-bottom,0px);--am-view:100dvh;-webkit-text-size-adjust:100%;}
  body[data-mobile-page] *,body[data-mobile-page] *::before,body[data-mobile-page] *::after {box-sizing:border-box;}
  body[data-mobile-page] :is(input,textarea,select):not([type=checkbox]):not([type=radio]):not([type=range]) {font-size:16px!important;max-width:100%;min-width:0;}
  body[data-mobile-page] :is(button,[role=button],summary) {touch-action:manipulation;}
  body[data-mobile-page] :is(button,summary),body[data-mobile-page] :is(nav,header,.toolbar) a {min-height:44px;}
  body[data-mobile-page] :is(button,a,input,select,textarea):focus-visible {outline:2px solid var(--accent,#367a28);outline-offset:2px;}
  body[data-mobile-page] :is(h1,h2,h3,p,.ce-note,.bf-panel-desc) {overflow-wrap:anywhere;}
  body[data-mobile-page] :is(pre,.table-wrap,.table-scroll,.am-table-scroll) {max-width:100%;overflow:auto;overscroll-behavior-x:contain;}
  .am-table-scroll {display:block;width:100%;min-width:0;-webkit-overflow-scrolling:touch;}
  .am-table-scroll:focus-visible {outline:2px solid var(--accent,#367a28);}
  body[data-mobile-page] :is(dialog,.modal-card,.dialog-card,.bf-modal-card,.build-config-card,.announcement-card,.wechat-auth-card) {max-width:calc(100vw - 16px)!important;max-height:calc(var(--am-view) - 24px)!important;overflow:auto;overscroll-behavior:contain;}
  body[data-mobile-page] dialog {padding:16px;padding-bottom:calc(16px + var(--am-safe));inset:var(--am-top,0px) 8px auto;margin:12px auto;}
  body[data-mobile-page] dialog:not([open]) {display:none!important;}
  body[data-mobile-page] :is(.modal,.bf-modal,.recharge-dialog,.build-config-dialog) {padding:8px;align-items:center;top:var(--am-top,0px);bottom:auto;height:var(--am-view);max-height:var(--am-view);}
  body[data-mobile-page] .modal>section {max-width:100%;max-height:calc(var(--am-view) - 24px);overflow:auto;}
  body[data-mobile-page] :is(.dialog-body,.account-dialog,.bf-modal-card) {min-width:0;}
  body[data-mobile-page] :is(.site-head,.studio-topbar,.bf-topbar,.activity-topbar) {height:auto;min-height:56px;gap:8px;padding:6px 10px;flex-wrap:wrap;}
  body[data-mobile-page] :is(.site-head,.studio-topbar,.bf-topbar,.activity-topbar) nav {gap:4px;min-width:0;flex-wrap:wrap;}
  body[data-mobile-page] :is(.site-head,.studio-topbar,.bf-topbar,.activity-topbar) a {display:inline-flex;align-items:center;justify-content:center;}
  body[data-mobile-page] .am-compact {position:relative;display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;width:44px;max-width:44px;min-height:44px;padding:0!important;font-size:0!important;gap:0!important;flex:none;}
  body[data-mobile-page] .am-compact>* {display:none!important;}
  body[data-mobile-page] .am-compact::before {content:attr(data-mobile-icon);font-size:20px;line-height:1;font-family:system-ui,sans-serif;}
  body[data-mobile-page] .am-compact::after {display:none!important;}
  body[data-mobile-page] .am-mobile-close {display:inline-flex;align-items:center;justify-content:center;width:44px;min-height:44px;border:1px solid var(--border,#ccc);border-radius:6px;background:var(--surface,#fff);color:var(--text,#222);font-size:22px;flex:none;}

  /* HX: bounded viewport, drawer contents accessible, keyboard never covers Send. */
  body[data-mobile-page=hx] .shell {height:var(--am-view);min-height:0;width:100%;margin:0;border-radius:0;}
  body[data-mobile-page=hx] .public-event-banner:not([hidden])~.shell {height:calc(var(--am-view) - var(--public-event-banner-h,40px));}
  body[data-mobile-page=hx] :is(.main,.project-view,.project-content,.chat-column,.hx-workspace-panel) {min-width:0;min-height:0;}
  body[data-mobile-page=hx] .topbar {height:56px;min-height:56px;padding:4px 8px;gap:4px;}
  body[data-mobile-page=hx] .topbar :is(.m-menu,.profile-avatar) {min-width:44px;min-height:44px;}
  body[data-mobile-page=hx] .topbar .balance-chip {max-width:84px;font-size:11px;padding:6px;}
  body[data-mobile-page=hx] .topbar .activity-link {min-width:40px;text-align:center;}
  body[data-mobile-page=hx] .m-title {min-width:0;}
  body[data-mobile-page=hx] .sidebar {padding-bottom:var(--am-safe);height:var(--am-view);max-height:var(--am-view);}
  body[data-mobile-page=hx] .sidebar>header {flex:none;gap:5px;}
  body[data-mobile-page=hx] .sidebar>header .am-mobile-close {margin-left:auto;}
  body[data-mobile-page=hx] .create-actions {flex:none;gap:8px;}
  body[data-mobile-page=hx] .project-actions {display:flex;flex-wrap:wrap;}
  body[data-mobile-page=hx] .project-actions button {min-width:36px;min-height:40px;}
  body[data-mobile-page=hx] .dock {padding:8px 8px calc(8px + var(--am-safe));}
  body[data-mobile-page=hx] #input {font-size:16px;min-height:60px;max-height:24dvh;}
  body[data-mobile-page=hx] .composer-bottom {gap:5px;align-items:center;}
  body[data-mobile-page=hx] :is(#sendButton,#micButton,#attachButton) {min-height:44px;min-width:44px;flex:none;}
  body[data-mobile-page=hx] :is(.model-switch,.model-switch-trigger) {min-height:44px;min-width:0;max-width:calc(100vw - 150px);}
  body[data-mobile-page=hx] .model-switch-menu,body[data-mobile-page=hx] .add-menu {max-height:calc(var(--am-view) - 88px);bottom:calc(10px + var(--am-safe) + var(--m-keys,0px));overflow:auto;}
  body[data-mobile-page=hx] .assets-panel {max-height:calc(var(--am-view) - 60px);padding-bottom:var(--am-safe);bottom:var(--m-keys,0px);}
  body[data-mobile-page=hx] .assets-head {flex-wrap:wrap;}
  body[data-mobile-page=hx] .m-assets {min-height:44px;}
  body[data-mobile-page=hx] .composer-note {display:none;}
  body[data-mobile-page=hx] .hx-workspace-frames {min-width:0;}
  body[data-mobile-page=hx] .shell.hx-model-open #sidebar {width:48px!important;min-width:48px!important;max-width:48px!important;flex:0 0 48px!important;padding:8px 2px;}
  body[data-mobile-page=hx] .shell.hx-model-open .create-actions :is(a,button) {width:44px;height:48px;min-width:44px;min-height:48px;}
  body[data-mobile-page=hx] .shell.hx-model-open .hx-model-history {left:48px;width:calc(100% - 48px);max-width:340px;}
  body[data-mobile-page=hx] .shell.hx-model-open .hx-model-history-scrim {left:48px;}
  body[data-mobile-page=hx] .shell.hx-model-manual #sidebar {width:0!important;min-width:0!important;max-width:0!important;flex-basis:0!important;padding:0!important;}
  body[data-mobile-page=hx] .hx-history-return {padding:12px;}

  /* Texture: same MC components, compact top row and phone canvas/chat tabs. */
  html body[data-mobile-page=texture].tw-page {height:var(--am-view);min-height:0;}
  html body[data-mobile-page=texture] .studio-topbar {height:auto;min-height:52px;flex-wrap:wrap;padding:4px 8px;gap:5px;}
  html body[data-mobile-page=texture] .studio-brand {min-width:0;flex:1;}
  html body[data-mobile-page=texture] .studio-brand small,html body[data-mobile-page=texture] .studio-independent {display:none;}
  html body[data-mobile-page=texture] .tw-toolbar {order:10;flex:1 0 100%;width:100%;gap:4px;padding:0;flex-wrap:wrap;}
  html body[data-mobile-page=texture] .tw-tabs {gap:1px;min-width:0;flex:1;}
  html body[data-mobile-page=texture] .tw-tabs button {min-height:44px;padding:5px 7px;font-size:12px;white-space:nowrap;}
  html body[data-mobile-page=texture] .tw-tools {gap:2px;}
  html body[data-mobile-page=texture] .cv-work-nav {padding:4px 8px;gap:4px;min-height:44px;flex-wrap:wrap;}
  html body[data-mobile-page=texture] .cv-work-nav:has(.cv-home[hidden]) {position:static;justify-content:flex-end;min-height:44px;}
  html body[data-mobile-page=texture] #tdPanel.ah-landing {padding:12px;overflow:auto;}
  html body[data-mobile-page=texture] .ah-home {gap:14px;margin:auto;}
  html body[data-mobile-page=texture] .ah-simple-hero h1 {font-size:22px;}
  html body[data-mobile-page=texture] .ah-simple-hero>p {margin-bottom:16px;}
  html body[data-mobile-page=texture] .ah-example {min-height:110px;}
  html body[data-mobile-page=texture] #tdPanel .ah-home #tdForm {padding:12px;gap:8px;}
  html body[data-mobile-page=texture] #tdInput {font-size:16px!important;min-height:56px;height:72px;}
  html body[data-mobile-page=texture] .td-attach label {min-height:44px;display:inline-flex;align-items:center;}
  html body[data-mobile-page=texture] .am-mobile-switch {display:flex;gap:6px;flex:none;min-height:44px;padding:0 8px 4px;background:var(--surface);}
  html body[data-mobile-page=texture] .am-mobile-switch button {flex:1;min-height:40px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);border-radius:4px;font-size:13px;}
  html body[data-mobile-page=texture] .am-mobile-switch button[aria-pressed=true] {background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent);font-weight:700;}
  html body[data-mobile-page=texture] #tdPanel.cv-work {display:flex;flex-direction:column;gap:0;padding:6px 8px;overflow:hidden;}
  html body[data-mobile-page=texture] #tdPanel.cv-work>.td-preview-column {flex:1;min-height:0;overflow:auto;}
  html body[data-mobile-page=texture] #tdPanel.cv-work .td-preview-stage {min-height:150px;flex:1;}
  html body[data-mobile-page=texture] #tdPanel.cv-work .td-preview-actions {display:flex;flex-wrap:wrap;}
  html body[data-mobile-page=texture] #tdPanel.cv-work .td-chat {flex:1;min-height:0;height:100%;}
  html body[data-mobile-page=texture] #tdPanel.cv-work .td-feed {min-height:0;max-height:none;flex:1;}
  html body[data-mobile-page=texture] #tdPanel.cv-work .td-chat-head {display:none;}
  html body[data-mobile-page=texture] #tdPanel.cv-work #tdForm {flex:none;padding:8px 10px calc(8px + var(--am-safe));}
  html body[data-mobile-page=texture][data-mobile-pane=chat] #tdPanel.cv-work>.td-preview-column,
  html body[data-mobile-page=texture][data-mobile-pane=canvas] #tdPanel.cv-work>.td-chat {display:none;}
  html body[data-mobile-page=texture] .cl-layout>.studio-right {height:260px;min-height:220px;}
  html body[data-mobile-page=texture] .studio-workspace {min-height:0;}
  html body[data-mobile-page=texture] .studio-monitor-head {flex-wrap:wrap;gap:4px;padding:6px 8px;}
  html body[data-mobile-page=texture] .studio-monitor-head small {max-width:140px;}
  html body[data-mobile-page=texture] .studio-submit-row {flex-wrap:wrap;}
  html body[data-mobile-page=texture] .studio-go {min-height:44px;}
  html body[data-mobile-page=texture] .tc-grid {grid-template-columns:1fr;}
  html body[data-mobile-page=texture] .tc-gallery-controls {flex-wrap:wrap;}
  html body[data-mobile-page=texture] .tc-scopes {flex-wrap:wrap;}
  html body[data-mobile-page=texture] .tw-library .studio-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  html body[data-mobile-page=texture] .tw-input-row {flex-wrap:wrap;}
  html body[data-mobile-page=texture] .tw-status-row {flex-wrap:wrap;}
  html body[data-mobile-page=texture] :is(.tw-dialog,.cv-folder,.cv-history-dialog) {width:calc(100vw - 16px);}

  /* Modeling: canvas and conversation remain usable even with the keyboard up. */
  html body[data-mobile-page=model].mw-redesign {height:var(--am-view);}
  html body[data-mobile-page=model] .mw-topbar {height:auto;min-height:52px;padding:4px;gap:2px;flex-wrap:wrap;overflow:visible;}
  html body[data-mobile-page=model] .mw-topbar .mw-rename {max-width:none;min-width:24px;}
  html body[data-mobile-page=model] .mw-topbar .mw-file-actions {gap:2px;max-width:100%;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;flex:1 0 100%;}
  html body[data-mobile-page=model] .mw-file-actions>* {flex:none;}
  html body[data-mobile-page=model] .mw-file-actions #download {order:-2;}
  html body[data-mobile-page=model] .mw-file-actions select {order:-1;}
  html body[data-mobile-page=model] .mw-file-actions select {width:94px;max-width:94px;min-width:0;}
  html body[data-mobile-page=model] .mw-topbar .mw-save {display:none;}
  html body[data-mobile-page=model] .mw-topbar .mw-versions-trigger {display:inline-flex;min-width:44px;}
  html body[data-mobile-page=model] .mw-canvas-footer {left:6px;right:6px;top:6px;justify-content:flex-end;flex-wrap:wrap;padding:2px;gap:0;}
  html body[data-mobile-page=model] .mw-canvas-footer button {padding:4px 7px;min-height:44px;}
  html body[data-mobile-page=model] .mw-canvas-footer select {max-width:95px;min-height:44px;}
  html body[data-mobile-page=model] #mwFull {grid-template-columns:1fr;grid-template-rows:minmax(100px,1fr) minmax(260px,48%);}
  html body[data-mobile-page=model] .mw-splitter {display:none;}
  html body[data-mobile-page=model] .mw-canvas-panel {grid-column:1;grid-row:1;}
  html body[data-mobile-page=model] .mw-create-panel {grid-column:1;grid-row:2;}
  html body[data-mobile-page=model] .mw-chat-head {display:none;}
  html body[data-mobile-page=model] .mw-model-stats {bottom:8px;}
  html body[data-mobile-page=model] .mw-composer {padding:6px 8px calc(8px + var(--am-safe));gap:4px;}
  html body[data-mobile-page=model] .mw-model-select {min-height:40px;}
  html body[data-mobile-page=model] .mw-prompt {font-size:16px!important;}
  html body[data-mobile-page=model] .mw-composer-footer {gap:4px;}
  html body[data-mobile-page=model] .mw-composer-footer>span {display:none;}
  html body[data-mobile-page=model] .mw-manual-return {bottom:calc(12px + var(--am-safe));min-height:44px;white-space:nowrap;max-width:95vw;}
  html body[data-mobile-page=model].am-keyboard #mwFull {grid-template-rows:0px minmax(0,1fr);}
  html body[data-mobile-page=model].mw-manual-mode #mwFull {grid-template-rows:minmax(0,1fr) 0px;}
  html body[data-mobile-page=model].mw-manual-mode .mw-topbar {height:0;min-height:0;padding:0;overflow:hidden;}
  html body[data-mobile-page=model].mw-intake .mw-create-panel {width:calc(100% - 20px);top:50%;max-height:calc(100% - 16px);}
  html body[data-mobile-page=model].mw-intake .mi-hero {padding:8px;min-height:90px;}
  html body[data-mobile-page=model].mw-intake .mi-hero-art {width:85px;height:90px;}
  html body[data-mobile-page=model].mw-intake .mi-hero h1 {font-size:23px;margin:8px 0;}
  html body[data-mobile-page=model].mw-intake .mi-hero p {font-size:12px;}
  html body[data-mobile-page=model] .mi-plan-dialog {border-radius:12px;}
  html body[data-mobile-page=model] .mi-plan-body {display:block;overflow:auto;}
  html body[data-mobile-page=model] :is(.mi-library,.mi-pool) {overflow:visible;min-height:0;padding:12px;}
  html body[data-mobile-page=model] .mi-cards {grid-template-columns:1fr;}
  html body[data-mobile-page=model] .mi-plan-footer {flex-wrap:wrap;padding:10px;gap:6px;}
  html body[data-mobile-page=model] .mi-plan-footer>button {min-height:44px;}

  /* Activity: four short tabs instead of four full-size intro cards. */
  html body[data-mobile-page=activity] .activity-shell {display:block;padding:8px 10px 30px;}
  html body[data-mobile-page=activity] .activity-rail {position:relative;top:0;display:block;margin-bottom:16px;}
  html body[data-mobile-page=activity] .activity-rail>:not(.activity-pick) {display:none;}
  html body[data-mobile-page=activity] .activity-pick {display:flex;gap:6px;overflow-x:auto;padding:3px 0 6px;scroll-snap-type:x proximity;}
  html body[data-mobile-page=activity] .activity-pick button {flex:0 0 auto;padding:10px;min-height:46px;scroll-snap-align:start;text-align:center;}
  html body[data-mobile-page=activity] .activity-pick button :is(small,em) {display:none;}
  html body[data-mobile-page=activity] .activity-pick b {font-size:13px;}
  html body[data-mobile-page=activity] :is(.layout,.game-layout,.games-layout,.games-grid,.hero-metrics,.checkin-layout) {grid-template-columns:minmax(0,1fr);}
  html body[data-mobile-page=activity] .hero {padding:12px 2px;}
  html body[data-mobile-page=activity] .hero h1 {font-size:24px;}
  html body[data-mobile-page=activity] :is(.video-url-row,.invite-row,.game-actions,.ce-filter) {flex-wrap:wrap;}
  html body[data-mobile-page=activity] :is(.video-url-row,.invite-row)>input {min-width:0;flex:1 1 160px;}
  html body[data-mobile-page=activity] :is(.ce-rules,.ce-box,.ce-video) {padding:14px;}
  html body[data-mobile-page=activity] .ce-form button {justify-self:stretch;}
  html body[data-mobile-page=activity] .ce-values {gap:12px;}
  html body[data-mobile-page=activity] .wheel-stage {max-width:100%;overflow:hidden;}

  /* Collections, account and payment retain their data/actions. */
  html body[data-mobile-page=market] .bf-main,html body[data-mobile-page=assets] .bf-main {padding:12px 10px 30px;min-width:0;}
  html body[data-mobile-page] .bf-topbar {gap:5px;}
  html body[data-mobile-page] .bf-topbar .bf-brand {min-width:0;}
  html body[data-mobile-page] .bf-toolbar {flex-wrap:wrap;gap:8px;}
  html body[data-mobile-page] .bf-search {min-width:0;flex:1 1 160px;}
  html body[data-mobile-page] .bf-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  html body[data-mobile-page] .bf-detail {display:flex;flex-direction:column;gap:14px;}
  html body[data-mobile-page] .bf-panel {width:100%;min-width:0;}
  html body[data-mobile-page] .bf-chips {display:flex;flex-wrap:nowrap;overflow-x:auto;padding:4px 0 8px;}
  html body[data-mobile-page] .bf-chips button {flex:none;min-height:44px;}
  html body[data-mobile-page] .bf-btn {min-height:44px;}
  html body[data-mobile-page=profile] #profileApp {padding:12px 10px 32px;}
  html body[data-mobile-page=profile] :is(.columns,.hero,.account-shortcuts) {grid-template-columns:minmax(0,1fr);}
  html body[data-mobile-page=profile] .panel {padding:16px;}
  html body[data-mobile-page=profile] .account-shortcuts {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;}
  html body[data-mobile-page=profile] .account-shortcuts button {display:flex;flex-direction:column;gap:7px;text-align:center;padding:12px 5px;min-width:0;}
  html body[data-mobile-page=profile] .account-shortcuts :is(small,i) {display:none;}
  html body[data-mobile-page=profile] .account-shortcuts b {font-size:12px;}
  html body[data-mobile-page=profile] .appearance-panel {gap:10px;}
  html body[data-mobile-page=profile] .appearance-title {min-width:0;width:100%;flex-basis:100%;}
  html body[data-mobile-page=profile] .invite-bind-row {flex-wrap:wrap;}
  html body[data-mobile-page=recharge] #rechargeApp {padding:10px;}
  html body[data-mobile-page=recharge] :is(.package-grid,.points-grid) {grid-template-columns:1fr;gap:12px;}
  html body[data-mobile-page=recharge] :is(.packages>header,.first-buy,.checkin-card) {flex-wrap:wrap;gap:10px;}
  html body[data-mobile-page=recharge] .payment-methods {grid-template-columns:1fr;}
  html body[data-mobile-page=recharge] .dialog-card {width:100%;margin:auto;max-height:calc(var(--am-view) - 16px)!important;}
  html body[data-mobile-page=recharge] #cashierActions {margin:12px!important;}
  html body[data-mobile-page=recharge] #cashierActions button {white-space:normal;min-height:48px;}
  html body[data-mobile-page=recharge] #cashierActions input {width:100%;}

  /* Operator pages: horizontally scroll data, not the entire screen. */
  html body[data-mobile-page=admin] .login-shell {padding:12px;}
  html body[data-mobile-page=admin] .login-box {width:min(360px,100%);min-width:0;padding:22px;}
  html body[data-mobile-page=admin] .topbar {height:auto;min-height:56px;padding:8px 10px;gap:8px;flex-wrap:wrap;}
  html body[data-mobile-page=admin] .topbar-right {gap:6px;flex-wrap:wrap;}
  html body[data-mobile-page=admin] .layout {display:block;}
  html body[data-mobile-page=admin] .sidenav {position:static;display:flex;flex-direction:row;flex-wrap:nowrap;gap:4px;overflow-x:auto;padding:6px;width:100%;height:auto;max-width:100vw;border-bottom:1px solid var(--border);}
  html body[data-mobile-page=admin] .nav-group {display:flex;flex:none;gap:4px;margin:0;padding:0;border:0;}
  html body[data-mobile-page=admin] .nav-group-label {display:none;}
  html body[data-mobile-page=admin] .nav-item {width:auto;white-space:nowrap;min-height:44px;}
  html body[data-mobile-page=admin] .content {padding:14px 10px 30px;}
  html body[data-mobile-page=admin] .am-table-scroll table {min-width:960px;table-layout:auto;}
  html body[data-mobile-page=admin] .am-table-scroll td {word-break:normal;overflow-wrap:anywhere;min-width:80px;max-width:240px;}
  html body[data-mobile-page] .am-table-scroll::before {content:'↔ 左右滑动查看完整表格';display:block;position:sticky;left:0;font-size:11px;color:var(--text-muted,#667085);padding:8px 2px;}
  html body[data-mobile-page=admin] :is(.grid2,.grid-2,.stats-grid,.overview-grid,.monitor-grid) {grid-template-columns:minmax(0,1fr);}
  html body[data-mobile-page=admin] :is(.page-heading,.toolbar,.filters,.filter-bar) {flex-wrap:wrap;gap:8px;}
  html body[data-mobile-page=admin] .modal-actions {position:sticky;bottom:-1px;background:var(--surface);padding:12px 0;}
  html body[data-mobile-page=team-ledger] .wrap {padding:14px 10px 30px;}
  html body[data-mobile-page=team-ledger] .wrap>header {flex-direction:column;}
  html body[data-mobile-page=team-ledger] .cards {grid-template-columns:repeat(2,minmax(0,1fr));}
  html body[data-mobile-page=team-ledger] :is(.grid-2,.row) {grid-template-columns:minmax(0,1fr);}
  html body[data-mobile-page=team-ledger] .panel-body {padding:12px;}
  /* Legacy preview and compatibility entrances are still usable on phones. */
  html body[data-mobile-page=index] {width:100%;overflow-x:clip;}
  html body[data-mobile-page=index] :is(.titlebar,.titlebar-actions,.titlebar-right) {flex-wrap:wrap;height:auto;gap:6px;padding:8px;min-width:0;max-width:100%;}
  html body[data-mobile-page=index] .hud {display:flex;flex-direction:column;padding:8px;gap:12px;min-width:0;}
  html body[data-mobile-page=index] :is(.forge-panel,.chat-panel,.preview-panel,.monitor,.workbench) {min-width:0;width:100%;max-width:100%;}
  html body[data-mobile-page=index] :is(.recipe-book-card,.asset-library-card,.sign-card,.failure-report-card) {width:calc(100vw - 16px);max-height:calc(var(--am-view) - 20px);overflow:auto;}
  html body[data-mobile-page=index] .recipe-book-layout {grid-template-columns:1fr;}
  html body[data-mobile-page=simple] .shell {min-width:0;max-width:100vw;}
  html body[data-mobile-page=simple] .topbar {flex-wrap:wrap;height:auto;gap:6px;}
  html body[data-mobile-page=simple] .project-content {display:flex;flex-direction:column;}
  html body[data-mobile-page=simple] :is(.planning-panel,.chat-column) {min-width:0;width:100%;}
  html body[data-mobile-page=maintenance] :is(main,.card,.container),html body[data-mobile-page=moved] main,html body[data-mobile-page=updates] main {max-width:calc(100vw - 20px);overflow-wrap:anywhere;}
  html body[data-mobile-page=updates] img {max-width:100%;height:auto;}
  @media (max-width:360px) {
    html body[data-mobile-page=activity] .activity-brand {font-size:0;gap:0;}
    html body[data-mobile-page] .bf-grid {grid-template-columns:1fr;}
    html body[data-mobile-page=texture] .tw-toolbar {padding:4px;}
    html body[data-mobile-page=texture] .tw-tabs button {font-size:11px;padding:5px;}
    html body[data-mobile-page=profile] .account-shortcuts b {font-size:11px;}
  }
  @media (max-height:520px) {
    html body[data-mobile-page=model] #mwFull {grid-template-columns:minmax(0,1fr) minmax(260px,45%);grid-template-rows:1fr;}
    html body[data-mobile-page=model] .mw-create-panel {grid-column:2;grid-row:1;}
    html body[data-mobile-page=model].mw-manual-mode #mwFull {grid-template-columns:1fr 0px;grid-template-rows:1fr;}
    html body[data-mobile-page=texture] .ah-examples {display:none;}
    html body[data-mobile-page=texture] .ah-simple-hero h1 {font-size:18px;margin:0;}
    html body[data-mobile-page=texture] .ah-simple-hero>p {display:none;}
    html body[data-mobile-page=texture] .ah-home {gap:8px;}
  }
  html body[data-mobile-page=model].am-keyboard:not(.mw-intake):not(.mw-manual-mode) #mwFull {grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);}
  html body[data-mobile-page=model].am-keyboard:not(.mw-intake):not(.mw-manual-mode) .mw-canvas-panel {display:none;}
  html body[data-mobile-page=model].am-keyboard:not(.mw-intake):not(.mw-manual-mode) .mw-create-panel {grid-column:1;grid-row:1;overflow:auto;}
  @media (max-width:520px) and (max-height:520px) {
    /* An embedded frame sees a short viewport, not the parent's keyboard event. */
    html body[data-mobile-page=model]:not(.mw-intake):not(.mw-manual-mode) #mwFull {grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);}
    html body[data-mobile-page=model]:not(.mw-intake):not(.mw-manual-mode) .mw-canvas-panel {display:none;}
    html body[data-mobile-page=model]:not(.mw-intake):not(.mw-manual-mode) .mw-create-panel {grid-column:1;grid-row:1;overflow:auto;}
  }
  @media (prefers-reduced-motion:reduce) {
    body[data-mobile-page] *,body[data-mobile-page] *::before,body[data-mobile-page] *::after {scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;}
  }
  /* Visibility remains controlled by permissions/state, never by compact styling. */
  html body[data-mobile-page] [hidden][hidden] {display:none!important;}
}
