/* TouchCity's mobile hierarchy, with Vice City's palette and existing controls. */
.mobile-sheet-heading,.mobile-workflow-nav,.mobile-output-summary,.mobile-only{display:none}
@media(max-width:860px){
  .studio{display:flex;flex-direction:column;height:100dvh}
  .preview-toolbar{height:60px;flex:0 0 60px;padding:8px 12px;gap:8px}
  #controls-open{flex:1;min-width:0;min-height:44px;padding:4px 0;border:0;background:transparent;text-align:left;font-size:14px;white-space:nowrap}
  .preview-surface-toggle{flex:none}.preview-surface-toggle button{min-width:44px;min-height:44px;padding:8px;font-size:12px}
  .header-actions{margin-left:0;flex:none}.header-actions .mobile-only{display:inline}.header-actions .desktop-only{display:none}.header-actions>button{min-height:44px;padding:4px;font-size:12px}
  .preview-panel{flex:1;min-height:0}.workspace-stage{flex:1;min-height:0}#viewport{min-height:0}
  .order-bar{display:flex;flex-direction:column;flex:none;gap:0;min-height:0;padding:0 0 env(safe-area-inset-bottom);background:var(--paper);z-index:25}
  .order-bar>.output-format{display:none}
  .order-bar>#mobile-download{display:none}
  body[data-preview-surface=model] .order-bar>#print{display:none}
  body[data-preview-surface=model] .order-bar>#mobile-download{display:block}
  .mobile-workflow-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 12px 0;border-top:1px solid var(--line)}
  .mobile-workflow-nav button{min-height:44px;padding:6px;border-radius:7px;font-size:14px}
  .mobile-workflow-nav button[aria-expanded=true]{background:var(--accent);color:var(--paper);border-color:var(--accent)}
  .mobile-output-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 12px;font-size:12px}
  .mobile-output-summary strong{font-weight:500;min-width:0}.mobile-output-summary button{flex:none;min-height:44px;border:0;background:transparent;color:var(--ink-soft);padding:4px 0;text-decoration:underline;text-underline-offset:3px;font-size:12px}
  .order-bar>.primary{flex:none;min-height:48px;height:auto;margin:0 12px 8px;padding:10px 12px;border-radius:7px;font-size:14px}
  #workspace-controls,.order-bar>.generation-settings{
    display:none;position:fixed;z-index:24;inset:auto 0 var(--mobile-dock-height,calc(158px + env(safe-area-inset-bottom)));width:100%;height:auto;
    max-height:min(54dvh,calc((100dvh - var(--mobile-dock-height,calc(158px + env(safe-area-inset-bottom))) - 60px)*.68));
    padding:0 16px 16px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;
    transform:none;transition:none;box-shadow:0 -8px 28px #08111d44;border:1px solid var(--line);border-bottom:0;border-radius:18px 18px 0 0;background:var(--paper)
  }
  body[data-mobile-panel=range] #workspace-controls,body[data-mobile-panel=look] #workspace-controls{display:flex;flex-direction:column}
  body[data-mobile-panel=print] .order-bar>.generation-settings{display:block}
  #workspace-controls>.vice-brand-heading,#workspace-controls>.panel-heading,#panel-backdrop{display:none}
  body[data-mobile-panel=range] [data-mobile-section=look],body[data-mobile-panel=look] [data-mobile-section=range]{display:none}
  .mobile-sheet-heading{display:flex;position:sticky;top:0;z-index:4;flex:none;align-items:center;justify-content:space-between;gap:12px;min-height:60px;margin:0 -16px 4px;padding:8px 16px;background:var(--paper);border-bottom:1px solid var(--line)}
  .mobile-sheet-heading h2{margin:0;font-size:17px;font-weight:600}.mobile-sheet-heading button{min-height:44px;min-width:52px;border-radius:6px;padding:6px 10px;font-size:14px}
  #workspace-controls>.panel{flex:none;padding:12px 0}.section-title h2{font-size:14px}.section-title{margin-bottom:10px}.section-title>span:not(.vice-city-entry-action){display:none}
  .vice-city-entry{flex:none;padding:12px 0}.vice-city-entry .section-title{margin-bottom:10px}.vice-city-entry .city-current{margin:0;border-radius:7px}
  #workspace-controls .field{font-size:13px;margin-top:12px}#workspace-controls select,.generation-settings select{min-height:44px;font-size:16px}
  .range-choices button,.mosaic-actions button,#place{min-height:44px;font-size:13px}.metrics strong{font-size:16px}.metrics span{font-size:12px}
  #workspace-controls summary{min-height:44px;font-size:13px}#four-swatches{margin-top:16px}#four-swatches i{height:40px}#four-swatches strong{font-size:12px}
  .workspace-help{padding-top:12px;margin-top:0}
  .generation-settings .print-setting-card{min-height:0;margin-top:12px;padding:12px;border-radius:7px}
  .generation-settings .size-setting-card select{min-height:44px;font-size:16px;max-width:none}
  .generation-settings .size-setting-card>small,.printer-setting-card>summary>small{font-size:12px}
  .printer-setting-card>summary>strong{font-size:16px}.printer-setting-card .settings-affordance{font-size:12px}
  #print-settings-menu .menu-content{position:static;width:auto;max-width:none;max-height:none;margin-top:12px;padding:12px 0 0;border:0;border-top:1px solid var(--line);box-shadow:none;background:transparent}
  .generation-settings .printer-info{display:grid}.generation-settings .mobile-only{display:block;font-size:12px;line-height:1.7}
  .task-center{position:fixed;z-index:24;inset:auto 0 var(--mobile-dock-height,calc(158px + env(safe-area-inset-bottom)));width:100%;height:auto;max-height:min(62dvh,calc(100dvh - var(--mobile-dock-height,calc(158px + env(safe-area-inset-bottom))) - 100px));border:1px solid var(--line);border-radius:18px 18px 0 0;box-shadow:0 -8px 28px #08111d44}
  .task-center-heading{padding:8px 16px;min-height:60px}.task-center-heading strong{font-size:17px}.task-center-heading button{min-height:44px;padding:6px 10px}.task-center-body{padding:0 16px 16px}.task-center-section{padding-top:14px}.task-center-footer{padding:10px 16px;font-size:11px}.task-center-actions button{min-height:44px}
  .view-toolbar{top:12px;right:12px;left:auto;display:grid;grid-template-columns:44px 44px 44px;gap:0;padding:0}
  .view-toolbar>button,.view-toolbar>.workspace-menu{display:none}.view-toolbar>#mobile-view-toggle,.view-toolbar>#top,.view-toolbar>#orbit{display:block;min-height:44px;padding:6px;font-size:12px}
  #mobile-view-toggle{background:#1b2b3a}.view-toolbar>.separator{display:none}
  body[data-mobile-tools=view] .view-toolbar>#atmosphere,body[data-mobile-tools=view] .view-toolbar>.workspace-menu{display:block}
  .view-toolbar .workspace-menu>summary{min-height:44px;padding:8px 4px;font-size:12px;text-align:center}
  #display-menu .menu-content,#location-menu .menu-content{position:fixed;right:12px;left:auto;top:168px;width:min(290px,calc(100vw - 24px));max-height:calc(100dvh - var(--mobile-dock-height,calc(158px + env(safe-area-inset-bottom))) - 180px)}
  .view-navigation{display:none;top:112px;right:12px}body[data-mobile-tools=view] .view-navigation{display:flex}
  body[data-mobile-panel] .view-navigation,body.task-center-open .view-navigation{display:none}
  .view-bottom{min-height:28px;padding:6px 12px;font-size:10px}.view-bottom #hint{display:none}.view-bottom #view-scale{display:block}
  #memory-toggle{min-width:0;min-height:44px;left:12px;bottom:38px;padding:6px 10px;font-size:12px}
  body[data-mobile-panel] #memory-toggle,body[data-mobile-panel] #mosaic-navigator,body[data-mobile-panel] .memory-panel,body[data-mobile-panel] .generation-task,body.task-center-open #memory-toggle,body.task-center-open .memory-panel{visibility:hidden}
  #loading{max-width:calc(100% - 24px);font-size:13px}
  html.vice-city-handoff-entry:not(.vice-city-handoff-ready) #workspace-controls{display:flex;transform:none}
  html.vice-city-handoff-entry:not(.vice-city-handoff-ready) [data-mobile-section=look]{display:none}
}
