/*
Theme Name: Brite kasinot
Version: 202611101101
*/
@font-face{font-family:'Sora';font-weight:400;font-style:normal;font-display:swap;src:url(assets/fonts/sora-400.woff2) format('woff2')}
@font-face{font-family:'Sora';font-weight:600;font-style:normal;font-display:swap;src:url(assets/fonts/sora-600.woff2) format('woff2')}
@font-face{font-family:'Sora';font-weight:700;font-style:normal;font-display:swap;src:url(assets/fonts/sora-700.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-weight:400;font-style:normal;font-display:swap;src:url(assets/fonts/nunito-sans-400.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-weight:700;font-style:normal;font-display:swap;src:url(assets/fonts/nunito-sans-700.woff2) format('woff2')}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-size:18px;line-height:1.65;overflow-wrap:break-word}
img,svg{max-width:100%}
h1,h2,h3{line-height:1.15;margin:0}
ul{padding-left:1.25em}
a{color:inherit}
.ohita{position:absolute;left:-999px;top:0;padding:.6em 1em;background:#fff;color:#000;z-index:9}
.ohita:focus{left:8px;top:8px}
:focus-visible{outline:3px solid currentColor;outline-offset:2px}
.ylin nav ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.2em 1.1em}
.logo{display:inline-flex;align-items:center;gap:.5em;text-decoration:none;font-weight:700}
.taulu{overflow-x:auto;margin:1.5em 0}
table{border-collapse:collapse;width:100%;min-width:480px;font-size:.92em}
caption{text-align:left;font-weight:600;padding-bottom:.5em}
th,td{text-align:left;vertical-align:top;padding:.55em .7em}
summary{cursor:pointer;font-weight:600}
details{padding:.7em 0}
details p:last-child{margin-bottom:0}
.tekija{display:flex;gap:.7em;align-items:center;font-size:.86em;margin:0}
.ini{flex:0 0 2.4em;height:2.4em;border-radius:50%;display:grid;place-items:center;font-weight:700}
.lahteet ul{font-size:.88em}
.lahteet span{opacity:.75}
.lisaa ul{list-style:none;padding:0}
.ei-loydy{padding:4em 1.2em;text-align:center}
.alin{font-size:.86em}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* FI-återstart 2026-11-09: topplistekomponent (toplist.py). Each skin sets the --tl-* vars at the end of data/css/<key>.css. */
.tl{--tl-ink:inherit;--tl-muted:#5b6470;--tl-line:#dfe3e8;--tl-card:#fff;--tl-bg:transparent;--tl-accent:#111;--tl-accent-ink:#fff;--tl-radius:12px;--tl-head:inherit;--tl-tag:#f1f3f5;
  margin:28px 0 8px;padding:0;background:var(--tl-bg);color:var(--tl-ink);clear:both;min-width:0}
.tl-mainos{font-size:.8rem;line-height:1.4;color:var(--tl-muted);margin:0 0 14px}
.tl-mainos span{display:inline-block;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;padding:.15em .5em;margin-right:.4em;border:1px solid currentColor;border-radius:4px}
.tl-mainos a{color:inherit}
.tl-otsikko{font-family:var(--tl-head);font-size:clamp(1.25rem,2.4vw,1.6rem);line-height:1.15;margin:0 0 .5em}
.tl-ryhma+.tl-ryhma,.tl-karki+.tl-ryhma{margin-top:26px}
.tl-huom{font-size:.88rem;line-height:1.45;color:var(--tl-muted);margin:-.2em 0 12px;max-width:40em}
.tl-lista,.tl-kortit{list-style:none;margin:0;padding:0}
.tl-rivi{display:grid;grid-template-columns:2em 160px minmax(0,1fr) auto;align-items:center;gap:12px 18px;padding:14px 16px;margin:0 0 10px;
  background:var(--tl-card);border:1px solid var(--tl-line);border-radius:var(--tl-radius)}
.tl-nro{font-family:var(--tl-head);font-weight:700;font-size:1.25rem;text-align:center;color:var(--tl-muted)}
.tl-kuva,.tl-k-kuva{display:block;line-height:0}
.tl-logo{display:block;width:160px;height:64px;border-radius:10px;object-fit:contain}
.tl-tiedot{min-width:0}
.tl-nimi{font-family:var(--tl-head);font-size:1.08rem;line-height:1.2;margin:0}
.tl-bonus{font-weight:600;font-size:.98rem;line-height:1.35;margin:.2em 0 .45em}
.tl-ehdot{display:flex;flex-wrap:wrap;gap:6px;margin:0;font-size:.8rem;line-height:1.3}
.tl-ehdot div{background:var(--tl-tag);border-radius:6px;padding:.3em .6em}
.tl-ehdot dt{display:inline;font-weight:400;color:var(--tl-muted)}
.tl-ehdot dt::after{content:": "}
.tl-ehdot dd{display:inline;margin:0;font-weight:600}
.tl-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 1.15em;border-radius:calc(var(--tl-radius) * .7);
  background:var(--tl-accent);color:var(--tl-accent-ink)!important;font-weight:700;font-size:.95rem;text-decoration:none!important;white-space:nowrap;border:0}
.tl-cta:hover{filter:brightness(1.08)}
.tl-cta:focus-visible{outline:3px solid var(--tl-ink);outline-offset:2px}
.tl-kortit{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tl-kortit li{display:flex;flex-direction:column;gap:8px;padding:14px;background:var(--tl-card);border:1px solid var(--tl-line);border-radius:var(--tl-radius)}
.tl-kortit .tl-logo{width:100%;height:auto;aspect-ratio:5/2}
.tl-kortit b{font-family:var(--tl-head);font-size:1.02rem;line-height:1.2}
.tl-kortit span{font-size:.88rem;line-height:1.35;flex:1}
.tl-ala{font-size:.78rem;line-height:1.45;color:var(--tl-muted);margin:12px 0 0}
.mainosrivi{font-size:.8rem;line-height:1.4;margin:.6em 0;opacity:.85}
.mainosrivi a{color:inherit}
@media (max-width:760px){
  .tl-rivi{grid-template-columns:1.6em 112px minmax(0,1fr);gap:10px 12px;padding:12px}
  .tl-logo{width:112px;height:45px}
  .tl-cta{grid-column:1/-1;width:100%}
  .tl-kortit{grid-template-columns:minmax(0,1fr)}
  .tl-kortit li{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center}
  .tl-kortit .tl-logo{width:112px;height:45px}
  .tl-kortit span{grid-column:1/-1}
  .tl-kortit .tl-cta{grid-column:1/-1}
}
@media (max-width:420px){
  .tl-rivi{grid-template-columns:96px minmax(0,1fr)}
  .tl-nro{display:none}
  .tl-logo,.tl-kortit .tl-logo{width:96px;height:38px}
  .tl-kortit li{grid-template-columns:96px minmax(0,1fr)}
}
:root{--pohja:#effaf8;--kortti:#fff;--vesi:#dff4f0;--vesi2:#c9ece6;--viiva:#d3ece7;--muste:#0d2f35;--teal:#0b5f66;--turkoosi:#1fa8a0;--harmaa:#46656a;--leveys:720px}
html{scroll-behavior:smooth}
body{background:var(--pohja);color:var(--muste);font-family:'Nunito Sans',system-ui,sans-serif;font-size:18px;line-height:1.65}
h1,h2,h3,.logo,summary,.tiivis b,caption,.vali dt,.ilm-otsikko,.linkkikortti b{font-family:Sora,system-ui,sans-serif}
h1{font-size:clamp(2rem,5vw,3rem);font-weight:700;letter-spacing:-.03em;line-height:1.12}
h2{font-size:clamp(1.3rem,2.6vw,1.6rem);font-weight:700;letter-spacing:-.02em;line-height:1.22;margin-bottom:.65em}
a{color:var(--teal);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--muste)}
:focus-visible{outline:3px solid var(--teal);outline-offset:2px;border-radius:6px}

/* header */
.ylin{display:flex;flex-direction:column;align-items:center;gap:.1em;padding:.8em 16px 0;text-align:center}
.ylin a{color:var(--muste);text-decoration:none}
.logo{min-height:44px;font-weight:700;font-size:1.02rem}
.merkki{display:inline-block;width:28px;height:14px;font-size:0;border:3px solid var(--turkoosi);border-bottom:0;border-radius:28px 28px 0 0}
.ylin nav ul{justify-content:center;gap:.1em .3em}
.ylin nav a{display:flex;align-items:center;min-height:44px;padding:0 .85em;border-radius:99px;font-size:.92rem;font-weight:700;color:var(--harmaa)}
.ylin nav a:hover{background:var(--vesi);color:var(--muste)}

/* column */
main{max-width:calc(var(--leveys) + 32px);margin:0 auto;padding:0 16px;display:flex;flex-direction:column;gap:16px}

/* page head */
.sivupaa{text-align:center;padding:clamp(22px,4vw,40px) 0 clamp(6px,1.5vw,14px)}
.silta{display:block;width:150px;height:auto;margin:0 auto 14px;fill:none;stroke-linecap:round}
.s-kaari{stroke:var(--turkoosi);stroke-width:3.5}
.s-kansi{stroke:var(--teal);stroke-width:4}
.s-ripustin{stroke:var(--turkoosi);stroke-width:1.5;opacity:.6}
.s-vesi{stroke:var(--vesi2);stroke-width:2.5}
.ingressi{font-size:clamp(1.08rem,1.8vw,1.22rem);line-height:1.55;margin:.75em auto .9em;max-width:34em}
.tekija{justify-content:center;color:var(--harmaa);font-size:.84rem;text-align:left}
.ini{background:var(--vesi);color:var(--teal);font-family:Sora,sans-serif;font-size:.84em}

/* notice */
.ilmoitus{background:var(--vesi);border-radius:28px;padding:20px 26px;font-size:.92rem;line-height:1.55}
.ilm-otsikko{font-weight:700;font-size:1.02rem;margin:0 0 .45em}
.ilm-luvut{list-style:none;padding:0;margin:0 0 .6em;display:flex;flex-wrap:wrap;gap:.1em 1.3em;color:var(--harmaa)}
.ilm-luvut b{color:var(--muste);font-family:Sora,sans-serif}
.ilmoitus p:last-child{margin:0}

/* in-page links */
.sisallys{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}
.sisallys a{display:inline-flex;align-items:center;min-height:44px;padding:0 1em;background:var(--kortti);border:1px solid var(--viiva);border-radius:99px;font-size:.9rem;font-weight:700;text-decoration:none}
.sisallys a:hover{border-color:var(--turkoosi)}

/* key figures */
.tiivis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tiivis div{background:var(--kortti);border:1px solid var(--viiva);border-radius:24px;padding:18px 14px;text-align:center}
.tiivis b{display:block;font-size:1.5rem;font-weight:700;letter-spacing:-.03em;line-height:1.15;color:var(--teal);margin-bottom:.3em;white-space:nowrap}
.tiivis span{display:block;font-size:.84rem;line-height:1.35;color:var(--harmaa)}

/* sections */
.osio{background:var(--kortti);border:1px solid var(--viiva);border-radius:28px;padding:clamp(22px,4vw,36px);scroll-margin-top:12px}
.osio p{margin:0 0 .9em}
.osio>:last-child{margin-bottom:0}
.huomio{background:var(--vesi);border-color:var(--vesi2)}
.tietoa h2:not(:first-child){margin-top:1.3em}

/* numbered steps on a line */
.askeleet{list-style:none;counter-reset:a;padding:0;margin:0 0 1.1em}
.askeleet li{counter-increment:a;position:relative;padding:0 0 1em 3em}
.askeleet li:last-child{padding-bottom:0}
.askeleet li::before{content:counter(a);position:absolute;left:0;top:0;z-index:1;width:2.05em;height:2.05em;border-radius:50%;background:var(--vesi);color:var(--teal);display:grid;place-items:center;font:700 .88rem Sora,sans-serif}
.askeleet li:not(:last-child)::after{content:"";position:absolute;left:calc(.9em - 1px);top:1.8em;bottom:0;border-left:2px solid var(--vesi)}
.askeleet b{display:block}
.askeleet:last-child{margin-bottom:0}

/* three stops */
.vali{margin:0 0 1em;display:grid;gap:8px}
.vali>div{background:var(--pohja);border-radius:20px;padding:13px 18px}
.vali dt{font-weight:700;font-size:.9rem;color:var(--teal)}
.vali dd{margin:.1em 0 0}
.vali:last-child{margin-bottom:0}

/* lists */
.ehdot{list-style:none;padding:0;margin:0 0 1em}
.ehdot li{padding:.65em 0;border-top:1px solid var(--viiva)}
.ehdot li:first-child{border-top:0;padding-top:0}
.ehdot li:last-child{padding-bottom:0}
.plus,.miinus{list-style:none;padding:0;margin:0 0 1em}
.miinus{margin-bottom:0;padding-top:1em;border-top:1px solid var(--viiva)}
.plus li,.miinus li{position:relative;padding:.22em 0 .22em 2em}
.plus li::before,.miinus li::before{position:absolute;left:0;top:.28em;width:1.35em;height:1.35em;border-radius:50%;display:grid;place-items:center;font:700 .86rem Sora,sans-serif;line-height:1}
.plus li::before{content:"+";background:var(--vesi);color:var(--teal)}
.miinus li::before{content:"\2013";background:#edf1f1;color:var(--harmaa)}

/* tables */
.taulu{margin:0 0 1em;border:1px solid var(--viiva);border-radius:20px}
.taulu:last-child{margin-bottom:0}
table{min-width:0;font-size:.94rem}
caption{padding:14px 18px 8px;font-weight:700;font-size:.92rem}
th,td{padding:.7em 18px;border-top:1px solid var(--viiva)}
thead th{background:var(--pohja);font-size:.82rem;color:var(--harmaa)}
tbody th{font-weight:700;width:38%}

/* faq */
.ukk details{border-top:1px solid var(--viiva);padding:0}
.ukk details:first-of-type{border-top:0}
summary{font-weight:600;font-size:1rem;line-height:1.35;padding:.8em 2.1em .8em 0;min-height:44px;list-style:none;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:.2em;top:.62em;font-size:1.25em;line-height:1;color:var(--teal)}
details[open]>summary::after{content:"\2013"}
.ukk details p{margin:0 0 1em}

/* ending */
.linkkikortit{display:grid;gap:8px}
.linkkikortti{display:block;padding:13px 18px;background:var(--pohja);border-radius:20px;text-decoration:none;color:var(--muste)}
.linkkikortti:hover{background:var(--vesi);color:var(--muste)}
.linkkikortti b{display:block;font-weight:600;color:var(--teal)}
.linkkikortti span{font-size:.92rem;color:var(--harmaa)}
.lahteet{margin-top:1em;padding:0}
.lahteet summary{font-size:.92rem}
.lahteet ul{padding-left:1.1em;line-height:1.5;margin:0}
.lahteet li{margin-bottom:.4em;overflow-wrap:anywhere}
.lahteet a{display:inline}

/* footer */
.alin{max-width:calc(var(--leveys) + 32px);margin:0 auto;padding:30px 16px 36px;text-align:center;color:var(--harmaa)}
.alin p{margin:.2em 0}
.alin strong{color:var(--muste)}
.alin a{display:inline-flex;align-items:center;min-height:44px}
.ei-loydy{padding:2.5em 1em}

@media (max-width:640px){
  body{font-size:17px}
  .ylin nav ul{gap:0}
  .ylin nav a{padding:0 .6em;font-size:.86rem}
  .tiivis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .osio{border-radius:24px}
  .ilmoitus{padding:18px 20px;border-radius:24px}
  .sisallys{justify-content:flex-start}
  th,td{padding:.65em 14px}
  caption{padding:12px 14px 6px}
  thead{display:none}
  tbody tr,tbody th,tbody td{display:block;width:auto}
  tbody td{border-top:0;padding-top:0}
}
/* topplista (FI-återstart 2026-11-09) */
.s-brite .tl{--tl-ink:var(--muste);--tl-muted:var(--harmaa);--tl-line:var(--viiva);--tl-accent:var(--teal);--tl-accent-ink:#fff;--tl-radius:20px;--tl-head:Sora,system-ui,sans-serif;--tl-tag:var(--vesi)}
