
/* Phase 35 — Mobile polish pass
   Focus: writer usability on phones + stacking/containment fixes for common modules. */

@media (max-width: 760px) {
  html[data-ui-tier="phone"],
  body[data-ui-tier="phone"] {
    --cbs-mobile-vh: 100vh;
    --cbs-mobile-header-height: 52px;
    --cbs-mobile-writer-page-height: 62vh;
  }

  html[data-ui-tier="phone"] :where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), select, textarea) {
    font-size: 16px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  html[data-ui-tier="phone"] :where(#project-hub, #writer-app, #stripboard-app, #callsheet-app, #locations-app, #schedule-app, #storyboard-app, #corkboard-app, #wardrobe-app, #documentary-app, #pcc-app, #contacts-app, #props-app, #artdept-app, #auditions-app, #spatial-app, #adtreatment-app, #cine-app) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  html[data-ui-tier="phone"] :where(#project-hub *, #writer-app *, #stripboard-app *, #callsheet-app *, #locations-app *, #schedule-app *, #storyboard-app *, #corkboard-app *, #wardrobe-app *, #documentary-app *, #pcc-app *, #contacts-app *, #props-app *, #artdept-app *, #auditions-app *, #spatial-app *, #adtreatment-app *, #cine-app *) {
    min-width: 0;
    box-sizing: border-box;
  }

  html[data-ui-tier="phone"] :where(#props-toolbar, #budget-toolbar, #stripboard-toolbar, #doc-stats-bar, .doc-topbar, .adt-commandbar, #cine-gaffer-toolbar, #cine-gear-cat-bar, #scc-toolbar, .module-toolbar, .top-actions) {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: center !important;
  }

  html[data-ui-tier="phone"] #adt-subnav,
  html[data-ui-tier="phone"] .sched-summary-bar,
  html[data-ui-tier="phone"] .cs-action-bar,
  html[data-ui-tier="phone"] #scc-toolbar {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none;
  }
  html[data-ui-tier="phone"] #adt-subnav::-webkit-scrollbar,
  html[data-ui-tier="phone"] .sched-summary-bar::-webkit-scrollbar,
  html[data-ui-tier="phone"] .cs-action-bar::-webkit-scrollbar,
  html[data-ui-tier="phone"] #scc-toolbar::-webkit-scrollbar {
    display: none;
  }

  html[data-ui-tier="phone"] :where(#props-body, #locations-body, #schedule-body, #artdept-schedule-body) {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    min-height: 0 !important;
  }

  html[data-ui-tier="phone"] :where(#props-list-panel, #props-detail-panel, #props-setcart-panel, #conflict-panel, #wardrobe-asset-drawer, #wardrobe-asset-content, #scan-pin-sidebar) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html[data-ui-tier="phone"] :where(.grid-2, .grid-3, .grid-4, .pcc-kpi-grid, .pcc-cards-grid, .pcc-call-grid, .pcc-plan-grid, .pcc-mini-kpis) {
    grid-template-columns: 1fr !important;
  }

  html[data-ui-tier="phone"] :where(table, .table-wrap, [class*="table-wrap"], [class*="grid-scroll"], .stripboard-scroll, #callsheet-sheet) {
    max-width: 100% !important;
  }

  html[data-ui-tier="phone"] :where(.table-wrap, [class*="table-wrap"], .stripboard-scroll, #callsheet-sheet, .scan-viewer) {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  /* Writer simplification: one clear editing surface + mobile hub */
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #mode-indicator,
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #sn-toolbar-btn,
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #tag-float-bar {
    display: none !important;
  }

  /* Format bar: show on mobile, pinned to script edges, keyboard-aware via --wmh-dock-bottom */
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #mobile-format-bar {
    display: flex !important;
    visibility: visible !important;        /* override phaseA visibility:hidden */
    transform: none !important;            /* override base translateX(-50%) */
    left: 14px !important;                 /* align with script page left edge */
    right: 14px !important;               /* align with script page right edge */
    max-width: none !important;
    width: auto !important;
    /* Move up with keyboard using JS-set variable; fall back to fixed nav height */
    bottom: var(--wmh-dock-bottom, calc(var(--cbs-bottom-nav-height, 66px) + var(--sab, 0px) + 8px)) !important;
    background: rgba(255, 255, 255, 0.97) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    box-shadow: 0 -2px 16px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.08) !important;
    border-radius: 14px !important;
  }
  html[data-ui-tier="phone"] body.dark[data-active-view="writer-app"] #mobile-format-bar {
    background: rgba(30, 36, 51, 0.97) !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #writer-app {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-top: 6px !important;
    padding-bottom: 0 !important;
    min-height: calc(var(--cbs-mobile-vh, 100vh) - var(--cbs-mobile-header-height, 52px) - var(--cbs-bottom-nav-height, 66px) - var(--sab, 0px)) !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #writer-app,
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #writer-app .editor-column {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    height: auto !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #writer-app .editor-frame {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    /* Reduced bottom padding: nav + format bar height + small gap */
    padding: 6px 0 calc(var(--cbs-bottom-nav-height, 66px) + var(--sab, 0px) + 62px) !important;
    scroll-padding-bottom: calc(var(--cbs-bottom-nav-height, 66px) + var(--sab, 0px) + 80px) !important;
    overscroll-behavior-y: contain !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #pages-container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 8px !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #pages-zoom-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
    transform-origin: top center !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] .script-page-sheet {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 10px !important;
    padding: 16px 14px 18px !important;
    border-radius: 12px !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] .page-content {
    height: var(--cbs-mobile-writer-page-height, 62vh) !important;
    min-height: 420px !important;
    max-height: none !important;
    overflow: hidden !important;
    overflow-y: clip !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    padding-bottom: 0 !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] .page-num-badge,
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] .page-more-hint {
    bottom: 4px !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] .line.scene { margin-left: 0 !important; margin-right: 0 !important; }
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] .line.character { margin-left: 18% !important; margin-right: 3% !important; }
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] .line.dialogue { margin-left: 8% !important; margin-right: 6% !important; }
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] .line.parenthetical { margin-left: 13% !important; margin-right: 10% !important; }
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] .line.transition { margin-left: 28% !important; margin-right: 0 !important; }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] .editor-statusbar {
    left: 8px !important;
    right: 8px !important;
    width: auto !important;
    max-width: none !important;
    transform: none !important;            /* fix: prevents left-shift from translateX(-50%) */
    bottom: calc(var(--cbs-bottom-nav-height, 66px) + var(--sab, 0px) + 6px) !important;
    padding: 4px 10px !important;
    min-height: 28px !important;
  }

  /* Hub: let JS keyboard-aware variable control bottom, not a hard override */
  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #writer-mobile-hub {
    right: 10px !important;
    bottom: var(--wmh-dock-bottom, calc(var(--cbs-bottom-nav-height, 66px) + var(--sab, 0px) + 10px)) !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #writer-mobile-hub .wmh-panel-shell {
    right: 10px !important;
    bottom: var(--wmh-panel-bottom, calc(var(--cbs-bottom-nav-height, 66px) + var(--sab, 0px) + 58px)) !important;
    width: min(340px, calc(100vw - 20px)) !important;
    max-height: min(62vh, 460px) !important;
    overflow-y: auto !important;
  }

  html[data-ui-tier="phone"] body[data-active-view="writer-app"] #writer-mobile-hub .wmh-mini {
    width: 44px !important;
    height: 44px !important;
  }

  /* documentary / ad treatment / wardrobe / PCC */
  html[data-ui-tier="phone"] #documentary-app,
  html[data-ui-tier="phone"] #adtreatment-app,
  html[data-ui-tier="phone"] #wardrobe-app,
  html[data-ui-tier="phone"] #pcc-app {
    padding-top: 6px !important;
  }

  html[data-ui-tier="phone"] #doc-stats-bar {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }

  html[data-ui-tier="phone"] #adt-subnav > * {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }

  html[data-ui-tier="phone"] #pcc-app {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  html[data-ui-tier="phone"] #wardrobe-app {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
}
