:root {
  --primary: #0a3358;
  --primary-light: #2c5f8a;
  --primary-bg: #f0f5fa;
  --accent: #4a7ba7;
  --text: #2b2b2b;
  --text-soft: #555;
  --text-muted: #999;
  --border: #dce4ed;
  --border-soft: #e5edf5;
  --bg: #eef1f5;
  --surface: #ffffff;
  --success: #27a860;
  --danger: #c0392b;
  --warning: #856404;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.06);
  --shadow-md: 0 4px 12px rgba(0,0,0,0.08);
  --shadow-lg: 0 12px 40px rgba(0,0,0,0.12);
  --transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

body[data-color="blue"]     { --primary: #0a3358; --primary-light: #2c5f8a; --primary-bg: #f0f5fa; --accent: #4a7ba7; }
body[data-color="green"]    { --primary: #0d5c3f; --primary-light: #1a7a55; --primary-bg: #eaf5ef; --accent: #3d9a70; }
body[data-color="bordeaux"] { --primary: #6b1a2a; --primary-light: #932739; --primary-bg: #f9eef1; --accent: #b8455a; }
body[data-color="anthracite"]{ --primary: #1f1f1f; --primary-light: #4a4a4a; --primary-bg: #f2f2f2; --accent: #6a6a6a; }
body[data-color="black"]    { --primary: #000;    --primary-light: #333;    --primary-bg: #f0f0f0; --accent: #555; }
body[data-color="violet"]   { --primary: #4a148c; --primary-light: #6a1b9a; --primary-bg: #f3e5f5; --accent: #8e24aa; }
body[data-color="teal"]     { --primary: #00695c; --primary-light: #00897b; --primary-bg: #e0f2f1; --accent: #26a69a; }
body[data-color="indigo"]   { --primary: #283593; --primary-light: #3949ab; --primary-bg: #e8eaf6; --accent: #5c6bc0; }
body[data-color="brown"]    { --primary: #4e342e; --primary-light: #6d4c41; --primary-bg: #efebe9; --accent: #8d6e63; }
body[data-color="rose"]     { --primary: #880e4f; --primary-light: #ad1457; --primary-bg: #fce4ec; --accent: #d81b60; }

@page { size: A4; margin: 9mm 11mm; }
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  font-family: -apple-system, "Segoe UI", Calibri, Arial, sans-serif;
  font-size: 9pt; line-height: 1.24; color: var(--text);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
body[dir="rtl"] { direction: rtl; text-align: right; }
button, input, select, textarea { font-family: inherit; font-size: inherit; }
button { cursor: pointer; }