.mobile-site-picker,.weather-mobile-actions,.weather-mobile-back{display:none}
@media(max-width:799px), (max-width:1000px) and (max-height:500px){
  /* One continuous canvas; section cards no longer sit inside a phone frame. */
  body.has-site-navigation{padding:0!important}
  #siteNavigation{position:relative;inset:auto;flex:none;height:52px}
  #siteNavigation .site-nav-inner{padding-inline:16px}
  html:has(.has-site-navigation){scroll-padding-top:12px}
  body.home-page,body.library-page,body.garden-ux{background:var(--ux-canvas)}
  .home-page .home-shell,.library-page .library-shell,.garden-ux .garden-shell{width:100%;max-width:none;min-height:0;margin:0;padding:20px 16px 24px;border:0;border-radius:0;box-shadow:none;overflow:visible}
  .home-page .home-destinations{margin:0 -16px}
  .plants-page .home-destinations{margin-top:0}
  .library-page .library-sections{margin:0 -16px}
  .home-page .home-destinations nav,.library-page .library-sections{grid-template-columns:minmax(0,1fr);gap:1px;background:var(--ux-border)}
  .home-page .home-destinations .section-card,.library-page .library-sections .section-card{flex-direction:row;align-items:center;gap:14px;padding:14px 16px;min-height:0;border:0;border-radius:0;box-shadow:none;transform:none}
  .home-page .home-destinations .section-cover,.library-page .library-sections .section-cover{width:40%;height:auto;min-height:0;flex:0 0 40%;aspect-ratio:3/2;object-fit:contain;background:transparent;border-radius:12px}
  .home-page .home-destinations .section-body,.library-page .library-sections .section-body{padding:4px 0;min-height:0;gap:7px}
  .home-page .home-destinations .section-title,.library-page .library-sections .section-title{font-size:20px;line-height:26px}
  .home-page .home-destinations .section-kicker,.library-page .library-sections .section-kicker{display:none}
  .home-page .home-destinations .section-description,.library-page .library-sections .section-description{font-size:13px;line-height:20px}
  .home-page .home-destinations .section-action,.library-page .library-sections .section-action{padding-top:4px;font-size:13px;line-height:20px}
  .home-page .section-intro{margin:12px 0 20px}
  .garden-ux .site-tabs{display:none!important}
  .garden-ux .mobile-site-picker{display:grid;gap:8px;margin:20px 0 0;color:var(--ux-muted);font-size:13px;line-height:20px}
  .garden-ux .mobile-site-picker[hidden]{display:none}
  .mobile-site-picker select{width:100%;min-width:0;min-height:48px;border:1px solid var(--ux-border);border-radius:12px;background:var(--ux-surface);color:var(--ux-brand-text);font:inherit;font-size:16px;padding:10px 36px 10px 12px;text-overflow:ellipsis}
  .garden-ux .selected-site{margin-inline:-16px;border-inline:0;border-radius:0}
  .garden-ux .plant-grid{margin-inline:-16px;gap:12px}
  .garden-ux .plant-card{width:100%;border-radius:0;border-inline:0}
  .garden-ux .plant-summary{flex-direction:row;align-items:center;min-height:0}
  .garden-ux .plant-photo-slot{width:38%;flex:0 0 38%;height:auto;min-height:0;aspect-ratio:3/2;align-self:center;background:transparent}
  .garden-ux .plant-photo-slot img{width:100%;height:100%;object-fit:contain}
  .garden-ux .plant-summary-text{min-height:0;padding:18px 16px;min-width:0}
  .garden-ux .plant-summary-text strong{overflow-wrap:anywhere}
  .garden-ux .plant-card-details{padding:16px}
  /* The map and the data sheet each own the whole mobile viewport. */
  body.weather-page.has-site-navigation{display:block;height:100dvh;min-height:0;padding:0!important;overflow:hidden}
  .weather-page #siteNavigation,.weather-page #siteFooter,.weather-page>.weather-header,.weather-page>.weather-footer{display:none}
  .weather-page .weather-shell{height:100dvh;min-height:0;padding:0}
  .weather-page .weather-layout{position:relative;display:block;height:100%;min-height:0}
  .weather-page .weather-map-panel,.weather-page .weather-forecast{position:absolute;inset:0;width:100%;height:100%;margin:0;border:0;border-radius:0;overflow:hidden}
  .weather-page .weather-map-panel{z-index:1}
  .weather-page .weather-map-panel #map{height:100%;border-radius:0}
  .weather-page .weather-forecast{visibility:hidden;pointer-events:none;z-index:2;overflow-y:auto;overscroll-behavior:contain;padding:12px 16px calc(20px + env(safe-area-inset-bottom));gap:12px}
  .weather-page[data-mobile-weather=data] .weather-forecast{visibility:visible;pointer-events:auto}
  .weather-page[data-mobile-weather=data] .weather-map-panel{visibility:hidden;pointer-events:none}
  .weather-mobile-actions{position:absolute;z-index:850;inset:auto 12px calc(18px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:8px}
  .weather-page .weather-mobile-actions button,.weather-mobile-actions a{display:flex;align-items:center;justify-content:center;min-height:48px;min-width:48px;border:1px solid #cbd6cf;border-radius:14px;background:#fff;color:#234d40;padding:10px;font-size:16px;text-decoration:none;box-shadow:0 3px 14px #173b3226}
  .weather-page .weather-mobile-actions button:first-of-type{flex:1;background:#235b46;color:#fff;font-weight:600}
  .weather-page .weather-mobile-back{display:block;position:sticky;top:-12px;z-index:950;flex:none;align-self:stretch;min-height:48px;margin:-12px -16px 0;padding:12px 16px;text-align:left;border:0;border-bottom:1px solid #dce4d6;border-radius:0;background:#fff;font-size:16px}
  .weather-page .weather-map-panel .weather-basemap-control{left:2px}
  .weather-page .leaflet-top.leaflet-right{left:0}
  .weather-page .leaflet-control-zoom{position:absolute;top:72px;right:12px;margin:0}
  .weather-page .leaflet-control-zoom a{width:44px;height:44px;line-height:44px}
  .weather-page .leaflet-control-scale{position:absolute;top:170px;right:12px;margin:0}
  .weather-page .yandex-branding{position:absolute;top:72px;right:66px;margin:0}
  .weather-page .weather-map-panel .leaflet-control-attribution{max-width:100%;white-space:nowrap;overflow-x:auto;font-size:9px;line-height:14px}
  .weather-page .weather-basemap-buttons button{width:36px;min-height:44px;padding:4px 2px}
  .weather-page .weather-basemap-buttons span{display:block;font-size:9px}
  .weather-page .weather-map-panel .regional-overview{margin-top:10px;height:52px;display:flex;align-items:center;justify-content:center}
  .weather-page .weather-layer-buttons{left:12px;bottom:calc(84px + env(safe-area-inset-bottom));width:calc(100% - 24px);max-width:none;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:4px;gap:1px;overflow:visible}
  .weather-page .weather-layer-buttons button{width:100%;min-width:0;height:48px;min-height:48px;padding:3px 0;gap:2px;grid-template-rows:18px 20px;align-content:center}
  .weather-page .weather-layer-buttons svg{width:18px;height:18px}
  .weather-page .weather-layer-buttons span{font-size:8px;line-height:10px;overflow-wrap:anywhere;max-width:100%}
  .weather-page .weather-map-settings{left:12px;bottom:calc(154px + env(safe-area-inset-bottom));width:174px}
  .weather-page .weather-map-settings summary{min-height:44px;padding:12px 10px;font-size:12px}
  .weather-page .weather-map-details{top:auto;bottom:calc(100% + 6px);max-height:calc(100dvh - 280px);width:min(360px,calc(100vw - 24px));overflow:auto}
  .weather-page .weather-map-summary{display:block;top:72px;bottom:auto;left:12px;right:auto;width:180px;max-width:calc(100% - 188px);padding:8px;font-size:10px}
  .weather-page .weather-map-summary[hidden]{display:none}
  .weather-page .weather-map-alert{top:132px;font-size:12px;z-index:950}
  .weather-page .weather-map-panel .map-notice{top:132px;font-size:12px;z-index:960}
  .weather-page .weather-views{flex:1 0 auto;min-height:0;overflow:visible}
  .weather-page .weather-view{height:auto;overflow:visible}
  .weather-page .weather-overview,.weather-page .weather-overview:has(#weather-observation[hidden]){display:flex;flex-direction:column;min-height:0;gap:16px}
  .weather-page .weather-current{display:flex;flex-direction:column;min-height:0;gap:16px;padding:4px 0;overflow:visible}
  .weather-page .weather-main-reading{min-height:86px;gap:12px}
  .weather-page .weather-temperature{font-size:56px}
  .weather-page .weather-condition{font-size:13px;line-height:1.5}
  .weather-page .weather-condition small{font-size:12px}
  .weather-page .weather-measures{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:8px}
  .weather-page .weather-measures div{min-height:82px;padding:10px}
  .weather-page .weather-measures span{font-size:12px}
  .weather-page .weather-measures strong{font-size:19px}
  .weather-page .weather-measures small{font-size:11px;line-height:1.4}
  .weather-page .weather-observation{flex:none;padding:12px;min-height:0}
  .weather-page .weather-observation p,.weather-page .weather-observation-heading{font-size:12px;line-height:1.5}
  .weather-page .weather-timeline{height:auto;min-height:64px;flex:none;overflow:visible}
  .weather-page .weather-timeline input{height:28px;margin-top:8px}
  .weather-page .weather-timeline-title strong{font-size:13px}
  .weather-page .weather-timeline-title button{height:32px;padding:6px 8px}
  .weather-page .weather-days{height:auto;min-height:124px;flex:none}
  .weather-page .weather-day{min-width:108px;padding:10px;gap:5px}
  .weather-page .weather-day span,.weather-page .weather-day small{font-size:11px}
  .weather-page .weather-day strong{font-size:16px}
  .weather-page .weather-source{height:auto;overflow:visible;font-size:11px;line-height:1.5}
  .weather-page #weather-downloads{height:auto;gap:8px}
  .weather-page #weather-downloads[hidden]{display:none!important}
  .weather-page .weather-downloads button,.weather-page .weather-download{font-size:12px!important;min-height:40px;padding:10px!important}
  .weather-page .weather-location{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
  .weather-page .weather-location button{height:44px;font-size:13px}
  .weather-page .weather-location #weather-place-open{font-size:13px;justify-content:center}
  .weather-page .weather-forecast label{font-size:12px}
  .weather-page .weather-forecast input:not([type=range]),.weather-page .weather-forecast select{height:44px;font-size:16px}
  .weather-page .weather-tabs button{font-size:12px;min-height:48px;padding:10px 6px;white-space:normal}
  .weather-page .weather-status{height:auto;min-height:18px;overflow:visible;font-size:12px;line-height:1.5}
  .weather-page .weather-chart{flex:none;height:340px;min-height:260px}
  .weather-page .weather-charts>.weather-table-scroll{height:auto;max-height:65dvh;min-height:200px;flex:none}
  .weather-page .weather-history{min-height:0}
  .weather-page .weather-history-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .weather-page .weather-history-form button{grid-column:1/-1;height:44px;font-size:14px}
  .weather-page #weather-history-status{max-height:none;font-size:12px}
  .weather-page .weather-history-panes,.weather-page .weather-history-panes>[role=tabpanel]{height:auto;overflow:visible;flex:none}
  .weather-page #weather-history-result{flex:none}
  .weather-page .weather-history-summary{grid-template-rows:none}
  .weather-page .weather-history-summary div{min-height:110px}
  .weather-page #history-view-table .weather-table-scroll{height:auto;max-height:65dvh}
  .weather-page .pa-widget .pa-launcher{right:12px;bottom:calc(154px + env(safe-area-inset-bottom))}
  .weather-page .pa-widget .pa-restore{right:12px;bottom:calc(154px + env(safe-area-inset-bottom))}
  .weather-page[data-mobile-weather=data] .pa-widget .pa-launcher{bottom:calc(18px + env(safe-area-inset-bottom))}
  .weather-page .weather-help{max-height:calc(100dvh - 24px);width:calc(100% - 24px)}
  body[data-page-assistant-open=true]{overflow:hidden}
  .pa-widget .pa-panel{inset:var(--pa-top,0px) 0 auto;width:100%;max-width:none;height:var(--pa-height,100dvh);max-height:none;border:0;border-radius:0;box-shadow:none;overflow-y:auto;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
  .pa-widget .pa-heading{flex:none;min-height:58px}
  .pa-widget .pa-feedback,.pa-widget .pa-shortcuts,.pa-widget .pa-audio-settings,.pa-widget #pa-form,.pa-widget .pa-foot{flex:none}
  .pa-widget #pa-card-preview{flex:0 1 auto;min-height:0;overflow:auto;max-height:35dvh}
  .pa-widget .pa-heading button{min-height:44px;min-width:44px}
  .pa-widget .pa-composer-tools button,.pa-widget #pa-resume{min-height:44px;padding:8px;font-size:12px}
  .pa-widget textarea{font-size:16px}
  .pa-widget #pa-hide{display:none}
  .pa-widget .pa-audio-settings{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center}
  .pa-widget .pa-audio-settings label{min-height:44px;white-space:nowrap;font-size:12px}
  .pa-widget .pa-audio-settings input{width:18px;height:18px;margin:0}
  .pa-widget .pa-audio-settings select{width:100%;min-width:0;min-height:44px;font-size:16px;padding:6px}
  .pa-widget #pa-resume{grid-column:1/-1;justify-self:start}
}
@media print{.mobile-site-picker,.weather-mobile-actions,.weather-mobile-back{display:none!important}.weather-page .weather-forecast{visibility:visible;pointer-events:auto}}

@media(max-width:799px),(max-width:1000px) and (max-height:500px){
  .garden-ux .pa-widget .pa-launcher,.garden-ux .pa-widget .pa-restore{left:16px;right:auto;bottom:calc(80px + env(safe-area-inset-bottom))}
}
