:root {
  --bg:#020304;
  --white:#f6f6f4;
  --muted:#cfd2d8;
  --red:#ef232a;
  --red2:#ff4b50;
  --red-soft:rgba(239,35,42,.28);
  --green:#34e85a;
  --green2:#74ff8a;
  --green-soft:rgba(52,232,90,.26);
  --safe-x:clamp(22px,1.55vw,34px);
  --ui-font:"Segoe UI",Roboto,Arial,Helvetica,sans-serif;
  --display-font:"Arial Narrow","Roboto Condensed","Segoe UI Condensed","Helvetica Neue",Arial,sans-serif;
  --number-font:"Arial Narrow","Helvetica Neue",Arial,Helvetica,sans-serif;
}
*{box-sizing:border-box}
html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#000;color:var(--white);font-family:var(--ui-font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.stage{position:relative;width:100vw;height:100vh;background:radial-gradient(circle at 50% -10%,rgba(239,35,42,.16),transparent 35%),radial-gradient(circle at 18% 54%,rgba(239,35,42,.065),transparent 31%),radial-gradient(circle at 80% 54%,rgba(52,232,90,.065),transparent 31%),linear-gradient(180deg,#080506,#010101 80%)}
.stage:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.028) 0 1px,transparent 1px 7px);opacity:.32;pointer-events:none}.stage:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.028) 50%,transparent 58%);transform:translateX(-70%);animation:stageSweep 30s linear infinite;pointer-events:none}.screen{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s ease}.screen.is-active{opacity:1;visibility:visible}.screen-prices{padding:2.6vh var(--safe-x) 2.1vh}.topbar{display:grid;grid-template-columns:1.05fr 1.3fr 1.05fr;align-items:center;gap:1.55vw;height:13.4vh}.info-card{height:10.8vh;min-height:78px;border:1px solid rgba(255,255,255,.17);border-radius:18px;background:linear-gradient(180deg,rgba(24,27,31,.74),rgba(3,4,5,.93));box-shadow:0 0 0 1px rgba(239,35,42,.18),0 18px 36px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.14),inset 0 -18px 42px rgba(0,0,0,.34);display:flex;align-items:center;padding:0 1.05vw;overflow:hidden;position:relative}.info-card:after{content:"";position:absolute;inset:-60% -110%;background:linear-gradient(105deg,transparent 45%,rgba(255,255,255,.075) 50%,transparent 56%);animation:softSweep 14s ease-in-out infinite;pointer-events:none}.weather-card{gap:.82vw}.weather-icon{font-size:clamp(32px,3.0vw,56px);filter:drop-shadow(0 0 12px rgba(255,204,80,.25));line-height:1}.weather-temp{font-family:var(--number-font);font-size:clamp(36px,3.0vw,58px);font-weight:900;line-height:.86;letter-spacing:-.02em}.weather-desc{font-size:clamp(12px,.85vw,16px);font-weight:700;color:#eceef3;margin-top:7px;white-space:nowrap}.divider{width:1px;align-self:stretch;margin:18px .45vw;background:linear-gradient(transparent,rgba(255,255,255,.42),transparent)}.time-copy{display:flex;align-items:flex-end;gap:.35vw;min-width:0;white-space:nowrap;overflow:hidden}#clockTime{font-family:var(--number-font);font-size:clamp(34px,3.2vw,62px);line-height:.82;font-weight:900;letter-spacing:-.055em}.clock-ampm{font-size:clamp(12px,.8vw,16px);margin-bottom:.42em;font-weight:800;letter-spacing:.02em}.brand{height:11.8vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:visible}.brand-logo{display:block;width:min(27vw,520px);height:10.8vh;object-fit:contain;filter:drop-shadow(0 0 10px rgba(255,255,255,.10)) drop-shadow(0 0 16px rgba(239,35,42,.16))}.brand-logo.is-hidden{display:none}.brand-fallback{display:none;font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,3vw,58px);font-weight:900;letter-spacing:.02em;text-align:center;text-shadow:0 0 12px rgba(239,35,42,.18)}.brand-fallback.show{display:block}.date-card{justify-content:center;gap:1vw}.date-copy{min-width:0}.calendar-icon{width:clamp(44px,3.8vw,70px);height:clamp(44px,3.8vw,70px);display:grid;place-items:center;color:var(--red)}.calendar-icon svg{width:100%;height:100%;fill:currentColor;filter:drop-shadow(0 0 12px rgba(239,35,42,.36))}.date-main{font-family:var(--display-font);font-size:clamp(18px,1.38vw,27px);line-height:1.04;font-weight:900;letter-spacing:.028em;white-space:nowrap}.date-status{display:flex;align-items:center;gap:.45vw;color:#f0f1f4;font-size:clamp(13px,1.0vw,19px);margin-top:10px;font-weight:800}.check-dot{display:grid;place-items:center;width:clamp(22px,1.75vw,32px);height:clamp(22px,1.75vw,32px);border-radius:50%;background:var(--green);color:#031006;font-weight:900;box-shadow:0 0 15px rgba(52,232,90,.36);animation:checkPulse 4s ease-in-out infinite}.header-line{height:2px;margin:.85vh 0 2.25vh;background:linear-gradient(90deg,transparent,rgba(239,35,42,.55) 8%,rgba(239,35,42,.96) 53%,rgba(239,35,42,.26) 89%,transparent);box-shadow:0 0 18px rgba(239,35,42,.32);position:relative}.header-line:after{content:"";position:absolute;top:-3px;width:11vw;height:8px;border-radius:99px;background:linear-gradient(90deg,transparent,rgba(255,75,80,.78),transparent);animation:lineRunner 10s linear infinite}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25vw;height:56.7vh}.price-card{--card:var(--red);--card2:var(--red2);--card-soft:var(--red-soft);position:relative;overflow:hidden;border-radius:21px;border:1.5px solid var(--card);background:linear-gradient(180deg,rgba(255,255,255,.058),rgba(0,0,0,.09) 20%,rgba(0,0,0,.45)),radial-gradient(circle at 50% 0,var(--card-soft),transparent 48%),linear-gradient(180deg,rgba(14,16,18,.96),rgba(0,0,0,.96));box-shadow:0 18px 36px rgba(0,0,0,.68),0 0 18px var(--card-soft),inset 0 1px 0 rgba(255,255,255,.16),inset 0 -40px 62px rgba(0,0,0,.28);padding:clamp(14px,1.25vw,24px) clamp(12px,1.05vw,20px);display:flex;flex-direction:column;align-items:center}.price-card.red{--card:var(--red);--card2:var(--red2);--card-soft:var(--red-soft)}.price-card.green{--card:var(--green);--card2:var(--green2);--card-soft:var(--green-soft)}.price-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 100%,var(--card-soft),transparent 31%),repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,transparent 1px 9px);opacity:.45;pointer-events:none}.price-card:after{content:"";position:absolute;left:8%;right:8%;bottom:0;height:3px;border-radius:99px;background:var(--card);box-shadow:0 0 18px var(--card),0 0 32px var(--card);opacity:.78;animation:bottomGlow 5.4s ease-in-out infinite}.price-card.is-highlighted{animation:cardAura 5.2s ease-in-out infinite}.price-card.is-highlighted .pump-badge{animation:iconBreathe 4s ease-in-out infinite}.price-card.is-highlighted .price{animation:priceGlow 5.2s ease-in-out infinite}.pump-badge{width:clamp(64px,5.5vw,106px);height:clamp(64px,5.5vw,106px);border-radius:50%;display:grid;place-items:center;color:#fff;background:radial-gradient(circle at 35% 23%,rgba(255,255,255,.20),transparent 25%),linear-gradient(180deg,var(--card2),rgba(0,0,0,.56));border:1px solid rgba(255,255,255,.44);box-shadow:inset 0 0 20px rgba(255,255,255,.13),0 0 0 7px rgba(0,0,0,.36),0 0 21px var(--card-soft);position:relative;z-index:2}.pump-badge:after{content:"";position:absolute;inset:-12px;border-radius:50%;border:1px solid var(--card);opacity:.22;animation:ringPulse 4.6s ease-in-out infinite}.pump-badge svg{width:54%;height:54%;fill:currentColor;filter:drop-shadow(0 7px 8px rgba(0,0,0,.36))}.price-card h2{font-family:var(--display-font);font-size:clamp(33px,2.9vw,56px);line-height:.94;letter-spacing:.018em;font-weight:900;text-align:center;white-space:nowrap;margin:clamp(16px,2.1vh,24px) 0 clamp(9px,1.15vh,14px);text-shadow:0 3px 0 rgba(0,0,0,.32),0 0 10px rgba(255,255,255,.10);position:relative;z-index:2}.price-card[data-key="dslFullLoad"] h2{font-size:clamp(26px,2.25vw,43px)}.subline{display:grid;grid-template-columns:1fr auto 1fr;gap:.55vw;align-items:center;width:100%;font-family:var(--ui-font);font-size:clamp(10px,.72vw,14px);letter-spacing:.07em;font-weight:800;color:#dde1e7;white-space:nowrap;position:relative;z-index:2}.subline span{height:2px;background:var(--card);box-shadow:0 0 10px var(--card-soft)}.price{margin-top:auto;display:flex;align-items:flex-start;justify-content:center;width:100%;font-family:var(--number-font);font-weight:900;line-height:.80;letter-spacing:-.055em;text-shadow:0 7px 14px rgba(0,0,0,.62),0 0 9px rgba(255,255,255,.10);position:relative;z-index:2}.price .currency{font-size:clamp(35px,2.9vw,56px);line-height:.92;margin-right:.23vw;color:#c7c9d0;letter-spacing:-.06em}.price span:last-child{font-size:clamp(50px,4.65vw,89px)}.freight{margin:clamp(10px,1.25vh,16px) 0 clamp(8px,1.1vh,14px);font-family:var(--ui-font);font-size:clamp(12px,.86vw,17px);font-weight:800;color:#e8e9ee;text-align:center;letter-spacing:-.005em;position:relative;z-index:2}.soft-sheen{position:absolute;inset:-42% -105%;background:linear-gradient(105deg,transparent 44%,rgba(255,255,255,.06) 50%,transparent 57%);animation:cardSheen 13s ease-in-out infinite;pointer-events:none;opacity:.35}.ticker-wrap{position:absolute;left:var(--safe-x);right:var(--safe-x);bottom:2.1vh;height:7.6vh;min-height:58px;border:1px solid rgba(239,35,42,.92);border-radius:16px;background:linear-gradient(180deg,rgba(19,21,25,.90),rgba(0,0,0,.96)),repeating-linear-gradient(90deg,rgba(239,35,42,.07) 0 2px,transparent 2px 14px);box-shadow:0 0 23px rgba(239,35,42,.24),inset 0 1px 0 rgba(255,255,255,.1);display:flex;align-items:center;overflow:hidden}.ticker-logo{width:7.5vw;min-width:94px;height:100%;display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(90deg,rgba(239,35,42,.15),transparent)}.ticker-logo:after{content:"›››";position:absolute;right:-.55vw;color:var(--red);font-size:clamp(32px,2.5vw,52px);letter-spacing:-.16em;animation:chevronPulse 2s ease-in-out infinite}.ticker-logo img{max-width:5.4vw;max-height:5.6vh;object-fit:contain;filter:drop-shadow(0 0 8px rgba(239,35,42,.25))}.ticker-window{flex:1;height:100%;display:flex;align-items:center;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.ticker-track{display:flex;align-items:center;gap:1.1vw;white-space:nowrap;font-family:var(--display-font);font-size:clamp(17px,1.35vw,26px);font-weight:900;letter-spacing:.005em;text-shadow:0 2px 6px rgba(0,0,0,.72);animation:tickerScroll 42s linear infinite;padding-left:1vw}.ticker-track b{color:var(--red2);font-size:1.05em;text-shadow:0 0 11px rgba(239,35,42,.52)}.screen-video{background:#000;display:grid;place-items:center}.screen-video video{width:100%;height:100%;object-fit:cover;background:#000}.video-fallback{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.72);border:1px solid rgba(255,255,255,.25);padding:12px 18px;border-radius:12px;color:#fff;opacity:0;transition:opacity .3s}.video-fallback.show{opacity:1}@keyframes tickerScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes cardSheen{0%,62%{transform:translateX(-60%);opacity:0}70%{opacity:.38}88%{transform:translateX(60%);opacity:0}100%{transform:translateX(60%);opacity:0}}@keyframes softSweep{0%,70%{transform:translateX(-58%);opacity:0}82%{opacity:.45}100%{transform:translateX(58%);opacity:0}}@keyframes iconBreathe{0%,100%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.022);filter:brightness(1.08)}}@keyframes bottomGlow{0%,100%{opacity:.56}50%{opacity:.96}}@keyframes lineRunner{from{transform:translateX(-12vw)}to{transform:translateX(100vw)}}@keyframes chevronPulse{0%,100%{opacity:.48;transform:translateX(0)}50%{opacity:.95;transform:translateX(6px)}}@keyframes ringPulse{0%,100%{transform:scale(.97);opacity:.18}50%{transform:scale(1.035);opacity:.36}}@keyframes checkPulse{0%,100%{box-shadow:0 0 11px rgba(52,232,90,.24)}50%{box-shadow:0 0 18px rgba(52,232,90,.44)}}@keyframes priceGlow{0%,100%{text-shadow:0 7px 14px rgba(0,0,0,.62),0 0 8px rgba(255,255,255,.08)}50%{text-shadow:0 7px 14px rgba(0,0,0,.62),0 0 16px var(--card-soft)}}@keyframes cardAura{0%,100%{box-shadow:0 18px 36px rgba(0,0,0,.68),0 0 18px var(--card-soft),inset 0 1px 0 rgba(255,255,255,.16)}50%{box-shadow:0 18px 36px rgba(0,0,0,.68),0 0 29px var(--card-soft),inset 0 1px 0 rgba(255,255,255,.16)}}@keyframes stageSweep{from{transform:translateX(-70%)}to{transform:translateX(70%)}}

/* V4 Samsung TV fit safeguards: prevents card/time clipping on TV browser zoom */
.time-copy{max-width:52%;}
.weather-copy{min-width:0;}
.price{transform:scale(.98);transform-origin:center;}
.price-card[data-key="dslFullLoad"] .price span:last-child{font-size:clamp(48px,4.25vw,82px);}
@media (min-aspect-ratio: 17/9){
  .screen-prices{padding-top:2.1vh;}
  .topbar{height:12.8vh;}
  .info-card{height:10.1vh;}
  .brand-logo{height:10vh;width:min(25vw,500px);}
  .cards{height:55.2vh;}
  .price span:last-child{font-size:clamp(48px,4.35vw,84px);}
  .price-card h2{font-size:clamp(31px,2.65vw,52px);}
  .price-card[data-key="dslFullLoad"] h2{font-size:clamp(24px,2.05vw,40px);}
}

@media (max-width:1000px){.topbar{grid-template-columns:1fr;height:auto;gap:14px}.brand{order:-1;height:auto}.cards{grid-template-columns:repeat(2,1fr);height:auto}.screen-prices{overflow:auto}}

/* V8 no iframe/yellow border. RSS headlines render in .oil-news-wrap below. */
.rss-embed-wrap,.rss-embed-frame{display:none!important;}

/* V6 spacing with RSS.app embed area + bottom disclaimer ticker */
.cards{height:50.7vh;}
.price-card{padding-top:clamp(12px,1vw,20px);}
.pump-badge{width:clamp(58px,5.0vw,96px);height:clamp(58px,5.0vw,96px);}
.price-card h2{font-size:clamp(30px,2.55vw,49px);margin:clamp(12px,1.7vh,20px) 0 clamp(7px,1vh,12px);}
.price-card[data-key="dslFullLoad"] h2{font-size:clamp(23px,1.92vw,37px);}
.price span:last-child{font-size:clamp(47px,4.08vw,78px);}
.price-card[data-key="dslFullLoad"] .price span:last-child{font-size:clamp(45px,3.95vw,76px);}
.freight{font-size:clamp(11px,.78vw,15px);margin:clamp(8px,1vh,13px) 0 clamp(7px,.8vh,12px);}
.ticker-wrap{height:6.9vh;min-height:52px;}
.ticker-track{font-size:clamp(15px,1.18vw,23px);animation-duration:46s;}

@media (min-aspect-ratio: 17/9){
  .cards{height:49.6vh;}
  .oil-news-wrap{bottom:9.75vh;height:4.55vh;}
  .ticker-wrap{height:6.65vh;}
  .price span:last-child{font-size:clamp(45px,3.9vw,75px);}
  .price-card h2{font-size:clamp(29px,2.45vw,47px);}
  .price-card[data-key="dslFullLoad"] h2{font-size:clamp(22px,1.82vw,35px);}
}

/* V9 branded oil/news ticker area — no overlap, matches bottom ticker speed */
.rss-embed-wrap,.rss-embed-frame{display:none!important;}
.oil-news-wrap{
  position:absolute;
  left:var(--safe-x);
  right:var(--safe-x);
  bottom:10.85vh;
  height:4.35vh;
  min-height:38px;
  border:1px solid rgba(239,35,42,.92);
  border-radius:14px;
  background:
    linear-gradient(180deg,rgba(20,22,26,.94),rgba(0,0,0,.97)),
    repeating-linear-gradient(90deg,rgba(239,35,42,.065) 0 2px,transparent 2px 13px);
  box-shadow:0 0 22px rgba(239,35,42,.24), inset 0 1px 0 rgba(255,255,255,.12), inset 0 -18px 28px rgba(0,0,0,.34);
  overflow:hidden;
  display:flex;
  align-items:center;
  z-index:5;
}
.oil-news-wrap:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(100deg,transparent 0 42%,rgba(255,255,255,.065) 50%,transparent 58%);
  transform:translateX(-70%);
  animation:softSweep 17s ease-in-out infinite;
  pointer-events:none;
}
.oil-news-wrap:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--red),rgba(255,255,255,.55),var(--red),transparent);
  box-shadow:0 0 16px rgba(239,35,42,.45);
  opacity:.78;
}
.oil-news-label{
  height:100%;
  min-width:clamp(160px,12.5vw,240px);
  padding:0 1.2vw;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.55vw;
  font-family:var(--display-font);
  font-size:clamp(13px,1vw,20px);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.035em;
  color:#fff;
  background:linear-gradient(90deg,rgba(239,35,42,.26),rgba(239,35,42,.08),transparent);
  border-right:1px solid rgba(239,35,42,.55);
  text-shadow:0 2px 8px rgba(0,0,0,.78),0 0 10px rgba(239,35,42,.22);
  white-space:nowrap;
  position:relative;
  z-index:2;
}
.oil-news-dot{
  width:clamp(8px,.7vw,13px);
  height:clamp(8px,.7vw,13px);
  border-radius:50%;
  background:var(--red);
  box-shadow:0 0 14px rgba(239,35,42,.8);
  animation:checkPulse 3.6s ease-in-out infinite;
}
.oil-news-status.warn,.oil-news-label .warn{color:#ffcccf;}
.oil-news-window{
  flex:1;
  height:100%;
  overflow:hidden;
  display:flex;
  align-items:center;
  mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
  position:relative;
  z-index:2;
}
.oil-news-track{
  display:flex;
  align-items:center;
  gap:1.1vw;
  white-space:nowrap;
  padding-left:1.2vw;
  font-family:var(--ui-font);
  font-size:clamp(13px,.98vw,19px);
  font-weight:850;
  letter-spacing:.005em;
  color:#f4f5f7;
  text-shadow:0 2px 7px rgba(0,0,0,.78);
  animation:oilNewsScroll 46s linear infinite;
}
.oil-news-track span{display:inline-block;}
.oil-news-track b{
  color:var(--red2);
  font-size:1.15em;
  text-shadow:0 0 12px rgba(239,35,42,.65);
}
@keyframes oilNewsScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (min-aspect-ratio:17/9){
  .oil-news-wrap{bottom:10.65vh;height:4.25vh;min-height:38px;}
  .oil-news-track{font-size:clamp(12px,.92vw,18px);animation-duration:60s;}
  .oil-news-label{font-size:clamp(12px,.90vw,17px);min-width:clamp(150px,11.5vw,220px);}
}

/* V9 spacing guard between RSS news ticker and bottom disclaimer */
.oil-news-wrap{margin-bottom:.45vh;}
.ticker-wrap{z-index:6;}
.oil-news-wrap{z-index:5;}


/* V10 layout refinement: taller cards and cleaner ticker spacing */
/* Use the blank vertical space between fuel cards and news ticker without overlap. */
.cards{
  height:57.8vh !important;
  gap:1.28vw;
}
.price-card{
  padding-top:clamp(15px,1.35vw,26px) !important;
  padding-bottom:clamp(12px,1.15vw,22px) !important;
}
.pump-badge{
  width:clamp(66px,5.55vw,108px) !important;
  height:clamp(66px,5.55vw,108px) !important;
}
.price-card h2{
  font-size:clamp(34px,2.9vw,56px) !important;
  margin:clamp(16px,2.0vh,24px) 0 clamp(9px,1.05vh,14px) !important;
}
.price-card[data-key="dslFullLoad"] h2{
  font-size:clamp(27px,2.18vw,42px) !important;
}
.price span:last-child{
  font-size:clamp(53px,4.45vw,86px) !important;
}
.price-card[data-key="dslFullLoad"] .price span:last-child{
  font-size:clamp(51px,4.25vw,82px) !important;
}
.price .currency{
  font-size:clamp(38px,3.05vw,58px) !important;
}
.freight{
  font-size:clamp(12px,.86vw,17px) !important;
}
.oil-news-wrap{
  bottom:9.65vh !important;
  height:4.45vh !important;
  min-height:40px !important;
  z-index:7 !important;
}
.ticker-wrap{
  bottom:1.75vh !important;
  height:6.65vh !important;
  min-height:50px !important;
  z-index:8 !important;
}
.oil-news-track{
  animation-duration:60s !important;
}
.ticker-track{
  animation-duration:46s !important;
}
@media (min-aspect-ratio:17/9){
  .cards{height:57.2vh !important;}
  .oil-news-wrap{bottom:9.45vh !important;height:4.35vh !important;}
  .ticker-wrap{bottom:1.65vh !important;height:6.55vh !important;}
  .price span:last-child{font-size:clamp(51px,4.28vw,82px) !important;}
  .price-card[data-key="dslFullLoad"] .price span:last-child{font-size:clamp(49px,4.05vw,78px) !important;}
  .price-card h2{font-size:clamp(32px,2.72vw,52px) !important;}
  .price-card[data-key="dslFullLoad"] h2{font-size:clamp(25px,2.0vw,39px) !important;}
}
