/* Shared Frugal theme. Fonts are served locally; see assets/fonts/*-OFL.txt. */
@font-face{font-family:Lato;src:url("fonts/lato-400.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Lato;src:url("fonts/lato-700.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Lato;src:url("fonts/lato-900.woff2") format("woff2");font-style:normal;font-weight:900;font-display:swap}
@font-face{font-family:Bangers;src:url("fonts/bangers-400.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
:root{--bg:#faf6ee;--ink:#211e1b;--muted:#62594f;--line:#d9d0c3;--accent:#c93920;--orange:#c93920;--good:#15613e;--bad:#a92b36;font-family:Lato,'Segoe UI',Arial,sans-serif;background:var(--bg);color:var(--ink)}
.frugal-theme{background-color:var(--bg);background-image:radial-gradient(#44332412 .8px,transparent .8px);background-size:10px 10px}
.frugal-theme .telemetry-rail{height:8px;background:repeating-linear-gradient(-55deg,#211e1b 0 14px,#ed6339 14px 28px)}
.frugal-theme .page-shell{padding-top:1.7rem}
.frugal-theme .eyebrow{color:#8b3a24;font-size:.75rem;font-weight:900;letter-spacing:.08em}
.frugal-theme h1,.frugal-theme h2,.frugal-theme .card-heading h3{font-family:Bangers,Impact,'Arial Narrow',sans-serif;font-weight:400;letter-spacing:.025em}
.frugal-theme .brand h1{font-size:2.5rem;line-height:1}
.frugal-theme .brand p{color:var(--muted);font-size:.9375rem;margin-top:.25rem}
.frugal-theme .brand-mark{background:#ed6339;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:4px;transform:rotate(-5deg);font-family:Bangers,Impact,sans-serif;color:var(--ink);font-size:2.4rem}
.frugal-theme .site-header h1{font-size:clamp(2.4rem,4vw,3.25rem);line-height:1.08;max-width:920px}
.frugal-theme .section-heading h2{font-size:2.25rem;letter-spacing:.025em}
.frugal-theme .panel-heading h2{font-size:1.95rem;letter-spacing:.025em}
.frugal-theme .card-heading h3{font-size:2.2rem;letter-spacing:.03em}
.frugal-theme .view-controls,.frugal-theme .control-bar{border-bottom:2px solid var(--ink);border-top:0;background:var(--bg);padding:.85rem 0}
.frugal-theme .region-nav a{color:var(--muted);font-weight:700}
.frugal-theme .region-nav a[aria-current=page]{background:var(--ink);color:#fff9ee;border-radius:4px}
.frugal-theme .region-nav a:hover{background:#eae2d6;box-shadow:none;color:var(--ink)}
.frugal-theme .region-nav a[aria-current=page]:hover{background:var(--ink);color:white}
.frugal-theme .period-tabs{border:2px solid var(--ink);border-radius:5px;background:#fffdfa}
.frugal-theme .period-tabs button{font-weight:700;border-radius:2px}
.frugal-theme .period-tabs button[aria-pressed=true]{background:var(--accent);color:white}
.frugal-theme .period-tabs button:hover{background:#f4e5d5;color:var(--ink)}
.frugal-theme .period-tabs button[aria-pressed=true]:hover{background:#ad2f19;color:white}
.frugal-theme .text-button{color:#9b301c;font-weight:700}
.frugal-theme .disclosure-strip{background:#eee6db;border-left:3px solid #a58c6f;color:var(--muted)}
.frugal-theme .badge,.frugal-theme .status-badge{font-weight:700;border-radius:4px}
.frugal-theme .leader-panel,.frugal-theme .region-verdict{position:relative;background:radial-gradient(circle at 100% 0,#5d3422 0,transparent 44%),#211e1b;color:#fffaf2;border:2px solid var(--ink);border-radius:8px;box-shadow:6px 6px 0 #dacdbc}
.frugal-theme .leader-panel{padding:2rem 2rem 0;gap:1.35rem 1.75rem}
.frugal-theme .leader-panel .eyebrow,.frugal-theme .region-verdict .eyebrow{color:#ffc598}
.frugal-theme .leader-copy h2{font-size:clamp(2.9rem,4.8vw,4.5rem);letter-spacing:.035em;line-height:1.06}
.frugal-theme .leader-copy h2 em{color:#ffac79}
.frugal-theme .leader-description{color:#f0e4d6;font-size:1rem;max-width:700px}
.frugal-theme .leader-quip,.frugal-theme .region-quip{font-weight:900;color:#ffe193;margin-top:.75rem;font-size:1rem}
.frugal-theme .hero-link{margin-top:.75rem;padding:.65rem 1rem;border:1px solid #fcb08a;border-radius:4px;text-decoration:none;color:#fffaf2;background:#ffffff09}
.frugal-theme .hero-link:hover{background:#ffffff17}
.frugal-theme .leader-score{border-left:1px solid #cba17f45}
.frugal-theme .leader-score strong{font-family:Bangers,Impact,sans-serif;font-weight:400;font-size:8rem;letter-spacing:.02em;color:#ffac79;line-height:1}
.frugal-theme .leader-score strong span{font-family:Lato,sans-serif;font-weight:700;font-size:.32em;letter-spacing:0;color:#f0e4d6}
.frugal-theme .score-label,.frugal-theme .leader-score>span:last-child{color:#f0e4d6}
.frugal-theme .region-scores{border-top:1px solid #cba17f45}
.frugal-theme .region-score{color:#fffaf2;border-color:#cba17f45}
.frugal-theme .region-score .score-caption{color:#d2c3b1}
.frugal-theme .region-score strong{font-family:Bangers,Impact,sans-serif;font-weight:400;font-size:1.9rem;letter-spacing:.04em}
.frugal-theme .region-score.leading strong{color:#ffac79}
.frugal-theme .region-score:hover{background:#ffffff10}
.frugal-theme .tested-providers{padding:1.3rem .2rem 1.2rem}
.frugal-theme .provider-chip{padding:.35rem .65rem;background:#fffdfa;border:1px solid var(--line);border-radius:4px;font-weight:700}
.frugal-theme .provider-chip.frugal{background:#ffeadc;color:#9e2f19;border-color:#d7977f}
.frugal-theme #providerLineup{gap:.6rem}
.frugal-theme .panel,.frugal-theme .region-card,.frugal-theme .methodology{border:2px solid var(--ink);border-radius:7px;background:#fffdfa;box-shadow:4px 4px 0 #ded4c6}
.frugal-theme .panel{margin-bottom:1.5rem}
.frugal-theme .region-card.is-leading{border-top:5px solid var(--accent)}
.frugal-theme .region-card:not(.is-leading){border-top:5px solid #736452}
.frugal-theme .card-heading{padding-top:1.15rem}
.frugal-theme .card-location{color:var(--muted)}
.frugal-theme .position-badge{background:#ffe9d6;color:#8e2c18;border:2px solid #8e2c18;border-radius:4px;transform:rotate(2deg);font-weight:900;box-shadow:2px 2px 0 #dec8b0}
.frugal-theme .position-badge.neutral{background:#f0e9df;border-color:#736452;color:#4b4035}
.frugal-theme .ranking-table col.value-col{width:8.25rem}
.frugal-theme .ranking-table caption{caption-side:bottom;color:var(--muted);font-size:.75rem;padding:.55rem 0 .15rem}
.frugal-theme .ranking-table th{color:var(--muted);font-weight:700;border-color:var(--line)}
.frugal-theme .ranking-table td{border-color:#e9e0d4;padding-top:.7rem;padding-bottom:.7rem}
.frugal-theme .ranking-table .frugal-row td,.frugal-theme .ranking-row.frugal{background:#fff0e3}
.frugal-theme .ranking-table .rank-number{color:#67594b;font-size:.875rem}
.frugal-theme .ranking-table .frugal-row .rank-number,.frugal-theme .frugal-row .provider-label,.frugal-theme .frugal-row .value-cell.median{color:#9e2f19}
.frugal-theme .provider-label{font-weight:700}
.frugal-theme .bar-track{background:#eee8df;height:8px}
.frugal-theme .bar-fill{border-radius:1px}
.frugal-theme .probe-wins{color:var(--muted);font-size:.9375rem}
.frugal-theme .advantage-value{font-size:1.25rem;color:var(--good)}
.frugal-theme .advantage-value.negative{color:var(--bad)}
.frugal-theme .advantage-value.neutral{color:var(--muted)}
.frugal-theme .advantage-caption{color:var(--muted);line-height:1.5}
.frugal-theme .card-cta{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:4px;background:var(--accent);color:white;margin-top:.3rem;min-height:48px}
.frugal-theme .card-cta:hover{background:#ac2e18}
.frugal-theme .card-date{color:var(--muted)}
.frugal-theme .region-verdict{display:grid;grid-template-columns:minmax(0,1fr) 170px;align-items:center;gap:2rem;padding:1.65rem 1.8rem;margin:.25rem 0 1.7rem}
.frugal-theme .region-verdict h2{font-size:clamp(2rem,3.5vw,3.15rem);line-height:1.1;max-width:900px}
.frugal-theme .verdict-period{color:#eddfce;font-size:.875rem;margin-top:.8rem}
.frugal-theme .verdict-rank{background:#f6ead8;color:var(--ink);padding:1rem .65rem;border:2px solid var(--ink);border-radius:5px;box-shadow:4px 4px 0 #00000050;transform:rotate(3deg);text-align:center}
.frugal-theme .verdict-rank span{display:block;font-size:.8rem;font-weight:700}
.frugal-theme .verdict-rank strong{display:block;font-family:Bangers,Impact,sans-serif;font-weight:400;font-size:5.5rem;line-height:1.1;color:#6e5640}
.frugal-theme .region-verdict.is-leading .verdict-rank strong{color:#b5341d}
.frugal-theme .ranking-labels,.frugal-theme .ranking-row{grid-template-columns:minmax(180px,1fr) minmax(230px,2fr)}
.frugal-theme .ranking-row{min-height:64px;border-color:#e9e0d4}
.frugal-theme .provider-name{font-weight:700}
.frugal-theme .provider-name .rank{display:inline-block;color:var(--muted)}
.frugal-theme .median-cell strong{font-size:1.2rem}
.frugal-theme .headline-grid{margin-top:1.2rem}
.frugal-theme .headline-number{font-family:Lato,sans-serif;font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:900}
.frugal-theme .comparison-row{border-color:#e9e0d4}
.frugal-theme .comparison-value{font-weight:900;font-size:1.05rem}
.frugal-theme .plain-details{border-top:1px solid var(--line);margin-top:.75rem;padding:.85rem 0 0;color:var(--ink)}
.frugal-theme .plain-details summary{font-size:.9375rem;cursor:pointer;font-weight:700;min-height:30px}
.frugal-theme .detail-hint{font-family:Lato,sans-serif;font-size:.8125rem;font-weight:400;color:var(--muted);margin-left:.5rem;letter-spacing:0;text-transform:none}
.frugal-theme .plain-details>p{color:var(--muted);font-size:.875rem;margin:.7rem 0}
.frugal-theme .overview-details{margin:0 1.3rem .75rem}
.frugal-theme .detail-table{font-size:.875rem;border-collapse:collapse;width:100%;margin:.7rem 0 0;table-layout:fixed}
.frugal-theme .detail-table th,.frugal-theme .detail-table td{background:transparent;padding:.45rem .2rem;border-bottom:1px solid #e9e0d4;text-align:left;color:var(--ink);white-space:normal;overflow-wrap:anywhere}
.frugal-theme .detail-table th{font-size:.875rem;font-weight:700}
.frugal-theme .detail-table th:last-child,.frugal-theme .detail-table td:last-child{width:7.5rem;text-align:right}
.frugal-theme .detail-table td{font-family:var(--mono);font-variant-numeric:tabular-nums}
.frugal-theme .detail-table caption{caption-side:bottom;text-align:left;color:var(--muted);font-size:.75rem;padding:.55rem 0 0}
.frugal-theme .chart-wrap text{font-family:Lato,sans-serif;fill:var(--muted)}
.frugal-theme .chart-grid{stroke:#e5dccf}
.frugal-theme .chart-detail,.frugal-theme .probe-mobile dl{background:#f4ede3}
.frugal-theme .chart-legend button{border-color:#bdaf9c;font-weight:700}
.frugal-theme .chart-legend button[aria-pressed=false]{opacity:.6}
.frugal-theme .probe-table th,.frugal-theme .settings-table th{background:#eee6da;color:#594d3e}
.frugal-theme .probe-table td,.frugal-theme .settings-table td{border-color:#e9e0d4}
.frugal-theme .probe-table td:first-child{min-width:150px}
.frugal-theme .winner-pill{background:#f0e6d9;color:#463b2f;white-space:normal;font-weight:700}
.frugal-theme input[type=search],.frugal-theme select{border-color:#b8a992;border-radius:4px}
.frugal-theme .method-grid h3{font-family:Lato,sans-serif;letter-spacing:0;font-weight:900}
.frugal-theme .method-grid p{color:var(--muted)}
.frugal-theme footer{border-top:2px solid var(--ink);color:var(--muted)}
.frugal-theme button:focus-visible,.frugal-theme a:focus-visible,.frugal-theme summary:focus-visible,.frugal-theme input:focus-visible,.frugal-theme select:focus-visible{outline:3px solid #b3371f;outline-offset:4px;box-shadow:0 0 0 3px #fff4df}
@media(max-width:1100px){
  .frugal-theme .ranking-labels,.frugal-theme .ranking-row{grid-template-columns:minmax(180px,1fr) minmax(200px,1.4fr)}
  .frugal-theme .leader-score{min-width:170px;padding:0 .5rem}
  .frugal-theme .leader-score strong{font-size:6.5rem}
  .frugal-theme .overview-details{margin-left:1rem;margin-right:1rem}
  .frugal-theme .ranking-table col.value-col{width:7.5rem}
}
@media(max-width:760px){
  .frugal-theme .page-shell{padding-top:1.1rem}
  .frugal-theme .brand h1{font-size:2.25rem}
  .frugal-theme .site-header h1{font-size:2.4rem}
  .frugal-theme .section-heading h2{font-size:2rem}
  .frugal-theme .panel-heading h2{font-size:1.8rem}
  .frugal-theme .leader-panel{padding:1.4rem 1.2rem 0;gap:1.15rem}
  .frugal-theme .leader-copy h2{font-size:clamp(2.5rem,9vw,3.4rem)}
  .frugal-theme .leader-description{font-size:.9375rem}
  .frugal-theme .leader-score{border-left:0;border-top:1px solid #cba17f45;min-width:0;padding:.9rem 0 0}
  .frugal-theme .leader-score strong{font-size:5rem}
  .frugal-theme .leader-quip,.frugal-theme .region-quip{font-size:.9375rem}
  .frugal-theme .hero-link{font-size:.875rem;gap:.8rem}
  .frugal-theme .region-scores{margin:0 -1.2rem}
  .frugal-theme .region-score strong{font-size:1.6rem}
  .frugal-theme .tested-providers{padding:1.3rem 0 1rem;gap:.65rem}
  .frugal-theme #providerLineup{gap:.5rem}
  .frugal-theme .provider-chip{font-size:.8125rem;padding:.3rem .5rem}
  .frugal-theme .card-heading h3{font-size:1.9rem}
  .frugal-theme .position-badge{font-size:.75rem;padding:.3rem .45rem}
  .frugal-theme .ranking-table col.value-col{width:6.7rem}
  .frugal-theme .ranking-table th{font-size:.6875rem}
  .frugal-theme .value-cell.median{font-size:1.1rem}
  .frugal-theme .ranking-table .provider-label{font-size:.875rem}
  .frugal-theme .region-verdict{grid-template-columns:minmax(0,1fr) 88px;gap:1rem;padding:1.3rem 1rem}
  .frugal-theme .region-verdict h2{font-size:clamp(1.85rem,6vw,2.4rem)}
  .frugal-theme .region-verdict .eyebrow{font-size:.6875rem}
  .frugal-theme .verdict-rank{padding:.7rem .25rem;transform:rotate(2deg)}
  .frugal-theme .verdict-rank strong{font-size:3.6rem}
  .frugal-theme .verdict-rank span{font-size:.6875rem}
  .frugal-theme .verdict-period{font-size:.8rem}
  .frugal-theme .ranking-labels,.frugal-theme .ranking-row{grid-template-columns:minmax(0,1fr) 115px;gap:.5rem}
  .frugal-theme .provider-name{gap:.4rem}
  .frugal-theme .provider-name .rank{min-width:1.3rem;font-size:.75rem}
  .frugal-theme .provider-name .swatch{display:none}
  .frugal-theme .median-cell strong{font-size:1.1rem}
  .frugal-theme .ranking-row{min-height:60px}
  .frugal-theme .detail-hint{font-size:.75rem;margin-left:.3rem}
  .frugal-theme .card-cta{font-size:.9375rem}
}
@media(max-width:380px){
  .frugal-theme .region-verdict{grid-template-columns:1fr}
  .frugal-theme .verdict-rank{display:flex;align-items:center;justify-content:space-between;gap:.5rem;transform:none;text-align:left;padding:.4rem .6rem}
  .frugal-theme .verdict-rank strong{font-size:2.6rem}
  .frugal-theme .verdict-rank span:last-child{max-width:90px}
  .frugal-theme .ranking-labels,.frugal-theme .ranking-row{grid-template-columns:minmax(0,1fr) 90px}
  .frugal-theme .ranking-table col.value-col{width:5.5rem}
}
@media(prefers-reduced-motion:reduce){.frugal-theme *{transition:none!important;scroll-behavior:auto!important}}


/* Ranking characters: keep the rank readable and the artwork decorative. */
.frugal-theme .rank-with-mood{display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap;flex:none;min-width:4.7rem}
.frugal-theme .ranking-mood{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;flex:none;mix-blend-mode:multiply}
/* Display only the chosen drawings from the unchanged 1254px concept sheet.
   Source windows: smug check (178,152,376,310); not amused (767,542,315,280).
   Percentage positioning preserves these windows at both icon sizes. */
.frugal-theme .ranking-art{display:block;width:100%;background-image:url("ranking-icons-v5.png");background-repeat:no-repeat}
.frugal-theme .ranking-mood--smug-check .ranking-art{height:82.446809%;background-size:333.510638% 404.516129%;background-position:20.273349% 16.101695%;clip-path:polygon(0 10%,74% 10%,74% 0,100% 0,100% 100%,0 100%)}
.frugal-theme .ranking-mood--not-amused .ranking-art{height:88.888889%;background-size:398.095238% 447.857143%;background-position:81.682641% 55.646817%}
.frugal-theme .ranking-table col.rank-col{width:5.25rem}
.frugal-theme .ranking-table .rank-number{vertical-align:middle;padding-left:0}
.frugal-theme .ranking-table .rank-with-mood>span{min-width:1.5rem}
.frugal-theme .provider-name .rank-with-mood .rank{display:inline-block;min-width:1.5rem}
.frugal-theme .provider-name .provider-title{min-width:0;overflow-wrap:anywhere}
.frugal-theme .ranking-labels,.frugal-theme .ranking-row{grid-template-columns:minmax(260px,1.2fr) minmax(230px,2fr)}
@media(max-width:1100px){
  .frugal-theme .ranking-labels,.frugal-theme .ranking-row{grid-template-columns:minmax(245px,1.2fr) minmax(190px,1.4fr)}
}
@media(max-width:760px){
  .frugal-theme .rank-with-mood{min-width:3.75rem;gap:.2rem}
  .frugal-theme .ranking-mood{width:2.25rem;height:2.25rem}
  .frugal-theme .ranking-table col.rank-col{width:4.1rem}
  .frugal-theme .ranking-table .rank-with-mood>span{min-width:1.3rem;font-size:.75rem}
  .frugal-theme .provider-name .rank-with-mood .rank{min-width:1.3rem}
  .frugal-theme .ranking-labels,.frugal-theme .ranking-row{grid-template-columns:minmax(0,1fr) 105px}
}
@media(max-width:380px){
  .frugal-theme .ranking-labels,.frugal-theme .ranking-row{grid-template-columns:minmax(0,1fr) 90px}
  .frugal-theme .provider-name{gap:.3rem}
}
