/* Beta-only mobile application surface, modelled after the native Android UI. */
.psr-mobile-pwa { display: none; }

@media (max-width: 767px), (max-height: 600px) and (orientation: landscape) {
  :root { --psr-navy: #01070d; --psr-surface: #07121c; --psr-card: #0a1723; --psr-line: #20364a; --psr-text: #f4f7fb; --psr-muted: #a8b7ca; --psr-blue: #54a8ff; }
  body { background: var(--psr-navy) !important; color: var(--psr-text); }
  .presura-shell__header, .presura-shell__nav, .presura-shell__topbar, .presura-shell__sidebar, .presura-shell__notification-header, .presura-mobile-menu, .presura-mobile-bottom-nav, .presura-shell__mobile-bar, .footer--map-only { display: none !important; }
  .presura-shell, .presura-shell__viewport, .presura-shell__content { display:block !important; width:100% !important; height:auto !important; min-height:0 !important; overflow:visible !important; }
  .psr-mobile-pwa { display: block; min-height: 100dvh; padding: calc(env(safe-area-inset-top) + 14px) 20px calc(env(safe-area-inset-bottom) + 90px); background: linear-gradient(180deg,#01070d 0%,#071725 75%,#020a11 100%); font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
  .psr-mobile-pwa__topbar { height: 48px; display:flex; align-items:center; gap:9px; font-size:27px; letter-spacing:-.6px; }
  .psr-mobile-pwa__topbar strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .psr-mobile-pwa__pin { color:var(--psr-text); font-size:23px; }
  .psr-mobile-pwa__icon-button { border:0; background:none; color:var(--psr-text); font-size:29px; padding:6px; }
  .psr-mobile-pwa__icon-button:first-of-type { margin-left:auto; }
  .psr-mobile-pwa__icon-button:disabled { opacity:.55; }
  .psr-mobile-pwa__screen { display:none; padding-top:46px; }
  .psr-mobile-pwa__screen.is-active { display:block; }
  .psr-mobile-pwa h1 { font-size:35px; line-height:1.1; margin:0 0 8px; letter-spacing:-1px; }
  .psr-mobile-pwa h2 { color:var(--psr-blue); font-size:22px; margin:0 0 17px; letter-spacing:-.4px; }
  .psr-mobile-pwa__muted, .psr-mobile-pwa__feels { color:var(--psr-muted); font-size:18px; margin:0 0 26px; }
  .psr-mobile-pwa__hero { min-height:204px; display:flex; align-items:center; gap:22px; background:radial-gradient(circle at 28% 42%,rgba(84,168,255,.16),transparent 45%); }
  .psr-mobile-pwa__hero strong { display:block; font-size:88px; font-weight:400; letter-spacing:-6px; line-height:.9; }
  .psr-mobile-pwa__hero span { display:block; font-size:22px; margin-top:16px; color:var(--psr-text); }
  .psr-mobile-pwa__condition-icon { font-size:56px !important; color:#ffd54f !important; filter:drop-shadow(0 0 16px rgba(255,213,79,.28)); }
  .psr-mobile-pwa__metrics { display:grid; grid-template-columns:repeat(2,1fr); border-top:2px solid var(--psr-line); border-bottom:2px solid var(--psr-line); margin-bottom:24px; }
  .psr-mobile-pwa__metric { padding:13px 4px; border-bottom:1px solid var(--psr-line); display:flex; justify-content:space-between; gap:8px; color:var(--psr-muted); font-size:14px; }
  .psr-mobile-pwa__metric b { color:var(--psr-text); font-size:15px; }
  .psr-mobile-pwa__card { background:rgba(10,23,35,.82); border:2px solid #173046; border-radius:24px; padding:22px; margin:0 0 22px; box-shadow:0 18px 38px rgba(0,0,0,.14); }
  .psr-mobile-pwa__hour-strip { display:flex; gap:0; overflow-x:auto; margin:0 -8px -8px; padding:0 8px 8px; }
  .psr-mobile-pwa__hour { min-width:72px; text-align:center; border-left:1px solid var(--psr-line); padding:8px 6px; color:var(--psr-muted); font-size:13px; }
  .psr-mobile-pwa__hour:first-child { border-left:0; color:var(--psr-blue); }
  .psr-mobile-pwa__hour b { display:block; color:var(--psr-text); font-size:20px; padding:8px 0; }
  .psr-mobile-pwa__radar-card { background:linear-gradient(135deg,#102b42,#07121c); }
  .psr-mobile-pwa__radar-card p { color:var(--psr-muted); margin:0 0 16px; }
  .psr-mobile-pwa__radar-card button { border:1px solid #347fc4; border-radius:14px; padding:11px 15px; color:var(--psr-text); background:#193d60; font-weight:700; }
  .psr-mobile-pwa__chart { width:100%; height:140px; overflow:visible; }
  .psr-mobile-pwa__chart path { fill:rgba(84,168,255,.12); stroke:var(--psr-blue); stroke-width:3; vector-effect:non-scaling-stroke; }
  .psr-mobile-pwa__forecast-list { margin:22px 0 0; }
  .psr-mobile-pwa__forecast-row { display:grid; grid-template-columns:64px 34px minmax(0,1fr) auto; gap:10px; align-items:center; min-height:68px; border-bottom:2px solid var(--psr-line); color:var(--psr-muted); font-size:16px; }
  .psr-mobile-pwa__forecast-row strong { color:var(--psr-text); font-size:20px; }
  .psr-mobile-pwa__forecast-row small { color:var(--psr-blue); display:block; margin-top:3px; }
  .psr-mobile-pwa__daily-list .psr-mobile-pwa__forecast-row { grid-template-columns:80px 42px minmax(0,1fr) auto; min-height:85px; }
  .psr-mobile-pwa__daily-list .psr-mobile-pwa__forecast-row > span:nth-child(2) { font-size:28px; }
  .psr-mobile-pwa__nav { position:fixed; z-index:1200; left:0; right:0; bottom:0; height:calc(70px + env(safe-area-inset-bottom)); padding-bottom:env(safe-area-inset-bottom); display:grid; grid-template-columns:repeat(4,1fr); background:rgba(3,11,19,.98); border-top:2px solid #173046; }
  .psr-mobile-pwa__nav button { position:relative; border:0; background:transparent; color:#93a6bd; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; font-size:13px; font-weight:700; }
  .psr-mobile-pwa__nav button span { font-size:28px; line-height:25px; }
  .psr-mobile-pwa__nav button.is-active { color:var(--psr-blue); background:#081827; }
  .psr-mobile-pwa__nav button.is-active:before { content:""; position:absolute; top:0; left:25%; right:25%; height:4px; background:var(--psr-blue); }
  /* The existing map and playback remain a single, existing instance. */
  .presura-startbase { display:none; }
  body[data-mobile-tab="radar"] .presura-startbase { display:block; position:fixed; z-index:1050; inset:0; height:100dvh; }
  body[data-mobile-tab="radar"] .presura-startbase__map-shell { position:absolute; inset:0; height:auto; }
  body[data-mobile-tab="radar"] .presura-startbase__map { height:100dvh !important; }
  body[data-mobile-tab="radar"] .presura-startbase__timeline { position:fixed; z-index:1120; left:8px; right:8px; bottom:calc(73px + env(safe-area-inset-bottom)); background:rgba(1,7,13,.89); border-radius:15px; padding:8px 10px; }
  body[data-mobile-tab="radar"] .presura-startbase__timeline-meta { display:flex; }
  body[data-mobile-tab="radar"] .presura-startbase__credits { display:none; }
  .psr-mobile-pwa__screen--radar { position:fixed; z-index:1130; inset:calc(env(safe-area-inset-top) + 9px) 8px auto; padding:0; pointer-events:none; }
  .psr-mobile-pwa__radar-title { display:flex; flex-direction:column; width:max-content; max-width:72%; border-radius:13px; padding:8px 12px; background:rgba(1,7,13,.82); backdrop-filter:blur(8px); }
  .psr-mobile-pwa__radar-title strong { font-size:20px; }.psr-mobile-pwa__radar-title span { color:var(--psr-muted); font-size:13px; }
  .psr-mobile-pwa__radar-locate { pointer-events:auto; position:fixed; z-index:1150; right:16px; bottom:210px; width:45px; height:45px; border:0; border-radius:50%; background:#07111b; color:var(--psr-text); font-size:27px; box-shadow:0 2px 12px #0008; }
  .psr-mobile-pwa__detail-grid { padding-bottom:16px; }
  .psr-mobile-pwa__detail-grid-inner { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid var(--psr-line); }
  .psr-mobile-pwa__detail-grid-inner div { min-height:65px; padding:12px 8px; border-bottom:1px solid var(--psr-line); display:flex; flex-direction:column; gap:4px; }
  .psr-mobile-pwa__detail-grid-inner span,.psr-mobile-pwa__provider { color:var(--psr-muted); font-size:13px; }
  .psr-mobile-pwa__detail-grid-inner b { font-size:17px; color:var(--psr-text); }
  .psr-mobile-pwa__provider { margin:14px 0 0; }
  body[data-mobile-tab="radar"] .presura-weather-alert { display:none !important; }
  body[data-mobile-tab="radar"] .presura-startbase__hud-rail { position:fixed; z-index:1160; top:calc(env(safe-area-inset-top) + 10px); left:12px; right:auto; bottom:auto; width:auto; overflow:visible; }
  body[data-mobile-tab="radar"] .presura-layer-picker__trigger { display:none; }
  body[data-mobile-tab="radar"] .presura-layer-picker__trigger-copy { display:none; }
  body[data-mobile-tab="radar"] .presura-layer-picker__trigger-icon { width:22px; height:22px; }
  body[data-mobile-tab="radar"] .presura-startbase__legend-toggle { display:none; }
  body[data-mobile-tab="radar"] .presura-startbase__legend-toggle span { display:none; }
  body[data-mobile-tab="radar"] .presura-startbase__legend-toggle svg { width:21px; height:21px; }
  body[data-mobile-tab="radar"] .presura-startbase__locate--mobile, body[data-mobile-tab="radar"] .presura-startbase__station-focus, body[data-mobile-tab="radar"] .presura-startbase__credits { display:none !important; }
  body[data-mobile-tab="radar"] .presura-startbase__map .leaflet-top.leaflet-left { top:74px; right:12px; }
  body[data-mobile-tab="radar"] .psr-mobile-pwa__screen--radar { display:block; inset:calc(env(safe-area-inset-top) + 10px) 66px auto 66px; z-index:1150; }
  .psr-mobile-pwa__radar-topbar { display:grid; grid-template-columns:46px minmax(0,1fr) 46px; align-items:center; gap:8px; text-align:center; pointer-events:auto; }
  .psr-mobile-pwa__radar-topbar span { display:flex; flex-direction:column; gap:1px; padding:7px 12px; border-radius:12px; background:rgba(1,7,13,.82); backdrop-filter:blur(10px); }
  .psr-mobile-pwa__radar-topbar strong { font-size:17px; }.psr-mobile-pwa__radar-topbar small { color:var(--psr-muted); font-size:11px; }
  .psr-mobile-pwa__radar-topbar button { width:46px; height:46px; border:1px solid rgba(255,255,255,.16); border-radius:12px; background:rgba(1,7,13,.9); color:var(--psr-text); font-size:23px; }
  .psr-mobile-pwa__radar-info { position:fixed; z-index:1180; top:65px; right:12px; left:12px; padding:12px; border-radius:13px; background:rgba(1,7,13,.95); color:var(--psr-muted); font-size:13px; }
  body[data-mobile-tab="radar"] .presura-startbase__timeline { z-index:1160; left:8px; right:8px; bottom:calc(72px + env(safe-area-inset-bottom)); display:grid; grid-template-columns:44px minmax(0,1fr); min-height:112px; padding:9px 10px; border:1px solid rgba(48,71,91,.9); border-radius:14px; background:rgba(1,7,13,.94); transform:none !important; }
  body[data-mobile-tab="radar"] .presura-startbase__timeline-actions { display:grid; grid-template-columns:1fr; align-content:center; }
  body[data-mobile-tab="radar"] .presura-startbase__timeline-button { width:42px; height:42px; border-radius:12px; background:#193d60; color:#fff; }
  body[data-mobile-tab="radar"] .presura-startbase__timeline-button--pause { display:none; }
  body[data-mobile-tab="radar"] .presura-startbase__timeline-main { overflow:visible; gap:6px; }
  body[data-mobile-tab="radar"] .presura-startbase__timeline-meta { display:grid; grid-template-columns:1fr auto; gap:2px 10px; }
  body[data-mobile-tab="radar"] .presura-startbase__timeline-product { display:block; font-size:11px; color:var(--psr-muted); }
  body[data-mobile-tab="radar"] .presura-startbase__timeline-meta strong { grid-column:2; grid-row:1; font-size:12px; }
  body[data-mobile-tab="radar"] .presura-startbase__timeline-meta #presura-range-label { grid-column:1 / -1; grid-row:2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:11px; }
  body[data-mobile-tab="radar"] .presura-startbase__range-wrap { padding-top:13px; }
  body[data-mobile-tab="radar"] .presura-startbase__range { width:100%; accent-color:var(--psr-blue); }
  body[data-mobile-tab="radar"] .presura-startbase__ticks { display:flex; justify-content:space-between; min-height:13px; overflow:visible; font-size:10px; }
  body[data-mobile-tab="radar"] .presura-startbase__tick { position:static; transform:none; display:none; }
  body[data-mobile-tab="radar"] .presura-startbase__tick.is-start, body[data-mobile-tab="radar"] .presura-startbase__tick.is-live, body[data-mobile-tab="radar"] .presura-startbase__tick.is-end { display:inline-block; }
  body[data-mobile-tab="radar"] .presura-precipitation-timeline { display:none; }
}
