:root{--saw-fuel-brand:#196f42;--saw-fuel-brand-dark:#135736;--saw-fuel-brand-soft:#edf7f1;--saw-fuel-brand-soft-2:#f6fbf8;--saw-fuel-brand-border:#cfe6d8;--saw-fuel-text:#1d2731;--saw-fuel-muted:#5f6b76;--saw-fuel-line:#e2e8e5;--saw-fuel-shadow:0 10px 30px rgba(14,46,28,.05)}
.saw-fuel-hub,.saw-fuel-history-wrap,.saw-fuel-news{font:inherit;color:var(--saw-fuel-text);box-sizing:border-box;margin:0 0 36px}
.saw-fuel-hub *,.saw-fuel-history-wrap *,.saw-fuel-news *{box-sizing:border-box}
.saw-fuel-heading{display:flex;gap:18px;align-items:end;justify-content:space-between;flex-wrap:wrap;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--saw-fuel-line)}
.saw-fuel-eyebrow{font-size:11px;letter-spacing:.12em;font-weight:700;margin:0 0 6px;color:var(--saw-fuel-brand);text-transform:uppercase}
.saw-fuel-title{margin:0 0 4px!important;font-size:clamp(22px,2.5vw,32px)!important;line-height:1.25!important;font-weight:750!important;color:#173325}
.saw-fuel-date{font-size:13px;color:var(--saw-fuel-muted);margin:0}
.saw-fuel-selector{min-width:220px;max-width:100%}
.saw-fuel-selector label{font-weight:600;font-size:12px;display:block;margin-bottom:5px;color:#244836}
.saw-fuel-selector select{min-height:42px;display:block;width:100%;border:1px solid var(--saw-fuel-brand-border);border-radius:9px;background:#fff;color:#222;padding:8px 10px;font-size:14px;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.saw-fuel-selector select:focus,.saw-fuel-news-filter-field select:focus,.saw-fuel-news-filter-field input:focus,.saw-fuel-news-actions button:focus,.saw-fuel-news-reset:focus{outline:2px solid rgba(25,111,66,.28);outline-offset:2px;border-color:rgba(25,111,66,.55)}
.saw-fuel-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.saw-fuel-card{background:linear-gradient(180deg,#fff, var(--saw-fuel-brand-soft-2));border:1px solid var(--saw-fuel-brand-border);border-radius:14px;padding:18px 16px;min-width:0;box-shadow:var(--saw-fuel-shadow);position:relative;overflow:hidden}
.saw-fuel-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--saw-fuel-brand),#6eb38c)}
.saw-fuel-card-top{display:flex;gap:7px;justify-content:space-between;align-items:flex-start}
.saw-fuel-card h3{font-size:15px!important;line-height:1.3!important;margin:0!important;font-weight:700!important;color:#173325}
.saw-fuel-unit{font-size:11px;color:#6a7680;white-space:nowrap}
.saw-fuel-price{font-size:clamp(23px,2.2vw,32px);font-weight:800;line-height:1.2;margin:16px 0 9px;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--saw-fuel-brand-dark)}
.saw-fuel-type{font-size:12px;line-height:1.4;color:var(--saw-fuel-muted);margin:0}
.saw-fuel-note{color:#55626d;font-size:12px;line-height:1.6;margin:14px 0 0}
.saw-fuel-note a,.saw-fuel-news-head a{color:var(--saw-fuel-brand-dark);text-decoration:underline}
.saw-fuel-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.saw-fuel-history-wrap h2,.saw-fuel-news h2{font-size:24px!important;margin:0 0 16px!important;color:#173325}
.saw-fuel-history-wrap h2:after,.saw-fuel-news h2:after{content:"";display:block;width:58px;height:3px;border-radius:999px;background:var(--saw-fuel-brand);margin-top:10px;opacity:.9}
.saw-fuel-history-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;min-width:650px;border:1px solid var(--saw-fuel-brand-border);border-radius:14px;overflow:hidden;background:#fff;box-shadow:var(--saw-fuel-shadow)}
.saw-fuel-history-table th{text-align:left;background:var(--saw-fuel-brand-soft);color:#244836;font-weight:700}
.saw-fuel-history-table td,.saw-fuel-history-table th{border-bottom:1px solid var(--saw-fuel-line);padding:12px 10px;white-space:nowrap}
.saw-fuel-history-table tr:last-child td{border-bottom:none}
.saw-fuel-history-table td:not(:first-child){font-variant-numeric:tabular-nums}
.saw-fuel-history-table tbody tr:nth-child(even) td{background:#fcfefd}
.saw-fuel-news-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.saw-fuel-news-head a{font-size:13px}
.saw-fuel-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.saw-fuel-news-card{min-width:0;background:#fff;border:1px solid var(--saw-fuel-brand-border);border-radius:14px;padding:12px;box-shadow:var(--saw-fuel-shadow);transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.saw-fuel-news-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(14,46,28,.08);border-color:#b7d7c5}
.saw-fuel-news-image{display:block;aspect-ratio:16/10;background:#f1f2f4;overflow:hidden;border-radius:10px}
.saw-fuel-news-image img{width:100%;height:100%;object-fit:cover}
.saw-fuel-news-placeholder{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#456451;font-size:12px;background:linear-gradient(135deg,#eff8f3,#ddeee4)}
.saw-fuel-news-content{padding-top:10px}
.saw-fuel-news-content time{color:#69727a;font-size:12px}
.saw-fuel-news-content h3{font-size:16px!important;line-height:1.45!important;font-weight:700!important;margin:7px 0 0!important}
.saw-fuel-news-content h3 a{color:#173325;text-decoration:none}
.saw-fuel-news-content h3 a:hover{text-decoration:underline}
.saw-fuel-empty{padding:18px;border:1px dashed #b8cfc0;border-radius:12px;color:#51606b;font-size:14px;background:var(--saw-fuel-brand-soft-2)}
@media(max-width:1080px){.saw-fuel-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.saw-fuel-cards,.saw-fuel-news-grid{grid-template-columns:1fr 1fr}.saw-fuel-price{font-size:26px}.saw-fuel-card{padding:15px 12px}}
@media(max-width:460px){.saw-fuel-heading{display:block}.saw-fuel-selector{margin-top:15px;max-width:none}.saw-fuel-cards{gap:8px}.saw-fuel-card{padding:13px 10px}.saw-fuel-card-top{display:block}.saw-fuel-card h3{font-size:13px!important}.saw-fuel-unit{display:block;font-size:10px}.saw-fuel-price{font-size:24px}.saw-fuel-news-grid{grid-template-columns:1fr}}

/* SAW Fuel News: content-led archive with local search, topic/year filters and progressive reveal. */
.saw-fuel-news-archive{margin-top:24px}
.saw-fuel-news-subtitle{font-size:13px;line-height:1.55;color:var(--saw-fuel-muted);margin:2px 0 0}
.saw-fuel-news-filters{display:grid;grid-template-columns:minmax(140px,1fr) minmax(110px,.6fr) minmax(180px,1.6fr);gap:12px;align-items:end;border:1px solid var(--saw-fuel-brand-border);background:linear-gradient(180deg,#fff,var(--saw-fuel-brand-soft-2));border-radius:14px;padding:15px;margin:15px 0 10px;box-shadow:var(--saw-fuel-shadow)}
.saw-fuel-news-filter-field{min-width:0}
.saw-fuel-news-filter-field label{display:block;font-size:12px;font-weight:700;line-height:1.3;color:#244836;margin-bottom:6px}
.saw-fuel-news-filter-field select,.saw-fuel-news-filter-field input{box-sizing:border-box;display:block;width:100%;min-height:43px;background:#fff;color:#202832;border:1px solid var(--saw-fuel-brand-border);border-radius:8px;padding:8px 11px;font-size:14px;font-weight:400;box-shadow:none}
.saw-fuel-news-filter-field input::placeholder{color:#6b7783;opacity:1}
.saw-fuel-news-count{font-size:12px;color:#69727a;margin:0 0 16px;min-height:18px}
.saw-fuel-news-card[hidden],.saw-fuel-news-empty[hidden],.saw-fuel-news-actions button[hidden]{display:none!important}
.saw-fuel-news-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:26px 0 0}
.saw-fuel-news-actions button,.saw-fuel-news-reset{min-height:42px;min-width:145px;background:var(--saw-fuel-brand)!important;color:#fff!important;border:1px solid var(--saw-fuel-brand);border-radius:999px;padding:10px 18px;font-family:inherit;font-size:13px;font-weight:650;line-height:1.2;cursor:pointer;text-align:center;box-shadow:0 8px 20px rgba(25,111,66,.12)}
.saw-fuel-news-actions button:hover,.saw-fuel-news-reset:hover{background:var(--saw-fuel-brand-dark)!important;border-color:var(--saw-fuel-brand-dark)}
.saw-fuel-news-actions .saw-fuel-news-all{background:#fff!important;color:var(--saw-fuel-brand-dark)!important;border-color:var(--saw-fuel-brand-border);box-shadow:none}
.saw-fuel-news-actions .saw-fuel-news-all:hover{background:var(--saw-fuel-brand-soft)!important}
.saw-fuel-news-reset{margin-top:5px}
.saw-fuel-news-empty{text-align:center;background:var(--saw-fuel-brand-soft-2);border:1px solid var(--saw-fuel-brand-border);border-radius:12px;padding:22px;margin:0}
.saw-fuel-news-empty p{margin:0 0 12px;color:#596573}
.saw-fuel-news-card a:focus-visible{outline:2px solid rgba(25,111,66,.35);outline-offset:3px}
@media(max-width:700px){.saw-fuel-news-filters{grid-template-columns:1fr 1fr}.saw-fuel-news-search-field{grid-column:1/-1}}
@media(max-width:460px){.saw-fuel-news-filters{grid-template-columns:1fr;gap:10px;padding:12px}.saw-fuel-news-search-field{grid-column:auto}.saw-fuel-news-head{display:block}.saw-fuel-news-actions button{width:100%}}

/* v0.4.3: one centred green chevron per dropdown; reset JNews/Elementor defaults. */
.saw-fuel-hub .saw-fuel-select-wrap,.saw-fuel-news .saw-fuel-select-wrap{display:block;position:relative;width:100%;max-width:100%}
.saw-fuel-hub .saw-fuel-select-wrap::after,.saw-fuel-news .saw-fuel-select-wrap::after{content:"";position:absolute;right:17px;top:50%;width:8px;height:8px;box-sizing:border-box;border-right:2px solid var(--saw-fuel-brand);border-bottom:2px solid var(--saw-fuel-brand);transform:translateY(-70%) rotate(45deg);pointer-events:none;z-index:1}
.saw-fuel-hub .saw-fuel-select-wrap select,.saw-fuel-news .saw-fuel-select-wrap select{appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;background-image:none!important;background-color:#fff!important;padding:9px 42px 9px 12px!important;line-height:1.35!important;min-height:44px;max-width:100%;border-radius:9px;cursor:pointer}
.saw-fuel-hub .saw-fuel-select-wrap select::-ms-expand,.saw-fuel-news .saw-fuel-select-wrap select::-ms-expand{display:none}
/* Turn wide data tables into readable, vertical date cards inside narrow Elementor columns. */
.saw-fuel-history-wrap{container-type:inline-size;container-name:saw-history;min-width:0;max-width:100%}
.saw-fuel-history-wrap h2{overflow-wrap:break-word}
@container saw-history (max-width:800px){
 .saw-fuel-history-wrap .saw-fuel-scroll{overflow:visible!important;max-width:100%!important}
 .saw-fuel-history-wrap .saw-fuel-history-table{display:block!important;min-width:0!important;width:100%!important;max-width:100%!important;border:0;box-shadow:none;background:transparent;border-radius:0;overflow:visible}
 .saw-fuel-history-table thead{display:none!important}
 .saw-fuel-history-table tbody{display:grid!important;grid-template-columns:minmax(0,1fr);gap:14px}
 .saw-fuel-history-table tr{display:block!important;min-width:0;max-width:100%;border:1px solid var(--saw-fuel-brand-border);border-radius:12px;overflow:hidden;background:#fff;box-shadow:var(--saw-fuel-shadow)}
 .saw-fuel-history-table td{display:flex!important;justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;width:100%;white-space:normal!important;text-align:right;line-height:1.4;padding:12px 14px!important;border:0!important;border-bottom:1px solid var(--saw-fuel-line)!important;background:#fff!important;word-break:normal}
 .saw-fuel-history-table td::before{content:attr(data-label);color:#315343;font-size:12px;font-weight:700;text-align:left;flex:0 1 57%;max-width:57%;min-width:0}
 .saw-fuel-history-table td:first-child{background:var(--saw-fuel-brand-soft)!important;font-weight:700;color:var(--saw-fuel-brand-dark)}
 .saw-fuel-history-table td:last-child{border-bottom:0!important}
}
/* Fallback for old browsers without container queries. */
@supports not (container-type:inline-size){
 @media(max-width:800px){
  .saw-fuel-history-wrap .saw-fuel-scroll{overflow:visible!important}
  .saw-fuel-history-wrap .saw-fuel-history-table{display:block!important;min-width:0!important;width:100%!important;border:0;box-shadow:none;overflow:visible}
  .saw-fuel-history-table thead{display:none!important}
  .saw-fuel-history-table tbody{display:block!important}
  .saw-fuel-history-table tr{display:block!important;max-width:100%;border:1px solid var(--saw-fuel-brand-border);border-radius:12px;overflow:hidden;margin-bottom:12px;background:#fff}
  .saw-fuel-history-table td{display:flex!important;justify-content:space-between;gap:12px;width:100%;white-space:normal!important;padding:12px 14px!important;text-align:right;border-bottom:1px solid var(--saw-fuel-line)!important}
  .saw-fuel-history-table td::before{content:attr(data-label);text-align:left;flex:0 1 57%;color:#315343;font-weight:700;font-size:12px}
  .saw-fuel-history-table td:first-child{background:var(--saw-fuel-brand-soft)!important;font-weight:700}
  .saw-fuel-history-table td:last-child{border-bottom:0!important}
 }
}

/* v0.4.4: Mobile-only content-height safeguards for Elementor.
   Some Elementor history-only containers retain a full-viewport min-height,
   leaving hundreds of pixels of empty space below the history shortcode.
   Scope these rules to the history widget and its IMMEDIATE containing section.
   Do not affect the other fuel cards, the news archive or desktop layouts. */
@media (max-width:767px) {
  .saw-fuel-history-wrap,
  .saw-fuel-history-wrap .saw-fuel-scroll,
  .saw-fuel-history-wrap .saw-fuel-history-table {
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  .saw-fuel-history-wrap {
    width:100%;
    max-width:100%;
    margin-bottom:16px!important;
  }
  .elementor-widget-shortcode:has(.saw-fuel-history-wrap),
  .elementor-widget-shortcode:has(.saw-fuel-history-wrap) > .elementor-widget-container,
  .elementor-widget-shortcode:has(.saw-fuel-history-wrap) .elementor-shortcode {
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    flex-grow:0!important;
  }
  .elementor-widget-shortcode:has(.saw-fuel-history-wrap) {
    width:100%;
    align-self:auto!important;
  }
  .elementor-element.e-con:has(> .elementor-widget-shortcode .saw-fuel-history-wrap),
  .elementor-element.e-con:has(> .e-con-inner > .elementor-widget-shortcode .saw-fuel-history-wrap),
  .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-shortcode .saw-fuel-history-wrap) {
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    flex-grow:0!important;
    justify-content:flex-start!important;
  }
}

/* v0.4.5: Desktop-only full-width Fuel Price History.
   On some Elementor/JNews flex layouts the Shortcode widget shrinks to its
   intrinsic/table width, leaving the history table visibly narrower than the
   price cards and news archive. Stretch just this shortcode chain on desktop.
   All mobile/tablet rules (including the stacked history cards) are untouched. */
@media screen and (min-width:1025px) {
  .elementor-widget-shortcode:has(.saw-fuel-history-wrap) {
    width:100%!important;
    max-width:100%!important;
    flex-basis:100%!important;
    flex-grow:1!important;
    align-self:stretch!important;
    min-width:0!important;
  }
  .elementor-widget-shortcode:has(.saw-fuel-history-wrap) > .elementor-widget-container,
  .elementor-widget-shortcode:has(.saw-fuel-history-wrap) .elementor-shortcode {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .saw-fuel-history-wrap {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    container-type:normal;
    container-name:none;
  }
  .saw-fuel-history-wrap .saw-fuel-scroll {
    display:block;
    width:100%!important;
    max-width:100%!important;
  }
  .saw-fuel-history-wrap .saw-fuel-history-table {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    table-layout:auto;
  }
}
