/* ── CSS CUSTOM PROPERTIES ── */

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --font-display: 'Cinzel', serif;
  --font-body:    'Crimson Pro', serif;
  --font-ui:      'DM Sans', sans-serif;
  --radius:       10px;
  --radius-md:    12px;
  --radius-lg:    16px;
  --transition:   0.25s cubic-bezier(0.4,0,0.2,1);
  --sidebar-w:    240px;
}

[data-theme="light"] {
  --bg:               #F5F2ED;
  --bg2:              #EDEAE3;
  --bg3:              #E2DDD5;
  --surface:          #FDFCFA;
  --border:           rgba(100,90,75,0.15);
  --border2:          rgba(100,90,75,0.28);
  --text:             #1C1814;
  --text2:            #5C5448;
  --text3:            #9C9080;
  --accent:           #8B4513;
  --accent2:          #C4782A;
  --accent-bg:        rgba(139,69,19,0.08);
  --accent-glow:      rgba(139,69,19,0.14);
  --gold:             #B8860B;
  --tag-bg:           rgba(139,69,19,0.1);
  --tag-text:         #7A3A10;
  --hero-glow:        rgba(139,69,19,0.12);
  --surface2:         #F7F4EF;
  --surface3:         #EDEAE3;
  --text1:            #1C1814;
  --card-hover:       rgba(139,69,19,0.06);
  --modal-bg:         rgba(28,24,20,0.45);
  --rune:             rgba(139,69,19,0.06);
  --sidebar:          #1C1814;
  --sidebar-text:     rgba(255,255,255,0.55);
  --sidebar-text-active: #fff;
  --sidebar-hover:    rgba(255,255,255,0.07);
  --sidebar-active:   rgba(196,120,42,0.22);
  --sidebar-accent:   #C4782A;
  --danger:           #C43232;
  --danger-bg:        rgba(196,50,50,0.08);
  --success:          #2D8B5D;
  --success-bg:       rgba(45,139,93,0.1);
  --gm-bg:            rgba(139,69,19,0.1);
  --gm-text:          #7A3A10;
  --player-bg:        rgba(45,74,139,0.1);
  --player-text:      #2D4A8B;
  --system-bg:        rgba(100,90,75,0.08);
  --system-text:      #7C7060;
}

[data-theme="dark"] {
  --bg:               #0E0C0A;
  --bg2:              #171310;
  --bg3:              #1F1A16;
  --surface:          #13100D;
  --border:           rgba(200,170,120,0.1);
  --border2:          rgba(200,170,120,0.22);
  --text:             #E8E0D0;
  --text2:            #A89880;
  --text3:            #6A5E50;
  --accent:           #C4782A;
  --accent2:          #E8A050;
  --accent-bg:        rgba(196,120,42,0.12);
  --accent-glow:      rgba(196,120,42,0.2);
  --gold:             #D4A017;
  --tag-bg:           rgba(196,120,42,0.14);
  --tag-text:         #E8A050;
  --hero-glow:        rgba(196,120,42,0.18);
  --surface2:         #1A1612;
  --surface3:         #221D18;
  --text1:            #E8E0D0;
  --card-hover:       rgba(196,120,42,0.07);
  --modal-bg:         rgba(0,0,0,0.65);
  --rune:             rgba(196,120,42,0.05);
  --sidebar:          #0A0806;
  --sidebar-text:     rgba(255,255,255,0.45);
  --sidebar-text-active: #E8E0D0;
  --sidebar-hover:    rgba(255,255,255,0.05);
  --sidebar-active:   rgba(196,120,42,0.18);
  --sidebar-accent:   #C4782A;
  --danger:           #E05050;
  --danger-bg:        rgba(224,80,80,0.1);
  --success:          #5DBB8B;
  --success-bg:       rgba(93,187,139,0.1);
  --gm-bg:            rgba(196,120,42,0.12);
  --gm-text:          #E8A050;
  --player-bg:        rgba(74,111,187,0.12);
  --player-text:      #7A9FDD;
  --system-bg:        rgba(100,90,75,0.1);
  --system-text:      #8A7A68;
}

[data-theme="pink"] {
  --bg:               #FDF6F9;
  --bg2:              #F8EDF3;
  --bg3:              #F0E0EA;
  --surface:          #FFFAFC;
  --border:           rgba(180,100,140,0.13);
  --border2:          rgba(180,100,140,0.26);
  --text:             #2A1520;
  --text2:            #7A4060;
  --text3:            #B090A8;
  --accent:           #C45080;
  --accent2:          #E070A0;
  --accent-bg:        rgba(196,80,128,0.08);
  --accent-glow:      rgba(196,80,128,0.16);
  --gold:             #E8709A;
  --tag-bg:           rgba(196,80,128,0.1);
  --tag-text:         #A03060;
  --hero-glow:        rgba(196,80,128,0.14);
  --surface2:         #FAF0F5;
  --surface3:         #F5E8F0;
  --text1:            #2A1520;
  --card-hover:       rgba(196,80,128,0.06);
  --modal-bg:         rgba(42,21,32,0.45);
  --rune:             rgba(196,80,128,0.05);
  --sidebar:          #2A1520;
  --sidebar-text:     rgba(255,255,255,0.5);
  --sidebar-text-active: #fff;
  --sidebar-hover:    rgba(255,255,255,0.07);
  --sidebar-active:   rgba(228,100,160,0.2);
  --sidebar-accent:   #E47AAA;
  --danger:           #C43232;
  --danger-bg:        rgba(196,50,50,0.08);
  --success:          #2D8B5D;
  --success-bg:       rgba(45,139,93,0.1);
  --gm-bg:            rgba(196,80,128,0.1);
  --gm-text:          #A03060;
  --player-bg:        rgba(80,100,196,0.1);
  --player-text:      #5064C4;
  --system-bg:        rgba(180,100,140,0.08);
  --system-text:      #A080A0;
}

[data-theme="blood"] {
  --bg:               #080808;
  --bg2:              #100808;
  --bg3:              #180A0A;
  --surface:          #0A0505;
  --border:           rgba(200,20,20,0.18);
  --border2:          rgba(200,20,20,0.35);
  --text:             #F2EEEE;
  --text2:            #C0A8A8;
  --text3:            #5C4040;
  --accent:           #CC1111;
  --accent2:          #FF3333;
  --accent-bg:        rgba(204,17,17,0.13);
  --accent-glow:      rgba(204,17,17,0.25);
  --gold:             #CC3333;
  --tag-bg:           rgba(204,17,17,0.15);
  --tag-text:         #FF5555;
  --hero-glow:        rgba(204,17,17,0.2);
  --surface2:         #110808;
  --surface3:         #1C0C0C;
  --text1:            #F2EEEE;
  --card-hover:       rgba(204,17,17,0.08);
  --modal-bg:         rgba(0,0,0,0.78);
  --rune:             rgba(204,17,17,0.05);
  --sidebar:          #040101;
  --sidebar-text:     rgba(255,210,210,0.38);
  --sidebar-text-active: #F2EEEE;
  --sidebar-hover:    rgba(255,255,255,0.04);
  --sidebar-active:   rgba(204,17,17,0.22);
  --sidebar-accent:   #CC1111;
  --danger:           #FF4444;
  --danger-bg:        rgba(255,68,68,0.1);
  --success:          #4CAF50;
  --success-bg:       rgba(76,175,80,0.1);
  --gm-bg:            rgba(204,17,17,0.13);
  --gm-text:          #FF5555;
  --player-bg:        rgba(60,90,180,0.12);
  --player-text:      #6A90DD;
  --system-bg:        rgba(100,50,50,0.1);
  --system-text:      #7A5050;
}
