/* Cognitive Violet System — shared layer for every WE-Core page
   Themes: dark (default values below) and light. data-theme is set by theme-init.js;
   light is the default; dark only when chosen. */
:root{
  --cv-canvas:#0D0A1C; --cv-deep:#120E28; --cv-card:#1D1643; --cv-raised:#28205C; --cv-raised2:#33297A;
  --cv-primary:#6F42C1; --cv-secondary:#9D72FF; --cv-tertiary:#D199FF; --cv-electric:#B366FF;
  --cv-text:#F8F6FF; --cv-white-ink:#FFFFFF; --cv-ink-soft:#E6DFF9; --cv-ink-soft2:#CBC3D6; --cv-muted:#9E97C2; --cv-accent-ink:#CEBDFF;
  --cv-border:rgba(157,114,255,.18); --cv-glow:rgba(111,66,193,.35);
  --cv-wash:255,255,255; --cv-wash-ink:255,255,255; --cv-card-rgb:29,22,67; --cv-accent-rgb:206,189,255;
  --cv-pill-bg:rgba(29,22,67,.78); --cv-pill-bg-hover:rgba(40,32,92,.92); --cv-pill-border:rgba(157,114,255,.3);
  --cv-pill-shadow:0 12px 32px -8px rgba(13,10,28,.8),0 0 20px rgba(111,66,193,.25);
  --cv-pill-shadow-hover:0 12px 32px -8px rgba(13,10,28,.8),0 0 16px rgba(157,114,255,.45);
  --cv-scroll-thumb:#3a2d85; --cv-scroll-thumb-fg:#4a3a9a; --cv-select:rgba(157,114,255,.45); --cv-select-ink:#fff;
  --cv-font-head:'Sora','Cairo','Tajawal',sans-serif;
  --cv-font-body:'Plus Jakarta Sans','Cairo','Tajawal',sans-serif;
  --cv-font-label:'Space Grotesk','Cairo','Tajawal',sans-serif;
  color-scheme:dark;
  --cv-t-7b9af4:#7b9af4;--cv-t-7b9bf4:#7b9bf4;--cv-t-7b9ff4:#7b9ff4;--cv-t-7ba1f4:#7ba1f4;--cv-t-7ba9f4:#7ba9f4;--cv-t-7badf4:#7badf4;--cv-t-7bb4f4:#7bb4f4;--cv-t-7bc8f4:#7bc8f4;--cv-t-7bcaf4:#7bcaf4;--cv-t-7bcbf4:#7bcbf4;--cv-t-7beff4:#7beff4;--cv-t-7bf0f4:#7bf0f4;--cv-t-7bf481:#7bf481;--cv-t-7bf4a7:#7bf4a7;--cv-t-7bf4a8:#7bf4a8;--cv-t-7bf4a9:#7bf4a9;--cv-t-7bf4ab:#7bf4ab;--cv-t-7bf4ad:#7bf4ad;--cv-t-7bf4ae:#7bf4ae;--cv-t-7bf4c0:#7bf4c0;--cv-t-7bf4c4:#7bf4c4;--cv-t-7bf4c7:#7bf4c7;--cv-t-7bf4c8:#7bf4c8;--cv-t-7bf4cf:#7bf4cf;--cv-t-7bf4d5:#7bf4d5;--cv-t-7bf4db:#7bf4db;--cv-t-7bf4e6:#7bf4e6;--cv-t-7bf4e7:#7bf4e7;--cv-t-7bf4e8:#7bf4e8;--cv-t-7bf4e9:#7bf4e9;--cv-t-7bf4ea:#7bf4ea;--cv-t-7bf4eb:#7bf4eb;--cv-t-7bf4ee:#7bf4ee;--cv-t-7bf4ef:#7bf4ef;--cv-t-7ce0a6:#7ce0a6;--cv-t-7db4f7:#7db4f7;--cv-t-9ca3af:#9ca3af;--cv-t-9fc9c6:#9fc9c6;--cv-t-a5f3fc:#a5f3fc;--cv-t-bee3df:#bee3df;--cv-t-bfe0dd:#bfe0dd;--cv-t-c7b7e5:#c7b7e5;--cv-t-c9c1da:#c9c1da;--cv-t-cccccc:#cccccc;--cv-t-cdb8ec:#cdb8ec;--cv-t-d6eae7:#d6eae7;--cv-t-d8b4fe:#d8b4fe;--cv-t-d8c6f5:#d8c6f5;--cv-t-d8d2e4:#d8d2e4;--cv-t-d9cbee:#d9cbee;--cv-t-dccbee:#dccbee;--cv-t-dcd4ec:#dcd4ec;--cv-t-e6dcf5:#e6dcf5;--cv-t-e7f2f1:#e7f2f1;--cv-t-e8ddfb:#e8ddfb;--cv-t-e8def5:#e8def5;--cv-t-e9d5ff:#e9d5ff;--cv-t-e9ddff:#e9ddff;--cv-t-eae1f7:#eae1f7;--cv-t-ede9fe:#ede9fe;--cv-t-eee6fa:#eee6fa;--cv-t-efe6fa:#efe6fa;--cv-t-efeaf6:#efeaf6;--cv-t-efeded:#efeded;--cv-t-f0a5b0:#f0a5b0;--cv-t-f0c0ff:#f0c0ff;--cv-t-f0ce68:#f0ce68;--cv-t-f2eaff:#f2eaff;--cv-t-f3c89a:#f3c89a;--cv-t-f3e6c8:#f3e6c8;--cv-t-f3f0e7:#f3f0e7;--cv-t-f47b8d:#f47b8d;--cv-t-f47b90:#f47b90;--cv-t-f47b99:#f47b99;--cv-t-f47b9c:#f47b9c;--cv-t-f47ba0:#f47ba0;--cv-t-f47bab:#f47bab;--cv-t-f47bbd:#f47bbd;--cv-t-f47bbe:#f47bbe;--cv-t-f47bc3:#f47bc3;--cv-t-f47bc7:#f47bc7;--cv-t-f47bce:#f47bce;--cv-t-f47bd5:#f47bd5;--cv-t-f4827b:#f4827b;--cv-t-f4847b:#f4847b;--cv-t-f4857b:#f4857b;--cv-t-f4987b:#f4987b;--cv-t-f4997b:#f4997b;--cv-t-f49a7b:#f49a7b;--cv-t-f49b7b:#f49b7b;--cv-t-f49e7b:#f49e7b;--cv-t-f4a67b:#f4a67b;--cv-t-f4a77b:#f4a77b;--cv-t-f4ad7b:#f4ad7b;--cv-t-f4ae7b:#f4ae7b;--cv-t-f4af7b:#f4af7b;--cv-t-f4b17b:#f4b17b;--cv-t-f4b47b:#f4b47b;--cv-t-f4b57b:#f4b57b;--cv-t-f4bb7b:#f4bb7b;--cv-t-f4bc7b:#f4bc7b;--cv-t-f4be7b:#f4be7b;--cv-t-f4bf7b:#f4bf7b;--cv-t-f4c17b:#f4c17b;--cv-t-f4c37b:#f4c37b;--cv-t-f4c57b:#f4c57b;--cv-t-f4c67b:#f4c67b;--cv-t-f4c87b:#f4c87b;--cv-t-f4c97b:#f4c97b;--cv-t-f4ca7b:#f4ca7b;--cv-t-f4cb7b:#f4cb7b;--cv-t-f4cd7b:#f4cd7b;--cv-t-f4ce7b:#f4ce7b;--cv-t-f4cf7b:#f4cf7b;--cv-t-f4d17b:#f4d17b;--cv-t-f4d27b:#f4d27b;--cv-t-f4d37b:#f4d37b;--cv-t-f4d77b:#f4d77b;--cv-t-f4da7b:#f4da7b;--cv-t-f4db7b:#f4db7b;--cv-t-f4ecff:#f4ecff;--cv-t-fbd5e9:#fbd5e9;--cv-t-fda4af:#fda4af;--cv-t-fdba74:#fdba74;--cv-t-fde68a:#fde68a;--cv-t-ff7a59:#ff7a59;--cv-t-ffb648:#ffb648;--cv-t-ffd54f:#ffd54f;--cv-t-fff8ea:#fff8ea;
  /* added: light-mode text fixes */
  --cv-t-7ba3f4:#7ba3f4;--cv-t-f4a97b:#f4a97b;--cv-t-7bf4d2:#7bf4d2;--cv-t-f47b7b:#f47b7b;--cv-t-e7ecf7:#e7ecf7;--cv-t-8d9ab8:#8d9ab8;--cv-t-7bbbf4:#7bbbf4;--cv-t-7b97f4:#7b97f4;--cv-t-7ba2f4:#7ba2f4;--cv-t-7bf4cc:#7bf4cc;--cv-t-f4c77b:#f4c77b;--cv-t-9b9bc0:#9b9bc0;--cv-t-f4a47b:#f4a47b;--cv-t-7baaf4:#7baaf4;--cv-t-c9aeea:#c9aeea;
  /* added: light-mode text fixes */
  --cv-t-827bf4:#827bf4;--cv-t-7b86f4:#7b86f4;--cv-t-7b7bf4:#7b7bf4;
}
/* light theme */
:root[data-theme="light"]{
  --cv-canvas:#F6F3FF; --cv-deep:#EFEAFB; --cv-card:#FFFFFF; --cv-raised:#E9E4F5; --cv-raised2:#D8CFEE; --cv-primary:#6F42C1; --cv-secondary:#6F42C1;
  --cv-tertiary:#5B32A8; --cv-electric:#4A278A; --cv-text:#1A1528; --cv-white-ink:#1A1528; --cv-ink-soft:#2E2840; --cv-ink-soft2:#58516D;
  --cv-muted:#6B6385; --cv-accent-ink:#6F42C1; --cv-border:#D8CFEE; --cv-glow:rgba(111,66,193,.18); --cv-wash:31,26,44; --cv-wash-ink:31,26,44;
  --cv-card-rgb:255,255,255; --cv-accent-rgb:111,66,193; --cv-pill-bg:rgba(255,255,255,.86); --cv-pill-bg-hover:rgba(255,255,255,.98);
  --cv-pill-border:#D8CFEE; --cv-pill-shadow:0 2px 4px -1px rgba(31,26,44,.03),0 4px 12px -2px rgba(111,66,193,.06);
  --cv-pill-shadow-hover:0 8px 24px -4px rgba(111,66,193,.10),0 4px 8px -2px rgba(31,26,44,.04); --cv-scroll-thumb:#D8CFEE;
  --cv-scroll-thumb-fg:#B9A9E0; --cv-select:rgba(111,66,193,.22); --cv-select-ink:#1A1528;
  --cv-font-head:'Space Grotesk','Cairo','Tajawal',sans-serif; --cv-font-label:'Space Grotesk','Cairo','Tajawal',sans-serif;
  --cv-surface-subtle:#E9E4F5; --cv-placeholder:#8A82A5; --cv-accent-hover:#5B32A8; --cv-accent-active:#4A278A; --cv-status-success:#059669;
  --cv-status-warning:#D97706; --cv-status-danger:#DC2626; --cv-shadow-1:0 2px 4px -1px rgba(31,26,44,.03),0 4px 12px -2px rgba(111,66,193,.06);
  --cv-shadow-2:0 8px 24px -4px rgba(111,66,193,.10),0 4px 8px -2px rgba(31,26,44,.04);
  --cv-shadow-3:0 20px 36px -6px rgba(111,66,193,.16),0 8px 16px -4px rgba(31,26,44,.06); --cv-ring:0 0 0 3px rgba(111,66,193,.18); --cv-r-sm:8px;
  --cv-r-md:16px; --cv-r-lg:24px;
  color-scheme:light;
  --cv-t-7b9af4:#3060ee;--cv-t-7b9bf4:#2b5eed;--cv-t-7b9ff4:#2661ed;--cv-t-7ba1f4:#2261ed;--cv-t-7ba9f4:#1364e6;--cv-t-7badf4:#1266dd;--cv-t-7bb4f4:#116bcf;--cv-t-7bc8f4:#0e71a9;--cv-t-7bcaf4:#0e73a9;--cv-t-7bcbf4:#0e71a5;--cv-t-7beff4:#0a767a;--cv-t-7bf0f4:#0a777a;--cv-t-7bf481:#0b7f10;--cv-t-7bf4a7:#0a7a33;--cv-t-7bf4a8:#0a7a34;--cv-t-7bf4a9:#0a7a35;--cv-t-7bf4ab:#0a7a37;--cv-t-7bf4ad:#0a7a38;--cv-t-7bf4ae:#0a7a39;--cv-t-7bf4c0:#0a7a4a;--cv-t-7bf4c4:#0a7a4e;--cv-t-7bf4c7:#0a7a51;--cv-t-7bf4c8:#0a7a51;--cv-t-7bf4cf:#0a7a58;--cv-t-7bf4d5:#0a7a5e;--cv-t-7bf4db:#0a7a63;--cv-t-7bf4e6:#0a7a6d;--cv-t-7bf4e7:#0a7a6e;--cv-t-7bf4e8:#0a7a6f;--cv-t-7bf4e9:#0a7a70;--cv-t-7bf4ea:#0a7a71;--cv-t-7bf4eb:#0a7a72;--cv-t-7bf4ee:#0a7a75;--cv-t-7bf4ef:#0a7a76;--cv-t-7ce0a6:#1e7d45;--cv-t-7db4f7:#0d69d8;--cv-t-9ca3af:#58516D;--cv-t-9fc9c6:#58516D;--cv-t-a5f3fc:#047784;--cv-t-bee3df:#32756e;--cv-t-bfe0dd:#397671;--cv-t-c7b7e5:#7b56c2;--cv-t-c9c1da:#58516D;--cv-t-cccccc:#2E2840;--cv-t-cdb8ec:#834fd0;--cv-t-d6eae7:#3c766d;--cv-t-d8b4fe:#912cfc;--cv-t-d8c6f5:#8248df;--cv-t-d8d2e4:#2E2840;--cv-t-d9cbee:#8254c7;--cv-t-dccbee:#8950c6;--cv-t-dcd4ec:#7a5cb7;--cv-t-e6dcf5:#8351cd;--cv-t-e7f2f1:#2E2840;--cv-t-e8ddfb:#8246e9;--cv-t-e8def5:#8651ca;--cv-t-e9d5ff:#912dff;--cv-t-e9ddff:#7f3aff;--cv-t-eae1f7:#8550d0;--cv-t-ede9fe:#6d4df7;--cv-t-eee6fa:#8349db;--cv-t-efe6fa:#8a49db;--cv-t-efeaf6:#7f58b7;--cv-t-efeded:#2E2840;--cv-t-f0a5b0:#cf233c;--cv-t-f0c0ff:#b100e9;--cv-t-f0ce68:#84660d;--cv-t-f2eaff:#8337ff;--cv-t-f3c89a:#9f5b13;--cv-t-f3e6c8:#85661d;--cv-t-f3f0e7:#7a6b3d;--cv-t-f47b8d:#d81230;--cv-t-f47b90:#d81234;--cv-t-f47b99:#d41242;--cv-t-f47b9c:#d41247;--cv-t-f47ba0:#d4124d;--cv-t-f47bab:#d4125f;--cv-t-f47bbd:#cf1179;--cv-t-f47bbe:#cf117a;--cv-t-f47bc3:#cf1182;--cv-t-f47bc7:#ca1185;--cv-t-f47bce:#ca1190;--cv-t-f47bd5:#ca119b;--cv-t-f4827b:#d41d12;--cv-t-f4847b:#d42012;--cv-t-f4857b:#d42212;--cv-t-f4987b:#c63c10;--cv-t-f4997b:#c63d10;--cv-t-f49a7b:#c13d10;--cv-t-f49b7b:#c13f10;--cv-t-f49e7b:#c14310;--cv-t-f4a67b:#b74b0f;--cv-t-f4a77b:#b74c0f;--cv-t-f4ad7b:#ae500e;--cv-t-f4ae7b:#ae520e;--cv-t-f4af7b:#ae530e;--cv-t-f4b17b:#a9530e;--cv-t-f4b47b:#a9570e;--cv-t-f4b57b:#a5560e;--cv-t-f4bb7b:#a05b0d;--cv-t-f4bc7b:#a05c0d;--cv-t-f4be7b:#9b5c0d;--cv-t-f4bf7b:#9b5d0d;--cv-t-f4c17b:#9b5f0d;--cv-t-f4c37b:#965f0d;--cv-t-f4c57b:#96610d;--cv-t-f4c67b:#96620d;--cv-t-f4c87b:#92610c;--cv-t-f4c97b:#92620c;--cv-t-f4ca7b:#92630c;--cv-t-f4cb7b:#92640c;--cv-t-f4cd7b:#8d630c;--cv-t-f4ce7b:#8d640c;--cv-t-f4cf7b:#8d660c;--cv-t-f4d17b:#88640b;--cv-t-f4d27b:#88650b;--cv-t-f4d37b:#88660b;--cv-t-f4d77b:#84670b;--cv-t-f4da7b:#846a0b;--cv-t-f4db7b:#846b0b;--cv-t-f4ecff:#8a34ff;--cv-t-fbd5e9:#cd1475;--cv-t-fda4af:#da051f;--cv-t-fdba74:#a85702;--cv-t-fde68a:#816702;--cv-t-ff7a59:#ce2900;--cv-t-ffb648:#9a5c00;--cv-t-ffd54f:#876700;--cv-t-fff8ea:#936200;
  /* added: light-mode text fixes */
  --cv-t-7ba3f4:#1255dd;--cv-t-f4a97b:#a0450d;--cv-t-7bf4d2:#096c50;--cv-t-f47b7b:#c11010;--cv-t-e7ecf7:#1A1528;--cv-t-8d9ab8:#6B6385;--cv-t-7bbbf4:#0e63ae;--cv-t-7b97f4:#1d4dec;--cv-t-7ba2f4:#1254dd;--cv-t-7bf4cc:#096c4b;--cv-t-f4c77b:#84570b;--cv-t-9b9bc0:#6B6385;--cv-t-f4a47b:#a5410e;--cv-t-7baaf4:#115bcf;--cv-t-c9aeea:#7d3dcd;
  /* added: light-mode text fixes */
  --cv-t-827bf4:#4d43ef;--cv-t-7b86f4:#394aef;--cv-t-7b7bf4:#4747f0;
}
/* light is the default (also without JS) unless dark was chosen */
@media all{
  :root:not([data-theme="dark"]){
    --cv-canvas:#F6F3FF; --cv-deep:#EFEAFB; --cv-card:#FFFFFF; --cv-raised:#E9E4F5; --cv-raised2:#D8CFEE; --cv-primary:#6F42C1;
    --cv-secondary:#6F42C1; --cv-tertiary:#5B32A8; --cv-electric:#4A278A; --cv-text:#1A1528; --cv-white-ink:#1A1528; --cv-ink-soft:#2E2840;
    --cv-ink-soft2:#58516D; --cv-muted:#6B6385; --cv-accent-ink:#6F42C1; --cv-border:#D8CFEE; --cv-glow:rgba(111,66,193,.18); --cv-wash:31,26,44;
    --cv-wash-ink:31,26,44; --cv-card-rgb:255,255,255; --cv-accent-rgb:111,66,193; --cv-pill-bg:rgba(255,255,255,.86);
    --cv-pill-bg-hover:rgba(255,255,255,.98); --cv-pill-border:#D8CFEE;
    --cv-pill-shadow:0 2px 4px -1px rgba(31,26,44,.03),0 4px 12px -2px rgba(111,66,193,.06);
    --cv-pill-shadow-hover:0 8px 24px -4px rgba(111,66,193,.10),0 4px 8px -2px rgba(31,26,44,.04); --cv-scroll-thumb:#D8CFEE;
    --cv-scroll-thumb-fg:#B9A9E0; --cv-select:rgba(111,66,193,.22); --cv-select-ink:#1A1528;
    --cv-font-head:'Space Grotesk','Cairo','Tajawal',sans-serif; --cv-font-label:'Space Grotesk','Cairo','Tajawal',sans-serif;
    --cv-surface-subtle:#E9E4F5; --cv-placeholder:#8A82A5; --cv-accent-hover:#5B32A8; --cv-accent-active:#4A278A; --cv-status-success:#059669;
    --cv-status-warning:#D97706; --cv-status-danger:#DC2626; --cv-shadow-1:0 2px 4px -1px rgba(31,26,44,.03),0 4px 12px -2px rgba(111,66,193,.06);
    --cv-shadow-2:0 8px 24px -4px rgba(111,66,193,.10),0 4px 8px -2px rgba(31,26,44,.04);
    --cv-shadow-3:0 20px 36px -6px rgba(111,66,193,.16),0 8px 16px -4px rgba(31,26,44,.06); --cv-ring:0 0 0 3px rgba(111,66,193,.18); --cv-r-sm:8px;
    --cv-r-md:16px; --cv-r-lg:24px;
    color-scheme:light;
    --cv-t-7b9af4:#3060ee;--cv-t-7b9bf4:#2b5eed;--cv-t-7b9ff4:#2661ed;--cv-t-7ba1f4:#2261ed;--cv-t-7ba9f4:#1364e6;--cv-t-7badf4:#1266dd;--cv-t-7bb4f4:#116bcf;--cv-t-7bc8f4:#0e71a9;--cv-t-7bcaf4:#0e73a9;--cv-t-7bcbf4:#0e71a5;--cv-t-7beff4:#0a767a;--cv-t-7bf0f4:#0a777a;--cv-t-7bf481:#0b7f10;--cv-t-7bf4a7:#0a7a33;--cv-t-7bf4a8:#0a7a34;--cv-t-7bf4a9:#0a7a35;--cv-t-7bf4ab:#0a7a37;--cv-t-7bf4ad:#0a7a38;--cv-t-7bf4ae:#0a7a39;--cv-t-7bf4c0:#0a7a4a;--cv-t-7bf4c4:#0a7a4e;--cv-t-7bf4c7:#0a7a51;--cv-t-7bf4c8:#0a7a51;--cv-t-7bf4cf:#0a7a58;--cv-t-7bf4d5:#0a7a5e;--cv-t-7bf4db:#0a7a63;--cv-t-7bf4e6:#0a7a6d;--cv-t-7bf4e7:#0a7a6e;--cv-t-7bf4e8:#0a7a6f;--cv-t-7bf4e9:#0a7a70;--cv-t-7bf4ea:#0a7a71;--cv-t-7bf4eb:#0a7a72;--cv-t-7bf4ee:#0a7a75;--cv-t-7bf4ef:#0a7a76;--cv-t-7ce0a6:#1e7d45;--cv-t-7db4f7:#0d69d8;--cv-t-9ca3af:#58516D;--cv-t-9fc9c6:#58516D;--cv-t-a5f3fc:#047784;--cv-t-bee3df:#32756e;--cv-t-bfe0dd:#397671;--cv-t-c7b7e5:#7b56c2;--cv-t-c9c1da:#58516D;--cv-t-cccccc:#2E2840;--cv-t-cdb8ec:#834fd0;--cv-t-d6eae7:#3c766d;--cv-t-d8b4fe:#912cfc;--cv-t-d8c6f5:#8248df;--cv-t-d8d2e4:#2E2840;--cv-t-d9cbee:#8254c7;--cv-t-dccbee:#8950c6;--cv-t-dcd4ec:#7a5cb7;--cv-t-e6dcf5:#8351cd;--cv-t-e7f2f1:#2E2840;--cv-t-e8ddfb:#8246e9;--cv-t-e8def5:#8651ca;--cv-t-e9d5ff:#912dff;--cv-t-e9ddff:#7f3aff;--cv-t-eae1f7:#8550d0;--cv-t-ede9fe:#6d4df7;--cv-t-eee6fa:#8349db;--cv-t-efe6fa:#8a49db;--cv-t-efeaf6:#7f58b7;--cv-t-efeded:#2E2840;--cv-t-f0a5b0:#cf233c;--cv-t-f0c0ff:#b100e9;--cv-t-f0ce68:#84660d;--cv-t-f2eaff:#8337ff;--cv-t-f3c89a:#9f5b13;--cv-t-f3e6c8:#85661d;--cv-t-f3f0e7:#7a6b3d;--cv-t-f47b8d:#d81230;--cv-t-f47b90:#d81234;--cv-t-f47b99:#d41242;--cv-t-f47b9c:#d41247;--cv-t-f47ba0:#d4124d;--cv-t-f47bab:#d4125f;--cv-t-f47bbd:#cf1179;--cv-t-f47bbe:#cf117a;--cv-t-f47bc3:#cf1182;--cv-t-f47bc7:#ca1185;--cv-t-f47bce:#ca1190;--cv-t-f47bd5:#ca119b;--cv-t-f4827b:#d41d12;--cv-t-f4847b:#d42012;--cv-t-f4857b:#d42212;--cv-t-f4987b:#c63c10;--cv-t-f4997b:#c63d10;--cv-t-f49a7b:#c13d10;--cv-t-f49b7b:#c13f10;--cv-t-f49e7b:#c14310;--cv-t-f4a67b:#b74b0f;--cv-t-f4a77b:#b74c0f;--cv-t-f4ad7b:#ae500e;--cv-t-f4ae7b:#ae520e;--cv-t-f4af7b:#ae530e;--cv-t-f4b17b:#a9530e;--cv-t-f4b47b:#a9570e;--cv-t-f4b57b:#a5560e;--cv-t-f4bb7b:#a05b0d;--cv-t-f4bc7b:#a05c0d;--cv-t-f4be7b:#9b5c0d;--cv-t-f4bf7b:#9b5d0d;--cv-t-f4c17b:#9b5f0d;--cv-t-f4c37b:#965f0d;--cv-t-f4c57b:#96610d;--cv-t-f4c67b:#96620d;--cv-t-f4c87b:#92610c;--cv-t-f4c97b:#92620c;--cv-t-f4ca7b:#92630c;--cv-t-f4cb7b:#92640c;--cv-t-f4cd7b:#8d630c;--cv-t-f4ce7b:#8d640c;--cv-t-f4cf7b:#8d660c;--cv-t-f4d17b:#88640b;--cv-t-f4d27b:#88650b;--cv-t-f4d37b:#88660b;--cv-t-f4d77b:#84670b;--cv-t-f4da7b:#846a0b;--cv-t-f4db7b:#846b0b;--cv-t-f4ecff:#8a34ff;--cv-t-fbd5e9:#cd1475;--cv-t-fda4af:#da051f;--cv-t-fdba74:#a85702;--cv-t-fde68a:#816702;--cv-t-ff7a59:#ce2900;--cv-t-ffb648:#9a5c00;--cv-t-ffd54f:#876700;--cv-t-fff8ea:#936200;
  /* added: light-mode text fixes */
  --cv-t-7ba3f4:#1255dd;--cv-t-f4a97b:#a0450d;--cv-t-7bf4d2:#096c50;--cv-t-f47b7b:#c11010;--cv-t-e7ecf7:#1A1528;--cv-t-8d9ab8:#6B6385;--cv-t-7bbbf4:#0e63ae;--cv-t-7b97f4:#1d4dec;--cv-t-7ba2f4:#1254dd;--cv-t-7bf4cc:#096c4b;--cv-t-f4c77b:#84570b;--cv-t-9b9bc0:#6B6385;--cv-t-f4a47b:#a5410e;--cv-t-7baaf4:#115bcf;--cv-t-c9aeea:#7d3dcd;
  /* added: light-mode text fixes */
  --cv-t-827bf4:#4d43ef;--cv-t-7b86f4:#394aef;--cv-t-7b7bf4:#4747f0;
  }
}
html{background:var(--cv-canvas)}
button,input,select,textarea{font-family:var(--cv-font-label)}
mark{color:inherit}
::selection{background:var(--cv-select);color:var(--cv-select-ink)}
:focus-visible{outline:2px solid var(--cv-secondary);outline-offset:2px;box-shadow:0 0 0 3px rgba(111,66,193,.25)}
*{scrollbar-color:var(--cv-scroll-thumb-fg) var(--cv-deep)}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:var(--cv-deep)}
::-webkit-scrollbar-thumb{background:var(--cv-scroll-thumb);border-radius:9999px;border:2px solid var(--cv-deep)}
::-webkit-scrollbar-thumb:hover{background:var(--cv-primary)}

/* floating action pills (back button + theme toggle) */
.cv-back{position:fixed;bottom:max(16px,env(safe-area-inset-bottom));right:14px;z-index:2147483000;
  display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 14px 0 10px;border-radius:9999px;
  background:var(--cv-pill-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border:1px solid var(--cv-pill-border);color:var(--cv-text);text-decoration:none;cursor:pointer;
  font:600 13px/1 var(--cv-font-label);letter-spacing:.2px;
  box-shadow:var(--cv-pill-shadow);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.cv-back:hover{transform:scale(1.03);background:var(--cv-pill-bg-hover);box-shadow:var(--cv-pill-shadow-hover)}
.cv-back:active{transform:scale(.98)}
.cv-back svg{width:18px;height:18px;flex:none}
[dir=rtl] .cv-back svg,html[dir=rtl] .cv-back svg{transform:scaleX(-1)}

.cv-theme{position:absolute;top:12px;left:14px;z-index:2147483000;
  display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border-radius:9999px;
  background:var(--cv-pill-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border:1px solid var(--cv-pill-border);color:var(--cv-text);cursor:pointer;
  box-shadow:var(--cv-pill-shadow);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.cv-theme:hover{transform:scale(1.06);background:var(--cv-pill-bg-hover);box-shadow:var(--cv-pill-shadow-hover)}
.cv-theme:active{transform:scale(.96)}
.cv-theme svg{width:20px;height:20px;flex:none}
.cv-theme .cv-ico-sun{display:none}
:root[data-theme="light"] .cv-theme .cv-ico-sun{display:block}
:root[data-theme="light"] .cv-theme .cv-ico-moon{display:none}
@media (prefers-reduced-motion:reduce){.cv-back,.cv-theme{transition:none}}
@media print{.cv-back,.cv-theme{display:none!important}}

/* ===== Luminous Core — light-mode component layer =====
   Applies only when the light theme is active (default). Dark theme is untouched. */
:root:not([data-theme="dark"]) h1,
:root:not([data-theme="dark"]) h2,
:root:not([data-theme="dark"]) h3{font-family:var(--cv-font-head);letter-spacing:-.01em}
:root:not([data-theme="dark"]) input::placeholder,
:root:not([data-theme="dark"]) textarea::placeholder{color:var(--cv-placeholder)}
:root:not([data-theme="dark"]) input:focus,
:root:not([data-theme="dark"]) select:focus,
:root:not([data-theme="dark"]) textarea:focus{border-color:var(--cv-primary);box-shadow:var(--cv-ring);outline:none}
:root:not([data-theme="dark"]) :focus-visible{outline:2px solid var(--cv-primary);outline-offset:2px;box-shadow:var(--cv-ring)}
:root:not([data-theme="dark"]) .card{border-color:var(--cv-raised);box-shadow:var(--cv-shadow-1);transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}
:root:not([data-theme="dark"]) .card:hover{box-shadow:var(--cv-shadow-2);border-color:var(--cv-border)}
:root:not([data-theme="dark"]) .modal,
:root:not([data-theme="dark"]) [role="dialog"]{box-shadow:var(--cv-shadow-3)}
:root:not([data-theme="dark"]) table thead th{background:var(--cv-canvas);color:var(--cv-ink-soft2);border-bottom:1px solid var(--cv-raised)}
:root:not([data-theme="dark"]) table tbody tr:hover{background:#FAF8FF}
@media (prefers-reduced-motion:reduce){:root:not([data-theme="dark"]) .card{transition:none}}
