:root {
    color-scheme: light;
    --font-sans: "Aptos", "Segoe UI", "Trebuchet MS", sans-serif;
    --font-accent: "Segoe UI Semibold", "Aptos Display", "Trebuchet MS", sans-serif;
    --page-max-width: 1440px;
    --radius-sm: 18px;
    --radius-md: 24px;
    --radius-lg: 34px;
    --shadow-soft: 0 18px 40px rgba(98, 108, 154, 0.14);
    --shadow-card: 0 10px 28px rgba(109, 122, 167, 0.12);
    --shadow-floating: 0 22px 50px rgba(62, 77, 127, 0.18);
    --transition-base: 180ms ease;
    --transition-slow: 260ms ease;
    --accent-start: #3f63ff;
    --accent-end: #7648ff;
    --accent-soft: rgba(97, 111, 255, 0.14);
    --accent-border: rgba(114, 88, 255, 0.18);
    --surface-1: rgba(255, 255, 255, 0.92);
    --surface-2: rgba(247, 248, 255, 0.92);
    --surface-3: rgba(242, 244, 255, 0.88);
    --surface-4: rgba(233, 236, 255, 0.84);
    --page-bg: linear-gradient(180deg, #f5f7ff 0%, #eef2ff 100%);
    --page-bg-accent: radial-gradient(circle at top left, rgba(78, 114, 255, 0.16), transparent 40%);
    --text-main: #19223e;
    --text-secondary: #6d7591;
    --text-muted: #8e96ad;
    --border-soft: rgba(128, 145, 196, 0.18);
    --border-strong: rgba(110, 125, 191, 0.22);
    --success: #4baa68;
    --warning: #f3a21a;
    --danger: #df4a58;
    --panel-min-height: 320px;
}

body[data-theme="dark"] {
    color-scheme: dark;
    --shadow-soft: 0 18px 44px rgba(3, 6, 20, 0.35);
    --shadow-card: 0 12px 34px rgba(4, 7, 20, 0.32);
    --shadow-floating: 0 26px 60px rgba(0, 0, 0, 0.42);
    --accent-soft: rgba(111, 128, 255, 0.18);
    --accent-border: rgba(132, 139, 255, 0.28);
    --surface-1: rgba(17, 23, 42, 0.88);
    --surface-2: rgba(21, 29, 51, 0.9);
    --surface-3: rgba(28, 37, 64, 0.92);
    --surface-4: rgba(37, 48, 82, 0.84);
    --page-bg: linear-gradient(180deg, #0b1226 0%, #121936 100%);
    --page-bg-accent: radial-gradient(circle at top left, rgba(95, 112, 255, 0.18), transparent 42%);
    --text-main: #f5f7ff;
    --text-secondary: #b7bfda;
    --text-muted: #8d97ba;
    --border-soft: rgba(144, 160, 216, 0.16);
    --border-strong: rgba(142, 155, 229, 0.24);
    --success: #5fc584;
    --warning: #ffbf47;
    --danger: #ff7a8b;
}
