/* TankTicker shared chrome: link colours + site nav + affiliate highlight */
:root{
  --tt-link:#ffd166;          /* yellow — default on dark */
  --tt-link-hover:#ff8c1a;    /* orange — hover/focus */
  --tt-link-visited:#f5a623;  /* amber — visited */
  --tt-aff-border:#ffb020;
  --tt-aff-badge-bg:#ff8c1a;
  --tt-aff-badge-ink:#1a0f00;
}

/* Dark pages (default TankTicker chrome): high-contrast yellow/orange links */
body:not(.tt-light) a{
  color:var(--tt-link)!important;
}
body:not(.tt-light) a:hover,
body:not(.tt-light) a:focus{
  color:var(--tt-link-hover)!important;
}
body:not(.tt-light) a:visited{
  color:var(--tt-link-visited)!important;
}
/* Keep logo wordmark from being forced yellow if it uses inherit */
body:not(.tt-light) a.logo,
body:not(.tt-light) header > a:first-child{
  color:inherit!important;
}
body:not(.tt-light) a.logo:visited,
body:not(.tt-light) header > a:first-child:visited{
  color:inherit!important;
}
body:not(.tt-light) a.back{
  color:var(--mute,#8b98a8)!important;
}
body:not(.tt-light) a.back:hover{
  color:var(--tt-link-hover)!important;
}

/* Light legal pages: warm orange family */
body.tt-light a{color:#b45309!important}
body.tt-light a:hover,body.tt-light a:focus{color:#d97706!important}

footer a,.site-nav a,.info a{
  text-decoration:underline;
  text-underline-offset:2px;
}
.site-nav{display:block;margin-top:6px;line-height:1.7}

/* Affiliate highlight — tasteful warm callout */
.aff-highlight,
section.ess.aff-highlight{
  position:relative;
  margin:36px 0 12px;
  padding:22px 18px 18px;
  border-radius:16px;
  border:2px solid var(--tt-aff-border);
  background:linear-gradient(160deg,rgba(255,176,32,.18),rgba(255,140,26,.08) 45%,rgba(18,24,33,.92));
  box-shadow:0 0 0 1px rgba(255,176,32,.45),0 0 28px rgba(255,140,26,.28),inset 0 1px 0 rgba(255,209,102,.25);
}
.aff-highlight::before,
section.ess.aff-highlight::before{
  content:"Partner deals";
  position:absolute;
  top:-11px;
  left:16px;
  padding:3px 10px;
  border-radius:999px;
  background:var(--tt-aff-badge-bg);
  color:var(--tt-aff-badge-ink);
  font:700 11px/1.4 ui-monospace,Consolas,monospace;
  letter-spacing:1.5px;
  text-transform:uppercase;
  box-shadow:0 2px 8px rgba(255,140,26,.35);
}
.aff-highlight .note,
section.ess.aff-highlight .note{
  color:#ffd166!important;
  font-weight:600;
}
.aff-highlight .opts a,
section.ess.aff-highlight .opts a,
.aff-highlight a[rel~="sponsored"]{
  border-color:rgba(255,176,32,.75)!important;
  color:#1a0f00!important;
  background:linear-gradient(180deg,#ffd166,#ff8c1a)!important;
  text-shadow:none!important;
  font-weight:800!important;
  box-shadow:0 2px 10px rgba(255,140,26,.35);
}
.aff-highlight .opts a:hover,
section.ess.aff-highlight .opts a:hover,
.aff-highlight a[rel~="sponsored"]:hover,
.aff-highlight .opts a:visited,
section.ess.aff-highlight .opts a:visited{
  filter:brightness(1.06);
  color:#000!important;
}

/* ===== Partner deals — identical on every page ===== */
.aff-highlight,
section.ess.aff-highlight{
  position:relative;
  margin:36px 0 12px;
  padding:22px 18px 18px;
  border-radius:16px;
  border:2px solid var(--tt-aff-border);
  background:linear-gradient(160deg,rgba(255,176,32,.18),rgba(255,140,26,.08) 45%,rgba(18,24,33,.92));
  box-shadow:0 0 0 1px rgba(255,176,32,.45),0 0 28px rgba(255,140,26,.28),inset 0 1px 0 rgba(255,209,102,.25);
  /* Same outer width on every page (break out of narrow page columns) */
  width:min(1100px, calc(100vw - 32px))!important;
  max-width:min(1100px, calc(100vw - 32px))!important;
  box-sizing:border-box!important;
  margin-left:auto!important;
  margin-right:auto!important;
  position:relative!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  font-family:system-ui,Segoe UI,Roboto,sans-serif!important;
  font-size:15px!important;
  line-height:1.4!important;
  -webkit-font-smoothing:antialiased;
}
.aff-highlight::before,
section.ess.aff-highlight::before{
  content:"Partner deals";
  position:absolute;
  top:-11px;left:16px;
  padding:3px 10px;border-radius:999px;
  background:var(--tt-aff-badge-bg);color:var(--tt-aff-badge-ink);
  font:700 11px/1.4 ui-monospace,Consolas,monospace;
  letter-spacing:1.5px;text-transform:uppercase;
  box-shadow:0 2px 8px rgba(255,140,26,.35);
}
.aff-highlight > h2,
section.ess.aff-highlight > h2{
  margin:0 0 4px!important;
  font-size:15px!important;
  letter-spacing:3px!important;
  text-transform:uppercase!important;
  color:var(--acc,#22d3ee)!important;
  border:0!important;padding:0!important;
}
.aff-highlight > .note,
section.ess.aff-highlight > .note{
  background:transparent!important;border:0!important;border-left:0!important;
  border-radius:0!important;padding:0!important;margin:0 0 14px!important;
  font-size:12px!important;font-weight:600!important;color:#ffd166!important;
  line-height:1.45!important;
}
/* Hide homepage-only icy banner if present — keep box identical */
.aff-highlight > .icy,
section.ess.aff-highlight > .icy{display:none!important}

.aff-highlight .tiles,
section.ess.aff-highlight .tiles{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
@media (max-width:1100px){
  .aff-highlight .tiles,section.ess.aff-highlight .tiles{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:720px){
  .aff-highlight .tiles,section.ess.aff-highlight .tiles{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media (max-width:420px){
  .aff-highlight .tiles,section.ess.aff-highlight .tiles{
    grid-template-columns:minmax(0,1fr)!important;
  }
}

.aff-highlight .tile,
section.ess.aff-highlight .tile{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  padding:14px!important;
  border-radius:12px!important;
  border:1px solid var(--line,#1f2a37)!important;
  background:var(--bg,#0a0d12)!important;
  color:var(--ink,#e6edf3)!important;
  box-sizing:border-box!important;
  min-height:227px!important;
  height:227px!important;
  width:auto!important;
  text-decoration:none!important;
  transform:none!important;
}
.aff-highlight .tile .ic,
section.ess.aff-highlight .tile .ic{
  flex:0 0 auto!important;
  font-size:26px!important;
  line-height:1!important;
  width:48px!important;height:48px!important;
  display:grid!important;place-items:center!important;
  border-radius:10px!important;
  background:color-mix(in srgb,var(--acc,#22d3ee) 14%,transparent)!important;
  border:1px solid color-mix(in srgb,var(--acc,#22d3ee) 40%,transparent)!important;
}
.aff-highlight .tile > b,
section.ess.aff-highlight .tile > b{
  flex:0 0 auto!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.25!important;
  min-height:2.5em!important; /* 2 lines — keeps titles aligned */
  display:block!important;
}
.aff-highlight .tile > small,
section.ess.aff-highlight .tile > small{
  flex:0 0 auto!important;
  color:var(--mute,#8b98a8)!important;
  font-size:12px!important;
  line-height:1.3!important;
  min-height:1.3em!important;
  max-height:1.3em!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
  display:block!important;
}

/* Button stack: always room for 2 full-width buttons so bottoms line up */
.aff-highlight .tile .opts,
section.ess.aff-highlight .tile .opts{
  display:flex!important;
  flex-direction:column!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  margin-top:auto!important;
  min-height:calc(2 * 34px + 6px)!important;
  width:100%!important;
}
.aff-highlight .tile .opts a,
section.ess.aff-highlight .tile .opts a,
.aff-highlight a[rel~="sponsored"]{
  flex:0 0 auto!important;
  width:100%!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 8px!important;
  border-radius:8px!important;
  text-align:center!important;
  text-decoration:none!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:1px!important;
  border:1px solid rgba(255,176,32,.75)!important;
  color:#1a0f00!important;
  background:linear-gradient(180deg,#ffd166,#ff8c1a)!important;
  text-shadow:none!important;
  box-shadow:0 2px 10px rgba(255,140,26,.35)!important;
}
.aff-highlight .tile .opts a:hover,
section.ess.aff-highlight .tile .opts a:hover,
.aff-highlight a[rel~="sponsored"]:hover,
.aff-highlight .tile .opts a:visited,
section.ess.aff-highlight .tile .opts a:visited{
  filter:brightness(1.06);
  color:#000!important;
}

/* Light pages — same layout/size; only colours adapt for contrast */
body.tt-light .aff-highlight,
body.tt-light section.ess.aff-highlight{
  background:linear-gradient(160deg,rgba(255,176,32,.22),rgba(255,140,26,.10) 45%,#fff8ef)!important;
  color:#1a0f00!important;
  box-shadow:0 0 0 1px rgba(255,176,32,.45),0 8px 24px rgba(255,140,26,.18)!important;
  margin:36px 0 12px!important;
  padding:22px 18px 18px!important;
}
body.tt-light .aff-highlight > h2,
body.tt-light section.ess.aff-highlight > h2{color:#c2410c!important}
body.tt-light .aff-highlight > .note,
body.tt-light section.ess.aff-highlight > .note{color:#9a3412!important}
body.tt-light .aff-highlight .tile,
body.tt-light section.ess.aff-highlight .tile{
  background:#fff!important;
  border-color:#f0c98a!important;
  color:#1a0f00!important;
}
body.tt-light .aff-highlight .tile > small,
body.tt-light section.ess.aff-highlight .tile > small{color:#6b4e2e!important}
body.tt-light .aff-highlight .tile .ic,
body.tt-light section.ess.aff-highlight .tile .ic{
  background:rgba(255,140,26,.12)!important;
  border-color:rgba(255,140,26,.4)!important;
}
