/* Desktop island only: no mobile selector, no changes to existing CSS. */
@media (max-width:1023px){#nvDesktopRoot{display:none!important}}
@media (min-width:1024px){
  body:has(#nvDesktopRoot)>:not(#nvDesktopRoot):not(script):not(style){display:none!important}
  body:has(#nvDesktopRoot){margin:0!important;overflow-x:hidden;background:#020c15!important}
  #nvDesktopRoot{display:block!important}
}
#nvDesktopRoot{--nvCyan:#7ad7f6;--nvLine:#a9d9ee44;--nvText:#f1f8fe;--nvGlass:rgba(7,21,33,.78);position:relative;isolation:isolate;min-height:100vh;color:var(--nvText);background:radial-gradient(ellipse at 45% 30%,#183c54,#06111d 75%);font-family:Inter,Arial,system-ui,sans-serif;letter-spacing:-.015em;-webkit-font-smoothing:antialiased}
#nvDesktopRoot *{box-sizing:border-box}#nvDesktopRoot a{color:inherit;text-decoration:none}#nvDesktopRoot button,#nvDesktopRoot input{font:inherit}#nvDesktopRoot button{cursor:pointer}
#nvDesktopRoot svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
#nvDesktopRoot .nvDeskScenery{position:absolute;inset:69px 0 auto;height:740px;z-index:-2;background-image:var(--nv-desktop-scene,url('/assets/odesa/v1/desktop/clear_moon_night.webp'));background-position:center 45%;background-size:cover;filter:saturate(.96) brightness(.76);transition:background-image .6s ease}
#nvDesktopRoot .nvDeskShade{position:absolute;inset:70px 0 0;z-index:-1;pointer-events:none;background:linear-gradient(to bottom,rgba(3,12,23,.28) 0,rgba(3,12,23,.18) 19%,rgba(4,14,23,.26) 39%,rgba(3,13,23,.72) 63%,#030c15 91%),linear-gradient(to right,rgba(2,10,20,.35),transparent 58%)}
#nvDesktopRoot .nvDeskHeader{height:72px;max-width:100%;padding:0 clamp(26px,4.1vw,82px);display:flex;align-items:center;gap:30px;border-bottom:1px solid rgba(167,211,237,.12);background:rgba(4,18,31,.88);box-shadow:0 2px 25px #071b3299;backdrop-filter:blur(19px);position:relative;z-index:20}
#nvDesktopRoot .nvDeskLogo{font-size:35px;font-weight:300;letter-spacing:.27em;white-space:nowrap;line-height:1;color:#fcfdff;text-shadow:0 2px 12px #fff2}
#nvDesktopRoot .nvDeskHeaderSplit{width:1px;height:27px;background:#9cb6c34d;flex-shrink:0}
#nvDesktopRoot .nvDeskNav{display:flex;align-items:center;justify-content:flex-start;gap:clamp(10px,2vw,33px);white-space:nowrap;flex:1}
#nvDesktopRoot .nvNavItem{font-size:14px;display:flex;gap:9px;align-items:center;height:72px;padding:2px 0 0;position:relative;font-weight:570;color:#d9e4ed}
#nvDesktopRoot .nvNavItem svg{width:21px;height:21px;stroke-width:2}
#nvDesktopRoot .nvNavItem.is-current{color:#fff}#nvDesktopRoot .nvNavItem.is-current:after{content:"";position:absolute;bottom:11px;left:28px;right:0;height:2px;background:#62d9fe;box-shadow:0 0 13px #74e6ff}
#nvDesktopRoot .nvNavItem.is-disabled{opacity:.68;cursor:default}
#nvDesktopRoot .nvDeskHeadTools{display:flex;align-items:center;gap:17px;margin-left:auto}
#nvDesktopRoot .nvDeskSearchWrap{position:relative;display:flex;align-items:center;height:44px;border:1px solid #6e94ac88;background:rgba(34,61,83,.65);border-radius:27px;padding:0 12px;min-width:clamp(230px,24vw,390px);box-shadow:inset 0 2px 7px #a9d1ed15}
#nvDesktopRoot .nvDeskSearchWrap svg{width:23px;height:23px;flex:0 0 23px;margin-right:11px}
#nvDesktopRoot .nvDeskSearchWrap input{border:0;outline:0;color:#edf8ff;width:100%;background:transparent;font-size:13px;min-width:0}
#nvDesktopRoot .nvDeskSearchWrap input::placeholder{color:#adbdcc}
#nvDesktopRoot .nvDeskSearchWrap kbd{font-size:11px;border:1px solid #678397;background:#0e2434;border-radius:5px;padding:4px;white-space:nowrap;color:#b8cddd}
#nvDesktopRoot .nvDeskSuggest{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:100;background:#0f2434;border:1px solid #4a7995;border-radius:14px;padding:7px;box-shadow:0 20px 40px #0008;max-height:300px;overflow:auto}#nvDesktopRoot .nvDeskSuggest[hidden]{display:none!important}
#nvDesktopRoot .nvDeskSuggest button{display:block;width:100%;text-align:left;color:#fff;background:transparent;border:0;border-radius:8px;padding:10px 12px}#nvDesktopRoot .nvDeskSuggest button:hover,#nvDesktopRoot .nvDeskSuggest button:focus{background:#22506e}
#nvDesktopRoot .nvHeadIcon{position:relative;flex:0 0 40px;width:40px;height:40px;background:transparent;border:0;color:#e6f2fc;padding:7px}
#nvDesktopRoot .nvHeadIcon svg{width:25px;height:25px}#nvDesktopRoot .nvHeadIcon i{position:absolute;right:9px;top:3px;width:6px;height:6px;background:#53e1ff;box-shadow:0 0 9px #53e1ff;border-radius:50%}
#nvDesktopRoot .nvHeadIcon.is-profile{background:linear-gradient(#203e56,#142a3c);border:1px solid #6890a244;border-radius:50%}
#nvDesktopRoot .nvDeskBody{max-width:1668px;margin:auto;padding:0 clamp(24px,3.8vw,65px) 32px;min-height:calc(100vh - 72px)}
#nvDesktopRoot .nvDeskHero{height:325px;padding:18px 6.8% 0;position:relative}
#nvDesktopRoot .nvCityTrigger{display:flex;align-items:center;color:#f1f7fe;gap:12px;border:0;background:transparent;font-size:35px;font-weight:720;padding:3px 0;line-height:1.2;text-shadow:0 2px 10px #0008}
#nvDesktopRoot .nvCityTrigger>svg:first-child{width:35px;height:40px;stroke-width:2.25}#nvDesktopRoot .nvCityTrigger .nvChevron{width:19px;height:19px;margin-left:4px}
#nvDesktopRoot .nvHeroPrimary{display:flex;gap:28px;align-items:center;min-height:151px}
#nvDesktopRoot .nvHeroTemp{display:flex;align-items:flex-start;white-space:nowrap;line-height:.99;letter-spacing:-.085em;font-weight:340;text-shadow:0 3px 13px #0006}
#nvDesktopRoot .nvHeroTemp strong{font-size:145px;line-height:.94;font-weight:380}#nvDesktopRoot .nvHeroTemp span{font-size:58px;line-height:1;margin:4px 0 0 5px;letter-spacing:0}
#nvDesktopRoot .nvHeroInsight{border-left:1px solid #b8d6e25c;padding:0 0 0 29px;max-width:490px;font-size:22px;line-height:1.32;text-wrap:balance;font-weight:420;text-shadow:0 2px 10px #0009}
#nvDesktopRoot .nvHeroStats{display:flex;gap:0;align-items:center;height:75px;padding-left:30px}
#nvDesktopRoot .nvHeroStat{display:flex;align-items:center;gap:12px;min-width:223px;padding:0 25px;border-right:1px solid #e2eff18a}
#nvDesktopRoot .nvHeroStat:first-child{padding-left:0}#nvDesktopRoot .nvHeroStat:last-child{border:0}
#nvDesktopRoot .nvHeroStat svg{width:39px;height:44px;color:#a1e9ff;flex:0 0 39px;stroke-width:1.65}
#nvDesktopRoot .nvHeroStat small{display:block;font-size:12px;letter-spacing:.01em;color:#d5e9f5;font-weight:700;margin-bottom:1px}
#nvDesktopRoot .nvHeroStat strong{font-size:31px;line-height:1.1;display:block;white-space:nowrap;font-weight:720}
#nvDesktopRoot .nvHeroStat em{font-size:13px;font-style:normal;display:block;line-height:1.2}
#nvDesktopRoot .nvDeskPanels{display:grid;grid-template-columns:minmax(0,1.46fr) minmax(420px,1fr);align-items:stretch;gap:20px}
#nvDesktopRoot .nvGlass{background:linear-gradient(138deg,rgba(8,24,36,.91),rgba(6,18,30,.82));border:1px solid rgba(139,193,224,.36);box-shadow:0 15px 45px #00111b66,inset 0 1px #ffffff14;backdrop-filter:blur(14px);border-radius:19px}
#nvDesktopRoot .nvForecastPanel{min-width:0;height:470px;padding:15px 13px 11px;overflow:hidden}
#nvDesktopRoot .nvForecastHeader{display:flex;gap:10px;justify-content:space-between;align-items:center;margin:0 8px 18px;min-height:47px}
#nvDesktopRoot .nvForecastTabs{display:flex;align-items:center;padding:3px;background:#102638cc;border-radius:100px;gap:3px;border:1px solid #4f779051}
#nvDesktopRoot .nvForecastTabs button{white-space:nowrap;font-size:16px;font-weight:630;border:1px solid transparent;border-radius:100px;background:transparent;color:#dae7ee;padding:11px 19px;line-height:1.15;transition:background .15s,border-color .15s}
#nvDesktopRoot .nvForecastTabs button[aria-selected="true"]{background:linear-gradient(180deg,#367b9b,#0c4262);border-color:#87e5ff;box-shadow:0 0 17px #47cbf0cc,inset 0 0 12px #63c9eb4f;color:#fff}
#nvDesktopRoot .nvForecastTabs button.nvTenDays{font-size:12px;padding:10px 8px;color:#bad4e4;opacity:.8}#nvDesktopRoot .nvForecastTabs button.nvTenDays[aria-selected="true"]{box-shadow:none;background:transparent;border-color:transparent;color:#bad4e4}
#nvDesktopRoot .nvForecastRange{display:flex;align-items:center;gap:8px;color:#d5e4ec;white-space:nowrap;font-size:13px}
#nvDesktopRoot .nvForecastRange svg{width:18px;height:18px}
#nvDesktopRoot .nvForecastChartLayout{position:relative;min-width:0;padding:0 0 0 0;--label-width:202px;--cell-count:7}
#nvDesktopRoot .nvColumnLabels{height:115px;display:grid;grid-template-columns:repeat(var(--cell-count),minmax(0,1fr));margin-left:calc(var(--label-width) + 10px);margin-right:10px;align-items:start}
#nvDesktopRoot .nvDayCol{display:flex;align-items:center;flex-direction:column;gap:7px;position:relative;height:112px;min-width:0;border:0;color:#f5fbff;background:transparent;z-index:3;padding:7px 0 0;cursor:pointer}
#nvDesktopRoot .nvDayCol>span{font-size:16px;white-space:nowrap;color:#e6eef3}#nvDesktopRoot .nvDayCol .nvSkyIcon{width:50px;height:42px;filter:drop-shadow(0 0 7px #81d5ff44);object-fit:contain}#nvDesktopRoot .nvDayCol strong{font-size:23px;line-height:1}
#nvDesktopRoot .nvDayCol:not(:last-child):after{content:"";position:absolute;width:1px;right:0;bottom:4px;height:64px;background:linear-gradient(to bottom,transparent,#8ec7e344,transparent);pointer-events:none}
#nvDesktopRoot .nvMetricsBoard{position:relative;border:1px solid #95c9e43e;border-radius:15px;background:linear-gradient(140deg,#1d3e4c55,#05132177);min-height:247px;padding:0 10px}
#nvDesktopRoot .nvMetricRow{display:grid;grid-template-columns:var(--label-width) minmax(0,1fr);min-width:0;border-bottom:1px solid #7ca2b447}
#nvDesktopRoot .nvMetricRow:last-child{border-bottom:0}
#nvDesktopRoot .nvTempRow{height:104px}#nvDesktopRoot .nvRainRow{height:63px}#nvDesktopRoot .nvWindRow{height:77px}
#nvDesktopRoot .nvMetricTitle{display:flex;align-items:center;gap:11px;min-width:0;font-size:13px;color:#e8f4fe;z-index:3;white-space:nowrap}
#nvDesktopRoot .nvMetricTitle svg{width:28px;height:28px;color:#abeaff;flex:0 0 28px;stroke-width:1.7}
#nvDesktopRoot .nvMetricCell{position:relative;min-width:0}
#nvDesktopRoot .nvTempPlot{position:absolute;top:10px;left:0;height:44px;width:100%;overflow:visible;filter:drop-shadow(0 0 4px #65d7f680)}
#nvDesktopRoot .nvTempValues,#nvDesktopRoot .nvRainValues,#nvDesktopRoot .nvWindValues{display:grid;grid-template-columns:repeat(var(--cell-count),minmax(0,1fr));height:100%;align-items:end;text-align:center;position:relative;z-index:3}
#nvDesktopRoot .nvTempValues{padding:50px 0 5px}#nvDesktopRoot .nvTempPair{display:flex;flex-direction:column;align-items:center;gap:1px;font-size:14px;line-height:1.1}#nvDesktopRoot .nvTempPair span:first-child{color:#9be6ff}#nvDesktopRoot .nvTempPair span:last-child{color:#fbd77a}
#nvDesktopRoot .nvRainValues{padding-bottom:6px}#nvDesktopRoot .nvRainVal{display:flex;align-items:center;flex-direction:column;gap:3px;font-size:14px;color:#e9f4fc}#nvDesktopRoot .nvRainVal b{display:block;width:27px;height:9px;border:1px solid #49ccef88;background:#0a5b80cc;border-radius:3px 3px 0 0;min-height:5px;box-shadow:0 0 7px #39c7ef3d}
#nvDesktopRoot .nvWindValues{padding-top:0;padding-bottom:5px}#nvDesktopRoot .nvWindVal{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:15px;color:#f7fbff}
#nvDesktopRoot .nvWindVal svg{width:32px;height:32px;fill:#8fe6ff!important;stroke:none!important;filter:drop-shadow(0 0 3px #66cdef60)}
#nvDesktopRoot .nvSelectionLens{position:absolute;top:1px;bottom:0;left:calc(var(--label-width) + 10px);width:calc((100% - var(--label-width) - 20px)/var(--cell-count));border:1px solid rgba(103,210,250,.66);border-radius:17px;background:linear-gradient(180deg,#26608436,#2c7b9b2c 45%,#265c8a21);z-index:2;pointer-events:none;transition:transform .2s ease}
#nvDesktopRoot .nvDeskSidebar{display:grid;grid-template-rows:100px 1fr 112px;gap:14px;min-width:0;height:470px}
#nvDesktopRoot .nvActionPanel{display:flex;align-items:center;justify-content:space-around;gap:16px;padding:13px 17px}
#nvDesktopRoot .nvActionPanel button{height:58px;border-radius:36px;display:flex;align-items:center;justify-content:space-evenly;gap:8px;font-size:16px;white-space:nowrap;padding:0 15px;font-weight:570}
#nvDesktopRoot .nvActionPlan{min-width:0;flex:1.05;border:1px solid #d6fdff;color:#072030;background:linear-gradient(#c6f5ff,#5cd1ef 60%,#2286b0);box-shadow:0 0 24px #60dfffaa,inset 0 2px 5px #fff9}
#nvDesktopRoot .nvActionAsk{min-width:0;flex:1;border:2px solid #a7bbcc;color:#eff9ff;background:linear-gradient(#26394a,#061421 70%);box-shadow:inset 0 2px 5px #ffffff44,0 0 5px #fff3}
#nvDesktopRoot .nvActionPanel button svg{width:28px;height:28px;flex:0 0 28px}#nvDesktopRoot .nvActionPanel .nvArrow{font-size:25px;line-height:1}
#nvDesktopRoot .nvDeskMapCard{display:flex;position:relative;overflow:hidden;padding:23px 22px;align-items:center}
#nvDesktopRoot .nvMapCardCopy{position:relative;z-index:2;width:56%}
#nvDesktopRoot .nvMapCardCopy h2{font-size:24px;line-height:1.08;margin:0 0 8px;font-weight:710}
#nvDesktopRoot .nvMapCardCopy p{color:#d7e6ee;line-height:1.45;font-size:13px;margin:0 0 18px;max-width:220px}
#nvDesktopRoot .nvMapCTA{padding:9px 17px;display:inline-flex;gap:10px;border-radius:60px;border:1px solid #c9edffad;background:#1b384db3;font-size:14px;align-items:center}
#nvDesktopRoot .nvMapCardThumb{position:absolute;inset:0 0 0 36%;background:radial-gradient(circle at 90% 15%,#13557f55,transparent 53%),linear-gradient(145deg,#062135,#06182a);overflow:hidden}
#nvDesktopRoot .nvMapCardThumb svg{position:absolute;right:-3%;top:-10%;width:110%;height:120%;stroke-width:2}
#nvDesktopRoot .nvMapPin{position:absolute;right:22%;top:56%;color:white;text-shadow:0 2px 9px black;font-size:18px;white-space:nowrap;font-weight:650}
#nvDesktopRoot .nvDeskDetails{display:flex;align-items:center;gap:18px;padding:20px 27px}
#nvDesktopRoot .nvLayersIcon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#1b597b77,#0f2941aa);color:#b8edff;flex:0 0 54px}
#nvDesktopRoot .nvLayersIcon svg{width:39px;height:39px}
#nvDesktopRoot .nvDeskDetails>span:nth-child(2){display:flex;flex-direction:column;min-width:0;gap:7px;flex:1}
#nvDesktopRoot .nvDeskDetails strong{font-size:20px;line-height:1.15}#nvDesktopRoot .nvDeskDetails small{font-size:13px;line-height:1.3;color:#d1dee9}
#nvDesktopRoot .nvDetailsChevron{font-size:39px;font-weight:200}
#nvDesktopRoot .nvDeskFootnote{display:flex;justify-content:space-between;color:#9bb4c5;font-size:11px;margin:19px 6px}
#nvDesktopRoot .nvDeskDialog{border:1px solid #6bbce48a;color:#effaff;border-radius:23px;background:#0d2334;padding:30px;min-width:min(460px,80vw);box-shadow:0 25px 120px #000c}
#nvDesktopRoot .nvDeskDialog::backdrop{background:#010910bb;backdrop-filter:blur(5px)}
#nvDesktopRoot #nvDeskDialogClose{position:absolute;right:17px;top:10px;background:transparent;color:white;border:0;font-size:30px}
#nvDesktopRoot .nvDeskDialog h2{margin:0 0 12px;font-size:25px}#nvDesktopRoot .nvDeskDialog p{line-height:1.5;color:#c6dbe8;font-size:14px}#nvDesktopRoot .nvDeskDialog input{width:100%;border:1px solid #638eae;border-radius:9px;color:#fff;background:#102e44;padding:12px;margin:7px 0}
#nvDesktopRoot .nvDeskDialog .nvDialogPrimary{border:1px solid #8ddcf5;border-radius:10px;background:#43a9d5;color:#092339;padding:12px 20px;font-weight:650;margin-top:12px}
@media(min-width:1024px) and (max-width:1499px){#nvDesktopRoot .nvDeskHeader{gap:18px;padding-inline:28px}#nvDesktopRoot .nvDeskLogo{font-size:29px;letter-spacing:.21em}#nvDesktopRoot .nvDeskNav{gap:15px}#nvDesktopRoot .nvNavItem{font-size:13px;gap:6px}#nvDesktopRoot .nvDeskSearchWrap{min-width:220px}#nvDesktopRoot .nvDeskBody{padding-inline:28px}#nvDesktopRoot .nvDeskHero{padding-left:6%;height:309px}#nvDesktopRoot .nvHeroTemp strong{font-size:130px}#nvDesktopRoot .nvHeroInsight{font-size:20px}#nvDesktopRoot .nvDeskPanels{grid-template-columns:minmax(0,1.4fr) minmax(365px,.85fr);gap:14px}#nvDesktopRoot .nvForecastPanel{padding-inline:9px}#nvDesktopRoot .nvForecastChartLayout{--label-width:165px}#nvDesktopRoot .nvForecastTabs button{font-size:14px;padding-inline:12px}#nvDesktopRoot .nvMetricTitle{font-size:12px;gap:6px}#nvDesktopRoot .nvMetricTitle svg{width:23px;height:23px;flex-basis:23px}#nvDesktopRoot .nvActionPanel{gap:8px;padding:8px}#nvDesktopRoot .nvActionPanel button{font-size:13px;padding:0 7px;gap:4px}#nvDesktopRoot .nvMapCardCopy h2{font-size:22px}#nvDesktopRoot .nvHeroStat{min-width:197px;padding-inline:17px}}
@media(min-width:1024px) and (max-width:1199px){#nvDesktopRoot .nvNavItem.is-disabled{display:none}#nvDesktopRoot .nvDeskSearchWrap{min-width:195px}#nvDesktopRoot .nvDeskHeadTools{gap:7px}#nvDesktopRoot .nvDeskPanels{grid-template-columns:minmax(0,1fr);gap:15px}#nvDesktopRoot .nvForecastPanel{height:460px}#nvDesktopRoot .nvDeskSidebar{height:auto;grid-template-columns:1fr 1fr;grid-template-rows:100px 185px}#nvDesktopRoot .nvActionPanel{grid-column:1 / -1}#nvDesktopRoot .nvDeskDetails{padding:14px}#nvDesktopRoot .nvDeskHero{height:305px}#nvDesktopRoot .nvDeskScenery{height:1050px}}
@media(min-width:1600px){#nvDesktopRoot .nvDeskBody{padding-inline:56px}#nvDesktopRoot .nvDeskPanels{grid-template-columns:minmax(0,1.5fr) minmax(540px,1fr)}}

/* NADVIR Desktop V2 — precise reference refinement. The entire file is desktop-only.
   Mobile/tablet V6/V7 remain fully untouched. */
@media (min-width:1024px) {
  #nvDesktopRoot {
    --nvCyan:#9eebff;
    --nvLine:rgba(153,203,229,.37);
    --nvGlass:rgba(5,20,33,.84);
    color:#f4faff;
    background:#020b14;
  }
  #nvDesktopRoot .nvDeskScenery {
    top:72px;
    height:calc(720px + 7vh);
    background-position:center 47%;
    filter:saturate(1.03) brightness(.88);
  }
  #nvDesktopRoot .nvDeskShade {
    top:72px;
    background:
      linear-gradient(180deg,rgba(3,14,30,.09) 0%,rgba(3,14,30,.14) 17%,rgba(3,14,30,.13) 29%,rgba(3,15,27,.55) 54%,#020b14 88%),
      linear-gradient(90deg,rgba(0,7,17,.35) 0%,rgba(0,13,27,.08) 54%,rgba(0,10,26,.04) 100%),
      linear-gradient(180deg,rgba(4,32,65,.10),transparent 38%);
  }
  #nvDesktopRoot .nvDeskHeader {
    background:linear-gradient(180deg,rgba(4,18,33,.96),rgba(5,19,35,.91));
    border-bottom:1px solid rgba(131,184,220,.20);
    box-shadow:0 4px 24px rgba(0,5,14,.45);
  }
  #nvDesktopRoot .nvDeskLogo {font-weight:300;letter-spacing:.275em;text-shadow:0 0 16px rgba(224,247,255,.1)}
  #nvDesktopRoot .nvNavItem {font-weight:600;color:rgba(236,246,255,.9)}
  #nvDesktopRoot .nvNavItem.is-current:after {height:2px;bottom:11px;box-shadow:0 0 7px #77ddff,0 0 20px rgba(88,200,246,.76)}
  #nvDesktopRoot .nvDeskSearchWrap {background:linear-gradient(180deg,rgba(39,67,91,.68),rgba(21,48,69,.70));border-color:rgba(138,184,211,.51)}
  #nvDesktopRoot .nvDeskHero {height:329px;padding-left:7.7%;padding-top:18px}
  #nvDesktopRoot .nvCityTrigger {font-size:35px;letter-spacing:0;gap:13px;font-weight:710}
  #nvDesktopRoot .nvHeroPrimary {min-height:153px;align-items:center;gap:30px}
  #nvDesktopRoot .nvHeroTemp strong {font-size:149px;font-weight:380;line-height:.96;letter-spacing:-.09em}
  #nvDesktopRoot .nvHeroTemp span {font-size:59px;margin-top:4px}
  #nvDesktopRoot .nvHeroInsight {font-size:23px;line-height:1.31;max-width:455px;padding-left:29px;min-height:75px;display:flex;align-items:center;font-weight:440;text-shadow:0 2px 12px rgba(0,0,0,.7)}
  #nvDesktopRoot .nvHeroStats {padding-left:54px;height:79px}
  #nvDesktopRoot .nvHeroStat {min-width:225px;gap:12px;padding:0 30px;border-right-color:rgba(207,237,253,.60)}
  #nvDesktopRoot .nvHeroStat svg {width:42px;height:47px;flex-basis:42px;color:#aceaff;filter:drop-shadow(0 0 3px rgba(107,208,253,.22))}
  #nvDesktopRoot .nvHeroStat small {font-size:12px;color:#e1ebf3;letter-spacing:.02em}
  #nvDesktopRoot .nvHeroStat strong {font-size:31px;letter-spacing:-.01em;font-weight:740}
  #nvDesktopRoot .nvDeskPanels {gap:21px}
  #nvDesktopRoot .nvGlass {border:1px solid rgba(133,194,227,.44);background:linear-gradient(125deg,rgba(7,22,36,.88),rgba(4,16,30,.78));box-shadow:0 13px 45px rgba(0,7,18,.41),inset 0 1px rgba(255,255,255,.055);backdrop-filter:blur(16px);border-radius:19px}
  #nvDesktopRoot .nvForecastPanel {height:466px;padding:15px 12px 12px;background:linear-gradient(128deg,rgba(7,24,37,.92),rgba(3,15,29,.79))}
  #nvDesktopRoot .nvForecastHeader {margin:0 8px 18px;min-height:46px}
  #nvDesktopRoot .nvForecastTabs {gap:3px;border-color:rgba(126,175,202,.26);background:linear-gradient(100deg,rgba(17,42,61,.85),rgba(23,46,65,.48));padding:3px}
  #nvDesktopRoot .nvForecastTabs button {font-size:16px;font-weight:600;padding:11px 17px}
  #nvDesktopRoot .nvForecastTabs #nvDeskHourlyTab {min-width:156px}
  #nvDesktopRoot .nvForecastTabs #nvDeskWeekTab {min-width:122px}
  #nvDesktopRoot .nvForecastTabs button[aria-selected="true"] {background:linear-gradient(180deg,#469abb,#125578 80%,#0b3853);box-shadow:0 0 11px rgba(81,210,252,.84),0 0 29px rgba(61,197,243,.44),inset 0 0 10px rgba(206,246,255,.52);border:1px solid #a3f0ff}
  #nvDesktopRoot .nvForecastTabs .nvTenDays {min-width:0;font-size:12px;opacity:.9;padding-inline:10px}
  #nvDesktopRoot .nvForecastRange {font-size:13px;color:#d4e2ed}
  #nvDesktopRoot .nvForecastChartLayout {--label-width:202px}
  #nvDesktopRoot .nvColumnLabels {height:117px}
  #nvDesktopRoot .nvDayCol {height:114px;gap:7px}
  #nvDesktopRoot .nvDayCol>span {font-weight:550;letter-spacing:.01em}
  #nvDesktopRoot .nvDayCol strong {font-size:23px;line-height:1.04;font-weight:670}
  #nvDesktopRoot .nvDayCol .nvSkyIcon {height:43px;width:51px;filter:drop-shadow(0 0 8px rgba(150,229,255,.27))}
  #nvDesktopRoot .nvMetricsBoard {background:linear-gradient(136deg,rgba(28,64,84,.48),rgba(7,22,36,.52));border:1px solid rgba(131,180,209,.30);border-radius:15px;box-shadow:inset 0 1px rgba(255,255,255,.05)}
  #nvDesktopRoot .nvMetricTitle {font-size:14px;color:#f0f6fb;gap:11px}
  #nvDesktopRoot .nvMetricTitle svg {height:30px;width:30px;flex-basis:30px;filter:drop-shadow(0 0 3px rgba(116,224,255,.20))}
  #nvDesktopRoot .nvMetricRow {border-bottom-color:rgba(148,198,223,.30)}
  #nvDesktopRoot .nvTempPlot {top:17px;height:47px;filter:drop-shadow(0 0 5px rgba(104,228,255,.65)) drop-shadow(0 0 8px rgba(107,224,252,.31))}
  #nvDesktopRoot .nvTempValues {padding:54px 0 6px}
  #nvDesktopRoot .nvTempPair {font-size:14px;gap:2px}
  #nvDesktopRoot .nvRainVal b {width:29px;border:1px solid rgba(79,209,246,.6);background:linear-gradient(180deg,#8feeff,#39c0ed 58%,#0d5d87);box-shadow:0 0 10px rgba(60,206,249,.24),inset 0 1px rgba(219,253,255,.46);border-radius:5px 5px 0 0}
  #nvDesktopRoot .nvRainVal {font-size:15px;gap:3px}
  #nvDesktopRoot .nvWindVal svg {width:34px;height:34px;filter:drop-shadow(0 0 4px rgba(98,204,240,.45))}
  #nvDesktopRoot .nvWindVal {font-size:15px}
  #nvDesktopRoot .nvSelectionLens {border:1px solid rgba(117,218,255,.64);background:linear-gradient(180deg,rgba(36,104,145,.26),rgba(41,114,150,.17) 58%,rgba(29,87,121,.17));box-shadow:inset 0 0 13px rgba(72,193,238,.13);border-radius:17px}
  #nvDesktopRoot .nvDeskSidebar {height:466px;grid-template-rows:98px 1fr 112px;gap:14px}
  #nvDesktopRoot .nvActionPanel {gap:24px;padding:12px 19px}
  #nvDesktopRoot .nvActionPanel button {height:60px;font-size:16px;font-weight:630}
  #nvDesktopRoot .nvActionPlan {background:linear-gradient(#d6f9ff,#8be8fb 48%,#3dc0e3 82%,#1a7498);border-color:#ddffff;box-shadow:0 0 18px rgba(85,222,255,.78),0 0 39px rgba(90,199,248,.25),inset 0 2px 5px rgba(255,255,255,.73)}
  #nvDesktopRoot .nvActionAsk {background:linear-gradient(#324659,#091b2c 65%);border-color:rgba(210,227,243,.78);box-shadow:inset 0 2px 5px rgba(255,255,255,.4),0 0 5px rgba(255,255,255,.23)}
  #nvDesktopRoot .nvDeskMapCard {padding:23px 26px;align-items:center;background:linear-gradient(90deg,rgba(5,24,39,.97),rgba(9,28,43,.76) 50%,rgba(4,24,42,.40))}
  #nvDesktopRoot .nvMapCardCopy {width:44%;text-shadow:0 2px 6px rgba(0,4,12,.7)}
  #nvDesktopRoot .nvMapCardCopy h2 {font-size:25px;font-weight:740;line-height:1.07;margin-bottom:12px}
  #nvDesktopRoot .nvMapCardCopy p {font-size:14px;line-height:1.42;max-width:220px;margin-bottom:18px;color:#e5f0f7}
  #nvDesktopRoot .nvMapCTA {font-size:14px;padding:8px 18px;background:rgba(20,52,72,.71);border-color:rgba(214,241,255,.72)}
  #nvDesktopRoot .nvMapCardThumb {inset:0 0 0 33%;background-color:#061a29;background-image:linear-gradient(90deg,#061928 0%,rgba(5,27,44,.53) 22%,transparent 57%),url('/assets/premium/desktop-v1/map-preview-v2.webp');background-size:cover;background-position:center center;}
  #nvDesktopRoot .nvMapCardThumb svg {display:none!important}
  #nvDesktopRoot .nvMapPin {right:16%;top:51%;font-size:19px;font-weight:690;text-shadow:0 2px 5px rgba(0,0,0,.9),0 0 12px rgba(0,0,0,.7)}
  #nvDesktopRoot .nvDeskDetails {padding:19px 28px;gap:21px;background:linear-gradient(118deg,rgba(17,46,66,.90),rgba(5,23,38,.85))}
  #nvDesktopRoot .nvLayersIcon {width:58px;height:58px;flex-basis:58px;background:radial-gradient(circle,rgba(44,128,164,.35),rgba(6,30,52,.20));filter:drop-shadow(0 0 8px rgba(103,218,255,.21))}
  #nvDesktopRoot .nvLayersIcon svg {width:40px;height:40px}
  #nvDesktopRoot .nvDeskDetails strong {font-size:22px;font-weight:730}
  #nvDesktopRoot .nvDeskDetails small {font-size:14px;color:#d9e8f2}
  #nvDesktopRoot .nvDeskFootnote {color:rgba(150,178,198,.85)}
}
@media (min-width:1024px) and (max-width:1499px){
  #nvDesktopRoot .nvDeskHero {height:326px;padding-left:7.1%}
  #nvDesktopRoot .nvHeroTemp strong {font-size:132px}
  #nvDesktopRoot .nvHeroInsight {font-size:20px}
  #nvDesktopRoot .nvHeroStats {padding-left:30px}
  #nvDesktopRoot .nvHeroStat {min-width:190px;padding-inline:18px}
  #nvDesktopRoot .nvForecastChartLayout {--label-width:165px}
  #nvDesktopRoot .nvMetricTitle {font-size:12px;gap:7px}
  #nvDesktopRoot .nvMetricTitle svg {height:25px;width:25px;flex-basis:25px}
  #nvDesktopRoot .nvMapCardCopy h2 {font-size:23px}
  #nvDesktopRoot .nvMapCardCopy p {font-size:12px}
  #nvDesktopRoot .nvActionPanel {gap:9px;padding:9px}
  #nvDesktopRoot .nvActionPanel button {font-size:13px}
}
@media (min-width:1024px) and (max-width:1199px){
  #nvDesktopRoot .nvDeskHero {height:310px}
  #nvDesktopRoot .nvDeskSidebar {height:auto;grid-template-rows:100px 185px}
}
@media (min-width:1600px){
  #nvDesktopRoot .nvDeskBody {padding-inline:62px}
  #nvDesktopRoot .nvDeskHero {height:330px}
}


/* NADVIR PREMIUM DESKTOP V3 — expanded city panorama and reference-relative layout.
   All overrides confined to >=1024px, legacy mobile unaffected. */
@media (min-width:1024px){
  #nvDesktopRoot{background:#020b15;min-height:100svh}
  /* Keep cinematic city scenery visible behind both the hero and cards. */
  #nvDesktopRoot .nvDeskScenery{
    top:72px;height:max(850px,calc(100svh - 72px));
    background-size:100% auto;background-position:center 10%;
    background-repeat:no-repeat;filter:saturate(1.08) contrast(1.035) brightness(.98);
    transition:background-image .25s ease;
  }
  #nvDesktopRoot .nvDeskShade{
    top:72px;
    background:
      linear-gradient(180deg,rgba(0,8,21,.13) 0%,rgba(0,10,20,.09) 19%,rgba(0,12,25,.17) 39%,rgba(0,10,22,.29) 63%,rgba(0,10,20,.57) 78%,#020b15 99%),
      linear-gradient(90deg,rgba(0,7,18,.48) 0%,rgba(0,8,19,.12) 37%,transparent 78%);
  }
  #nvDesktopRoot .nvDeskBody{max-width:1760px;padding-bottom:25px}
  #nvDesktopRoot .nvDeskHero{height:365px;padding-top:23px}
  #nvDesktopRoot .nvHeroPrimary{min-height:160px}
  #nvDesktopRoot .nvHeroTemp strong{font-size:158px;line-height:.92}
  #nvDesktopRoot .nvHeroInsight{font-size:23px;max-width:500px}
  #nvDesktopRoot .nvHeroStats{padding-left:50px;height:83px}
  #nvDesktopRoot .nvGlass{
    background:linear-gradient(135deg,rgba(4,19,35,.80),rgba(2,15,29,.78));
    border-color:rgba(134,191,224,.42);
    backdrop-filter:blur(18px);
    box-shadow:0 9px 39px rgba(0,6,14,.42),inset 0 1px rgba(255,255,255,.09);
  }
  #nvDesktopRoot .nvDeskPanels{gap:21px;grid-template-columns:minmax(0,1.5fr) minmax(500px,1fr)}
  #nvDesktopRoot .nvForecastPanel{height:438px;padding-top:14px;padding-bottom:10px}
  #nvDesktopRoot .nvForecastHeader{margin-bottom:7px}
  #nvDesktopRoot .nvColumnLabels{height:112px}
  #nvDesktopRoot .nvDayCol{height:111px}
  #nvDesktopRoot .nvMetricsBoard{min-height:238px}
  #nvDesktopRoot .nvTempRow{height:100px}
  #nvDesktopRoot .nvRainRow{height:62px}
  #nvDesktopRoot .nvWindRow{height:75px}
  #nvDesktopRoot .nvDeskSidebar{height:438px;grid-template-rows:91px 1fr 100px;gap:12px}
  #nvDesktopRoot .nvActionPanel{padding:9px 16px;gap:15px}
  #nvDesktopRoot .nvActionPanel button{height:57px}
  #nvDesktopRoot .nvDeskMapCard{padding:18px 23px}
  #nvDesktopRoot .nvMapCardCopy h2{font-size:26px}
  #nvDesktopRoot .nvDeskDetails{padding:15px 24px}
  #nvDesktopRoot .nvDeskFootnote{margin-top:15px}
}
@media (min-width:1024px) and (max-width:1499px){
 #nvDesktopRoot .nvDeskHero{height:345px}
 #nvDesktopRoot .nvHeroTemp strong{font-size:136px}
 #nvDesktopRoot .nvHeroInsight{font-size:20px}
 #nvDesktopRoot .nvDeskPanels{grid-template-columns:minmax(0,1.38fr) minmax(345px,.84fr);gap:14px}
 #nvDesktopRoot .nvForecastPanel{height:438px}
 #nvDesktopRoot .nvDeskSidebar{height:438px}
 #nvDesktopRoot .nvForecastChartLayout{--label-width:165px}
 #nvDesktopRoot .nvHeroStats{padding-left:30px}
 #nvDesktopRoot .nvDeskScenery{background-size:cover;background-position:center 18%}
}
@media (min-width:1024px) and (max-width:1199px){
 #nvDesktopRoot .nvDeskHero{height:320px}
 #nvDesktopRoot .nvDeskPanels{grid-template-columns:minmax(0,1fr)}
 #nvDesktopRoot .nvDeskSidebar{height:auto;grid-template-columns:1fr 1fr;grid-template-rows:95px 200px}
 #nvDesktopRoot .nvForecastPanel{height:450px}
 #nvDesktopRoot .nvDeskScenery{height:1100px}
}

/* NADVIR DESKTOP V4: four user-directed refinements, desktop only.
   Header is translucent; city weather facts sit on the bottom edge of hero.
   Combined card area is an opaque dark mat and ~20% more compact. */
@media (min-width:1024px){
 #nvDesktopRoot .nvDeskScenery{
   top:0!important;
   height:max(1020px,100svh)!important;
   background-position:center 10%!important;
   filter:saturate(1.07) contrast(1.04) brightness(.99)!important;
 }
 #nvDesktopRoot .nvDeskShade{
   top:0!important;
   background:
     linear-gradient(180deg,rgba(1,10,21,.25) 0,rgba(1,9,19,.08) 12%,rgba(1,10,19,.08) 43%,rgba(1,10,20,.25) 66%,rgba(1,10,20,.72) 95%,#020b15 100%),
     linear-gradient(90deg,rgba(0,5,15,.29),transparent 50%)!important;
 }
 #nvDesktopRoot .nvDeskHeader{
   background:linear-gradient(180deg,rgba(2,12,26,.44) 0%,rgba(2,12,26,.17) 72%,rgba(2,12,26,.045) 100%)!important;
   border-bottom:1px solid rgba(137,189,219,.13)!important;
   box-shadow:none!important;
   backdrop-filter:blur(3px)!important;
   -webkit-backdrop-filter:blur(3px)!important;
 }
 #nvDesktopRoot .nvDeskHero{
   height:470px!important;
   padding-top:20px!important;
 }
 #nvDesktopRoot .nvHeroStats{
   position:absolute!important;
   bottom:0!important;
   left:7.7%!important;
   width:min(825px,85%)!important;
   min-height:69px!important;height:69px!important;
   padding:7px 20px!important;
   display:flex!important;align-items:center!important;
   background:linear-gradient(100deg,rgba(1,11,22,.81),rgba(4,18,32,.70))!important;
   border:1px solid rgba(146,196,227,.24)!important;
   border-bottom:0!important;
   border-radius:16px 16px 0 0!important;
   box-shadow:0 -5px 25px rgba(0,5,15,.16)!important;
   backdrop-filter:blur(11px)!important;
 }
 #nvDesktopRoot .nvHeroStat{
   min-width:0!important;
   flex:1 1 0!important;
   height:45px!important;
   padding:0 14px!important;
   gap:10px!important;
 }
 #nvDesktopRoot .nvHeroStat:first-child{padding-left:4px!important}
 #nvDesktopRoot .nvHeroStat:last-child{padding-right:0!important}
 #nvDesktopRoot .nvHeroStat svg{
   width:28px!important;height:34px!important;flex-basis:28px!important;
 }
 #nvDesktopRoot .nvHeroStat small{font-size:10px!important;line-height:1.2!important}
 #nvDesktopRoot .nvHeroStat strong{font-size:23px!important;line-height:1.13!important}
 #nvDesktopRoot .nvHeroStat em{font-size:10px!important}
 #nvDesktopRoot .nvDeskPanels{
   width:82%!important;
   max-width:1350px!important;
   margin:0 auto!important;
   padding:10px!important;
   gap:12px!important;
   grid-template-columns:minmax(0,1.47fr) minmax(0,1fr)!important;
   align-items:stretch!important;
   border:1px solid rgba(105,152,183,.23)!important;
   border-radius:20px!important;
   background:rgba(2,11,22,.93)!important;
   box-shadow:0 15px 39px rgba(0,4,12,.52)!important;
   isolation:isolate!important;
 }
 #nvDesktopRoot .nvGlass{
   border-radius:15px!important;
   backdrop-filter:blur(8px)!important;
 }
 #nvDesktopRoot .nvForecastPanel{
   height:350px!important;
   padding:10px 8px 8px!important;
 }
 #nvDesktopRoot .nvForecastHeader{
   min-height:37px!important;
   margin:0 6px 9px!important;
   gap:8px!important;
 }
 #nvDesktopRoot .nvForecastTabs{padding:2px!important;gap:1px!important}
 #nvDesktopRoot .nvForecastTabs button{
   font-size:12px!important;
   padding:7px 10px!important;
   min-height:34px!important;
 }
 #nvDesktopRoot .nvForecastTabs #nvDeskHourlyTab{min-width:95px!important}
 #nvDesktopRoot .nvForecastTabs #nvDeskWeekTab{min-width:90px!important}
 #nvDesktopRoot .nvForecastTabs .nvTenDays{font-size:10px!important;min-width:0!important}
 #nvDesktopRoot .nvForecastRange{font-size:10px!important;white-space:nowrap!important}
 #nvDesktopRoot .nvForecastRange svg{width:14px!important;height:14px!important}
 #nvDesktopRoot .nvForecastChartLayout{--label-width:125px!important}
 #nvDesktopRoot .nvColumnLabels{height:85px!important}
 #nvDesktopRoot .nvDayCol{height:83px!important;gap:2px!important;padding-top:4px!important}
 #nvDesktopRoot .nvDayCol>span{font-size:12px!important}
 #nvDesktopRoot .nvDayCol .nvSkyIcon{width:35px!important;height:32px!important}
 #nvDesktopRoot .nvDayCol strong{font-size:17px!important}
 #nvDesktopRoot .nvMetricsBoard{min-height:194px!important;padding:0 6px!important}
 #nvDesktopRoot .nvTempRow{height:81px!important}
 #nvDesktopRoot .nvRainRow{height:52px!important}
 #nvDesktopRoot .nvWindRow{height:61px!important}
 #nvDesktopRoot .nvMetricTitle{font-size:11px!important;gap:6px!important;white-space:normal!important}
 #nvDesktopRoot .nvMetricTitle svg{width:20px!important;height:23px!important;flex-basis:20px!important}
 #nvDesktopRoot .nvTempPlot{top:8px!important;height:33px!important}
 #nvDesktopRoot .nvTempValues{padding:37px 0 3px!important}
 #nvDesktopRoot .nvTempPair{font-size:11px!important}
 #nvDesktopRoot .nvRainVal{font-size:11px!important;gap:2px!important}
 #nvDesktopRoot .nvRainVal b{max-width:22px!important}
 #nvDesktopRoot .nvWindVal{font-size:11px!important}
 #nvDesktopRoot .nvWindVal svg{width:25px!important;height:25px!important}
 #nvDesktopRoot .nvSelectionLens{border-radius:12px!important}
 #nvDesktopRoot .nvDeskSidebar{
   height:350px!important;
   grid-template-columns:minmax(0,1fr)!important;
   grid-template-rows:74px minmax(0,1fr) 72px!important;
   gap:10px!important;
 }
 #nvDesktopRoot .nvActionPanel{padding:8px 10px!important;gap:10px!important}
 #nvDesktopRoot .nvActionPanel button{height:46px!important;font-size:12px!important;padding:0 8px!important}
 #nvDesktopRoot .nvActionPanel button svg{width:21px!important;height:21px!important}
 #nvDesktopRoot .nvDeskMapCard{padding:13px 15px!important}
 #nvDesktopRoot .nvMapCardCopy{width:50%!important}
 #nvDesktopRoot .nvMapCardCopy h2{font-size:19px!important;margin-bottom:6px!important}
 #nvDesktopRoot .nvMapCardCopy p{font-size:11px!important;line-height:1.32!important;margin-bottom:8px!important}
 #nvDesktopRoot .nvMapCTA{font-size:10px!important;padding:6px 11px!important}
 #nvDesktopRoot .nvMapPin{font-size:13px!important}
 #nvDesktopRoot .nvDeskDetails{padding:8px 16px!important;gap:10px!important}
 #nvDesktopRoot .nvLayersIcon{width:40px!important;height:40px!important;flex-basis:40px!important}
 #nvDesktopRoot .nvLayersIcon svg{width:29px!important;height:29px!important}
 #nvDesktopRoot .nvDeskDetails strong{font-size:16px!important}
 #nvDesktopRoot .nvDeskDetails small{font-size:10px!important}
 #nvDesktopRoot .nvDeskFootnote{
   max-width:1350px!important;
   width:82%!important;
   margin:9px auto!important;
   font-size:10px!important;
 }
}
@media (min-width:1200px) and (max-width:1599px){
 #nvDesktopRoot .nvDeskHero{height:450px!important}
 #nvDesktopRoot .nvHeroStats{left:7%!important;width:min(770px,86%)!important}
 #nvDesktopRoot .nvDeskPanels{width:89%!important}
 #nvDesktopRoot .nvDeskFootnote{width:89%!important}
}
@media (min-width:1024px) and (max-width:1199px){
 #nvDesktopRoot .nvDeskHero{height:405px!important}
 #nvDesktopRoot .nvHeroStats{left:5%!important;width:90%!important}
 #nvDesktopRoot .nvDeskPanels{width:97%!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
 #nvDesktopRoot .nvForecastPanel{height:346px!important}
 #nvDesktopRoot .nvDeskSidebar{height:auto!important;grid-template-rows:70px 155px 69px!important;grid-template-columns:minmax(0,1fr)!important}
 #nvDesktopRoot .nvDeskFootnote{width:97%!important}
}

/* NADVIR DESKTOP V5 — full-width compact dashboard, genuinely transparent header,
   opaque between-card background, nearly invisible stat backing.
   Desktop-only. Mobile and tablet display remain unchanged. */
@media (min-width:1024px){
  #nvDesktopRoot .nvDeskHeader{
    background:linear-gradient(
      to bottom,
      rgba(3,10,19,.24) 0%,
      rgba(3,10,19,.10) 46%,
      rgba(3,10,19,0) 100%
    )!important;
    border:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  #nvDesktopRoot .nvHeroStats{
    background:linear-gradient(
      90deg,
      rgba(1,10,21,.18) 0%,
      rgba(1,10,21,.12) 65%,
      rgba(1,10,21,.08) 100%
    )!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    border:1px solid rgba(143,189,209,.09)!important;
    border-bottom:0!important;
    box-shadow:none!important;
  }
  #nvDesktopRoot .nvHeroStat small,
  #nvDesktopRoot .nvHeroStat strong,
  #nvDesktopRoot .nvHeroStat em{
    text-shadow:0 1px 5px rgba(0,0,0,.60)!important;
  }
  #nvDesktopRoot .nvDeskPanels{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:10px!important;
    column-gap:12px!important;
    row-gap:10px!important;
    background:#03101d!important;
    border:1px solid rgba(112,159,188,.23)!important;
    border-radius:18px!important;
    box-shadow:0 13px 36px rgba(0,6,15,.50)!important;
    isolation:isolate!important;
  }
  #nvDesktopRoot .nvDeskPanels::before{
    content:none!important;
  }
  #nvDesktopRoot .nvDeskFootnote{
    width:100%!important;
    max-width:none!important;
    margin:9px 0!important;
  }
}
/* The prior version narrowed the container at these widths. Restore full width,
   while retaining the compact forecast card, actions, map and details heights. */
@media (min-width:1200px) and (max-width:1599px){
  #nvDesktopRoot .nvDeskPanels{width:100%!important;max-width:none!important;margin:0!important}
  #nvDesktopRoot .nvDeskFootnote{width:100%!important;max-width:none!important}
}
@media (min-width:1024px) and (max-width:1199px){
  #nvDesktopRoot .nvDeskPanels{width:100%!important;max-width:none!important;margin:0!important}
  #nvDesktopRoot .nvDeskFootnote{width:100%!important;max-width:none!important}
}


/* NADVIR DESKTOP V6 — forecast-row weather facts and page-wide fading darkness.
   Scoped to desktop; no changes below 1024px. */
@media (min-width:1024px){
  /* Strip away the rounded, dark dashboard container itself. The four cards
     retain their own glass surfaces and independent rounded borders. */
  #nvDesktopRoot .nvDeskPanels{
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    isolation:isolate!important;
    column-gap:14px!important;
    row-gap:12px!important;
  }
  /* Full-viewport backdrop: no visible frame or rectangle. Fade begins just
     above the cards and darkens until opaque beneath them. */
  #nvDesktopRoot .nvDeskPanels::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:50%!important;
    top:-58px!important;
    width:100vw!important;
    height:calc(100% + 300px)!important;
    transform:translateX(-50%)!important;
    z-index:-1!important;
    pointer-events:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:linear-gradient(
      180deg,
      rgba(2,11,22,0) 0%,
      rgba(2,11,22,.21) 15%,
      rgba(2,11,22,.50) 37%,
      rgba(2,11,22,.83) 62%,
      rgba(2,11,22,.98) 85%,
      #020b15 100%
    )!important;
  }
  #nvDesktopRoot .nvForecastHeader{
    display:grid!important;
    grid-template-columns:max-content minmax(0,1fr) max-content!important;
    align-items:center!important;
    gap:10px!important;
  }
  /* Moved into forecast header in the server-rendered template — keep it in
     normal flow, not absolutely anchored to the former hero section. */
  #nvDesktopRoot .nvForecastHeader .nvForecastQuickStats{
    position:static!important;
    inset:auto!important;
    left:auto!important;
    bottom:auto!important;
    top:auto!important;
    right:auto!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:0!important;
    height:37px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-around!important;
    overflow:hidden!important;
  }
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat{
    height:30px!important;
    flex:1 1 0!important;
    min-width:0!important;
    padding:0 7px!important;
    margin:0!important;
    gap:5px!important;
    border-right:1px solid rgba(146,189,215,.17)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat:first-child{padding-left:0!important}
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat:last-child{padding-right:0!important;border-right:0!important}
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat svg{
    width:18px!important;
    height:23px!important;
    flex:0 0 18px!important;
    stroke-width:1.5!important;
  }
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat small{
    font-size:8px!important;
    line-height:1.06!important;
    letter-spacing:0!important;
    font-weight:630!important;
    margin-bottom:2px!important;
    white-space:nowrap!important;
  }
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat strong{
    font-size:15px!important;
    line-height:1.0!important;
    letter-spacing:0!important;
    font-weight:720!important;
    white-space:nowrap!important;
  }
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat em{
    font-size:8px!important;
    margin-top:1px!important;
    white-space:nowrap!important;
  }
  #nvDesktopRoot .nvForecastTabs,
  #nvDesktopRoot .nvForecastRange{
    flex-shrink:0!important;
  }
  #nvDesktopRoot .nvDeskFootnote{
    position:relative!important;
    z-index:1!important;
    width:100%!important;
    max-width:none!important;
    margin-top:12px!important;
  }
}
@media (min-width:1024px) and (max-width:1450px){
  #nvDesktopRoot .nvForecastHeader{gap:6px!important}
  #nvDesktopRoot .nvForecastTabs #nvDeskHourlyTab{min-width:74px!important}
  #nvDesktopRoot .nvForecastTabs #nvDeskWeekTab{min-width:76px!important}
  #nvDesktopRoot .nvForecastTabs button{font-size:10px!important;padding-inline:7px!important}
  #nvDesktopRoot .nvForecastTabs .nvTenDays{font-size:9px!important}
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat{padding-inline:3px!important;gap:3px!important}
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat svg{width:15px!important;height:20px!important;flex-basis:15px!important}
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat small{font-size:7px!important}
  #nvDesktopRoot .nvForecastQuickStats .nvHeroStat strong{font-size:13px!important}
  #nvDesktopRoot .nvForecastRange{font-size:9px!important}
}


/* NADVIR DESKTOP V7: expressive smooth temperature profile + ten-day active state.
   This sheet is loaded only at >=1024px. Mobile styles and scripts are untouched. */
@media (min-width:1024px){
 #nvDesktopRoot .nvTempPlot{
   top:3px!important;
   height:43px!important;
   width:100%!important;
   overflow:visible!important;
   filter:drop-shadow(0 0 4px rgba(242,225,125,.36))
          drop-shadow(0 0 5px rgba(91,218,250,.39))!important;
 }
 #nvDesktopRoot .nvTempValues{
   padding:47px 0 3px!important;
 }
 #nvDesktopRoot .nvForecastTabs button.nvTenDays[aria-selected="true"]{
   opacity:1!important;
   color:#fff!important;
   background:linear-gradient(180deg,#469abb,#125578 80%,#0b3853)!important;
   border:1px solid #a3f0ff!important;
   box-shadow:0 0 11px rgba(81,210,252,.84),
              0 0 24px rgba(61,197,243,.38),
              inset 0 0 10px rgba(206,246,255,.45)!important;
 }
 #nvDesktopRoot .nvForecastTabs button.nvTenDays[aria-selected="false"]{
   background:transparent!important;
   border-color:transparent!important;
   box-shadow:none!important;
   opacity:.9!important;
 }
}
