/* DealCheck AU - single stylesheet, no JS, no web fonts. One accent (teal). */
:root{
  --bg:#fafaf9; --surface:#fff; --text:#1c1917; --muted:#57534e; --line:#e7e5e4;
  --flag:#1f9d55; --accent:#0f766e; --accent-ink:#fff; --accent-soft:#e6f4f2; --warn-bg:#fef9e7; --warn-line:#e9d98a;
  --radius:12px; --max:68rem;
  --font:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
@media (prefers-color-scheme:dark){
  :root{--bg:#141413;--surface:#1c1b1a;--text:#f5f5f4;--muted:#b4b0ac;--line:#2e2c2a;
    --flag:#3ecf7a;--accent:#2dd4bf;--accent-ink:#06201d;--accent-soft:#12302d;--warn-bg:#2a2410;--warn-line:#5c4f1c}
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:1rem/1.6 var(--font);min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
a{color:var(--accent);text-underline-offset:.15em}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}
.skip{position:absolute;left:-999px;top:0;background:var(--accent);color:var(--accent-ink);padding:.6rem 1rem;z-index:10}
.skip:focus{left:0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 1.1rem}
h1,h2,h3{line-height:1.2;letter-spacing:-.015em;margin:0 0 .6rem}
h1{font-size:clamp(1.9rem,6vw,3rem)}
h2{font-size:clamp(1.3rem,3.5vw,1.65rem);margin-top:2rem}
h3{font-size:1.1rem}
p{margin:0 0 1rem}
.small{font-size:.875rem;color:var(--muted)}
.lead{font-size:clamp(1.05rem,2.5vw,1.25rem);color:var(--muted);max-width:42rem}

/* header */
.site-header{background:var(--surface);border-bottom:1px solid var(--line)}
.bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.4rem 1.5rem;padding-top:.8rem;padding-bottom:.8rem}
.logo{font-weight:800;font-size:1.35rem;letter-spacing:-.03em;color:var(--text);text-decoration:none}
.logo span{color:var(--accent)}
.logo .au-map{display:inline-block;height:.72em;width:auto;margin-left:.2em;fill:var(--flag);vertical-align:baseline}
nav ul{display:flex;flex-wrap:wrap;gap:.1rem .25rem;list-style:none;margin:0 -.5rem;padding:0}
nav a{display:block;padding:.45rem .5rem;color:var(--text);text-decoration:none;font-size:.95rem;border-radius:8px}
nav a:hover{background:var(--accent-soft)}
nav a[aria-current=page]{color:var(--accent);font-weight:700}

/* hero */
.hero{padding:2.5rem 0 2rem;background:linear-gradient(180deg,var(--accent-soft),var(--bg))}
.hero h1{max-width:24ch}
.accent{color:var(--accent)}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;font-weight:700;color:var(--accent);margin-bottom:.8rem}
.actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}
.btn{display:inline-block;background:var(--accent);color:var(--accent-ink);padding:.7rem 1.2rem;border-radius:999px;font-weight:700;text-decoration:none;border:2px solid var(--accent)}
.btn:hover{filter:brightness(1.08)}
.btn.ghost{background:transparent;color:var(--accent)}

.block{padding-top:.5rem;padding-bottom:1rem}
.page{padding-top:2rem;padding-bottom:3rem}
.prose{max-width:46rem}
.prose li{margin-bottom:.5rem}

.cards3{display:grid;gap:1rem;list-style:none;padding:0;margin:1rem 0}
.cards3 li,.cats a,.deal-card,.empty{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem}
.cards3 p{margin:0;color:var(--muted)}

.grid{display:grid;gap:1rem;margin:1rem 0}
.deal-card h3{margin:.5rem 0 .3rem}
.deal-card h3 a{color:var(--text);text-decoration:none}
.deal-card h3 a:hover{color:var(--accent);text-decoration:underline}
.deal-top{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.deal-meta{font-size:.875rem;color:var(--muted);margin:.15rem 0 0}
.deal-price{margin:0 0 .4rem}
.price{font-weight:800;font-size:1.4rem}
.price.xl{font-size:clamp(2.2rem,8vw,3rem);margin:0;line-height:1.1}
.price small{font-size:1rem;color:var(--muted);font-weight:600}
.retailer{color:var(--muted)}
.badge{display:inline-block;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .6rem;border-radius:999px}
.badge.big{font-size:.9rem;padding:.3rem .8rem}
.chip{font-size:.8rem;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.1rem .6rem;text-decoration:none}
.empty{border-style:dashed;text-align:center;padding:2rem 1.2rem;color:var(--muted)}
.empty h3{color:var(--text)}
.empty p{max-width:34rem;margin:0 auto}

.cats{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.8rem}
.cats a{display:block;height:100%;text-decoration:none;color:var(--text)}
.cats a:hover{border-color:var(--accent)}
.cats strong{display:block;font-size:1.1rem}
.cats span{color:var(--muted);font-size:.93rem}

/* post */
.post{max-width:46rem}
.crumbs{font-size:.875rem;color:var(--muted)}
.summary{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;justify-content:space-between;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem;margin:1.2rem 0}
.summary p{margin:0}
.notice{background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:var(--radius);padding:.8rem 1rem;margin:1rem 0}
.bars ul{list-style:none;padding:0;margin:.5rem 0}
.bars li{display:grid;grid-template-columns:7.5rem 1fr 4rem;gap:.6rem;align-items:center;margin:.4rem 0}
.bt{display:block;height:.9rem;background:var(--line);border-radius:999px;overflow:hidden}
.bt i{display:block;height:100%;background:var(--muted);opacity:.55;border-radius:999px}
.bt i.hl{background:var(--accent);opacity:1}
.bv{font-weight:700;text-align:right}
.bl{font-size:.9rem}
.meta-foot{border-top:1px solid var(--line);padding-top:1rem;margin-top:2rem}
.post li{margin-bottom:.4rem}

/* footer */
.site-footer{border-top:1px solid var(--line);background:var(--surface);margin-top:3rem;padding:1.6rem 0 2rem;font-size:.9rem}
.disclosure{color:var(--text)}
.footer-links{display:flex;flex-wrap:wrap;gap:.3rem 1.2rem;list-style:none;padding:0;margin:0 0 1rem}
.sample-banner{background:#b91c1c;color:#fff;padding:.6rem 1rem;text-align:center;font-size:.9rem}

@media (min-width:44rem){
  .cards3{grid-template-columns:repeat(3,1fr)}
  .grid{grid-template-columns:repeat(2,1fr)}
  .cats{grid-template-columns:repeat(3,1fr)}
  .hero{padding:4rem 0 3rem}
}
@media (min-width:62rem){.grid{grid-template-columns:repeat(3,1fr)}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
