:root {
  --bg: #05070a;
  --bg-soft: #0b0e13;
  --panel: #10141b;
  --panel-2: #151a22;
  --line: rgba(255,255,255,.09);
  --gold: #e5b43f;
  --gold-2: #ffdc75;
  --silver: #c9d0d8;
  --text: #f5f7fa;
  --muted: #a7b0bc;
  --danger: #ff5d6c;
  --success: #4dd69b;
  --radius: 20px;
  --shadow: 0 22px 70px rgba(0,0,0,.38);
  --container: 1180px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 15% 10%, rgba(229,180,63,.09), transparent 28rem),
    radial-gradient(circle at 90% 25%, rgba(80,101,139,.08), transparent 26rem),
    var(--bg);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
}
a { color: var(--gold-2); text-decoration: none; }
a:hover { color: #fff1bd; }
img { max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.container { width: min(var(--container), calc(100% - 32px)); margin-inline: auto; }
.site-main { min-height: 70vh; }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link:focus { position: fixed; top: 10px; left: 10px; width: auto; height: auto; clip: auto; z-index: 99999; background: #fff; color:#000; padding:8px 12px; }

/* Header */
.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  backdrop-filter: blur(18px);
  background: rgba(5,7,10,.82);
  border-bottom: 1px solid var(--line);
}
.header-inner { min-height: 82px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:flex; align-items:center; gap:12px; min-width:190px; }
.brand img { width:66px; height:66px; object-fit:contain; filter: drop-shadow(0 8px 20px rgba(229,180,63,.22)); }
.brand-copy strong { display:block; letter-spacing:.06em; font-size:1.03rem; }
.brand-copy span { color:var(--muted); font-size:.72rem; text-transform:uppercase; letter-spacing:.18em; }
.primary-nav ul { list-style:none; display:flex; align-items:center; gap:24px; margin:0; padding:0; }
.primary-nav a { color:#dde2e8; font-size:.88rem; font-weight:700; letter-spacing:.03em; text-transform:uppercase; }
.primary-nav a:hover, .primary-nav .current-menu-item > a { color:var(--gold); }
.header-actions { display:flex; align-items:center; gap:10px; }
.menu-toggle { display:none; border:1px solid var(--line); color:#fff; background:var(--panel); border-radius:12px; padding:10px 12px; }

/* Buttons */
.btn, .wp-element-button, input[type="submit"] {
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  min-height:46px; padding:0 20px; border-radius:13px; border:1px solid transparent;
  background:linear-gradient(135deg, var(--gold-2), var(--gold)); color:#0b0c0f; font-weight:800;
  box-shadow:0 10px 30px rgba(229,180,63,.18); transition:.2s ease;
}
.btn:hover, .wp-element-button:hover, input[type="submit"]:hover { transform:translateY(-2px); color:#000; box-shadow:0 15px 36px rgba(229,180,63,.28); }
.btn-outline { background:transparent; border-color:rgba(229,180,63,.65); color:var(--gold-2); box-shadow:none; }
.btn-outline:hover { background:rgba(229,180,63,.08); color:#fff; }
.btn-dark { background:#11151c; color:#fff; border-color:var(--line); box-shadow:none; }
.btn-sm { min-height:38px; padding:0 14px; font-size:.84rem; }
.btn-danger { background:linear-gradient(135deg, #ff7a86, #e73f51); color:#fff; }

/* Hero */
.hero { padding:88px 0 70px; overflow:hidden; position:relative; }
.hero::after { content:""; position:absolute; width:650px; height:650px; border:1px solid rgba(229,180,63,.08); border-radius:50%; right:-260px; top:-220px; box-shadow:0 0 0 80px rgba(229,180,63,.02),0 0 0 160px rgba(229,180,63,.015); pointer-events:none; }
.hero-grid { display:grid; grid-template-columns:1.08fr .92fr; align-items:center; gap:54px; }
.kicker { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid rgba(229,180,63,.25); border-radius:999px; color:var(--gold-2); background:rgba(229,180,63,.07); text-transform:uppercase; font-size:.75rem; letter-spacing:.14em; font-weight:800; }
.hero h1 { font-size:clamp(2.7rem, 6vw, 5.5rem); line-height:.98; letter-spacing:-.055em; margin:22px 0 24px; max-width:790px; }
.hero h1 span { color:var(--gold); }
.hero p { color:#bdc5ce; font-size:1.13rem; max-width:680px; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.hero-trust { display:flex; flex-wrap:wrap; gap:18px; margin-top:30px; color:var(--muted); font-size:.9rem; }
.hero-trust span::before { content:"✓"; color:var(--success); margin-right:8px; font-weight:900; }
.hero-visual { position:relative; }
.hero-logo-card { border:1px solid rgba(229,180,63,.24); background:linear-gradient(160deg, rgba(21,26,34,.96), rgba(7,9,13,.96)); border-radius:32px; padding:30px; box-shadow:var(--shadow); transform:rotate(1.5deg); }
.hero-logo-card img { display:block; margin:auto; max-height:390px; }
.float-chip { position:absolute; background:rgba(16,20,27,.93); border:1px solid var(--line); border-radius:14px; padding:13px 16px; box-shadow:var(--shadow); font-weight:800; }
.float-chip small { display:block; color:var(--muted); font-weight:500; }
.float-chip.one { left:-25px; top:55px; }
.float-chip.two { right:-20px; bottom:58px; }

/* Sections */
.section { padding:78px 0; }
.section-sm { padding:48px 0; }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:30px; }
.section-heading h2 { margin:0; font-size:clamp(2rem, 4vw, 3.15rem); letter-spacing:-.04em; }
.section-heading p { max-width:610px; color:var(--muted); margin:0; }
.eyebrow { color:var(--gold); font-size:.78rem; font-weight:900; text-transform:uppercase; letter-spacing:.17em; margin-bottom:8px; }
.grid { display:grid; gap:20px; }
.grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.grid-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.card { background:linear-gradient(145deg, rgba(18,22,29,.97), rgba(10,13,18,.97)); border:1px solid var(--line); border-radius:var(--radius); padding:24px; box-shadow:0 14px 45px rgba(0,0,0,.18); }
.card:hover { border-color:rgba(229,180,63,.22); }
.icon-box { width:52px; height:52px; display:grid; place-items:center; border-radius:15px; background:rgba(229,180,63,.1); color:var(--gold); font-size:1.45rem; margin-bottom:18px; }
.card h3 { margin:0 0 9px; }
.card p { color:var(--muted); margin:0; }
.stats { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:20px; overflow:hidden; }
.stat { padding:25px; background:#0c1016; text-align:center; }
.stat strong { display:block; font-size:2rem; color:var(--gold-2); }
.stat span { color:var(--muted); font-size:.86rem; }
.banner { background:linear-gradient(110deg, rgba(229,180,63,.16), rgba(17,21,28,.88) 45%, rgba(17,21,28,.95)); border:1px solid rgba(229,180,63,.28); border-radius:28px; padding:36px; display:flex; justify-content:space-between; align-items:center; gap:25px; }
.banner h2 { margin:0 0 8px; }
.banner p { margin:0; color:#c1c8d0; }

/* Page */
.page-hero { padding:64px 0 42px; border-bottom:1px solid var(--line); background:linear-gradient(180deg, rgba(229,180,63,.06), transparent); }
.page-hero h1 { font-size:clamp(2.4rem,5vw,4.7rem); margin:10px 0 12px; letter-spacing:-.05em; }
.page-hero p { color:var(--muted); max-width:760px; font-size:1.06rem; }
.prose { max-width:880px; }
.prose h2, .prose h3 { margin-top:2rem; }
.prose p, .prose li { color:#c2c9d1; }
.prose table { width:100%; border-collapse:collapse; }
.prose th,.prose td { padding:12px; border:1px solid var(--line); text-align:left; }
.notice { border-left:4px solid var(--gold); padding:16px 18px; background:rgba(229,180,63,.07); border-radius:0 13px 13px 0; color:#d8dce1; }
.notice.success { border-left-color:var(--success); background:rgba(77,214,155,.08); }
.notice.danger { border-left-color:var(--danger); background:rgba(255,93,108,.08); }

/* Games */
.game-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.game-card { position:relative; overflow:hidden; min-height:330px; display:flex; flex-direction:column; justify-content:flex-end; }
.game-card::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 70% 10%, rgba(229,180,63,.22), transparent 35%), linear-gradient(180deg, transparent, rgba(0,0,0,.9)); pointer-events:none; }
.game-card > * { position:relative; z-index:1; }
.game-art { position:absolute; inset:20px 20px auto auto; font-size:7rem; opacity:.72; filter:drop-shadow(0 20px 35px rgba(0,0,0,.45)); }
.game-meta { display:flex; gap:8px; margin-bottom:12px; }
.badge { display:inline-flex; padding:5px 9px; border-radius:999px; background:rgba(255,255,255,.08); color:#d8dde4; font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.badge.gold { background:rgba(229,180,63,.14); color:var(--gold-2); }
.game-form { margin-top:18px; display:grid; gap:12px; }
.game-form .row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.game-result { display:none; margin-top:14px; padding:12px 14px; border-radius:12px; background:#090c10; border:1px solid var(--line); }
.game-result.show { display:block; }
.balance-pill { display:inline-flex; align-items:center; gap:9px; background:rgba(229,180,63,.1); color:var(--gold-2); border:1px solid rgba(229,180,63,.25); border-radius:999px; padding:9px 13px; font-weight:900; }
.odds-table { display:grid; gap:10px; }
.match-row { display:grid; grid-template-columns:1.5fr repeat(3,.65fr); gap:10px; align-items:center; padding:16px; border:1px solid var(--line); border-radius:15px; background:var(--panel); }
.match-title strong { display:block; }
.match-title span { color:var(--muted); font-size:.8rem; }
.odd-btn { border:1px solid var(--line); background:#0b0e13; color:#fff; border-radius:11px; padding:11px 8px; }
.odd-btn:hover { border-color:var(--gold); color:var(--gold-2); }

/* Forms */
.form-card { max-width:720px; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.field { display:grid; gap:7px; }
.field.full { grid-column:1/-1; }
label { font-weight:750; color:#e8ebef; }
input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="tel"], input[type="url"], select, textarea {
  width:100%; color:#fff; background:#090c11; border:1px solid rgba(255,255,255,.12); border-radius:12px; min-height:48px; padding:10px 13px; outline:none;
}
textarea { min-height:140px; resize:vertical; }
input:focus, select:focus, textarea:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(229,180,63,.1); }
.help { color:var(--muted); font-size:.82rem; }
.auth-wrap { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.auth-card { padding:28px; }

/* Wallet */
.wallet-layout { display:grid; grid-template-columns:.75fr 1.25fr; gap:24px; }
.wallet-balance { background:linear-gradient(145deg, rgba(229,180,63,.18), rgba(16,20,27,.98)); border-color:rgba(229,180,63,.3); }
.wallet-balance strong { display:block; font-size:3.1rem; line-height:1.1; margin:12px 0; }
.wallet-actions { display:flex; flex-wrap:wrap; gap:10px; }
.history-list { display:grid; gap:8px; }
.history-item { display:flex; justify-content:space-between; gap:15px; padding:12px 14px; border-radius:12px; border:1px solid var(--line); background:#0a0d12; }
.history-item span { color:var(--muted); font-size:.85rem; }
.positive { color:var(--success); }
.negative { color:var(--danger); }
.flyx-logo { max-width:430px; max-height:110px; object-fit:contain; }

/* FAQ */
.faq { display:grid; gap:10px; }
.faq details { border:1px solid var(--line); border-radius:14px; background:var(--panel); padding:15px 18px; }
.faq summary { font-weight:850; cursor:pointer; }
.faq p { color:var(--muted); }

/* Footer */
.site-footer { border-top:1px solid var(--line); background:#040609; margin-top:70px; }
.footer-main { display:grid; grid-template-columns:1.3fr repeat(3,1fr); gap:35px; padding:58px 0 36px; }
.footer-brand img { width:95px; }
.footer-brand p { color:var(--muted); max-width:390px; }
.footer-col h4 { margin:0 0 14px; }
.footer-col ul { list-style:none; padding:0; margin:0; display:grid; gap:8px; }
.footer-col a { color:#b8c0ca; }
.footer-col a:hover { color:var(--gold); }
.footer-bottom { border-top:1px solid var(--line); padding:22px 0; color:#8f98a5; font-size:.82rem; display:flex; justify-content:space-between; gap:20px; }

/* Modals */
.modal-backdrop { position:fixed; inset:0; z-index:10000; display:none; align-items:center; justify-content:center; padding:20px; background:rgba(0,0,0,.84); backdrop-filter:blur(12px); }
.modal-backdrop.show { display:flex; }
.modal { width:min(520px,100%); border:1px solid rgba(229,180,63,.3); border-radius:24px; background:#0c1016; padding:30px; box-shadow:var(--shadow); text-align:center; }
.modal img { width:120px; }
.modal h2 { font-size:2rem; margin:12px 0; }
.modal p { color:var(--muted); }
.cookie-bar { position:fixed; left:16px; right:16px; bottom:16px; z-index:9999; display:none; align-items:center; justify-content:space-between; gap:20px; max-width:950px; margin:auto; padding:16px 18px; border:1px solid var(--line); border-radius:15px; background:rgba(13,17,23,.96); box-shadow:var(--shadow); }
.cookie-bar.show { display:flex; }
.cookie-bar p { margin:0; color:#c5ccd4; font-size:.88rem; }

/* WordPress */
.post-list { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.post-card h2 { font-size:1.25rem; }
.post-meta { color:var(--muted); font-size:.82rem; }
.pagination { margin-top:28px; }
.admin-bar .site-header { top:32px; }

@media (max-width: 980px) {
  .primary-nav { position:fixed; top:82px; left:16px; right:16px; display:none; background:#0b0e13; border:1px solid var(--line); border-radius:16px; padding:16px; box-shadow:var(--shadow); }
  .primary-nav.open { display:block; }
  .primary-nav ul { flex-direction:column; align-items:stretch; gap:0; }
  .primary-nav a { display:block; padding:12px 6px; }
  .menu-toggle { display:inline-flex; }
  .header-actions .btn-outline { display:none; }
  .hero-grid, .wallet-layout { grid-template-columns:1fr; }
  .hero { padding-top:58px; }
  .hero-visual { max-width:620px; margin:auto; }
  .grid-4 { grid-template-columns:repeat(2,1fr); }
  .game-grid, .grid-3, .post-list { grid-template-columns:repeat(2,1fr); }
  .stats { grid-template-columns:repeat(2,1fr); }
  .footer-main { grid-template-columns:1.3fr 1fr 1fr; }
  .footer-col:last-child { grid-column:2/-1; }
}
@media (max-width: 680px) {
  .brand-copy { display:none; }
  .header-actions .btn { padding:0 13px; }
  .hero h1 { font-size:3.05rem; }
  .float-chip { display:none; }
  .section { padding:56px 0; }
  .section-heading, .banner, .footer-bottom { align-items:flex-start; flex-direction:column; }
  .grid-2, .grid-3, .grid-4, .game-grid, .form-grid, .auth-wrap, .post-list { grid-template-columns:1fr; }
  .field.full { grid-column:auto; }
  .stats { grid-template-columns:1fr 1fr; }
  .match-row { grid-template-columns:1fr; }
  .footer-main { grid-template-columns:1fr 1fr; }
  .footer-brand { grid-column:1/-1; }
  .footer-col:last-child { grid-column:auto; }
  .cookie-bar { flex-direction:column; align-items:flex-start; }
}
