/*
Theme Name: KultGry Bright
Theme URI: https://kultgry.pl
Author: You + ChatGPT
Author URI: https://kultgry.pl
Description: Bright, vivid, animated theme for the KultGry prototype. Minimal chrome, full-screen game template, animated gradients, and high-contrast UI.
Version: 1.0.0
Requires at least: 5.8
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: kultgry-bright
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* Reset-ish */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
img{max-width:100%;height:auto}

/* Animated background */
:root{
  --bg1:#fdf2f8;
  --bg2:#e0f2fe;
  --bg3:#ecfccb;
  --txt:#0b1220;
  --mut:#4b5563;
  --card:#ffffff;
  --line:#e5e7eb;
  --accent:#7c3aed;
  --accent2:#06b6d4;
  --accent3:#f59e0b;
}
@keyframes rainbowFlow {
  0%{ background-position:0% 50% }
  50%{ background-position:100% 50% }
  100%{ background-position:0% 50% }
}
body{
  color:var(--txt);
  background-image: linear-gradient(120deg, var(--bg1), var(--bg2), var(--bg3), var(--bg1));
  background-size: 300% 300%;
  animation: rainbowFlow 16s ease infinite;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}
@media (prefers-reduced-motion: reduce){
  body{ animation: none }
}

/* Layout wrappers */
.kg-container{max-width:1200px;margin:0 auto;padding:28px}
.kg-card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:0 18px 40px rgba(0,0,0,.08);
  padding:22px;
}
.kg-title{
  font-size:clamp(28px, 4vw, 40px);
  margin:0 0 12px;
  letter-spacing:.02em;
}
.kg-sub{color:var(--mut);margin:0 0 18px}

/* Buttons */
.kg-btn{
  appearance:none;border:0;cursor:pointer;
  padding:12px 16px;border-radius:14px;
  background-image:linear-gradient(135deg,var(--accent),var(--accent2),var(--accent3));
  color:#fff;font-weight:800;letter-spacing:.02em;
  background-size:200% 200%; transition:transform .15s ease, filter .2s ease, background-position .8s ease;
}
.kg-btn:hover{ transform:translateY(-1px); filter:brightness(1.05); background-position:100% 0 }
.kg-btn:active{ transform:translateY(0) }

/* Start grid */
.kg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.kg-tile{
  background:#fff; border:1px solid var(--line); border-radius:16px; padding:16px; text-align:center;
  box-shadow:0 10px 24px rgba(0,0,0,.06);
  position:relative; overflow:hidden; cursor:pointer;
}
.kg-tile::before{
  content:""; position:absolute; inset:-1px;
  background: conic-gradient(from 0deg, #7c3aed, #06b6d4, #f59e0b, #7c3aed);
  filter: blur(14px); opacity:.3; transition:opacity .2s ease;
}
.kg-tile:hover::before{ opacity:.45 }
.kg-tile h3{ margin:8px 0 4px }
.kg-locked{ opacity:.65 }
.kg-locked:hover{ opacity:.7 }

/* Full-bleed game wrapper (no theme chrome) */
.kg-game-outer{min-height:100vh;display:flex;align-items:stretch;justify-content:center;padding:0}
.kg-game-inner{flex:1}

/* Global prototype overlay */
#kg-proto-overlay{
  position:fixed; inset:0; z-index:999999;
  display:none; place-items:center; padding:20px;
  background:rgba(0,0,0,.65); backdrop-filter: blur(3px) saturate(120%);
}
#kg-proto-overlay .kg-modal{
  width:min(92vw,780px);
  background:#ffffff;
  color:#0b1220;
  border-radius:18px;
  border:1px solid var(--line);
  box-shadow:0 30px 80px rgba(0,0,0,.25);
  padding:22px; text-align:center;
}
#kg-proto-overlay h2{ margin:0 0 8px }
#kg-proto-overlay p{ margin:0; line-height:1.6 }
#kg-proto-overlay .actions{ margin-top:14px; display:flex; gap:10px; justify-content:center; flex-wrap:wrap }
#kg-proto-accept{
  background: linear-gradient(135deg, var(--accent), var(--accent2));
  color:#fff; border:0; border-radius:12px; padding:10px 14px; font-weight:800; cursor:pointer;
}
#kg-proto-accept:hover{ filter:brightness(1.05) }
