/* Foundery - shared styles only. Layout/utilities are Tailwind. */
body { font-family: 'Inter', system-ui, sans-serif; }
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #475569; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #64748b; }

/* Google AdSense reserved spaces
   Space is reserved from day 1 so ads do not shift layout (CLS)
   when AdSense is approved. Empty slots show a subtle placeholder
   to the site owner in preview; hide them before approval by adding
   class "ads-off" to <body> in production if desired. */
/* Hidden on the live site until AdSense is approved (Oli, 2026-10-25).
   ads.js sets display:flex on each slot when ADSENSE_ENABLED = true. */
.ad-slot { display:none; align-items:center; justify-content:center; flex-direction:column; gap:4px;
  border:1px dashed #475569; border-radius:16px; color:#94a3b8; background:rgba(100,116,139,.06);
  text-align:center; overflow:hidden; margin:0 auto; width:100%; }
.ad-slot .ad-label { font-size:10px; letter-spacing:.14em; text-transform:uppercase; }
.ad-slot .ad-size { font-size:11px; }
.ad-leaderboard { min-height:110px; max-width:970px; }
.ad-sidebar { min-height:280px; max-width:336px; }
.ad-incontent { min-height:120px; max-width:970px; }
.ad-footer { min-height:110px; max-width:970px; }
.ad-slot ins.adsbygoogle { display:block; width:100%; }
