/* Roberto Win11React V15 — mobile clarity and nested Retro Terminal repair */
@media (max-width: 900px), (hover: none) and (pointer: coarse) {
  :root { --roberto-taskbar-h: 50px; }
  html, body, #root, .App, .appwrap { width: 100% !important; height: 100% !important; min-height: 100dvh !important; overflow: hidden !important; }
  body { overscroll-behavior: none; }
  .desktop { inset: 0 0 calc(var(--roberto-taskbar-h) + var(--roberto-safe-bottom)) 0 !important; width: 100% !important; height: auto !important; }

  /* Every opened application fills the usable mobile desktop. */
  body .floatTab[data-max="true"],
  body .floatTab[data-max="true"][data-size="mini"],
  body .floatTab[data-max="true"][data-size="cstm"],
  body .floatTab[data-max="true"][data-size="full"] {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    transform: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  body .floatTab[data-max="true"] .toolbar {
    flex: 0 0 calc(48px + var(--roberto-safe-top)) !important;
    height: calc(48px + var(--roberto-safe-top)) !important;
    min-height: calc(48px + var(--roberto-safe-top)) !important;
    padding-top: var(--roberto-safe-top) !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
  }
  body .floatTab[data-max="true"] .windowScreen {
    flex: 1 1 auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    border-radius: 0 !important;
  }
  body .floatTab[data-max="true"] .restWindow { width: 100% !important; height: 100% !important; min-height: 0 !important; overflow: hidden !important; }
  body .floatTab[data-max="true"] iframe { display: block !important; width: 100% !important; height: 100% !important; min-width: 0 !important; min-height: 0 !important; border: 0 !important; }
  .toolbar .topInfo { min-width: 0 !important; overflow: hidden !important; }
  .toolbar .appFullName { max-width: calc(100vw - 178px - var(--roberto-safe-right)) !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
  .toolbar .actbtns .uicon { width: 46px !important; min-width: 46px !important; height: 46px !important; padding: 0 !important; display: grid !important; place-items: center !important; }

  /* Compact taskbar: running apps remain scrollable; tray no longer covers them. */
  .taskbar { height: calc(var(--roberto-taskbar-h) + var(--roberto-safe-bottom)) !important; min-height: calc(var(--roberto-taskbar-h) + var(--roberto-safe-bottom)) !important; padding-bottom: var(--roberto-safe-bottom) !important; box-sizing: border-box !important; }
  .tasksCont, .tasksCont[data-side="center"], .tasksCont[data-side="left"] {
    padding-left: max(3px, var(--roberto-safe-left)) !important;
    padding-right: calc(66px + var(--roberto-safe-right)) !important;
  }
  .tsbar { min-width: 0 !important; gap: 1px !important; overflow-x: auto !important; overflow-y: hidden !important; scrollbar-width: none !important; -webkit-overflow-scrolling: touch !important; }
  .tsbar::-webkit-scrollbar { display: none !important; }
  .tsIcon { flex: 0 0 40px !important; width: 40px !important; height: 40px !important; margin: auto 1px !important; }
  .taskright { right: var(--roberto-safe-right) !important; width: 64px !important; min-width: 64px !important; background: linear-gradient(90deg, transparent, var(--bg1) 26%) !important; }
  .taskright .prtclk.flex .taskIcon, .taskright .battery, .taskright > :first-child, .taskright > .graybd { display: none !important; }
  .taskDate { min-width: 54px !important; margin: 2px 3px !important; padding: 0 4px !important; font-size: 9px !important; text-align: center !important; }
  .taskDate div:last-child { display: none !important; }

  /* Touch and readability improvements. */
  .startMenu, .searchMenu, .sidePane, .calnpane, .widPaneCont { max-width: calc(100vw - var(--roberto-safe-left) - var(--roberto-safe-right) - 12px) !important; }
  button, [role="button"], .uicon, .pnApp, .rnApp, .allApp { touch-action: manipulation; }
}

@media (max-width: 600px) {
  .desktopCont { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; grid-auto-rows: 82px !important; }
  .dskApp { height: 80px !important; }
  .taskright { width: 58px !important; min-width: 58px !important; }
  .tasksCont, .tasksCont[data-side="center"], .tasksCont[data-side="left"] { padding-right: calc(60px + var(--roberto-safe-right)) !important; }
  .tsIcon { flex-basis: 38px !important; width: 38px !important; height: 38px !important; }
  .toolbar .appFullName { max-width: calc(100vw - 166px) !important; font-size: .78rem !important; }
  .toolbar .actbtns .uicon { width: 44px !important; min-width: 44px !important; }
}

@media (max-width: 420px) {
  .desktopCont { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 1px !important; padding-inline: 1px !important; }
  .dskApp { font-size: .64rem !important; }
  .taskright { width: 52px !important; min-width: 52px !important; }
  .tasksCont, .tasksCont[data-side="center"], .tasksCont[data-side="left"] { padding-right: calc(54px + var(--roberto-safe-right)) !important; }
  .taskDate { min-width: 46px !important; font-size: 8px !important; }
}

@media (orientation: landscape) and (max-height: 560px) and (max-width: 950px) {
  :root { --roberto-taskbar-h: 46px; }
  body .floatTab[data-max="true"] .toolbar { flex-basis: 42px !important; height: 42px !important; min-height: 42px !important; }
  .toolbar .actbtns .uicon { width: 42px !important; min-width: 42px !important; height: 42px !important; }
}


/* V15 — force Retro Terminal and every active app to use the full mobile desktop,
   even when an app was opened with a custom/non-maximized desktop size. */
@media (max-width: 900px), (hover: none) and (pointer: coarse) {
  body #retroterminalApp.floatTab,
  body .floatTab[data-hide="false"] {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    transform: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  body #retroterminalApp.floatTab .toolbar,
  body .floatTab[data-hide="false"] .toolbar {
    flex: 0 0 calc(48px + var(--roberto-safe-top)) !important;
    height: calc(48px + var(--roberto-safe-top)) !important;
    min-height: calc(48px + var(--roberto-safe-top)) !important;
    padding-top: var(--roberto-safe-top) !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
  }
  body #retroterminalApp.floatTab .windowScreen,
  body #retroterminalApp.floatTab .restWindow,
  body #retroterminalApp.floatTab iframe,
  body .floatTab[data-hide="false"] .windowScreen,
  body .floatTab[data-hide="false"] .restWindow,
  body .floatTab[data-hide="false"] iframe {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: none !important;
    border-radius: 0 !important;
  }
  body #retroterminalApp.floatTab .windowScreen,
  body #retroterminalApp.floatTab .restWindow,
  body .floatTab[data-hide="false"] .windowScreen,
  body .floatTab[data-hide="false"] .restWindow {
    height: auto !important;
    flex: 1 1 auto !important;
    overflow: hidden !important;
  }
  body #retroterminalApp.floatTab iframe,
  body .floatTab[data-hide="false"] iframe { height: 100% !important; display: block !important; }
}
