/* ═══════════════════════════════════════════════════════════════
   SHIDODUTCH TOKEN CREATOR — THEME ENGINE v1
   · DEFAULT    = PRO: professionele raid-look (raid.shidodutch.com)
   · body.light = PRO-LIGHT
   · body.rld   = RED LIGHT DISTRICT: de originele neon-creator-look
   Alles onder body:not(.rld) — originele css én app.js onaangeroerd.
   Deelt dezelfde localStorage-keys als DEX + portfolio (dexTheme/dexRLD):
   één keer schakelen = hele site volgt.
   ═══════════════════════════════════════════════════════════════ */

/* ── 1. PRO-PALETTE (raid-waarden) ────────────────────────────── */
body:not(.rld) {
    --bg: #05080b;
    --bg2: #0a0f14;
    --card: #0a0f14;
    --card2: #0d141b;
    --card-solid: #0d141b;
    --neu-bg: #0d141b;
    --blue: #39a0ff;
    --nl-blue: #39a0ff;
    --green: #3ddc84;
    --red: #ff2d4d;
    --purple: #b48ce8;
    --gold: #e8b054;
    --orange: #e8b054;
    --text: #dbe7ee;
    --text2: #9fb1bd;
    --text3: #6f8595;
    --border: #16222c;
    --border-hi: #22384a;
    --line-soft: rgba(255, 45, 77, 0.26);
    --line-hard: rgba(255, 45, 77, 0.42);
    --neon-red: #ff2d4d;
    --neon-pink: #ff2d95;
    --neon-green: #3ddc84;
    --shadow-lg: 4px 4px 0 rgba(0, 0, 0, 0.55), 0 0 26px rgba(255, 45, 77, 0.06);
    --shadow-sm: 2px 2px 0 rgba(0, 0, 0, 0.5);
    --shadow-inset: inset 2px 2px 0 rgba(0, 0, 0, 0.45);
    --ring: rgba(255, 45, 77, 0.16);
    --accent-gradient: linear-gradient(135deg, #ff2d4d 0%, #a10f2a 100%);
    --radius: 3px;
    --transition: 0.15s ease;
    background:
        repeating-linear-gradient(0deg, rgba(151, 167, 182, 0.022) 0 1px, transparent 1px 32px),
        repeating-linear-gradient(90deg, rgba(151, 167, 182, 0.022) 0 1px, transparent 1px 32px),
        var(--bg) !important;
    color: var(--text) !important;
}

body:not(.rld) ::selection { background: rgba(255, 45, 77, 0.35); color: #fff; }
body:not(.rld) ::-webkit-scrollbar { width: 9px; height: 9px; }
body:not(.rld) ::-webkit-scrollbar-track { background: var(--bg); }
body:not(.rld) ::-webkit-scrollbar-thumb { background: #22384a; border-radius: 2px; }
body:not(.rld) ::-webkit-scrollbar-thumb:hover { background: rgba(255, 45, 77, 0.5); }

/* achtergrond-orbs: subtiel en koel */
body:not(.rld) .orb,
body:not(.rld) .orb1,
body:not(.rld) .orb2 { filter: hue-rotate(160deg) saturate(0.5) !important; opacity: 0.05 !important; }

/* ── 2. CARDS: scherp + comic schaduw ─────────────────────────── */
body:not(.rld) .glass,
body:not(.rld) .card,
body:not(.rld) .box,
body:not(.rld) .panel,
body:not(.rld) .form-card,
body:not(.rld) .creator-card,
body:not(.rld) .preview-card,
body:not(.rld) .result-card,
body:not(.rld) .wallet-bar,
body:not(.rld) .lp-card {
    border-radius: 3px !important;
    border: 1px solid var(--border) !important;
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.55) !important;
    backdrop-filter: blur(5px) !important;
    -webkit-backdrop-filter: blur(5px) !important;
}
/* glow-lijnen / sheen-overlays op cards: uit in pro */
body:not(.rld) .glass::after,
body:not(.rld) .result-card::after,
body:not(.rld) .glass::before,
body:not(.rld) .card::before,
body:not(.rld) .box::before,
body:not(.rld) .panel::before,
body:not(.rld) .form-card::before,
body:not(.rld) .creator-card::before,
body:not(.rld) .preview-card::before { display: none !important; }

/* ── 3. NEON-SIGN: strak in PRO (zelfde behandeling als DEX/portfolio) ── */
body:not(.rld) .logo-wrap {
    animation: none !important;
    background: transparent !important;
    border: 1px solid rgba(255, 45, 77, 0.32) !important;
    border-radius: 3px !important;
    box-shadow: 0 0 22px rgba(255, 45, 77, 0.10) !important;
    padding: 12px 22px !important;
}
/* dubbelgloed-kader + knipperende hoeklampjes: uit in pro */
body:not(.rld) .logo-wrap::before,
body:not(.rld) .logo-wrap::after { display: none !important; }
/* logo-plaatje: strak randje i.p.v. neon-gloed */
body:not(.rld) .logo-img {
    border: 1px solid var(--border-hi) !important;
    border-radius: 3px !important;
    box-shadow: none !important;
}
/* subtitle: geen neon-gloed */
body:not(.rld) .subtitle {
    color: var(--text2) !important;
    text-shadow: none !important;
}

/* ── 4. TITELS: gradient-tekst → vaste pro-kleur ─────────────── */
body:not(.rld) .logo,
body:not(.rld) h1 {
    background: none !important;
    -webkit-background-clip: initial !important;
    -webkit-text-fill-color: var(--text) !important;
    color: var(--text) !important;
    animation: none !important;
}

/* ── 5. KNOPPEN: raid-stijl ───────────────────────────────────── */
body:not(.rld) .btn,
body:not(.rld) .btn-p,
body:not(.rld) .btn-o,
body:not(.rld) .btn-grn,
body:not(.rld) .theme-btn,
body:not(.rld) .mbtn,
body:not(.rld) button {
    border-radius: 2px !important;
    font-family: 'Orbitron', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.5) !important;
}
body:not(.rld) .btn:hover,
body:not(.rld) .btn-p:hover,
body:not(.rld) .theme-btn:hover,
body:not(.rld) .mbtn:hover,
body:not(.rld) button:hover {
    transform: translate(-1px, -1px) !important;
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.55), 0 0 14px rgba(255, 45, 77, 0.2) !important;
}

/* ── 6. TYPE: Orbitron display, uppercase labels ─────────────── */
body:not(.rld) .logo,
body:not(.rld) .subtitle,
body:not(.rld) .tag,
body:not(.rld) .nav a,
body:not(.rld) .section-title,
body:not(.rld) th,
body:not(.rld) label {
    font-family: 'Orbitron', sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
}
body:not(.rld) .section-title {
    color: var(--text2) !important;
    background: var(--card2) !important;
    border: 1px solid var(--border) !important;
    border-radius: 2px !important;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.5) !important;
    text-shadow: none !important;
}
body:not(.rld) .tag {
    border: 1px solid rgba(255, 45, 77, 0.42) !important;
    border-radius: 2px !important;
    background: rgba(255, 45, 77, 0.06) !important;
}

/* ── 7. TABELLEN / INPUTS / STATUS ────────────────────────────── */
body:not(.rld) th {
    background: var(--card2) !important;
    border-bottom: 1px solid var(--border-hi) !important;
    color: var(--text2) !important;
    font-size: 0.55rem !important;
    text-shadow: none !important;
}
body:not(.rld) td { border-bottom: 1px solid var(--border) !important; }
body:not(.rld) tbody tr:hover { background: rgba(255, 45, 77, 0.04) !important; }

body:not(.rld) input,
body:not(.rld) select,
body:not(.rld) textarea {
    border-radius: 2px !important;
    border: 1px solid var(--border) !important;
    background: #0c1117 !important;
    color: var(--text) !important;
}
body:not(.rld) input:focus,
body:not(.rld) select:focus {
    outline: none !important;
    border-color: var(--red) !important;
    box-shadow: 0 0 12px rgba(255, 45, 77, 0.22) !important;
}

/* status-meldingen (success/error) en info-boxen: strakke hoeken */
body:not(.rld) .status,
body:not(.rld) .status-success,
body:not(.rld) .status-error,
body:not(.rld) .info-box { border-radius: 2px !important; }

/* app.js-componenten: rustig */
body:not(.rld) .empty-state { color: var(--text3) !important; }
body:not(.rld) .token-link { color: var(--blue) !important; }

/* ── 8. RLD-KNOP: actieve stand glowt ─────────────────────────── */
body.rld .rld-btn {
    border-color: rgba(255, 26, 58, 0.6) !important;
    color: #ff1a3a !important;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.5), 0 0 18px rgba(255, 26, 58, 0.35) !important;
}
body:not(.rld) .rld-btn.on {
    border-color: rgba(255, 45, 77, 0.58) !important;
    color: #ff2d4d !important;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.5), 0 0 18px rgba(255, 45, 77, 0.3) !important;
}

/* ═══ 9. PRO-LIGHT ═════════════════════════════════════════════ */
body:not(.rld).light {
    --bg: #eef1f5;
    --bg2: #ffffff;
    --card: #ffffff;
    --card2: #f4f7fa;
    --card-solid: #ffffff;
    --neu-bg: #ffffff;
    --blue: #1f7ae0;
    --nl-blue: #1f7ae0;
    --green: #16a34a;
    --red: #e11d3f;
    --purple: #8b5cf6;
    --gold: #b07818;
    --orange: #b07818;
    --text: #101820;
    --text2: #3f4b57;
    --text3: #7c8a96;
    --border: #d7dee6;
    --border-hi: #b9c6d2;
    --line-soft: rgba(225, 29, 63, 0.25);
    --line-hard: rgba(225, 29, 63, 0.45);
    --neon-red: #e11d3f;
    --neon-pink: #e11d3f;
    --neon-green: #16a34a;
    --shadow-lg: 3px 3px 0 rgba(16, 24, 32, 0.10);
    --shadow-sm: 2px 2px 0 rgba(16, 24, 32, 0.08);
    --ring: rgba(225, 29, 63, 0.14);
    background:
        repeating-linear-gradient(0deg, rgba(16, 24, 32, 0.018) 0 1px, transparent 1px 32px),
        repeating-linear-gradient(90deg, rgba(16, 24, 32, 0.018) 0 1px, transparent 1px 32px),
        var(--bg) !important;
}
body:not(.rld).light ::-webkit-scrollbar-track { background: #e6ebf0; }
body:not(.rld).light ::-webkit-scrollbar-thumb { background: #b9c6d2; }

body:not(.rld).light .glass,
body:not(.rld).light .card,
body:not(.rld).light .box,
body:not(.rld).light .panel,
body:not(.rld).light .form-card,
body:not(.rld).light .creator-card,
body:not(.rld).light .preview-card,
body:not(.rld).light .result-card,
body:not(.rld).light .wallet-bar,
body:not(.rld).light .lp-card {
    background: #ffffff !important;
    border-color: #d7dee6 !important;
    box-shadow: 2px 2px 0 rgba(16, 24, 32, 0.1) !important;
}
body:not(.rld).light .section-title { background: #f4f7fa !important; border-color: #d7dee6 !important; box-shadow: 2px 2px 0 rgba(16, 24, 32, 0.08) !important; }
body:not(.rld).light th { background: #f4f7fa !important; color: #3f4b57 !important; }
body:not(.rld).light input,
body:not(.rld).light select,
body:not(.rld).light textarea { background: #ffffff !important; }
body:not(.rld).light .logo,
body:not(.rld).light h1 { -webkit-text-fill-color: #101820 !important; color: #101820 !important; }
body:not(.rld).light .logo-wrap {
    border-color: rgba(225, 29, 63, 0.22) !important;
    box-shadow: none !important;
    background: transparent !important;
}
body:not(.rld).light .logo-img { border-color: #b9c6d2 !important; }
body:not(.rld).light .subtitle { color: #3f4b57 !important; }
body:not(.rld).light .orb,
body:not(.rld).light .orb1,
body:not(.rld).light .orb2 { opacity: 0.03 !important; }


/* ═══ SD-NAV: site-brede navigatie — één uniforme stijl, net als de overige knoppen ═══ */
.sd-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 14px 0; }
.sd-nav-btn {
    display: inline-block; padding: 9px 14px;
    font-family: 'Orbitron', monospace !important;
    font-weight: 700 !important;
    font-size: 0.55rem !important;
    letter-spacing: 1.2px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    border-radius: 2px !important; cursor: pointer;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.14)) !important;
    background: var(--panel, var(--card2, rgba(0, 0, 0, 0.35))) !important;
    color: var(--text2, #9fb1bd) !important;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.5) !important;
    transition: all 0.15s;
}
.sd-nav-btn:hover {
    transform: translate(-1px, -1px) !important;
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.55) !important;
    color: var(--text, #ffffff) !important;
    border-color: var(--border-hi, rgba(255, 255, 255, 0.3)) !important;
}
body:not(.rld).light .sd-nav-btn {
    background: #ffffff !important;
    border-color: #d7dee6 !important;
    box-shadow: 2px 2px 0 rgba(16, 24, 32, 0.1) !important;
}
body:not(.rld).light .sd-nav-btn:hover { box-shadow: 3px 3px 0 rgba(16, 24, 32, 0.14) !important; }
