/* ===== SpelaNytt — dark arcade theme ===== */
:root{
  --sp-bg:#0c0e14; --sp-surface:#151926; --sp-surface2:#1c2231; --sp-border:#28304300;
  --sp-line:#283043; --sp-text:#e9ecf3; --sp-muted:#99a2b5; --sp-accent:#22e0a1; --sp-accent2:#7c5cff;
  --sp-radius:14px;
}
html,body{background:var(--sp-bg)!important;color:var(--sp-text)!important}
body,p,li,span,div,td,th{color:var(--sp-text)}
.entry-content,.ct-container,article,.post{color:var(--sp-text)}
h1,h2,h3,h4,h5,h6{color:#fff!important}
a{color:var(--sp-accent);text-decoration:none}
a:hover{color:var(--sp-accent2)}
.entry-content a{text-decoration:underline;text-underline-offset:2px}

/* header / footer chrome (Blocksy paints bg on [data-row] elements) */
#header,.ct-header,header[data-device],.site-header{background:#090b11!important;border-bottom:1px solid var(--sp-line)!important}
[data-row],[data-row="top"],[data-row="middle"],[data-row="bottom"],.ct-header-row,.ct-header-row-inner{background-color:#090b11!important;border-color:var(--sp-line)!important}
.ct-header *,#header a,.menu a,.menu-item a,.ct-main-menu a,.ct-menu-link{color:#e9ecf3!important}
.ct-main-menu a:hover,.menu-item a:hover,.ct-header a:hover,.menu a:hover{color:var(--sp-accent)!important}
.site-title a,.site-title,.ct-logo-container a,.site-logo-container a{color:#fff!important;font-weight:800}
.ct-header svg,.ct-toggle-close svg,[class*="search"] svg,.ct-icon{color:#e9ecf3!important;fill:currentColor}
.ct-panel,.ct-panel-inner,#offcanvas{background:#0c0e14!important}
[data-footer],.ct-footer,.site-footer{background:#090b11!important;border-top:1px solid var(--sp-line)!important;color:var(--sp-muted)}
[data-footer] a,.ct-footer a{color:var(--sp-muted)!important}
[data-footer] a:hover{color:var(--sp-accent)!important}
.ct-container,.entry-card,.post,article{background:transparent}

/* brand wordmark fallback */
.site-logo-container .site-title,.ct-logo-container a{color:#fff!important;font-weight:800}

/* ---- arcade grid + cards ---- */
.arcade-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px;margin:24px 0}
.game-card{display:flex;flex-direction:column;background:var(--sp-surface);border:1px solid var(--sp-line);border-radius:var(--sp-radius);overflow:hidden;transition:transform .12s,border-color .12s,box-shadow .12s}
.game-card:hover{transform:translateY(-3px);border-color:var(--sp-accent);box-shadow:0 10px 30px rgba(34,224,161,.12)}
.gc-thumb{position:relative;display:block;aspect-ratio:16/10;background:#0f1320;overflow:hidden}
.gc-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.gc-noimg{display:block;width:100%;height:100%;background:linear-gradient(135deg,#1c2231,#0f1320)}
.gc-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.9);opacity:0;transition:.15s;background:var(--sp-accent);color:#04130d;font-weight:800;font-size:13px;padding:8px 14px;border-radius:999px;letter-spacing:.3px}
.game-card:hover .gc-play{opacity:1;transform:translate(-50%,-50%) scale(1)}
.gc-meta{padding:11px 13px 13px}
.gc-cat{display:inline-block;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--sp-accent);margin-bottom:5px}
.gc-title{display:block;font-family:inherit;font-weight:700;font-size:15px;color:#fff;line-height:1.25}

/* ---- single game page ---- */
.sp-single{max-width:1080px;margin:0 auto;padding:26px 18px 60px}
.sp-single h1{font-size:30px;margin:0 0 4px}
.sp-crumbs{font-size:12.5px;color:var(--sp-muted);margin:0 0 18px;text-transform:uppercase;letter-spacing:.6px}
.sp-crumbs a{color:var(--sp-muted)}.sp-crumbs a:hover{color:var(--sp-accent)}
.game-embed{margin:6px auto 8px;width:100%;max-width:560px}
.game-embed iframe{width:100%;height:min(76vh,760px);border:1px solid var(--sp-line);border-radius:16px;background:#0a0c12;display:block;box-shadow:0 12px 40px rgba(0,0,0,.45)}
.game-embed-bar{display:flex;align-items:center;justify-content:space-between;margin:8px 2px 0;font-size:12.5px;color:var(--sp-muted)}
.ge-dot{width:8px;height:8px;border-radius:50%;background:var(--sp-accent);box-shadow:0 0 10px var(--sp-accent);display:inline-block}
.ge-full{color:var(--sp-muted)!important}.ge-full:hover{color:var(--sp-accent)!important}
.sp-body{max-width:760px;margin:30px auto 0;line-height:1.7;font-size:16.5px}
.sp-body h2{font-size:23px;margin:30px 0 10px}
.sp-body h3{font-size:18px;margin:20px 0 8px}
.sp-body ul,.sp-body ol{padding-left:22px}.sp-body li{margin:5px 0}
.sp-body table{width:100%;border-collapse:collapse;margin:16px 0}
.sp-body th,.sp-body td{border:1px solid var(--sp-line);padding:9px 12px;text-align:left}
.sp-body th{background:var(--sp-surface2)}
.kbd{display:inline-block;background:var(--sp-surface2);border:1px solid var(--sp-line);border-bottom-width:2px;border-radius:6px;padding:1px 8px;font-family:monospace;font-size:13px;color:#fff}

/* ---- archive ---- */
.sp-archive{max-width:1180px;margin:0 auto;padding:30px 18px 60px}
.sp-archive h1{font-size:32px;margin:0 0 6px}
.sp-lead{color:var(--sp-muted);max-width:640px;margin:0 0 8px;font-size:16px}
.sp-filter{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 4px}
.sp-filter a{background:var(--sp-surface);border:1px solid var(--sp-line);color:var(--sp-muted)!important;padding:7px 14px;border-radius:999px;font-size:13.5px;font-weight:600}
.sp-filter a:hover,.sp-filter a.active{border-color:var(--sp-accent);color:var(--sp-accent)!important}
.sp-related{max-width:1080px;margin:46px auto 0;padding:0 4px}
.sp-related h2{font-size:22px;margin:0 0 4px}

/* ---- homepage ---- */
.sp-hero{position:relative;text-align:center;padding:64px 18px 40px;background:radial-gradient(1100px 420px at 50% -10%,rgba(124,92,255,.16),transparent 60%),radial-gradient(900px 380px at 50% 0,rgba(34,224,161,.10),transparent 55%)}
.sp-hero h1{font-size:clamp(30px,5vw,52px);margin:0 0 12px;letter-spacing:-.5px}
.sp-hero .accent{color:var(--sp-accent)}
.sp-hero p{color:var(--sp-muted);font-size:18px;max-width:620px;margin:0 auto 22px}
.sp-cta{display:inline-flex;gap:12px;flex-wrap:wrap;justify-content:center}
.sp-btn{background:var(--sp-accent);color:#04130d;font-weight:800;padding:13px 24px;border-radius:999px;font-size:15px}
.sp-btn.alt{background:transparent;color:#fff;border:1px solid var(--sp-line)}
.sp-btn:hover{filter:brightness(1.06);color:#04130d}
.sp-btn.alt:hover{border-color:var(--sp-accent);color:var(--sp-accent)}
.sp-section{max-width:1180px;margin:0 auto;padding:40px 18px}
.sp-section-head{display:flex;align-items:baseline;justify-content:space-between;margin:0 0 4px}
.sp-section-head h2{font-size:25px;margin:0}
.sp-section-head a{font-size:14px;font-weight:700}
/* news grid on home */
.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin-top:18px}
.news-card{display:block;background:var(--sp-surface);border:1px solid var(--sp-line);border-radius:var(--sp-radius);overflow:hidden}
.news-card:hover{border-color:var(--sp-accent2)}
.news-card .nc-thumb{aspect-ratio:16/9;background:#0f1320}
.news-card .nc-thumb img{width:100%;height:100%;object-fit:cover}
.news-card .nc-body{padding:14px 16px}
.news-card .nc-cat{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--sp-accent2)}
.news-card .nc-title{display:block;font-weight:700;color:#fff;font-size:16px;line-height:1.3;margin-top:5px}

@media(max-width:560px){.arcade-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:13px}.game-embed iframe{height:74vh}}
