.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  border:1px solid transparent;border-radius:2px;padding:.84rem 1.06rem;box-shadow:none;
  text-decoration:none;font-weight:800
}
.btn-primary{background:var(--c-accent);color:#fff}
.btn-primary:hover{background:var(--c-accent-hover);color:#fff}
.btn-secondary{background:#fff;border-color:var(--c-line-strong);color:var(--c-brand)}
.note{
  border:1px solid var(--c-line);background:#fff;padding:1rem 1.05rem;border-radius:2px;box-shadow:var(--shadow-float)
}
.note-info{border-color:#b9d0e4;background:#f2f7fb}
.source-list{display:flex;flex-wrap:wrap;gap:.55rem}
.source-list a{
  display:inline-flex;padding:.45rem .6rem;border:1px solid var(--c-line);
  background:#fff;text-decoration:none;font-size:.82rem;font-weight:750
}
.summary-list{border-top:1px solid var(--c-line)}
.summary-list>div{
  display:grid;grid-template-columns:1fr auto;gap:1rem;
  padding:.75rem 0;border-bottom:1px solid var(--c-line)
}
.summary-list dt{font-size:.86rem;color:var(--c-muted)}
.summary-list dd{margin:0;color:var(--c-ink);font-weight:800}
.content-card{
  background:#fff;border:1px solid var(--c-line);border-top:2px solid var(--c-brand);
  border-radius:var(--r);padding:1.25rem;box-shadow:var(--shadow-float)
}
.tool-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.tool-teaser{border-top:1px solid var(--c-line);padding-top:1rem}
.tool-teaser h3{margin:.2rem 0 .35rem}
.status-chip{display:inline-block;background:var(--c-surface-alt);border:1px solid var(--c-line);padding:.28rem .48rem;font-size:.71rem;font-weight:800;letter-spacing:.02em}
.ad-slot{
  display:grid;place-items:center;min-height:90px;
  border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);
  color:var(--c-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;
  margin-block:1.5rem
}
.ad-slot[data-size="336x280"]{min-height:280px;max-width:336px;margin-inline:auto}
.legal-shell{
  width:min(calc(100% - 2rem),900px);margin:0 auto;padding:2.2rem 0 4rem
}
.legal-shell>header{border-bottom:1px solid var(--c-line);padding-bottom:1rem;margin-bottom:1.5rem}
.legal-shell section{margin:1.5rem 0}
.breadcrumbs{font-size:.82rem;color:var(--c-muted);margin-bottom:1rem}
.breadcrumbs a{color:var(--c-muted)}
@media(max-width:760px){.tool-list{grid-template-columns:1fr}}


/* E6 ads/privacy */
.ad-slot{
  position:relative;
  overflow:hidden;
  min-width:0;
}
.ad-slot::before{
  content:"Mainos";
  position:absolute;
  top:.2rem;left:.2rem;
  font-size:.58rem;
  letter-spacing:.08em;
  color:var(--c-muted);
  z-index:0;
}
.ad-slot .adsbygoogle{position:relative;z-index:1;width:100%}
.privacy-settings-button{
  border:0;background:transparent;padding:0;color:inherit;
  text-decoration:underline;text-underline-offset:.18em;cursor:pointer;font:inherit
}


/* E8.1 — monetization layout. Dashboard/calculator hierarchy remains unchanged. */
.ad-band{padding-block:.15rem}
.ad-zone-hot{
  min-height:96px;
  margin:1rem 0 0;
  padding:.2rem;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(255,255,255,.24);
  border-radius:2px;
  color:var(--c-muted);
}
.ad-zone-hot::before{color:#6a7d76}
.ad-fixed-wrap{display:flex;justify-content:center;padding-block:.35rem}
.ad-fixed-336{
  width:336px;
  max-width:336px;
  min-height:280px;
  margin-block:1.35rem;
  background:#fff;
}
.guide-download .compact-list{margin:.45rem 0 0;padding-left:1.15rem}
.guide-download .compact-list li+li{margin-top:.35rem}
@media(max-width:380px){.ad-fixed-wrap{display:none}}
