        :root {
            --color-central: #f07b3a;
            --color-central-rgb: 240, 123, 58;
            --color-analog-left: #f0d63a;
            --color-analog-left-rgb: 240, 214, 58;
            --color-analog-right: #f03a54;
            --color-analog-right-rgb: 240, 58, 84;
            --color-complementary: #3aaff0;
            --color-complementary-rgb: 58, 175, 240;
            --color-complementary-analog-left: #3a54f0;
            --color-complementary-analog-left-rgb: 58, 84, 240;
            --color-complementary-analog-right: #3af0d6;
            --color-complementary-analog-right-rgb: 58, 240, 214;
            --bg: #fff5eb;
            --card: #ffffff;
            --text: #3a2615;
            --muted: #8b5e33;
            --line: #f2d6ba;
            --primary: var(--color-central);
            --primary-contrast: #ffffff;
            --primary-hover: var(--color-analog-right);
            --radius: 14px;
            --radius-sm: 10px;
            --shadow: 0 6px 24px rgba(122, 70, 28, .12), 0 2px 10px rgba(122, 70, 28, .08);
            --input-bg: #ffffff;
            --input-border: #f1c7a6;
            --input-focus: var(--color-central);
            --ghost: #ffe6d2;
            --soft: #ffd4b3;
            --stripe-a: color-mix(in srgb, var(--color-central) 8%, var(--bg) 92%);
            --stripe-b: color-mix(in srgb, var(--color-central) 12%, var(--bg) 88%);
            --border-style: solid;
            --outline-style: solid;
            --card-head-bg: linear-gradient(180deg, color-mix(in srgb, #ffffff 85%, var(--bg) 15%), color-mix(in srgb, #ffffff 35%, var(--bg) 65%));
            --card-foot-bg: linear-gradient(180deg, color-mix(in srgb, #ffffff 78%, var(--bg) 22%), color-mix(in srgb, #fce0c8 96%, var(--bg) 4%));
            --card-body-bg: linear-gradient(180deg, color-mix(in srgb, #ffffff 90%, var(--bg) 10%), color-mix(in srgb, #ffffff 40%, var(--bg) 60%) 80%);
            --kopernica-wallpaper: radial-gradient(circle at 30% -12%, #ffdabd 0%, #f3aa70 46%, #ce662c 100%);
            --window-glass-light: #ffffff;
            --window-glass-dark: #10101c;
            --window-glass-fallback: #ffffff;
            --desktop-user-wallpaper: none;
            --window-body-fallback: linear-gradient(180deg, #ffffff, #f7f1e9);
            --taskbar-height: 55px;
            --dock-gap: clamp(1.35rem, 3vw, 2.4rem);
            --dock-height: 55px;
            --footer-height: 55px;
            --desktop-side-gap: clamp(1.5rem, 3vw, 3.25rem);
            --desktop-top-gap: clamp(1.75rem, 4vw, 3.75rem);
            --desktop-bottom-gap: calc(var(--footer-height)+var(--desktop-top-gap));
            --desktop-bottom-padding: calc(var(--desktop-bottom-gap)+1.5rem);
            --start-menu-width: 340px;
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 35%, var(--bg) 65%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 62%, var(--accent-strong) 38%);
            --chrome-gradient: linear-gradient(135deg, rgb(144, 128, 35), rgb(144, 74, 35));
            --chrome-flat: color-mix(in srgb, var(--accent-strong) 52%, var(--bg) 48%);
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 46%, var(--bg) 54%);
            --taskbar-border: color-mix(in srgb, var(--accent-stronger) 24%, var(--bg) 76%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #fff5ec;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #fff5ec;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .5);
            --desktop-icon-hover-shadow: 0 34px 72px rgba(var(--color-complementary-rgb), .58);
            --footer-text: #fff5ec;
            --launcher-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --launcher-border: color-mix(in srgb, var(--accent-stronger) 42%, var(--bg) 58%);
            --launcher-shadow: 0 18px 38px rgba(34, 24, 12, .2);
            --launcher-icon-color: var(--accent-strong);
            --launcher-icon-glow: color-mix(in srgb, var(--accent-strong) 60%, var(--accent-stronger) 40%);
            --launcher-hover-bg: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --launcher-hover-icon: var(--primary-contrast);
            --start-menu-surface: var(--chrome-gradient);
            --start-menu-overlay: none;
            --start-menu-border: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --start-menu-item-bg: var(--chrome-soft-bg);
            --start-menu-item-hover: var(--chrome-soft-hover);
            --start-menu-item-border: color-mix(in srgb, var(--accent-stronger) 38%, var(--bg) 62%);
            --start-menu-text: var(--taskbar-button-text);
            --start-menu-muted: color-mix(in srgb, var(--taskbar-button-text) 78%, #ffffff 22%);
            --start-menu-scrollbar: color-mix(in srgb, var(--taskbar-button-text) 46%, var(--bg) 54%);
            --start-menu-scrollbar-track: color-mix(in srgb, #1c2538 32%, var(--bg) 68%);
            --start-menu-shadow: 0 26px 48px rgba(12, 24, 44, .24);
            --window-surface: #ffffff;
            --window-border: #d9cdbc;
            --window-shadow: 0 22px 48px rgba(28, 28, 38, .18);
            --window-shadow-unfocused: 0 16px 32px rgba(28, 28, 38, .14);
            --window-control-bg: color-mix(in srgb, var(--window-surface) 70%, var(--accent-stronger) 30%);
            --window-control-border: color-mix(in srgb, var(--window-border) 60%, var(--accent-stronger) 40%);
            --window-control-hover: color-mix(in srgb, var(--window-surface) 55%, var(--accent-stronger) 45%);
            --window-control-close-bg: #d75b5b;
            --window-control-close-hover: #c04848;
            --btn-cancel-shadow: 0 14px 28px rgba(104, 20, 20, .2);
            --paper-processing-bg: color-mix(in srgb, var(--accent-strong) 18%, var(--window-surface) 82%);
            --paper-processing-border: color-mix(in srgb, var(--accent-stronger) 38%, var(--window-border) 62%);
            --paper-processing-wait-bg: color-mix(in srgb, var(--accent-stronger) 22%, var(--window-surface) 78%);
            --desktop-wallpaper-filter: none;
            --desktop-wallpaper-filter-light: brightness(1.3);
            --desktop-wallpaper-filter-dark: brightness(0.7);
        }

        body.light {
            --color-central: #f07b3a;
            --color-central-rgb: 240, 123, 58;
            --color-analog-left: #f0d63a;
            --color-analog-left-rgb: 240, 214, 58;
            --color-analog-right: #f03a54;
            --color-analog-right-rgb: 240, 58, 84;
            --color-complementary: #3aaff0;
            --color-complementary-rgb: 58, 175, 240;
            --color-complementary-analog-left: #3a54f0;
            --color-complementary-analog-left-rgb: 58, 84, 240;
            --color-complementary-analog-right: #3af0d6;
            --color-complementary-analog-right-rgb: 58, 240, 214;
            --bg: #fff5eb;
            --card: #ffffff;
            --text: #3a2615;
            --muted: #8b5e33;
            --line: #f2d6ba;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #ffe6d2;
            --soft: #ffd4b3;
            --stripe-a: rgba(var(--color-central-rgb), .08);
            --stripe-b: rgba(var(--color-central-rgb), .12);
            --kopernica-wallpaper: radial-gradient(circle at 30% -12%, rgba(255, 218, 189, .64) 0%, rgba(243, 170, 112, .83) 46%, rgba(206, 102, 44, .92) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(144, 128, 35), rgb(144, 74, 35));
            --chrome-flat: color-mix(in srgb, var(--accent-strong) 44%, var(--bg) 56%);
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #fff5ec;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #fff5ec;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .5);
            --desktop-icon-hover-shadow: 0 34px 72px rgba(var(--color-complementary-rgb), .58);
            --footer-text: #fff5ec;
            --primary-contrast: #ffffff;
            --input-bg: #ffffff;
            --input-border: #f1c7a6;
            --input-focus: var(--color-central);
            --launcher-bg: var(--accent-soft);
            --launcher-border: var(--taskbar-border);
            --launcher-glass-highlight: rgba(255, 255, 255, .78);
            --launcher-glass-glow: var(--accent-soft-strong);
            --launcher-shadow: var(--taskbar-button-shadow);
            --launcher-icon-color: var(--accent-strong);
            --launcher-icon-glow: var(--accent-glow);
            --launcher-hover-bg: color-mix(in srgb, var(--accent-stronger) 46%, var(--bg) 54%);
            --launcher-hover-icon: var(--primary-contrast);
            --start-menu-surface: var(--chrome-gradient);
            --start-menu-overlay: linear-gradient(150deg, rgba(255, 255, 255, .2), rgba(255, 255, 255, .04));
            --start-menu-border: var(--accent-soft-strong);
            --start-menu-item-bg: var(--chrome-soft-bg);
            --start-menu-item-hover: var(--chrome-soft-hover);
            --start-menu-item-border: var(--accent-soft-strong);
            --start-menu-entry-bg: rgba(8, 16, 32, .35);
            --start-menu-text: var(--taskbar-button-text);
            --start-menu-muted: rgba(255, 255, 255, .78);
            --start-menu-scrollbar: rgba(255, 255, 255, .32);
            --start-menu-scrollbar-track: rgba(122, 92, 24, .25);
        }

        body.dark {
            --color-central: #0f8391;
            --color-central-rgb: 15, 131, 145;
            --color-analog-left: #0f4291;
            --color-analog-left-rgb: 15, 66, 145;
            --color-analog-right: #0f915e;
            --color-analog-right-rgb: 15, 145, 94;
            --color-complementary: #911d0f;
            --color-complementary-rgb: 145, 29, 15;
            --color-complementary-analog-left: #915e0f;
            --color-complementary-analog-left-rgb: 145, 94, 15;
            --color-complementary-analog-right: #910f42;
            --color-complementary-analog-right-rgb: 145, 15, 66;
            --bg: #0e2b38;
            --card: #1d3b49;
            --text: #d9f3ff;
            --muted: #85b1c3;
            --line: #183a44;
            --primary: var(--color-central);
            --primary-contrast: #f2fbff;
            --primary-hover: var(--color-analog-right);
            --input-bg: #16303c;
            --input-border: #1e3a44;
            --input-focus: var(--color-complementary);
            --ghost: #163e4c;
            --soft: #224e5f;
            --stripe-a: color-mix(in srgb, var(--color-central) 22%, var(--bg) 78%);
            --stripe-b: color-mix(in srgb, var(--color-central) 32%, var(--bg) 68%);
            --card-head-bg: linear-gradient(180deg, color-mix(in srgb, #0e3540 88%, #051520 12%), color-mix(in srgb, #0e3540 40%, #051520 60%));
            --card-foot-bg: linear-gradient(180deg, color-mix(in srgb, #0e3540 84%, #061922 16%), color-mix(in srgb, #061922 95%, #020a12 5%));
            --card-body-bg: linear-gradient(180deg, color-mix(in srgb, #113843 86%, #061922 14%), color-mix(in srgb, #061922 12%, #01070d 88%) 80%);
            --kopernica-wallpaper: radial-gradient(circle at 20% -18%, #32b0cc 0%, #083546 42%, #03141c 100%);
            --chrome-flat: color-mix(in srgb, var(--accent-strong) 58%, #07192a 42%);
            --window-surface: #162436;
            --window-border: #243246;
            --window-shadow: 0 26px 52px rgba(0, 0, 0, .52);
            --window-shadow-unfocused: 0 18px 36px rgba(0, 0, 0, .42);
            --window-body-fallback: linear-gradient(180deg, #1a2234, #111a2a);
            --window-control-bg: color-mix(in srgb, var(--window-surface) 65%, var(--accent-stronger) 35%);
            --window-control-border: color-mix(in srgb, var(--window-border) 55%, var(--accent-stronger) 45%);
            --window-control-hover: color-mix(in srgb, var(--window-surface) 48%, var(--accent-stronger) 52%);
            --window-control-close-bg: #c94c4c;
            --window-control-close-hover: #b04040;
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(9, 40, 87), rgb(9, 79, 87));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 18%, var(--bg) 82%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #f5fdff;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #f4fdff;
            --desktop-icon-shadow: 0 32px 70px rgba(var(--color-complementary-rgb), .55);
            --desktop-icon-hover-shadow: 0 36px 76px rgba(var(--color-complementary-rgb), .64);
            --footer-text: #f6fdff;
            --launcher-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --launcher-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --launcher-shadow: 0 20px 40px rgba(0, 0, 0, .38);
            --launcher-icon-color: var(--accent-strong);
            --launcher-hover-bg: color-mix(in srgb, var(--accent-stronger) 46%, var(--bg) 54%);
            --launcher-hover-icon: var(--primary-contrast);
            --start-menu-surface: var(--chrome-gradient);
            --start-menu-overlay: none;
            --start-menu-border: color-mix(in srgb, var(--accent-stronger) 46%, var(--bg) 54%);
            --start-menu-item-bg: var(--chrome-soft-bg);
            --start-menu-item-hover: color-mix(in srgb, var(--accent-stronger) 56%, var(--bg) 44%);
            --start-menu-item-border: color-mix(in srgb, var(--accent-stronger) 42%, var(--bg) 58%);
            --start-menu-text: #f9feff;
            --start-menu-muted: color-mix(in srgb, #f0fcff 70%, var(--bg) 30%);
            --start-menu-scrollbar: color-mix(in srgb, #e6f7ff 38%, var(--bg) 62%);
            --start-menu-scrollbar-track: color-mix(in srgb, #061822 48%, var(--bg) 52%);
            --paper-processing-bg: color-mix(in srgb, var(--accent-strong) 22%, var(--window-surface) 78%);
            --paper-processing-border: color-mix(in srgb, var(--accent-stronger) 38%, var(--window-border) 62%);
            --paper-processing-wait-bg: color-mix(in srgb, var(--accent-stronger) 30%, var(--window-surface) 70%);
        }

        body.theme-dawn-harvest {
            --color-central: #f07b3a;
            --color-central-rgb: 240, 123, 58;
            --color-analog-left: #f0d63a;
            --color-analog-left-rgb: 240, 214, 58;
            --color-analog-right: #f03a54;
            --color-analog-right-rgb: 240, 58, 84;
            --color-complementary: #3aaff0;
            --color-complementary-rgb: 58, 175, 240;
            --color-complementary-analog-left: #3a54f0;
            --color-complementary-analog-left-rgb: 58, 84, 240;
            --color-complementary-analog-right: #3af0d6;
            --color-complementary-analog-right-rgb: 58, 240, 214;
            --bg: #fff5eb;
            --card: #ffffff;
            --text: #3a2615;
            --muted: #8b5e33;
            --line: #f2d6ba;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #ffe6d2;
            --soft: #ffd4b3;
            --stripe-a: rgba(var(--color-central-rgb), .08);
            --stripe-b: rgba(var(--color-central-rgb), .12);
            --kopernica-wallpaper: radial-gradient(circle at 30% -12%, rgba(255, 218, 189, .64) 0%, rgba(243, 170, 112, .83) 46%, rgba(206, 102, 44, .92) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(144, 128, 35), rgb(144, 74, 35));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #fff5ec;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #fff5ec;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .5);
            --desktop-icon-hover-shadow: 0 34px 72px rgba(var(--color-complementary-rgb), .58);
            --footer-text: #fff5ec;
        }

        body.theme-coral-bloom {
            --color-central: #e8667f;
            --color-central-rgb: 232, 102, 127;
            --color-analog-left: #e88e66;
            --color-analog-left-rgb: 232, 142, 102;
            --color-analog-right: #e866c0;
            --color-analog-right-rgb: 232, 102, 192;
            --color-complementary: #66e8cf;
            --color-complementary-rgb: 102, 232, 207;
            --color-complementary-analog-left: #66c0e8;
            --color-complementary-analog-left-rgb: 102, 192, 232;
            --color-complementary-analog-right: #66e88e;
            --color-complementary-analog-right-rgb: 102, 232, 142;
            --bg: #fff3f3;
            --card: #ffffff;
            --text: #402126;
            --muted: #9a5b66;
            --line: #f5ccd4;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #ffe1ea;
            --soft: #ffc9d7;
            --stripe-a: rgba(var(--color-central-rgb), .1);
            --stripe-b: rgba(var(--color-central-rgb), .16);
            --kopernica-wallpaper: radial-gradient(circle at 26% -16%, rgba(255, 210, 224, .7) 0%, rgba(234, 126, 153, .88) 44%, rgba(173, 58, 87, .94) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(139, 85, 61), rgb(139, 61, 76));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #fff4f6;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #fff6f8;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .5);
            --desktop-icon-hover-shadow: 0 34px 72px rgba(var(--color-complementary-rgb), .58);
            --footer-text: #fff4f6;
        }

        body.theme-citrus-orchard {
            --color-central: #d8b739;
            --color-central-rgb: 216, 183, 57;
            --color-analog-left: #a9d839;
            --color-analog-left-rgb: 169, 216, 57;
            --color-analog-right: #d86839;
            --color-analog-right-rgb: 216, 104, 57;
            --color-complementary: #395ad8;
            --color-complementary-rgb: 57, 90, 216;
            --color-complementary-analog-left: #6839d8;
            --color-complementary-analog-left-rgb: 104, 57, 216;
            --color-complementary-analog-right: #39aad8;
            --color-complementary-analog-right-rgb: 57, 170, 216;
            --bg: #fffbe8;
            --card: #ffffff;
            --text: #3f3714;
            --muted: #8c7a2f;
            --line: #f0e1b7;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #fff4c4;
            --soft: #ffe89c;
            --stripe-a: rgba(var(--color-central-rgb), .08);
            --stripe-b: rgba(var(--color-central-rgb), .14);
            --kopernica-wallpaper: radial-gradient(circle at 24% -18%, rgba(255, 236, 179, .7) 0%, rgba(226, 190, 82, .84) 44%, rgba(184, 136, 32, .9) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(101, 130, 34), rgb(130, 110, 34));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #fff9dd;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #fff9e0;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .48);
            --desktop-icon-hover-shadow: 0 34px 72px rgba(var(--color-complementary-rgb), .56);
            --footer-text: #fff9dd;
        }

        body.theme-verdant-meadow {
            --color-central: #3fae62;
            --color-central-rgb: 63, 174, 98;
            --color-analog-left: #3fae99;
            --color-analog-left-rgb: 63, 174, 153;
            --color-analog-right: #54ae3f;
            --color-analog-right-rgb: 84, 174, 63;
            --color-complementary: #ae3f8b;
            --color-complementary-rgb: 174, 63, 139;
            --color-complementary-analog-left: #ae3f54;
            --color-complementary-analog-left-rgb: 174, 63, 84;
            --color-complementary-analog-right: #993fae;
            --color-complementary-analog-right-rgb: 153, 63, 174;
            --bg: #f0fff3;
            --card: #ffffff;
            --text: #193922;
            --muted: #4f8b5d;
            --line: #c6e7d0;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #dcf9e6;
            --soft: #bff0d0;
            --stripe-a: rgba(var(--color-central-rgb), .1);
            --stripe-b: rgba(var(--color-central-rgb), .16);
            --kopernica-wallpaper: radial-gradient(circle at 30% -18%, rgba(203, 248, 214, .72) 0%, rgba(114, 206, 146, .84) 46%, rgba(46, 138, 86, .9) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(38, 104, 92), rgb(38, 104, 59));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #eefef3;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #effff5;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .5);
            --desktop-icon-hover-shadow: 0 34px 72px rgba(var(--color-complementary-rgb), .58);
            --footer-text: #eefef3;
        }

        body.theme-coastal-breeze {
            --color-central: #3fa6dc;
            --color-central-rgb: 63, 166, 220;
            --color-analog-left: #3f57dc;
            --color-analog-left-rgb: 63, 87, 220;
            --color-analog-right: #3fdcc4;
            --color-analog-right-rgb: 63, 220, 196;
            --color-complementary: #dc753f;
            --color-complementary-rgb: 220, 117, 63;
            --color-complementary-analog-left: #dcc43f;
            --color-complementary-analog-left-rgb: 220, 196, 63;
            --color-complementary-analog-right: #dc3f57;
            --color-complementary-analog-right-rgb: 220, 63, 87;
            --bg: #edf7ff;
            --card: #ffffff;
            --text: #142f44;
            --muted: #4f7495;
            --line: #c5daee;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #d9efff;
            --soft: #c2e2ff;
            --stripe-a: rgba(var(--color-central-rgb), .1);
            --stripe-b: rgba(var(--color-central-rgb), .16);
            --kopernica-wallpaper: radial-gradient(circle at 28% -18%, rgba(198, 232, 255, .7) 0%, rgba(110, 186, 230, .84) 44%, rgba(38, 110, 160, .92) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(38, 52, 132), rgb(38, 100, 132));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #eef7ff;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #f0f8ff;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .45);
            --desktop-icon-hover-shadow: 0 34px 72px rgba(var(--color-complementary-rgb), .55);
            --footer-text: #eef7ff;
        }

        body.theme-lagoon-mist {
            --color-central: #2fbba7;
            --color-central-rgb: 47, 187, 167;
            --color-analog-left: #2f89bb;
            --color-analog-left-rgb: 47, 137, 187;
            --color-analog-right: #2fbb61;
            --color-analog-right-rgb: 47, 187, 97;
            --color-complementary: #bb2f43;
            --color-complementary-rgb: 187, 47, 67;
            --color-complementary-analog-left: #bb612f;
            --color-complementary-analog-left-rgb: 187, 97, 47;
            --color-complementary-analog-right: #bb2f89;
            --color-complementary-analog-right-rgb: 187, 47, 137;
            --bg: #e9fffb;
            --card: #ffffff;
            --text: #1c3d38;
            --muted: #4e867d;
            --line: #c3ece3;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #d7f9f3;
            --soft: #bff0e5;
            --stripe-a: rgba(var(--color-central-rgb), .12);
            --stripe-b: rgba(var(--color-central-rgb), .18);
            --kopernica-wallpaper: radial-gradient(circle at 24% -16%, rgba(188, 248, 233, .72) 0%, rgba(92, 205, 185, .84) 42%, rgba(40, 140, 122, .9) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(28, 82, 112), rgb(28, 112, 100));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #ecfffb;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #f0fffb;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .46);
            --desktop-icon-hover-shadow: 0 34px 72px rgba(var(--color-complementary-rgb), .54);
            --footer-text: #ecfffb;
        }

        body.theme-sakura-haze {
            --color-central: #be70e0;
            --color-central-rgb: 190, 112, 224;
            --color-analog-left: #e070ca;
            --color-analog-left-rgb: 224, 112, 202;
            --color-analog-right: #8670e0;
            --color-analog-right-rgb: 134, 112, 224;
            --color-complementary: #92e070;
            --color-complementary-rgb: 146, 224, 112;
            --color-complementary-analog-left: #70e086;
            --color-complementary-analog-left-rgb: 112, 224, 134;
            --color-complementary-analog-right: #cae070;
            --color-complementary-analog-right-rgb: 202, 224, 112;
            --bg: #fbeeff;
            --card: #ffffff;
            --text: #3d234a;
            --muted: #8a5a9d;
            --line: #eec8f7;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #f3defd;
            --soft: #e4c0fa;
            --stripe-a: rgba(var(--color-central-rgb), .12);
            --stripe-b: rgba(var(--color-central-rgb), .18);
            --kopernica-wallpaper: radial-gradient(circle at 30% -18%, rgba(239, 213, 255, .72) 0%, rgba(200, 136, 232, .84) 46%, rgba(124, 60, 166, .9) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(134, 67, 121), rgb(114, 67, 134));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #fbf3ff;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #fdf5ff;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .48);
            --desktop-icon-hover-shadow: 0 34px 72px rgba(var(--color-complementary-rgb), .56);
            --footer-text: #fbf3ff;
        }

        body.theme-lilac-garden {
            --color-central: #6f7ce5;
            --color-central-rgb: 111, 124, 229;
            --color-analog-left: #9d6fe5;
            --color-analog-left-rgb: 157, 111, 229;
            --color-analog-right: #6fb7e5;
            --color-analog-right-rgb: 111, 183, 229;
            --color-complementary: #e5d86f;
            --color-complementary-rgb: 229, 216, 111;
            --color-complementary-analog-left: #b7e56f;
            --color-complementary-analog-left-rgb: 183, 229, 111;
            --color-complementary-analog-right: #e59d6f;
            --color-complementary-analog-right-rgb: 229, 157, 111;
            --bg: #f0f2ff;
            --card: #ffffff;
            --text: #272c58;
            --muted: #5f6aa4;
            --line: #d0d6f2;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #e2e6ff;
            --soft: #ccd3ff;
            --stripe-a: rgba(var(--color-central-rgb), .12);
            --stripe-b: rgba(var(--color-central-rgb), .18);
            --kopernica-wallpaper: radial-gradient(circle at 24% -18%, rgba(212, 218, 255, .72) 0%, rgba(140, 152, 232, .84) 44%, rgba(70, 84, 180, .9) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(94, 67, 137), rgb(67, 74, 137));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #f2f4ff;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #f4f6ff;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .46);
            --desktop-icon-hover-shadow: 0 34px 72px rgba(var(--color-complementary-rgb), .54);
            --footer-text: #f2f4ff;
        }

        body.theme-midnight-lagoon {
            --color-central: #1a90c0;
            --color-central-rgb: 26, 144, 192;
            --color-analog-left: #1a3dc0;
            --color-analog-left-rgb: 26, 61, 192;
            --color-analog-right: #1ac09d;
            --color-analog-right-rgb: 26, 192, 157;
            --color-complementary: #c04a1a;
            --color-complementary-rgb: 192, 74, 26;
            --color-complementary-analog-left: #c09d1a;
            --color-complementary-analog-left-rgb: 192, 157, 26;
            --color-complementary-analog-right: #c01a3d;
            --color-complementary-analog-right-rgb: 192, 26, 61;
            --bg: #102f43;
            --card: #1b4357;
            --text: #d8f6ff;
            --muted: #84b8d2;
            --line: #28526a;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #173c4f;
            --soft: #214f66;
            --stripe-a: rgba(var(--color-central-rgb), .22);
            --stripe-b: rgba(var(--color-central-rgb), .32);
            --kopernica-wallpaper: radial-gradient(circle at 18% -16%, rgba(60, 168, 214, .7) 0%, rgba(18, 58, 88, .88) 44%, rgba(8, 30, 52, .92) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(16, 37, 115), rgb(16, 86, 115));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #e5f8ff;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #e2f6ff;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .5);
            --desktop-icon-hover-shadow: 0 34px 70px rgba(var(--color-complementary-rgb), .58);
            --footer-text: #e5f8ff;
        }

        body.theme-ember-noir {
            --color-central: #e65b3b;
            --color-central-rgb: 230, 91, 59;
            --color-analog-left: #e6b03b;
            --color-analog-left-rgb: 230, 176, 59;
            --color-analog-right: #e63b71;
            --color-analog-right-rgb: 230, 59, 113;
            --color-complementary: #3bc6e6;
            --color-complementary-rgb: 59, 198, 230;
            --color-complementary-analog-left: #3b70e6;
            --color-complementary-analog-left-rgb: 59, 112, 230;
            --color-complementary-analog-right: #3be6b1;
            --color-complementary-analog-right-rgb: 59, 230, 177;
            --bg: #301713;
            --card: #3c221d;
            --text: #ffe1d6;
            --muted: #f49a87;
            --line: #542c23;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #392019;
            --soft: #452822;
            --stripe-a: rgba(var(--color-central-rgb), .24);
            --stripe-b: rgba(var(--color-central-rgb), .36);
            --kopernica-wallpaper: radial-gradient(circle at 20% -18%, rgba(240, 138, 104, .68) 0%, rgba(96, 32, 24, .88) 44%, rgba(40, 12, 10, .94) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(138, 106, 35), rgb(138, 55, 35));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #ffebe4;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #fff0ea;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .52);
            --desktop-icon-hover-shadow: 0 34px 70px rgba(var(--color-complementary-rgb), .6);
            --footer-text: #ffebe4;
        }

        body.theme-aurora-veil {
            --color-central: #5f6fe5;
            --color-central-rgb: 95, 111, 229;
            --color-analog-left: #925fe5;
            --color-analog-left-rgb: 146, 95, 229;
            --color-analog-right: #5fb2e5;
            --color-analog-right-rgb: 95, 178, 229;
            --color-complementary: #e5d55f;
            --color-complementary-rgb: 229, 213, 95;
            --color-complementary-analog-left: #b2e55f;
            --color-complementary-analog-left-rgb: 178, 229, 95;
            --color-complementary-analog-right: #e5925f;
            --color-complementary-analog-right-rgb: 229, 146, 95;
            --bg: #1a234a;
            --card: #232d58;
            --text: #e4e7ff;
            --muted: #9da8e5;
            --line: #313c6c;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #212b56;
            --soft: #2a3668;
            --stripe-a: rgba(var(--color-central-rgb), .24);
            --stripe-b: rgba(var(--color-central-rgb), .36);
            --kopernica-wallpaper: radial-gradient(circle at 22% -20%, rgba(116, 134, 238, .7) 0%, rgba(32, 42, 108, .88) 44%, rgba(14, 20, 52, .94) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(88, 57, 137), rgb(57, 67, 137));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #edf0ff;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #f0f2ff;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .52);
            --desktop-icon-hover-shadow: 0 34px 70px rgba(var(--color-complementary-rgb), .6);
            --footer-text: #edf0ff;
        }

        body.theme-ocean-twilight {
            --color-central: #1aa7a1;
            --color-central-rgb: 26, 167, 161;
            --color-analog-left: #1a66a7;
            --color-analog-left-rgb: 26, 102, 167;
            --color-analog-right: #1aa75b;
            --color-analog-right-rgb: 26, 167, 91;
            --color-complementary: #a71a20;
            --color-complementary-rgb: 167, 26, 32;
            --color-complementary-analog-left: #a75b1a;
            --color-complementary-analog-left-rgb: 167, 91, 26;
            --color-complementary-analog-right: #a71a66;
            --color-complementary-analog-right-rgb: 167, 26, 102;
            --bg: #123840;
            --card: #1b4a52;
            --text: #cef7f3;
            --muted: #83c8c4;
            --line: #25535a;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #184248;
            --soft: #22535a;
            --stripe-a: rgba(var(--color-central-rgb), .26);
            --stripe-b: rgba(var(--color-central-rgb), .36);
            --kopernica-wallpaper: radial-gradient(circle at 24% -18%, rgba(54, 168, 164, .68) 0%, rgba(20, 68, 68, .86) 42%, rgba(10, 30, 34, .9) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(16, 61, 100), rgb(16, 100, 97));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #e2fffd;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #dcfff9;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .5);
            --desktop-icon-hover-shadow: 0 34px 70px rgba(var(--color-complementary-rgb), .58);
            --footer-text: #e2fffd;
        }

        body.theme-forest-dusk {
            --color-central: #3c9c5c;
            --color-central-rgb: 60, 156, 92;
            --color-analog-left: #3c9c8c;
            --color-analog-left-rgb: 60, 156, 140;
            --color-analog-right: #4c9c3c;
            --color-analog-right-rgb: 76, 156, 60;
            --color-complementary: #9c3c7c;
            --color-complementary-rgb: 156, 60, 124;
            --color-complementary-analog-left: #9c3c4c;
            --color-complementary-analog-left-rgb: 156, 60, 76;
            --color-complementary-analog-right: #8c3c9c;
            --color-complementary-analog-right-rgb: 140, 60, 156;
            --bg: #1a3326;
            --card: #23402f;
            --text: #dff8e9;
            --muted: #8cc2a2;
            --line: #2e513e;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #224033;
            --soft: #294c39;
            --stripe-a: rgba(var(--color-central-rgb), .24);
            --stripe-b: rgba(var(--color-central-rgb), .36);
            --kopernica-wallpaper: radial-gradient(circle at 22% -18%, rgba(86, 172, 128, .66) 0%, rgba(30, 74, 44, .86) 44%, rgba(12, 30, 18, .92) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(36, 94, 84), rgb(36, 94, 55));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #ecfff4;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #e6feef;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .48);
            --desktop-icon-hover-shadow: 0 34px 70px rgba(var(--color-complementary-rgb), .56);
            --footer-text: #ecfff4;
        }

        body.theme-umber-abyss {
            --color-central: #c66f3c;
            --color-central-rgb: 198, 111, 60;
            --color-analog-left: #c6b43c;
            --color-analog-left-rgb: 198, 180, 60;
            --color-analog-right: #c63c4e;
            --color-analog-right-rgb: 198, 60, 78;
            --color-complementary: #3c93c6;
            --color-complementary-rgb: 60, 147, 198;
            --color-complementary-analog-left: #3c4ec6;
            --color-complementary-analog-left-rgb: 60, 78, 198;
            --color-complementary-analog-right: #3cc6b4;
            --color-complementary-analog-right-rgb: 60, 198, 180;
            --bg: #2c1e16;
            --card: #38271f;
            --text: #f8e8dc;
            --muted: #cea488;
            --line: #4d3424;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #34231a;
            --soft: #3f2c21;
            --stripe-a: rgba(var(--color-central-rgb), .24);
            --stripe-b: rgba(var(--color-central-rgb), .36);
            --kopernica-wallpaper: radial-gradient(circle at 20% -18%, rgba(222, 152, 100, .68) 0%, rgba(88, 42, 24, .88) 42%, rgba(36, 18, 10, .94) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(119, 108, 36), rgb(119, 67, 36));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #fff2e6;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #fff5eb;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .5);
            --desktop-icon-hover-shadow: 0 34px 70px rgba(var(--color-complementary-rgb), .58);
            --footer-text: #fff2e6;
        }

        body.theme-cosmic-nebula {
            --color-central: #a94de0;
            --color-central-rgb: 169, 77, 224;
            --color-analog-left: #e04dcd;
            --color-analog-left-rgb: 224, 77, 205;
            --color-analog-right: #5f4de0;
            --color-analog-right-rgb: 95, 77, 224;
            --color-complementary: #84e04d;
            --color-complementary-rgb: 132, 224, 77;
            --color-complementary-analog-left: #4de060;
            --color-complementary-analog-left-rgb: 77, 224, 96;
            --color-complementary-analog-right: #cde04d;
            --color-complementary-analog-right-rgb: 205, 224, 77;
            --bg: #2b1440;
            --card: #351d4c;
            --text: #f6e4ff;
            --muted: #bc9fe0;
            --line: #3f2a5a;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #331d48;
            --soft: #3d2756;
            --stripe-a: rgba(var(--color-central-rgb), .28);
            --stripe-b: rgba(var(--color-central-rgb), .4);
            --kopernica-wallpaper: radial-gradient(circle at 26% -18%, rgba(186, 116, 236, .7) 0%, rgba(68, 36, 124, .88) 44%, rgba(30, 14, 58, .94) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(134, 46, 123), rgb(101, 46, 134));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #f9f0ff;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #fbf4ff;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .5);
            --desktop-icon-hover-shadow: 0 34px 70px rgba(var(--color-complementary-rgb), .58);
            --footer-text: #f9f0ff;
        }

        body.theme-rainshadow {
            --color-central: #4a7fe0;
            --color-central-rgb: 74, 127, 224;
            --color-analog-left: #604ae0;
            --color-analog-left-rgb: 96, 74, 224;
            --color-analog-right: #4acae0;
            --color-analog-right-rgb: 74, 202, 224;
            --color-complementary: #e0ab4a;
            --color-complementary-rgb: 224, 171, 74;
            --color-complementary-analog-left: #cae04a;
            --color-complementary-analog-left-rgb: 202, 224, 74;
            --color-complementary-analog-right: #e0604a;
            --color-complementary-analog-right-rgb: 224, 96, 74;
            --bg: #1a2d44;
            --card: #233750;
            --text: #dde9f9;
            --muted: #96aecf;
            --line: #2e425a;
            --primary: var(--color-central);
            --primary-hover: var(--color-analog-right);
            --ghost: #20344c;
            --soft: #29405a;
            --stripe-a: rgba(var(--color-central-rgb), .26);
            --stripe-b: rgba(var(--color-central-rgb), .38);
            --kopernica-wallpaper: radial-gradient(circle at 20% -16%, rgba(100, 142, 224, .68) 0%, rgba(30, 48, 88, .86) 44%, rgba(14, 24, 48, .92) 100%);
            --accent-strong: var(--color-analog-right);
            --accent-stronger: var(--color-analog-left);
            --accent-soft: color-mix(in srgb, var(--accent-strong) 32%, var(--bg) 68%);
            --accent-soft-strong: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --accent-glow: color-mix(in srgb, var(--accent-stronger) 60%, var(--accent-strong) 40%);
            --chrome-gradient: linear-gradient(135deg, rgb(58, 44, 134), rgb(44, 76, 134));
            --chrome-soft-bg: color-mix(in srgb, var(--accent-strong) 30%, var(--bg) 70%);
            --chrome-soft-hover: color-mix(in srgb, var(--accent-stronger) 44%, var(--bg) 56%);
            --taskbar-border: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            --taskbar-button-bg: color-mix(in srgb, var(--accent-strong) 34%, var(--bg) 66%);
            --taskbar-button-active: color-mix(in srgb, var(--accent-stronger) 48%, var(--bg) 52%);
            --taskbar-button-text: #eaf1ff;
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-text: #edf4ff;
            --desktop-icon-shadow: 0 30px 64px rgba(var(--color-complementary-rgb), .5);
            --desktop-icon-hover-shadow: 0 34px 70px rgba(var(--color-complementary-rgb), .58);
            --footer-text: #eaf1ff;
        }

        body[class*='theme-'] {
            --accent-strong: rgba(var(--color-complementary-rgb), .2);
            --accent-stronger: rgba(var(--color-complementary-analog-left-rgb), .2);
        }

        body.production-mode {
            --bg: #f8fafc;
            --card: #ffffff;
            --text: #0f172a;
            --muted: #475569;
            --line: #cbd5e1;
            --primary: #2563eb;
            --primary-contrast: #ffffff;
            --primary-hover: #1d4ed8;
            --input-bg: #ffffff;
            --input-border: #cbd5e1;
            --input-focus: #2563eb;
            --ghost: #eef2ff;
            --soft: #e2e8f0;
            --stripe-a: transparent;
            --stripe-b: transparent;
            --shadow: 0 12px 24px rgba(15, 23, 42, .08), 0 8px 18px rgba(15, 23, 42, .05)
        }

        body.production-mode.dark {
            --bg: #0f172a;
            --card: #1e293b;
            --text: #e2e8f0;
            --muted: #94a3b8;
            --line: #334155;
            --primary: #3b82f6;
            --primary-contrast: #f8fafc;
            --primary-hover: #2563eb;
            --input-bg: #1e293b;
            --input-border: #475569;
            --input-focus: #3b82f6;
            --ghost: #16213b;
            --soft: #1f2a40;
            --stripe-a: transparent;
            --stripe-b: transparent;
            --shadow: 0 22px 44px rgba(2, 6, 23, .45), 0 10px 26px rgba(2, 6, 23, .35)
        }

        body.light,
        body.production-mode:not(.dark) {
            --shadow: 0 18px 36px rgba(0, 0, 0, .18), 0 8px 20px rgba(0, 0, 0, .12);
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-shadow: 0 32px 64px rgba(0, 0, 0, .35);
            --desktop-icon-hover-shadow: 0 36px 76px rgba(0, 0, 0, .45);
            --launcher-shadow: 0 28px 56px rgba(0, 0, 0, .32);
        }

        body.dark,
        body.production-mode.dark {
            --shadow: 0 18px 36px rgba(255, 255, 255, .22), 0 8px 20px rgba(255, 255, 255, .14);
            --taskbar-button-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            --desktop-icon-shadow: 0 32px 64px rgba(255, 255, 255, .28);
            --desktop-icon-hover-shadow: 0 36px 76px rgba(255, 255, 255, .36);
            --launcher-shadow: 0 28px 56px rgba(255, 255, 255, .3);
        }

        * {
            box-sizing: border-box
        }

        html,
        body {
            height: 100%
        }

        body {
            margin: 0;
            font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans";
            color: var(--text);
            background: var(--bg);
            line-height: 1.35;
            overflow: hidden
        }

        h1,
        h2,
        h3,
        p {
            margin: 0
        }

        summary {
            margin-top: 12px
        }

        body::before,
        body::after {
            content: "";
            position: fixed;
            inset: 0;
            pointer-events: none;
            z-index: -2
        }

        body::before {
            background: radial-gradient(circle at 1px 1px, rgba(0, 0, 0, .06) 1px, transparent 1.6px) 0 0/20px 20px;
            opacity: .28
        }

        body::after {
            background: linear-gradient(to right, rgba(0, 0, 0, .18) 1px, transparent 1px) 0 0/40px 40px, linear-gradient(to bottom, rgba(0, 0, 0, .18) 1px, transparent 1px) 0 0/40px 40px, repeating-linear-gradient(-45deg, rgba(0, 0, 0, .02) 0 10px, rgba(0, 0, 0, .04) 10px 20px);
            mix-blend-mode: multiply;
            opacity: .25;
            animation: gridmove 60s linear infinite
        }

        ::-webkit-scrollbar {
            width: 14px;
            height: 14px
        }

        ::-webkit-scrollbar-track {
            background: rgba(15, 30, 60, .1);
            border-radius: 999px
        }

        body.dark ::-webkit-scrollbar-track {
            background: rgba(255, 255, 255, .08)
        }

        ::-webkit-scrollbar-thumb {
            background: linear-gradient(135deg, rgba(74, 117, 212, .65), rgba(40, 82, 174, .85));
            border-radius: 999px;
            border: 3px solid transparent;
            box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .2), 0 4px 10px rgba(0, 0, 0, .25)
        }

        body.dark ::-webkit-scrollbar-thumb {
            background: linear-gradient(135deg, rgba(48, 84, 180, .7), rgba(20, 46, 120, .9));
            box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12), 0 4px 12px rgba(0, 0, 0, .4)
        }

        ::-webkit-scrollbar-thumb:hover {
            background: linear-gradient(135deg, rgba(74, 117, 212, .78), rgba(40, 82, 174, .95))
        }

        ::-webkit-scrollbar-corner {
            background: transparent
        }

        * {
            scrollbar-width: thin;
            scrollbar-color: rgba(72, 110, 190, .55) transparent
        }

        body.dark * {
            scrollbar-color: rgba(140, 180, 255, .65) rgba(10, 18, 36, .45)
        }

        .visually-hidden {
            position: absolute !important;
            width: 1px !important;
            height: 1px !important;
            padding: 0 !important;
            margin: -1px !important;
            overflow: hidden !important;
            clip: rect(0, 0, 0, 0) !important;
            border: 0 !important;
            white-space: nowrap !important
        }

        .kopernica-desktop {
            position: relative;
            z-index: 0;
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            background-color: var(--bg);
            padding: 10px 85px;
            transition: background .3s ease, background-color .3s ease;
            overflow: hidden
        }

        .kopernica-desktop.ready {
            padding: 0 0
        }

        .kopernica-desktop::before,
        .kopernica-desktop::after {
            content: "";
            position: absolute;
            inset: 0;
            background-position: center;
            background-size: cover;
            background-repeat: no-repeat;
            pointer-events: none;
            transition: opacity .35s ease, filter .35s ease;
            z-index: -2
        }

        .kopernica-desktop::before {
            background-color: var(--bg);
            background-image: var(--kopernica-wallpaper);
            opacity: 1
        }

        .kopernica-desktop::after {
            z-index: -1;
            background-color: transparent;
            background-image: var(--desktop-user-wallpaper);
            opacity: 0;
            filter: var(--desktop-wallpaper-filter, none)
        }

        .desktop-context-watermark {
            position: absolute;
            inset: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 5vw;
            pointer-events: none;
            z-index: 0;
            font-family: inherit;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: .14em;
            color: var(--desktop-icon-text);
            opacity: 0;
            transition: opacity .35s ease, transform .35s ease;
            mix-blend-mode: screen
        }

        body.dark .desktop-context-watermark {
            mix-blend-mode: soft-light
        }

        .desktop-context-watermark span {
            display: block;
            width: 100%;
            text-align: center;
            font-size: clamp(4rem, 18vw, 24rem);
            line-height: .85;
            word-break: break-word;
            text-shadow: 0 20px 60px rgba(0, 0, 0, .35)
        }

        .desktop-context-watermark.is-active {
            opacity: .2;
            transform: scale(1)
        }

        body.production-mode .kopernica-desktop::before {
            background-image: radial-gradient(circle at 18% -8%, rgba(120, 166, 240, .5) 0%, rgba(31, 87, 170, .92) 42%, rgba(9, 26, 58, .96) 100%)
        }

        body.dark .kopernica-desktop::before {
            background-image: linear-gradient(180deg, rgba(0, 0, 0, .55), rgba(0, 0, 0, .75)), var(--kopernica-wallpaper);
            background-blend-mode: overlay
        }

        body.has-user-background .kopernica-desktop::before {
            opacity: 0
        }

        body.has-user-background .kopernica-desktop::after {
            opacity: 1
        }

        body.has-user-background.dark {
            --desktop-wallpaper-filter: var(--desktop-wallpaper-filter-dark)
        }

        body.has-user-background:not(.dark) {
            --desktop-wallpaper-filter: var(--desktop-wallpaper-filter-light)
        }

        .desktop-stage {
            position: relative;
            z-index: 1;
            flex: 1;
            display: flex;
            align-items: stretch;
            justify-content: center;
            padding: var(--desktop-top-gap) var(--desktop-side-gap) var(--desktop-bottom-padding) var(--desktop-side-gap);
            overflow: hidden;
            margin-top: var(--taskbar-height);
            min-height: calc(100vh - var(--taskbar-height) - var(--footer-height))
        }

        .desktop-icons {
            position: absolute;
            height: 100vh;
            width: 100vw;
            top: 0px;
            left: 0px;
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(140px, 140px));
            grid-auto-rows: minmax(120px, auto);
            justify-content: flex-start;
            align-content: flex-start;
            align-items: self-start;
            justify-items: center;
            gap: 1.5rem;
            padding: 25px;
            z-index: 10;
            overflow: auto;
        }

        @media (max-width: 700px) {
            .desktop-icons {
                grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
                gap: 0.7rem;
                padding-right: 0.2rem;
            }

            .desktop-icon {
                width: 100px;
                height: 90px;
            }

            .desktop-icon__glyph {
                width: 40px;
                height: 40px;
            }
        }

        button.desktop-icon {
            width: 152px;
            height: 140px
        }

        .desktop-icon {
            background: none;
            border: 0;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: .6rem;
            padding: 0;
            border-radius: 1rem;
            color: var(--desktop-icon-label-color);
            --desktop-icon-shadow-color: rgba(0, 0, 0, .45);
            --desktop-icon-label-color: var(--desktop-icon-text);
            --desktop-icon-label-shadow: 0 12px 24px var(--desktop-icon-shadow-color);
            text-shadow: var(--desktop-icon-label-shadow);
            cursor: pointer;
            transition: transform .25s ease, background .25s ease, box-shadow .25s ease
        }

        .desktop-icon.is-active {
            background: var(--accent-soft);
            box-shadow: var(--desktop-icon-shadow)
        }

        .desktop-icon__glyph {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 72px;
            height: 72px;
            border-radius: 0;
        }

        body.light:not(.is-low-performance) .desktop-icon,
        body.production-mode:not(.dark):not(.is-low-performance) .desktop-icon {
            color: #000000;
            --desktop-icon-label-color: #000000;
            --desktop-icon-label-shadow: -1px 0 0 rgba(255, 255, 255, .95), 1px 0 0 rgba(255, 255, 255, .95), 0 -1px 0 rgba(255, 255, 255, .95), 0 1px 0 rgba(255, 255, 255, .95), -1px -1px 0 rgba(255, 255, 255, .78), 1px -1px 0 rgba(255, 255, 255, .78), -1px 1px 0 rgba(255, 255, 255, .78), 1px 1px 0 rgba(255, 255, 255, .78)
        }

        body.dark:not(.is-low-performance) .desktop-icon,
        body.production-mode.dark:not(.is-low-performance) .desktop-icon {
            color: #ffffff;
            --desktop-icon-shadow-color: rgba(0, 0, 0, 0);
            --desktop-icon-label-color: #ffffff;
            /* Stroke/outline in the opposite color (black) for readability on dark themes */
            --desktop-icon-label-shadow: -1px 0 0 rgba(0, 0, 0, .95), 1px 0 0 rgba(0, 0, 0, .95), 0 -1px 0 rgba(0, 0, 0, .95), 0 1px 0 rgba(0, 0, 0, .95), -1px -1px 0 rgba(0, 0, 0, .78), 1px -1px 0 rgba(0, 0, 0, .78), -1px 1px 0 rgba(0, 0, 0, .78), 1px 1px 0 rgba(0, 0, 0, .78)
        }

        body.dark:not(.is-low-performance) .desktop-icon.is-active,
        body.production-mode.dark:not(.is-low-performance) .desktop-icon.is-active {
            box-shadow: none
        }

        body.dark:not(.is-low-performance) .desktop-icon:hover,
        body.dark:not(.is-low-performance) .desktop-icon:focus-visible,
        body.production-mode.dark:not(.is-low-performance) .desktop-icon:hover,
        body.production-mode.dark:not(.is-low-performance) .desktop-icon:focus-visible {
            box-shadow: none
        }

        body.dark:not(.is-low-performance) .desktop-icon__glyph i,
        body.dark:not(.is-low-performance) .desktop-icon__glyph img,
        body.production-mode.dark:not(.is-low-performance) .desktop-icon__glyph i,
        body.production-mode.dark:not(.is-low-performance) .desktop-icon__glyph img {
            filter: none
        }

        body.is-low-performance .desktop-icon {
            color: var(--desktop-icon-text);
            text-shadow: 0 12px 24px var(--desktop-icon-shadow-color)
        }

        .desktop-icon__glyph i {
            font-size: 2.2rem;
            filter: drop-shadow(0 10px 24px var(--desktop-icon-shadow-color))
        }

        .desktop-icon__glyph img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            filter: drop-shadow(0 10px 24px var(--desktop-icon-shadow-color))
        }

        .desktop-icon--dark {
            --desktop-icon-shadow-color: rgba(255, 255, 255, .55)
        }

        .desktop-icon--light {
            --desktop-icon-shadow-color: rgba(0, 0, 0, .45)
        }

        .desktop-icon:hover,
        .desktop-icon:focus-visible {
            background: var(--accent-soft-strong);
            box-shadow: var(--desktop-icon-hover-shadow);
            transform: translateY(-4px)
        }

        .desktop-icon:focus-visible {
            outline: 2px solid rgba(255, 255, 255, .9);
            outline-offset: 4px
        }

        .desktop-label {
            display: flex;
            flex-direction: column;
            align-items: center;
            font-size: .85rem;
            font-weight: 700;
            letter-spacing: .015em;
            line-height: 1.2;
            text-align: center
        }

        .windows-layer {
            position: relative;
            flex: 1;
            min-height: 0
        }

        .screen-storage {
            position: absolute;
            width: 0;
            height: 0;
            overflow: hidden;
            pointer-events: none
        }

        .standalone-app-shell {
            position: relative;
            min-height: 100%;
            overflow-y: auto
        }

        .kopernica-window>.standalone-app-shell {
            flex: 1;
            padding: 0;
            background: transparent
        }

        .standalone-app-shell>.screen {
            position: static !important;
            display: block !important;
            opacity: 1 !important;
            transform: none !important;
            pointer-events: auto !important;
            transition: none !important
        }

        .kopernica-window {
            position: absolute;
            left: 0;
            top: 0;
            width: min(100%, 1180px);
            max-height: calc(100% - 1.5rem);
            background: var(--window-surface);
            border-radius: 14px 14px 7px 7px;
            border: 1px solid var(--window-border);
            box-shadow: var(--window-shadow);
            display: flex;
            flex-direction: column;
            overflow: hidden;
            transition: transform .18s ease, box-shadow .18s ease;
            will-change: left, top, width, height;
            z-index: 30;
            min-width: 800px;
            min-height: 512px
        }

        .kopernica-window.is-performance-mode {
            background: var(--window-surface);
            box-shadow: var(--window-shadow)
        }

        body.dark .kopernica-window {
            background: var(--window-surface);
            border-color: var(--window-border);
            box-shadow: var(--window-shadow)
        }

        body.dark .kopernica-window.is-performance-mode {
            background: var(--window-surface);
            box-shadow: var(--window-shadow)
        }

        .kopernica-window.minimized {
            display: none !important
        }

        .kopernica-window.maximized {
            left: 0;
            top: 0;
            right: auto;
            bottom: auto;
            width: 100%;
            height: 100%;
            max-height: none;
            transform: none !important
        }

        .kopernica-window:not(.focused) {
            filter: none;
            box-shadow: var(--window-shadow-unfocused)
        }

        .kopernica-window.is-iframe .window-body {
            padding: 0
        }

        .kopernica-window.is-iframe .window-body iframe {
            width: 100%;
            height: 100%;
            border: 0;
            background: transparent
        }

        .kopernica-window .resize-handle {
            position: absolute;
            display: flex;
            align-items: center;
            justify-content: center;
            touch-action: none;
            outline: 0;
            background: transparent !important
        }

        .kopernica-window .resize-handle::before {
            content: "";
            display: block;
            background: transparent;
            border-radius: 999px;
            width: 100%;
            height: 100%;
            opacity: 0
        }

        .kopernica-window .resize-handle[data-direction="top"],
        .kopernica-window .resize-handle[data-direction="bottom"] {
            left: 16px;
            right: 16px;
            height: 12px
        }

        .kopernica-window .resize-handle[data-direction="top"] {
            top: -6px;
            cursor: n-resize
        }

        .kopernica-window .resize-handle[data-direction="bottom"] {
            bottom: -6px;
            cursor: s-resize
        }

        .kopernica-window .resize-handle[data-direction="left"],
        .kopernica-window .resize-handle[data-direction="right"] {
            top: 16px;
            bottom: 16px;
            width: 12px
        }

        .kopernica-window .resize-handle[data-direction="left"] {
            left: -6px;
            cursor: w-resize
        }

        .kopernica-window .resize-handle[data-direction="right"] {
            right: -6px;
            cursor: e-resize
        }

        .kopernica-window .resize-handle[data-direction*="-"] {
            width: 16px;
            height: 16px
        }

        .kopernica-window .resize-handle[data-direction="top-left"] {
            top: -8px;
            left: -8px;
            cursor: nw-resize
        }

        .kopernica-window .resize-handle[data-direction="top-right"] {
            top: -8px;
            right: -8px;
            cursor: ne-resize
        }

        .kopernica-window .resize-handle[data-direction="bottom-left"] {
            bottom: -8px;
            left: -8px;
            cursor: sw-resize
        }

        .kopernica-window .resize-handle[data-direction="bottom-right"] {
            bottom: -8px;
            right: -8px;
            cursor: se-resize
        }

        .kopernica-window .resize-handle:focus-visible {
            outline: 2px solid rgba(255, 255, 255, .65);
            outline-offset: -6px
        }

        .kopernica-window.maximized .resize-handle {
            display: none
        }

        .window-chrome {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 3px 4px 4px 9px;
            background: var(--chrome-gradient);
            color: var(--taskbar-button-text);
            cursor: grab;
            touch-action: none
        }

        .kopernica-window.is-dragging .window-chrome {
            cursor: grabbing
        }

        .window-title {
            display: flex;
            align-items: center;
            gap: .75rem;
            font-weight: 800;
            font-size: .95rem;
            letter-spacing: .08em;
            text-transform: uppercase
        }

        .window-title i {
            font-size: 1.1rem
        }

        .window-title__icon {
            width: 26px;
            height: 26px;
            object-fit: contain;
            filter: drop-shadow(0 6px 18px rgba(0, 0, 0, .18))
        }

        .window-controls {
            display: flex;
            align-items: center;
            gap: .45rem
        }

        .window-control {
            width: 28px;
            height: 28px;
            border-radius: 9px;
            border: 1px solid var(--window-control-border);
            background: var(--window-control-bg);
            color: var(--text);
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease
        }

        .window-control:hover {
            transform: translateY(-1px);
            background: var(--window-control-hover)
        }

        .window-control[data-window-action="close"] {
            background: var(--window-control-close-bg);
            border-color: color-mix(in srgb, var(--window-control-close-bg) 70%, #3b1414 30%);
            color: #fff
        }

        .window-control[data-window-action="close"]:hover {
            background: var(--window-control-close-hover)
        }

        .window-body {
            flex: 1;
            overflow: auto;
            padding: 0;
            background: var(--window-body-fallback);
            position: relative;
            display: flex;
            flex-direction: column;
            gap: clamp(16px, 2vw, 28px)
        }

        .window-body>.screen {
            position: static;
            display: flex;
            flex-direction: column;
            min-height: 0;
            width: 100%
        }

        .window-body .standalone-pane,
        .window-body .pane {
            width: 100%;
            margin: 0 auto;
            padding: 20px
        }

        .window-body .standalone-pane:only-child,
        .window-body .pane:only-child {
            min-height: 100%
        }

        .kopernica-window.is-performance-mode .window-body {
            background: var(--window-body-fallback)
        }

        .window-body .screen.is-active {
            overflow: auto
        }

        body.dark .window-body {
            background: linear-gradient(180deg, color-mix(in srgb, #1a2134 92%, #0d1528 8%), color-mix(in srgb, #1a2134 84%, #0d1528 16%))
        }

        .kopernica-window .wrap {
            max-width: 1180px;
            margin: 0 auto;
            padding: 0
        }

        body.embedded-mode {
            overflow: auto
        }

        body.embedded-mode .os-splash,
        body.embedded-mode .os-start-menu,
        body.embedded-mode .os-dock,
        body.embedded-mode .os-footer,
        body.embedded-mode .kopernica-desktop,
        body.embedded-mode #screenStorage {
            display: none !important
        }

        .embedded-screen-host {
            display: none;
            width: 100%;
            box-sizing: border-box;
            position: relative
        }

        body.embedded-mode .embedded-screen-host {
            display: flex;
            justify-content: center;
            align-items: flex-start;
            padding: 0;
            min-height: 100vh
        }

        body.embedded-mode .embedded-screen-host::before {
            content: "";
            position: fixed;
            inset: 0;
            pointer-events: none;
            z-index: -1;
            background: var(--kopernica-wallpaper)
        }

        .embedded-screen-host>.screen {
            position: static !important;
            display: block !important;
            opacity: 1 !important;
            transform: none !important;
            pointer-events: auto !important;
            width: 100%
        }

        #embeddedScreenHost div#osLoginOverlay {
            display: none
        }

        body.embedded-mode .os-login-overlay {
            position: static;
            top: auto;
            left: auto;
            right: auto;
            bottom: auto;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: clamp(3rem, 5vw, 4rem) clamp(1.5rem, 4vw, 2.5rem);
            background: var(--bg);
            box-shadow: none;
            min-height: 100vh
        }

        body.embedded-mode .os-login-overlay::before {
            display: none
        }

        body.embedded-mode .os-login-overlay.is-hidden {
            display: none !important
        }

        .app-shell {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
            width: 100%
        }

        .app-shell .breadcrumbs {
            background: rgba(255, 255, 255, .82);
            border-radius: 18px;
            padding: 10px 18px;
            box-shadow: 0 12px 28px rgba(12, 20, 38, .08);
            border: 1px var(--border-style) rgba(228, 232, 240, .7)
        }

        body.dark .app-shell .breadcrumbs {
            background: rgba(30, 38, 60, .82);
            border-color: rgba(71, 85, 105, .5)
        }

        @media (max-width:1080px) {
            .desktop-stage {
                flex-direction: column;
                padding: var(--desktop-top-gap) clamp(1.25rem, 4vw, 2rem) var(--desktop-bottom-padding);
            }

            .desktop-icons {
                grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
                padding-bottom: var(--desktop-bottom-gap)
            }

            .windows-layer {
                margin-left: 0
            }
        }

        @media (max-width:640px) {
            .desktop-icon {
                padding: 0
            }

            .desktop-icon__glyph {
                width: 60px;
                height: 60px
            }

            .desktop-icon__glyph i {
                font-size: 1.9rem
            }

            .desktop-icon__glyph img {
                width: 100%;
                height: 100%;
            }
        }

        .wrap {
            max-width: 1180px;
            margin: 24px auto 64px;
            padding: 0 16px
        }

        .breadcrumbs {
            display: flex;
            align-items: center;
            gap: 12px;
            margin: 12px 0 24px;
            font-size: 13px;
            color: var(--muted)
        }

        .breadcrumbs.is-empty {
            display: none
        }

        .breadcrumbs__label {
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: .08em;
            font-size: 11px
        }

        .breadcrumbs__list {
            display: flex;
            align-items: center;
            gap: 6px;
            list-style: none;
            margin: 0;
            padding: 0;
            flex-wrap: wrap
        }

        .breadcrumbs__item {
            display: flex;
            align-items: center;
            gap: 6px
        }

        .breadcrumbs__item::after {
            content: '›';
            opacity: .6
        }

        .breadcrumbs__item:last-child::after {
            display: none
        }

        .breadcrumbs__link {
            border: 1px var(--border-style) transparent;
            border-radius: 12px;
            padding: 6px 10px;
            background: transparent;
            color: inherit;
            cursor: pointer;
            font: inherit;
            transition: background-color .2s, border-color .2s
        }

        .breadcrumbs__link:hover {
            background: var(--ghost);
            border-color: var(--line)
        }

        .breadcrumbs__current {
            font-weight: 800;
            color: var(--text)
        }

        .muted {
            color: var(--muted);
            font-size: 12px
        }

        .card {
            background: var(--card);
            border-radius: 0 0 20px 28px;
            box-shadow: var(--shadow);
            border: 1px solid var(--line);
            overflow: hidden
        }

        .card__header {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 18px;
            padding-bottom: 18px;
            margin-bottom: 20px;
            border-bottom: 1px var(--border-style) var(--line);
            background: var(--card-head-bg)
        }

        .card__title-stack {
            display: flex;
            flex-direction: column;
            gap: 6px;
            margin-bottom: 20px;
            padding-bottom: 18px;
            border-bottom: 1px var(--border-style) var(--line);
            background: var(--card-head-bg)
        }

        .card__header .card__title-stack {
            margin-bottom: 0;
            padding-bottom: 0;
            border-bottom: 0;
            background: transparent
        }

        .card__title {
            font-size: 20px;
            font-weight: 800;
            letter-spacing: .2px;
            display: flex;
            align-items: center;
            gap: 10px;
            margin-bottom: 20px;
            padding-bottom: 18px;
            border-bottom: 1px var(--border-style) var(--line);
            background: var(--card-head-bg)
        }

        .card__header .card__title {
            margin-bottom: 0;
            padding-bottom: 0;
            border-bottom: 0;
            background: transparent
        }

        .card__subtitle {
            color: var(--muted);
            font-size: 12px
        }

        .card__title-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 10px
        }

        .card__body {
            padding: 12px;
            background: var(--card-body-bg)
        }

        .card__body.pane--translucent {
            background: color-mix(in srgb, var(--bg) 82%, transparent)
        }

        .card__foot {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 12px;
            padding: 16px 20px 20px;
            border-top: 1px var(--border-style) var(--line);
            background: var(--card-foot-bg)
        }

        .section {
            margin-top: 16px;
            padding-top: 14px;
            border-top: 1px var(--border-style) var(--line)
        }

        .section__title {
            font-size: 14px;
            font-weight: 800;
            color: var(--muted);
            margin-bottom: 10px;
            display: flex;
            gap: 8px;
            align-items: center
        }

        .tool-launchers {
            display: flex;
            flex-wrap: wrap;
            gap: 10px
        }

        .tool-launchers .btn {
            flex: 1 1 180px;
            justify-content: flex-start;
            padding-left: 14px;
            padding-right: 14px
        }

        .tool-launchers .btn i {
            font-size: 16px
        }

        .grid {
            display: grid;
            gap: 14px
        }

        .grid--2 {
            grid-template-columns: 1fr 300px
        }

        .grid--3 {
            grid-template-columns: 1fr 80px 1fr
        }

        .grid--inline {
            grid-template-columns: 240px auto;
            align-items: end
        }

        .row {
            margin-bottom: 10px
        }

        .row-split {
            display: grid;
            grid-template-columns: 1fr 260px;
            gap: 14px;
            align-items: end
        }

        .row-split-3 {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            gap: 14px;
            align-items: end
        }

        .row-split-4 {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr 260px;
            gap: 14px;
            align-items: end
        }

        .keyword-link {
            display: grid;
            grid-template-columns: 150px 1fr 150px 1fr auto;
            gap: 12px;
            align-items: center
        }

        .dictionary-picker {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            align-items: flex-end
        }

        .dictionary-picker select {
            flex: 1 1 260px;
            min-width: 220px
        }

        .dictionary-picker .btn {
            flex: 0 0 auto
        }

        section#screen-link-keywords .fieldset {
            border: none;
            padding: 0
        }

        section#screen-sensors {
            height: 100%;
        }

        section#screen-dictionary {
            height: 100%;
        }

        .actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            align-items: center;
            row-gap: 8px;
        }

        .insight-form .actions {
            flex-wrap: wrap;
            justify-content: flex-end
        }

        label {
            display: block;
            font-size: 12px;
            color: var(--muted);
            margin-bottom: 6px;
            font-weight: 700;
            letter-spacing: .2px
        }

        .ctrl {
            width: 100%;
            appearance: none;
            background: var(--input-bg);
            border: 1px var(--border-style) var(--input-border);
            border-radius: var(--radius-sm);
            padding: 12px 12px;
            outline: none;
            font-size: 14px;
            transition: border-color .2s, box-shadow .2s, background-color .25s, filter .15s
        }

        .ctrl:hover {
            filter: brightness(.98)
        }

        .ctrl:focus {
            border-color: var(--input-focus);
            box-shadow: 0 0 0 4px rgba(63, 63, 70, .12)
        }

        textarea.ctrl {
            min-height: 84px;
            resize: vertical
        }

        .rtf-editor {
            border: 1px var(--border-style) var(--input-border);
            border-radius: var(--radius-sm);
            background: var(--input-bg);
            padding: 12px;
            transition: border-color .2s, box-shadow .2s, background-color .25s;
            margin-top: 4px;
            max-width: 100%;
            overflow-x: hidden;
            box-sizing: border-box
        }

        .rtf-editor.is-focused {
            border-color: var(--input-focus);
            box-shadow: 0 0 0 4px rgba(63, 63, 70, .12)
        }

        .rtf-toolbar {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 12px;
            margin-bottom: 12px;
            padding: 10px;
            border: 1px var(--border-style) var(--line);
            border-radius: var(--radius-sm);
            background: var(--ghost);
            box-shadow: inset 0 1px 0 rgba(0, 0, 0, .04)
        }

        .rtf-toolbar .rtf-buttons {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 8px
        }

        .rtf-headings {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 8px
        }

        .rtf-headings__label {
            font-size: 11px;
            font-weight: 800;
            color: var(--muted);
            text-transform: uppercase;
            letter-spacing: .05em
        }

        .rtf-headings__buttons {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 6px
        }

        .rtf-headings__buttons .rtf-btn {
            width: 38px;
            height: 38px;
            min-width: 38px;
            justify-content: center;
            font-weight: 800;
            font-size: 11px;
            padding: 0
        }

        .rtf-toolbar label {
            display: flex;
            align-items: center;
            gap: 6px;
            font-size: 12px;
            font-weight: 700;
            color: var(--muted);
            margin-bottom: 0px
        }

        .rtf-toolbar select {
            border: 1px var(--border-style) var(--input-border);
            border-radius: 8px;
            padding: 6px 10px;
            font-size: 12px;
            background: var(--card);
            color: var(--text);
            cursor: pointer;
            transition: border-color .2s, background-color .2s, filter .15s
        }

        .rtf-toolbar button {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            border: 1px var(--border-style) var(--input-border);
            border-radius: 8px;
            padding: 6px 12px;
            font-size: 12px;
            font-weight: 700;
            background: var(--card);
            color: var(--text);
            cursor: pointer;
            transition: background-color .2s, border-color .2s, color .2s, filter .15s, box-shadow .2s
        }

        .rtf-toolbar .rtf-buttons .rtf-btn {
            width: 38px;
            height: 38px;
            padding: 0;
            justify-content: center;
            gap: 0
        }

        .rtf-toolbar .rtf-buttons .rtf-btn i {
            font-size: 14px
        }

        .rtf-toolbar .rtf-buttons .rtf-btn .visually-hidden {
            margin: 0
        }

        .rtf-toolbar button:hover {
            filter: brightness(.97);
            box-shadow: 0 2px 6px rgba(0, 0, 0, .08)
        }

        .rtf-toolbar button:active {
            filter: brightness(.92)
        }

        .rtf-toolbar button.is-active {
            background: var(--primary);
            color: var(--primary-contrast);
            border-color: var(--primary);
            box-shadow: 0 3px 8px rgba(0, 0, 0, .16)
        }

        .rtf-toolbar button i {
            font-size: 13px
        }

        .rtf-toolbar .rtf-color input {
            width: 38px;
            height: 38px;
            border: 1px var(--border-style) var(--input-border);
            border-radius: 8px;
            padding: 0;
            background: var(--card);
            cursor: pointer;
            transition: border-color .2s, background-color .2s, box-shadow .2s
        }

        .rtf-toolbar .rtf-color input:hover {
            box-shadow: 0 2px 6px rgba(0, 0, 0, .08)
        }

        .rtf-content {
            min-height: 140px;
            border: 1px var(--border-style) var(--line);
            border-radius: var(--radius-sm);
            padding: 12px;
            background: var(--card);
            color: var(--text);
            font-size: 14px;
            line-height: 1.45;
            outline: none;
            white-space: pre-wrap;
            word-break: break-word;
            overflow-wrap: break-word;
            box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.02);
            transition: border-color .2s, background-color .25s;
            max-width: 100%;
            overflow-x: auto;
            box-sizing: border-box
        }

        .rtf-editor.is-focused .rtf-content {
            border-color: var(--input-focus)
        }

        .rtf-content.is-empty::before {
            content: attr(data-placeholder);
            color: var(--muted);
            pointer-events: none
        }

        .rtf-content p {
            margin: 0 0 8px
        }

        .rtf-content p:last-child {
            margin-bottom: 0
        }

        .rtf-content h1 {
            font-size: 20px;
            margin: 0 0 10px;
            font-weight: 800
        }

        .rtf-content h2 {
            font-size: 18px;
            margin: 0 0 10px;
            font-weight: 800
        }

        .rtf-content h3 {
            font-size: 16px;
            margin: 0 0 10px;
            font-weight: 800
        }

        .rtf-content h4 {
            font-size: 15px;
            margin: 0 0 10px;
            font-weight: 800
        }

        .rtf-content ul,
        .rtf-content ol {
            margin: 0 0 10px 20px;
            padding-left: 16px
        }

        .rtf-content ul:last-child,
        .rtf-content ol:last-child {
            margin-bottom: 0
        }

        .rtf-content li {
            margin-bottom: 6px
        }

        .rtf-content li:last-child {
            margin-bottom: 0
        }

        .rtf-content * {
            max-width: 100%;
            overflow-wrap: break-word;
            word-wrap: break-word;
            box-sizing: border-box
        }

        .rtf-source {
            position: absolute !important;
            left: -9999px !important;
            width: 1px !important;
            height: 1px !important;
            opacity: 0 !important;
            pointer-events: none !important
        }

        select.ctrl {
            background-image: linear-gradient(45deg, transparent 50%, #6b7280 50%), linear-gradient(135deg, #6b7280 50%, transparent 50%);
            background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 14px) calc(50% - 2px);
            background-size: 6px 6px, 6px 6px;
            background-repeat: no-repeat;
            padding-right: 36px
        }

        body.dark .ctrl {
            color: #fff
        }

        input[type="checkbox"] {
            accent-color: var(--primary)
        }

        body.login-required .kopernica-desktop {
            pointer-events: none;
            user-select: none;
            filter: blur(10px) grayscale(.6);
            transition: filter .35s ease
        }

        .os-dock {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            height: 55px;
            display: flex;
            align-items: center;
            gap: 0;
            background: var(--chrome-gradient);
            border-bottom: 1px solid var(--taskbar-border);
            box-shadow: 0 22px 44px rgba(12, 18, 44, .32);
            pointer-events: auto;
            transition: opacity .35s ease, transform .35s ease;
            z-index: 1200
        }

        .os-dock__left,
        .os-dock__right {
            display: flex;
            align-items: center;
            gap: 1rem;
            pointer-events: auto
        }

        .os-dock__tasks {
            flex: 1;
            display: flex;
            align-items: center;
            gap: .75rem;
            padding: 0 .5rem;
            overflow-x: auto;
            overflow-y: hidden;
            scrollbar-width: thin
        }

        .os-dock__tasks::-webkit-scrollbar {
            height: 6px
        }

        .os-dock__tasks::-webkit-scrollbar-thumb {
            background: rgba(255, 255, 255, .22);
            border-radius: 999px
        }

        .os-launcher {
            position: relative;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 48px;
            height: 48px;
            margin-left: 7px;
            padding: 0;
            border-radius: 14px;
            border: 1px solid var(--launcher-border);
            background: var(--launcher-bg);
            color: var(--launcher-icon-color);
            box-shadow: var(--launcher-shadow);
            cursor: pointer;
            transition: transform .25s ease, box-shadow .25s ease, background .25s ease
        }

        .os-launcher__icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            height: 100%;
            border-radius: 14px;
            color: #fff;
            font-size: 1.35rem;
            text-shadow: 0 10px 26px rgba(0, 0, 0, .35)
        }

        .os-launcher__icon i {
            filter: drop-shadow(0 6px 18px rgba(0, 0, 0, .42))
        }

        .os-launcher:hover,
        .os-launcher:focus-visible {
            transform: translateY(-2px) scale(1.02);
            box-shadow: var(--launcher-shadow), 0 28px 64px rgba(0, 0, 0, .32);
            background: var(--launcher-hover-bg, var(--launcher-bg));
            color: var(--launcher-hover-icon, var(--launcher-icon-color))
        }

        .os-launcher:focus-visible {
            outline: 2px solid rgba(255, 255, 255, .85);
            outline-offset: 4px
        }

        body.login-required .os-dock {
            filter: none;
            opacity: 1;
            pointer-events: auto
        }

        body.login-required .os-launcher {
            opacity: 0;
            pointer-events: none;
            transform: translateY(-12px)
        }

        .os-dock__clock {
            font-variant-numeric: tabular-nums;
            font-weight: 700;
            letter-spacing: .08em;
            padding: .45rem 1.15rem;
            border-radius: 999px;
            background: var(--taskbar-button-bg);
            box-shadow: var(--taskbar-button-shadow);
            color: var(--taskbar-button-text)
        }

        .os-dock__wifi {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 44px;
            height: 44px;
            border-radius: 16px;
            background: var(--taskbar-button-bg);
            box-shadow: var(--taskbar-button-shadow);
            color: var(--taskbar-button-text);
            transition: background .2s ease, color .2s ease, transform .2s ease
        }

        div#osTaskbarItems {
            padding: 16px
        }

        .os-dock__wifi i {
            font-size: 1.1rem;
            filter: drop-shadow(0 8px 16px rgba(0, 0, 0, .35))
        }

        .os-dock__wifi:hover {
            transform: translateY(-2px)
        }

        .os-dock__wifi.is-online {
            background: rgba(16, 68, 40, .55);
            color: #6ff3a3
        }

        .os-dock__wifi.is-offline {
            background: rgba(86, 18, 28, .55);
            color: #ff8a8a
        }

        .taskbar-button {
            display: inline-flex;
            align-items: center;
            gap: .6rem;
            padding: .4rem .9rem;
            border-radius: 14px;
            border: none;
            background: var(--taskbar-button-bg);
            color: var(--taskbar-button-text);
            font-weight: 700;
            letter-spacing: .08em;
            text-transform: uppercase;
            cursor: pointer;
            box-shadow: var(--taskbar-button-shadow);
            transition: background .2s ease, box-shadow .2s ease, transform .2s ease;
            min-width: 0
        }

        .taskbar-button__icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 28px;
            height: 28px;
            border-radius: 10px;
            background: var(--accent-soft);
            box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .1);
            color: var(--taskbar-button-text);
            overflow: hidden
        }

        .taskbar-button__icon i {
            font-size: .9rem
        }

        .taskbar-button__icon img {
            width: 22px;
            height: 22px;
            object-fit: contain;
            filter: drop-shadow(0 4px 12px rgba(0, 0, 0, .18))
        }

        .taskbar-button__label {
            font-size: .75rem;
            letter-spacing: .1em;
            text-transform: uppercase
        }

        .taskbar-button:hover,
        .taskbar-button:focus-visible {
            background: var(--taskbar-button-active);
            transform: translateY(-2px);
            box-shadow: var(--taskbar-button-shadow), 0 8px 16px rgba(0, 0, 0, .25);
            outline: none
        }

        .taskbar-button.is-active {
            background: var(--taskbar-button-active);
            box-shadow: var(--taskbar-button-shadow), 0 10px 18px rgba(0, 0, 0, .32)
        }

        .taskbar-button.is-active .taskbar-button__icon {
            background: var(--accent-soft-strong)
        }

        .os-start-menu {
            position: fixed;
            left: clamp(1rem, 3vw, 2rem);
            top: calc(var(--taskbar-height) + 16px);
            width: min(var(--start-menu-width), calc(100% - clamp(2rem, 8vw, 4rem)));
            opacity: 0;
            pointer-events: none;
            transform: translateY(-16px);
            transition: opacity .25s ease, transform .25s ease;
            z-index: 1250
        }

        .os-start-menu.is-open {
            opacity: 1;
            pointer-events: auto;
            transform: translateY(0)
        }

        body.login-required .os-start-menu {
            display: none
        }

        .os-start-menu__header {
            display: flex;
            align-items: center;
            gap: .75rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: .14em;
            color: #fff !important;
        }

        .os-start-menu__header,
        .os-start-menu__header * {
            color: #fff !important;
        }

        .os-start-menu__header i {
            font-size: 1.4rem;
            color: #fff !important;
        }

        .os-start-menu__panel {
            background: var(--start-menu-surface, var(--chrome-gradient));
            border-radius: 26px;
            border: 1px solid var(--start-menu-border, var(--accent-soft-strong));
            box-shadow: var(--start-menu-shadow);
            padding: 24px;
            color: var(--start-menu-text, #f1f6ff);
            display: flex;
            flex-direction: column;
            gap: 18px;
            max-height: calc(100vh - var(--taskbar-height) - 32px);
            overflow: auto;
            scrollbar-width: thin;
            scrollbar-color: var(--start-menu-scrollbar) var(--start-menu-scrollbar-track);
            scrollbar-gutter: stable both-edges
        }

        .os-start-menu__panel::-webkit-scrollbar {
            width: 12px
        }

        .os-start-menu__panel::-webkit-scrollbar-track {
            background: var(--start-menu-scrollbar-track, rgba(15, 30, 60, .2));
            border-radius: 999px
        }

        .os-start-menu__panel::-webkit-scrollbar-thumb {
            background-color: var(--start-menu-scrollbar, rgba(255, 255, 255, .32));
            border-radius: 999px
        }

        .os-start-menu__user {
            display: flex;
            align-items: center;
            gap: 14px;
            padding: 14px 16px;
            border-radius: 18px;
            letter-spacing: .14em;
            color: #fff;
            border: 1px solid var(--start-menu-item-border);
            background: var(--start-menu-item-bg);
            box-shadow: 0 16px 32px rgba(6, 18, 46, .28);
            color: var(--start-menu-text, #f1f6ff);
            font-size: 1.4rem;
            color: #fff;
            min-height: 78px
        }

        .os-start-menu__user-row {
            position: static;
            top: auto;
            padding: 0;
            display: flex;
            align-items: center;
            gap: 0;
            flex-wrap: nowrap
        }

        .os-start-menu__icon-button {
            display: inline-flex;
            align-items: center;
            width: 48px;
            height: 48px;
            margin-left: 7px;
            height: 78px;
            border-radius: 14px;
            border: 1px solid var(--start-menu-item-border);
            background: var(--start-menu-item-bg);
            color: var(--start-menu-text, #f1f6ff);
            box-shadow: 0 12px 24px rgba(6, 18, 46, .25);
            cursor: pointer;
            transition: transform .2s ease, box-shadow .2s ease, background .2s ease
        }

        .os-start-menu__icon-button:hover,
        .os-start-menu__icon-button:focus-visible {
            transform: translateY(-1px);
            box-shadow: 0 16px 32px rgba(6, 18, 46, .28);
            background: var(--start-menu-item-hover, var(--start-menu-item-bg))
        }

        .os-start-menu__icon-button:focus-visible {
            outline: 2px solid rgba(255, 255, 255, .85);
            outline-offset: 2px
        }

        button#startMenuEditProfile,
        button#startMenuLogout {
            width: 32px
        }

        div#signedAs {
            width: 100%
        }

        .os-start-menu__avatar {
            position: relative;
            width: 48px;
            height: 48px;
            border-radius: 16px;
            background: linear-gradient(135deg, color-mix(in srgb, #ffffff 70%, var(--start-menu-item-bg) 30%), var(--start-menu-item-bg));
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--start-menu-text, #1f2a3d);
            font-weight: 800;
            font-size: 1.1rem;
            text-transform: uppercase;
            overflow: hidden;
            box-shadow: 0 12px 24px rgba(0, 0, 0, .35);
            background-position: center;
            background-size: cover;
            background-repeat: no-repeat;
            transition: background .3s ease, color .3s ease, box-shadow .3s ease
        }

        .os-start-menu__avatar-image {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: inherit;
            display: none
        }

        .os-start-menu__avatar-initials {
            position: relative;
            z-index: 1;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            height: 100%
        }

        .os-start-menu__avatar.has-image .os-start-menu__avatar-image {
            display: block
        }

        .os-start-menu__avatar.has-image .os-start-menu__avatar-initials {
            display: none
        }

        .os-start-menu__avatar.has-image {
            background: none;
            color: transparent
        }

        body.dark .os-start-menu__avatar {
            background: linear-gradient(135deg, rgba(255, 255, 255, .18), var(--start-menu-item-bg, rgba(255, 255, 255, .08)));
            color: var(--start-menu-text, #e6f7ff)
        }

        body.dark .os-start-menu__avatar.has-image {
            background: none;
            color: transparent
        }

        .os-start-menu__user-info {
            display: flex;
            flex-direction: column;
            gap: 4px
        }

        .os-start-menu__user-label {
            font-size: .75rem;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: var(--start-menu-muted, rgba(241, 246, 255, .7))
        }

        .os-start-menu__user strong {
            font-size: 1rem;
            word-break: break-word
        }

        .os-dock__lang {
            display: inline-flex;
            align-items: center;
            gap: .5rem;
            padding: 4px 8px;
            border-radius: 12px;
            border: 0;
            background: transparent;
            color: var(--taskbar-button-text)
        }

        .os-dock__help {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 44px;
            height: 44px;
            border-radius: 14px;
            border: 0;
            background: var(--taskbar-button-bg);
            box-shadow: var(--taskbar-button-shadow);
            color: var(--taskbar-button-text);
            cursor: pointer;
            margin-right: 7px
        }

        .os-dock__help i {
            font-size: 25px
        }

        .os-dock__help:focus-visible {
            outline: 2px solid rgba(255, 255, 255, .85);
            outline-offset: 3px
        }

        .os-dock__lang-select {
            border: transparent;
            color: inherit;
            padding: .45rem 1.15rem;
            border-radius: 999px;
            background: var(--taskbar-button-bg);
            box-shadow: var(--taskbar-button-shadow);
            font: inherit;
            min-width: 110px
        }

        .os-start-menu__list {
            list-style: none;
            margin: 0;
            padding: 0;
            display: flex;
            flex-direction: column;
            gap: .9rem
        }

        .os-start-menu__entry {
            width: 100%;
            background: var(--start-menu-entry-bg, rgba(8, 16, 32, .3));
            border-radius: 22px
        }

        .os-start-menu__item {
            width: 100%;
            display: flex;
            align-items: flex-start;
            gap: 1rem;
            padding: 14px 16px;
            border-radius: 18px;
            border: 1px solid var(--start-menu-item-border);
            background: var(--start-menu-item-bg);
            color: var(--start-menu-text, inherit);
            font-size: .95rem;
            font-weight: 600;
            cursor: pointer;
            transition: background .2s ease, transform .2s ease, box-shadow .2s ease, color .2s ease
        }

        .os-start-menu__item i {
            font-size: 1.1rem;
            flex: none;
            margin-top: 4px
        }

        .os-start-menu__item:hover,
        .os-start-menu__item:focus-visible {
            background: var(--start-menu-item-hover);
            box-shadow: 0 18px 36px rgba(6, 18, 46, .32);
            transform: translateY(-2px)
        }

        .os-start-menu__item:focus-visible {
            outline: 2px solid rgba(255, 255, 255, .85);
            outline-offset: 3px
        }

        .os-start-menu__entry--select .os-start-menu__item,
        .os-start-menu__entry--themes .os-start-menu__item {
            cursor: default;
            background: var(--start-menu-item-bg, rgba(255, 255, 255, .08));
            box-shadow: none
        }

        .os-start-menu__item-body {
            display: flex;
            flex-direction: column;
            gap: 8px;
            align-items: flex-start;
            flex: 1
        }

        .os-start-menu__item--themes {
            display: grid;
            grid-template-columns: auto 1fr;
            column-gap: 1rem;
            row-gap: 12px;
            align-items: start
        }

        .os-start-menu__item--themes>i {
            grid-column: 1;
            grid-row: 1
        }

        .os-start-menu__item--themes .os-start-menu__item-body {
            grid-column: 2;
            grid-row: 1
        }

        .os-start-menu__theme-selector {
            grid-column: 1/-1;
            width: 100%;
            max-width: 100%;
            min-width: 0;
            justify-self: stretch
        }

        .os-start-menu__item-title {
            font-weight: 700
        }

        .os-start-menu__item-description {
            font-size: .8rem;
            color: var(--start-menu-muted, rgba(241, 246, 255, .7));
            line-height: 1.3
        }

        .os-start-menu__item--toggle {
            align-items: center
        }

        .os-start-menu__item--toggle .os-start-menu__item-body {
            gap: 6px
        }

        .os-start-menu__entry--toggle .os-start-menu__item {
            cursor: default
        }

        .os-start-menu__switch {
            position: relative;
            display: inline-flex;
            align-items: center;
            justify-content: flex-start;
            width: 54px;
            height: 30px;
            border-radius: 999px;
            border: 1px solid var(--start-menu-item-border);
            background: color-mix(in srgb, var(--start-menu-muted, rgba(241, 246, 255, .6)) 18%, transparent 82%);
            transition: background .2s ease, border .2s ease;
            flex: none
        }

        .os-start-menu__switch input {
            position: absolute;
            opacity: 0;
            width: 1px;
            height: 1px;
            margin: 0;
            border: 0;
            padding: 0;
            overflow: hidden;
            clip: rect(0 0 0 0)
        }

        .os-start-menu__switch-slider {
            position: absolute;
            inset: 0;
            border-radius: inherit;
            background: color-mix(in srgb, var(--start-menu-muted, rgba(241, 246, 255, .6)) 18%, transparent 82%);
            box-shadow: inset 0 0 0 1px rgba(6, 18, 46, .25);
            transition: background .2s ease, box-shadow .2s ease
        }

        .os-start-menu__switch-slider::after {
            content: "";
            position: absolute;
            width: 22px;
            height: 22px;
            border-radius: 50%;
            background: var(--start-menu-text, #f1f6ff);
            box-shadow: 0 10px 18px rgba(8, 16, 32, .35);
            top: 3px;
            left: 4px;
            transition: transform .2s ease, box-shadow .2s ease, background .2s ease
        }

        .os-start-menu__switch input:checked+.os-start-menu__switch-slider {
            background: color-mix(in srgb, var(--accent-stronger) 54%, var(--accent-strong) 46%);
            box-shadow: inset 0 0 0 1px rgba(8, 16, 32, .25)
        }

        .os-start-menu__switch input:checked+.os-start-menu__switch-slider::after {
            transform: translateX(22px);
            box-shadow: 0 10px 18px rgba(8, 16, 32, .28);
            background: var(--start-menu-item-bg, #f1f6ff)
        }

        .os-start-menu__switch input:focus-visible+.os-start-menu__switch-slider {
            outline: 2px solid rgba(255, 255, 255, .85);
            outline-offset: 2px
        }

        .os-start-menu__select {
            width: 100%;
            border-radius: 12px;
            border: 1px solid var(--start-menu-item-border);
            background: var(--start-menu-item-bg);
            color: var(--start-menu-text, #f1f6ff);
            padding: 10px 12px;
            font: inherit
        }

        html.is-low-performance,
        body.is-low-performance {
            --accent-glow: rgba(0, 0, 0, 0);
            --launcher-icon-glow: rgba(0, 0, 0, 0);
            --chrome-gradient: var(--chrome-flat, var(--bg));
            --start-menu-surface: var(--chrome-flat, var(--bg));
            --start-menu-overlay: none;
            --card-head-bg: var(--card);
            --card-foot-bg: var(--card);
            --card-body-bg: var(--card);
            --kopernica-wallpaper: linear-gradient(var(--lowp-bg, var(--bg)), var(--lowp-bg, var(--bg)));
            --window-body-fallback: var(--window-surface, var(--card))
        }

        body.is-low-performance {
            --lowp-surface: color-mix(in srgb, var(--card) 88%, var(--bg) 12%);
            --lowp-bg: color-mix(in srgb, var(--bg) 92%, #000000 8%);
            --lowp-light: color-mix(in srgb, var(--lowp-surface) 82%, #ffffff 18%);
            --lowp-mid: color-mix(in srgb, var(--lowp-surface) 70%, var(--bg) 30%);
            --lowp-dark: color-mix(in srgb, var(--lowp-surface) 40%, #000000 60%);
            --lowp-shadow: color-mix(in srgb, var(--lowp-dark) 75%, #000000 25%);
            --shadow: none;
            --taskbar-button-shadow: none;
            --desktop-icon-shadow: none;
            --desktop-icon-hover-shadow: none;
            --launcher-shadow: none;
            --start-menu-shadow: none;
            --window-shadow: none;
            --window-shadow-unfocused: none;
            --btn-cancel-shadow: none;
            --chrome-flat: var(--lowp-mid);
            --window-surface: var(--lowp-surface);
            --window-border: var(--lowp-dark);
            --primary-hover: color-mix(in srgb, var(--primary) 85%, var(--lowp-dark) 15%);
            --input-bg: var(--lowp-light);
            --input-border: var(--lowp-dark);
            --input-focus: var(--primary);
            --radius: 0px;
            --radius-sm: 0px;
            --taskbar-border: color-mix(in srgb, var(--lowp-dark) 58%, var(--lowp-light) 42%);
            --taskbar-button-bg: var(--lowp-light);
            --taskbar-button-active: color-mix(in srgb, var(--lowp-mid) 62%, var(--lowp-dark) 38%);
            --taskbar-button-text: var(--text);
            --footer-text: var(--text);
            background-color: var(--lowp-bg) !important;
            color: var(--text)
        }

        body.light.is-low-performance {
            --lowp-surface: color-mix(in srgb, var(--accent-soft) 44%, var(--bg) 56%);
            --lowp-bg: color-mix(in srgb, var(--accent-stronger) 28%, var(--bg) 72%);
            --lowp-light: color-mix(in srgb, var(--lowp-surface) 70%, #ffffff 30%);
            --lowp-mid: color-mix(in srgb, var(--lowp-surface) 52%, var(--accent-soft) 48%);
            --lowp-dark: color-mix(in srgb, var(--accent-strong) 60%, var(--bg) 40%);
            --lowp-shadow: color-mix(in srgb, var(--accent-strong) 62%, rgba(0, 0, 0, .28) 38%);
            --chrome-flat: var(--lowp-surface);
            --window-surface: color-mix(in srgb, var(--lowp-surface) 92%, #ffffff 8%);
            --window-border: color-mix(in srgb, var(--lowp-dark) 58%, var(--lowp-light) 42%);
            --taskbar-button-bg: color-mix(in srgb, var(--lowp-light) 82%, var(--accent-soft) 18%);
            --taskbar-button-active: color-mix(in srgb, var(--lowp-mid) 68%, var(--lowp-dark) 32%);
            --start-menu-surface: var(--lowp-surface);
            --start-menu-border: color-mix(in srgb, var(--lowp-dark) 52%, var(--lowp-light) 48%);
            --start-menu-entry-bg: color-mix(in srgb, var(--lowp-mid) 78%, var(--lowp-light) 22%);
            --start-menu-item-bg: color-mix(in srgb, var(--lowp-light) 92%, var(--lowp-mid) 8%);
            --start-menu-item-hover: color-mix(in srgb, var(--lowp-mid) 82%, var(--lowp-dark) 18%);
            --start-menu-item-border: color-mix(in srgb, var(--lowp-dark) 56%, var(--lowp-light) 44%);
            --start-menu-text: var(--text);
            --start-menu-muted: color-mix(in srgb, var(--text) 62%, var(--lowp-light) 38%);
            --start-menu-scrollbar: color-mix(in srgb, var(--lowp-dark) 48%, var(--lowp-light) 52%);
            --start-menu-scrollbar-track: color-mix(in srgb, var(--lowp-light) 82%, var(--bg) 18%);
            --launcher-bg: var(--lowp-light);
            --launcher-border: color-mix(in srgb, var(--lowp-dark) 58%, var(--lowp-light) 42%);
            --launcher-hover-bg: color-mix(in srgb, var(--lowp-mid) 70%, var(--lowp-dark) 30%)
        }

        body.light.is-low-performance .os-dock,
        body.light.is-low-performance .os-footer {
            background-color: var(--chrome-flat, var(--lowp-surface)) !important
        }

        body.light.is-low-performance .os-start-menu__panel {
            background-color: var(--start-menu-surface, var(--lowp-surface)) !important
        }

        body.light.is-low-performance .os-start-menu__entry {
            background-color: var(--start-menu-entry-bg) !important
        }

        body.light.is-low-performance .os-start-menu__item {
            background-color: var(--start-menu-item-bg) !important
        }

        html.is-low-performance body,
        body.is-low-performance {
            background-attachment: scroll
        }

        html.is-low-performance body *,
        body.is-low-performance * {
            box-shadow: none !important;
            text-shadow: none !important;
            border-radius: 0 !important;
            background-image: none !important;
            backdrop-filter: none !important
        }

        body.is-low-performance::before,
        body.is-low-performance::after {
            display: none !important
        }

        body.is-low-performance .kopernica-desktop::before {
            background-color: var(--lowp-bg);
            background-image: linear-gradient(var(--lowp-bg), var(--lowp-bg));
            opacity: 1
        }

        html.is-low-performance body .os-splash__badge::before,
        html.is-low-performance body .os-splash__badge::after,
        body.is-low-performance .os-splash__badge::before,
        body.is-low-performance .os-splash__badge::after {
            display: none !important
        }

        body.is-low-performance .os-dock,
        body.is-low-performance .os-start-menu__panel,
        body.is-low-performance .os-footer {
            background: var(--chrome-flat, var(--bg)) !important;
            background-color: var(--chrome-flat, var(--bg)) !important;
            background-image: none !important;
            opacity: 1 !important
        }

        body.is-low-performance .window-chrome {
            background: var(--chrome-flat, var(--bg)) !important
        }

        body.is-low-performance .window-body {
            background: var(--window-surface) !important
        }

        body.is-low-performance .os-splash,
        body.is-low-performance .os-splash::before,
        body.is-low-performance .os-login-overlay,
        body.is-low-performance .os-login-overlay::before {
            background: var(--lowp-bg, var(--bg)) !important;
            background-image: none !important
        }

        body.is-low-performance .vista-login__aura {
            display: none !important
        }

        body.is-low-performance .vista-login__card,
        body.is-low-performance .vista-login__avatar,
        body.is-low-performance .os-splash__content,
        body.is-low-performance .os-splash__badge {
            background: var(--lowp-surface) !important;
            background-image: none !important;
            box-shadow: none !important
        }

        body.is-low-performance ::-webkit-scrollbar-thumb {
            background: var(--accent-strong) !important;
            box-shadow: none !important;
            border: 3px solid transparent
        }

        body.is-low-performance .kw-linker__overlay-path--selected,
        body.is-low-performance .kw-linker__overlay-endpoint--selected {
            filter: none
        }

        body.is-low-performance .pane,
        body.is-low-performance .standalone-pane,
        body.is-low-performance .card,
        body.is-low-performance .paper-list__item,
        body.is-low-performance .window,
        body.is-low-performance .window-body,
        body.is-low-performance .app-toolbar,
        body.is-low-performance .form-card {
            border-radius: 0 !important;
            background: var(--lowp-surface) !important;
            border: 2px solid var(--lowp-dark) !important;
            border-top-color: var(--lowp-light) !important;
            border-left-color: var(--lowp-light) !important;
            border-right-color: var(--lowp-shadow) !important;
            border-bottom-color: var(--lowp-shadow) !important;
            color: var(--text) !important
        }

        body.is-low-performance .window-chrome {
            background: color-mix(in srgb, var(--primary) 74%, var(--lowp-dark) 26%) !important;
            color: var(--primary-contrast, #ffffff) !important;
            border-radius: 0 !important;
            border: 2px solid var(--lowp-shadow) !important;
            border-bottom-color: var(--lowp-light) !important
        }

        body.is-low-performance .window-chrome .window-title {
            font-weight: 700;
            letter-spacing: .02em
        }

        body.is-low-performance .os-start-menu__panel,
        body.is-low-performance .os-footer,
        body.is-low-performance .os-dock {
            border-radius: 0 !important;
            border: 2px solid var(--lowp-dark) !important;
            border-top-color: var(--lowp-light) !important;
            border-left-color: var(--lowp-light) !important;
            border-right-color: var(--lowp-shadow) !important;
            border-bottom-color: var(--lowp-shadow) !important;
            color: var(--text) !important
        }

        body.is-low-performance .pane--translucent {
            background: var(--lowp-surface) !important
        }

        body.is-low-performance .btn,
        body.is-low-performance button,
        body.is-low-performance .button {
            border-radius: 0 !important;
            background: var(--lowp-surface) !important;
            color: var(--text) !important;
            border: 2px solid var(--lowp-dark) !important;
            border-top-color: var(--lowp-light) !important;
            border-left-color: var(--lowp-light) !important;
            border-right-color: var(--lowp-shadow) !important;
            border-bottom-color: var(--lowp-shadow) !important;
            box-shadow: none !important;
            filter: none !important
        }

        body.is-low-performance .btn:active,
        body.is-low-performance button:active,
        body.is-low-performance .button:active,
        body.is-low-performance .btn.is-active {
            background: var(--lowp-mid) !important;
            border-top-color: var(--lowp-shadow) !important;
            border-left-color: var(--lowp-shadow) !important;
            border-right-color: var(--lowp-light) !important;
            border-bottom-color: var(--lowp-light) !important
        }

        body.is-low-performance .btn:focus-visible,
        body.is-low-performance button:focus-visible,
        body.is-low-performance .button:focus-visible {
            outline: 1px dotted #000;
            outline-offset: 0
        }

        body.is-low-performance input,
        body.is-low-performance select,
        body.is-low-performance textarea,
        body.is-low-performance .ctrl {
            border-radius: 0 !important;
            background: var(--lowp-light) !important;
            color: var(--text) !important;
            border: 2px solid var(--lowp-dark) !important;
            border-top-color: var(--lowp-shadow) !important;
            border-left-color: var(--lowp-shadow) !important;
            border-right-color: var(--lowp-light) !important;
            border-bottom-color: var(--lowp-light) !important;
            box-shadow: none !important
        }

        body.is-low-performance input:focus-visible,
        body.is-low-performance select:focus-visible,
        body.is-low-performance textarea:focus-visible,
        body.is-low-performance .ctrl:focus-visible {
            outline: 1px dotted #000;
            outline-offset: 0
        }

        body.is-low-performance .os-start-menu__switch,
        body.is-low-performance .os-start-menu__switch-slider,
        body.is-low-performance .os-start-menu__switch-slider::after {
            border-radius: 0 !important;
            background: var(--lowp-surface) !important;
            box-shadow: none !important
        }

        body.is-low-performance .os-start-menu__switch-slider {
            border: 2px solid var(--lowp-dark) !important;
            border-top-color: var(--lowp-light) !important;
            border-left-color: var(--lowp-light) !important;
            border-right-color: var(--lowp-shadow) !important;
            border-bottom-color: var(--lowp-shadow) !important
        }

        body.is-low-performance .os-start-menu__switch-slider::after {
            top: 2px;
            left: 2px;
            width: 20px;
            height: 24px;
            border: 1px solid var(--lowp-dark) !important;
            border-top-color: var(--lowp-light) !important;
            border-left-color: var(--lowp-light) !important;
            border-right-color: var(--lowp-shadow) !important;
            border-bottom-color: var(--lowp-shadow) !important;
            background: var(--lowp-light) !important;
            color: var(--text) !important
        }

        body.is-low-performance .os-start-menu__switch input:checked+.os-start-menu__switch-slider::after {
            transform: translateX(26px)
        }

        body.is-low-performance .paper-list__title i {
            color: var(--text) !important
        }

        body.is-low-performance .paper-list__actions .btn {
            min-width: 32px
        }

        body.is-low-performance .app-toolbar__field label {
            color: var(--text) !important
        }

        .theme-selector {
            display: flex;
            flex-direction: column;
            gap: 18px;
            width: 100%
        }

        .theme-selector__group {
            display: flex;
            flex-direction: column;
            gap: 10px
        }

        .theme-selector__heading {
            font-size: .78rem;
            text-transform: uppercase;
            letter-spacing: .14em;
            color: rgba(241, 246, 255, .72);
            margin: 0
        }

        .theme-selector__options {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 12px;
            justify-items: stretch
        }

        .theme-chip {
            position: relative;
            display: grid;
            place-items: stretch;
            width: 100%;
            aspect-ratio: 1;
            border-radius: 18px;
            border: 2px solid transparent;
            background: color-mix(in srgb, #ffffff 20%, var(--bg) 80%);
            box-shadow: 0 16px 32px rgba(6, 18, 46, .28);
            overflow: hidden;
            cursor: pointer;
            padding: 0;
            transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease
        }

        .theme-chip__swatches {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            grid-template-rows: repeat(2, 1fr);
            width: 100%;
            height: 100%
        }

        .theme-chip__swatch {
            width: 100%;
            height: 100%;
            background: var(--swatch-color);
            transition: transform .2s ease
        }

        .theme-chip:hover .theme-chip__swatch,
        .theme-chip:focus-visible .theme-chip__swatch {
            transform: scale(1.02)
        }

        .theme-chip:hover,
        .theme-chip:focus-visible {
            transform: translateY(-2px);
            box-shadow: 0 12px 24px rgba(6, 18, 46, .45);
            border-color: var(--accent-soft-strong);
            outline: none
        }

        .theme-chip:focus-visible {
            outline: 2px solid var(--accent-strong);
            outline-offset: 4px
        }

        .theme-chip.is-active {
            border-color: var(--accent-strong);
            box-shadow: 0 24px 48px rgba(6, 18, 46, .5)
        }

        body.is-boot-active #osSplash {
            opacity: 0;
            visibility: hidden;
            pointer-events: none
        }

        .boot-screen {
            position: fixed;
            inset: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            background: #010301;
            color: #bfffd6;
            font-family: "IBM Plex Mono", "Source Code Pro", "Courier New", monospace;
            font-size: .94rem;
            line-height: 1.6;
            z-index: 3000;
            transition: opacity .3s ease, visibility .3s ease;
            opacity: 0;
            visibility: hidden;
            pointer-events: none
        }

        body.is-boot-active .boot-screen {
            opacity: 1;
            visibility: visible;
            pointer-events: auto
        }

        .boot-screen__crt {
            width: min(720px, 92vw);
            padding: 28px 32px 34px;
            background: #020b04;
            border: 3px solid rgba(111, 255, 188, .55);
            box-shadow: 0 38px 120px rgba(0, 0, 0, .9);
            display: flex;
            flex-direction: column;
            gap: 12px;
            position: relative;
            overflow: hidden
        }

        .boot-screen__crt::after {
            content: "";
            position: absolute;
            inset: 0;
            background-image: linear-gradient(rgba(111, 255, 188, .09) 50%, transparent 50%);
            background-size: 100% 3px;
            mix-blend-mode: screen;
            pointer-events: none;
            opacity: .6
        }

        .boot-screen__header {
            margin: 0;
            padding-bottom: 8px;
            border-bottom: 1px solid rgba(111, 255, 188, .35);
            letter-spacing: .24em;
            text-transform: uppercase;
            font-size: .82rem;
            color: #6fffbf
        }

        .boot-screen__title {
            display: inline-block;
            padding: 0 10px;
            background: #020b04
        }

        .boot-screen__brand {
            margin: 8px 0 4px;
            font-size: .88rem;
            letter-spacing: .08em;
            color: #9fffd4;
            text-transform: uppercase
        }

        .boot-screen__post {
            list-style: none;
            margin: 0;
            padding: 0;
            display: flex;
            flex-direction: column;
            gap: 6px
        }

        .boot-screen__post-line {
            opacity: 0;
            transform: translateY(8px);
            transition: opacity .2s ease, transform .2s ease;
            color: #bfffd6;
            white-space: pre-wrap
        }

        .boot-screen__post-line.is-visible {
            opacity: 1;
            transform: translateY(0)
        }

        .boot-screen__footer {
            margin-top: 16px;
            padding-top: 10px;
            border-top: 1px solid rgba(111, 255, 188, .35)
        }

        .boot-screen__status {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            font-size: .82rem;
            letter-spacing: .18em;
            text-transform: uppercase;
            color: #6fffbf
        }

        .boot-screen__cursor {
            display: inline-block;
            width: 10px;
            margin-left: 4px;
            animation: boot-cursor-blink 1s steps(1) infinite;
            opacity: 0
        }

        .boot-screen__cursor.is-live {
            opacity: 1
        }

        @keyframes boot-cursor-blink {

            0%,
            49% {
                opacity: 1
            }

            50%,
            100% {
                opacity: 0
            }
        }

        .os-splash {
            position: fixed;
            inset: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            background: radial-gradient(140% 140% at 18% 20%, rgba(var(--color-analog-right-rgb, 42, 110, 212), .58) 0%, rgba(var(--color-central-rgb, 19, 61, 140), .82) 48%, rgba(4, 12, 38, .96) 100%), var(--kopernica-wallpaper, var(--bg, #041338));
            background-color: var(--bg, #041338);
            z-index: 2000;
            transition: opacity .45s ease, visibility .45s ease
        }

        .os-splash::before {
            content: "";
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at 50% 0%, rgba(255, 255, 255, .32), rgba(255, 255, 255, 0) 60%);
            mix-blend-mode: screen;
            pointer-events: none
        }

        .os-splash.is-hidden {
            opacity: 0;
            display: none;
            pointer-events: none
        }

        .os-splash__content {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 18px;
            color: var(--primary-contrast, #f4f8ff);
            text-align: center;
            padding: 48px 36px;
            border-radius: 32px;
            background: linear-gradient(160deg, color-mix(in srgb, var(--primary) 65%, #050e1f 35%), color-mix(in srgb, #050e1f 70%, #000000 30%));
            box-shadow: 0 56px 120px rgba(2, 8, 24, .55);
            border: 1px solid color-mix(in srgb, #ffffff 24%, #050e1f 76%)
        }

        .os-splash__badge {
            position: relative;
            width: 130px;
            height: 130px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            background: radial-gradient(circle at 30% 25%, rgba(var(--color-analog-right-rgb, 140, 190, 255), .45), rgba(var(--color-central-rgb, 24, 64, 128), .9));
            box-shadow: 0 24px 48px rgba(0, 0, 0, .55)
        }

        .os-splash__icon i {
            font-size: 3.2rem;
            color: var(--primary-contrast, #f8fbff);
            filter: drop-shadow(0 10.8px 21.6px rgba(0, 0, 0, .45))
        }

        .os-splash__glow {
            position: absolute;
            inset: -12px;
            border-radius: inherit;
            border: 1px solid rgba(255, 255, 255, .32);
            box-shadow: 0 0 45px rgba(var(--color-analog-right-rgb, 130, 190, 255), .45)
        }

        .os-splash__title {
            font-size: 1.8rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: .22em;
            text-shadow: 0 18px 40px rgba(0, 0, 0, .5)
        }

        .os-splash__subtitle {
            font-size: 1rem;
            opacity: .82;
            max-width: 320px
        }

        .os-splash__loader {
            display: flex;
            align-items: center;
            gap: 12px
        }

        .os-splash__dot {
            width: 14px;
            height: 14px;
            border-radius: 50%;
            background: rgba(var(--color-analog-right-rgb, 255, 255, 255), .5);
            box-shadow: 0 0 18px rgba(var(--color-analog-right-rgb, 140, 190, 255), .55);
            animation: vista-pulse 1.2s infinite ease-in-out
        }

        .os-splash__dot:nth-child(2) {
            animation-delay: .15s
        }

        .os-splash__dot:nth-child(3) {
            animation-delay: .3s
        }

        .os-splash__dot:nth-child(4) {
            animation-delay: .45s
        }

        .os-splash__status {
            font-size: .95rem;
            letter-spacing: .08em;
            opacity: .72;
            color: var(--primary-contrast, #f4f8ff);
            white-space: nowrap
        }

        .os-splash__status-timer {
            display: inline-block;
            text-align: right;
            font-variant-numeric: tabular-nums;
            width: 8ch
        }

        @keyframes vista-pulse {

            0%,
            80%,
            100% {
                transform: scale(.6);
                opacity: .4
            }

            40% {
                transform: scale(1);
                opacity: 1
            }
        }

        body.is-splash-active .os-dock {
            opacity: 0;
            pointer-events: none;
            transform: translateY(-20px)
        }

        body.is-splash-active .os-login-overlay {
            opacity: 0;
            display: none;
            pointer-events: none
        }

        .os-login-overlay {
            --login-padding-top: clamp(6vh, 8vh, 10vh);
            --login-padding-x: clamp(1.5rem, 4vw, 4rem);
            --login-padding-bottom: clamp(4vh, 6vw, 6rem);
            position: fixed;
            top: var(--taskbar-height);
            left: 0;
            right: 0;
            bottom: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: var(--login-padding-top) var(--login-padding-x) calc(var(--desktop-bottom-gap) + var(--login-padding-bottom));
            background: radial-gradient(140% 140% at 20% 18%, rgba(var(--color-analog-right-rgb, 34, 112, 166), .52) 0%, rgba(var(--color-central-rgb, 19, 61, 140), .82) 48%, rgba(4, 12, 38, .96) 100%), var(--kopernica-wallpaper, var(--bg, #040c26));
            background-color: var(--bg, #040c26);
            z-index: 1150;
            transition: opacity .35s ease, visibility .35s ease;
            overflow: auto
        }

        .os-login-overlay::before {
            content: "";
            position: fixed;
            top: var(--taskbar-height);
            left: 0;
            right: 0;
            bottom: 0;
            background: linear-gradient(135deg, rgba(var(--color-analog-left-rgb, 255, 255, 255), .18) 0%, rgba(0, 0, 0, .45) 60%, rgba(0, 0, 0, .75) 100%);
            mix-blend-mode: soft-light;
            pointer-events: none
        }

        .os-login-overlay.is-hidden {
            opacity: 0;
            display: none;
            pointer-events: none
        }

        .os-login-overlay .screen {
            width: min(100%, 680px);
            margin: 0 auto
        }

        .screen--vista-login {
            width: 100%
        }

        .vista-login {
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0;
            min-height: calc(100vh - var(--taskbar-height) - clamp(8vh, 14vh, 16vh))
        }

        .vista-login__aura {
            position: absolute;
            inset: -30%;
            background: radial-gradient(circle at 50% 25%, rgba(110, 176, 255, .32), rgba(10, 28, 60, .78));
            filter: blur(90px);
            z-index: -1
        }

        .vista-login__card {
            position: relative;
            width: 100%;
            padding: 52px clamp(2rem, 5vw, 4rem) 46px;
            border-radius: 32px;
            background: linear-gradient(160deg, #13284a, #0a182f);
            border: 1px solid color-mix(in srgb, #ffffff 22%, #0a182f 78%);
            box-shadow: 0 46px 110px rgba(2, 8, 24, .58);
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 30px;
            color: #e8f0ff
        }

        body.dark .vista-login__card {
            background: rgba(6, 16, 36, .82);
            border-color: rgba(255, 255, 255, .18)
        }

        .vista-login__avatar {
            position: relative;
            width: 140px;
            height: 140px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            background: radial-gradient(circle at 35% 30%, rgba(130, 190, 255, .55), rgba(18, 52, 120, .95));
            box-shadow: 0 26px 52px rgba(0, 0, 0, .55)
        }

        .vista-login__avatar-ring {
            position: absolute;
            inset: -14px;
            border-radius: inherit;
            border: 1px solid rgba(255, 255, 255, .3);
            box-shadow: 0 0 35px rgba(130, 190, 255, .45);
            animation: orb-glow 4s ease-in-out infinite
        }

        .vista-login__avatar i {
            font-size: 3.4rem;
            color: #f8fbff;
            text-shadow: 0 18px 40px rgba(0, 0, 0, .45)
        }

        @keyframes orb-glow {

            0%,
            100% {
                opacity: .6;
                transform: scale(.98)
            }

            50% {
                opacity: 1;
                transform: scale(1.02)
            }
        }

        .vista-login__headline {
            text-align: center;
            display: flex;
            flex-direction: column;
            gap: 10px
        }

        .vista-login__title {
            font-size: 1.9rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: .12em;
            text-shadow: 0 18px 40px rgba(0, 0, 0, .45)
        }

        .vista-login__subtitle {
            font-size: 1rem;
            opacity: .85
        }

        .vista-login__form {
            width: 100%;
            display: flex;
            flex-direction: column;
            gap: 18px
        }

        .vista-login__field {
            display: flex;
            flex-direction: column;
            gap: 10px
        }

        .vista-login__label {
            font-weight: 700;
            letter-spacing: .04em
        }

        .vista-login__input {
            border-radius: 14px;
            border: 1px solid rgba(255, 255, 255, .35);
            background: rgba(8, 20, 44, .72);
            color: #f8fbff;
            padding: 14px 16px;
            font-size: 1rem;
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25);
            transition: border-color .2s ease, box-shadow .2s ease, background .2s ease
        }

        .vista-login__input:focus {
            outline: 0;
            border-color: rgba(125, 180, 255, .85);
            box-shadow: 0 0 0 3px rgba(90, 150, 255, .35)
        }

        .vista-login__password {
            position: relative;
            display: flex;
            align-items: center
        }

        .vista-login__toggle {
            position: absolute;
            right: 10px;
            top: 50%;
            transform: translateY(-50%);
            border-radius: 12px;
            border: 1px solid rgba(255, 255, 255, .32);
            background: rgba(255, 255, 255, .18);
            padding: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: background .2s ease, transform .2s ease
        }

        .vista-login__toggle i {
            color: #0f254c;
            font-size: 1rem
        }

        .vista-login__toggle:hover {
            background: rgba(255, 255, 255, .26);
            transform: translateY(-1px)
        }

        .vista-login__remember {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            font-size: .95rem;
            color: #d7e5ff;
            cursor: pointer;
            user-select: none
        }

        .vista-login__remember input {
            width: 18px;
            height: 18px;
            border-radius: 5px
        }

        .vista-login__footer {
            width: 100%;
            display: flex;
            justify-content: center
        }

        .vista-login__submit {
            padding: 14px 34px;
            border-radius: 28px;
            font-size: 1.05rem;
            font-weight: 700;
            box-shadow: 0 24px 48px rgba(0, 0, 0, .4)
        }

        @media (max-width:860px) {
            .os-login-overlay {
                --login-padding-top: clamp(5vh, 7vh, 9vh);
                --login-padding-x: clamp(1.25rem, 5vw, 2.5rem);
                --login-padding-bottom: clamp(3vh, 6vw, 5vh)
            }

            .vista-login__card {
                padding: 44px clamp(1.5rem, 5vw, 3rem) 38px
            }
        }

        @media (max-width:640px) {
            .os-start-menu {
                left: clamp(.75rem, 4vw, 1.25rem);
                width: calc(100% - clamp(1.5rem, 8vw, 2.5rem))
            }

            .os-launcher {
                width: 48px;
                height: 48px
            }

            .vista-login__card {
                gap: 26px
            }

            .vista-login__title {
                font-size: 1.6rem
            }
        }

        @media (max-width:520px) {
            .vista-login__card {
                padding: 36px 1.75rem 32px
            }

            .vista-login__avatar {
                width: 120px;
                height: 120px
            }

            .os-dock__clock {
                padding: .35rem .85rem
            }

            .os-launcher {
                width: 48px;
                height: 48px
            }
        }

        .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            border: 2px var(--border-style) var(--line);
            border-radius: 12px;
            padding: 10px 14px;
            font-size: 14px;
            font-weight: 800;
            cursor: pointer;
            user-select: none;
            text-decoration: none;
            background: var(--card);
            color: var(--text);
            transition: transform .02s ease-in, background-color .2s, border-color .2s, color .2s, filter .15s
        }

        .btn:hover {
            filter: brightness(.95)
        }

        .btn:active {
            transform: scale(.98);
            filter: brightness(.9)
        }

        button:disabled,
        .btn:disabled {
            opacity: .1
        }

        .btn--primary {
            background: var(--primary);
            color: var(--primary-contrast);
            border-style: solid
        }

        .btn--primary:hover {
            background: var(--primary-hover)
        }

        .btn--accent {
            background: var(--primary);
            color: var(--primary-contrast);
            border-style: solid
        }

        .btn--accent:hover {
            background: var(--primary-hover)
        }

        .btn--ghost {
            background: var(--ghost)
        }

        .btn--soft {
            background: var(--soft)
        }

        .btn.is-loading {
            position: relative;
            cursor: progress;
            padding-right: 32px
        }

        .btn.is-loading i {
            opacity: 0
        }

        .btn.is-loading::after {
            content: "";
            position: absolute;
            right: 12px;
            top: 50%;
            width: 14px;
            height: 14px;
            border-radius: 50%;
            border: 2px solid currentColor;
            border-top-color: transparent;
            transform: translateY(-50%);
            animation: button-spin .8s linear infinite
        }

        .btn--cancel {
            background: var(--window-control-close-bg);
            color: #fff;
            border-color: color-mix(in srgb, var(--window-control-close-bg) 70%, #3b1414 30%);
            box-shadow: var(--btn-cancel-shadow)
        }

        .btn--cancel:hover {
            background: var(--window-control-close-hover);
            filter: none
        }

        .btn--cancel i {
            color: inherit
        }

        .btn--icon {
            width: 40px;
            height: 40px;
            padding: 0;
            font-weight: 900
        }

        @keyframes button-spin {
            from {
                transform: translateY(-50%) rotate(0deg);
            }

            to {
                transform: translateY(-50%) rotate(360deg);
            }
        }

        .insight-form.is-busy {
            position: relative
        }

        .insight-form.is-busy::after {
            content: "";
            position: absolute;
            inset: 0;
            border-radius: inherit;
            background: color-mix(in srgb, var(--card) 35%, transparent);
            pointer-events: none;
            opacity: .35;
            z-index: 1
        }

        .insight-form.is-busy .form-actions {
            opacity: 1
        }

        .insight-form.is-busy .insight-submit {
            cursor: progress
        }

        .paper-processing-indicator {
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 12px 16px;
            margin-top: 16px;
            border-radius: 16px;
            border: 1px solid var(--paper-processing-border);
            background: var(--paper-processing-bg);
            color: var(--text);
            font-weight: 600;
            transition: opacity .2s ease, background .2s ease
        }

        .paper-processing-indicator[hidden] {
            display: none !important
        }

        .paper-processing-indicator.is-waiting {
            background: var(--paper-processing-wait-bg)
        }

        .paper-processing-indicator__spinner {
            width: 18px;
            height: 18px;
            border-radius: 50%;
            border: 3px solid color-mix(in srgb, var(--accent-strong) 45%, var(--paper-processing-border) 55%);
            border-top-color: var(--accent-stronger);
            animation: paper-processing-spin .9s linear infinite
        }

        .paper-processing-indicator__text {
            font-size: .92rem
        }

        @keyframes paper-processing-spin {
            to {
                transform: rotate(360deg)
            }
        }

        .bubble-heart {
            position: fixed;
            font-size: 20px;
            pointer-events: none;
            user-select: none;
            animation: heartfloat 3s linear forwards;
            color: var(--primary)
        }

        .os-footer {
            position: fixed;
            left: 0;
            right: 0;
            bottom: 0;
            height: 55px;
            padding: 0 clamp(1.5rem, 4vw, 3rem);
            display: flex;
            align-items: center;
            justify-content: center;
            background: var(--chrome-gradient);
            color: var(--footer-text);
            text-align: center;
            letter-spacing: .08em;
            text-transform: uppercase;
            font-size: .8rem;
            z-index: 1100;
            border-top: 1px solid var(--taskbar-border);
            box-shadow: 0 -22px 44px rgba(0, 0, 0, .26)
        }

        body.dark .os-footer {
            background: var(--chrome-gradient);
            border-top-color: var(--taskbar-border)
        }

        .os-footer__text {
            margin: 0
        }

        .os-footer__version {
            display: inline-flex;
            align-items: center;
            gap: .35em;
            margin-left: 1rem;
            letter-spacing: 0;
            text-transform: none;
            font-weight: 600
        }

        .os-footer__version-label {
            text-transform: uppercase;
            font-size: .75rem;
            opacity: .85;
            letter-spacing: .12em
        }

        .os-footer__version-number {
            font-variant-numeric: tabular-nums;
            font-size: .85rem;
            font-weight: 700
        }

        .toolbar {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            align-items: end;
            justify-content: space-between;
            margin-bottom: 10px;
            border-bottom: 1px var(--border-style) var(--line);
            padding-bottom: 12px
        }

        .filters {
            display: grid;
            grid-template-columns: 300px 180px 160px 160px;
            gap: 10px;
            align-items: end
        }

        .table-wrap {
            border: 1px var(--border-style) var(--line);
            border-radius: 12px;
            overflow: auto;
            max-height: 520px;
            background: var(--card)
        }

        .table-wrap table {
            table-layout: fixed
        }

        .toolbar .actions {
            position: relative
        }

        .col-chooser-anchor {
            position: relative;
            display: inline-flex;
            align-items: center
        }

        .col-chooser {
            display: none;
            position: absolute;
            top: 100%;
            left: 0;
            background: var(--card);
            color: var(--text);
            border: 1px var(--border-style) var(--line);
            border-radius: 12px;
            padding: 12px;
            box-shadow: var(--shadow);
            z-index: 10
        }

        .col-chooser label {
            display: flex;
            align-items: center;
            gap: 6px;
            font-size: 13px;
            margin-bottom: 6px
        }

        .col-chooser.is-open {
            display: block
        }

        table {
            width: 100%;
            border-collapse: separate;
            border-spacing: 0;
            font-size: 14px
        }

        thead th {
            position: sticky;
            top: 0;
            background: linear-gradient(0deg, rgba(0, 0, 0, .03), rgba(0, 0, 0, .03)), var(--card);
            font-weight: 800;
            text-align: left;
            border-bottom: 1px var(--border-style) var(--line);
            padding: 12px 12px;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis
        }

        tbody td {
            padding: 10px 12px;
            border-bottom: 1px var(--border-style) var(--line);
            vertical-align: middle
        }

        tbody tr:hover {
            background: var(--ghost)
        }

        .col-actions {
            width: 240px
        }

        .col-actions--icons {
            width: 140px;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 12px
        }

        td.table__actions {
            display: flex;
            justify-content: center;
            gap: 12px
        }

        .btn--icon {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 8px;
            border-radius: 12px;
            min-width: 40px;
            min-height: 40px
        }

        .btn--icon i {
            margin: 0;
            font-size: 16px
        }

        .badge {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            padding: 6px 10px;
            border-radius: 999px;
            border: 1px var(--border-style) var(--line);
            background: var(--ghost);
            font-weight: 700;
            font-size: 12px
        }

        .status--active {
            color: #065f46
        }

        .status--inactive {
            color: #7f1d1d
        }

        .ctx-pill {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            padding: 2px 8px;
            border: 1px var(--border-style) var(--line);
            background: var(--ghost);
            border-radius: 999px;
            font-size: 12px;
            margin-right: 6px
        }

        .avatar {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: linear-gradient(135deg, #e5e7eb, #cbd5e1);
            border: 1px var(--border-style) var(--line);
            background-size: cover;
            background-position: center
        }

        .avatar.has-image {
            border: 1px solid var(--line)
        }

        #avatarFileDrop {
            display: grid;
            grid-template-rows: auto auto;
            gap: 12px;
            width: 100%;
            max-width: 240px;
            padding: 0;
            border-radius: 16px;
            position: relative
        }

        #avatarFileDrop .file-drop-zone,
        #avatarFileDrop .file-preview {
            grid-row: 1;
            grid-column: 1;
            border-radius: 16px
        }

        #avatarFileDrop .file-drop-zone {
            display: flex;
            align-items: center;
            justify-content: center;
            aspect-ratio: 1
        }

        #avatarFileDrop .file-preview {
            overflow: hidden;
            pointer-events: none
        }

        #avatarFileDrop .file-preview img {
            width: 100%;
            height: 100%;
            object-fit: cover
        }

        #avatarFileDrop.has-file .file-drop-zone {
            opacity: 0
        }

        #avatarFileDrop .file-info {
            grid-row: 2;
            color: var(--muted);
            font-size: 12px
        }

        #avatarFileDrop .file-clear {
            grid-row: 2;
            justify-self: flex-end
        }

        .background-card {
            display: grid;
            gap: 24px;
            grid-template-columns: minmax(0, 1fr) minmax(0, 320px);
            align-items: flex-start;
            min-width: 0;
            overflow: auto;
        }

        .background-card__uploader {
            display: flex;
            flex-direction: column;
            gap: 12px
        }

        .background-card__label {
            font-size: 14px;
            font-weight: 700;
            color: var(--muted)
        }

        .background-card__drop {
            width: 100%;
            max-width: 420px
        }

        .background-card__hint {
            font-size: 13px;
            color: var(--muted)
        }

        .background-card__details {
            display: flex;
            flex-direction: column;
            gap: 12px;
            background: var(--ghost);
            border-radius: 16px;
            padding: 18px
        }

        .background-card__heading {
            font-size: 15px;
            font-weight: 700;
            color: var(--muted)
        }

        .background-card__list {
            margin: 0;
            padding-left: 1.2rem;
            display: flex;
            flex-direction: column;
            gap: 8px;
            font-size: 13px;
            color: var(--text)
        }

        .background-card__list li {
            line-height: 1.4
        }

        @media screen and (max-width:900px) {
            .background-card {
                grid-template-columns: 1fr
            }

            .background-card__drop {
                max-width: 100%
            }
        }

        .app-toolbar {
            display: flex;
            flex-direction: column;
            gap: 0
        }

        .app-toolbar__row {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            align-items: flex-end
        }

        .app-toolbar__row--actions {
            justify-content: flex-end;
            margin-top: 7px
        }

        .app-toolbar__field {
            display: flex;
            flex-direction: column;
            gap: 6px;
            min-width: 160px
        }

        .app-toolbar__field--grow {
            flex: 1 1 260px
        }

        .app-toolbar__actions {
            display: flex;
            gap: 8px;
            align-items: flex-end;
            margin-left: auto
        }

        .app-toolbar__actions--inline {
            margin-left: auto
        }

        .help-window__filter {
            display: flex;
            flex-direction: column;
            gap: 6px
        }

        .help-window__empty {
            font-size: 14px;
            color: var(--muted)
        }

        .help-window__section[hidden],
        .help-window__section.is-hidden {
            display: none
        }

        .help-window {
            display: flex;
            flex-direction: column;
            gap: 24px
        }

        .help-window__content {
            display: flex;
            flex-direction: column;
            gap: 24px
        }

        .help-window__intro {
            font-size: 15px;
            line-height: 1.6;
            color: var(--muted)
        }

        .help-window__section {
            display: flex;
            flex-direction: column;
            gap: 12px;
            background: var(--card);
            border-radius: 18px;
            padding: 20px;
            box-shadow: var(--shadow)
        }

        .help-window__section h2 {
            font-size: 16px;
            font-weight: 700;
            color: var(--text)
        }

        .help-window__section p {
            font-size: 14px;
            line-height: 1.6;
            color: var(--text)
        }

        .help-window__list {
            margin: 0;
            padding-left: 20px;
            display: flex;
            flex-direction: column;
            gap: 6px;
            font-size: 14px;
            line-height: 1.5;
            color: var(--text)
        }

        .help-window__list li {
            list-style: disc
        }

        .help-window__section--cta {
            background: var(--ghost);
            box-shadow: none;
            border: 1px solid var(--line)
        }

        body.dark .help-window__section--cta {
            border-color: rgba(255, 255, 255, .12)
        }

        .avatar-hint {
            font-size: 12px;
            color: var(--muted)
        }

        div#form-user-profile {
            height: 100%;
            overflow: scroll;
            padding-bottom: 50px;
        }

        div#form-user-background {
            height: 100%;
            overflow: scroll;
            padding-bottom: 50px;
        }

        .profile-card {
            display: grid;
            gap: 24px;
            min-width: 0;
            overflow: auto;
        }

        .profile-card .avatar-wrap {
            display: flex;
            flex-direction: column;
            gap: 12px;
            align-items: flex-start
        }

        .profile-card .avatar-label {
            font-size: 14px;
            font-weight: 700;
            color: var(--muted)
        }

        .profile-card .fields {
            display: grid;
            gap: 18px
        }

        .profile-card .row {
            display: flex;
            flex-direction: column;
            gap: 8px
        }

        .profile-card label {
            font-size: 14px;
            font-weight: 700;
            color: var(--muted)
        }

        .profile-card input {
            min-width: 0
        }

        .profile-card+.form-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            justify-content: flex-end
        }

        @media (min-width:720px) {
            .profile-card {
                grid-template-columns: minmax(0, 240px) minmax(0, 1fr)
            }
        }

        /* Related entities suggestion button styles */
        button.button.btn.btn--soft.related-entities__suggestion {
            margin: 3px;
            padding: 5px;
            opacity: 0.3;
            border-radius: 4px;
        }

        button.button.btn.btn--soft.related-entities__suggestion:hover {
            opacity: 1.0;
        }

        .user-create-form {
            display: flex;
            flex-direction: column;
            gap: 24px
        }

        .user-create-form .row {
            display: flex;
            flex-direction: column;
            gap: 8px
        }

        .user-create-form label {
            font-size: 14px;
            font-weight: 700;
            color: var(--muted)
        }

        .user-create-form .actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            justify-content: flex-end
        }

        .paper-editor {
            display: flex;
            flex-direction: column;
            gap: 24px
        }

        .paper-editor__header {
            display: none
        }

        .paper-editor__layout {
            display: flex;
            flex-wrap: wrap;
            gap: 24px;
            align-items: flex-start
        }

        .paper-editor__column {
            display: flex;
            flex-direction: column;
            gap: 24px;
            flex: 1 1 280px;
            min-width: 0
        }

        .paper-editor__column--file {
            flex: 0 1 540px;
            max-width: 540px;
            width: 100%;
            margin-left: auto
        }

        .paper-editor__layout>.paper-editor__column--file:first-child {
            margin-left: 0
        }

        @media (max-width:719px) {
            .paper-editor__column--file {
                margin-left: 0
            }
        }

        .paper-editor__column--fields {
            flex: 1 1 320px
        }

        .paper-editor__grid {
            display: grid;
            gap: 16px
        }

        @media (min-width:720px) {
            .paper-editor__grid {
                grid-template-columns: repeat(2, minmax(0, 1fr))
            }
        }

        .paper-editor .row {
            display: flex;
            flex-direction: column;
            gap: 8px
        }

        .paper-editor .actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            justify-content: flex-end
        }

        .paper-editor__column--fields>.actions {
            margin-left: auto
        }

        .paper-file-row {
            max-width: 540px;
            width: 100%
        }

        .paper-file-row .paper-file-input {
            display: flex;
            flex-direction: column;
            gap: 12px
        }

        .paper-file-inline-actions {
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-end;
            align-items: flex-start;
            gap: 8px;
            margin-top: 0
        }

        .paper-file-inline-actions .button {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 0;
            width: 44px;
            height: 44px;
            padding: 10px;
            border-radius: 12px;
            margin-top: 0
        }

        .fundamental-editor {
            display: flex;
            flex-direction: column;
            gap: 18px
        }

        .fundamentals-app__actions {
            margin-top: 7px
        }

        .fundamental-editor__summary {
            display: flex;
            flex-wrap: wrap;
            gap: 18px
        }

        .fundamental-editor__summary .column {
            flex: 1 1 240px;
            display: flex;
            flex-direction: column;
            gap: 8px
        }

        .fundamental-editor__titlebar {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            flex-wrap: wrap
        }

        .fundamental-editor__meta {
            display: flex;
            align-items: center;
            gap: 8px;
            flex-wrap: wrap;
        }

        .fundamental-editor__tabs {
            display: flex;
            flex-direction: column;
            gap: 18px
        }

        .fundamental-editor__tablist {
            display: flex;
            flex-wrap: wrap;
            gap: 0;
            border-bottom: 2.5px solid var(--primary);
            background: var(--ghost);
            margin-bottom: 8px;
        }

        .fundamental-editor__tab {
            border: none;
            background: none;
            color: var(--text);
            border-radius: 8px 8px 0 0;
            padding: 10px 28px 8px 28px;
            font-weight: 700;
            font-size: 1.05rem;
            cursor: pointer;
            margin-right: 2px;
            margin-bottom: -2.5px;
            position: relative;
            transition: background .2s, color .2s, border-color .2s;
            box-shadow: none;
            z-index: 1;
        }

        .fundamental-editor__tab[aria-selected="true"],
        .fundamental-editor__tab.is-active {
            background: var(--card);
            color: var(--primary);
            border-bottom: 2.5px solid var(--card);
            box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.04);
            z-index: 2;
        }

        .fundamental-editor__tab:not([aria-selected="true"]):not(.is-active):hover {
            background: var(--soft);
            color: var(--primary);
        }

        .fundamental-editor__tab[disabled] {
            opacity: 0.4;
            cursor: default;
            pointer-events: none;
        }

        .fundamental-editor__panel {
            display: flex;
            flex-direction: column;
            gap: 18px
        }

        .fundamental-editor__panel[hidden] {
            display: none
        }

        .fundamental-editor__panel-column {
            display: flex;
            flex-direction: column;
            gap: 18px
        }

        .widget-block {
            background: var(--ghost);
            border-radius: 18px;
            border: 1px solid color-mix(in srgb, var(--line) 80%, transparent);
            padding: 18px;
            display: flex;
            flex-direction: column;
            gap: 12px
        }

        .widget-block__header {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            align-items: flex-start;
            justify-content: space-between
        }

        .widget-block__header h3 {
            margin: 0;
            font-size: 1rem
        }

        .chip-list,
        .selected-items {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            min-height: 40px
        }

        .chip-list__empty,
        .selected-items__empty {
            font-size: .9rem;
            color: var(--muted)
        }

        .chip-list button,
        .selected-items button {
            border-radius: 999px;
            border: 1px solid var(--line);
            padding: 6px 10px;
            background: var(--card);
            font-size: .85rem;
            display: inline-flex;
            align-items: center;
            gap: 6px
        }

        .citations-widget {
            display: flex;
            flex-direction: column;
            gap: 12px
        }

        .citations-widget__chips {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin-top: 1rem;
        }

        #fundamentalDocumentsList.citations-widget__chips {
            flex-direction: column;
            flex-wrap: nowrap;
            align-items: stretch
        }

        #fundamentalPapersList.citations-widget__chips {
            flex-direction: column;
            flex-wrap: nowrap;
            align-items: stretch
        }

        #fundamentalDocumentsList .citations-widget__document-row {
            display: flex;
            gap: 8px;
            align-items: center;
            flex-wrap: wrap;
            width: 100%
        }

        #fundamentalPapersList .citations-widget__document-row {
            display: flex;
            gap: 8px;
            align-items: center;
            flex-wrap: wrap;
            width: 100%
        }

        #fundamentalDocumentsList .citations-widget__document-view {
            flex: 1 1 auto;
            justify-content: flex-start
        }

        #fundamentalPapersList .citations-widget__document-view {
            flex: 1 1 auto;
            justify-content: flex-start
        }

        #fundamentalDocumentsList hr {
            width: 100%;
            border: 0;
            border-top: 1px solid var(--line);
            margin: 6px 0
        }

        #fundamentalPapersList hr {
            width: 100%;
            border: 0;
            border-top: 1px solid var(--line);
            margin: 6px 0
        }

        .citations-widget__chip {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            border-radius: 999px;
            background: var(--card);
            border: 1px solid var(--line);
            padding: 6px 10px;
            font-size: .85rem
        }

        .citations-widget__search {
            display: flex;
            flex-direction: column;
            gap: 6px
        }

        .citations-widget__suggestions {
            max-height: 210px;
            overflow: auto;
            border: 1px solid var(--line);
            border-radius: 12px;
            padding: 6px;
            background: var(--card)
        }

        .search-field {
            display: flex;
            flex-direction: column;
            gap: 8px
        }

        .search-field input.ctrl {
            width: 100%
        }

        .search-results {
            display: flex;
            flex-direction: column;
            gap: 6px;
            border: 1px solid color-mix(in srgb, var(--line) 70%, transparent);
            border-radius: 12px;
            padding: 10px;
            background: var(--card);
            max-height: 220px;
            overflow: auto
        }

        .search-result {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 12px;
            padding: 6px 0;
            border-bottom: 1px solid color-mix(in srgb, var(--line) 50%, transparent)
        }

        .search-result:last-child {
            border-bottom: none
        }

        .search-result__info {
            display: flex;
            flex-direction: column;
            gap: 2px
        }

        .library-assistant {
            display: flex;
            flex-direction: column;
            gap: 12px
        }

        .library-assistant__messages {
            min-height: 180px;
            max-height: 320px;
            overflow: auto;
            border: 1px solid var(--line);
            border-radius: 12px;
            padding: 12px;
            display: flex;
            flex-direction: column;
            gap: 10px;
            background: var(--card)
        }

        .library-assistant__messages .message {
            border-radius: 12px;
            padding: 10px 12px;
            font-size: .9rem;
            line-height: 1.45
        }

        .library-assistant__messages .message--assistant {
            background: color-mix(in srgb, var(--primary) 14%, var(--card) 86%)
        }

        .library-assistant__messages .message--user {
            align-self: flex-end;
            background: color-mix(in srgb, var(--soft) 80%, transparent)
        }

        .widget-block__titlebar-actions {
            display: flex;
            align-items: center;
            gap: 8px
        }

        .library-assistant__options {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin: 6px 0 0
        }

        .library-assistant__option {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            font-size: .9rem
        }

        .ai-chat-message {
            display: flex;
            width: 100%
        }

        .ai-chat-message--user {
            justify-content: flex-end
        }

        .ai-chat-message--assistant {
            justify-content: flex-start
        }

        .ai-chat-message__bubble {
            position: relative;
            max-width: min(520px, 92%);
            border-radius: 12px;
            padding: 10px 12px;
            font-size: .9rem;
            line-height: 1.45;
            background: var(--card)
        }

        .ai-chat-message--assistant .ai-chat-message__bubble {
            background: color-mix(in srgb, var(--primary) 14%, var(--card) 86%)
        }

        .ai-chat-message--user .ai-chat-message__bubble {
            background: color-mix(in srgb, var(--soft) 80%, transparent)
        }

        .ai-chat-message__text {
            margin: 0;
            white-space: pre-wrap;
            word-break: break-word
        }

        .ai-chat-message__copy {
            position: absolute;
            right: 8px;
            bottom: 6px;
            width: 30px;
            height: 30px;
            padding: 0;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            opacity: 0;
            pointer-events: none
        }

        .ai-chat-message__bubble:hover .ai-chat-message__copy,
        .ai-chat-message__bubble:focus-within .ai-chat-message__copy {
            opacity: 1;
            pointer-events: auto
        }

        .ai-chat-message__copy i {
            font-size: 14px;
            line-height: 1
        }

        .library-assistant__composer {
            display: flex;
            flex-direction: column;
            gap: 8px
        }

        .library-assistant__composer-row {
            display: flex;
            gap: 10px;
            align-items: flex-end
        }

        .library-assistant__composer-row textarea {
            flex: 1 1 auto
        }

        .library-assistant__send {
            width: 48px;
            height: 48px;
            padding: 0;
            display: inline-flex;
            align-items: center;
            justify-content: center
        }

        .library-assistant__send i {
            font-size: 18px;
            line-height: 1;
            display: inline-block;
            transform: rotate(90deg)
        }

        .library-assistant__composer textarea {
            min-height: 60px
        }

        .citations-widget__chips .citations-widget__item {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            flex-wrap: wrap
        }

        .widget-block__titlebar {
            display: flex;
            align-items: center;
            gap: 10px
        }

        .fullwidth {
            width: 100%
        }

        .widget-block__titlebar>*:last-child {
            margin-left: auto
        }

        .fundamental-assistant-title-toggle {
            width: 40px;
            height: 40px;
            padding: 0;
            display: inline-flex;
            align-items: center;
            justify-content: center
        }

        .fundamental-assistant-toggle {
            width: 100%
        }

        .fundamental-assistant-toggle-btn {
            width: 40px;
            height: 40px;
            padding: 0;
            display: inline-flex;
            align-items: center;
            justify-content: center
        }

        .fundamental-assistant-toggle-btn__icon {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 28px;
            line-height: 1
        }

        .workflow-grid {
            display: grid;
            gap: 18px
        }

        @media (min-width:900px) {
            .workflow-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr))
            }
        }

        .filters-bar {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            align-items: center;
            margin-bottom: 12px
        }

        .filters-bar__select {
            min-width: 160px
        }

        .chip-picker {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin-top: 8px
        }

        .chip-picker button {
            border: 1px solid var(--line);
            border-radius: 999px;
            padding: 6px 12px;
            background: var(--card);
            cursor: pointer;
            font-weight: 600
        }

        .chip-picker button.is-selected {
            background: var(--primary);
            color: var(--primary-contrast);
            border-color: var(--primary)
        }

        .read-only-field {
            border: 1px solid var(--line);
            border-radius: 12px;
            padding: 10px 12px;
            background: var(--card);
            min-height: 40px;
            display: flex;
            align-items: center
        }

        .timeline {
            display: flex;
            flex-direction: column;
            gap: 12px
        }

        .timeline__item {
            display: flex;
            flex-direction: column;
            gap: 4px;
            padding: 10px 12px;
            border: 1px solid var(--line);
            border-radius: 12px;
            background: var(--card)
        }

        .timeline__timestamp {
            font-size: .8rem;
            color: var(--muted)
        }

        .timeline__empty {
            font-size: .9rem;
            color: var(--muted)
        }

        .paper-file-inline-actions .button i {
            font-size: 20px;
            line-height: 1
        }

        .paper-file-inline-actions .button:disabled {
            opacity: .35;
            pointer-events: none
        }

        .paper-file-hint {
            margin: 0;
            color: var(--muted);
            font-size: .85rem
        }

        .paper-list {
            display: flex;
            flex-direction: column;
            gap: 16px;
            margin: 0;
            padding: 0;
            list-style: none
        }

        .paper-list--empty {
            padding: 24px;
            border-radius: 16px;
            text-align: center;
            color: var(--muted);
            background: var(--ghost);
            font-weight: 600
        }

        .paper-list__item {
            display: flex;
            flex-direction: column;
            gap: 12px;
            border: 1px var(--border-style) var(--line);
            border-radius: 16px;
            background: var(--card);
            padding: 18px
        }

        @media (min-width:720px) {
            .paper-list__item {
                flex-direction: row;
                align-items: flex-start;
                justify-content: space-between
            }
        }

        .paper-list__content {
            display: flex;
            flex-direction: column;
            gap: 10px;
            flex: 1 1 auto;
            min-width: 0
        }

        .paper-list__title {
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 18px;
            font-weight: 800;
            color: var(--text);
            margin: 0
        }

        .paper-list__summary,
        .paper-list__notes {
            font-size: 14px;
            color: var(--text)
        }

        .paper-list__keywords {
            display: flex;
            flex-wrap: wrap;
            gap: 6px
        }

        .paper-list__actions {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            justify-content: flex-end;
            align-items: center
        }

        .paper-list__meta {
            display: flex;
            flex-direction: column;
            gap: 10px;
            flex: 1 1 auto;
            min-width: 0
        }

        .ai-helper--headless {
            display: none !important
        }

        #paperAiModel {
            display: none !important
        }

        .paper-card-list {
            display: flex;
            flex-direction: column;
            gap: 18px
        }

        .paper-card {
            border: 1px var(--border-style) var(--line);
            border-radius: 16px;
            padding: 18px;
            background: var(--card);
            display: grid;
            gap: 12px
        }

        .paper-card__header {
            display: flex;
            flex-direction: column;
            gap: 6px
        }

        .paper-card__title {
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 18px;
            font-weight: 800;
            color: var(--text);
            margin: 0
        }

        .paper-card__body {
            display: flex;
            gap: 18px;
            flex-wrap: wrap;
            align-items: flex-start
        }

        .paper-card__preview {
            flex: 0 0 auto;
            max-width: 180px
        }

        .paper-card__preview img,
        .paper-card__preview embed {
            max-width: 100%;
            max-height: 150px;
            border-radius: 12px
        }

        .paper-card__content {
            flex: 1 1 240px;
            display: flex;
            flex-direction: column;
            gap: 12px
        }

        .paper-card__summary,
        .paper-card__notes {
            font-size: 14px;
            color: var(--text)
        }

        .paper-card__keywords {
            display: flex;
            flex-wrap: wrap;
            gap: 6px
        }

        .paper-card__actions {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            justify-content: flex-end
        }

        .paper-list-empty {
            padding: 24px;
            border-radius: 16px;
            text-align: center;
            color: var(--muted);
            background: var(--ghost);
            font-weight: 600
        }

        .paper-toolbar {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 18px;
            gap: 12px;
            flex-wrap: wrap
        }

        .paper-toolbar h2 {
            margin: 0;
            font-size: 20px;
            font-weight: 800
        }

        .kw-linker-toolbar {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 12px;
            margin-bottom: 12px;
            flex-wrap: wrap
        }

        .select-all {
            width: 18px;
            height: 18px
        }

        #ctxTableWrap input.select-all {
            display: none
        }

        .pagination {
            display: flex;
            align-items: center;
            gap: 8px;
            flex-wrap: wrap
        }

        .pagination .btn {
            padding: 8px 10px
        }

        .dual {
            display: grid;
            grid-template-columns: 1fr 60px 1fr;
            gap: 16px;
            align-items: center;
            margin-top: 10px
        }

        .listbox {
            background: #fff;
            border: 1px var(--border-style) var(--line);
            border-radius: 12px;
            height: 420px;
            overflow: auto;
            padding: 10px;
            box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.02);
            transition: filter .15s, background-color .25s
        }

        .listbox:hover {
            filter: brightness(.98)
        }

        .list-item {
            padding: 8px 10px;
            border-radius: 8px;
            cursor: pointer;
            user-select: none;
            display: flex;
            align-items: center;
            gap: 8px;
            transition: background-color .2s, filter .15s
        }

        .list-item:hover {
            background: #f1f1f3
        }

        .list-item.is-selected {
            background: #e7e7eb;
            outline: 1px var(--outline-style) #cfcfd6
        }

        .dual__controls {
            display: grid;
            gap: 10px;
            justify-items: center
        }

        .tagbox {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            align-items: center;
            border: 1px var(--border-style) var(--line);
            border-radius: 12px;
            padding: 8px;
            background: var(--input-bg);
            min-height: 52px
        }

        .tag {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            border: 1px var(--border-style) var(--line);
            border-radius: 999px;
            padding: 6px 10px;
            background: var(--ghost);
            font-size: 13px;
            font-weight: 700;
            color: var(--text);
            cursor: pointer;
            user-select: none;
            transition: filter .15s, background-color .2s
        }

        .tag:hover {
            filter: brightness(.95)
        }

        .tag i {
            opacity: .7
        }

        .fieldset .tag {
            margin-bottom: 8px
        }

        .fieldset__header {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-bottom: 10px
        }

        .fieldset__header-title {
            font-weight: 800;
            font-size: 13px;
            color: var(--muted);
            text-transform: uppercase;
            letter-spacing: .02em
        }

        .fieldset__row {
            display: flex;
            gap: 12px;
            align-items: flex-start
        }

        .fieldset__preview {
            flex: 0 0 auto
        }

        .fieldset__body {
            flex: 1
        }

        .fieldset__name,
        .fieldset__summary,
        .fieldset__comments,
        .fieldset__keywords {
            margin-bottom: 12px
        }

        .fieldset__name h4,
        .fieldset__summary h4,
        .fieldset__comments h4 {
            margin: 0 0 6px;
            font-size: 13px;
            font-weight: 800;
            color: var(--muted);
            text-transform: uppercase;
            letter-spacing: .02em
        }

        .fieldset__keywords {
            display: flex;
            flex-wrap: wrap;
            gap: 6px
        }

        .fieldset__preview img,
        .fieldset__preview embed {
            max-height: 128px;
            max-width: 128px;
            border-radius: 8px
        }

        .rtf-view {
            font-size: 14px;
            line-height: 1.45;
            color: var(--text);
            word-break: break-word
        }

        .rtf-view p {
            margin: 0 0 8px
        }

        .rtf-view p:last-child {
            margin-bottom: 0
        }

        .rtf-view h1 {
            font-size: 20px;
            margin: 0 0 10px;
            font-weight: 800
        }

        .rtf-view h2 {
            font-size: 18px;
            margin: 0 0 10px;
            font-weight: 800
        }

        .rtf-view h3 {
            font-size: 16px;
            margin: 0 0 10px;
            font-weight: 800
        }

        .rtf-view h4 {
            font-size: 15px;
            margin: 0 0 10px;
            font-weight: 800
        }

        .rtf-view ul,
        .rtf-view ol {
            margin: 0 0 10px 20px;
            padding-left: 16px
        }

        .rtf-view ul:last-child,
        .rtf-view ol:last-child {
            margin-bottom: 0
        }

        .rtf-view li {
            margin-bottom: 6px
        }

        .rtf-view li:last-child {
            margin-bottom: 0
        }

        .tagbox input {
            flex: 1 1 160px;
            min-width: 140px;
            border: 0;
            outline: none;
            padding: 8px;
            font-size: 14px;
            background: transparent
        }

        .levels-grid {
            display: grid;
            grid-template-columns: 1fr 1.2fr;
            gap: 24px;
            align-items: start
        }

        .levels-panel {
            border: 1px var(--border-style) var(--line);
            border-radius: 12px;
            padding: 12px;
            background: #fafafa
        }

        .levels-row {
            display: grid;
            grid-template-columns: 120px 1fr 1fr;
            gap: 12px;
            align-items: center;
            margin-bottom: 10px
        }

        .level-badge {
            font-weight: 800;
            font-size: 13px;
            color: #3b3b3b;
            display: flex;
            align-items: center;
            gap: 8px
        }

        .chip {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            border: 1px var(--border-style) var(--line);
            border-radius: 999px;
            padding: 8px 12px;
            background: #fff;
            font-size: 14px;
            font-weight: 700;
            transition: filter .15s, background-color .2s
        }

        .chip:hover {
            filter: brightness(.96)
        }

        .chip input {
            accent-color: var(--primary)
        }

        .interp-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 16px;
            align-items: end
        }

        .interp-combos {
            margin-top: 14px
        }

        .combo-card {
            border: 1px var(--border-style) var(--line);
            border-radius: 12px;
            padding: 12px;
            background: #fff;
            margin-bottom: 12px;
            transition: filter .15s
        }

        .combo-card:hover {
            filter: brightness(.98)
        }

        .combo-title {
            font-weight: 800;
            margin-bottom: 8px;
            color: #3b3b3b;
            font-size: 14px;
            display: flex;
            align-items: center;
            gap: 8px
        }

        .auth-wrap {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 24px;
            padding: 40px 20px
        }

        .auth-card {
            width: 100%;
            max-width: 100%
        }

        .pass-wrap {
            position: relative
        }

        .pass-toggle {
            position: absolute;
            right: 10px;
            top: 50%;
            transform: translateY(-50%);
            border: 1px var(--border-style) var(--line);
            border-radius: 10px;
            background: #fafafa;
            padding: 6px 8px;
            cursor: pointer
        }

        #screensStack {
            position: relative;
            transition: height .28s ease
        }

        .screen {
            position: absolute;
            inset: 0;
            display: none;
            opacity: 0;
            transform: translateY(12px) scale(.985);
            filter: grayscale(.1) saturate(.9);
            pointer-events: none;
            transition: opacity .28s ease, transform .28s ease, filter .28s ease
        }

        .screen.is-active {
            display: block;
            opacity: 1;
            transform: translateY(0) scale(1);
            filter: none;
            pointer-events: auto
        }

        .screen.is-leaving {
            opacity: 0;
            transform: translateY(-8px) scale(.985)
        }

        .standalone-pane {
            position: relative;
            display: flex;
            flex-direction: column;
            gap: 24px;
            padding: 10px;
            min-height: 100%;
            box-sizing: border-box;
            background: transparent
        }

        .pane--translucent {
            background: color-mix(in srgb, var(--bg) 82%, transparent);
            border: 1px solid color-mix(in srgb, var(--line) 45%, transparent);
            box-shadow: 0 22px 48px rgba(0, 0, 0, .18);
            backdrop-filter: blur(18px);
            -webkit-backdrop-filter: blur(18px);
            color: var(--text)
        }

        .form-hint {
            margin: 0;
            color: var(--muted)
        }

        .form-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            justify-content: flex-end;
            align-items: center;
            row-gap: 8px;
        }

        @media (max-width:1200px) {

            .window-body .standalone-pane,
            .window-body .pane {
                width: 100%
            }
        }

        @media (max-width:1024px) {
            .interp-grid {
                grid-template-columns: 1fr
            }

            .window-body {
                padding: 0
            }

            .window-body .standalone-pane,
            .window-body .pane {
                padding: 20px
            }
        }

        @media (max-width:940px) {
            .window-body {
                padding: 0
            }

            .window-body .standalone-pane,
            .window-body .pane {
                padding: 20px
            }
        }

        @media (max-width:820px) {
            .window-body {
                padding: 0
            }

            .window-body .standalone-pane,
            .window-body .pane {
                border-radius: 0
            }
        }

        @media (max-width:720px) {

            .dictionary-picker,
            .presight-picker__controls {
                flex-direction: column;
                align-items: stretch
            }

            .dictionary-picker .btn {
                width: 100%
            }

            .insight-form .actions {
                justify-content: stretch
            }
        }

        @media (max-width:640px) {
            .insight-form .actions {
                flex-direction: column
            }

            .insight-form .actions .button {
                width: 100%;
                justify-content: center
            }

            .window-chrome {
                padding: 3px 4px 4px 9px
            }

            .window-title {
                font-size: .85rem
            }
        }

        @media (max-width:980px) {
            .filters {
                grid-template-columns: 1fr 1fr
            }

            .col-actions {
                width: 220px
            }

            .col-actions--icons {
                width: 120px
            }
        }

        @media (max-width:880px) {
            .grid--2 {
                grid-template-columns: 1fr
            }

            .grid--3 {
                grid-template-columns: 1fr
            }

            .grid--inline {
                grid-template-columns: 1fr
            }

            .row-split {
                grid-template-columns: 1fr
            }

            .row-split-4 {
                grid-template-columns: 1fr
            }

            .keyword-link {
                grid-template-columns: 1fr
            }

            .dual {
                grid-template-columns: 1fr
            }

            .dual__controls {
                grid-template-columns: repeat(2, 1fr)
            }

            .dual__controls .btn {
                width: 100%
            }

            .levels-grid {
                grid-template-columns: 1fr
            }

            .col-actions {
                width: 200px
            }

            .col-actions--icons {
                width: 110px
            }
        }

        .modal {
            position: fixed;
            inset: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            background: rgba(0, 0, 0, .6);
            opacity: 0;
            pointer-events: none;
            transition: opacity .3s;
            z-index: 4000
        }

        .modal.is-active {
            opacity: 1;
            pointer-events: auto
        }

        .modal-content {
            background: #fff;
            padding: 2rem;
            border-radius: var(--radius);
            max-width: 90%;
            box-shadow: 0 4px 16px rgba(0, 0, 0, .2);
            transform: scale(.9);
            transition: transform .3s
        }

        body.dark .modal-content {
            background-color: #1a1a1a
        }

        .modal.is-active .modal-content {
            transform: scale(1)
        }

        .modal-content .actions {
            display: flex;
            justify-content: flex-end;
            gap: .5rem;
            margin-top: 1.5rem
        }

        .modal-content button {
            margin-left: 0
        }

        .file-drop {
            border: 2px var(--border-style) var(--line);
            border-radius: 12px;
            padding: 20px;
            text-align: center;
            background: var(--card);
            color: var(--text);
            cursor: pointer;
            transition: border-color .2s, background-color .2s, transform .2s, box-shadow .2s
        }

        .file-drop-zone {
            color: var(--muted);
            font-weight: 600;
            width: 100%;
            max-width: 100%;
            min-width: 100%;
            height: auto
        }

        .file-drop.is-dragover {
            border-color: var(--primary);
            background: var(--ghost);
            transform: scale(1.02);
            box-shadow: var(--shadow)
        }

        .file-preview {
            margin-top: 10px;
            opacity: 0;
            transform: scale(.95);
            transition: opacity .2s, transform .2s;
            display: flex;
            flex-direction: column;
            gap: 12px;
            align-items: center;
            justify-content: center;
            text-align: center
        }

        .file-drop.has-file .file-preview {
            opacity: 1;
            transform: scale(1)
        }

        .file-info {
            margin-top: 10px;
            font-size: 13px;
            color: var(--muted);
            opacity: 0;
            transform: translateY(-4px);
            max-height: 0;
            overflow: hidden;
            transition: opacity .2s, transform .2s, max-height .2s
        }

        .file-drop.has-file .file-info {
            opacity: 1;
            transform: translateY(0);
            max-height: 60px
        }

        .file-preview img,
        .file-preview embed {
            max-width: 100%;
            max-height: 480px;
            border-radius: 12px;
            box-shadow: var(--shadow)
        }

        .file-preview__pdf {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 12px;
            width: 100%
        }

        .file-preview__pdf canvas {
            max-width: 100%;
            height: auto;
            border-radius: 12px;
            box-shadow: var(--shadow);
            background: var(--card)
        }

        .file-preview__icon {
            font-size: 2.2rem;
            color: var(--muted)
        }

        .file-preview__name {
            font-weight: 600;
            color: var(--text);
            word-break: break-word
        }

        .file-preview__loader {
            width: 48px;
            height: 48px;
            border-radius: 50%;
            border: 4px solid rgba(0, 0, 0, .12);
            border-top-color: var(--primary);
            animation: spin .9s linear infinite;
            margin: 0 auto
        }

        body.dark .file-preview__loader {
            border-color: rgba(255, 255, 255, .18);
            border-top-color: var(--primary)
        }

        .file-clear {
            margin-top: 10px
        }

        .file-view {
            margin-top: 10px
        }

        .file-drop .file-view {
            gap: 6px
        }

        .file-drop .file-clear+.file-view {
            margin-left: 8px
        }

        .paper-preview-window .window-body {
            display: flex;
            flex-direction: column;
            background: var(--ghost)
        }

        .paper-preview-body__inner {
            flex: 1;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 24px
        }

        .paper-preview-loader {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 12px;
            color: var(--muted);
            text-align: center
        }

        .paper-preview-loader[hidden],
        .paper-preview-loader.is-hidden {
            display: none !important
        }

        .paper-preview-loader__spinner {
            width: 56px;
            height: 56px;
            border-radius: 50%;
            border: 4px solid rgba(0, 0, 0, .12);
            border-top-color: var(--primary);
            animation: spin .9s linear infinite
        }

        body.dark .paper-preview-loader__spinner {
            border-color: rgba(255, 255, 255, .18);
            border-top-color: var(--primary)
        }

        .paper-preview-frame {
            flex: 1;
            width: 100%;
            height: 100%;
            border: 0;
            border-radius: 16px;
            background: #fff;
            box-shadow: var(--shadow)
        }

        body.dark .paper-preview-frame {
            background: var(--card)
        }

        .toast-container {
            position: fixed;
            top: 1rem;
            right: 1rem;
            display: flex;
            flex-direction: column;
            gap: .5rem;
            z-index: 99999 !important;
            pointer-events: none;
        }

        .toast {
            padding: 1rem 1.25rem;
            z-index: 100000 !important;
            pointer-events: auto;
            border-radius: var(--radius);
            color: #fff;
            background: var(--primary);
            box-shadow: var(--shadow);
            opacity: 0;
            transform: translateY(-20px);
            transition: opacity .3s, transform .3s
        }

        .toast.is-showing {
            opacity: 1;
            transform: translateY(0)
        }

        .toast-success {
            background: #16a34a
        }

        .toast-error {
            background: #dc2626
        }

        .loading-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0, 0, 0, .4);
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: .5rem;
            opacity: 0;
            pointer-events: none;
            transition: opacity .3s;
            z-index: 1000
        }

        .loading-overlay.is-active {
            opacity: 1;
            pointer-events: auto
        }

        .spinner {
            width: 40px;
            height: 40px;
            border: 4px solid #fff;
            border-top-color: transparent;
            border-radius: 50%;
            animation: spin 1s linear infinite
        }

        .loading-text {
            color: #fff;
            font-weight: 700
        }

        .loading-detail {
            color: #fff;
            font-weight: 500;
            opacity: .9;
            max-width: min(720px, 90vw);
            text-align: center
        }

        .loading-overlay:not(.has-detail) .loading-detail {
            display: none
        }

        @keyframes spin {
            to {
                transform: rotate(360deg)
            }
        }

        @keyframes gridmove {
            from {
                background-position: 0 0, 0 0, 0 0
            }

            to {
                background-position: 80px 80px, 80px 80px, 80px 80px
            }
        }

        @keyframes bubblemove {
            from {
                background-position: 0 0
            }

            to {
                background-position: 80px 80px
            }
        }

        @keyframes swirl {
            from {
                transform: rotate(0deg)
            }

            to {
                transform: rotate(360deg)
            }
        }

        @keyframes heartmove {
            from {
                background-position: 0 0
            }

            to {
                background-position: 60px 60px
            }
        }

        @keyframes floaty {
            from {
                transform: translateY(0)
            }

            to {
                transform: translateY(-8px)
            }
        }

        @keyframes heartbeat {

            0%,
            100% {
                transform: scale(1)
            }

            50% {
                transform: scale(1.05)
            }
        }

        @keyframes heartfloat {
            from {
                transform: translate(0, 0) scale(.8);
                opacity: 1
            }

            to {
                transform: translate(var(--tx, 0), var(--ty, -120vh)) scale(1.4);
                opacity: 0
            }
        }

        .ai-helper {
            display: grid;
            gap: 16px
        }

        .ai-helper__grid {
            display: grid;
            gap: 12px;
            grid-template-columns: repeat(auto-fit, minmax(220px, 1fr))
        }

        .ai-helper__pdf {
            display: grid;
            gap: 12px
        }

        .ai-helper__pdf-grid {
            display: grid;
            gap: 12px;
            grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
            align-items: start
        }

        .ai-helper__pdf-actions {
            display: flex;
            flex-direction: column;
            gap: 8px;
            align-items: flex-start
        }

        .ai-helper__pdf-actions .btn {
            width: auto
        }

        .ai-helper__attach {
            display: flex;
            gap: 6px;
            align-items: center;
            font-size: 13px;
            color: var(--muted)
        }

        .ai-helper__tags {
            display: flex;
            flex-wrap: wrap;
            gap: 6px
        }

        .ai-helper__tag {
            background: var(--ghost);
            border: 1px var(--border-style) var(--line);
            border-radius: 999px;
            padding: 2px 10px;
            font-size: 12px;
            color: var(--text)
        }

        .ai-helper__chat {
            border: 1px var(--border-style) var(--line);
            background: var(--ghost);
            border-radius: var(--radius-sm);
            padding: 12px;
            display: flex;
            flex-direction: column;
            gap: 10px;
            max-height: 280px;
            overflow: auto
        }

        .ai-helper__msg {
            display: flex;
            gap: 10px;
            align-items: flex-start
        }

        .ai-helper__avatar {
            flex: 0 0 32px;
            height: 32px;
            width: 32px;
            border-radius: 8px;
            background: var(--card);
            display: grid;
            place-items: center;
            font-size: 18px;
            box-shadow: var(--shadow)
        }

        .ai-helper__bubble {
            background: var(--card);
            border: 1px var(--border-style) var(--line);
            border-radius: var(--radius-sm);
            padding: 10px 12px;
            white-space: pre-wrap;
            max-width: 100%
        }

        .ai-helper__actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            align-items: center;
            justify-content: space-between
        }

        .ai-helper__buttons {
            display: flex;
            flex-wrap: wrap;
            gap: 10px
        }

        .ai-helper__status {
            font-size: 13px;
            color: var(--muted);
            min-height: 18px
        }

        .ai-helper__hint {
            font-size: 12px;
            color: var(--muted);
            margin: 6px 0 0
        }

        .ai-helper .file-drop {
            margin-top: 6px
        }

        .kw-linker {
            display: grid;
            gap: 16px;
            position: relative
        }

        .kw-linker__columns {
            display: grid;
            gap: 12px;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr))
        }

        .kw-linker__column {
            background: var(--ghost);
            border: 1px var(--border-style) var(--line);
            border-radius: var(--radius-sm);
            padding: 12px;
            display: grid;
            gap: 10px;
            grid-template-rows: auto auto 1fr auto
        }

        .kw-linker__legend {
            font-size: 12px;
            color: var(--muted);
            margin: 0
        }

        .kw-linker__filters {
            display: flex;
            gap: 8px;
            flex-wrap: wrap
        }

        .kw-linker__filters .ctrl {
            flex: 1 1 160px;
            min-width: 150px
        }

        .kw-linker__list {
            background: var(--card);
            border: 1px dashed var(--line);
            border-radius: var(--radius-sm);
            padding: 8px;
            overflow: auto;
            min-height: 200px;
            display: flex;
            flex-direction: column;
            gap: 8px
        }

        .kw-linker__item {
            background: var(--card);
            border: 1px var(--border-style) var(--line);
            border-radius: var(--radius-sm);
            padding: 10px 12px;
            display: flex;
            gap: 10px;
            align-items: center;
            justify-content: space-between;
            cursor: grab;
            box-shadow: 0 1px 4px rgba(0, 0, 0, .05)
        }

        .kw-linker__item.dragging {
            opacity: .6
        }

        .kw-linker__text {
            display: flex;
            flex: 1;
            gap: 6px;
            align-items: baseline;
            flex-wrap: wrap;
            min-width: 0
        }

        .kw-linker__name {
            font-weight: 600;
            color: var(--text);
            text-align: left
        }

        .kw-linker__source {
            font-weight: 500;
            color: rgba(128, 128, 128, .65)
        }

        body.dark .kw-linker__source {
            color: rgba(226, 232, 240, .65)
        }

        .kw-linker__chip {
            font-size: 12px;
            padding: 4px 8px;
            border-radius: 999px;
            background: var(--ghost);
            border: 1px var(--border-style) var(--line);
            color: var(--text)
        }

        .kw-linker__hint {
            font-size: 12px;
            color: var(--muted);
            margin: 0
        }

        .kw-linker__summary {
            font-size: 13px;
            color: var(--muted);
            margin: 0
        }

        .kw-linker__status {
            font-size: 13px;
            color: var(--muted);
            min-height: 18px
        }

        .kw-linker__empty {
            font-size: 13px;
            color: var(--muted);
            padding: 12px;
            text-align: center
        }

        .kw-linker__item--linked {
            background: var(--soft)
        }

        .keywords-pane #keywordsTable th[data-column="origin"] {
            white-space: nowrap
        }

        .keywords-pane #keywordsTable th[data-column="origin"] .table-heading {
            display: inline-flex;
            align-items: center;
            gap: .5rem
        }

        .keywords-pane #keywordsTable .table-heading__button {
            width: 28px;
            height: 28px;
            border-radius: 50%;
            border: 1px solid var(--line);
            background: var(--ghost);
            color: var(--muted);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease
        }

        .keywords-pane #keywordsTable .table-heading__button:hover,
        .keywords-pane #keywordsTable .table-heading__button:focus-visible {
            background: var(--soft);
            border-color: var(--input-border);
            color: var(--text);
            transform: translateY(-1px)
        }

        .keywords-pane #keywordsTable .table-heading__button:focus-visible {
            outline: 2px solid rgba(255, 255, 255, .65);
            outline-offset: 2px
        }

        body.dark .keywords-pane #keywordsTable .table-heading__button {
            background: color-mix(in srgb, var(--ghost) 40%, transparent 60%);
            border-color: color-mix(in srgb, var(--line) 60%, transparent 40%);
            color: var(--muted)
        }

        body.dark .keywords-pane #keywordsTable .table-heading__button:hover,
        body.dark .keywords-pane #keywordsTable .table-heading__button:focus-visible {
            background: color-mix(in srgb, var(--soft) 55%, transparent 45%);
            border-color: color-mix(in srgb, var(--input-border) 65%, transparent 35%);
            color: var(--text)
        }

        .keywords-pane #keywordsTable .table__actions {
            width: 50px;
            min-width: 50px;
            display: flex;
            justify-content: center;
            gap: 2px
        }

        .keywords-pane #keywordsTable .table__actions .btn {
            width: 24px;
            height: 24px;
            min-width: 24px;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 4px
        }

        .kw-linker.is-busy {
            opacity: .7;
            pointer-events: none
        }

        .kw-linker__overlay {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            overflow: visible;
            pointer-events: none
        }

        .kw-linker__overlay-layer {
            stroke: var(--primary, #2c7be5);
            stroke-width: 2;
            fill: none
        }

        .kw-linker__overlay-path {
            stroke: inherit;
            fill: none;
            pointer-events: stroke;
            cursor: pointer;
            transition: stroke-width .18s ease, opacity .18s ease, filter .18s ease
        }

        .kw-linker__overlay-path--selected {
            stroke: var(--accent-strong, var(--primary, #2c7be5));
            stroke-width: 3.5;
            filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .25));
            opacity: 1
        }

        .kw-linker__overlay-endpoint {
            fill: var(--primary, #2c7be5);
            stroke: var(--ghost, #fff);
            stroke-width: 1.5;
            pointer-events: all;
            cursor: pointer;
            transition: transform .18s ease, opacity .18s ease, filter .18s ease, fill .18s ease, stroke .18s ease
        }

        .kw-linker__overlay-endpoint--selected {
            fill: var(--accent-strong, var(--primary, #2c7be5));
            stroke: var(--accent-strong, var(--primary, #2c7be5));
            transform: scale(1.1);
            filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .25));
            opacity: 1
        }

        .kw-linker--link-selected .kw-linker__overlay-path,
        .kw-linker--link-selected .kw-linker__overlay-endpoint {
            opacity: .55
        }

        .kw-linker--link-selected .kw-linker__overlay-path--selected,
        .kw-linker--link-selected .kw-linker__overlay-endpoint--selected {
            opacity: 1
        }

        textarea.auto-resize {
            overflow: hidden;
            transition: height .2s
        }

        .contexts-app,
        .presights-app {
            display: flex;
            flex-direction: column;
            gap: 20px
        }

        .contexts-app__header,
        .presights-app__header {
            display: flex;
            flex-wrap: wrap;
            align-items: flex-end;
            justify-content: space-between;
            gap: 16px
        }

        .contexts-app__search,
        .presights-app__search {
            display: flex;
            flex-direction: column;
            gap: 6px;
            flex: 1 1 260px;
            min-width: 220px
        }

        .contexts-app__actions,
        .presights-app__actions {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            justify-content: flex-end
        }

        .contexts-app__body,
        .presights-app__body {
            display: flex;
            flex-wrap: wrap;
            align-items: flex-start;
            gap: 24px
        }

        .contexts-app__list,
        .presights-app__list {
            flex: 1 1 420px;
            min-width: 300px;
            display: flex;
            flex-direction: column;
            gap: 12px
        }

        .contexts-app__form,
        .presights-app__form {
            flex: 1 1 380px;
            min-width: 300px;
            background: color-mix(in srgb, var(--ghost) 68%, var(--window-surface, #ffffff) 32%);
            border: 1px solid var(--line);
            border-radius: 16px;
            padding: 20px 22px;
            display: flex;
            flex-direction: column;
            gap: 18px;
            box-shadow: 0 16px 34px rgba(0, 0, 0, .1)
        }

        body.dark .contexts-app__form,
        body.dark .presights-app__form {
            background: color-mix(in srgb, var(--window-surface, #162436) 80%, var(--ghost) 20%);
            box-shadow: 0 18px 36px rgba(0, 0, 0, .42)
        }

        .contexts-app__form .fieldset,
        .presights-app__form .fieldset {
            border: 0;
            margin: 0;
            padding: 0;
            display: flex;
            flex-direction: column;
            gap: 16px
        }

        .contexts-app__form .row,
        .presights-app__form .row {
            display: flex;
            flex-direction: column;
            gap: 8px
        }

        .contexts-app__form .actions,
        .presights-app__form .actions {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            justify-content: flex-end;
            margin-top: 8px
        }

        .presight-picker,
        .interpretations-widget,
        .fundamentals-widget,
        .details-widget {
            display: flex;
            flex-direction: column;
            gap: 12px
        }

        .presight-picker__controls {
            display: flex;
            align-items: center;
            gap: 12px;
            flex-wrap: wrap
        }

        .presight-picker__list {
            max-height: 240px;
            overflow: auto;
            border: 1px solid var(--line);
            border-radius: 12px;
            padding: 10px;
            background: var(--ghost);
            display: grid;
            gap: 6px
        }

        body.dark .presight-picker__list {
            background: color-mix(in srgb, var(--ghost) 80%, transparent 20%);
            border-color: color-mix(in srgb, var(--line) 70%, transparent 30%)
        }

        .presight-picker__item {
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 6px 8px;
            border-radius: 10px;
            cursor: pointer;
            transition: background .18s ease, color .18s ease
        }

        .presight-picker__item:hover,
        .presight-picker__item:focus-within {
            background: color-mix(in srgb, var(--soft) 32%, transparent 68%)
        }

        .details-widget__list,
        .fundamentals-widget__list,
        .interpretations-widget__list,
        .conditions-list {
            display: flex;
            flex-direction: column;
            gap: 12px
        }

        .fundamentals-widget__search {
            display: flex;
            flex-direction: column;
            gap: 8px
        }

        .fundamentals-widget__suggestions {
            display: flex;
            flex-direction: column;
            gap: 8px;
            padding: 10px 12px;
            border: 1px solid color-mix(in srgb, var(--line) 70%, transparent 30%);
            border-radius: 12px;
            background: color-mix(in srgb, var(--ghost) 82%, transparent 18%);
            max-height: 220px;
            overflow: auto
        }

        body.dark .fundamentals-widget__suggestions {
            background: color-mix(in srgb, var(--ghost) 88%, transparent 12%);
            border-color: color-mix(in srgb, var(--line) 60%, transparent 40%)
        }

        .fundamentals-widget__suggestion {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            padding: 6px 10px;
            border-radius: 10px;
            background: transparent;
            border: 1px solid transparent;
            color: inherit;
            cursor: pointer;
            text-align: left;
            font: inherit
        }

        .fundamentals-widget__suggestion:hover,
        .fundamentals-widget__suggestion:focus-visible {
            background: color-mix(in srgb, var(--soft) 25%, transparent 75%);
            border-color: color-mix(in srgb, var(--line) 65%, transparent 35%)
        }

        .fundamentals-widget__suggestion-title {
            font-weight: 600
        }

        .fundamentals-widget__suggestion-summary {
            font-size: .85em;
            opacity: .72
        }

        .details-widget__row,
        .fundamentals-widget__row,
        .conditions-list__row {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            align-items: center;
            padding: 10px 12px;
            border: 1px solid color-mix(in srgb, var(--line) 70%, transparent 30%);
            border-radius: 12px;
            background: color-mix(in srgb, var(--ghost) 72%, transparent 28%)
        }

        .use-cases {
            display: flex;
            flex-direction: column;
            gap: 10px
        }

        .use-cases__list {
            display: flex;
            flex-direction: column;
            gap: 10px
        }

        .use-cases__row {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            align-items: center;
            padding: 10px 12px;
            border: 1px solid color-mix(in srgb, var(--line) 70%, transparent 30%);
            border-radius: 12px;
            background: color-mix(in srgb, var(--ghost) 72%, transparent 28%)
        }

        .fundamentals-widget__chip {
            display: flex;
            flex-direction: column;
            gap: 4px;
            min-width: 0
        }

        .fundamentals-widget__chip-name {
            font-weight: 600;
            word-break: break-word
        }

        .fundamentals-widget__chip-meta {
            font-size: .82em;
            opacity: .7
        }

        .details-widget__row .ctrl,
        .fundamentals-widget__row .ctrl,
        .conditions-list__row .ctrl {
            flex: 1 1 140px;
            min-width: 120px
        }

        .use-cases__row .ctrl {
            flex: 1 1 200px;
            min-width: 160px
        }

        .use-cases__actions {
            display: flex;
            align-items: center;
            gap: 8px;
            flex: 0 0 auto
        }

        .conditions-list__choices {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin-top: 8px
        }

        .conditions-list__choices .button {
            flex: 0 0 auto
        }

        .interpretation-card {
            border: 1px solid var(--line);
            border-radius: 16px;
            overflow: hidden;
            background: color-mix(in srgb, var(--ghost) 80%, transparent 20%);
            box-shadow: 0 12px 26px rgba(0, 0, 0, .12)
        }

        body.dark .interpretation-card {
            background: color-mix(in srgb, var(--ghost) 90%, transparent 10%);
            border-color: color-mix(in srgb, var(--line) 70%, transparent 30%);
            box-shadow: 0 12px 28px rgba(0, 0, 0, .4)
        }

        .interpretation-card__header {
            display: flex;
            align-items: center;
            justify-content: flex-start;
            gap: 12px;
            padding: 12px 16px;
            background: color-mix(in srgb, var(--soft) 28%, transparent 72%)
        }

        .interpretation-card__body {
            display: flex;
            flex-direction: column;
            gap: 12px;
            padding: 16px
        }

        .conditions-list__row .button,
        .fundamentals-widget__row .button,
        .details-widget__row .button {
            flex: 0 0 auto
        }

        .fundamentals-widget__list,
        .details-widget__list {
            max-height: 260px;
            overflow: auto
        }

        div#presightProtocolStepsList {
            max-height: initial;
        }

        .details-widget__row.protocol-step-row {
            display: flex;
            flex-direction: column;
            align-items: stretch
        }

        .details-widget__row.protocol-step-row .protocol-step-header {
            display: flex;
            align-items: center;
            gap: 10px;
            width: 100%
        }

        .details-widget__row.protocol-step-row .protocol-step-header__title {
            flex: 1 1 auto;
            font-weight: 700;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap
        }

        .details-widget__row.protocol-step-row .protocol-step-body {
            display: flex;
            flex-direction: column;
            gap: 10px;
            width: 100%
        }

        .details-widget__row.protocol-step-row.is-collapsed .protocol-step-body {
            display: none
        }

        .details-widget__row.protocol-step-row .protocol-step-field {
            display: flex;
            flex-direction: row;
            align-items: center;
            gap: 10px;
            width: 100%;
            flex-wrap: wrap
        }

        .details-widget__row.protocol-step-row .protocol-step-field > label {
            flex: 0 0 190px;
            margin: 0
        }

        .details-widget__row.protocol-step-row .protocol-step-field > label + * {
            flex: 1 1 260px;
            min-width: 220px
        }

        .details-widget__row.protocol-step-row .chip {
            align-self: flex-start
        }

        .details-widget__row.protocol-step-row .ctrl {
            width: 100%;
            min-width: 0
        }

        .details-widget__row.protocol-step-row .protocol-step-field > label + * label {
            margin: 0
        }

        .details-widget__row.protocol-step-row input[type=number].ctrl {
            padding: 8px 12px
        }

        .details-widget__row.protocol-step-row input.ctrl {
            flex: 1 1 34px !important;
        }

        .table-list-entry {
            display: flex;
            flex-direction: column;
            gap: 4px
        }

        .table-list-entry+.table-list-entry {
            margin-top: 8px
        }

        .table-list-entry__title {
            font-weight: 600;
            line-height: 1.2
        }

        .table-list-entry__meta {
            font-size: .8rem;
            line-height: 1.2
        }

        .sensor-widget {
            display: grid;
            gap: 1rem
        }

        .sensor-widget__search {
            display: grid;
            gap: .5rem
        }

        .sensor-widget__suggestions {
            display: flex;
            flex-direction: column;
            gap: .5rem;
            max-height: 220px;
            overflow: auto;
            padding: .75rem;
            border: 1px solid var(--line, #d9cdbc);
            border-radius: 14px;
            background: color-mix(in srgb, var(--card, #fff) 92%, var(--bg, #f7f1e9) 8%)
        }

        .sensor-widget__suggestion {
            display: flex;
            align-items: center;
            justify-content: flex-start;
            gap: .5rem;
            padding: .5rem .75rem;
            border-radius: 10px;
            border: 1px solid transparent;
            background: transparent;
            color: inherit;
            font: inherit;
            cursor: pointer;
            transition: background .2s ease, border .2s ease, color .2s ease
        }

        .sensor-widget__suggestion:hover,
        .sensor-widget__suggestion:focus-visible {
            background: var(--ghost, #f4ede1);
            border-color: var(--accent-soft-strong, #f0c68a);
            outline: none
        }

        .sensor-widget__list {
            display: flex;
            flex-direction: column;
            gap: .75rem
        }

        .sensor-widget__empty {
            margin: 0;
            color: var(--muted, #6b7280)
        }

        .sensor-widget__item {
            display: grid;
            grid-template-columns: auto 1fr auto;
            align-items: center;
            gap: .75rem;
            padding: .75rem;
            border: 1px solid var(--line, #d9cdbc);
            border-radius: 16px;
            background: color-mix(in srgb, var(--card, #fff) 94%, var(--bg, #f7f1e9) 6%);
            box-shadow: 0 10px 24px rgba(20, 24, 38, .08);
            transition: box-shadow .2s ease, transform .2s ease
        }

        .sensor-widget__item.is-dragging {
            opacity: .6;
            transform: scale(.98);
            box-shadow: none
        }

        .sensor-widget__item.is-over {
            border-style: dashed;
            border-color: var(--accent-strong, #f07b3a)
        }

        .sensor-widget__handle {
            color: var(--muted, #6b7280);
            font-size: 1.05rem;
            cursor: grab
        }

        .sensor-widget__handle i {
            pointer-events: none
        }

        .sensor-widget__body {
            display: flex;
            flex-direction: column;
            gap: .25rem
        }

        .sensor-widget__name {
            font-weight: 600
        }

        .sensor-widget__meta {
            font-size: .85rem;
            color: var(--muted, #6b7280)
        }

        .list-input {
            background: var(--card);
            border: 1px solid var(--input-border);
            border-radius: var(--radius-sm);
            padding: 0.75rem;
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
        }

        .list-input__header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 1rem;
        }

        .list-input__title {
            font-weight: 600;
        }

        .list-input__items {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
        }

        .list-input__item {
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }

        .list-input__item .ctrl {
            flex: 1 1 auto;
        }

        .list-input__empty {
            margin: 0;
            font-style: italic;
            color: var(--muted);
        }

        .list-input__add {
            align-self: flex-start;
        }

        .list-input__match {
            border: 1px dashed var(--input-border);
            border-radius: var(--radius-sm);
            padding: 0.75rem;
            margin-top: 0.25rem;
        }

        .list-input__match-options {
            display: flex;
            flex-wrap: wrap;
            gap: 0.75rem;
            margin-top: 0.5rem;
        }

        .list-input__match-option {
            display: inline-flex;
            align-items: center;
            gap: 0.35rem;
            font-size: 0.95rem;
        }

        .scale-grid__item--full {
            grid-column: 1 / -1;
        }

        .picker-widget__suggestion--card {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75rem;
            width: 100%;
            border: 1px solid var(--input-border);
            border-radius: var(--radius-sm);
            background: var(--card);
            color: inherit;
            padding: 0.65rem 0.85rem;
            cursor: pointer;
            transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
            text-align: left;
        }

        .picker-widget__suggestion--card:hover,
        .picker-widget__suggestion--card:focus {
            border-color: var(--primary);
            box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary) 25%, transparent 75%);
            transform: translateY(-1px);
        }

        .picker-widget__suggestion-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 2rem;
            height: 2rem;
            border-radius: 50%;
            background: color-mix(in srgb, var(--primary) 15%, transparent 85%);
            color: var(--primary);
            flex-shrink: 0;
        }

        .picker-widget__suggestion-body {
            flex: 1 1 auto;
            display: flex;
            flex-direction: column;
            gap: 0.2rem;
        }

        .picker-widget__suggestion-title {
            font-weight: 600;
        }

        .picker-widget__suggestion-meta {
            font-size: 0.85rem;
            color: var(--muted);
        }

        .picker-widget__suggestion-badge {
            background: var(--ghost);
            color: var(--primary);
            border-radius: 999px;
            font-size: 0.75rem;
            font-weight: 600;
            padding: 0.2rem 0.6rem;
            white-space: nowrap;
        }

        .widget-block--disabled {
            opacity: 0.35;
            pointer-events: none;
        }

        .widget-block--disabled * {
            pointer-events: none;
            cursor: default;
        }

        .widget-block--disabled {
            opacity: 0.45;
        }

        .widget-block--disabled * {
            pointer-events: none !important;
            cursor: default !important;
        }

        .widget-block--disabled,
        .widget-block--disabled * {
            pointer-events: none !important;
            cursor: default !important;
        }

        .widget-block--disabled {
            opacity: 0.45;
        }

        .search-results .search-result-item {
            background: var(--card) !important;
            border: 2px var(--border-style) var(--line) !important;
            border-radius: 12px !important;
            padding: 10px 14px !important;

            font-size: 14px !important;
            font-weight: 800 !important;
            color: var(--text) !important;
            cursor: pointer !important;
            transition:
                background-color .2s ease,
                border-color .2s ease,
                color .2s ease,
                filter .15s ease !important;
        }

        .search-results .search-result-item:hover {
            background: var(--soft) !important;
        }

        .search-results .search-result-item:nth-child(n+6) {
            display: none !important;
        }

        #fundamentalTabThesis .grid.grid--2 {
            grid-template-columns: 2fr 1fr;
        }

        #fundamentalTabThesis .rtf-content {
            max-height: calc(100vh - 350px);
            overflow-y: auto;
        }

        .presight-linked-indicators {
            display: flex;
            flex-wrap: wrap;
            align-items: flex-start;
            gap: 8px;
        }

        .presight-linked-indicators .indicator-item {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            background: var(--card) !important;
            border: 2px var(--border-style) var(--line) !important;
            border-radius: 12px !important;
            padding: 10px 14px !important;
            margin-right: 5px;

            font-size: 14px !important;
            font-weight: 800 !important;
            color: var(--text) !important;
            cursor: default !important;

            transition:
                background-color .2s ease,
                border-color .2s ease,
                color .2s ease,
                filter .15s ease !important;
        }

        .presight-linked-indicators .presight-linked-indicators__remove {
            width: 34px;
            height: 34px;
            padding: 0 !important;
            border-radius: 10px !important;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex: 0 0 auto;
        }

        .presight-linked-indicators .indicator-item__label {
            flex: 0 1 auto;
        }

        .presight-editor__actions {
            display: flex;
            flex-direction: row;
            align-items: center;
            flex-wrap: wrap;
        }

        .presight-editor__actions--indicators {
            flex-direction: column;
            align-items: stretch;
            gap: 12px;
        }

        .presight-editor__indicator-buttons {
            display: flex;
            flex-direction: row;
            align-items: center;
            flex-wrap: wrap;
            gap: 10px;
        }

        .presight-indicator-editor__sources {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .presight-indicator-editor__sources .hint {
            order: 1;
        }

        .presight-indicator-editor__sources #presightIndicatorRefreshSources {
            order: 2;
            margin-left: auto;
        }

        .presight-indicator-tier__delete {
            margin-left: 5px;
        }

        .presight-indicator-tier__min {
            margin-top: 3px;
        }

        #presightIndicatorAddTier {
            margin-top: 3px;
            margin-bottom: 10px;
        }

        #fundamentalSplitLayout {
            display: flex;
            width: 100%;
            height: auto;
        }

        .split-panel {
            flex-grow: 0;
            flex-shrink: 0;
            overflow-y: auto;
        }

        .split-panel--left {
            flex-basis: 60%;
            min-width: 280px;
        }

        .split-panel--right {
            flex-basis: 40%;
            min-width: 280px;
        }

        .split-resizer {
            width: 6px;
            background: var(--line);
            cursor: col-resize;
            flex-shrink: 0;
        }

        .widget-block {
            margin-top: 20px !important;
        }

        .split-resizer {
            margin: 0 10px;
        }

        .presight-step {
            display: none;
        }

        .presight-step.is-active {
            display: block;
        }

        .chip {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            padding: 6px 12px;
            font-size: 12px;
            font-weight: 700;
            border-radius: 999px;
            border: 1px solid var(--line);
            background: var(--ghost);
            color: var(--text);
            cursor: default;
            transition: background-color .2s ease,
                border-color .2s ease,
                color .2s ease,
                box-shadow .2s ease,
                transform .15s ease;
        }

        .chip--action {
            cursor: pointer;
        }

        .chip--target {
            background: var(--soft);
            border-color: color-mix(in srgb, var(--soft) 60%, var(--line) 40%);
            color: var(--text);
        }

        .chip--target:hover,
        .chip--target:focus-visible {
            background: color-mix(in srgb, var(--primary) 18%, var(--soft) 82%);
            border-color: var(--primary);
            box-shadow: 0 2px 6px rgba(0, 0, 0, .12);
            transform: translateY(-1px);
        }

        .chip--target.is-active {
            background: var(--primary);
            color: var(--primary-contrast);
            border-color: var(--primary);
        }

        body.dark .chip--target {
            background: color-mix(in srgb, var(--soft) 70%, var(--bg) 30%);
            border-color: color-mix(in srgb, var(--soft) 50%, var(--line) 50%);
        }

        .chip--target:focus-visible {
            outline: 2px solid var(--primary);
            outline-offset: 2px;
        }

        [hidden] {
            display: none !important;
        }

        .interpretation-card__body[hidden] {
            display: none !important;
        }

        .fundamental-add-document-btn {
            margin-bottom: 1rem;
        }

        .fundamental-editor__summary {
            display: flex;
            flex-direction: column;
            gap: 12px;
        }

        .fundamental-editor__summary-top {
            display: flex;
            align-items: flex-end;
            gap: 12px;
        }

        .fundamental-editor__name {
            width: 100%;
        }

        .fundamental-editor__name textarea {
            resize: none;
        }

        .fundamental-editor__meta {
            display: flex;
            gap: 8px;
            align-items: center;
            white-space: nowrap;
        }

        .fundamental-editor__summary-bottom {
            width: 100%;
        }

        .fundamental-editor__name {
            width: 100%;
        }

        .fundamental-editor__name .ctrl {
            width: 100%;
        }

        .fundamental-editor__summary-bottom {
            width: 100%;
        }

        .fundamental-editor__summary-bottom .ctrl {
            width: 100%;
        }

        .widget-subblock {
            margin-bottom: 20px;
        }

        #fundamentalTabTarget .grid.grid--2 {
            justify-items: start;
            align-items: start;
            column-gap: 0.5rem;
            row-gap: 0.75rem;
            margin-bottom: 0;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        #fundamentalTabTarget.fundamental-editor__panel {
            gap: 10px;
        }

        #fundamentalTabTarget .grid.grid--2>.column {
            text-align: left;
            justify-self: start;
        }

        #fundamentalTabTarget .grid.grid--2>.column>h3 {
            margin: 0 0 0.75rem 0;
        }

        #fundamentalTabTarget #fundamentalTargetGender,
        #fundamentalTabTarget #fundamentalTargetAge {
            margin-top: 0.75rem !important;
        }

        #fundamentalTabTarget #fundamentalTargetAge {
            display: flex;
            flex-wrap: wrap;
            row-gap: 0.75rem;
            column-gap: 0.75rem;
            padding-top: 0.25rem;
        }

        #fundamentalTabTarget #fundamentalTargetGender {
            display: flex;
            flex-wrap: wrap;
            row-gap: 0.5rem;
            column-gap: 0.5rem;
            padding-top: 0.25rem;
        }

        #fundamentalTabTarget>.row {
            margin-top: 0;
        }

        .target-toggle {
            transition: background-color 0.18s ease, color 0.18s ease, opacity 0.18s ease,
                border-color 0.18s ease;
            border-width: 2px;
            background: color-mix(in srgb, var(--soft) 78%, var(--card) 22%);
            color: color-mix(in srgb, var(--muted) 80%, var(--text) 20%);
            border-color: color-mix(in srgb, var(--line) 65%, transparent 35%);
        }

        .target-toggle.is-inactive {
            opacity: 0.55;
            filter: grayscale(0.25);
            background: color-mix(in srgb, var(--soft) 65%, var(--ghost) 35%);
            border-color: color-mix(in srgb, var(--line) 70%, transparent 30%);
            color: color-mix(in srgb, var(--muted) 75%, var(--text) 25%);
        }

        .target-toggle.is-selected,
        .target-toggle[data-selected="true"] {
            opacity: 1;
            filter: none;
            background: color-mix(in srgb, var(--ghost) 85%, transparent 15%);
            border-color: var(--text) !important;
            color: var(--text) !important;
            box-shadow: 0 0 0 2px color-mix(in srgb, var(--text) 18%, transparent 82%);
            font-weight: 800;
        }

        .sensors-app__actions {
            margin-top: 7px;
        }

        .dictionary-app__actions {
            margin-top: 7px;
        }

        .library-assistant__options {
            display: none;
        }

        body.is-experimental .library-assistant__options {
            display: block;
        }