/* ══════════════════════════════════════════════════
   Magicadia — Theme
   Core colors, typography, resets, scrollbar
   ══════════════════════════════════════════════════ */

:root {
    /* Primary palette */
    --gold:          #d4af37;
    --gold-hover:    #f0ba48;
    --bg-dark:       #0a1628;
    --bg-panel:      #0c203a;
    --bg-input:      #001735;
    --bg-nav:        #001735;
    --border:        #1a2a45;
    --border-gold:   #d4af37;

    /* Text */
    --text:          #fff;
    --text-muted:    #888;
    --text-dim:      #555;
    --text-faint:    #444;
    --text-light:    #ccc;
    --text-link:     #5b9bd5;

    /* Semantic / badge colors */
    --color-money-bg:    #2a2010;
    --color-money-border:#8a6a10;
    --color-money:       #d4af37;

    --color-item-bg:     #102030;
    --color-item-border: #1a5c8a;
    --color-item:        #5bb8f5;

    --color-skill-bg:    #102020;
    --color-skill-border:#1a6a4a;
    --color-skill:       #4fd4a0;

    --color-spell-bg:    #201030;
    --color-spell-border:#6a1a8a;
    --color-spell:       #c06af0;

    --color-stat-bg:     #201010;
    --color-stat-border: #8a2a1a;
    --color-stat:        #f08060;

    --color-danger:      #dc3545;
    --color-success:     #4fd4a0;

    /* Group distinction */
    --group-bg:          #141e2e;
    --group-border:      #a0b0c0;
    --group-text:        #c0c8d0;
}

/* ── Reset ── */
* { margin: 0; padding: 0; box-sizing: border-box; }

/* ── Body ── */
body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    background-color: var(--bg-dark);
    color: var(--text);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    line-height: 1.5;
}

/* Lock body scroll on editor pages that use the sidebar+editor layout */
body.editor-page {
    height: 100vh;
    overflow: hidden;
}

/* ── Scrollbar ── */
::-webkit-scrollbar       { width: 8px; }
::-webkit-scrollbar-track { background: var(--bg-panel); }
::-webkit-scrollbar-thumb { background: var(--gold); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--gold-hover); }

/* ── Container (sidebar + main) ── */
.container {
    display: flex;
    flex: 1;
    height: calc(100vh - 48px);
    overflow: hidden;
}

/* ── Utility classes ── */
.text-gold   { color: var(--gold); }
.text-muted  { color: var(--text-muted); }
.text-dim    { color: var(--text-dim); }
.text-danger { color: var(--color-danger); }
.text-success{ color: var(--color-success); }
.hidden      { display: none !important; }
