
    :root {
      --navy: #1B2A5B;
      --red: #9F1111;
      --cream: #F5F1E6;
      --gold: #C9A227;
      --brand-display: "Baskerville Old Face", "Palatino Linotype", "Book Antiqua", Georgia, serif;
      --ink: #16213a;
      --paper: #fffdf7;
      --white: #ffffff;
      --line: rgba(27, 42, 91, 0.14);
      --shadow: 0 24px 60px rgba(16, 29, 63, 0.14);
      --shadow-soft: 0 16px 34px rgba(16, 29, 63, 0.08);
      --hero-shadow: 0 30px 60px rgba(10, 19, 44, 0.22);
      --page-bg-start: #f8f4ea;
      --page-bg-mid: #fffdf7;
      --page-bg-end: #f3ebdb;
      --page-sheen: rgba(27, 42, 91, 0.06);
      --frame-nav-surface: rgba(255, 253, 247, 0.94);
      --frame-nav-border: rgba(27, 42, 91, 0.22);
      --frame-nav-shadow: 0 12px 28px rgba(16, 29, 63, 0.08);
      --frame-height: 92px;
      --nib-frame-max-width: 1200px;
      --nib-content-max-width: 1180px;
      --hero-graphic: url("/assets/themes/emblem-signature_v1.0.svg");
      --login-graphic: url("/assets/themes/emblem-signature_v1.0.svg");
      --nib-ui-heading-1-size: 46px;
      --nib-ui-heading-2-size: 24px;
      --nib-ui-select-trigger-height: 48px;
      --nib-ui-select-search-height: 40px;
      --nib-ui-select-option-height: 44px;
      --frame-footer-surface: rgba(247, 243, 233, 0.96);
      --frame-footer-border: rgba(27, 42, 91, 0.2);
      --frame-footer-note: #5b6784;
      --nav-surface: rgba(255, 253, 247, 0.9);
      --nav-border: rgba(27, 42, 91, 0.2);
      --nav-shadow: 0 12px 28px rgba(16, 29, 63, 0.08);
      --phase-text: #5d6785;
      --primary-start: #1b2a5b;
      --primary-end: #31467d;
      --primary-border: rgba(27, 42, 91, 0.94);
      --primary-text: #ffffff;
      --secondary-bg: rgba(255, 255, 255, 0.84);
      --secondary-text: #1b2a5b;
      --secondary-border: rgba(27, 42, 91, 0.14);
      --secondary-shadow: 0 14px 26px rgba(16, 29, 63, 0.08);
      --accent-start: #d4b345;
      --accent-end: #c79b17;
      --accent-border: rgba(201, 162, 39, 0.64);
      --accent-text: #15295c;
      --hero-overlay-start: rgba(18, 31, 64, 0.92);
      --hero-overlay-end: rgba(155, 27, 46, 0.72);
      --hero-burst-one: rgba(201, 162, 39, 0.2);
      --hero-burst-two: rgba(155, 27, 46, 0.18);
      --hero-burst-three: rgba(27, 42, 91, 0.24);
      --surface-bg: rgba(255, 255, 255, 0.92);
      --surface-bg-strong: rgba(255, 255, 255, 0.97);
      --surface-border: rgba(27, 42, 91, 0.1);
      --card-bg: rgba(255, 255, 255, 0.94);
      --card-border: rgba(255, 255, 255, 0.58);
      --login-shell-start: rgba(99, 74, 124, 0.9);
      --login-shell-end: rgba(147, 82, 103, 0.84);
      --login-shell-border: rgba(255, 255, 255, 0.18);
      --login-shell-shadow: 0 30px 62px rgba(10, 19, 44, 0.28);
      --login-brand-bg-start: rgba(255, 253, 247, 0.98);
      --login-brand-bg-end: rgba(245, 241, 230, 0.96);
      --login-brand-border: rgba(201, 162, 39, 0.3);
      --login-brand-shadow: inset 0 1px 0 rgba(255,255,255,0.8), 0 16px 26px rgba(11, 18, 36, 0.12);
      --login-panel-bg: rgba(255, 255, 255, 0.96);
      --login-panel-border: rgba(255, 255, 255, 0.62);
      --input-bg: rgba(255, 255, 255, 0.97);
      --input-border: rgba(27, 42, 91, 0.14);
      --muted-text: #5b6784;
      --banner-start: rgba(27, 42, 91, 0.96);
      --banner-end: rgba(155, 27, 46, 0.88);
      --drawer-backdrop: rgba(17, 28, 59, 0.38);
      --drawer-bg-start: rgba(255, 255, 255, 0.98);
      --drawer-bg-end: rgba(245, 241, 230, 0.98);
      --drawer-shadow: -20px 0 50px rgba(17, 28, 59, 0.18);
      --footer-surface: rgba(247, 243, 233, 0.92);
      --footer-border: rgba(27, 42, 91, 0.2);
      --footer-note: #5b6784;
      --theme-menu-bg: rgba(255, 253, 247, 0.98);
      --theme-menu-border: rgba(27, 42, 91, 0.12);
      --theme-menu-shadow: 0 20px 42px rgba(16, 29, 63, 0.14);
      --theme-option-hover: rgba(27, 42, 91, 0.05);
      --theme-option-active: rgba(27, 42, 91, 0.08);
      --toolbar-icon-filter: drop-shadow(0 4px 8px rgba(27, 42, 91, 0.16));
      --table-shell-border: rgba(27, 42, 91, 0.12);
      --table-shell-bg: linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(247, 243, 233, 0.93));
      --table-head-bg: rgba(245, 241, 230, 0.86);
      --table-head-text: #1b2a5b;
      --table-line: rgba(63, 74, 96, 0.18);
      --table-line-strong: rgba(49, 60, 82, 0.32);
      --table-row-hover: rgba(27, 42, 91, 0.045);
      --timeline-shell-bg: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,241,230,0.92));
      --timeline-shell-border: rgba(201, 162, 39, 0.18);
      --row-menu-panel-bg: rgba(255, 254, 250, 0.99);
      --row-menu-panel-border: rgba(27, 42, 91, 0.18);
      --row-menu-panel-shadow: 0 24px 40px rgba(16, 29, 63, 0.2);
      --row-menu-item-bg: rgba(249, 244, 233, 0.98);
      --row-menu-item-hover: rgba(230, 214, 177, 0.92);
      --row-menu-item-border: rgba(27, 42, 91, 0.12);
      --row-menu-item-text: #1b2a5b;
      --row-tone-neutral: rgba(0, 0, 0, 0.02);
      --row-tone-review: rgba(252, 236, 215, 0.94);
      --row-tone-minor-revision: rgba(252, 236, 215, 0.94);
      --row-tone-major-revision: rgba(248, 225, 189, 0.96);
      --row-tone-accepted: rgba(221, 247, 231, 0.92);
      --row-tone-rejected: rgba(249, 224, 229, 0.92);
      --row-tone-incomplete: rgba(0, 0, 0, 0.04);
      --row-accent-neutral: rgba(120, 120, 120, 0.5);
      --row-accent-review: #8b4f18;
      --row-accent-minor-revision: #8b4f18;
      --row-accent-major-revision: #8a4c12;
      --row-accent-accepted: #156f49;
      --row-accent-rejected: #94304b;
      --row-accent-incomplete: rgba(120, 120, 120, 0.6);
    }
    html[data-navigation-theme="nibveda-flat-full-content"] {
      --nib-frame-max-width: 100%;
      --nib-content-max-width: 100%;
    }
    html[data-theme="navy-focus"] {
      --page-bg-start: #edf1fb;
      --page-bg-mid: #fafbff;
      --page-bg-end: #ecf0fa;
      --page-sheen: rgba(27, 42, 91, 0.09);
      --nav-surface: rgba(233, 239, 252, 0.92);
      --nav-border: rgba(27, 42, 91, 0.24);
      --phase-text: #4f5d82;
      --primary-start: #142451;
      --primary-end: #233c75;
      --secondary-bg: rgba(236, 241, 252, 0.88);
      --secondary-border: rgba(27, 42, 91, 0.18);
      --hero-overlay-start: rgba(14, 24, 51, 0.94);
      --hero-overlay-end: rgba(27, 42, 91, 0.8);
      --surface-bg: rgba(247, 249, 255, 0.95);
      --card-bg: rgba(244, 247, 255, 0.96);
      --input-bg: rgba(250, 252, 255, 0.98);
      --banner-start: rgba(20, 36, 81, 0.97);
      --banner-end: rgba(49, 70, 125, 0.9);
      --footer-surface: rgba(230, 236, 248, 0.96);
      --footer-border: rgba(27, 42, 91, 0.22);
      --footer-note: #4f5d82;
      --theme-menu-bg: rgba(244, 247, 255, 0.99);
      --theme-option-hover: rgba(27, 42, 91, 0.06);
      --theme-option-active: rgba(27, 42, 91, 0.1);
      --toolbar-icon-filter: drop-shadow(0 4px 8px rgba(20, 36, 81, 0.18));
      --table-shell-border: rgba(27, 42, 91, 0.15);
      --table-shell-bg: linear-gradient(180deg, rgba(246, 249, 255, 0.98), rgba(231, 237, 251, 0.95));
      --table-head-bg: rgba(224, 232, 248, 0.94);
      --table-head-text: #142451;
      --table-line: rgba(63, 74, 96, 0.2);
      --table-row-hover: rgba(27, 42, 91, 0.055);
      --timeline-shell-bg: linear-gradient(180deg, rgba(248, 250, 255, 0.99), rgba(232, 238, 252, 0.95));
      --timeline-shell-border: rgba(27, 42, 91, 0.16);
      --row-menu-panel-bg: rgba(245, 249, 255, 0.99);
      --row-menu-panel-border: rgba(27, 42, 91, 0.18);
      --row-menu-item-bg: rgba(236, 242, 252, 0.98);
      --row-menu-item-hover: rgba(210, 223, 246, 0.96);
    }
    html[data-theme="regal-red"] {
      --page-bg-start: #fbf2ef;
      --page-bg-mid: #fffaf8;
      --page-bg-end: #f6ebe8;
      --page-sheen: rgba(155, 27, 46, 0.07);
      --nav-surface: rgba(255, 249, 246, 0.93);
      --nav-border: rgba(155, 27, 46, 0.22);
      --phase-text: #7d4d5a;
      --primary-start: #8f1b35;
      --primary-end: #b6324d;
      --primary-border: rgba(143, 27, 53, 0.76);
      --secondary-text: #8f1b35;
      --secondary-border: rgba(155, 27, 46, 0.18);
      --hero-overlay-start: rgba(91, 19, 38, 0.92);
      --hero-overlay-end: rgba(27, 42, 91, 0.76);
      --surface-border: rgba(155, 27, 46, 0.12);
      --input-border: rgba(155, 27, 46, 0.16);
      --banner-start: rgba(143, 27, 53, 0.95);
      --banner-end: rgba(27, 42, 91, 0.84);
      --footer-surface: rgba(251, 241, 239, 0.96);
      --footer-border: rgba(155, 27, 46, 0.2);
      --footer-note: #724b56;
      --theme-menu-bg: rgba(255, 249, 246, 0.99);
      --theme-option-hover: rgba(155, 27, 46, 0.06);
      --theme-option-active: rgba(155, 27, 46, 0.11);
      --toolbar-icon-filter: drop-shadow(0 4px 8px rgba(155, 27, 46, 0.18));
      --table-shell-border: rgba(155, 27, 46, 0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(255, 251, 250, 0.98), rgba(251, 240, 236, 0.95));
      --table-head-bg: rgba(248, 232, 229, 0.94);
      --table-head-text: #8f1b35;
      --table-line: rgba(80, 68, 83, 0.2);
      --table-row-hover: rgba(155, 27, 46, 0.045);
      --timeline-shell-bg: linear-gradient(180deg, rgba(255, 252, 251, 0.99), rgba(250, 238, 235, 0.95));
      --timeline-shell-border: rgba(155, 27, 46, 0.15);
      --row-menu-panel-bg: rgba(255, 250, 249, 0.99);
      --row-menu-panel-border: rgba(155, 27, 46, 0.18);
      --row-menu-item-bg: rgba(252, 238, 235, 0.98);
      --row-menu-item-hover: rgba(245, 214, 209, 0.96);
      --row-menu-item-text: #8f1b35;
    }
    html[data-theme="parchment-cream"] {
      --page-bg-start: #faf6ee;
      --page-bg-mid: #fffdf8;
      --page-bg-end: #f3ead8;
      --page-sheen: rgba(201, 162, 39, 0.06);
      --nav-surface: rgba(250, 246, 238, 0.94);
      --nav-border: rgba(201, 162, 39, 0.24);
      --phase-text: #786a4c;
      --primary-start: #1b2a5b;
      --primary-end: #3d4967;
      --secondary-bg: rgba(255, 251, 244, 0.9);
      --secondary-border: rgba(201, 162, 39, 0.22);
      --accent-start: #c79d2b;
      --accent-end: #dfbb59;
      --hero-overlay-start: rgba(27, 42, 91, 0.84);
      --hero-overlay-end: rgba(113, 84, 31, 0.66);
      --surface-bg: rgba(255, 251, 243, 0.95);
      --card-bg: rgba(255, 252, 246, 0.96);
      --input-bg: rgba(255, 253, 248, 0.98);
      --input-border: rgba(201, 162, 39, 0.18);
      --banner-start: rgba(27, 42, 91, 0.9);
      --banner-end: rgba(201, 162, 39, 0.76);
      --footer-surface: rgba(247, 240, 226, 0.96);
      --footer-border: rgba(201, 162, 39, 0.22);
      --footer-note: #6e654d;
      --theme-menu-bg: rgba(255, 252, 246, 0.99);
      --theme-option-hover: rgba(201, 162, 39, 0.08);
      --theme-option-active: rgba(201, 162, 39, 0.12);
      --toolbar-icon-filter: drop-shadow(0 4px 8px rgba(201, 162, 39, 0.2));
      --table-shell-border: rgba(201, 162, 39, 0.16);
      --table-shell-bg: linear-gradient(180deg, rgba(255, 253, 248, 0.98), rgba(248, 241, 226, 0.96));
      --table-head-bg: rgba(248, 239, 220, 0.92);
      --table-head-text: #5f5130;
      --table-line: rgba(99, 88, 66, 0.19);
      --table-row-hover: rgba(201, 162, 39, 0.05);
      --timeline-shell-bg: linear-gradient(180deg, rgba(255, 253, 249, 0.99), rgba(248, 241, 226, 0.95));
      --timeline-shell-border: rgba(201, 162, 39, 0.18);
      --row-menu-panel-bg: rgba(255, 252, 247, 0.99);
      --row-menu-panel-border: rgba(201, 162, 39, 0.2);
      --row-menu-item-bg: rgba(250, 241, 222, 0.98);
      --row-menu-item-hover: rgba(239, 223, 184, 0.96);
      --row-menu-item-text: #5f5130;
    }
    html[data-theme="gold-accent"] {
      --page-bg-start: #fcf8ef;
      --page-bg-mid: #fffdf8;
      --page-bg-end: #f5eddd;
      --page-sheen: rgba(201, 162, 39, 0.08);
      --nav-surface: rgba(255, 251, 243, 0.94);
      --nav-border: rgba(173, 125, 18, 0.24);
      --phase-text: #786339;
      --primary-start: #ad7d12;
      --primary-end: #cfa12b;
      --primary-border: rgba(173, 125, 18, 0.7);
      --primary-text: #16274e;
      --secondary-border: rgba(201, 162, 39, 0.24);
      --accent-start: #1b2a5b;
      --accent-end: #30477b;
      --accent-border: rgba(27, 42, 91, 0.58);
      --accent-text: #ffffff;
      --hero-overlay-start: rgba(82, 60, 12, 0.84);
      --hero-overlay-end: rgba(27, 42, 91, 0.76);
      --surface-border: rgba(201, 162, 39, 0.18);
      --card-border: rgba(201, 162, 39, 0.22);
      --input-border: rgba(201, 162, 39, 0.22);
      --banner-start: rgba(173, 125, 18, 0.92);
      --banner-end: rgba(27, 42, 91, 0.84);
      --footer-surface: rgba(248, 243, 231, 0.97);
      --footer-border: rgba(173, 125, 18, 0.22);
      --footer-note: #6f6547;
      --theme-menu-bg: rgba(255, 252, 245, 0.99);
      --theme-option-hover: rgba(201, 162, 39, 0.08);
      --theme-option-active: rgba(201, 162, 39, 0.14);
      --toolbar-icon-filter: drop-shadow(0 4px 8px rgba(173, 125, 18, 0.2));
      --table-shell-border: rgba(201, 162, 39, 0.18);
      --table-shell-bg: linear-gradient(180deg, rgba(255, 252, 246, 0.98), rgba(246, 236, 214, 0.95));
      --table-head-bg: rgba(246, 233, 198, 0.92);
      --table-head-text: #7a5907;
      --table-line: rgba(102, 88, 58, 0.2);
      --table-row-hover: rgba(201, 162, 39, 0.055);
      --timeline-shell-bg: linear-gradient(180deg, rgba(255, 252, 247, 0.99), rgba(246, 235, 211, 0.95));
      --timeline-shell-border: rgba(201, 162, 39, 0.2);
      --row-menu-panel-bg: rgba(255, 252, 245, 0.99);
      --row-menu-panel-border: rgba(201, 162, 39, 0.22);
      --row-menu-item-bg: rgba(247, 235, 206, 0.98);
      --row-menu-item-hover: rgba(236, 217, 167, 0.96);
      --row-menu-item-text: #7a5907;
    }
    html[data-theme="logo-classic"] {
      --page-bg-start: #f8f4eb;
      --page-bg-mid: #fffdf8;
      --page-bg-end: #f4ead8;
      --page-sheen: rgba(155, 27, 46, 0.045);
      --nav-surface: rgba(255, 252, 246, 0.95);
      --nav-border: rgba(27, 42, 91, 0.24);
      --primary-start: #102550;
      --primary-end: #9b1b2e;
      --secondary-bg: rgba(255, 253, 248, 0.92);
      --secondary-text: #102550;
      --secondary-border: rgba(155, 27, 46, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e2c15a;
      --accent-text: #102550;
      --surface-bg: rgba(255, 253, 248, 0.96);
      --card-bg: rgba(255, 253, 248, 0.98);
      --input-border: rgba(27, 42, 91, 0.16);
      --footer-surface: rgba(247, 241, 229, 0.97);
      --footer-border: rgba(27, 42, 91, 0.24);
      --theme-menu-bg: rgba(255, 253, 248, 0.99);
      --theme-option-hover: rgba(155, 27, 46, 0.055);
      --theme-option-active: rgba(155, 27, 46, 0.11);
      --table-shell-border: rgba(27, 42, 91, 0.14);
      --table-head-bg: rgba(247, 239, 226, 0.94);
      --table-head-text: #102550;
      --timeline-shell-border: rgba(155, 27, 46, 0.14);
      --row-menu-panel-bg: rgba(255, 252, 247, 0.99);
      --row-menu-panel-border: rgba(27, 42, 91, 0.18);
      --row-menu-item-bg: rgba(249, 241, 230, 0.98);
      --row-menu-item-hover: rgba(238, 222, 194, 0.96);
    }
    html[data-theme="ink-insight"] {
      --page-bg-start: #eef2fb;
      --page-bg-mid: #fbfcff;
      --page-bg-end: #edf1f8;
      --page-sheen: rgba(27, 42, 91, 0.085);
      --nav-surface: rgba(241, 245, 253, 0.95);
      --nav-border: rgba(16, 37, 80, 0.25);
      --primary-start: #0f244f;
      --primary-end: #1b3c78;
      --secondary-bg: rgba(246, 249, 255, 0.92);
      --secondary-text: #0f244f;
      --secondary-border: rgba(16, 37, 80, 0.18);
      --accent-start: #9b1b2e;
      --accent-end: #c9a227;
      --accent-text: #ffffff;
      --surface-bg: rgba(249, 251, 255, 0.96);
      --card-bg: rgba(247, 250, 255, 0.98);
      --input-border: rgba(16, 37, 80, 0.18);
      --footer-surface: rgba(232, 238, 249, 0.97);
      --footer-border: rgba(16, 37, 80, 0.24);
      --theme-menu-bg: rgba(247, 250, 255, 0.99);
      --theme-option-hover: rgba(16, 37, 80, 0.06);
      --theme-option-active: rgba(16, 37, 80, 0.11);
      --table-shell-border: rgba(16, 37, 80, 0.16);
      --table-head-bg: rgba(226, 234, 249, 0.96);
      --table-head-text: #0f244f;
      --timeline-shell-border: rgba(16, 37, 80, 0.16);
      --row-menu-panel-bg: rgba(247, 250, 255, 0.99);
      --row-menu-panel-border: rgba(16, 37, 80, 0.2);
      --row-menu-item-bg: rgba(235, 241, 252, 0.98);
      --row-menu-item-hover: rgba(213, 226, 248, 0.96);
    }
    html[data-theme="crimson-ink"] {
      --page-bg-start: #f8eef0;
      --page-bg-mid: #fff9fa;
      --page-bg-end: #f2e4e8;
      --page-sheen: rgba(155, 27, 46, 0.08);
      --nav-surface: rgba(255, 248, 249, 0.95);
      --nav-border: rgba(155, 27, 46, 0.26);
      --primary-start: #9b1b2e;
      --primary-end: #1b2a5b;
      --secondary-bg: rgba(255, 250, 250, 0.92);
      --secondary-text: #8f1b35;
      --secondary-border: rgba(155, 27, 46, 0.18);
      --accent-start: #c9a227;
      --accent-end: #efd47a;
      --accent-text: #1b2a5b;
      --surface-bg: rgba(255, 250, 250, 0.96);
      --card-bg: rgba(255, 250, 250, 0.98);
      --input-border: rgba(155, 27, 46, 0.18);
      --footer-surface: rgba(249, 235, 238, 0.97);
      --footer-border: rgba(155, 27, 46, 0.24);
      --theme-menu-bg: rgba(255, 250, 250, 0.99);
      --theme-option-hover: rgba(155, 27, 46, 0.06);
      --theme-option-active: rgba(155, 27, 46, 0.12);
      --table-shell-border: rgba(155, 27, 46, 0.16);
      --table-head-bg: rgba(248, 229, 233, 0.96);
      --table-head-text: #8f1b35;
      --timeline-shell-border: rgba(155, 27, 46, 0.16);
      --row-menu-panel-bg: rgba(255, 250, 250, 0.99);
      --row-menu-panel-border: rgba(155, 27, 46, 0.2);
      --row-menu-item-bg: rgba(252, 237, 240, 0.98);
      --row-menu-item-hover: rgba(245, 214, 220, 0.96);
    }
    html[data-theme="ivory-seal"] {
      --page-bg-start: #fbf7ee;
      --page-bg-mid: #fffdfa;
      --page-bg-end: #f3ead7;
      --page-sheen: rgba(201, 162, 39, 0.075);
      --nav-surface: rgba(255, 252, 244, 0.95);
      --nav-border: rgba(201, 162, 39, 0.28);
      --primary-start: #7d1630;
      --primary-end: #c9a227;
      --secondary-bg: rgba(255, 253, 247, 0.92);
      --secondary-text: #1b2a5b;
      --secondary-border: rgba(201, 162, 39, 0.24);
      --accent-start: #1b2a5b;
      --accent-end: #9b1b2e;
      --accent-text: #ffffff;
      --surface-bg: rgba(255, 253, 247, 0.96);
      --card-bg: rgba(255, 253, 247, 0.98);
      --input-border: rgba(201, 162, 39, 0.22);
      --footer-surface: rgba(248, 240, 224, 0.97);
      --footer-border: rgba(201, 162, 39, 0.26);
      --theme-menu-bg: rgba(255, 253, 247, 0.99);
      --theme-option-hover: rgba(201, 162, 39, 0.08);
      --theme-option-active: rgba(201, 162, 39, 0.15);
      --table-shell-border: rgba(201, 162, 39, 0.2);
      --table-head-bg: rgba(247, 235, 205, 0.96);
      --table-head-text: #65480b;
      --timeline-shell-border: rgba(201, 162, 39, 0.2);
      --row-menu-panel-bg: rgba(255, 252, 244, 0.99);
      --row-menu-panel-border: rgba(201, 162, 39, 0.22);
      --row-menu-item-bg: rgba(250, 240, 216, 0.98);
      --row-menu-item-hover: rgba(238, 220, 178, 0.96);
    }
    html[data-theme="executive-maroon"] {
      --page-bg-start: #f5eef2;
      --page-bg-mid: #fffafc;
      --page-bg-end: #eee6ed;
      --page-sheen: rgba(27, 42, 91, 0.05);
      --nav-surface: rgba(255, 250, 252, 0.95);
      --nav-border: rgba(92, 35, 73, 0.24);
      --primary-start: #5c2349;
      --primary-end: #1b2a5b;
      --secondary-bg: rgba(255, 250, 252, 0.92);
      --secondary-text: #5c2349;
      --secondary-border: rgba(92, 35, 73, 0.18);
      --accent-start: #c9a227;
      --accent-end: #9b1b2e;
      --accent-text: #ffffff;
      --surface-bg: rgba(255, 250, 252, 0.96);
      --card-bg: rgba(255, 250, 252, 0.98);
      --input-border: rgba(92, 35, 73, 0.18);
      --footer-surface: rgba(242, 233, 239, 0.97);
      --footer-border: rgba(92, 35, 73, 0.22);
      --theme-menu-bg: rgba(255, 250, 252, 0.99);
      --theme-option-hover: rgba(92, 35, 73, 0.06);
      --theme-option-active: rgba(92, 35, 73, 0.12);
      --table-shell-border: rgba(92, 35, 73, 0.16);
      --table-head-bg: rgba(239, 226, 236, 0.96);
      --table-head-text: #5c2349;
      --timeline-shell-border: rgba(92, 35, 73, 0.16);
      --row-menu-panel-bg: rgba(255, 250, 252, 0.99);
      --row-menu-panel-border: rgba(92, 35, 73, 0.2);
      --row-menu-item-bg: rgba(247, 235, 243, 0.98);
      --row-menu-item-hover: rgba(235, 215, 230, 0.96);
    }
    html[data-theme="heritage-white"] {
      --page-bg-start: #fcfcfb;
      --page-bg-mid: #ffffff;
      --page-bg-end: #f5f0e3;
      --page-sheen: rgba(27, 42, 91, 0.035);
      --nav-surface: rgba(255, 255, 255, 0.97);
      --nav-border: rgba(27, 42, 91, 0.18);
      --phase-text: #61708f;
      --primary-start: #1b2a5b;
      --primary-end: #9b1b2e;
      --primary-border: rgba(27, 42, 91, 0.9);
      --secondary-bg: rgba(255, 255, 255, 0.95);
      --secondary-text: #1b2a5b;
      --secondary-border: rgba(201, 162, 39, 0.18);
      --accent-start: #c9a227;
      --accent-end: #e3c86f;
      --accent-border: rgba(201, 162, 39, 0.58);
      --accent-text: #16274e;
      --hero-overlay-start: rgba(20, 33, 70, 0.88);
      --hero-overlay-end: rgba(155, 27, 46, 0.7);
      --surface-bg: rgba(255, 255, 255, 0.97);
      --surface-bg-strong: rgba(255, 255, 255, 0.995);
      --surface-border: rgba(27, 42, 91, 0.08);
      --card-bg: rgba(255, 255, 255, 0.985);
      --card-border: rgba(27, 42, 91, 0.08);
      --input-bg: rgba(255, 255, 255, 0.995);
      --input-border: rgba(27, 42, 91, 0.12);
      --muted-text: #62708d;
      --banner-start: rgba(27, 42, 91, 0.96);
      --banner-end: rgba(201, 162, 39, 0.86);
      --drawer-bg-start: rgba(255, 255, 255, 0.99);
      --drawer-bg-end: rgba(250, 246, 236, 0.98);
      --footer-surface: rgba(250, 248, 242, 0.98);
      --footer-border: rgba(27, 42, 91, 0.18);
      --footer-note: #64708b;
      --theme-menu-bg: rgba(255, 255, 255, 0.99);
      --theme-option-hover: rgba(27, 42, 91, 0.045);
      --theme-option-active: rgba(27, 42, 91, 0.08);
      --toolbar-icon-filter: drop-shadow(0 4px 8px rgba(27, 42, 91, 0.14));
      --table-shell-border: rgba(27, 42, 91, 0.12);
      --table-shell-bg: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(249, 245, 236, 0.95));
      --table-head-bg: rgba(247, 243, 233, 0.92);
      --table-head-text: #1b2a5b;
      --table-line: rgba(63, 74, 96, 0.16);
      --table-line-strong: rgba(49, 60, 82, 0.28);
      --table-row-hover: rgba(27, 42, 91, 0.038);
      --timeline-shell-bg: linear-gradient(180deg, rgba(255,255,255,0.99), rgba(249,245,236,0.95));
      --timeline-shell-border: rgba(201, 162, 39, 0.14);
      --row-menu-panel-bg: rgba(255, 255, 255, 0.99);
      --row-menu-panel-border: rgba(27, 42, 91, 0.14);
      --row-menu-item-bg: rgba(250, 246, 237, 0.98);
      --row-menu-item-hover: rgba(240, 229, 202, 0.96);
      --row-menu-item-text: #1b2a5b;
    }
    html[data-theme="trust-ledger"] {
      --page-bg-start: #edf2f9;
      --page-bg-mid: #f9fbff;
      --page-bg-end: #f3ecdc;
      --page-sheen: rgba(27, 42, 91, 0.085);
      --nav-surface: rgba(245, 248, 253, 0.96);
      --nav-border: rgba(17, 34, 76, 0.24);
      --phase-text: #53637f;
      --primary-start: #11224c;
      --primary-end: #36548e;
      --primary-border: rgba(17, 34, 76, 0.9);
      --secondary-bg: rgba(255, 255, 255, 0.94);
      --secondary-text: #11224c;
      --secondary-border: rgba(17, 34, 76, 0.16);
      --accent-start: #c9a227;
      --accent-end: #dbbb5b;
      --accent-border: rgba(201, 162, 39, 0.6);
      --accent-text: #11224c;
      --hero-overlay-start: rgba(17, 34, 76, 0.92);
      --hero-overlay-end: rgba(155, 27, 46, 0.68);
      --surface-bg: rgba(248, 251, 255, 0.96);
      --surface-bg-strong: rgba(255, 255, 255, 0.985);
      --surface-border: rgba(17, 34, 76, 0.1);
      --card-bg: rgba(250, 252, 255, 0.985);
      --card-border: rgba(17, 34, 76, 0.1);
      --input-bg: rgba(255, 255, 255, 0.995);
      --input-border: rgba(17, 34, 76, 0.14);
      --muted-text: #56647e;
      --banner-start: rgba(17, 34, 76, 0.97);
      --banner-end: rgba(201, 162, 39, 0.84);
      --drawer-bg-start: rgba(249, 251, 255, 0.99);
      --drawer-bg-end: rgba(245, 239, 225, 0.98);
      --footer-surface: rgba(238, 243, 250, 0.98);
      --footer-border: rgba(17, 34, 76, 0.2);
      --footer-note: #56647e;
      --theme-menu-bg: rgba(249, 251, 255, 0.99);
      --theme-option-hover: rgba(17, 34, 76, 0.05);
      --theme-option-active: rgba(17, 34, 76, 0.085);
      --toolbar-icon-filter: drop-shadow(0 4px 8px rgba(17, 34, 76, 0.16));
      --table-shell-border: rgba(17, 34, 76, 0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(250, 252, 255, 0.99), rgba(242, 236, 221, 0.95));
      --table-head-bg: rgba(232, 239, 249, 0.95);
      --table-head-text: #11224c;
      --table-line: rgba(54, 73, 108, 0.18);
      --table-line-strong: rgba(40, 58, 92, 0.3);
      --table-row-hover: rgba(17, 34, 76, 0.045);
      --timeline-shell-bg: linear-gradient(180deg, rgba(250,252,255,0.99), rgba(242,236,221,0.95));
      --timeline-shell-border: rgba(201, 162, 39, 0.16);
      --row-menu-panel-bg: rgba(248, 251, 255, 0.99);
      --row-menu-panel-border: rgba(17, 34, 76, 0.16);
      --row-menu-item-bg: rgba(236, 242, 250, 0.98);
      --row-menu-item-hover: rgba(220, 230, 245, 0.96);
      --row-menu-item-text: #11224c;
    }
    html[data-theme="midnight-obsidian"] {
      --page-bg-start: #d6dcea;
      --page-bg-mid: #e9eef6;
      --page-bg-end: #cfc7d7;
      --page-sheen: rgba(12, 21, 47, 0.15);
      --nav-surface: rgba(235, 240, 249, 0.94);
      --nav-border: rgba(32, 46, 86, 0.24);
      --phase-text: #596783;
      --primary-start: #101b3c;
      --primary-end: #253763;
      --primary-border: rgba(16, 27, 60, 0.9);
      --secondary-text: #102248;
      --secondary-border: rgba(32, 46, 86, 0.18);
      --accent-start: #b48a22;
      --accent-end: #dcc57d;
      --accent-text: #102248;
      --hero-overlay-start: rgba(7, 12, 29, 0.94);
      --hero-overlay-end: rgba(53, 31, 74, 0.86);
      --hero-burst-one: rgba(214, 197, 125, 0.14);
      --hero-burst-two: rgba(111, 52, 130, 0.18);
      --hero-burst-three: rgba(18, 28, 58, 0.3);
      --surface-bg: rgba(248, 250, 255, 0.96);
      --surface-bg-strong: rgba(253, 254, 255, 0.988);
      --card-bg: rgba(248, 251, 255, 0.98);
      --input-bg: rgba(252, 253, 255, 0.995);
      --input-border: rgba(32, 46, 86, 0.16);
      --login-shell-start: rgba(10, 17, 39, 0.92);
      --login-shell-end: rgba(46, 39, 79, 0.88);
      --login-shell-border: rgba(223, 198, 122, 0.22);
      --login-shell-shadow: 0 34px 72px rgba(5, 10, 24, 0.34);
      --login-brand-bg-start: rgba(250, 251, 255, 0.97);
      --login-brand-bg-end: rgba(229, 234, 244, 0.94);
      --login-brand-border: rgba(180, 138, 34, 0.34);
      --login-panel-bg: rgba(249, 251, 255, 0.94);
      --login-panel-border: rgba(214, 221, 239, 0.58);
      --muted-text: #5a6680;
      --banner-start: rgba(16, 27, 60, 0.96);
      --banner-end: rgba(73, 44, 80, 0.84);
      --footer-surface: rgba(233, 237, 246, 0.98);
      --footer-border: rgba(32, 46, 86, 0.22);
      --footer-note: #59667f;
      --theme-menu-bg: rgba(248, 250, 255, 0.99);
      --theme-option-hover: rgba(32, 46, 86, 0.05);
      --theme-option-active: rgba(32, 46, 86, 0.09);
      --table-shell-border: rgba(32, 46, 86, 0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(250, 252, 255, 0.99), rgba(237, 241, 249, 0.95));
      --table-head-bg: rgba(228, 235, 248, 0.95);
      --table-head-text: #102248;
      --table-row-hover: rgba(16, 27, 60, 0.042);
      --timeline-shell-bg: linear-gradient(180deg, rgba(251,253,255,0.99), rgba(237,241,249,0.95));
      --timeline-shell-border: rgba(185, 147, 41, 0.18);
      --row-menu-panel-bg: rgba(247, 250, 255, 0.99);
      --row-menu-panel-border: rgba(32, 46, 86, 0.16);
      --row-menu-item-bg: rgba(236, 241, 250, 0.98);
      --row-menu-item-hover: rgba(220, 228, 244, 0.96);
      --row-menu-item-text: #102248;
    }
    html[data-theme="silver-mist"] {
      --page-bg-start: #edf2f8;
      --page-bg-mid: #ffffff;
      --page-bg-end: #e2e8f0;
      --page-sheen: rgba(90, 104, 128, 0.06);
      --nav-surface: rgba(255, 255, 255, 0.96);
      --nav-border: rgba(90, 104, 128, 0.18);
      --phase-text: #6b768c;
      --primary-start: #54647d;
      --primary-end: #7a879a;
      --primary-border: rgba(84, 100, 125, 0.72);
      --primary-text: #ffffff;
      --secondary-text: #324763;
      --secondary-border: rgba(90, 104, 128, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e1c56e;
      --accent-text: #223759;
      --hero-overlay-start: rgba(201, 208, 220, 0.74);
      --hero-overlay-end: rgba(126, 140, 166, 0.64);
      --hero-burst-one: rgba(255, 255, 255, 0.34);
      --hero-burst-two: rgba(175, 184, 200, 0.2);
      --hero-burst-three: rgba(94, 110, 136, 0.18);
      --surface-bg: rgba(255, 255, 255, 0.97);
      --surface-bg-strong: rgba(255, 255, 255, 0.995);
      --card-bg: rgba(255, 255, 255, 0.99);
      --input-bg: rgba(255, 255, 255, 0.998);
      --input-border: rgba(90, 104, 128, 0.14);
      --login-shell-start: rgba(246, 248, 252, 0.92);
      --login-shell-end: rgba(213, 220, 231, 0.86);
      --login-shell-border: rgba(103, 119, 144, 0.22);
      --login-shell-shadow: 0 28px 60px rgba(76, 91, 116, 0.18);
      --login-brand-bg-start: rgba(255, 255, 255, 0.99);
      --login-brand-bg-end: rgba(242, 245, 249, 0.96);
      --login-brand-border: rgba(103, 119, 144, 0.18);
      --login-panel-bg: rgba(255, 255, 255, 0.94);
      --login-panel-border: rgba(120, 135, 158, 0.18);
      --muted-text: #6b768c;
      --banner-start: rgba(84, 100, 125, 0.94);
      --banner-end: rgba(201, 162, 39, 0.8);
      --footer-surface: rgba(245, 247, 250, 0.98);
      --footer-border: rgba(90, 104, 128, 0.16);
      --footer-note: #6b768c;
      --theme-menu-bg: rgba(255, 255, 255, 0.99);
      --theme-option-hover: rgba(90, 104, 128, 0.045);
      --theme-option-active: rgba(90, 104, 128, 0.08);
      --table-shell-border: rgba(90, 104, 128, 0.12);
      --table-shell-bg: linear-gradient(180deg, rgba(255,255,255,0.99), rgba(244,246,250,0.95));
      --table-head-bg: rgba(242, 245, 249, 0.95);
      --table-head-text: #324763;
      --table-row-hover: rgba(90, 104, 128, 0.036);
      --row-menu-panel-bg: rgba(255,255,255,0.99);
      --row-menu-panel-border: rgba(90,104,128,0.15);
      --row-menu-item-bg: rgba(245,247,250,0.98);
      --row-menu-item-hover: rgba(231,236,243,0.96);
      --row-menu-item-text: #324763;
    }
    html[data-theme="studio-plain"] {
      --page-bg-start: #f7f9fc;
      --page-bg-mid: #ffffff;
      --page-bg-end: #eef2f8;
      --page-sheen: rgba(27, 42, 91, 0.035);
      --nav-surface: rgba(255, 255, 255, 0.97);
      --nav-border: rgba(27, 42, 91, 0.18);
      --phase-text: #65728e;
      --primary-start: #1b2a5b;
      --primary-end: #31467d;
      --secondary-text: #1b2a5b;
      --secondary-border: rgba(27, 42, 91, 0.12);
      --accent-start: #c9a227;
      --accent-end: #dfc26b;
      --accent-text: #1b2a5b;
      --hero-overlay-start: rgba(240, 244, 251, 0.86);
      --hero-overlay-end: rgba(221, 229, 242, 0.8);
      --hero-burst-one: rgba(201, 162, 39, 0.08);
      --hero-burst-two: rgba(27, 42, 91, 0.06);
      --hero-burst-three: rgba(27, 42, 91, 0.1);
      --surface-bg: rgba(255, 255, 255, 0.975);
      --surface-bg-strong: rgba(255, 255, 255, 0.998);
      --card-bg: rgba(255, 255, 255, 0.99);
      --input-bg: rgba(255, 255, 255, 0.998);
      --input-border: rgba(27, 42, 91, 0.12);
      --login-shell-start: rgba(255, 255, 255, 0.9);
      --login-shell-end: rgba(241, 245, 251, 0.88);
      --login-shell-border: rgba(27, 42, 91, 0.12);
      --login-shell-shadow: 0 28px 54px rgba(27, 42, 91, 0.1);
      --login-brand-bg-start: rgba(255, 255, 255, 1);
      --login-brand-bg-end: rgba(247, 249, 252, 0.98);
      --login-brand-border: rgba(27, 42, 91, 0.1);
      --login-panel-bg: rgba(255, 255, 255, 0.97);
      --login-panel-border: rgba(27, 42, 91, 0.1);
      --muted-text: #62708d;
      --banner-start: rgba(27, 42, 91, 0.94);
      --banner-end: rgba(201, 162, 39, 0.8);
      --footer-surface: rgba(249, 250, 252, 0.98);
      --footer-border: rgba(27, 42, 91, 0.16);
      --footer-note: #65728e;
      --theme-menu-bg: rgba(255, 255, 255, 0.99);
      --theme-option-hover: rgba(27, 42, 91, 0.04);
      --theme-option-active: rgba(27, 42, 91, 0.075);
      --table-shell-border: rgba(27, 42, 91, 0.1);
      --table-shell-bg: linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,249,252,0.95));
      --table-head-bg: rgba(244, 247, 251, 0.95);
      --table-head-text: #1b2a5b;
      --table-row-hover: rgba(27, 42, 91, 0.032);
      --row-menu-panel-bg: rgba(255,255,255,0.99);
      --row-menu-panel-border: rgba(27,42,91,0.14);
      --row-menu-item-bg: rgba(247,249,252,0.98);
      --row-menu-item-hover: rgba(236,240,247,0.96);
      --row-menu-item-text: #1b2a5b;
    }
    html[data-theme="sandstone-ledger"] {
      --page-bg-start: #f3e8d3;
      --page-bg-mid: #fbf6eb;
      --page-bg-end: #e4d1b0;
      --page-sheen: rgba(143, 106, 39, 0.08);
      --nav-surface: rgba(255, 251, 244, 0.95);
      --nav-border: rgba(143, 106, 39, 0.22);
      --phase-text: #7a6948;
      --primary-start: #6d5530;
      --primary-end: #9c7b46;
      --primary-border: rgba(109, 85, 48, 0.74);
      --primary-text: #fffdf8;
      --secondary-text: #5c4727;
      --secondary-border: rgba(143, 106, 39, 0.18);
      --accent-start: #1b2a5b;
      --accent-end: #485f94;
      --accent-text: #ffffff;
      --hero-overlay-start: rgba(93, 68, 33, 0.86);
      --hero-overlay-end: rgba(148, 111, 62, 0.72);
      --hero-burst-one: rgba(230, 196, 124, 0.18);
      --hero-burst-two: rgba(114, 77, 36, 0.14);
      --hero-burst-three: rgba(82, 61, 29, 0.22);
      --surface-bg: rgba(255, 252, 245, 0.96);
      --surface-bg-strong: rgba(255, 254, 249, 0.99);
      --card-bg: rgba(255, 252, 246, 0.98);
      --input-bg: rgba(255, 253, 248, 0.997);
      --input-border: rgba(143, 106, 39, 0.16);
      --login-shell-start: rgba(121, 92, 55, 0.88);
      --login-shell-end: rgba(185, 152, 104, 0.84);
      --login-shell-border: rgba(251, 236, 200, 0.24);
      --login-shell-shadow: 0 30px 62px rgba(74, 55, 25, 0.24);
      --login-brand-bg-start: rgba(255, 250, 239, 0.99);
      --login-brand-bg-end: rgba(241, 229, 201, 0.96);
      --login-brand-border: rgba(143, 106, 39, 0.24);
      --login-panel-bg: rgba(255, 252, 245, 0.95);
      --login-panel-border: rgba(251, 241, 217, 0.44);
      --muted-text: #76684b;
      --banner-start: rgba(109, 85, 48, 0.94);
      --banner-end: rgba(27, 42, 91, 0.8);
      --footer-surface: rgba(247, 240, 227, 0.98);
      --footer-border: rgba(143, 106, 39, 0.2);
      --footer-note: #76684b;
      --theme-menu-bg: rgba(255, 252, 245, 0.99);
      --theme-option-hover: rgba(143, 106, 39, 0.055);
      --theme-option-active: rgba(143, 106, 39, 0.095);
      --table-shell-border: rgba(143, 106, 39, 0.16);
      --table-shell-bg: linear-gradient(180deg, rgba(255,253,248,0.99), rgba(245,235,214,0.95));
      --table-head-bg: rgba(243, 231, 203, 0.95);
      --table-head-text: #5c4727;
      --table-row-hover: rgba(143, 106, 39, 0.04);
      --row-menu-panel-bg: rgba(255,252,246,0.99);
      --row-menu-panel-border: rgba(143,106,39,0.18);
      --row-menu-item-bg: rgba(248,239,218,0.98);
      --row-menu-item-hover: rgba(236,220,182,0.96);
      --row-menu-item-text: #5c4727;
    }
    html[data-theme="harbor-blue"] {
      --page-bg-start: #dfeef3;
      --page-bg-mid: #f8fdff;
      --page-bg-end: #d7e6e8;
      --page-sheen: rgba(33, 76, 113, 0.07);
      --nav-surface: rgba(247, 252, 253, 0.95);
      --nav-border: rgba(33, 76, 113, 0.2);
      --phase-text: #5b6f83;
      --primary-start: #1f4b73;
      --primary-end: #3f7193;
      --primary-border: rgba(31, 75, 115, 0.76);
      --primary-text: #ffffff;
      --secondary-text: #1f4b73;
      --secondary-border: rgba(33, 76, 113, 0.16);
      --accent-start: #c9a227;
      --accent-end: #d8c17f;
      --accent-text: #18365a;
      --hero-overlay-start: rgba(18, 56, 86, 0.82);
      --hero-overlay-end: rgba(73, 132, 146, 0.68);
      --hero-burst-one: rgba(207, 189, 132, 0.16);
      --hero-burst-two: rgba(116, 184, 198, 0.18);
      --hero-burst-three: rgba(31, 75, 115, 0.2);
      --surface-bg: rgba(249, 253, 255, 0.96);
      --surface-bg-strong: rgba(254, 255, 255, 0.99);
      --card-bg: rgba(249, 253, 255, 0.98);
      --input-bg: rgba(254, 255, 255, 0.997);
      --input-border: rgba(33, 76, 113, 0.15);
      --login-shell-start: rgba(24, 77, 113, 0.84);
      --login-shell-end: rgba(111, 171, 173, 0.8);
      --login-shell-border: rgba(214, 237, 239, 0.26);
      --login-shell-shadow: 0 30px 62px rgba(19, 66, 96, 0.22);
      --login-brand-bg-start: rgba(251, 255, 255, 0.99);
      --login-brand-bg-end: rgba(230, 241, 241, 0.96);
      --login-brand-border: rgba(78, 129, 149, 0.2);
      --login-panel-bg: rgba(250, 253, 255, 0.95);
      --login-panel-border: rgba(214, 232, 238, 0.42);
      --muted-text: #5c6f80;
      --banner-start: rgba(31, 75, 115, 0.94);
      --banner-end: rgba(201, 162, 39, 0.8);
      --footer-surface: rgba(239, 247, 248, 0.98);
      --footer-border: rgba(33, 76, 113, 0.18);
      --footer-note: #5c6f80;
      --theme-menu-bg: rgba(250,254,255,0.99);
      --theme-option-hover: rgba(33,76,113,0.05);
      --theme-option-active: rgba(33,76,113,0.085);
      --table-shell-border: rgba(33,76,113,0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(250,254,255,0.99), rgba(234,243,244,0.95));
      --table-head-bg: rgba(228, 239, 243, 0.95);
      --table-head-text: #1f4b73;
      --table-row-hover: rgba(33, 76, 113, 0.036);
      --row-menu-panel-bg: rgba(249,253,255,0.99);
      --row-menu-panel-border: rgba(33,76,113,0.15);
      --row-menu-item-bg: rgba(236,244,246,0.98);
      --row-menu-item-hover: rgba(220,234,239,0.96);
      --row-menu-item-text: #1f4b73;
    }
    html[data-theme="ruby-twilight"] {
      --page-bg-start: #f3e7eb;
      --page-bg-mid: #fdf8fa;
      --page-bg-end: #eadde3;
      --page-sheen: rgba(127, 32, 56, 0.07);
      --nav-surface: rgba(255, 250, 251, 0.95);
      --nav-border: rgba(127, 32, 56, 0.2);
      --phase-text: #7b5361;
      --primary-start: #7f2038;
      --primary-end: #b64a62;
      --primary-border: rgba(127, 32, 56, 0.76);
      --primary-text: #ffffff;
      --secondary-text: #7f2038;
      --secondary-border: rgba(127, 32, 56, 0.16);
      --accent-start: #1b2a5b;
      --accent-end: #415b95;
      --accent-text: #ffffff;
      --hero-overlay-start: rgba(74, 17, 40, 0.88);
      --hero-overlay-end: rgba(117, 52, 92, 0.7);
      --hero-burst-one: rgba(241, 198, 174, 0.14);
      --hero-burst-two: rgba(189, 76, 111, 0.18);
      --hero-burst-three: rgba(84, 20, 44, 0.22);
      --surface-bg: rgba(255, 250, 251, 0.965);
      --surface-bg-strong: rgba(255, 253, 253, 0.992);
      --card-bg: rgba(255, 250, 251, 0.982);
      --input-bg: rgba(255, 253, 253, 0.997);
      --input-border: rgba(127, 32, 56, 0.15);
      --login-shell-start: rgba(112, 23, 49, 0.88);
      --login-shell-end: rgba(180, 79, 111, 0.82);
      --login-shell-border: rgba(250, 214, 223, 0.24);
      --login-shell-shadow: 0 32px 66px rgba(71, 16, 32, 0.24);
      --login-brand-bg-start: rgba(255, 250, 251, 0.99);
      --login-brand-bg-end: rgba(246, 233, 236, 0.96);
      --login-brand-border: rgba(160, 66, 94, 0.2);
      --login-panel-bg: rgba(255, 250, 251, 0.95);
      --login-panel-border: rgba(248, 223, 229, 0.42);
      --muted-text: #765664;
      --banner-start: rgba(127, 32, 56, 0.94);
      --banner-end: rgba(27, 42, 91, 0.82);
      --footer-surface: rgba(247, 238, 241, 0.98);
      --footer-border: rgba(127, 32, 56, 0.18);
      --footer-note: #765664;
      --theme-menu-bg: rgba(255,251,252,0.99);
      --theme-option-hover: rgba(127,32,56,0.05);
      --theme-option-active: rgba(127,32,56,0.095);
      --table-shell-border: rgba(127,32,56,0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(255,252,253,0.99), rgba(246,236,239,0.95));
      --table-head-bg: rgba(245, 229, 233, 0.95);
      --table-head-text: #7f2038;
      --table-row-hover: rgba(127, 32, 56, 0.036);
      --row-menu-panel-bg: rgba(255,251,252,0.99);
      --row-menu-panel-border: rgba(127,32,56,0.15);
      --row-menu-item-bg: rgba(248,236,239,0.98);
      --row-menu-item-hover: rgba(239,220,226,0.96);
      --row-menu-item-text: #7f2038;
    }
    html[data-theme="porcelain-day"] {
      --page-bg-start: #fbfaf4;
      --page-bg-mid: #fffefb;
      --page-bg-end: #ece2ce;
      --page-sheen: rgba(69, 109, 166, 0.05);
      --nav-surface: rgba(255, 255, 251, 0.96);
      --nav-border: rgba(69, 109, 166, 0.18);
      --phase-text: #6b6f81;
      --primary-start: #456da6;
      --primary-end: #6b8cc2;
      --primary-border: rgba(69, 109, 166, 0.72);
      --primary-text: #ffffff;
      --secondary-text: #36537d;
      --secondary-border: rgba(69, 109, 166, 0.14);
      --accent-start: #c9a227;
      --accent-end: #ead596;
      --accent-text: #36537d;
      --hero-overlay-start: rgba(235, 239, 246, 0.78);
      --hero-overlay-end: rgba(205, 193, 161, 0.66);
      --hero-burst-one: rgba(234, 213, 150, 0.16);
      --hero-burst-two: rgba(77, 124, 189, 0.12);
      --hero-burst-three: rgba(69, 109, 166, 0.12);
      --surface-bg: rgba(255, 255, 251, 0.97);
      --surface-bg-strong: rgba(255, 255, 253, 0.995);
      --card-bg: rgba(255, 255, 251, 0.985);
      --input-bg: rgba(255, 255, 253, 0.998);
      --input-border: rgba(69, 109, 166, 0.14);
      --login-shell-start: rgba(233, 236, 243, 0.88);
      --login-shell-end: rgba(206, 194, 163, 0.78);
      --login-shell-border: rgba(69, 109, 166, 0.18);
      --login-shell-shadow: 0 28px 58px rgba(72, 95, 134, 0.16);
      --login-brand-bg-start: rgba(255, 255, 253, 1);
      --login-brand-bg-end: rgba(243, 238, 227, 0.97);
      --login-brand-border: rgba(69, 109, 166, 0.16);
      --login-panel-bg: rgba(255, 255, 252, 0.96);
      --login-panel-border: rgba(226, 219, 202, 0.52);
      --muted-text: #6b7080;
      --banner-start: rgba(69, 109, 166, 0.92);
      --banner-end: rgba(201, 162, 39, 0.78);
      --footer-surface: rgba(247, 244, 236, 0.98);
      --footer-border: rgba(69, 109, 166, 0.16);
      --footer-note: #6b7080;
      --theme-menu-bg: rgba(255,255,252,0.99);
      --theme-option-hover: rgba(69,109,166,0.045);
      --theme-option-active: rgba(69,109,166,0.08);
      --table-shell-border: rgba(69,109,166,0.12);
      --table-shell-bg: linear-gradient(180deg, rgba(255,255,253,0.99), rgba(243,238,226,0.95));
      --table-head-bg: rgba(241, 236, 223, 0.95);
      --table-head-text: #36537d;
      --table-row-hover: rgba(69, 109, 166, 0.03);
      --row-menu-panel-bg: rgba(255,255,252,0.99);
      --row-menu-panel-border: rgba(69,109,166,0.14);
      --row-menu-item-bg: rgba(247,242,232,0.98);
      --row-menu-item-hover: rgba(236,228,211,0.96);
      --row-menu-item-text: #36537d;
    }
    html[data-theme="command-brick"] {
      --page-bg-start: #efe0d5;
      --page-bg-mid: #faf4ef;
      --page-bg-end: #e2d0c4;
      --page-sheen: rgba(138, 44, 35, 0.08);
      --nav-surface: rgba(255, 250, 246, 0.95);
      --nav-border: rgba(138, 44, 35, 0.22);
      --phase-text: #7b5f56;
      --primary-start: #8a2c23;
      --primary-end: #b35b45;
      --primary-border: rgba(138, 44, 35, 0.76);
      --primary-text: #ffffff;
      --secondary-text: #762e28;
      --secondary-border: rgba(138, 44, 35, 0.16);
      --accent-start: #1b2a5b;
      --accent-end: #415b95;
      --accent-text: #ffffff;
      --hero-overlay-start: rgba(118, 38, 28, 0.88);
      --hero-overlay-end: rgba(35, 55, 106, 0.76);
      --hero-burst-one: rgba(224, 172, 118, 0.16);
      --hero-burst-two: rgba(196, 86, 66, 0.18);
      --hero-burst-three: rgba(35, 55, 106, 0.18);
      --surface-bg: rgba(255, 250, 246, 0.965);
      --surface-bg-strong: rgba(255, 253, 251, 0.992);
      --card-bg: rgba(255, 250, 246, 0.982);
      --input-bg: rgba(255, 253, 251, 0.997);
      --input-border: rgba(138, 44, 35, 0.15);
      --login-shell-start: rgba(128, 41, 31, 0.88);
      --login-shell-end: rgba(40, 60, 115, 0.78);
      --login-shell-border: rgba(243, 216, 200, 0.24);
      --login-shell-shadow: 0 32px 64px rgba(72, 29, 24, 0.24);
      --login-brand-bg-start: rgba(255, 251, 248, 0.99);
      --login-brand-bg-end: rgba(242, 231, 223, 0.96);
      --login-brand-border: rgba(138, 44, 35, 0.2);
      --login-panel-bg: rgba(255, 250, 247, 0.95);
      --login-panel-border: rgba(243, 224, 214, 0.46);
      --muted-text: #77635d;
      --banner-start: rgba(138, 44, 35, 0.94);
      --banner-end: rgba(27, 42, 91, 0.84);
      --footer-surface: rgba(246, 237, 232, 0.98);
      --footer-border: rgba(138, 44, 35, 0.18);
      --footer-note: #77635d;
      --theme-menu-bg: rgba(255,251,247,0.99);
      --theme-option-hover: rgba(138,44,35,0.05);
      --theme-option-active: rgba(138,44,35,0.095);
      --table-shell-border: rgba(138,44,35,0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(255,252,249,0.99), rgba(244,232,223,0.95));
      --table-head-bg: rgba(243, 228, 218, 0.95);
      --table-head-text: #762e28;
      --table-row-hover: rgba(138, 44, 35, 0.034);
      --row-menu-panel-bg: rgba(255,251,248,0.99);
      --row-menu-panel-border: rgba(138,44,35,0.15);
      --row-menu-item-bg: rgba(246,233,224,0.98);
      --row-menu-item-hover: rgba(236,216,202,0.96);
      --row-menu-item-text: #762e28;
    }
    html[data-theme="cobalt-ceramic"] {
      --page-bg-start: #eef3fa;
      --page-bg-mid: #fcfdff;
      --page-bg-end: #f0ece3;
      --page-sheen: rgba(31, 75, 134, 0.06);
      --nav-surface: rgba(251, 253, 255, 0.95);
      --nav-border: rgba(31, 75, 134, 0.2);
      --phase-text: #5d6d84;
      --primary-start: #1f4b86;
      --primary-end: #5f86bb;
      --primary-border: rgba(31, 75, 134, 0.74);
      --primary-text: #ffffff;
      --secondary-text: #1f4b86;
      --secondary-border: rgba(31, 75, 134, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e3cd86;
      --accent-text: #1f4b86;
      --hero-overlay-start: rgba(230, 238, 250, 0.8);
      --hero-overlay-end: rgba(190, 204, 227, 0.68);
      --hero-burst-one: rgba(227, 205, 134, 0.16);
      --hero-burst-two: rgba(92, 145, 201, 0.16);
      --hero-burst-three: rgba(31, 75, 134, 0.14);
      --surface-bg: rgba(252, 254, 255, 0.968);
      --surface-bg-strong: rgba(255, 255, 255, 0.994);
      --card-bg: rgba(252, 254, 255, 0.982);
      --input-bg: rgba(255, 255, 255, 0.998);
      --input-border: rgba(31, 75, 134, 0.14);
      --login-shell-start: rgba(237, 244, 252, 0.9);
      --login-shell-end: rgba(195, 211, 235, 0.82);
      --login-shell-border: rgba(31, 75, 134, 0.18);
      --login-shell-shadow: 0 28px 58px rgba(39, 73, 126, 0.16);
      --login-brand-bg-start: rgba(255, 255, 255, 1);
      --login-brand-bg-end: rgba(242, 246, 252, 0.97);
      --login-brand-border: rgba(31, 75, 134, 0.16);
      --login-panel-bg: rgba(255, 255, 255, 0.97);
      --login-panel-border: rgba(220, 229, 243, 0.54);
      --muted-text: #5e6f81;
      --banner-start: rgba(31, 75, 134, 0.92);
      --banner-end: rgba(201, 162, 39, 0.78);
      --footer-surface: rgba(244, 248, 252, 0.98);
      --footer-border: rgba(31, 75, 134, 0.16);
      --footer-note: #5e6f81;
      --theme-menu-bg: rgba(252,254,255,0.99);
      --theme-option-hover: rgba(31,75,134,0.045);
      --theme-option-active: rgba(31,75,134,0.08);
      --table-shell-border: rgba(31,75,134,0.12);
      --table-shell-bg: linear-gradient(180deg, rgba(253,255,255,0.99), rgba(242,244,238,0.95));
      --table-head-bg: rgba(236, 242, 248, 0.95);
      --table-head-text: #1f4b86;
      --table-row-hover: rgba(31, 75, 134, 0.03);
      --row-menu-panel-bg: rgba(252,254,255,0.99);
      --row-menu-panel-border: rgba(31,75,134,0.14);
      --row-menu-item-bg: rgba(240,245,249,0.98);
      --row-menu-item-hover: rgba(226,235,243,0.96);
      --row-menu-item-text: #1f4b86;
    }
    html[data-theme="auric-night"] {
      --page-bg-start: #e7e0cf;
      --page-bg-mid: #f5efe2;
      --page-bg-end: #d7cfbf;
      --page-sheen: rgba(122, 100, 27, 0.08);
      --nav-surface: rgba(252, 248, 240, 0.95);
      --nav-border: rgba(122, 100, 27, 0.22);
      --phase-text: #6c654f;
      --primary-start: #7a641b;
      --primary-end: #b59235;
      --primary-border: rgba(122, 100, 27, 0.76);
      --primary-text: #18254a;
      --secondary-text: #514523;
      --secondary-border: rgba(122, 100, 27, 0.16);
      --accent-start: #18254a;
      --accent-end: #324773;
      --accent-text: #ffffff;
      --hero-overlay-start: rgba(28, 37, 70, 0.9);
      --hero-overlay-end: rgba(122, 100, 27, 0.76);
      --hero-burst-one: rgba(215, 187, 102, 0.18);
      --hero-burst-two: rgba(91, 71, 21, 0.16);
      --hero-burst-three: rgba(24, 37, 74, 0.24);
      --surface-bg: rgba(255, 252, 246, 0.965);
      --surface-bg-strong: rgba(255, 253, 249, 0.992);
      --card-bg: rgba(255, 252, 246, 0.982);
      --input-bg: rgba(255, 253, 249, 0.997);
      --input-border: rgba(122, 100, 27, 0.15);
      --login-shell-start: rgba(31, 39, 71, 0.9);
      --login-shell-end: rgba(129, 104, 28, 0.82);
      --login-shell-border: rgba(229, 208, 147, 0.24);
      --login-shell-shadow: 0 32px 68px rgba(19, 24, 46, 0.28);
      --login-brand-bg-start: rgba(255, 252, 246, 0.99);
      --login-brand-bg-end: rgba(243, 233, 208, 0.96);
      --login-brand-border: rgba(122, 100, 27, 0.22);
      --login-panel-bg: rgba(255, 252, 246, 0.95);
      --login-panel-border: rgba(241, 229, 192, 0.46);
      --muted-text: #71674f;
      --banner-start: rgba(122, 100, 27, 0.94);
      --banner-end: rgba(24, 37, 74, 0.84);
      --footer-surface: rgba(248, 242, 230, 0.98);
      --footer-border: rgba(122, 100, 27, 0.18);
      --footer-note: #71674f;
      --theme-menu-bg: rgba(255,252,246,0.99);
      --theme-option-hover: rgba(122,100,27,0.05);
      --theme-option-active: rgba(122,100,27,0.095);
      --table-shell-border: rgba(122,100,27,0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(255,252,247,0.99), rgba(244,236,220,0.95));
      --table-head-bg: rgba(243, 233, 208, 0.95);
      --table-head-text: #514523;
      --table-row-hover: rgba(122, 100, 27, 0.036);
      --row-menu-panel-bg: rgba(255,252,246,0.99);
      --row-menu-panel-border: rgba(122,100,27,0.15);
      --row-menu-item-bg: rgba(247,238,219,0.98);
      --row-menu-item-hover: rgba(235,221,184,0.96);
      --row-menu-item-text: #514523;
    }
    html[data-theme="dusk-velvet"] {
      --page-bg-start: #ecdde8;
      --page-bg-mid: #f8f2f7;
      --page-bg-end: #dccad7;
      --page-sheen: rgba(93, 46, 83, 0.07);
      --nav-surface: rgba(255, 250, 253, 0.95);
      --nav-border: rgba(93, 46, 83, 0.2);
      --phase-text: #746177;
      --primary-start: #5d2e53;
      --primary-end: #8b506f;
      --primary-border: rgba(93, 46, 83, 0.76);
      --primary-text: #ffffff;
      --secondary-text: #5d2e53;
      --secondary-border: rgba(93, 46, 83, 0.16);
      --accent-start: #c9a227;
      --accent-end: #e1c37a;
      --accent-text: #35264a;
      --hero-overlay-start: rgba(71, 31, 69, 0.9);
      --hero-overlay-end: rgba(131, 80, 111, 0.72);
      --hero-burst-one: rgba(223, 193, 121, 0.16);
      --hero-burst-two: rgba(149, 90, 134, 0.18);
      --hero-burst-three: rgba(93, 46, 83, 0.2);
      --surface-bg: rgba(255, 250, 253, 0.966);
      --surface-bg-strong: rgba(255, 253, 254, 0.992);
      --card-bg: rgba(255, 250, 253, 0.982);
      --input-bg: rgba(255, 253, 254, 0.997);
      --input-border: rgba(93, 46, 83, 0.15);
      --login-shell-start: rgba(79, 36, 73, 0.9);
      --login-shell-end: rgba(146, 92, 121, 0.82);
      --login-shell-border: rgba(240, 214, 231, 0.24);
      --login-shell-shadow: 0 32px 68px rgba(58, 25, 52, 0.24);
      --login-brand-bg-start: rgba(255, 251, 253, 0.99);
      --login-brand-bg-end: rgba(244, 234, 240, 0.96);
      --login-brand-border: rgba(125, 70, 107, 0.2);
      --login-panel-bg: rgba(255, 251, 253, 0.95);
      --login-panel-border: rgba(240, 219, 233, 0.44);
      --muted-text: #726179;
      --banner-start: rgba(93, 46, 83, 0.94);
      --banner-end: rgba(201, 162, 39, 0.82);
      --footer-surface: rgba(244, 236, 241, 0.98);
      --footer-border: rgba(93, 46, 83, 0.18);
      --footer-note: #726179;
      --theme-menu-bg: rgba(255,251,253,0.99);
      --theme-option-hover: rgba(93,46,83,0.05);
      --theme-option-active: rgba(93,46,83,0.095);
      --table-shell-border: rgba(93,46,83,0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(255,252,254,0.99), rgba(242,233,239,0.95));
      --table-head-bg: rgba(240, 228, 236, 0.95);
      --table-head-text: #5d2e53;
      --table-row-hover: rgba(93, 46, 83, 0.034);
      --row-menu-panel-bg: rgba(255,251,253,0.99);
      --row-menu-panel-border: rgba(93,46,83,0.15);
      --row-menu-item-bg: rgba(245,235,241,0.98);
      --row-menu-item-hover: rgba(233,216,228,0.96);
      --row-menu-item-text: #5d2e53;
    }
    html[data-theme="bronze-court"] {
      --page-bg-start: #f0e1cb;
      --page-bg-mid: #faf5ec;
      --page-bg-end: #dcc6a8;
      --page-sheen: rgba(142, 94, 31, 0.08);
      --nav-surface: rgba(255, 251, 245, 0.95);
      --nav-border: rgba(142, 94, 31, 0.22);
      --phase-text: #786753;
      --primary-start: #8e5e1f;
      --primary-end: #c37d31;
      --primary-border: rgba(142, 94, 31, 0.76);
      --primary-text: #ffffff;
      --secondary-text: #6f4b1d;
      --secondary-border: rgba(142, 94, 31, 0.16);
      --accent-start: #20345d;
      --accent-end: #415785;
      --accent-text: #ffffff;
      --hero-overlay-start: rgba(95, 59, 18, 0.88);
      --hero-overlay-end: rgba(138, 88, 39, 0.72);
      --hero-burst-one: rgba(224, 183, 107, 0.18);
      --hero-burst-two: rgba(179, 111, 43, 0.16);
      --hero-burst-three: rgba(32, 52, 93, 0.18);
      --surface-bg: rgba(255, 251, 246, 0.966);
      --surface-bg-strong: rgba(255, 254, 250, 0.992);
      --card-bg: rgba(255, 251, 246, 0.982);
      --input-bg: rgba(255, 254, 250, 0.997);
      --input-border: rgba(142, 94, 31, 0.15);
      --login-shell-start: rgba(114, 73, 24, 0.88);
      --login-shell-end: rgba(188, 124, 52, 0.82);
      --login-shell-border: rgba(245, 221, 175, 0.24);
      --login-shell-shadow: 0 32px 66px rgba(75, 50, 17, 0.24);
      --login-brand-bg-start: rgba(255, 252, 247, 0.99);
      --login-brand-bg-end: rgba(243, 232, 211, 0.96);
      --login-brand-border: rgba(142, 94, 31, 0.22);
      --login-panel-bg: rgba(255, 252, 247, 0.95);
      --login-panel-border: rgba(243, 228, 195, 0.44);
      --muted-text: #766754;
      --banner-start: rgba(142, 94, 31, 0.94);
      --banner-end: rgba(32, 52, 93, 0.84);
      --footer-surface: rgba(247, 240, 229, 0.98);
      --footer-border: rgba(142, 94, 31, 0.18);
      --footer-note: #766754;
      --theme-menu-bg: rgba(255,252,247,0.99);
      --theme-option-hover: rgba(142,94,31,0.05);
      --theme-option-active: rgba(142,94,31,0.095);
      --table-shell-border: rgba(142,94,31,0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(255,252,248,0.99), rgba(244,236,221,0.95));
      --table-head-bg: rgba(243, 231, 207, 0.95);
      --table-head-text: #6f4b1d;
      --table-row-hover: rgba(142, 94, 31, 0.036);
      --row-menu-panel-bg: rgba(255,252,247,0.99);
      --row-menu-panel-border: rgba(142,94,31,0.15);
      --row-menu-item-bg: rgba(247,238,220,0.98);
      --row-menu-item-hover: rgba(235,220,186,0.96);
      --row-menu-item-text: #6f4b1d;
    }
    html[data-theme="celestial-navy"] {
      --hero-graphic: url("/assets/themes/celestial-navy_v1.0.svg");
      --login-graphic: url("/assets/themes/celestial-navy_v1.0.svg");
      --page-bg-start: #e9edf7;
      --page-bg-mid: #f7f9fd;
      --page-bg-end: #dde3f2;
      --page-sheen: rgba(201, 162, 39, 0.06);
      --nav-surface: rgba(247, 249, 253, 0.95);
      --nav-border: rgba(13, 26, 61, 0.2);
      --phase-text: #4e5a7c;
      --primary-start: #0d1a3d;
      --primary-end: #2a4a8c;
      --primary-border: rgba(201, 162, 39, 0.6);
      --primary-text: #ffffff;
      --secondary-text: #142a63;
      --secondary-border: rgba(13, 26, 61, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-text: #0d1a3d;
      --hero-overlay-start: rgba(10, 17, 39, 0.94);
      --hero-overlay-end: rgba(42, 74, 140, 0.82);
      --hero-burst-one: rgba(201, 162, 39, 0.18);
      --hero-burst-two: rgba(42, 74, 140, 0.2);
      --hero-burst-three: rgba(13, 26, 61, 0.2);
      --surface-bg: rgba(250, 252, 255, 0.96);
      --surface-bg-strong: rgba(255, 255, 255, 0.99);
      --card-bg: rgba(250, 252, 255, 0.98);
      --input-bg: rgba(255, 255, 255, 0.997);
      --input-border: rgba(13, 26, 61, 0.15);
      --login-shell-start: rgba(10, 17, 39, 0.9);
      --login-shell-end: rgba(42, 74, 140, 0.82);
      --login-shell-border: rgba(201, 162, 39, 0.24);
      --login-shell-shadow: 0 32px 66px rgba(6, 10, 24, 0.3);
      --login-brand-bg-start: rgba(255, 255, 255, 0.99);
      --login-brand-bg-end: rgba(238, 242, 250, 0.96);
      --login-brand-border: rgba(13, 26, 61, 0.2);
      --login-panel-bg: rgba(255, 255, 255, 0.96);
      --login-panel-border: rgba(224, 231, 245, 0.5);
      --muted-text: #5c6685;
      --banner-start: rgba(13, 26, 61, 0.94);
      --banner-end: rgba(201, 162, 39, 0.8);
      --footer-surface: rgba(240, 243, 250, 0.98);
      --footer-border: rgba(13, 26, 61, 0.18);
      --footer-note: #5c6685;
      --theme-menu-bg: rgba(250, 252, 255, 0.99);
      --theme-option-hover: rgba(13, 26, 61, 0.05);
      --theme-option-active: rgba(13, 26, 61, 0.09);
      --table-shell-border: rgba(13, 26, 61, 0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(250, 252, 255, 0.99), rgba(233, 237, 247, 0.95));
      --table-head-bg: rgba(228, 233, 245, 0.94);
      --table-head-text: #142a63;
      --table-row-hover: rgba(13, 26, 61, 0.036);
      --row-menu-panel-bg: rgba(250, 252, 255, 0.99);
      --row-menu-panel-border: rgba(13, 26, 61, 0.16);
      --row-menu-item-bg: rgba(237, 240, 249, 0.98);
      --row-menu-item-hover: rgba(220, 226, 243, 0.96);
      --row-menu-item-text: #142a63;
    }
    html[data-theme="garnet-velvet"] {
      --hero-graphic: url("/assets/themes/garnet-velvet_v1.0.svg");
      --login-graphic: url("/assets/themes/garnet-velvet_v1.0.svg");
      --page-bg-start: #f7e9ec;
      --page-bg-mid: #fdf6f7;
      --page-bg-end: #ecd6db;
      --page-sheen: rgba(201, 162, 39, 0.06);
      --nav-surface: rgba(253, 246, 247, 0.95);
      --nav-border: rgba(74, 15, 31, 0.22);
      --phase-text: #7a4a53;
      --primary-start: #4a0f1f;
      --primary-end: #8f1b35;
      --primary-border: rgba(201, 162, 39, 0.62);
      --primary-text: #ffffff;
      --secondary-text: #5c1626;
      --secondary-border: rgba(74, 15, 31, 0.16);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-text: #4a0f1f;
      --hero-overlay-start: rgba(38, 8, 16, 0.92);
      --hero-overlay-end: rgba(143, 27, 53, 0.8);
      --hero-burst-one: rgba(201, 162, 39, 0.2);
      --hero-burst-two: rgba(143, 27, 53, 0.2);
      --hero-burst-three: rgba(74, 15, 31, 0.2);
      --surface-bg: rgba(255, 251, 251, 0.96);
      --surface-bg-strong: rgba(255, 253, 253, 0.99);
      --card-bg: rgba(255, 251, 251, 0.98);
      --input-bg: rgba(255, 253, 253, 0.997);
      --input-border: rgba(74, 15, 31, 0.16);
      --login-shell-start: rgba(38, 8, 16, 0.9);
      --login-shell-end: rgba(143, 27, 53, 0.82);
      --login-shell-border: rgba(201, 162, 39, 0.26);
      --login-shell-shadow: 0 32px 66px rgba(28, 6, 12, 0.32);
      --login-brand-bg-start: rgba(255, 252, 252, 0.99);
      --login-brand-bg-end: rgba(246, 234, 236, 0.96);
      --login-brand-border: rgba(74, 15, 31, 0.22);
      --login-panel-bg: rgba(255, 252, 252, 0.96);
      --login-panel-border: rgba(245, 224, 229, 0.48);
      --muted-text: #7c5b62;
      --banner-start: rgba(74, 15, 31, 0.94);
      --banner-end: rgba(201, 162, 39, 0.8);
      --footer-surface: rgba(249, 238, 241, 0.98);
      --footer-border: rgba(74, 15, 31, 0.18);
      --footer-note: #7c5b62;
      --theme-menu-bg: rgba(255, 252, 252, 0.99);
      --theme-option-hover: rgba(74, 15, 31, 0.05);
      --theme-option-active: rgba(74, 15, 31, 0.095);
      --table-shell-border: rgba(74, 15, 31, 0.15);
      --table-shell-bg: linear-gradient(180deg, rgba(255, 253, 253, 0.99), rgba(246, 232, 235, 0.95));
      --table-head-bg: rgba(243, 226, 230, 0.94);
      --table-head-text: #5c1626;
      --table-row-hover: rgba(74, 15, 31, 0.036);
      --row-menu-panel-bg: rgba(255, 252, 252, 0.99);
      --row-menu-panel-border: rgba(74, 15, 31, 0.16);
      --row-menu-item-bg: rgba(248, 235, 238, 0.98);
      --row-menu-item-hover: rgba(238, 214, 219, 0.96);
      --row-menu-item-text: #5c1626;
    }
    html[data-theme="emerald-ledger"] {
      --hero-graphic: url("/assets/themes/emerald-ledger_v1.0.svg");
      --login-graphic: url("/assets/themes/emerald-ledger_v1.0.svg");
      --page-bg-start: #e7f2ec;
      --page-bg-mid: #f6faf7;
      --page-bg-end: #d7e8dd;
      --page-sheen: rgba(201, 162, 39, 0.055);
      --nav-surface: rgba(246, 250, 247, 0.95);
      --nav-border: rgba(15, 42, 34, 0.2);
      --phase-text: #4f6b5e;
      --primary-start: #0f2a22;
      --primary-end: #1f6e52;
      --primary-border: rgba(201, 162, 39, 0.6);
      --primary-text: #ffffff;
      --secondary-text: #15382c;
      --secondary-border: rgba(15, 42, 34, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-text: #0f2a22;
      --hero-overlay-start: rgba(9, 22, 18, 0.92);
      --hero-overlay-end: rgba(31, 110, 82, 0.78);
      --hero-burst-one: rgba(201, 162, 39, 0.18);
      --hero-burst-two: rgba(31, 110, 82, 0.2);
      --hero-burst-three: rgba(15, 42, 34, 0.2);
      --surface-bg: rgba(250, 253, 251, 0.96);
      --surface-bg-strong: rgba(254, 255, 254, 0.99);
      --card-bg: rgba(250, 253, 251, 0.98);
      --input-bg: rgba(254, 255, 254, 0.997);
      --input-border: rgba(15, 42, 34, 0.14);
      --login-shell-start: rgba(9, 22, 18, 0.9);
      --login-shell-end: rgba(31, 110, 82, 0.8);
      --login-shell-border: rgba(201, 162, 39, 0.24);
      --login-shell-shadow: 0 32px 66px rgba(6, 15, 12, 0.3);
      --login-brand-bg-start: rgba(255, 255, 254, 0.99);
      --login-brand-bg-end: rgba(238, 245, 240, 0.96);
      --login-brand-border: rgba(15, 42, 34, 0.2);
      --login-panel-bg: rgba(255, 255, 254, 0.96);
      --login-panel-border: rgba(223, 237, 228, 0.5);
      --muted-text: #55705f;
      --banner-start: rgba(15, 42, 34, 0.94);
      --banner-end: rgba(201, 162, 39, 0.8);
      --footer-surface: rgba(239, 246, 242, 0.98);
      --footer-border: rgba(15, 42, 34, 0.18);
      --footer-note: #55705f;
      --theme-menu-bg: rgba(250, 253, 251, 0.99);
      --theme-option-hover: rgba(15, 42, 34, 0.05);
      --theme-option-active: rgba(15, 42, 34, 0.09);
      --table-shell-border: rgba(15, 42, 34, 0.14);
      --table-shell-bg: linear-gradient(180deg, rgba(250, 253, 251, 0.99), rgba(228, 240, 233, 0.95));
      --table-head-bg: rgba(224, 238, 230, 0.94);
      --table-head-text: #15382c;
      --table-row-hover: rgba(15, 42, 34, 0.036);
      --row-menu-panel-bg: rgba(250, 253, 251, 0.99);
      --row-menu-panel-border: rgba(15, 42, 34, 0.15);
      --row-menu-item-bg: rgba(233, 244, 237, 0.98);
      --row-menu-item-hover: rgba(212, 233, 222, 0.96);
      --row-menu-item-text: #15382c;
    }
    html[data-theme="sapphire-glass"] {
      --hero-graphic: url("/assets/themes/sapphire-glass_v1.0.svg");
      --login-graphic: url("/assets/themes/sapphire-glass_v1.0.svg");
      --page-bg-start: #e8f0fb;
      --page-bg-mid: #f7fbff;
      --page-bg-end: #d7e6f7;
      --page-sheen: rgba(74, 134, 214, 0.07);
      --nav-surface: rgba(247, 251, 255, 0.95);
      --nav-border: rgba(18, 50, 110, 0.2);
      --phase-text: #4f6488;
      --primary-start: #12326e;
      --primary-end: #4a86d6;
      --primary-border: rgba(201, 162, 39, 0.56);
      --primary-text: #ffffff;
      --secondary-text: #163c7c;
      --secondary-border: rgba(18, 50, 110, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-text: #12326e;
      --hero-overlay-start: rgba(10, 26, 58, 0.9);
      --hero-overlay-end: rgba(74, 134, 214, 0.72);
      --hero-burst-one: rgba(201, 162, 39, 0.18);
      --hero-burst-two: rgba(74, 134, 214, 0.22);
      --hero-burst-three: rgba(18, 50, 110, 0.2);
      --surface-bg: rgba(250, 253, 255, 0.96);
      --surface-bg-strong: rgba(255, 255, 255, 0.99);
      --card-bg: rgba(250, 253, 255, 0.98);
      --input-bg: rgba(255, 255, 255, 0.997);
      --input-border: rgba(18, 50, 110, 0.14);
      --login-shell-start: rgba(10, 26, 58, 0.88);
      --login-shell-end: rgba(74, 134, 214, 0.78);
      --login-shell-border: rgba(201, 162, 39, 0.24);
      --login-shell-shadow: 0 32px 64px rgba(6, 16, 36, 0.28);
      --login-brand-bg-start: rgba(255, 255, 255, 0.99);
      --login-brand-bg-end: rgba(237, 244, 253, 0.96);
      --login-brand-border: rgba(18, 50, 110, 0.2);
      --login-panel-bg: rgba(255, 255, 255, 0.96);
      --login-panel-border: rgba(221, 233, 249, 0.5);
      --muted-text: #56698c;
      --banner-start: rgba(18, 50, 110, 0.92);
      --banner-end: rgba(201, 162, 39, 0.78);
      --footer-surface: rgba(238, 245, 253, 0.98);
      --footer-border: rgba(18, 50, 110, 0.16);
      --footer-note: #56698c;
      --theme-menu-bg: rgba(250, 253, 255, 0.99);
      --theme-option-hover: rgba(18, 50, 110, 0.05);
      --theme-option-active: rgba(18, 50, 110, 0.085);
      --table-shell-border: rgba(18, 50, 110, 0.13);
      --table-shell-bg: linear-gradient(180deg, rgba(250, 253, 255, 0.99), rgba(230, 240, 251, 0.95));
      --table-head-bg: rgba(226, 237, 250, 0.94);
      --table-head-text: #163c7c;
      --table-row-hover: rgba(18, 50, 110, 0.034);
      --row-menu-panel-bg: rgba(250, 253, 255, 0.99);
      --row-menu-panel-border: rgba(18, 50, 110, 0.15);
      --row-menu-item-bg: rgba(233, 242, 251, 0.98);
      --row-menu-item-hover: rgba(213, 229, 248, 0.96);
      --row-menu-item-text: #163c7c;
    }
    html[data-theme="saffron-dawn"] {
      --hero-graphic: url("/assets/themes/saffron-dawn_v1.0.svg");
      --login-graphic: url("/assets/themes/saffron-dawn_v1.0.svg");
      --page-bg-start: #fdf1de;
      --page-bg-mid: #fffaf0;
      --page-bg-end: #f6dfb8;
      --page-sheen: rgba(224, 138, 43, 0.07);
      --nav-surface: rgba(255, 250, 240, 0.95);
      --nav-border: rgba(201, 122, 31, 0.22);
      --phase-text: #8a6a45;
      --primary-start: #c97a1f;
      --primary-end: #e8a94a;
      --primary-border: rgba(27, 42, 91, 0.5);
      --primary-text: #ffffff;
      --secondary-text: #8a4f14;
      --secondary-border: rgba(201, 122, 31, 0.16);
      --accent-start: #1b2a5b;
      --accent-end: #3a4f8a;
      --accent-text: #ffffff;
      --hero-overlay-start: rgba(88, 51, 8, 0.88);
      --hero-overlay-end: rgba(27, 42, 91, 0.76);
      --hero-burst-one: rgba(232, 169, 74, 0.24);
      --hero-burst-two: rgba(27, 42, 91, 0.2);
      --hero-burst-three: rgba(139, 79, 20, 0.2);
      --surface-bg: rgba(255, 253, 248, 0.96);
      --surface-bg-strong: rgba(255, 254, 251, 0.99);
      --card-bg: rgba(255, 253, 248, 0.98);
      --input-bg: rgba(255, 254, 251, 0.997);
      --input-border: rgba(201, 122, 31, 0.16);
      --login-shell-start: rgba(88, 51, 8, 0.88);
      --login-shell-end: rgba(27, 42, 91, 0.78);
      --login-shell-border: rgba(232, 169, 74, 0.28);
      --login-shell-shadow: 0 32px 66px rgba(60, 34, 6, 0.3);
      --login-brand-bg-start: rgba(255, 253, 247, 0.99);
      --login-brand-bg-end: rgba(250, 238, 216, 0.96);
      --login-brand-border: rgba(201, 122, 31, 0.24);
      --login-panel-bg: rgba(255, 253, 247, 0.96);
      --login-panel-border: rgba(247, 229, 194, 0.5);
      --muted-text: #8a7150;
      --banner-start: rgba(201, 122, 31, 0.92);
      --banner-end: rgba(27, 42, 91, 0.82);
      --footer-surface: rgba(250, 240, 222, 0.98);
      --footer-border: rgba(201, 122, 31, 0.2);
      --footer-note: #8a7150;
      --theme-menu-bg: rgba(255, 253, 247, 0.99);
      --theme-option-hover: rgba(201, 122, 31, 0.06);
      --theme-option-active: rgba(201, 122, 31, 0.1);
      --table-shell-border: rgba(201, 122, 31, 0.16);
      --table-shell-bg: linear-gradient(180deg, rgba(255, 253, 248, 0.99), rgba(248, 233, 202, 0.95));
      --table-head-bg: rgba(246, 227, 191, 0.94);
      --table-head-text: #8a4f14;
      --table-row-hover: rgba(201, 122, 31, 0.04);
      --row-menu-panel-bg: rgba(255, 253, 247, 0.99);
      --row-menu-panel-border: rgba(201, 122, 31, 0.18);
      --row-menu-item-bg: rgba(249, 236, 209, 0.98);
      --row-menu-item-hover: rgba(240, 216, 172, 0.96);
      --row-menu-item-text: #8a4f14;
    }
    html[data-theme="orchid-noir"] {
      --hero-graphic: url("/assets/themes/orchid-noir_v1.0.svg");
      --login-graphic: url("/assets/themes/orchid-noir_v1.0.svg");
      --page-bg-start: #f2e9f5;
      --page-bg-mid: #faf6fb;
      --page-bg-end: #e2cfe9;
      --page-sheen: rgba(201, 162, 39, 0.055);
      --nav-surface: rgba(250, 246, 251, 0.95);
      --nav-border: rgba(42, 17, 64, 0.2);
      --phase-text: #6f5a78;
      --primary-start: #2a1140;
      --primary-end: #6a2f7a;
      --primary-border: rgba(201, 162, 39, 0.58);
      --primary-text: #ffffff;
      --secondary-text: #3d1858;
      --secondary-border: rgba(42, 17, 64, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-text: #2a1140;
      --hero-overlay-start: rgba(22, 8, 34, 0.92);
      --hero-overlay-end: rgba(106, 47, 122, 0.78);
      --hero-burst-one: rgba(201, 162, 39, 0.18);
      --hero-burst-two: rgba(106, 47, 122, 0.22);
      --hero-burst-three: rgba(42, 17, 64, 0.2);
      --surface-bg: rgba(253, 250, 254, 0.96);
      --surface-bg-strong: rgba(255, 253, 255, 0.99);
      --card-bg: rgba(253, 250, 254, 0.98);
      --input-bg: rgba(255, 253, 255, 0.997);
      --input-border: rgba(42, 17, 64, 0.15);
      --login-shell-start: rgba(22, 8, 34, 0.9);
      --login-shell-end: rgba(106, 47, 122, 0.8);
      --login-shell-border: rgba(201, 162, 39, 0.25);
      --login-shell-shadow: 0 32px 66px rgba(14, 5, 22, 0.32);
      --login-brand-bg-start: rgba(255, 253, 255, 0.99);
      --login-brand-bg-end: rgba(244, 236, 246, 0.96);
      --login-brand-border: rgba(42, 17, 64, 0.2);
      --login-panel-bg: rgba(255, 253, 255, 0.96);
      --login-panel-border: rgba(236, 223, 240, 0.5);
      --muted-text: #6f5d76;
      --banner-start: rgba(42, 17, 64, 0.94);
      --banner-end: rgba(201, 162, 39, 0.8);
      --footer-surface: rgba(246, 239, 248, 0.98);
      --footer-border: rgba(42, 17, 64, 0.18);
      --footer-note: #6f5d76;
      --theme-menu-bg: rgba(253, 250, 254, 0.99);
      --theme-option-hover: rgba(42, 17, 64, 0.05);
      --theme-option-active: rgba(42, 17, 64, 0.095);
      --table-shell-border: rgba(42, 17, 64, 0.15);
      --table-shell-bg: linear-gradient(180deg, rgba(253, 250, 254, 0.99), rgba(240, 227, 243, 0.95));
      --table-head-bg: rgba(236, 219, 240, 0.94);
      --table-head-text: #3d1858;
      --table-row-hover: rgba(42, 17, 64, 0.036);
      --row-menu-panel-bg: rgba(253, 250, 254, 0.99);
      --row-menu-panel-border: rgba(42, 17, 64, 0.16);
      --row-menu-item-bg: rgba(245, 235, 248, 0.98);
      --row-menu-item-hover: rgba(230, 209, 235, 0.96);
      --row-menu-item-text: #3d1858;
    }
    html[data-theme="arctic-frost"] {
      --hero-graphic: url("/assets/themes/arctic-frost_v1.0.svg");
      --login-graphic: url("/assets/themes/arctic-frost_v1.0.svg");
      --page-bg-start: #eef3f8;
      --page-bg-mid: #ffffff;
      --page-bg-end: #dde6ee;
      --page-sheen: rgba(90, 104, 128, 0.05);
      --nav-surface: rgba(255, 255, 255, 0.96);
      --nav-border: rgba(79, 100, 128, 0.2);
      --phase-text: #5c6c81;
      --primary-start: #3d5068;
      --primary-end: #7f97b8;
      --primary-border: rgba(201, 162, 39, 0.5);
      --primary-text: #ffffff;
      --secondary-text: #3d5068;
      --secondary-border: rgba(79, 100, 128, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-text: #3d5068;
      --hero-overlay-start: rgba(28, 38, 52, 0.86);
      --hero-overlay-end: rgba(127, 151, 184, 0.68);
      --hero-burst-one: rgba(201, 162, 39, 0.16);
      --hero-burst-two: rgba(127, 151, 184, 0.2);
      --hero-burst-three: rgba(61, 80, 104, 0.18);
      --surface-bg: rgba(255, 255, 255, 0.97);
      --surface-bg-strong: rgba(255, 255, 255, 0.995);
      --card-bg: rgba(255, 255, 255, 0.99);
      --input-bg: rgba(255, 255, 255, 0.998);
      --input-border: rgba(79, 100, 128, 0.14);
      --login-shell-start: rgba(28, 38, 52, 0.88);
      --login-shell-end: rgba(127, 151, 184, 0.78);
      --login-shell-border: rgba(201, 162, 39, 0.22);
      --login-shell-shadow: 0 30px 62px rgba(18, 24, 34, 0.26);
      --login-brand-bg-start: rgba(255, 255, 255, 0.99);
      --login-brand-bg-end: rgba(242, 245, 249, 0.96);
      --login-brand-border: rgba(79, 100, 128, 0.18);
      --login-panel-bg: rgba(255, 255, 255, 0.94);
      --login-panel-border: rgba(224, 231, 239, 0.5);
      --muted-text: #5c6c81;
      --banner-start: rgba(61, 80, 104, 0.92);
      --banner-end: rgba(201, 162, 39, 0.78);
      --footer-surface: rgba(245, 247, 250, 0.98);
      --footer-border: rgba(79, 100, 128, 0.16);
      --footer-note: #5c6c81;
      --theme-menu-bg: rgba(255, 255, 255, 0.99);
      --theme-option-hover: rgba(79, 100, 128, 0.045);
      --theme-option-active: rgba(79, 100, 128, 0.08);
      --table-shell-border: rgba(79, 100, 128, 0.12);
      --table-shell-bg: linear-gradient(180deg, rgba(255,255,255,0.99), rgba(238,242,247,0.95));
      --table-head-bg: rgba(236, 240, 245, 0.95);
      --table-head-text: #3d5068;
      --table-row-hover: rgba(79, 100, 128, 0.032);
      --row-menu-panel-bg: rgba(255,255,255,0.99);
      --row-menu-panel-border: rgba(79,100,128,0.14);
      --row-menu-item-bg: rgba(240,243,247,0.98);
      --row-menu-item-hover: rgba(226,232,239,0.96);
      --row-menu-item-text: #3d5068;
    }
    html[data-theme="terracotta-scholar"] {
      --hero-graphic: url("/assets/themes/terracotta-scholar_v1.0.svg");
      --login-graphic: url("/assets/themes/terracotta-scholar_v1.0.svg");
      --page-bg-start: #f7ece0;
      --page-bg-mid: #fdf8f2;
      --page-bg-end: #ecd6bd;
      --page-sheen: rgba(181, 86, 47, 0.07);
      --nav-surface: rgba(253, 248, 242, 0.95);
      --nav-border: rgba(181, 86, 47, 0.22);
      --phase-text: #8a6650;
      --primary-start: #a8552d;
      --primary-end: #c97a45;
      --primary-border: rgba(27, 42, 91, 0.5);
      --primary-text: #ffffff;
      --secondary-text: #7a3e20;
      --secondary-border: rgba(181, 86, 47, 0.16);
      --accent-start: #1b2a5b;
      --accent-end: #3a4f8a;
      --accent-text: #ffffff;
      --hero-overlay-start: rgba(27, 42, 91, 0.88);
      --hero-overlay-end: rgba(181, 86, 47, 0.76);
      --hero-burst-one: rgba(201, 162, 39, 0.18);
      --hero-burst-two: rgba(181, 86, 47, 0.22);
      --hero-burst-three: rgba(27, 42, 91, 0.2);
      --surface-bg: rgba(255, 251, 246, 0.96);
      --surface-bg-strong: rgba(255, 253, 250, 0.99);
      --card-bg: rgba(255, 251, 246, 0.98);
      --input-bg: rgba(255, 253, 250, 0.997);
      --input-border: rgba(181, 86, 47, 0.16);
      --login-shell-start: rgba(27, 42, 91, 0.88);
      --login-shell-end: rgba(181, 86, 47, 0.8);
      --login-shell-border: rgba(201, 162, 39, 0.26);
      --login-shell-shadow: 0 32px 66px rgba(48, 25, 12, 0.3);
      --login-brand-bg-start: rgba(255, 252, 248, 0.99);
      --login-brand-bg-end: rgba(246, 233, 217, 0.96);
      --login-brand-border: rgba(181, 86, 47, 0.22);
      --login-panel-bg: rgba(255, 252, 248, 0.96);
      --login-panel-border: rgba(243, 225, 202, 0.48);
      --muted-text: #8a7160;
      --banner-start: rgba(181, 86, 47, 0.92);
      --banner-end: rgba(27, 42, 91, 0.84);
      --footer-surface: rgba(248, 239, 229, 0.98);
      --footer-border: rgba(181, 86, 47, 0.18);
      --footer-note: #8a7160;
      --theme-menu-bg: rgba(255, 252, 248, 0.99);
      --theme-option-hover: rgba(181, 86, 47, 0.05);
      --theme-option-active: rgba(181, 86, 47, 0.095);
      --table-shell-border: rgba(181, 86, 47, 0.15);
      --table-shell-bg: linear-gradient(180deg, rgba(255, 253, 249, 0.99), rgba(244, 229, 210, 0.95));
      --table-head-bg: rgba(243, 226, 205, 0.94);
      --table-head-text: #7a3e20;
      --table-row-hover: rgba(181, 86, 47, 0.036);
      --row-menu-panel-bg: rgba(255, 252, 248, 0.99);
      --row-menu-panel-border: rgba(181, 86, 47, 0.16);
      --row-menu-item-bg: rgba(247, 234, 217, 0.98);
      --row-menu-item-hover: rgba(237, 214, 190, 0.96);
      --row-menu-item-text: #7a3e20;
    }
    html[data-theme="indigo-quartz"] {
      --hero-graphic: url("/assets/themes/indigo-quartz_v1.0.svg");
      --login-graphic: url("/assets/themes/indigo-quartz_v1.0.svg");
      --page-bg-start: #ece9f7;
      --page-bg-mid: #f8f7fd;
      --page-bg-end: #d9d3ef;
      --page-sheen: rgba(201, 162, 39, 0.055);
      --nav-surface: rgba(249, 248, 253, 0.95);
      --nav-border: rgba(36, 27, 82, 0.2);
      --phase-text: #5d5580;
      --primary-start: #241b52;
      --primary-end: #4a3596;
      --primary-border: rgba(201, 162, 39, 0.58);
      --primary-text: #ffffff;
      --secondary-text: #2f2368;
      --secondary-border: rgba(36, 27, 82, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-text: #241b52;
      --hero-overlay-start: rgba(18, 13, 42, 0.92);
      --hero-overlay-end: rgba(74, 53, 150, 0.78);
      --hero-burst-one: rgba(201, 162, 39, 0.18);
      --hero-burst-two: rgba(74, 53, 150, 0.22);
      --hero-burst-three: rgba(36, 27, 82, 0.2);
      --surface-bg: rgba(251, 250, 254, 0.96);
      --surface-bg-strong: rgba(254, 253, 255, 0.99);
      --card-bg: rgba(251, 250, 254, 0.98);
      --input-bg: rgba(254, 253, 255, 0.997);
      --input-border: rgba(36, 27, 82, 0.15);
      --login-shell-start: rgba(18, 13, 42, 0.9);
      --login-shell-end: rgba(74, 53, 150, 0.8);
      --login-shell-border: rgba(201, 162, 39, 0.25);
      --login-shell-shadow: 0 32px 66px rgba(10, 8, 26, 0.32);
      --login-brand-bg-start: rgba(254, 253, 255, 0.99);
      --login-brand-bg-end: rgba(240, 237, 248, 0.96);
      --login-brand-border: rgba(36, 27, 82, 0.2);
      --login-panel-bg: rgba(254, 253, 255, 0.96);
      --login-panel-border: rgba(228, 224, 244, 0.5);
      --muted-text: #5d5580;
      --banner-start: rgba(36, 27, 82, 0.94);
      --banner-end: rgba(201, 162, 39, 0.8);
      --footer-surface: rgba(243, 241, 250, 0.98);
      --footer-border: rgba(36, 27, 82, 0.18);
      --footer-note: #5d5580;
      --theme-menu-bg: rgba(251, 250, 254, 0.99);
      --theme-option-hover: rgba(36, 27, 82, 0.05);
      --theme-option-active: rgba(36, 27, 82, 0.095);
      --table-shell-border: rgba(36, 27, 82, 0.15);
      --table-shell-bg: linear-gradient(180deg, rgba(251, 250, 254, 0.99), rgba(233, 229, 246, 0.95));
      --table-head-bg: rgba(229, 224, 245, 0.94);
      --table-head-text: #2f2368;
      --table-row-hover: rgba(36, 27, 82, 0.036);
      --row-menu-panel-bg: rgba(251, 250, 254, 0.99);
      --row-menu-panel-border: rgba(36, 27, 82, 0.16);
      --row-menu-item-bg: rgba(238, 234, 249, 0.98);
      --row-menu-item-hover: rgba(219, 211, 241, 0.96);
      --row-menu-item-text: #2f2368;
    }
    html[data-theme="jade-imperial"] {
      --hero-graphic: url("/assets/themes/jade-imperial_v1.0.svg");
      --login-graphic: url("/assets/themes/jade-imperial_v1.0.svg");
      --page-bg-start: #e7f3ee;
      --page-bg-mid: #f6fbf9;
      --page-bg-end: #d3e9dd;
      --page-sheen: rgba(201, 162, 39, 0.055);
      --nav-surface: rgba(246, 251, 249, 0.95);
      --nav-border: rgba(12, 38, 32, 0.2);
      --phase-text: #4d6b5e;
      --primary-start: #0c2620;
      --primary-end: #1f8f6b;
      --primary-border: rgba(201, 162, 39, 0.6);
      --primary-text: #ffffff;
      --secondary-text: #123a2f;
      --secondary-border: rgba(12, 38, 32, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-text: #0c2620;
      --hero-overlay-start: rgba(7, 19, 16, 0.92);
      --hero-overlay-end: rgba(31, 143, 107, 0.78);
      --hero-burst-one: rgba(201, 162, 39, 0.2);
      --hero-burst-two: rgba(31, 143, 107, 0.2);
      --hero-burst-three: rgba(12, 38, 32, 0.2);
      --surface-bg: rgba(250, 253, 252, 0.96);
      --surface-bg-strong: rgba(254, 255, 254, 0.99);
      --card-bg: rgba(250, 253, 252, 0.98);
      --input-bg: rgba(254, 255, 254, 0.997);
      --input-border: rgba(12, 38, 32, 0.14);
      --login-shell-start: rgba(7, 19, 16, 0.9);
      --login-shell-end: rgba(31, 143, 107, 0.8);
      --login-shell-border: rgba(201, 162, 39, 0.26);
      --login-shell-shadow: 0 32px 66px rgba(4, 12, 10, 0.3);
      --login-brand-bg-start: rgba(255, 255, 254, 0.99);
      --login-brand-bg-end: rgba(236, 245, 241, 0.96);
      --login-brand-border: rgba(12, 38, 32, 0.22);
      --login-panel-bg: rgba(255, 255, 254, 0.96);
      --login-panel-border: rgba(220, 237, 229, 0.5);
      --muted-text: #4d6b5e;
      --banner-start: rgba(12, 38, 32, 0.94);
      --banner-end: rgba(201, 162, 39, 0.8);
      --footer-surface: rgba(237, 246, 242, 0.98);
      --footer-border: rgba(12, 38, 32, 0.18);
      --footer-note: #4d6b5e;
      --theme-menu-bg: rgba(250, 253, 252, 0.99);
      --theme-option-hover: rgba(12, 38, 32, 0.05);
      --theme-option-active: rgba(12, 38, 32, 0.095);
      --table-shell-border: rgba(12, 38, 32, 0.15);
      --table-shell-bg: linear-gradient(180deg, rgba(250, 253, 252, 0.99), rgba(224, 240, 232, 0.95));
      --table-head-bg: rgba(220, 238, 229, 0.94);
      --table-head-text: #123a2f;
      --table-row-hover: rgba(12, 38, 32, 0.036);
      --row-menu-panel-bg: rgba(250, 253, 252, 0.99);
      --row-menu-panel-border: rgba(12, 38, 32, 0.16);
      --row-menu-item-bg: rgba(231, 243, 236, 0.98);
      --row-menu-item-hover: rgba(208, 231, 218, 0.96);
      --row-menu-item-text: #123a2f;
    }
    html[data-theme="rosewood-classic"] {
      --hero-graphic: url("/assets/themes/rosewood-classic_v1.0.svg");
      --login-graphic: url("/assets/themes/rosewood-classic_v1.0.svg");
      --page-bg-start: #f6e9e6;
      --page-bg-mid: #fcf5f2;
      --page-bg-end: #e8d0c9;
      --page-sheen: rgba(201, 162, 39, 0.06);
      --nav-surface: rgba(252, 245, 242, 0.95);
      --nav-border: rgba(53, 24, 26, 0.2);
      --phase-text: #83625e;
      --primary-start: #35181a;
      --primary-end: #7a3b2e;
      --primary-border: rgba(201, 162, 39, 0.6);
      --primary-text: #ffffff;
      --secondary-text: #4a231f;
      --secondary-border: rgba(53, 24, 26, 0.15);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-text: #35181a;
      --hero-overlay-start: rgba(24, 11, 12, 0.92);
      --hero-overlay-end: rgba(122, 59, 46, 0.78);
      --hero-burst-one: rgba(201, 162, 39, 0.2);
      --hero-burst-two: rgba(122, 59, 46, 0.2);
      --hero-burst-three: rgba(53, 24, 26, 0.2);
      --surface-bg: rgba(254, 250, 249, 0.96);
      --surface-bg-strong: rgba(255, 253, 252, 0.99);
      --card-bg: rgba(254, 250, 249, 0.98);
      --input-bg: rgba(255, 253, 252, 0.997);
      --input-border: rgba(53, 24, 26, 0.15);
      --login-shell-start: rgba(24, 11, 12, 0.9);
      --login-shell-end: rgba(122, 59, 46, 0.8);
      --login-shell-border: rgba(201, 162, 39, 0.26);
      --login-shell-shadow: 0 32px 66px rgba(16, 7, 8, 0.32);
      --login-brand-bg-start: rgba(255, 252, 251, 0.99);
      --login-brand-bg-end: rgba(245, 233, 230, 0.96);
      --login-brand-border: rgba(53, 24, 26, 0.22);
      --login-panel-bg: rgba(255, 252, 251, 0.96);
      --login-panel-border: rgba(243, 224, 219, 0.48);
      --muted-text: #83655f;
      --banner-start: rgba(53, 24, 26, 0.94);
      --banner-end: rgba(201, 162, 39, 0.8);
      --footer-surface: rgba(247, 237, 234, 0.98);
      --footer-border: rgba(53, 24, 26, 0.18);
      --footer-note: #83655f;
      --theme-menu-bg: rgba(255, 252, 251, 0.99);
      --theme-option-hover: rgba(53, 24, 26, 0.05);
      --theme-option-active: rgba(53, 24, 26, 0.095);
      --table-shell-border: rgba(53, 24, 26, 0.15);
      --table-shell-bg: linear-gradient(180deg, rgba(255, 253, 252, 0.99), rgba(244, 230, 226, 0.95));
      --table-head-bg: rgba(243, 227, 223, 0.94);
      --table-head-text: #4a231f;
      --table-row-hover: rgba(53, 24, 26, 0.036);
      --row-menu-panel-bg: rgba(255, 252, 251, 0.99);
      --row-menu-panel-border: rgba(53, 24, 26, 0.16);
      --row-menu-item-bg: rgba(247, 235, 233, 0.98);
      --row-menu-item-hover: rgba(236, 216, 212, 0.96);
      --row-menu-item-text: #4a231f;
    }
    html[data-theme="steel-horizon"] {
      --hero-graphic: url("/assets/themes/steel-horizon_v1.0.svg");
      --login-graphic: url("/assets/themes/steel-horizon_v1.0.svg");
      --page-bg-start: #e9edf1;
      --page-bg-mid: #f7f9fb;
      --page-bg-end: #dbe1e7;
      --page-sheen: rgba(83, 106, 130, 0.05);
      --nav-surface: rgba(247, 249, 251, 0.95);
      --nav-border: rgba(43, 58, 74, 0.2);
      --phase-text: #56687b;
      --primary-start: #2b3a4a;
      --primary-end: #536a82;
      --primary-border: rgba(201, 162, 39, 0.5);
      --primary-text: #ffffff;
      --secondary-text: #2b3a4a;
      --secondary-border: rgba(43, 58, 74, 0.14);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-text: #2b3a4a;
      --hero-overlay-start: rgba(20, 27, 35, 0.9);
      --hero-overlay-end: rgba(83, 106, 130, 0.72);
      --hero-burst-one: rgba(201, 162, 39, 0.16);
      --hero-burst-two: rgba(83, 106, 130, 0.2);
      --hero-burst-three: rgba(43, 58, 74, 0.2);
      --surface-bg: rgba(250, 251, 253, 0.96);
      --surface-bg-strong: rgba(254, 255, 255, 0.99);
      --card-bg: rgba(250, 251, 253, 0.98);
      --input-bg: rgba(254, 255, 255, 0.997);
      --input-border: rgba(43, 58, 74, 0.14);
      --login-shell-start: rgba(20, 27, 35, 0.9);
      --login-shell-end: rgba(83, 106, 130, 0.8);
      --login-shell-border: rgba(201, 162, 39, 0.24);
      --login-shell-shadow: 0 32px 64px rgba(12, 16, 22, 0.3);
      --login-brand-bg-start: rgba(254, 255, 255, 0.99);
      --login-brand-bg-end: rgba(238, 241, 244, 0.96);
      --login-brand-border: rgba(43, 58, 74, 0.2);
      --login-panel-bg: rgba(254, 255, 255, 0.96);
      --login-panel-border: rgba(223, 228, 233, 0.5);
      --muted-text: #56687b;
      --banner-start: rgba(43, 58, 74, 0.92);
      --banner-end: rgba(201, 162, 39, 0.78);
      --footer-surface: rgba(240, 243, 246, 0.98);
      --footer-border: rgba(43, 58, 74, 0.16);
      --footer-note: #56687b;
      --theme-menu-bg: rgba(250, 251, 253, 0.99);
      --theme-option-hover: rgba(43, 58, 74, 0.045);
      --theme-option-active: rgba(43, 58, 74, 0.08);
      --table-shell-border: rgba(43, 58, 74, 0.13);
      --table-shell-bg: linear-gradient(180deg, rgba(250, 251, 253, 0.99), rgba(230, 234, 238, 0.95));
      --table-head-bg: rgba(228, 233, 237, 0.94);
      --table-head-text: #2b3a4a;
      --table-row-hover: rgba(43, 58, 74, 0.034);
      --row-menu-panel-bg: rgba(250, 251, 253, 0.99);
      --row-menu-panel-border: rgba(43, 58, 74, 0.15);
      --row-menu-item-bg: rgba(235, 239, 242, 0.98);
      --row-menu-item-hover: rgba(216, 223, 228, 0.96);
      --row-menu-item-text: #2b3a4a;
    }
    html[data-theme="dark-theme"] {
      --ink: #e9ecf5;
      --navy: #e8cf85;
      --line: rgba(233, 236, 245, 0.14);
      --shadow: 0 24px 60px rgba(0, 0, 0, 0.55);
      --shadow-soft: 0 16px 34px rgba(0, 0, 0, 0.4);
      --hero-shadow: 0 30px 60px rgba(0, 0, 0, 0.55);
      --page-bg-start: #0a0e1a;
      --page-bg-mid: #10152a;
      --page-bg-end: #0a0c16;
      --page-sheen: rgba(201, 162, 39, 0.05);
      --frame-nav-surface: rgba(13, 18, 33, 0.92);
      --frame-nav-border: rgba(201, 162, 39, 0.2);
      --frame-nav-shadow: 0 14px 30px rgba(0, 0, 0, 0.5);
      --phase-text: #9aa4c2;
      --primary-start: #c9a227;
      --primary-end: #e8cf85;
      --primary-border: rgba(201, 162, 39, 0.7);
      --primary-text: #14192a;
      --secondary-bg: rgba(28, 34, 54, 0.86);
      --secondary-text: #e9ecf5;
      --secondary-border: rgba(233, 236, 245, 0.16);
      --secondary-shadow: 0 14px 26px rgba(0, 0, 0, 0.4);
      --accent-start: #9b1b2e;
      --accent-end: #cf4a5f;
      --accent-border: rgba(155, 27, 46, 0.6);
      --accent-text: #ffffff;
      --hero-overlay-start: rgba(4, 6, 14, 0.96);
      --hero-overlay-end: rgba(20, 24, 44, 0.92);
      --hero-burst-one: rgba(201, 162, 39, 0.16);
      --hero-burst-two: rgba(155, 27, 46, 0.16);
      --hero-burst-three: rgba(42, 74, 140, 0.22);
      --surface-bg: rgba(21, 27, 44, 0.92);
      --surface-bg-strong: rgba(26, 33, 53, 0.97);
      --surface-border: rgba(233, 236, 245, 0.1);
      --card-bg: rgba(23, 29, 47, 0.94);
      --card-border: rgba(233, 236, 245, 0.12);
      --login-shell-start: rgba(6, 9, 20, 0.95);
      --login-shell-end: rgba(30, 24, 44, 0.9);
      --login-shell-border: rgba(201, 162, 39, 0.3);
      --login-shell-shadow: 0 34px 72px rgba(0, 0, 0, 0.6);
      --login-brand-bg-start: rgba(26, 32, 51, 0.98);
      --login-brand-bg-end: rgba(19, 24, 40, 0.96);
      --login-brand-border: rgba(201, 162, 39, 0.32);
      --login-brand-shadow: inset 0 1px 0 rgba(255,255,255,0.06), 0 16px 26px rgba(0, 0, 0, 0.4);
      --login-panel-bg: rgba(19, 24, 40, 0.94);
      --login-panel-border: rgba(233, 236, 245, 0.12);
      --input-bg: rgba(15, 19, 33, 0.9);
      --input-border: rgba(233, 236, 245, 0.18);
      --muted-text: #9aa4c2;
      --banner-start: rgba(8, 11, 22, 0.96);
      --banner-end: rgba(155, 27, 46, 0.7);
      --drawer-backdrop: rgba(0, 0, 0, 0.6);
      --drawer-bg-start: rgba(19, 24, 40, 0.98);
      --drawer-bg-end: rgba(13, 17, 30, 0.98);
      --drawer-shadow: -20px 0 50px rgba(0, 0, 0, 0.5);
      --theme-menu-bg: rgba(23, 29, 47, 0.99);
      --theme-menu-border: rgba(233, 236, 245, 0.14);
      --theme-menu-shadow: 0 20px 42px rgba(0, 0, 0, 0.5);
      --theme-option-hover: rgba(233, 236, 245, 0.06);
      --theme-option-active: rgba(233, 236, 245, 0.1);
      --table-shell-border: rgba(233, 236, 245, 0.12);
      --table-shell-bg: linear-gradient(180deg, rgba(23, 29, 47, 0.95), rgba(15, 19, 33, 0.92));
      --table-head-bg: rgba(28, 34, 54, 0.92);
      --table-head-text: #e9ecf5;
      --table-line: rgba(233, 236, 245, 0.12);
      --table-line-strong: rgba(233, 236, 245, 0.22);
      --table-row-hover: rgba(233, 236, 245, 0.05);
      --timeline-shell-bg: linear-gradient(180deg, rgba(23, 29, 47, 0.95), rgba(15, 19, 33, 0.92));
      --timeline-shell-border: rgba(201, 162, 39, 0.22);
      --row-menu-panel-bg: rgba(23, 29, 47, 0.98);
      --row-menu-panel-border: rgba(233, 236, 245, 0.14);
      --row-menu-item-bg: rgba(28, 34, 54, 0.96);
      --row-menu-item-hover: rgba(38, 45, 68, 0.96);
      --row-menu-item-text: #e9ecf5;
      --hero-graphic: url("/assets/themes/emblem-dark_v1.0.svg");
      --login-graphic: url("/assets/themes/emblem-dark_v1.0.svg");
    }
    html[data-theme="dark-theme"] .brand img.wordmark,
    html[data-theme="dark-theme"] .footer-brand-line img,
    html[data-theme="dark-theme"] .event-drawer-head-logo {
      background: #ffffff;
      padding: 6px 12px;
      border-radius: 10px;
    }
    html[data-theme="dark-theme"] .login-emblem {
      background: #ffffff;
      padding: 8px;
      border-radius: 999px;
      box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.12);
    }
    html[data-theme="bright-theme"] {
      --ink: #10162a;
      --line: rgba(16, 22, 42, 0.1);
      --shadow: 0 24px 60px rgba(16, 22, 42, 0.12);
      --shadow-soft: 0 16px 34px rgba(16, 22, 42, 0.07);
      --hero-shadow: 0 30px 60px rgba(16, 22, 42, 0.18);
      --page-bg-start: #ffffff;
      --page-bg-mid: #fbfbfe;
      --page-bg-end: #f2f4f9;
      --page-sheen: rgba(27, 42, 91, 0.03);
      --frame-nav-surface: rgba(255, 255, 255, 0.98);
      --frame-nav-border: rgba(16, 22, 42, 0.12);
      --frame-nav-shadow: 0 12px 24px rgba(16, 22, 42, 0.06);
      --phase-text: #4c5670;
      --primary-start: #10162a;
      --primary-end: #223055;
      --primary-border: rgba(16, 22, 42, 0.9);
      --primary-text: #ffffff;
      --secondary-bg: rgba(255, 255, 255, 0.95);
      --secondary-text: #10162a;
      --secondary-border: rgba(16, 22, 42, 0.1);
      --secondary-shadow: 0 14px 26px rgba(16, 22, 42, 0.06);
      --accent-start: #c9a227;
      --accent-end: #e8cf85;
      --accent-border: rgba(201, 162, 39, 0.6);
      --accent-text: #10162a;
      --hero-overlay-start: rgba(16, 22, 42, 0.94);
      --hero-overlay-end: rgba(155, 27, 46, 0.6);
      --hero-burst-one: rgba(201, 162, 39, 0.2);
      --hero-burst-two: rgba(155, 27, 46, 0.16);
      --hero-burst-three: rgba(16, 22, 42, 0.22);
      --surface-bg: rgba(255, 255, 255, 0.97);
      --surface-bg-strong: rgba(255, 255, 255, 0.995);
      --surface-border: rgba(16, 22, 42, 0.08);
      --card-bg: rgba(255, 255, 255, 0.98);
      --card-border: rgba(16, 22, 42, 0.08);
      --login-shell-start: rgba(16, 22, 42, 0.92);
      --login-shell-end: rgba(155, 27, 46, 0.68);
      --login-shell-border: rgba(201, 162, 39, 0.3);
      --login-shell-shadow: 0 30px 62px rgba(16, 22, 42, 0.22);
      --login-brand-bg-start: rgba(255, 255, 255, 0.99);
      --login-brand-bg-end: rgba(247, 248, 251, 0.97);
      --login-brand-border: rgba(201, 162, 39, 0.3);
      --login-brand-shadow: inset 0 1px 0 rgba(255,255,255,0.9), 0 16px 26px rgba(16, 22, 42, 0.08);
      --login-panel-bg: rgba(255, 255, 255, 0.98);
      --login-panel-border: rgba(16, 22, 42, 0.08);
      --input-bg: rgba(255, 255, 255, 0.99);
      --input-border: rgba(16, 22, 42, 0.12);
      --muted-text: #4c5670;
      --banner-start: rgba(16, 22, 42, 0.95);
      --banner-end: rgba(155, 27, 46, 0.7);
      --theme-menu-bg: rgba(255, 255, 255, 0.99);
      --theme-menu-border: rgba(16, 22, 42, 0.1);
      --theme-menu-shadow: 0 20px 42px rgba(16, 22, 42, 0.12);
      --theme-option-hover: rgba(16, 22, 42, 0.045);
      --theme-option-active: rgba(16, 22, 42, 0.08);
      --table-shell-border: rgba(16, 22, 42, 0.1);
      --table-shell-bg: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(246, 247, 250, 0.95));
      --table-head-bg: rgba(243, 244, 248, 0.92);
      --table-head-text: #10162a;
      --table-line: rgba(16, 22, 42, 0.12);
      --table-line-strong: rgba(16, 22, 42, 0.24);
      --table-row-hover: rgba(16, 22, 42, 0.035);
      --timeline-shell-bg: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(246, 247, 250, 0.95));
      --timeline-shell-border: rgba(201, 162, 39, 0.2);
      --row-menu-panel-bg: rgba(255, 255, 255, 0.99);
      --row-menu-panel-border: rgba(16, 22, 42, 0.12);
      --row-menu-item-bg: rgba(244, 245, 249, 0.98);
      --row-menu-item-hover: rgba(230, 233, 241, 0.96);
      --row-menu-item-text: #10162a;
      --hero-graphic: url("/assets/themes/emblem-bright_v1.0.svg");
      --login-graphic: url("/assets/themes/emblem-bright_v1.0.svg");
    }



    html[data-button-style="signature-gloss"],
    [data-button-style-preview="signature-gloss"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: var(--secondary-text);
      --nib-ui-on-accent: var(--navy);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 16px;
      --nib-ui-button-radius-soft: 12px;
      --nib-ui-button-radius-pill: 999px;
      --nib-ui-button-shell-primary: linear-gradient(135deg, var(--primary-start), color-mix(in srgb, var(--primary-end) 78%, var(--red) 22%));
      --nib-ui-button-shell-secondary: linear-gradient(180deg, rgba(255,253,247,0.99), rgba(245,241,230,0.93));
      --nib-ui-button-shell-accent: linear-gradient(135deg, var(--accent-start), color-mix(in srgb, var(--accent-end) 84%, #ffffff 16%));
      --nib-ui-button-shell-danger: linear-gradient(135deg, color-mix(in srgb, var(--red) 92%, #ffffff 8%), color-mix(in srgb, var(--red) 70%, #c9a227 30%));
      --nib-ui-button-shell-outline: linear-gradient(180deg, rgba(255,255,255,0.86), rgba(255,255,255,0.46));
      --nib-ui-button-shell-flat: color-mix(in srgb, var(--cream) 82%, #ffffff 18%);
      --nib-ui-button-border-primary: color-mix(in srgb, var(--primary-start) 58%, var(--gold) 42%);
      --nib-ui-button-border-secondary: var(--nib-ui-gloss-line);
      --nib-ui-button-border-accent: color-mix(in srgb, var(--gold) 62%, var(--primary-start) 38%);
      --nib-ui-button-border-danger: color-mix(in srgb, var(--red) 60%, #ffffff 40%);
      --nib-ui-button-border-outline: color-mix(in srgb, var(--primary-start) 34%, var(--gold) 20%);
      --nib-ui-button-shadow-rest: var(--nib-ui-gloss-shadow-soft), var(--nib-ui-gloss-inner);
      --nib-ui-button-shadow-strong: 0 18px 32px rgba(16, 29, 63, 0.22), var(--nib-ui-gloss-inner);
      --nib-ui-button-shadow-hover: 0 20px 34px rgba(16, 29, 63, 0.16), var(--nib-ui-gloss-inner);
      --nib-ui-button-shadow-flat: 0 12px 26px rgba(16,29,63,0.08);
      --nib-ui-button-shadow-pressed: inset 0 1px 8px rgba(16, 29, 63, 0.12);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0.22) 48%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.76;
      --nib-ui-button-highlight-radius: calc(var(--nib-ui-button-radius-base) - 1px) calc(var(--nib-ui-button-radius-base) - 1px) 12px 12px;
      --nib-ui-button-translate-hover: -1px;
      --nib-ui-button-icon-bg: var(--nib-ui-button-shell-primary);
      --nib-ui-button-icon-border: color-mix(in srgb, var(--gold) 42%, var(--primary-start) 58%);
      --nib-ui-button-icon-shadow: 0 16px 30px rgba(16, 29, 63, 0.2), var(--nib-ui-gloss-inner);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,255,255,0.76), rgba(255,255,255,0.34));
      --nib-ui-chip-border: color-mix(in srgb, var(--gold) 34%, transparent);
      --nib-ui-chip-shadow: inset 0 1px 0 rgba(255,255,255,0.76);
    }

    html[data-button-style="royal-gradient"],
    [data-button-style-preview="royal-gradient"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: var(--secondary-text);
      --nib-ui-on-accent: var(--navy);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 18px;
      --nib-ui-button-radius-soft: 14px;
      --nib-ui-button-font-weight: 800;
      --nib-ui-button-shell-primary: linear-gradient(135deg, #11224c 0%, #9b1b2e 54%, #d8b650 100%);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,243,232,0.95));
      --nib-ui-button-shell-accent: linear-gradient(135deg, #c9a227 0%, #efd47a 48%, #9b1b2e 100%);
      --nib-ui-button-shell-danger: linear-gradient(135deg, #9b1b2e 0%, #cf5367 100%);
      --nib-ui-button-shadow-rest: 0 16px 30px rgba(17, 34, 76, 0.18), inset 0 1px 0 rgba(255,255,255,0.7);
      --nib-ui-button-shadow-strong: 0 18px 34px rgba(17, 34, 76, 0.24), inset 0 1px 0 rgba(255,255,255,0.72);
      --nib-ui-button-shadow-hover: 0 22px 38px rgba(17, 34, 76, 0.22), inset 0 1px 0 rgba(255,255,255,0.75);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.72), rgba(255,255,255,0.16) 44%, rgba(255,255,255,0) 100%);
      --nib-ui-button-icon-bg: linear-gradient(135deg, #11224c 0%, #9b1b2e 100%);
    }

    html[data-button-style="soft-neumorph"],
    [data-button-style-preview="soft-neumorph"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: var(--secondary-text);
      /* Fixed navy, not var(--navy): the accent surface here is always gold-toned, but Dark
         theme repurposes --navy into a pale gold for legibility elsewhere, which would put
         near-identical pale-gold text on a gold button (BUG_AUDIT_v1.0.md #26). */
      --nib-ui-on-accent: #1b2a5b;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 20px;
      --nib-ui-button-radius-soft: 16px;
      --nib-ui-button-border-style: solid;
      --nib-ui-button-shell-primary: linear-gradient(145deg, color-mix(in srgb, var(--navy) 88%, #ffffff 12%), color-mix(in srgb, var(--navy) 62%, #ffffff 38%));
      --nib-ui-button-shell-secondary: linear-gradient(145deg, #fffaf0, #f1e9da);
      --nib-ui-button-shell-accent: linear-gradient(145deg, #e6c868, #c59d26);
      --nib-ui-button-shell-danger: linear-gradient(145deg, #c4455c, #962338);
      --nib-ui-button-border-primary: rgba(255,255,255,0.45);
      --nib-ui-button-border-secondary: rgba(255,255,255,0.72);
      --nib-ui-button-border-accent: rgba(255,255,255,0.46);
      --nib-ui-button-border-danger: rgba(255,255,255,0.34);
      --nib-ui-button-border-outline: rgba(255,255,255,0.8);
      --nib-ui-button-shadow-rest: 8px 8px 18px rgba(27, 42, 91, 0.14), -7px -7px 18px rgba(255,255,255,0.92);
      --nib-ui-button-shadow-strong: 10px 10px 22px rgba(27, 42, 91, 0.16), -8px -8px 20px rgba(255,255,255,0.95);
      --nib-ui-button-shadow-hover: 12px 12px 24px rgba(27, 42, 91, 0.18), -8px -8px 22px rgba(255,255,255,0.96);
      --nib-ui-button-shadow-flat: 7px 7px 16px rgba(27, 42, 91, 0.12), -6px -6px 16px rgba(255,255,255,0.92);
      --nib-ui-button-shadow-pressed: inset 8px 8px 14px rgba(27, 42, 91, 0.12), inset -7px -7px 14px rgba(255,255,255,0.9);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.55), rgba(255,255,255,0.08) 50%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.5;
      --nib-ui-button-icon-bg: linear-gradient(145deg, color-mix(in srgb, var(--red) 74%, #ffffff 26%), color-mix(in srgb, var(--gold) 52%, var(--red) 48%));
      --nib-ui-chip-bg: linear-gradient(145deg, #fffaf0, #efe6d6);
      --nib-ui-chip-shadow: inset 1px 1px 0 rgba(255,255,255,0.9), 4px 4px 10px rgba(27,42,91,0.08);
    }

    html[data-button-style="frosted-glass"],
    [data-button-style-preview="frosted-glass"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: var(--secondary-text);
      --nib-ui-on-accent: var(--navy);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 18px;
      --nib-ui-button-radius-soft: 14px;
      --nib-ui-button-font-weight: 600;
      --nib-ui-button-backdrop-filter: blur(12px) saturate(140%);
      --nib-ui-button-shell-primary: linear-gradient(135deg, rgba(27,42,91,0.72), rgba(155,27,46,0.62));
      --nib-ui-button-shell-secondary: linear-gradient(135deg, rgba(255,255,255,0.72), rgba(255,255,255,0.52));
      --nib-ui-button-shell-accent: linear-gradient(135deg, rgba(201,162,39,0.76), rgba(255,255,255,0.46));
      --nib-ui-button-shell-danger: linear-gradient(135deg, rgba(155,27,46,0.82), rgba(255,255,255,0.18));
      --nib-ui-button-border-primary: rgba(255,255,255,0.42);
      --nib-ui-button-border-secondary: rgba(255,255,255,0.6);
      --nib-ui-button-border-accent: rgba(255,255,255,0.46);
      --nib-ui-button-border-danger: rgba(255,255,255,0.34);
      --nib-ui-button-border-outline: rgba(255,255,255,0.56);
      --nib-ui-button-shadow-rest: 0 18px 28px rgba(17, 28, 59, 0.16);
      --nib-ui-button-shadow-strong: 0 18px 32px rgba(17, 28, 59, 0.2);
      --nib-ui-button-shadow-hover: 0 22px 36px rgba(17, 28, 59, 0.22);
      --nib-ui-button-shadow-flat: 0 14px 24px rgba(17, 28, 59, 0.12);
      --nib-ui-button-shadow-pressed: inset 0 1px 10px rgba(17,28,59,0.18);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.46), rgba(255,255,255,0.12) 48%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.46;
      --nib-ui-button-icon-bg: linear-gradient(135deg, rgba(27,42,91,0.78), rgba(201,162,39,0.58));
      --nib-ui-chip-bg: linear-gradient(135deg, rgba(255,255,255,0.62), rgba(255,255,255,0.28));
    }

    html[data-button-style="brutalist-retro"],
    [data-button-style-preview="brutalist-retro"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: var(--secondary-text);
      --nib-ui-on-accent: var(--navy);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 8px;
      --nib-ui-button-radius-soft: 8px;
      --nib-ui-button-font-family: var(--brand-display);
      --nib-ui-button-font-weight: 800;
      --nib-ui-button-letter-spacing: 0.04em;
      --nib-ui-button-text-transform: uppercase;
      --nib-ui-button-icon-radius: 8px;
      --nib-ui-button-shell-primary: linear-gradient(180deg, #1b2a5b, #1b2a5b);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, #fffdf7, #fffdf7);
      --nib-ui-button-shell-accent: linear-gradient(180deg, #c9a227, #c9a227);
      --nib-ui-button-shell-danger: linear-gradient(180deg, #9b1b2e, #9b1b2e);
      --nib-ui-button-border-primary: #0f1b3a;
      --nib-ui-button-border-secondary: #1b2a5b;
      --nib-ui-button-border-accent: #7d6111;
      --nib-ui-button-border-danger: #5e0f1d;
      --nib-ui-button-border-outline: #1b2a5b;
      --nib-ui-button-shadow-rest: 5px 5px 0 rgba(17, 34, 76, 0.9);
      --nib-ui-button-shadow-strong: 5px 5px 0 rgba(17, 34, 76, 0.95);
      --nib-ui-button-shadow-hover: 7px 7px 0 rgba(17, 34, 76, 0.95);
      --nib-ui-button-shadow-flat: 4px 4px 0 rgba(17, 34, 76, 0.75);
      --nib-ui-button-shadow-pressed: 2px 2px 0 rgba(17,34,76,0.95);
      --nib-ui-button-highlight-bg: none;
      --nib-ui-button-highlight-opacity: 0;
      --nib-ui-button-translate-hover: -2px;
      --nib-ui-button-icon-bg: linear-gradient(180deg, #9b1b2e, #9b1b2e);
      --nib-ui-button-icon-shadow: 4px 4px 0 rgba(17,34,76,0.9);
      --nib-ui-chip-bg: linear-gradient(180deg, #ffffff, #ffffff);
      --nib-ui-chip-border: #1b2a5b;
      --nib-ui-chip-shadow: 3px 3px 0 rgba(17,34,76,0.65);
    }

    html[data-button-style="paper-ledger"],
    [data-button-style-preview="paper-ledger"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: var(--secondary-text);
      --nib-ui-on-accent: var(--navy);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 12px;
      --nib-ui-button-radius-soft: 10px;
      --nib-ui-button-font-family: var(--brand-display);
      --nib-ui-button-letter-spacing: 0.01em;
      --nib-ui-button-shell-primary: linear-gradient(180deg, #1b2a5b, #31467d);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, #fffdf8, #f4eddf);
      --nib-ui-button-shell-accent: linear-gradient(180deg, #e7cf83, #c9a227);
      --nib-ui-button-shell-danger: linear-gradient(180deg, #b4384d, #9b1b2e);
      --nib-ui-button-border-primary: rgba(27,42,91,0.68);
      --nib-ui-button-border-secondary: rgba(110,101,77,0.28);
      --nib-ui-button-border-accent: rgba(141,108,18,0.44);
      --nib-ui-button-shadow-rest: 0 8px 18px rgba(27, 42, 91, 0.08);
      --nib-ui-button-shadow-strong: 0 10px 20px rgba(27, 42, 91, 0.12);
      --nib-ui-button-shadow-hover: 0 12px 24px rgba(27, 42, 91, 0.12);
      --nib-ui-button-shadow-flat: 0 8px 16px rgba(27,42,91,0.06);
      --nib-ui-button-shadow-pressed: inset 0 1px 6px rgba(27,42,91,0.08);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.45), rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.32;
      --nib-ui-button-icon-bg: linear-gradient(180deg, #fffdf8, #efe6d5);
      --nib-ui-button-icon-border: rgba(110,101,77,0.3);
      --nib-ui-button-icon-shadow: 0 8px 16px rgba(27, 42, 91, 0.08);
    }

    html[data-button-style="executive-solid"],
    [data-button-style-preview="executive-solid"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: var(--secondary-text);
      /* Fixed navy, not var(--navy): the accent surface here is always gold-toned, but Dark
         theme repurposes --navy into a pale gold for legibility elsewhere, which would put
         near-identical pale-gold text on a gold button (BUG_AUDIT_v1.0.md #26). */
      --nib-ui-on-accent: #1b2a5b;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 14px;
      --nib-ui-button-radius-soft: 12px;
      --nib-ui-button-font-family: var(--brand-display);
      --nib-ui-button-highlight-opacity: 0;
      --nib-ui-button-shell-primary: linear-gradient(180deg, #1b2a5b, #1b2a5b);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, #ffffff, #ffffff);
      --nib-ui-button-shell-accent: linear-gradient(180deg, #c9a227, #c9a227);
      --nib-ui-button-shell-danger: linear-gradient(180deg, #9b1b2e, #9b1b2e);
      --nib-ui-button-border-primary: rgba(27,42,91,0.88);
      --nib-ui-button-border-secondary: rgba(27,42,91,0.16);
      --nib-ui-button-border-accent: rgba(201,162,39,0.84);
      --nib-ui-button-border-danger: rgba(155,27,46,0.84);
      --nib-ui-button-shadow-rest: 0 10px 20px rgba(17, 34, 76, 0.12);
      --nib-ui-button-shadow-strong: 0 12px 24px rgba(17, 34, 76, 0.16);
      --nib-ui-button-shadow-hover: 0 14px 26px rgba(17, 34, 76, 0.18);
      --nib-ui-button-shadow-flat: 0 8px 16px rgba(17,34,76,0.1);
      --nib-ui-button-shadow-pressed: inset 0 1px 6px rgba(17,34,76,0.12);
      --nib-ui-button-highlight-bg: none;
      --nib-ui-button-icon-bg: linear-gradient(180deg, #1b2a5b, #1b2a5b);
      --nib-ui-button-icon-shadow: 0 10px 18px rgba(17,34,76,0.14);
      --nib-ui-chip-bg: linear-gradient(180deg, #ffffff, #ffffff);
    }

    html[data-button-style="midnight-glow"],
    [data-button-style-preview="midnight-glow"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: var(--cream);
      --nib-ui-on-accent: var(--navy);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 18px;
      --nib-ui-button-radius-soft: 14px;
      --nib-ui-button-backdrop-filter: saturate(120%);
      --nib-ui-button-shell-primary: linear-gradient(135deg, #0f1b38 0%, #1b2a5b 54%, #7a1630 100%);
      --nib-ui-button-shell-secondary: linear-gradient(135deg, rgba(20,30,60,0.92), rgba(34,47,84,0.82));
      --nib-ui-button-shell-accent: linear-gradient(135deg, #c9a227 0%, #f0d887 100%);
      --nib-ui-button-shell-danger: linear-gradient(135deg, #7a1630 0%, #b4334a 100%);
      --nib-ui-button-border-primary: rgba(233,214,150,0.38);
      --nib-ui-button-border-secondary: rgba(214,221,246,0.18);
      --nib-ui-button-border-accent: rgba(240,216,135,0.58);
      --nib-ui-button-border-danger: rgba(193,73,101,0.5);
      --nib-ui-button-shadow-rest: 0 16px 30px rgba(10, 18, 38, 0.32), 0 0 0 1px rgba(240,216,135,0.08);
      --nib-ui-button-shadow-strong: 0 18px 34px rgba(10, 18, 38, 0.38), 0 0 0 1px rgba(240,216,135,0.1);
      --nib-ui-button-shadow-hover: 0 22px 38px rgba(10, 18, 38, 0.42), 0 0 0 1px rgba(240,216,135,0.12);
      --nib-ui-button-shadow-flat: 0 12px 20px rgba(10,18,38,0.22);
      --nib-ui-button-shadow-pressed: inset 0 1px 10px rgba(10,18,38,0.2);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.18), rgba(255,255,255,0.05) 48%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.42;
      --nib-ui-button-icon-bg: linear-gradient(135deg, #1b2a5b 0%, #c9a227 100%);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(35,47,86,0.92), rgba(24,33,61,0.82));
      --nib-ui-chip-border: rgba(240,216,135,0.24);
    }

    html[data-button-style="ceramic-pill"],
    [data-button-style-preview="ceramic-pill"] {
      --nib-ui-on-primary: var(--secondary-text);
      --nib-ui-on-secondary: var(--secondary-text);
      --nib-ui-on-accent: var(--navy);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 999px;
      --nib-ui-button-radius-soft: 999px;
      --nib-ui-button-icon-radius: 999px;
      --nib-ui-button-shell-primary: linear-gradient(180deg, color-mix(in srgb, var(--primary-start) 8%, #ffffff 92%), color-mix(in srgb, var(--primary-end) 16%, #f5efe4 84%));
      --nib-ui-button-shell-secondary: linear-gradient(180deg, #ffffff 0%, color-mix(in srgb, var(--cream) 72%, #ffffff 28%) 100%);
      --nib-ui-button-shell-accent: linear-gradient(180deg, color-mix(in srgb, var(--accent-start) 48%, #ffffff 52%), color-mix(in srgb, var(--accent-end) 86%, #ffffff 14%) 100%);
      --nib-ui-button-shell-danger: linear-gradient(180deg, #f2b2bc 0%, #b73b50 100%);
      --nib-ui-button-border-primary: color-mix(in srgb, var(--primary-start) 22%, var(--gold) 28%);
      --nib-ui-button-border-secondary: color-mix(in srgb, var(--primary-start) 14%, transparent);
      --nib-ui-button-border-accent: color-mix(in srgb, var(--accent-end) 48%, transparent);
      --nib-ui-button-border-danger: rgba(155,27,46,0.36);
      --nib-ui-button-shadow-rest: 0 14px 24px rgba(27, 42, 91, 0.1), inset 0 2px 0 rgba(255,255,255,0.96);
      --nib-ui-button-shadow-strong: 0 16px 28px rgba(27, 42, 91, 0.14), inset 0 2px 0 rgba(255,255,255,0.98);
      --nib-ui-button-shadow-hover: 0 18px 30px rgba(27, 42, 91, 0.16), inset 0 2px 0 rgba(255,255,255,0.98);
      --nib-ui-button-shadow-flat: 0 10px 18px rgba(27,42,91,0.08);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(255,255,255,0.35) 52%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.82;
      --nib-ui-button-highlight-radius: 999px;
      --nib-ui-button-icon-bg: linear-gradient(180deg, color-mix(in srgb, var(--primary-start) 10%, #ffffff 90%) 0%, color-mix(in srgb, var(--cream) 68%, #ffffff 32%) 100%);
      --nib-ui-button-icon-border: rgba(201,162,39,0.36);
      --nib-ui-button-icon-shadow: 0 12px 22px rgba(27, 42, 91, 0.12), inset 0 2px 0 rgba(255,255,255,0.98);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,255,255,0.92), rgba(245,241,230,0.82));
    }

    html[data-button-style="metallic-gold"],
    [data-button-style-preview="metallic-gold"] {
      --nib-ui-on-primary: var(--navy);
      --nib-ui-on-secondary: var(--secondary-text);
      --nib-ui-on-accent: var(--navy);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 15px;
      --nib-ui-button-radius-soft: 12px;
      --nib-ui-button-font-weight: 800;
      --nib-ui-button-letter-spacing: 0.02em;
      --nib-ui-button-shell-primary: linear-gradient(135deg, #8b6710 0%, #c9a227 32%, #f6df96 50%, #b88b1c 78%, #7c5d12 100%);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(247,243,233,0.94));
      --nib-ui-button-shell-accent: linear-gradient(135deg, #c9a227 0%, #f8edc0 52%, #9b1b2e 100%);
      --nib-ui-button-shell-danger: linear-gradient(135deg, #9b1b2e 0%, #c74d63 100%);
      --nib-ui-button-border-primary: rgba(124,93,18,0.76);
      --nib-ui-button-border-secondary: rgba(201,162,39,0.24);
      --nib-ui-button-border-accent: rgba(124,93,18,0.58);
      --nib-ui-button-shadow-rest: 0 16px 28px rgba(96, 69, 12, 0.18), inset 0 1px 0 rgba(255,255,255,0.82);
      --nib-ui-button-shadow-strong: 0 18px 32px rgba(96, 69, 12, 0.22), inset 0 1px 0 rgba(255,255,255,0.84);
      --nib-ui-button-shadow-hover: 0 20px 34px rgba(96, 69, 12, 0.24), inset 0 1px 0 rgba(255,255,255,0.86);
      --nib-ui-button-shadow-flat: 0 10px 18px rgba(96,69,12,0.12);
      --nib-ui-button-icon-bg: linear-gradient(135deg, #8b6710 0%, #f6df96 50%, #b88b1c 100%);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,250,238,0.92), rgba(249,238,207,0.8));
    }

    html[data-button-style="minimal-outline"],
    [data-button-style-preview="minimal-outline"] {
      --nib-ui-on-primary: var(--secondary-text);
      --nib-ui-on-secondary: var(--secondary-text);
      --nib-ui-on-accent: var(--secondary-text);
      --nib-ui-on-danger: var(--red);
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 14px;
      --nib-ui-button-radius-soft: 10px;
      --nib-ui-button-font-family: var(--brand-display);
      --nib-ui-button-font-weight: 600;
      --nib-ui-button-letter-spacing: 0.01em;
      --nib-ui-button-shell-primary: linear-gradient(180deg, rgba(255,255,255,0.99), color-mix(in srgb, var(--cream) 30%, #ffffff 70%));
      --nib-ui-button-shell-secondary: linear-gradient(180deg, rgba(255,255,255,0.99), color-mix(in srgb, var(--cream) 18%, #ffffff 82%));
      --nib-ui-button-shell-accent: linear-gradient(135deg, color-mix(in srgb, var(--accent-start) 14%, #ffffff 86%), color-mix(in srgb, var(--accent-end) 24%, #ffffff 76%));
      --nib-ui-button-shell-danger: linear-gradient(135deg, color-mix(in srgb, var(--red) 12%, #ffffff 88%), color-mix(in srgb, var(--red) 22%, #ffffff 78%));
      --nib-ui-button-border-primary: color-mix(in srgb, var(--primary-start) 28%, transparent);
      --nib-ui-button-border-secondary: color-mix(in srgb, var(--primary-start) 16%, transparent);
      --nib-ui-button-border-accent: color-mix(in srgb, var(--accent-end) 42%, transparent);
      --nib-ui-button-border-danger: color-mix(in srgb, var(--red) 38%, transparent);
      --nib-ui-button-border-outline: rgba(27,42,91,0.22);
      --nib-ui-button-shadow-rest: 0 4px 12px rgba(27, 42, 91, 0.05);
      --nib-ui-button-shadow-strong: 0 6px 14px rgba(27, 42, 91, 0.07);
      --nib-ui-button-shadow-hover: 0 8px 16px rgba(27, 42, 91, 0.08);
      --nib-ui-button-shadow-flat: 0 3px 10px rgba(27,42,91,0.04);
      --nib-ui-button-shadow-pressed: inset 0 1px 4px rgba(27,42,91,0.08);
      --nib-ui-button-highlight-bg: none;
      --nib-ui-button-highlight-opacity: 0;
      --nib-ui-button-translate-hover: 0;
      --nib-ui-button-icon-bg: linear-gradient(180deg, rgba(255,255,255,0.98), color-mix(in srgb, var(--cream) 14%, #ffffff 86%));
      --nib-ui-button-icon-border: rgba(27,42,91,0.18);
      --nib-ui-button-icon-shadow: 0 4px 12px rgba(27, 42, 91, 0.05);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(255,255,255,0.96));
      --nib-ui-chip-border: rgba(27,42,91,0.14);
      --nib-ui-chip-shadow: none;
    }

    html[data-button-style="velvet-depth"],
    [data-button-style-preview="velvet-depth"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: var(--secondary-text);
      --nib-ui-on-accent: var(--navy);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: 18px;
      --nib-ui-button-radius-soft: 14px;
      --nib-ui-button-font-weight: 700;
      --nib-ui-button-shell-primary: linear-gradient(135deg, #6a1d4d 0%, #1b2a5b 100%);
      --nib-ui-button-shell-secondary: linear-gradient(135deg, rgba(255,255,255,0.96), rgba(245,239,246,0.92));
      --nib-ui-button-shell-accent: linear-gradient(135deg, #9b1b2e 0%, #c9a227 100%);
      --nib-ui-button-shell-danger: linear-gradient(135deg, #8e1930 0%, #5e153d 100%);
      --nib-ui-button-border-primary: rgba(201,162,39,0.32);
      --nib-ui-button-border-secondary: rgba(106,29,77,0.18);
      --nib-ui-button-border-accent: rgba(201,162,39,0.42);
      --nib-ui-button-border-danger: rgba(155,27,46,0.42);
      --nib-ui-button-shadow-rest: 0 16px 28px rgba(49, 20, 43, 0.22), inset 0 1px 0 rgba(255,255,255,0.5);
      --nib-ui-button-shadow-strong: 0 18px 32px rgba(49, 20, 43, 0.26), inset 0 1px 0 rgba(255,255,255,0.52);
      --nib-ui-button-shadow-hover: 0 22px 36px rgba(49, 20, 43, 0.28), inset 0 1px 0 rgba(255,255,255,0.54);
      --nib-ui-button-shadow-flat: 0 10px 18px rgba(49,20,43,0.14);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.34), rgba(255,255,255,0.08) 50%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.52;
      --nib-ui-button-icon-bg: linear-gradient(135deg, #6a1d4d 0%, #c9a227 100%);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,250,252,0.86), rgba(244,232,240,0.72));
      --nib-ui-chip-border: rgba(106,29,77,0.18);
    }

    html[data-button-style="obsidian-command"],
    [data-button-style-preview="obsidian-command"] {
      --nib-ui-on-primary: #f7edc3;
      --nib-ui-on-secondary: #dfe6f7;
      --nib-ui-on-accent: #131f43;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #102248;
      --nib-ui-on-flat: #dfe6f7;
      --nib-ui-button-radius-base: 12px;
      --nib-ui-button-radius-soft: 10px;
      --nib-ui-button-font-family: var(--brand-display);
      --nib-ui-button-font-weight: 800;
      --nib-ui-button-letter-spacing: 0.03em;
      --nib-ui-button-shell-primary: linear-gradient(135deg, #0a1230 0%, #162a57 50%, #2b2046 100%);
      --nib-ui-button-shell-secondary: linear-gradient(135deg, #223156 0%, #1b2746 100%);
      --nib-ui-button-shell-accent: linear-gradient(135deg, #d9b14a 0%, #f2df9c 55%, #b58b2f 100%);
      --nib-ui-button-shell-danger: linear-gradient(135deg, #8a2034 0%, #c44d60 100%);
      --nib-ui-button-border-primary: rgba(233, 208, 128, 0.42);
      --nib-ui-button-border-secondary: rgba(198, 208, 232, 0.18);
      --nib-ui-button-border-accent: rgba(123, 91, 20, 0.42);
      --nib-ui-button-border-danger: rgba(233, 190, 198, 0.28);
      --nib-ui-button-shadow-rest: 0 18px 34px rgba(8, 14, 30, 0.34), inset 0 1px 0 rgba(255,255,255,0.08);
      --nib-ui-button-shadow-hover: 0 22px 38px rgba(8, 14, 30, 0.4), inset 0 1px 0 rgba(255,255,255,0.1);
      --nib-ui-button-shadow-strong: 0 20px 36px rgba(8, 14, 30, 0.38), inset 0 1px 0 rgba(255,255,255,0.1);
      --nib-ui-button-shadow-flat: 0 10px 20px rgba(8, 14, 30, 0.24);
      --nib-ui-button-shadow-pressed: inset 0 2px 12px rgba(5,10,24,0.36);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.14), rgba(255,255,255,0.04) 52%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.32;
      --nib-ui-button-icon-bg: linear-gradient(135deg, #101c3a 0%, #c19a36 100%);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(31,43,78,0.92), rgba(18,26,51,0.84));
      --nib-ui-chip-border: rgba(233, 208, 128, 0.22);
    }

    html[data-button-style="silver-outline"],
    [data-button-style-preview="silver-outline"] {
      --nib-ui-on-primary: #31435f;
      --nib-ui-on-secondary: #31435f;
      --nib-ui-on-accent: #223759;
      --nib-ui-on-danger: #a63a52;
      --nib-ui-on-outline: #31435f;
      --nib-ui-on-flat: #31435f;
      --nib-ui-button-radius-base: 14px;
      --nib-ui-button-radius-soft: 12px;
      --nib-ui-button-font-family: var(--brand-display);
      --nib-ui-button-font-weight: 600;
      --nib-ui-button-shell-primary: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(235,240,247,0.96));
      --nib-ui-button-shell-secondary: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,247,251,0.96));
      --nib-ui-button-shell-accent: linear-gradient(180deg, rgba(255,250,238,0.98), rgba(246,235,201,0.94));
      --nib-ui-button-shell-danger: linear-gradient(180deg, rgba(255,245,247,0.98), rgba(249,227,232,0.95));
      --nib-ui-button-border-primary: rgba(114, 127, 150, 0.28);
      --nib-ui-button-border-secondary: rgba(114, 127, 150, 0.22);
      --nib-ui-button-border-accent: rgba(201, 162, 39, 0.34);
      --nib-ui-button-border-danger: rgba(166, 58, 82, 0.26);
      --nib-ui-button-shadow-rest: 0 6px 14px rgba(76, 91, 116, 0.08);
      --nib-ui-button-shadow-hover: 0 10px 18px rgba(76, 91, 116, 0.1);
      --nib-ui-button-shadow-strong: 0 8px 16px rgba(76, 91, 116, 0.1);
      --nib-ui-button-shadow-flat: 0 4px 10px rgba(76, 91, 116, 0.06);
      --nib-ui-button-shadow-pressed: inset 0 1px 4px rgba(76,91,116,0.08);
      --nib-ui-button-highlight-bg: none;
      --nib-ui-button-highlight-opacity: 0;
      --nib-ui-button-icon-bg: linear-gradient(180deg, rgba(255,255,255,0.99), rgba(233,238,246,0.95));
      --nib-ui-button-icon-border: rgba(114, 127, 150, 0.26);
      --nib-ui-button-icon-shadow: 0 4px 10px rgba(76, 91, 116, 0.08);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(241,244,249,0.94));
      --nib-ui-chip-border: rgba(114, 127, 150, 0.18);
    }

    html[data-button-style="studio-plain"],
    [data-button-style-preview="studio-plain"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: #1b2a5b;
      --nib-ui-on-accent: #1b2a5b;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #1b2a5b;
      --nib-ui-on-flat: #1b2a5b;
      --nib-ui-button-radius-base: 10px;
      --nib-ui-button-radius-soft: 8px;
      --nib-ui-button-font-family: var(--brand-display);
      --nib-ui-button-font-weight: 700;
      --nib-ui-button-shell-primary: linear-gradient(180deg, #1b2a5b, #24376f);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, #ffffff, #ffffff);
      --nib-ui-button-shell-accent: linear-gradient(180deg, #f9efca, #ead28a);
      --nib-ui-button-shell-danger: linear-gradient(180deg, #9b1b2e, #b82f44);
      --nib-ui-button-border-primary: rgba(27,42,91,0.86);
      --nib-ui-button-border-secondary: rgba(27,42,91,0.14);
      --nib-ui-button-border-accent: rgba(201,162,39,0.38);
      --nib-ui-button-border-danger: rgba(155,27,46,0.72);
      --nib-ui-button-shadow-rest: 0 8px 16px rgba(27, 42, 91, 0.1);
      --nib-ui-button-shadow-hover: 0 10px 18px rgba(27, 42, 91, 0.12);
      --nib-ui-button-shadow-strong: 0 10px 18px rgba(27, 42, 91, 0.12);
      --nib-ui-button-shadow-flat: 0 4px 10px rgba(27,42,91,0.06);
      --nib-ui-button-shadow-pressed: inset 0 1px 6px rgba(27,42,91,0.12);
      --nib-ui-button-highlight-bg: none;
      --nib-ui-button-highlight-opacity: 0;
      --nib-ui-button-icon-bg: linear-gradient(180deg, #1b2a5b, #24376f);
      --nib-ui-button-icon-shadow: 0 8px 16px rgba(27, 42, 91, 0.12);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,250,252,0.95));
      --nib-ui-chip-border: rgba(27,42,91,0.14);
    }

    html[data-button-style="sandstone-ledger"],
    [data-button-style-preview="sandstone-ledger"] {
      --nib-ui-on-primary: #fffdf8;
      --nib-ui-on-secondary: #5b4729;
      --nib-ui-on-accent: #ffffff;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #5b4729;
      --nib-ui-on-flat: #5b4729;
      --nib-ui-button-radius-base: 12px;
      --nib-ui-button-radius-soft: 10px;
      --nib-ui-button-font-family: var(--brand-display);
      --nib-ui-button-shell-primary: linear-gradient(180deg, #7a5c33, #9e7640);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, #fff9ef, #f3e3bf);
      --nib-ui-button-shell-accent: linear-gradient(180deg, #1b2a5b, #33497e);
      --nib-ui-button-shell-danger: linear-gradient(180deg, #9b1b2e, #b53d4f);
      --nib-ui-button-border-primary: rgba(105, 81, 44, 0.7);
      --nib-ui-button-border-secondary: rgba(143, 106, 39, 0.26);
      --nib-ui-button-border-accent: rgba(27, 42, 91, 0.52);
      --nib-ui-button-border-danger: rgba(155, 27, 46, 0.48);
      --nib-ui-button-shadow-rest: 0 10px 18px rgba(92, 71, 39, 0.12);
      --nib-ui-button-shadow-hover: 0 12px 22px rgba(92, 71, 39, 0.15);
      --nib-ui-button-shadow-strong: 0 12px 20px rgba(92, 71, 39, 0.14);
      --nib-ui-button-shadow-flat: 0 6px 12px rgba(92,71,39,0.08);
      --nib-ui-button-shadow-pressed: inset 0 1px 6px rgba(92,71,39,0.1);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.42), rgba(255,255,255,0.08) 48%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.36;
      --nib-ui-button-icon-bg: linear-gradient(180deg, #fff7eb, #edd7a8);
      --nib-ui-button-icon-border: rgba(143,106,39,0.3);
      --nib-ui-button-icon-shadow: 0 8px 16px rgba(92, 71, 39, 0.12);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,251,243,0.96), rgba(244,232,203,0.92));
      --nib-ui-chip-border: rgba(143,106,39,0.18);
    }

    html[data-button-style="harbor-gloss"],
    [data-button-style-preview="harbor-gloss"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: #1f4b73;
      --nib-ui-on-accent: #18365a;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #1f4b73;
      --nib-ui-on-flat: #1f4b73;
      --nib-ui-button-radius-base: 18px;
      --nib-ui-button-radius-soft: 14px;
      --nib-ui-button-shell-primary: linear-gradient(135deg, #1d4d76 0%, #4f8aa9 52%, #82b6c1 100%);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(236,246,248,0.94));
      --nib-ui-button-shell-accent: linear-gradient(135deg, #d0b65a 0%, #efe0a0 52%, #87b7c1 100%);
      --nib-ui-button-shell-danger: linear-gradient(135deg, #8a2740 0%, #c85d73 100%);
      --nib-ui-button-border-primary: rgba(34, 97, 130, 0.56);
      --nib-ui-button-border-secondary: rgba(70, 126, 150, 0.18);
      --nib-ui-button-border-accent: rgba(159, 135, 58, 0.34);
      --nib-ui-button-border-danger: rgba(138, 39, 64, 0.38);
      --nib-ui-button-shadow-rest: 0 16px 28px rgba(23, 71, 102, 0.18), inset 0 1px 0 rgba(255,255,255,0.68);
      --nib-ui-button-shadow-hover: 0 20px 32px rgba(23, 71, 102, 0.22), inset 0 1px 0 rgba(255,255,255,0.72);
      --nib-ui-button-shadow-strong: 0 18px 30px rgba(23, 71, 102, 0.2), inset 0 1px 0 rgba(255,255,255,0.72);
      --nib-ui-button-shadow-flat: 0 10px 18px rgba(23,71,102,0.12);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.7), rgba(255,255,255,0.14) 48%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.62;
      --nib-ui-button-icon-bg: linear-gradient(135deg, #1f4b73 0%, #d0b65a 100%);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,255,255,0.82), rgba(230,243,246,0.72));
      --nib-ui-chip-border: rgba(70,126,150,0.18);
    }

    html[data-button-style="ruby-glass"],
    [data-button-style-preview="ruby-glass"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: #7f2038;
      --nib-ui-on-accent: #ffffff;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #7f2038;
      --nib-ui-on-flat: #7f2038;
      --nib-ui-button-radius-base: 18px;
      --nib-ui-button-radius-soft: 14px;
      --nib-ui-button-backdrop-filter: blur(14px) saturate(150%);
      --nib-ui-button-shell-primary: linear-gradient(135deg, rgba(127,32,56,0.82), rgba(186,83,109,0.62));
      --nib-ui-button-shell-secondary: linear-gradient(135deg, rgba(255,255,255,0.74), rgba(255,243,246,0.58));
      --nib-ui-button-shell-accent: linear-gradient(135deg, rgba(27,42,91,0.8), rgba(201,162,39,0.56));
      --nib-ui-button-shell-danger: linear-gradient(135deg, rgba(120,16,35,0.88), rgba(195,70,94,0.68));
      --nib-ui-button-border-primary: rgba(255, 222, 230, 0.34);
      --nib-ui-button-border-secondary: rgba(255, 232, 237, 0.4);
      --nib-ui-button-border-accent: rgba(219, 201, 156, 0.3);
      --nib-ui-button-border-danger: rgba(255, 213, 223, 0.26);
      --nib-ui-button-shadow-rest: 0 18px 30px rgba(80, 16, 34, 0.22);
      --nib-ui-button-shadow-hover: 0 22px 36px rgba(80, 16, 34, 0.26);
      --nib-ui-button-shadow-strong: 0 20px 32px rgba(80, 16, 34, 0.24);
      --nib-ui-button-shadow-flat: 0 12px 20px rgba(80,16,34,0.14);
      --nib-ui-button-shadow-pressed: inset 0 1px 8px rgba(66,12,28,0.22);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.36), rgba(255,255,255,0.1) 48%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.44;
      --nib-ui-button-icon-bg: linear-gradient(135deg, rgba(127,32,56,0.9), rgba(201,162,39,0.62));
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,250,252,0.84), rgba(248,231,237,0.74));
      --nib-ui-chip-border: rgba(127,32,56,0.18);
    }

    html[data-button-style="porcelain-neumorph"],
    [data-button-style-preview="porcelain-neumorph"] {
      --nib-ui-on-primary: #35527d;
      --nib-ui-on-secondary: #35527d;
      --nib-ui-on-accent: #35527d;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #35527d;
      --nib-ui-on-flat: #35527d;
      --nib-ui-button-radius-base: 20px;
      --nib-ui-button-radius-soft: 16px;
      --nib-ui-button-shell-primary: linear-gradient(145deg, #fffef9, #efe5d0);
      --nib-ui-button-shell-secondary: linear-gradient(145deg, #ffffff, #f7f1e5);
      --nib-ui-button-shell-accent: linear-gradient(145deg, #efe1ab, #d2b357);
      --nib-ui-button-shell-danger: linear-gradient(145deg, #c14d5f, #97263a);
      --nib-ui-button-border-primary: rgba(109, 131, 165, 0.26);
      --nib-ui-button-border-secondary: rgba(215, 200, 170, 0.48);
      --nib-ui-button-border-accent: rgba(201, 162, 39, 0.36);
      --nib-ui-button-border-danger: rgba(255,255,255,0.28);
      --nib-ui-button-shadow-rest: 9px 9px 18px rgba(161, 147, 122, 0.16), -7px -7px 18px rgba(255,255,255,0.98);
      --nib-ui-button-shadow-hover: 12px 12px 24px rgba(161, 147, 122, 0.18), -8px -8px 22px rgba(255,255,255,0.99);
      --nib-ui-button-shadow-strong: 10px 10px 20px rgba(161, 147, 122, 0.17), -8px -8px 20px rgba(255,255,255,0.99);
      --nib-ui-button-shadow-flat: 7px 7px 16px rgba(161,147,122,0.12), -6px -6px 16px rgba(255,255,255,0.96);
      --nib-ui-button-shadow-pressed: inset 8px 8px 14px rgba(161,147,122,0.12), inset -7px -7px 14px rgba(255,255,255,0.94);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.5), rgba(255,255,255,0.08) 50%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.46;
      --nib-ui-button-icon-bg: linear-gradient(145deg, #fffef9, #eadfc5);
      --nib-ui-button-icon-border: rgba(109,131,165,0.22);
      --nib-ui-button-icon-shadow: 8px 8px 16px rgba(161,147,122,0.14), -6px -6px 16px rgba(255,255,255,0.98);
      --nib-ui-chip-bg: linear-gradient(145deg, #fffef9, #f3ead8);
      --nib-ui-chip-border: rgba(215,200,170,0.42);
    }

    html[data-button-style="command-retro"],
    [data-button-style-preview="command-retro"] {
      --nib-ui-on-primary: #fff8f4;
      --nib-ui-on-secondary: #7a2f29;
      --nib-ui-on-accent: #ffffff;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #7a2f29;
      --nib-ui-on-flat: #7a2f29;
      --nib-ui-button-radius-base: 8px;
      --nib-ui-button-radius-soft: 8px;
      --nib-ui-button-font-family: var(--brand-display);
      --nib-ui-button-font-weight: 800;
      --nib-ui-button-letter-spacing: 0.03em;
      --nib-ui-button-text-transform: uppercase;
      --nib-ui-button-shell-primary: linear-gradient(180deg, #8a2c23, #b25642);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, #fffaf5, #f7e5d6);
      --nib-ui-button-shell-accent: linear-gradient(180deg, #1b2a5b, #35508a);
      --nib-ui-button-shell-danger: linear-gradient(180deg, #7a1728, #a62f43);
      --nib-ui-button-border-primary: #5a1f18;
      --nib-ui-button-border-secondary: #8a2c23;
      --nib-ui-button-border-accent: #15234c;
      --nib-ui-button-border-danger: #5a1220;
      --nib-ui-button-shadow-rest: 4px 4px 0 rgba(25, 44, 85, 0.86);
      --nib-ui-button-shadow-hover: 6px 6px 0 rgba(25, 44, 85, 0.92);
      --nib-ui-button-shadow-strong: 5px 5px 0 rgba(25, 44, 85, 0.9);
      --nib-ui-button-shadow-flat: 3px 3px 0 rgba(25,44,85,0.72);
      --nib-ui-button-shadow-pressed: 1px 1px 0 rgba(25,44,85,0.92);
      --nib-ui-button-highlight-bg: none;
      --nib-ui-button-highlight-opacity: 0;
      --nib-ui-button-translate-hover: -2px;
      --nib-ui-button-icon-bg: linear-gradient(180deg, #1b2a5b, #35508a);
      --nib-ui-button-icon-shadow: 4px 4px 0 rgba(25,44,85,0.86);
      --nib-ui-chip-bg: linear-gradient(180deg, #fffaf5, #f7e5d6);
      --nib-ui-chip-border: #8a2c23;
      --nib-ui-chip-shadow: 3px 3px 0 rgba(25,44,85,0.64);
    }

    html[data-button-style="cobalt-ceramic"],
    [data-button-style-preview="cobalt-ceramic"] {
      --nib-ui-on-primary: #1f4b86;
      --nib-ui-on-secondary: #1f4b86;
      --nib-ui-on-accent: #1f4b86;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #1f4b86;
      --nib-ui-on-flat: #1f4b86;
      --nib-ui-button-radius-base: 999px;
      --nib-ui-button-radius-soft: 999px;
      --nib-ui-button-shell-primary: linear-gradient(180deg, #ffffff 0%, #edf4ff 100%);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, #ffffff 0%, #f4f8ff 100%);
      --nib-ui-button-shell-accent: linear-gradient(180deg, #f7ebbc 0%, #e4cb7d 100%);
      --nib-ui-button-shell-danger: linear-gradient(180deg, #e27f92 0%, #b42f47 100%);
      --nib-ui-button-border-primary: rgba(31,75,134,0.44);
      --nib-ui-button-border-secondary: rgba(31,75,134,0.22);
      --nib-ui-button-border-accent: rgba(201,162,39,0.3);
      --nib-ui-button-border-danger: rgba(180,47,71,0.36);
      --nib-ui-button-shadow-rest: 0 14px 24px rgba(31, 75, 134, 0.1), inset 0 2px 0 rgba(255,255,255,0.98);
      --nib-ui-button-shadow-hover: 0 18px 30px rgba(31, 75, 134, 0.14), inset 0 2px 0 rgba(255,255,255,1);
      --nib-ui-button-shadow-strong: 0 16px 28px rgba(31, 75, 134, 0.12), inset 0 2px 0 rgba(255,255,255,1);
      --nib-ui-button-shadow-flat: 0 10px 18px rgba(31,75,134,0.08);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,1), rgba(255,255,255,0.4) 52%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.86;
      --nib-ui-button-highlight-radius: 999px;
      --nib-ui-button-icon-bg: linear-gradient(180deg, #ffffff 0%, #edf4ff 100%);
      --nib-ui-button-icon-border: rgba(31,75,134,0.32);
      --nib-ui-button-icon-shadow: 0 12px 20px rgba(31, 75, 134, 0.12), inset 0 2px 0 rgba(255,255,255,1);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(240,246,255,0.92));
      --nib-ui-chip-border: rgba(31,75,134,0.16);
    }

    html[data-button-style="auric-focus"],
    [data-button-style-preview="auric-focus"] {
      --nib-ui-on-primary: #16254b;
      --nib-ui-on-secondary: #514523;
      --nib-ui-on-accent: #ffffff;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #16254b;
      --nib-ui-on-flat: #16254b;
      --nib-ui-button-radius-base: 14px;
      --nib-ui-button-radius-soft: 12px;
      --nib-ui-button-font-weight: 800;
      --nib-ui-button-letter-spacing: 0.02em;
      --nib-ui-button-shell-primary: linear-gradient(135deg, #7a641b 0%, #d9bb61 46%, #f5e8b7 58%, #b38e30 100%);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, rgba(255,252,246,0.98), rgba(244,236,216,0.95));
      --nib-ui-button-shell-accent: linear-gradient(135deg, #18254a 0%, #314874 100%);
      --nib-ui-button-shell-danger: linear-gradient(135deg, #9b1b2e 0%, #c24d61 100%);
      --nib-ui-button-border-primary: rgba(106, 85, 23, 0.64);
      --nib-ui-button-border-secondary: rgba(122, 100, 27, 0.22);
      --nib-ui-button-border-accent: rgba(24, 37, 74, 0.54);
      --nib-ui-button-border-danger: rgba(155, 27, 46, 0.44);
      --nib-ui-button-shadow-rest: 0 16px 30px rgba(85, 68, 18, 0.18), inset 0 1px 0 rgba(255,255,255,0.84);
      --nib-ui-button-shadow-hover: 0 20px 34px rgba(85, 68, 18, 0.22), inset 0 1px 0 rgba(255,255,255,0.88);
      --nib-ui-button-shadow-strong: 0 18px 32px rgba(85, 68, 18, 0.2), inset 0 1px 0 rgba(255,255,255,0.86);
      --nib-ui-button-shadow-flat: 0 10px 18px rgba(85,68,18,0.12);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.78), rgba(255,255,255,0.2) 48%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.72;
      --nib-ui-button-icon-bg: linear-gradient(135deg, #7a641b 0%, #f5e8b7 50%, #b38e30 100%);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,250,239,0.92), rgba(247,236,204,0.84));
      --nib-ui-chip-border: rgba(122,100,27,0.18);
    }

    html[data-button-style="dusk-velvet"],
    [data-button-style-preview="dusk-velvet"] {
      --nib-ui-on-primary: #fff9fc;
      --nib-ui-on-secondary: #5d2e53;
      --nib-ui-on-accent: #35264a;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #5d2e53;
      --nib-ui-on-flat: #5d2e53;
      --nib-ui-button-radius-base: 18px;
      --nib-ui-button-radius-soft: 14px;
      --nib-ui-button-shell-primary: linear-gradient(135deg, #5d2e53 0%, #8b506f 54%, #c28ea8 100%);
      --nib-ui-button-shell-secondary: linear-gradient(135deg, rgba(255,255,255,0.98), rgba(247,238,243,0.94));
      --nib-ui-button-shell-accent: linear-gradient(135deg, #d2b15b 0%, #efdba0 52%, #7b506f 100%);
      --nib-ui-button-shell-danger: linear-gradient(135deg, #8b1b36 0%, #bf4d66 100%);
      --nib-ui-button-border-primary: rgba(131, 80, 111, 0.5);
      --nib-ui-button-border-secondary: rgba(93, 46, 83, 0.16);
      --nib-ui-button-border-accent: rgba(201, 162, 39, 0.36);
      --nib-ui-button-border-danger: rgba(139, 27, 54, 0.4);
      --nib-ui-button-shadow-rest: 0 18px 30px rgba(73, 31, 64, 0.22), inset 0 1px 0 rgba(255,255,255,0.54);
      --nib-ui-button-shadow-hover: 0 22px 36px rgba(73, 31, 64, 0.26), inset 0 1px 0 rgba(255,255,255,0.56);
      --nib-ui-button-shadow-strong: 0 20px 32px rgba(73, 31, 64, 0.24), inset 0 1px 0 rgba(255,255,255,0.56);
      --nib-ui-button-shadow-flat: 0 10px 18px rgba(73,31,64,0.14);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.3), rgba(255,255,255,0.08) 50%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.48;
      --nib-ui-button-icon-bg: linear-gradient(135deg, #5d2e53 0%, #d2b15b 100%);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,248,252,0.88), rgba(245,233,241,0.78));
      --nib-ui-chip-border: rgba(93,46,83,0.18);
    }

    html[data-button-style="bronze-gradient"],
    [data-button-style-preview="bronze-gradient"] {
      --nib-ui-on-primary: #fffdf8;
      --nib-ui-on-secondary: #6f4b1d;
      --nib-ui-on-accent: #ffffff;
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: #6f4b1d;
      --nib-ui-on-flat: #6f4b1d;
      --nib-ui-button-radius-base: 17px;
      --nib-ui-button-radius-soft: 14px;
      --nib-ui-button-font-weight: 800;
      --nib-ui-button-shell-primary: linear-gradient(135deg, #8e5e1f 0%, #c78435 40%, #e0b164 58%, #5d3e1d 100%);
      --nib-ui-button-shell-secondary: linear-gradient(180deg, rgba(255,252,247,0.98), rgba(247,238,219,0.94));
      --nib-ui-button-shell-accent: linear-gradient(135deg, #20345d 0%, #46608f 100%);
      --nib-ui-button-shell-danger: linear-gradient(135deg, #942137 0%, #c24e62 100%);
      --nib-ui-button-border-primary: rgba(117, 76, 24, 0.68);
      --nib-ui-button-border-secondary: rgba(142, 94, 31, 0.22);
      --nib-ui-button-border-accent: rgba(32, 52, 93, 0.52);
      --nib-ui-button-border-danger: rgba(148, 33, 55, 0.42);
      --nib-ui-button-shadow-rest: 0 16px 28px rgba(98, 64, 20, 0.18), inset 0 1px 0 rgba(255,255,255,0.72);
      --nib-ui-button-shadow-hover: 0 20px 34px rgba(98, 64, 20, 0.22), inset 0 1px 0 rgba(255,255,255,0.76);
      --nib-ui-button-shadow-strong: 0 18px 30px rgba(98, 64, 20, 0.2), inset 0 1px 0 rgba(255,255,255,0.76);
      --nib-ui-button-shadow-flat: 0 10px 18px rgba(98,64,20,0.12);
      --nib-ui-button-highlight-bg: linear-gradient(180deg, rgba(255,255,255,0.66), rgba(255,255,255,0.18) 50%, rgba(255,255,255,0) 100%);
      --nib-ui-button-highlight-opacity: 0.62;
      --nib-ui-button-icon-bg: linear-gradient(135deg, #8e5e1f 0%, #e0b164 52%, #20345d 100%);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,250,242,0.9), rgba(244,233,209,0.84));
      --nib-ui-chip-border: rgba(142,94,31,0.18);
    }

    html[data-button-style="two-tone"],
    [data-button-style-preview="two-tone"] {
      --nib-ui-on-primary: #ffffff;
      --nib-ui-on-secondary: var(--ink);
      --nib-ui-on-accent: var(--navy);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--primary-start);
      --nib-ui-on-flat: var(--ink);
      --nib-ui-button-radius-base: 0 0 0 16px;
      --nib-ui-button-radius-soft: 0 0 0 14px;
      --nib-ui-button-radius-pill: 0 0 0 999px;
      --nib-ui-button-shell-primary: var(--primary-start);
      --nib-ui-button-shell-secondary: var(--surface-bg, #ffffff);
      --nib-ui-button-shell-accent: var(--accent-start, var(--gold));
      --nib-ui-button-shell-danger: var(--red);
      --nib-ui-button-shell-outline: transparent;
      --nib-ui-button-shell-flat: var(--surface-bg, #ffffff);
      --nib-ui-button-border-primary: var(--primary-start);
      --nib-ui-button-border-secondary: var(--surface-border, rgba(27,42,91,0.16));
      --nib-ui-button-border-accent: var(--accent-start, var(--gold));
      --nib-ui-button-border-danger: var(--red);
      --nib-ui-button-border-outline: var(--primary-start);
      --nib-ui-button-shadow-rest: none;
      --nib-ui-button-shadow-strong: none;
      --nib-ui-button-shadow-hover: none;
      --nib-ui-button-shadow-flat: none;
      --nib-ui-button-shadow-pressed: none;
      --nib-ui-button-highlight-bg: none;
      --nib-ui-button-highlight-opacity: 0;
      --nib-ui-button-highlight-radius: 0;
      --nib-ui-button-translate-hover: 0px;
      --nib-ui-button-icon-bg: var(--primary-start);
      --nib-ui-button-icon-border: var(--primary-start);
      --nib-ui-button-icon-shadow: none;
      --nib-ui-chip-bg: var(--surface-bg, #ffffff);
      --nib-ui-chip-border: var(--surface-border, rgba(27,42,91,0.16));
      --nib-ui-chip-shadow: none;
    }



    * { box-sizing: border-box; }
    button { font-family: inherit; }
    body { margin: 0; min-height: 100vh; font-family: var(--brand-display); font-size: var(--nib-base-font-size); color: var(--ink); background:
      linear-gradient(180deg, var(--page-bg-start) 0%, var(--page-bg-mid) 28%, var(--page-bg-end) 100%),
      linear-gradient(90deg, var(--page-sheen) 0%, rgba(255,255,255,0) 100%);
    }
    .public-page-shell { min-height: 100vh; display: grid; grid-template-rows: auto minmax(0, 1fr) auto; }
    a { color: inherit; }
    header { position: sticky; top: 0; z-index: 10; min-height: var(--frame-height); box-sizing: border-box; backdrop-filter: blur(16px); background: linear-gradient(180deg, rgba(255,255,255,0.18), rgba(255,255,255,0)), var(--frame-nav-surface); border-bottom: 2px solid var(--frame-nav-border); box-shadow: var(--frame-nav-shadow); }
    .header-manual-pill { position: absolute; top: 8px; right: 20px; z-index: 11; display: inline-flex; align-items: center; padding: 3px 13px; border-radius: 999px; font-family: var(--brand-display); font-size: 11px; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; text-decoration: none; color: var(--navy); background: var(--frame-nav-surface); border: 1px solid var(--frame-nav-border); box-shadow: var(--shadow-soft); transition: background-color 0.15s ease, color 0.15s ease; }
    .header-manual-pill:hover { background: var(--navy); color: var(--white); }
    .portal-authenticated .header-manual-pill { display: none; }
    header > nav { width: 100%; max-width: var(--nib-frame-max-width, 1200px); margin: 0 auto; padding: 16px 20px; min-height: calc(var(--frame-height) - 2px); box-sizing: border-box; display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; }
    .brand { display: block; min-width: 0; text-decoration: none; flex: 0 1 auto; }
    .brand-emblem { width: 42px; height: 42px; border-radius: 999px; object-fit: contain; flex-shrink: 0; background: linear-gradient(180deg, var(--theme-menu-bg), var(--secondary-bg)); padding: 3px; box-shadow: inset 0 0 0 1px var(--theme-menu-border), 0 8px 16px rgba(16, 29, 63, 0.08); }
    .brand-copy { display: grid; gap: 4px; min-width: 0; text-align: left; justify-items: start; align-content: start; }
    .brand-wordmark { display: block; height: 58px; width: auto; max-width: min(100%, 420px); object-fit: contain; justify-self: start; filter: drop-shadow(0 6px 14px rgba(27, 42, 91, 0.08)); }
    .brand-title { font-family: var(--brand-display); color: var(--navy); font-size: 14px; font-weight: 500; letter-spacing: 0.13em; text-transform: uppercase; line-height: 1.12; text-align: left; margin-left: 53px; }
    .brand-title-accent,
    .brand-tagline-accent { color: var(--red); }
    .header-right-cluster { margin-left: auto; display: grid; gap: 12px; justify-items: end; align-content: end; min-width: 0; }
    .nav-links { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; justify-content: flex-end; width: 100%; }
    .header-nav-link,
    .appearance-summary,
    .header-role-summary,
    .page-header-action-group .header-action-button {
      min-height: var(--nib-ui-control-height-md);
      padding: var(--nib-ui-control-padding-y) var(--nib-ui-control-x);
      font-size: var(--nib-ui-control-font-size);
      transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease;
    }
    .header-nav-link {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      text-decoration: none;
      font-weight: 700;
    }
    .header-nav-link:hover,
    .appearance-summary:hover,
    .appearance-switcher[open] .appearance-summary,
    .header-role-summary:hover,
    .header-role-switcher[open] .header-role-summary,
    .page-header-action-group .header-action-button:hover {
      transform: translateY(-1px);
    }
    .page-header-context { width: 100%; display: flex; justify-content: flex-end; }
    .page-header-context-inner { width: auto; max-width: none; margin: 0; padding: 0; display: flex; align-items: flex-end; justify-content: flex-end; gap: 12px; }
    .page-header-action-group { width: 100%; display: flex; align-items: flex-end; justify-content: flex-end; gap: 12px; flex-wrap: wrap; margin-left: auto; }
    .header-action-button {
      min-height: 44px;
      padding: 10px 16px;
      font-weight: 700;
    }
    .header-role-switcher { position: relative; display: inline-flex; flex-direction: column; align-items: flex-end; }
    .header-role-switcher summary::-webkit-details-marker { display: none; }
    .header-role-summary {
      list-style: none;
      min-height: 44px;
      padding: 10px 16px;
      border-radius: 16px;
      display: inline-flex;
      align-items: center;
      gap: 10px;
      cursor: pointer;
      font-weight: 700;
    }
    .header-role-current {
      display: inline-flex;
      align-items: center;
      border-radius: 999px;
      padding: 3px 10px;
      background: rgba(255, 255, 255, 0.88) !important;
      border: none !important;
      box-shadow: none !important;
      color: #1b2a5b !important;
      font-size: 12px;
      font-weight: 700;
      line-height: 1;
    }
    .header-role-menu {
      position: absolute;
      top: calc(100% + 10px);
      right: 0;
      min-width: 180px;
      width: max-content;
      max-width: min(240px, calc(100vw - 40px));
      padding: 10px;
      border-radius: 18px;
      border: 1px solid var(--theme-menu-border);
      background: var(--theme-menu-bg);
      box-shadow: var(--theme-menu-shadow);
      backdrop-filter: blur(14px);
      display: grid;
      gap: 6px;
    }
    .header-role-option {
      width: 100%;
      min-height: 0;
      justify-content: flex-start;
      border-radius: 14px;
      border: 1px solid transparent;
      background: transparent;
      color: var(--ink);
      box-shadow: none;
      padding: 9px 12px;
      gap: 8px;
      font-size: var(--nib-ui-control-font-size, 15px);
      font-weight: 600;
    }
    .header-role-option:hover { background: var(--theme-option-hover); box-shadow: none; }
    .header-role-option[aria-pressed="true"] {
      background: var(--theme-option-active);
      border-color: var(--secondary-border);
      box-shadow: none;
    }
    .header-account-menu { position: relative; display: inline-flex; flex-direction: column; align-items: flex-end; }
    .header-account-menu summary::-webkit-details-marker { display: none; }
    .header-account-summary { list-style: none; cursor: pointer; display: inline-flex; align-items: center; }
    .header-account-avatar {
      display: inline-flex; align-items: center; justify-content: center;
      width: 44px; height: 44px; border-radius: 999px;
      background: linear-gradient(135deg, var(--navy), var(--red));
      color: var(--white); font-weight: 700; font-size: 15px; letter-spacing: 0.02em;
      box-shadow: var(--shadow-soft);
      transition: transform 180ms ease, box-shadow 180ms ease;
    }
    .header-account-summary:hover .header-account-avatar,
    .header-account-menu[open] .header-account-avatar { transform: translateY(-1px); }
    /* Name + role text next to the avatar is only shown in the mobile
       drawer's profile foot (see responsive-css.ts); the desktop header
       keeps the compact avatar-only bubble. */
    .header-account-summary-text { display: none; }
    .header-account-menu-panel {
      position: absolute; top: calc(100% + 10px); right: 0;
      min-width: 200px; width: max-content; max-width: min(260px, calc(100vw - 40px));
      padding: 10px; border-radius: 18px;
      border: 1px solid var(--theme-menu-border);
      background: var(--theme-menu-bg);
      box-shadow: var(--theme-menu-shadow);
      backdrop-filter: blur(14px);
      display: grid; gap: 6px;
    }
    .header-account-name {
      padding: 8px 12px 10px;
      font-weight: 700;
      color: var(--navy);
      border-bottom: 1px solid var(--theme-menu-border);
      margin-bottom: 2px;
      font-size: 14px;
      word-break: break-word;
    }
    .header-account-menu-item {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      text-align: center;
      text-decoration: none;
      box-sizing: border-box;
      border-radius: 999px;
      border: 1px solid rgba(27, 42, 91, 0.14);
      background: linear-gradient(180deg, #ffffff 0%, #f4f5fa 100%);
      color: var(--navy);
      padding: 9px 16px;
      font-size: 13px;
      font-weight: 600;
      letter-spacing: 0.03em;
      cursor: pointer;
      box-shadow: 0 10px 22px rgba(16, 29, 63, 0.14), inset 0 1px 0 rgba(255,255,255,0.9);
      transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease;
    }
    .header-account-menu-item:hover { box-shadow: 0 14px 28px rgba(16, 29, 63, 0.2), inset 0 1px 0 rgba(255,255,255,0.9); transform: translateY(-1px); border-color: rgba(27, 42, 91, 0.28); }
    .header-account-menu-item.logout { color: var(--red); border-color: rgba(159, 17, 17, 0.16); box-shadow: 0 10px 22px rgba(159, 17, 17, 0.14), inset 0 1px 0 rgba(255,255,255,0.9); }
    .header-account-menu-item.logout:hover { box-shadow: 0 14px 28px rgba(159, 17, 17, 0.22), inset 0 1px 0 rgba(255,255,255,0.9); border-color: rgba(159, 17, 17, 0.32); }
    /* Editorial Programs also lives in the account dropdown (mobile-only-menu-item)
       as a duplicate of the standalone header-action-button pill -- hidden
       here by default; the ≤720px block swaps which copy is visible. */
    .mobile-only-menu-item { display: none; }
    .public-mobile-header-menu { display: none; }
    .portal-authenticated .nav-links > .header-nav-link,
    .portal-authenticated .public-mobile-header-menu {
      display: none;
    }
    .portal-authenticated .header-right-cluster {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 12px;
      flex-wrap: wrap;
    }
    .portal-authenticated .nav-links,
    .portal-authenticated .page-header-context,
    .portal-authenticated .page-header-context-inner,
    .portal-authenticated .page-header-action-group {
      width: auto;
    }
    .portal-authenticated .nav-links {
      justify-content: flex-end;
    }
    .nib-ui-button:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible {
      outline: 3px solid rgba(201, 162, 39, 0.22);
      outline-offset: 2px;
    }
    .appearance-switcher { position: relative; z-index: 2; display: inline-flex; flex-direction: column; align-items: flex-end; }
    .appearance-switcher[open] { z-index: 40; }
    .appearance-switcher summary::-webkit-details-marker { display: none; }
    .appearance-summary {
      list-style: none;
      min-height: 44px;
      display: inline-flex;
      align-items: center;
      gap: 10px;
      cursor: pointer;
      font-size: 14px;
      font-weight: 700;
    }
    .appearance-current-label {
      display: inline-flex;
      align-items: center;
      border-radius: 999px;
      padding: 3px 9px;
      background: rgba(27, 42, 91, 0.1);
      font-size: 12px;
      line-height: 1;
    }
    .appearance-menu {
      position: absolute;
      top: calc(100% + 10px);
      right: 0;
      min-width: 320px;
      width: min(380px, calc(100vw - 40px));
      padding: 12px;
      border-radius: 20px;
      border: 1px solid var(--theme-menu-border);
      background: var(--theme-menu-bg);
      box-shadow: var(--theme-menu-shadow);
      backdrop-filter: blur(14px);
      display: grid;
      gap: 8px;
      z-index: 41;
      max-height: min(72vh, 640px);
      overflow: auto;
      overscroll-behavior: contain;
    }
    .theme-menu-title {
      margin: 0;
      color: var(--muted-text);
      font-size: 13px;
      font-weight: 700;
    }
    .appearance-option {
      width: 100%;
      min-height: 0;
      justify-content: flex-start;
      border-radius: 16px;
      border: 1px solid transparent;
      background: transparent;
      color: var(--ink);
      box-shadow: none;
      padding: 9px 12px;
      gap: 10px;
    }
    .appearance-option:hover {
      background: var(--theme-option-hover);
      box-shadow: none;
    }
    .appearance-option[aria-pressed="true"] {
      background: var(--theme-option-active);
      border-color: var(--secondary-border);
      box-shadow: none;
    }
    .appearance-preview-stack {
      display: inline-grid;
      grid-template-columns: 42px 52px;
      align-items: center;
      gap: 8px;
      flex: 0 0 auto;
    }
    .theme-preview {
      width: 42px;
      height: 42px;
      border-radius: 14px;
      flex: 0 0 auto;
      border: 1px solid rgba(255, 255, 255, 0.44);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.4), 0 10px 18px rgba(16, 29, 63, 0.12);
    }
    .appearance-button-preview {
      width: 52px;
      min-width: 52px;
      height: 36px;
      min-height: 36px;
      font-size: 12px;
    }
    .theme-preview-balanced { background: linear-gradient(135deg, #1b2a5b 0%, #9b1b2e 56%, #f5f1e6 100%); }
    .theme-preview-navy { background: linear-gradient(135deg, #142451 0%, #233c75 62%, #d3b054 100%); }
    .theme-preview-red { background: linear-gradient(135deg, #8f1b35 0%, #b6324d 58%, #f8efe8 100%); }
    .theme-preview-cream { background: linear-gradient(135deg, #f5f1e6 0%, #dfbb59 42%, #1b2a5b 100%); }
    .theme-preview-gold { background: linear-gradient(135deg, #cfa12b 0%, #f5f1e6 48%, #1b2a5b 100%); }
    .theme-preview-logo { background: linear-gradient(135deg, #102550 0%, #9b1b2e 58%, #c9a227 100%); }
    .theme-preview-ink { background: linear-gradient(135deg, #0f244f 0%, #1b3c78 58%, #c9a227 100%); }
    .theme-preview-crimson { background: linear-gradient(135deg, #9b1b2e 0%, #1b2a5b 62%, #efd47a 100%); }
    .theme-preview-ivory { background: linear-gradient(135deg, #fffdfa 0%, #c9a227 45%, #7d1630 100%); }
    .theme-preview-maroon { background: linear-gradient(135deg, #5c2349 0%, #1b2a5b 58%, #c9a227 100%); }
    .theme-preview-white { background: linear-gradient(135deg, #ffffff 0%, #f5f1e6 54%, #1b2a5b 100%); }
    .theme-preview-ledger { background: linear-gradient(135deg, #11224c 0%, #36548e 56%, #c9a227 100%); }
    .theme-preview-obsidian { background: linear-gradient(135deg, #101b3c 0%, #2e3a5f 52%, #c9a227 100%); }
    .theme-preview-silver { background: linear-gradient(135deg, #ffffff 0%, #dfe5ee 56%, #5a6780 100%); }
    .theme-preview-studio { background: linear-gradient(135deg, #ffffff 0%, #f3f5f9 58%, #1b2a5b 100%); }
    .theme-preview-sandstone { background: linear-gradient(135deg, #f6efdf 0%, #d8b56b 48%, #5f4b2b 100%); }
    .theme-preview-harbor { background: linear-gradient(135deg, #1d3d67 0%, #4f88a8 54%, #d4c58b 100%); }
    .theme-preview-ruby { background: linear-gradient(135deg, #7f2038 0%, #c56474 54%, #f3dddb 100%); }
    .theme-preview-porcelain { background: linear-gradient(135deg, #fffef9 0%, #e3d7bf 46%, #456da6 100%); }
    .theme-preview-brick { background: linear-gradient(135deg, #8a2c23 0%, #b95f45 42%, #1b2a5b 100%); }
    .theme-preview-cobalt { background: linear-gradient(135deg, #1f4b86 0%, #92b8d9 52%, #fffdfa 100%); }
    .theme-preview-auric { background: linear-gradient(135deg, #7a641b 0%, #d7bb66 42%, #18254a 100%); }
    .theme-preview-dusk { background: linear-gradient(135deg, #5d2e53 0%, #8b506f 48%, #d8c2c8 100%); }
    .theme-preview-bronze { background: linear-gradient(135deg, #8e5e1f 0%, #d59b47 48%, #20345d 100%); }
    .theme-preview-celestial { background: linear-gradient(135deg, #0d1a3d 0%, #2a4a8c 56%, #d9b054 100%); }
    .theme-preview-garnet { background: linear-gradient(135deg, #4a0f1f 0%, #8f1b35 56%, #d9b054 100%); }
    .theme-preview-emerald { background: linear-gradient(135deg, #0f2a22 0%, #1f6e52 56%, #e8dcb8 100%); }
    .theme-preview-sapphire { background: linear-gradient(135deg, #12326e 0%, #4a86d6 56%, #c9a227 100%); }
    .theme-preview-saffron { background: linear-gradient(135deg, #1b2a5b 0%, #c97a1f 56%, #fbe3b8 100%); }
    .theme-preview-orchid { background: linear-gradient(135deg, #2a1140 0%, #6a2f7a 56%, #d9b054 100%); }
    .theme-preview-arctic { background: linear-gradient(135deg, #eef3f8 0%, #7f97b8 56%, #3d5068 100%); }
    .theme-preview-terracotta { background: linear-gradient(135deg, #1b2a5b 0%, #b5562f 56%, #f0dcb8 100%); }
    .theme-preview-indigo { background: linear-gradient(135deg, #241b52 0%, #4a3596 56%, #d9b054 100%); }
    .theme-preview-jade { background: linear-gradient(135deg, #0c2620 0%, #1f8f6b 56%, #d9b054 100%); }
    .theme-preview-rosewood { background: linear-gradient(135deg, #35181a 0%, #7a3b2e 56%, #d9b054 100%); }
    .theme-preview-steel { background: linear-gradient(135deg, #2b3a4a 0%, #536a82 56%, #c7cdd6 100%); }
    .button-style-preview {
      width: 62px;
      height: 42px;
      border-radius: var(--nib-ui-button-radius-base, 16px);
      flex: 0 0 auto;
      border: 1px solid var(--nib-ui-button-border-primary, rgba(27, 42, 91, 0.18));
      background: var(--nib-ui-button-shell-primary, linear-gradient(135deg, #1b2a5b, #9b1b2e));
      box-shadow: var(--nib-ui-button-shadow-rest, 0 10px 24px rgba(16, 29, 63, 0.1));
      color: var(--nib-ui-on-primary, var(--primary-text, #ffffff));
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-family: var(--brand-display);
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0;
      position: relative;
      overflow: hidden;
    }
    .button-style-preview::before {
      content: "";
      position: absolute;
      inset: 1px 1px auto;
      height: 50%;
      border-radius: var(--nib-ui-button-highlight-radius, 14px 14px 12px 12px);
      background: var(--nib-ui-button-highlight-bg, linear-gradient(180deg, rgba(255,255,255,0.7), rgba(255,255,255,0.06)));
      opacity: var(--nib-ui-button-highlight-opacity, 0.7);
      pointer-events: none;
    }
    .theme-label {
      display: grid;
      gap: 3px;
      text-align: left;
    }
    .theme-label strong {
      color: var(--navy);
      font-size: 14px;
    }
    .theme-label span {
      color: var(--muted-text);
      font-size: 12px;
      font-weight: 500;
      line-height: 1.4;
    }
    .mobile-header-menu {
      display: none;
      position: relative;
      z-index: 3;
    }
    .mobile-header-menu summary::-webkit-details-marker { display: none; }
    .mobile-header-summary {
      list-style: none;
      width: 48px;
      height: 48px;
      min-height: 48px;
      padding: 0;
      border-radius: 999px;
      border: 1px solid rgba(201, 162, 39, 0.26);
      background: linear-gradient(135deg, var(--primary-start) 0%, var(--red) 100%);
      color: #ffffff;
      box-shadow: 0 18px 30px rgba(16, 29, 63, 0.18);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
    }
    .mobile-header-summary:hover,
    .mobile-header-menu[open] .mobile-header-summary {
      transform: translateY(-1px);
      box-shadow: 0 22px 34px rgba(16, 29, 63, 0.22);
    }
    .mobile-header-panel {
      position: absolute;
      top: calc(100% + 12px);
      right: 0;
      width: min(260px, calc(100vw - 32px));
      padding: 12px;
      border-radius: 20px;
      border: 1px solid var(--theme-menu-border);
      background: var(--theme-menu-bg);
      box-shadow: var(--theme-menu-shadow);
      backdrop-filter: blur(14px);
      display: grid;
      gap: 10px;
      z-index: 42;
    }
    .mobile-header-panel .header-nav-link {
      width: 100%;
      justify-content: flex-start;
    }
    main { display: grid; gap: 28px; min-height: 0; align-content: start; grid-auto-rows: max-content; margin: 10px 0; }
    section { width: 100%; }
    .container { width: 100%; max-width: var(--nib-content-max-width, 1180px); margin: 0 auto; padding: 0 20px; }
    .nib-ui-showcase {
      display: grid;
      gap: 24px;
      padding-top: 28px;
      padding-bottom: 36px;
    }
    .nib-ui-showcase-hero,
    .nib-ui-showcase-section,
    .nib-ui-showcase-card,
    .nib-ui-showcase-form {
      border-radius: 24px;
      border: 1px solid var(--surface-border);
      background: var(--card-bg);
      box-shadow: var(--shadow-soft);
    }
    .nib-ui-showcase-hero,
    .nib-ui-showcase-section,
    .nib-ui-showcase-form {
      padding: 24px;
    }
    .nib-ui-showcase-hero h1,
    .nib-ui-showcase-section-header h2,
    .nib-ui-showcase-card h3 {
      margin: 0;
      color: var(--navy);
      font-family: var(--brand-display);
    }
    .nib-ui-showcase-hero p,
    .nib-ui-showcase-section-header p,
    .nib-ui-showcase-card p {
      margin: 0;
      color: var(--muted-text);
      line-height: 1.65;
    }
    .nib-ui-showcase-hero {
      display: grid;
      gap: 12px;
    }
    .nib-ui-showcase-section {
      display: grid;
      gap: 18px;
    }
    .nib-ui-showcase-section-header {
      display: grid;
      gap: 8px;
    }
    .nib-ui-showcase-grid,
    .nib-ui-showcase-theme-grid {
      display: grid;
      gap: 16px;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    }
    .nib-ui-showcase-card {
      display: grid;
      gap: 4px;
      padding: 20px;
    }
    .nib-ui-showcase-card--theme {
      align-items: start;
      grid-template-columns: 56px minmax(0, 1fr);
    }
    .nib-ui-showcase-theme-preview {
      width: 56px;
      height: 56px;
      border-radius: 18px;
    }
    .nib-ui-showcase-card-copy {
      display: grid;
      gap: 8px;
    }
    .nib-ui-showcase-actions {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 12px;
    }
    .nib-ui-showcase-form {
      display: grid;
      gap: 16px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .nib-ui-showcase-form label {
      display: grid;
      gap: 8px;
      color: var(--navy);
      font-weight: 700;
    }
    .nib-ui-showcase-form .full {
      grid-column: 1 / -1;
    }
    .hero {
      min-height: 72vh;
      display: grid;
      align-items: stretch;
      position: relative;
      overflow: hidden;
      isolation: isolate;
      background-image:
        radial-gradient(circle at 14% 16%, var(--hero-burst-one), rgba(201, 162, 39, 0) 28%),
        radial-gradient(circle at 82% 18%, var(--hero-burst-two), rgba(155, 27, 46, 0) 26%),
        linear-gradient(105deg, var(--hero-overlay-start), var(--hero-overlay-end)),
        var(--hero-graphic, none);
      background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
      background-position: 0% 0%, 0% 0%, 0% 0%, left center;
      background-size: auto, auto, auto, min(60vw, 780px);
      color: var(--white);
    }
    .hero::before {
      content: "";
      position: absolute;
      right: clamp(-72px, -2vw, 18px);
      top: 48%;
      width: min(30vw, 380px);
      aspect-ratio: 1;
      transform: translateY(-50%);
      border-radius: 999px;
      background:
        radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.04) 34%, rgba(255, 255, 255, 0) 70%),
        linear-gradient(135deg, rgba(201, 162, 39, 0.28), rgba(155, 27, 46, 0.16) 54%, rgba(27, 42, 91, 0.18));
      filter: blur(12px);
      opacity: 0.72;
      z-index: 0;
    }
    .hero::after {
      content: "";
      position: absolute;
      left: clamp(-80px, -4vw, -18px);
      bottom: clamp(-110px, -6vw, -38px);
      width: min(30vw, 340px);
      aspect-ratio: 1;
      border-radius: 999px;
      background: radial-gradient(circle at 50% 50%, var(--hero-burst-three), rgba(27, 42, 91, 0) 72%);
      filter: blur(18px);
      opacity: 0.52;
      z-index: 0;
      pointer-events: none;
    }
    .hero-inner { width: 100%; max-width: var(--nib-content-max-width, 1180px); margin: 0 auto; padding: 56px 20px 72px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, 430px); gap: 32px; align-items: center; position: relative; z-index: 1; }
    .hero-login-only .hero-inner {
      width: 100%;
      grid-template-columns: minmax(320px, 430px);
      justify-content: end;
      min-height: 0;
      padding-top: 40px;
      padding-bottom: 40px;
      padding-right: clamp(20px, 6vw, 96px);
    }
    main:has(> .hero-login-only:not([hidden])) {
      margin: 0;
    }
    .hero-login-only {
      min-height: calc(100vh - (var(--frame-height) * 2));
    }
    .hero-copy { display: grid; gap: 18px; position: relative; z-index: 1; }
    .eyebrow { width: fit-content; border-radius: 999px; padding: 6px 12px; background: rgba(201, 162, 39, 0.16); border: 1px solid rgba(201, 162, 39, 0.28); color: #f6e7b0; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; }
    h1, h2, h3 { font-family: var(--brand-display); letter-spacing: 0; }
    h1 { margin: 0; font-size: var(--nib-ui-heading-1-size, 46px); line-height: 1.04; }
    h2 { margin: 0 0 10px; color: var(--navy); font-size: var(--nib-ui-heading-2-size, 24px); }
    p { margin: 0; line-height: 1.6; }
    .hero-copy h1 { text-shadow: 0 20px 36px rgba(7, 14, 34, 0.34); }
    .hero-copy p { max-width: 660px; color: rgba(255, 255, 255, 0.9); font-size: 17px; text-shadow: 0 12px 24px rgba(8, 14, 31, 0.3); }
    .hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
    .preview-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 4px; }
    .hero-side-stack { display: grid; gap: 18px; align-items: start; position: relative; z-index: 1; }
    .hero-login-only .hero-side-stack { width: min(100%, 430px); }
    .quick-chip-row { display: flex; gap: 10px; flex-wrap: wrap; }
    .clean-card-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
    .clean-card { border: 1px solid var(--surface-border); border-radius: 20px; background: var(--surface-bg); box-shadow: var(--shadow-soft); padding: 20px; display: grid; gap: 8px; }
    .clean-card strong { color: var(--navy); font-size: 16px; }
    .home-note-row { display: flex; gap: 10px; flex-wrap: wrap; }
    .hero-preview-card,
    .login-card,
    .panel,
    .event-card,
    .stat-card {
      background: var(--card-bg);
      border: 1px solid var(--card-border);
      border-radius: 22px;
      box-shadow: var(--shadow);
    }
    .login-card {
      padding: 14px;
      color: var(--ink);
      display: grid;
      gap: 12px;
      position: relative;
      overflow: hidden;
      backdrop-filter: blur(20px) saturate(118%);
      background-image:
        linear-gradient(140deg, var(--login-shell-start), var(--login-shell-end)),
        linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0)),
        var(--login-graphic, none);
      background-repeat: no-repeat, no-repeat, no-repeat;
      background-position: 0% 0%, 0% 0%, right bottom;
      background-size: auto, auto, min(72%, 340px);
      border: 1px solid var(--login-shell-border);
      border-radius: 24px;
      box-shadow: var(--login-shell-shadow);
    }
    .login-card::before,
    .hero-preview-card::before,
    .panel::before {
      content: "";
      position: absolute;
      inset: 0;
      border-radius: 22px;
      background: linear-gradient(90deg, var(--gold), var(--red), var(--primary-start));
      background-size: 100% 4px;
      background-repeat: no-repeat;
      background-position: top;
      opacity: 0.95;
      pointer-events: none;
    }
    .login-card::after {
      content: "";
      position: absolute;
      inset: auto -60px -80px auto;
      width: 200px;
      height: 200px;
      border-radius: 999px;
      background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0) 70%);
      opacity: 0.52;
      pointer-events: none;
    }
    .login-emblem {
      width: 72px;
      height: auto;
      flex: 0 0 auto;
      display: block;
      object-fit: contain;
    }
    .login-brand-caption {
      color: rgba(255, 255, 255, 0.88);
      font-size: 13px;
      line-height: 1.5;
      text-align: center;
      padding: 0 8px;
    }
    .login-form-panel {
      position: relative;
      z-index: 1;
      border-radius: 18px;
      border: 1px solid var(--login-panel-border);
      background: var(--login-panel-bg);
      padding: 16px 18px;
      display: grid;
      gap: 12px;
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
    }
    .login-form-head {
      display: flex;
      align-items: center;
      gap: 14px;
      position: relative;
      z-index: 1;
    }
    .login-form-head h2 {
      margin: 0;
      color: var(--navy);
    }
    .login-auth-section {
      display: grid;
      gap: 10px;
      padding: 10px 12px;
      border: 1px solid rgba(27, 42, 91, 0.12);
      border-radius: 16px;
      background: rgba(245, 241, 230, 0.45);
    }
    .login-auth-section + .login-auth-section {
      margin-top: 4px;
    }
    .login-auth-divider {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 2px 0;
      min-height: 34px;
    }
    .login-auth-divider::before {
      content: "";
      position: absolute;
      inset: 50% 12px auto;
      height: 1px;
      background: linear-gradient(90deg, rgba(27, 42, 91, 0.08), rgba(201, 162, 39, 0.42), rgba(27, 42, 91, 0.08));
      transform: translateY(-50%);
    }
    .login-auth-divider span {
      position: relative;
      z-index: 1;
      width: 42px;
      height: 42px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 999px;
      border: 1px solid rgba(201, 162, 39, 0.38);
      background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248, 243, 229, 0.98));
      box-shadow: 0 10px 22px rgba(17, 31, 63, 0.08);
      color: var(--navy);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0.08em;
    }
    .login-auth-section-head {
      display: grid;
      gap: 2px;
    }
    .login-auth-section-head strong {
      color: var(--navy);
      font-size: 15px;
      line-height: 1.2;
    }
    .login-auth-section-head span {
      color: var(--muted-text);
      font-size: 12px;
      line-height: 1.35;
    }
    .login-sso-block {
      display: grid;
      gap: 8px;
    }
    .oidc-provider-button {
      width: 100%;
    }
    .oidc-provider-button__content {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 12px;
    }
    .oidc-provider-button__icon {
      width: 20px;
      height: 20px;
      flex: 0 0 20px;
      display: block;
      object-fit: contain;
    }
    .oidc-provider-button__label {
      line-height: 1.15;
    }
    .login-form-head p {
      color: var(--muted-text);
      font-size: 14px;
    }
    .login-card h2 { margin-bottom: 0; }
    .login-card details { display: grid; gap: 12px; }
    .login-card summary { color: var(--red); font-weight: 700; cursor: pointer; width: fit-content; }
    .login-recovery-stack { margin-top: 12px; display: grid; gap: 14px; }
    .login-form-message {
      min-height: 0;
      margin: 0;
    }
    .login-form-message:empty {
      display: none;
    }
    .login-form-message:not(:empty) {
      min-height: 24px;
      margin-top: 2px;
    }
    .login-inline-links {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      color: var(--muted-text);
      font-size: 14px;
    }
    .login-link-button {
      min-height: 0;
      padding: 0;
      border: 0;
      background: transparent;
      color: var(--red);
      box-shadow: none;
      font-weight: 700;
      text-decoration: underline;
      text-underline-offset: 3px;
    }
    .login-link-button:hover {
      transform: none;
      box-shadow: none;
      color: var(--navy);
    }
    .pricing-section {
      padding-top: 0;
      padding-bottom: 56px;
    }
    .pricing-shell {
      position: relative;
      overflow: hidden;
      padding: 28px;
      display: grid;
      gap: 24px;
    }
    .pricing-head {
      display: grid;
      gap: 10px;
      max-width: 860px;
      position: relative;
      z-index: 1;
    }
    .pricing-eyebrow {
      color: var(--navy);
      background: rgba(201, 162, 39, 0.14);
      border-color: rgba(201, 162, 39, 0.24);
    }
    .pricing-head p {
      color: var(--muted-text);
      font-size: 15px;
      max-width: 760px;
    }
    .pricing-legend {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      position: relative;
      z-index: 1;
    }
    .pricing-legend-chip {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 32px;
      padding: 6px 12px;
      border-radius: 999px;
      border: 1px solid rgba(27, 42, 91, 0.12);
      background: linear-gradient(180deg, rgba(241, 247, 255, 0.98), rgba(255,255,255,0.94));
      color: var(--navy);
      font-size: 13px;
      font-weight: 700;
    }
    .pricing-legend-chip.is-pro {
      background: linear-gradient(180deg, rgba(255, 246, 239, 0.98), rgba(255,255,255,0.94));
    }
    .pricing-legend-chip.is-comprehensive {
      background: linear-gradient(180deg, rgba(245, 241, 255, 0.98), rgba(255,255,255,0.94));
    }
    .pricing-legend-chip--no {
      color: var(--muted-text);
    }
    .pricing-plan-badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      align-self: flex-start;
      padding: 3px 10px;
      border-radius: 999px;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      margin-bottom: 2px;
    }
    .pricing-plan-badge--free {
      background: rgba(201, 162, 39, 0.16);
      color: var(--navy);
      border: 1px solid rgba(201, 162, 39, 0.3);
    }
    .pricing-plan-badge--soon {
      background: rgba(27, 42, 91, 0.06);
      color: var(--muted-text);
      border: 1px solid rgba(27, 42, 91, 0.12);
    }
    .plan-mark {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 26px;
      height: 26px;
      border-radius: 999px;
      flex: none;
    }
    .plan-mark svg {
      width: 14px;
      height: 14px;
    }
    .plan-mark--yes {
      background: var(--navy);
      color: #fff;
    }
    .plan-mark--no {
      background: rgba(27, 42, 91, 0.07);
      color: var(--muted-text);
    }
    .pricing-cell--yes,
    .pricing-cell--no {
      flex-direction: column;
      gap: 4px;
      text-align: center;
    }
    .pricing-cell--no {
      opacity: 0.72;
    }
    .pricing-cell-note {
      color: var(--muted-text);
      font-size: 12.5px;
      line-height: 1.4;
      font-weight: 500;
    }
    .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }
    .pricing-matrix {
      position: relative;
      z-index: 1;
      border: 1px solid var(--surface-border);
      border-radius: 24px;
      overflow: hidden;
      background: rgba(255, 255, 255, 0.88);
      box-shadow: var(--shadow-soft);
    }
    .pricing-matrix-row {
      display: grid;
      grid-template-columns: minmax(280px, 1.45fr) repeat(3, minmax(180px, 1fr));
      border-top: 1px solid rgba(27, 42, 91, 0.08);
    }
    .pricing-matrix-row:first-child {
      border-top: 0;
    }
    .pricing-matrix-row--header {
      background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(245,247,252,0.94));
    }
    .pricing-matrix-row--section {
      grid-template-columns: minmax(0, 1fr);
      background: linear-gradient(90deg, rgba(27,42,91,0.06), rgba(155,27,46,0.02));
    }
    .pricing-matrix-cell {
      padding: 16px 18px;
      color: var(--ink);
      font-size: 14px;
      line-height: 1.55;
      border-left: 1px solid rgba(27, 42, 91, 0.08);
      display: flex;
      align-items: center;
    }
    .pricing-matrix-cell:first-child {
      border-left: 0;
    }
    .pricing-matrix-cell--heading {
      display: grid;
      gap: 4px;
      align-content: start;
      color: var(--navy);
      font-weight: 700;
    }
    .pricing-matrix-cell--heading strong {
      font-size: 24px;
      line-height: 1.1;
    }
    .pricing-matrix-cell--heading span {
      color: var(--muted-text);
      font-size: 13px;
      font-weight: 600;
    }
    .pricing-matrix-cell--feature {
      color: var(--navy);
      font-weight: 700;
      position: sticky;
      left: 0;
      z-index: 1;
      background: #ffffff;
      box-shadow: 2px 0 6px rgba(27, 42, 91, 0.06);
    }
    .pricing-matrix-cell--feature.pricing-matrix-cell--heading {
      background: #f5f7fc;
    }
    .pricing-matrix-cell--plan {
      justify-content: center;
      text-align: center;
    }
    .pricing-matrix-cell--pro {
      background: linear-gradient(180deg, rgba(255, 246, 239, 0.62), rgba(255,255,255,0.3));
    }
    .pricing-matrix-cell--comprehensive {
      background: linear-gradient(180deg, rgba(245, 241, 255, 0.68), rgba(255,255,255,0.3));
    }
    .pricing-matrix-cell--section {
      color: var(--navy);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .pricing-note {
      color: var(--muted-text);
      font-size: 14px;
      padding-top: 4px;
      border-top: 1px solid rgba(27, 42, 91, 0.08);
    }
    @media (max-width: 1100px) {
      .pricing-matrix-row {
        grid-template-columns: minmax(240px, 1.3fr) repeat(3, minmax(150px, 1fr));
      }
    }
    @media (max-width: 860px) {
      .pricing-shell {
        padding: 22px 16px;
      }
      .pricing-matrix {
        overflow-x: auto;
      }
      .pricing-matrix-row {
        min-width: 860px;
      }
    }
    .hero-preview-card { color: var(--ink); padding: 20px; display: grid; gap: 14px; position: relative; overflow: hidden; transform: translateY(-8px); }
    .card-subtle { color: var(--muted-text); font-size: 14px; }
    form { display: grid; gap: 14px; }
    fieldset {
      border: 1px solid var(--card-border);
      border-radius: 16px;
      margin: 0;
      padding: 18px;
      background: var(--card-bg);
    }
    legend { padding: 0 8px; color: var(--navy); font-weight: 700; }
    label { display: grid; gap: 6px; color: var(--navy); font-size: 14px; font-weight: 700; }
    input, select, textarea {
      width: 100%;
      border: 1px solid var(--input-border);
      border-radius: 14px;
      padding: 12px 14px;
      font: inherit;
      font-size: var(--nib-ui-control-font-size);
      color: var(--ink);
      background: var(--input-bg);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
    }
    select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      cursor: pointer;
      padding-right: 46px;
      background-image:
        linear-gradient(45deg, transparent 50%, var(--navy) 50%),
        linear-gradient(135deg, var(--navy) 50%, transparent 50%),
        linear-gradient(180deg, rgba(255,255,255,0.22), rgba(255,255,255,0));
      background-position:
        calc(100% - 20px) calc(50% - 3px),
        calc(100% - 14px) calc(50% - 3px),
        0 0;
      background-size: 7px 7px, 7px 7px, 100% 100%;
      background-repeat: no-repeat;
    }
    select:hover {
      border-color: color-mix(in srgb, var(--gold) 48%, var(--input-border));
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.86), 0 10px 18px rgba(16,29,63,0.06);
    }
    select:disabled {
      cursor: not-allowed;
      opacity: 0.78;
    }
    .nib-select-shell {
      position: relative;
      display: block;
      width: var(--nib-select-width, 100%);
      min-width: 0;
      z-index: 1;
    }
    .nib-select-shell.is-open {
      z-index: 130;
    }
    .nib-select-native {
      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;
      clip-path: inset(50%) !important;
      border: 0 !important;
      white-space: nowrap !important;
      opacity: 0 !important;
      pointer-events: none !important;
    }
    .nib-select-trigger,
    .nib-select-option {
      appearance: none;
      box-sizing: border-box;
      font: inherit;
      font-family: inherit;
      letter-spacing: 0;
    }
    .nib-select-trigger {
      width: 100%;
      min-height: var(--nib-ui-select-trigger-height, 48px);
      border: 1px solid var(--input-border);
      border-radius: 14px;
      padding: 12px 44px 12px 14px;
      font-size: var(--nib-ui-control-font-size);
      background: rgba(255,255,255,0.98);
      color: var(--ink);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.92), 0 8px 18px rgba(16,29,63,0.05);
      display: flex;
      align-items: center;
      justify-content: flex-start;
      text-align: left;
      position: relative;
      cursor: pointer;
      transition: border-color 180ms ease, box-shadow 180ms ease;
    }
    .nib-select-trigger::before,
    .nib-select-trigger::after {
      content: "";
      position: absolute;
      right: 18px;
      width: 8px;
      height: 2px;
      border-radius: 999px;
      background: var(--navy);
      top: 50%;
      transition: transform 180ms ease;
    }
    .nib-select-trigger::before {
      transform: translateY(-2px) rotate(45deg);
      transform-origin: right center;
    }
    .nib-select-trigger::after {
      transform: translateY(-2px) rotate(-45deg);
      transform-origin: left center;
      right: 13px;
    }
    .nib-select-shell.is-open .nib-select-trigger::before {
      transform: translateY(2px) rotate(-45deg);
    }
    .nib-select-shell.is-open .nib-select-trigger::after {
      transform: translateY(2px) rotate(45deg);
    }
    .nib-select-trigger:hover,
    .nib-select-shell.is-open .nib-select-trigger {
      border-color: color-mix(in srgb, var(--primary-start) 34%, var(--gold) 26%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.94), 0 12px 20px rgba(16,29,63,0.08);
    }
    .nib-select-trigger:focus-visible {
      outline: 3px solid rgba(201, 162, 39, 0.18);
      border-color: var(--gold);
    }
    .nib-select-label {
      display: block;
      flex: 1 1 auto;
      width: 100%;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      padding-right: 8px;
      font-weight: 600;
      text-align: left;
    }
    .nib-select-menu {
      position: absolute;
      top: calc(100% + 8px);
      left: 0;
      right: 0;
      min-width: 100%;
      z-index: 120;
      display: grid;
      gap: 8px;
      padding: 10px;
      border: 1px solid color-mix(in srgb, var(--primary-start) 18%, var(--input-border));
      border-radius: 16px;
      background: rgba(255,255,255,0.995);
      box-shadow: 0 20px 44px rgba(16,29,63,0.16);
      opacity: 0;
      visibility: hidden;
      transform: translateY(-6px);
      pointer-events: none;
      text-align: left;
      max-height: 0;
      overflow: hidden;
      transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease, max-height 180ms ease;
    }
    .nib-select-shell.is-open .nib-select-menu {
      opacity: 1;
      visibility: visible;
      transform: translateY(0);
      pointer-events: auto;
      max-height: 380px;
      overflow: visible;
    }
    .nib-select-search-shell {
      display: grid;
      gap: 6px;
    }
    .nib-select-search {
      width: 100%;
      min-height: var(--nib-ui-select-search-height, 40px);
      border: 1px solid color-mix(in srgb, var(--primary-start) 14%, var(--input-border));
      border-radius: 12px;
      padding: 10px 12px;
      background: #ffffff;
      color: var(--ink);
      font: inherit;
      font-size: var(--nib-ui-control-font-size);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.94);
    }
    .nib-select-search:focus {
      outline: 3px solid rgba(201, 162, 39, 0.14);
      border-color: var(--gold);
    }
    .nib-select-options {
      display: grid;
      gap: 4px;
      max-height: 240px;
      overflow: auto;
      padding-right: 2px;
    }
    .nib-select-option {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: flex-start;
      border: 1px solid transparent;
      border-radius: 12px;
      padding: 10px 12px;
      font-size: var(--nib-ui-control-font-size);
      background: transparent;
      color: var(--ink);
      text-align: left;
      cursor: pointer;
      transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
    }
    .nib-select-option:hover,
    .nib-select-option:focus-visible {
      background: color-mix(in srgb, var(--primary-start) 6%, #ffffff 94%);
      border-color: color-mix(in srgb, var(--primary-start) 14%, transparent);
      outline: none;
    }
    .nib-select-option.is-selected {
      background: color-mix(in srgb, var(--gold) 12%, #ffffff 88%);
      border-color: color-mix(in srgb, var(--gold) 24%, var(--input-border));
      color: var(--navy);
      font-weight: 800;
    }
    .nib-select-option[hidden] {
      display: none !important;
    }
    .nib-select-option:disabled,
    .nib-select-shell.is-disabled .nib-select-trigger {
      opacity: 0.68;
      cursor: not-allowed;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82);
    }
    .nib-select-empty {
      padding: 10px 12px;
      border-radius: 12px;
      background: color-mix(in srgb, var(--cream) 62%, #ffffff 38%);
      border: 1px dashed color-mix(in srgb, var(--gold) 24%, transparent);
      color: var(--muted-text);
      font-size: 13px;
      font-weight: 600;
      text-align: left;
    }
    textarea { min-height: 96px; resize: vertical; }
    input:focus, select:focus, textarea:focus { outline: 3px solid rgba(201, 162, 39, 0.24); border-color: var(--gold); }
    .portal-inline-field {
      display: grid;
      grid-template-columns: minmax(122px, 156px) minmax(0, 1fr);
      gap: 8px;
      align-items: center;
      min-width: 0;
    }
    .portal-inline-field--textarea {
      align-items: start;
    }
    .portal-inline-field > .portal-inline-label-text {
      display: block;
      min-width: 0;
      max-width: 100%;
      margin: 0 !important;
      color: inherit;
      font: inherit;
      font-weight: inherit;
      line-height: 1.4;
      white-space: normal;
      overflow: visible;
      text-overflow: clip;
      overflow-wrap: anywhere;
      word-break: break-word;
    }
    .portal-inline-field--textarea > .portal-inline-label-text {
      padding-top: 10px;
      white-space: normal;
      overflow: visible;
      text-overflow: clip;
    }
    .portal-inline-field--stacked-center {
      grid-template-columns: minmax(0, 1fr);
      gap: 6px;
      align-items: stretch;
    }
    .portal-inline-field--stacked-center > .portal-inline-label-text {
      text-align: center;
      justify-self: center;
      width: 100%;
    }
    .portal-inline-field > input:not([type="checkbox"]):not([type="radio"]),
    .portal-inline-field > select,
    .portal-inline-field > textarea,
    .portal-inline-field > .nib-select-shell {
      grid-column: 2;
      width: 100%;
      min-width: 0;
      margin: 0;
    }
    .event-drawer-body label,
    .event-drawer-body .chair-compact-field,
    .event-drawer-body .chair-review-form-editor-grid > label {
      min-width: 0;
      max-width: 100%;
    }
    .event-drawer-body .portal-inline-field > .portal-inline-label-text,
    .event-drawer-body .chair-compact-field-label,
    .event-drawer-body .portal-filter-label,
    .event-drawer-body .reviewer-review-custom-label {
      display: block;
      max-width: 100%;
      white-space: normal;
      overflow: visible;
      text-overflow: clip;
      overflow-wrap: anywhere;
      word-break: break-word;
      line-height: 1.28;
    }
    .event-drawer-body input:not([type="checkbox"]):not([type="radio"]),
    .event-drawer-body select,
    .event-drawer-body textarea,
    .event-drawer-body .nib-select-shell {
      width: 100%;
      min-width: 0;
      max-width: 100%;
    }
    .portal-inline-field > input[type="file"] {
      padding-block: 9px;
    }
    .portal-inline-field--stacked-center > input:not([type="checkbox"]):not([type="radio"]),
    .portal-inline-field--stacked-center > select,
    .portal-inline-field--stacked-center > textarea,
    .portal-inline-field--stacked-center > .nib-select-shell {
      grid-column: 1;
    }
    .grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .full { grid-column: 1 / -1; }
    .check { display: flex; align-items: flex-start; gap: 10px; color: var(--ink); font-weight: 400; }
    .check input { width: 18px; height: 18px; margin-top: 2px; flex: 0 0 auto; }
    .message { min-height: 24px; font-weight: 700; }
    .message.ok { color: #0f7a45; }
    .message.error { color: var(--red); }
    .field-error { display: block; margin-top: 4px; color: var(--red); font-size: 12.5px; font-weight: 600; }
    input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"] { border-color: var(--red) !important; }
    .info-band { padding: 28px 0 8px; }
    .info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
    .stat-card { padding: 22px; display: grid; gap: 8px; position: relative; overflow: hidden; }
    .stat-card strong { color: var(--navy); font-size: 17px; }
    .page-head { padding: 36px 0 12px; display: grid; gap: 10px; }
    .page-head p { color: var(--muted-text); max-width: 840px; }
    .panel { padding: 24px; position: relative; overflow: hidden; }
    .event-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
    .event-card { padding: 20px; display: grid; gap: 12px; transition: transform 180ms ease, box-shadow 180ms ease; }
    .event-card:hover, .stat-card:hover, .workspace-card:hover, .feature-card:hover, .role-lane-card:hover, .support-card:hover, .tenant-sidebar-card:hover, .preview-card:hover, .metric-item:hover { transform: translateY(-2px); box-shadow: 0 22px 40px rgba(16, 29, 63, 0.16); }
    .event-card h3 { margin: 0; color: var(--navy); font-size: 20px; }
    .event-meta { display: grid; gap: 8px; color: var(--muted-text); font-size: 14px; }
    .pill { display: inline-flex; align-items: center; width: fit-content; border-radius: 999px; padding: 5px 10px; background: rgba(201, 162, 39, 0.16); color: var(--navy); border: 1px solid rgba(201, 162, 39, 0.28); font-size: 12px; font-weight: 700; text-transform: uppercase; }
    .hero-actions .pill { color: #f6e7b0; background: rgba(201, 162, 39, 0.16); border-color: rgba(201, 162, 39, 0.28); }
    .event-hero { padding: 40px 0 8px; }
    .event-shell { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr); gap: 18px; }
    .event-banner { padding: 28px; background: linear-gradient(135deg, var(--banner-start), var(--banner-end)); color: var(--white); border-radius: 20px; box-shadow: var(--shadow); display: grid; gap: 14px; }
    .event-banner h1 { font-size: 36px; }
    .event-banner p { color: rgba(255,255,255,0.88); }
    .detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .detail-card { border: 1px solid var(--line); border-radius: 14px; background: var(--paper); padding: 16px; display: grid; gap: 5px; }
    .detail-card span { font-size: 12px; font-weight: 700; color: #68728d; text-transform: uppercase; }
    .detail-card strong { color: var(--ink); }
    .track-list { display: grid; gap: 12px; }
    .track-item { border: 1px solid var(--line); border-radius: 14px; padding: 14px; background: var(--paper); }
    .intro { display: grid; gap: 14px; max-width: 760px; margin-bottom: 24px; }
.status-line { color: var(--red); font-weight: 700; }
.submission-deadline-pill {
  color: #8f1f39;
  background: rgba(249, 224, 229, 0.92);
  border-color: rgba(148, 48, 75, 0.32);
}
.blink-deadline {
  animation: nibDeadlineBlink 1.15s ease-in-out infinite;
}
.event-action-disabled {
  pointer-events: none;
  opacity: 0.62;
  cursor: default;
}
@keyframes nibDeadlineBlink {
  0%, 100% { box-shadow: 0 0 0 0 rgba(148, 48, 75, 0.08); opacity: 1; }
  50% { box-shadow: 0 0 0 6px rgba(148, 48, 75, 0.18); opacity: 0.78; }
}
    .auth-grid, .workspace-stack, .portal-shell, .workspace-block { display: grid; gap: 18px; }
    .portal-shell { padding-top: 0; padding-bottom: 0; align-content: start; }
    .portal-dashboard { display: grid; gap: 18px; align-content: start; overflow: visible; }
    .portal-role-shell { display: grid; gap: 18px; align-content: start; overflow: visible; }
    .portal-session-bar { display: flex; gap: 18px; align-items: center; justify-content: space-between; }
    .portal-session-bar h2 { margin-bottom: 0; }
    .portal-control-bar { display: grid; gap: 16px; position: relative; z-index: 2; overflow: visible; }
    .portal-control-actions { display: flex; gap: 12px; align-items: end; justify-content: space-between; flex-wrap: nowrap; position: relative; z-index: 20; overflow: visible; flex: 1 1 0; min-width: 0; }
    .portal-control-actions .actions { justify-content: flex-end; flex: 0 0 auto; }
    #portal-control-bar {
      width: 100%;
      min-width: 0;
      max-width: 100%;
    }
    #portal-control-bar .portal-list-toolbar {
      width: 100%;
      min-width: 0;
      align-items: flex-start;
    }
    #portal-control-bar .portal-control-actions {
      width: 100%;
      min-width: 0;
      max-width: 100%;
      flex-wrap: wrap;
    }
    #portal-control-bar .portal-control-actions > * {
      min-width: 0;
      max-width: 100%;
    }
    #portal-control-bar .portal-control-actions .actions {
      margin-left: auto;
    }
    .workspace-event-select-stack {
      display: grid;
      gap: 4px;
      min-width: 0;
      justify-items: stretch;
      width: 100%;
      max-width: 100%;
    }
    .workspace-event-select-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      min-width: 0;
    }
    .workspace-event-select-head--end {
      justify-content: flex-end;
    }
    .workspace-event-select-head-label {
      display: block;
      min-width: 0;
      margin: 0;
      color: var(--navy);
      font-family: var(--brand-display);
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.2;
      text-align: left;
      white-space: normal;
      overflow-wrap: anywhere;
    }
    .workspace-event-select-head .workspace-event-link {
      flex: 0 0 auto;
    }
    .workspace-event-select-stack > label,
    .workspace-event-select-stack > .organizer-header-select,
    .workspace-event-select-stack > select,
    .workspace-event-select-stack > .nib-select-shell {
      min-width: 0;
      width: 100%;
      max-width: 100%;
    }
    .workspace-event-select-stack--header {
      width: min(640px, 100%);
    }
    .organizer-shell-head-actions > .workspace-event-select-stack--header {
      flex: 0 1 min(640px, 100%);
      width: min(640px, 100%);
      max-width: min(640px, 100%);
      min-width: 0;
    }
    .list-toolbar label.portal-control-event-label,
    .portal-control-event-label {
      min-width: 0;
      flex: 1 1 auto;
      max-width: none;
      justify-items: stretch;
      text-align: left;
      position: relative;
      z-index: 21;
      overflow: visible;
    }
    .portal-control-event-stack {
      flex: 1 1 400px;
      max-width: min(640px, 100%);
    }
    .portal-control-event-stack > .nib-select-shell {
      margin-top: 0;
    }
    .portal-control-event-label .portal-filter-label {
      text-align: left;
      justify-self: flex-start;
    }
    .workspace-slideout-panel {
      position: relative;
    }
    .organizer-shell {
      display: grid;
      gap: 18px;
      border: 1px solid rgba(201, 162, 39, 0.18);
      background:
        linear-gradient(180deg, rgba(255,255,255,0.97), rgba(245,241,230,0.94)),
        radial-gradient(circle at top right, rgba(201,162,39,0.14), transparent 48%);
      box-shadow: var(--shadow-soft);
    }
    .organizer-shell:has(.nib-select-shell.is-open) {
      overflow: visible;
    }
    .organizer-shell-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      align-items: start;
      justify-content: start;
      gap: 8px;
      width: 100%;
      margin-top: -10px;
    }
    .organizer-shell-head-actions {
      display: flex;
      align-items: stretch;
      justify-content: flex-start;
      gap: 12px;
      flex-wrap: wrap;
      margin-left: 0;
      width: 100%;
      max-width: 100%;
      min-width: 0;
    }
    .organizer-shell-head > .organizer-shell-head-actions {
      margin-top: -14px;
    }
    .workspace-navigation-bar {
      display: none;
      align-items: flex-end;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
      margin-bottom: 18px;
      padding: 14px 16px;
      border: 1px solid color-mix(in srgb, var(--gold) 20%, rgba(27, 42, 91, 0.1));
      border-radius: 18px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.92), rgba(255,253,247,0.84)),
        radial-gradient(circle at top right, rgba(201,162,39,0.12), transparent 42%);
      box-shadow: var(--shadow-soft);
    }
    .workspace-navigation-bar .workspace-nav-toggle {
      flex: 0 0 auto;
    }
    .workspace-navigation-bar .organizer-header-select,
    .workspace-navigation-bar > select {
      margin-left: auto;
      min-width: min(420px, 100%);
    }
    .organizer-header-select {
      min-width: min(420px, 100%);
    }
    .organizer-header-select > span {
      display: block;
      margin-bottom: 8px;
      color: var(--navy);
      font-family: var(--brand-display);
      font-weight: 700;
      letter-spacing: 0;
    }
    .organizer-header-select select {
      min-width: min(420px, 100%);
    }
    .workspace-event-link {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      width: fit-content;
      max-width: 100%;
      padding: 7px 14px;
      border-radius: 999px;
      border: 1px solid color-mix(in srgb, var(--gold) 26%, rgba(27, 42, 91, 0.12));
      background: linear-gradient(145deg, rgba(255,255,255,0.98), rgba(247,242,231,0.94));
      color: var(--navy);
      font-size: 13px;
      font-weight: 800;
      line-height: 1.2;
      text-decoration: none;
      box-shadow: 0 10px 20px rgba(16, 29, 63, 0.08);
      transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
      justify-self: flex-start;
    }
    .workspace-event-link:hover {
      transform: translateY(-1px);
      box-shadow: 0 14px 24px rgba(16, 29, 63, 0.12);
      border-color: color-mix(in srgb, var(--gold) 34%, var(--red) 14%);
    }
    .workspace-event-link:focus-visible {
      outline: 2px solid color-mix(in srgb, var(--gold) 54%, white);
      outline-offset: 2px;
    }
    .organizer-workspace-layout {
      display: grid;
      grid-template-columns: 210px minmax(0, 1fr);
      gap: 18px;
      align-items: start;
    }
    .organizer-submenu-shell {
      display: grid;
      align-self: start;
    }
    .organizer-workspace-main {
      display: grid;
      gap: 18px;
      min-width: 0;
    }
    /* Match Chair/Reviewer/Track-Chair's sidebar-narrows-then-collapses
       breakpoints exactly, so Organizer's menu behaves the same way at
       every screen size instead of always spanning full width. */
    @media (max-width: 1180px) {
      .organizer-workspace-layout {
        grid-template-columns: 190px minmax(0, 1fr);
      }
    }
    @media (max-width: 720px) {
      .organizer-workspace-layout {
        grid-template-columns: 1fr;
      }
      .organizer-submenu-shell {
        max-width: 320px;
        justify-self: start;
      }
    }
    .workspace-nav-toggle {
      display: none;
      align-items: center;
      gap: 10px;
      min-height: 52px;
      padding-inline: 18px;
      font-size: 15px;
      font-weight: 800;
      white-space: nowrap;
    }
    /* Author has no desktop sidebar rail (there's nothing to navigate --
       just one view), unlike Organizer/Chair/Reviewer/Track-Chair whose
       .chair-submenu-shell doubles as a persistent desktop column. Keep
       Author's copy of that shared class hidden outside the ≤720px
       drawer-overlay view instead of letting it render as a stray block. */
    @media (min-width: 721px) {
      #author-nav-drawer {
        display: none;
      }
    }
    .workspace-nav-drawer-head {
      display: none;
      align-items: center;
      justify-content: flex-start;
      position: relative;
      gap: 8px;
      margin-bottom: 8px;
    }
    .workspace-nav-drawer-title {
      display: block;
      color: var(--navy);
      font-size: 14px;
      font-weight: 800;
      line-height: 1.1;
      text-align: left;
    }
    .workspace-nav-drawer-brand {
      display: flex;
      flex-direction: row;
      align-items: center;
      gap: 8px;
      justify-content: flex-start;
      min-width: 0;
      text-align: left;
    }
    .workspace-nav-drawer-brand-mark {
      display: block;
      width: 30px;
      height: 30px;
      object-fit: contain;
      flex-shrink: 0;
    }
    .workspace-nav-drawer-close {
      min-width: 92px;
    }
    .workspace-nav-backdrop {
      display: none;
      border: 0;
      padding: 0;
      margin: 0;
      background: transparent;
    }
    
    html:not([data-navigation-theme]) .workspace-navigation-bar,
    html[data-navigation-theme="nibveda-flat-navigation"] .workspace-navigation-bar,
    html:not([data-navigation-theme]) .workspace-nav-toggle,
    html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-toggle,
    html:not([data-navigation-theme]) .workspace-nav-drawer-head,
    html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-head,
    html:not([data-navigation-theme]) .workspace-nav-backdrop,
    html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-backdrop {
      display: none;
    }
    html:not([data-navigation-theme]) .organizer-shell-head-actions,
    html[data-navigation-theme="nibveda-flat-navigation"] .organizer-shell-head-actions {
      justify-content: flex-end;
      margin-left: auto;
    }
    html:not([data-navigation-theme]) .organizer-submenu-shell,
    html[data-navigation-theme="nibveda-flat-navigation"] .organizer-submenu-shell,
    html:not([data-navigation-theme]) .chair-submenu-shell,
    html[data-navigation-theme="nibveda-flat-navigation"] .chair-submenu-shell {
      position: relative;
      top: auto;
      left: auto;
      width: auto;
      max-width: 100%;
      transform: none;
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
    }
    html:not([data-navigation-theme]) .organizer-workspace-tabs,
    html[data-navigation-theme="nibveda-flat-navigation"] .organizer-workspace-tabs {
      display: grid;
      gap: 6px;
      width: 100%;
      max-width: 100%;
      align-content: start;
    }
    html:not([data-navigation-theme]) #portal-control-bar,
    html:not([data-navigation-theme]) #portal-reviewer-shell,
    html:not([data-navigation-theme]) #portal-track-chair-shell,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-control-bar,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-reviewer-shell,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-track-chair-shell {
      padding-top: 0;
    }
    html:not([data-navigation-theme]) #portal-control-bar .workspace-welcome-panel,
    html:not([data-navigation-theme]) #portal-reviewer-shell .workspace-welcome-panel,
    html:not([data-navigation-theme]) #portal-track-chair-shell .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-control-bar .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-reviewer-shell .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-track-chair-shell .workspace-welcome-panel {
      margin: 0 0 18px -24px;
    }

    
    html[data-navigation-theme="nibveda-flat-full-content"] .workspace-navigation-bar,
    html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-toggle,
    html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-head,
    html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-backdrop {
      display: none;
    }
    html[data-navigation-theme="nibveda-flat-full-content"] .organizer-shell-head-actions {
      justify-content: flex-end;
      margin-left: auto;
    }
    html[data-navigation-theme="nibveda-flat-full-content"] .organizer-submenu-shell,
    html[data-navigation-theme="nibveda-flat-full-content"] .chair-submenu-shell {
      position: relative;
      top: auto;
      left: auto;
      width: auto;
      max-width: 100%;
      transform: none;
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
    }
    html[data-navigation-theme="nibveda-flat-full-content"] .organizer-workspace-tabs {
      display: grid;
      gap: 6px;
      width: 100%;
      max-width: 100%;
      align-content: start;
    }
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-control-bar,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-reviewer-shell,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-track-chair-shell {
      padding-top: 0;
    }
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-control-bar .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-reviewer-shell .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-track-chair-shell .workspace-welcome-panel {
      margin: 0 0 18px -24px;
    }

    .organizer-workspace-tabs {
      display: grid;
      gap: 6px;
      padding: 10px;
      border-radius: 22px;
      border: 1px solid rgba(201, 162, 39, 0.18);
      background: rgba(255,255,255,0.82);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
      width: 100%;
      max-width: 100%;
      align-content: start;
    }
    .organizer-workspace-tab-button {
      width: 100%;
      justify-content: flex-start;
      text-align: left;
    }
    .workspace-nav-item-badge,
    .workspace-nav-item-compact {
      display: none;
    }
    .workspace-nav-item-indicator {
      display: none;
    }
    .workspace-nav-item-labels {
      display: inline;
      min-width: 0;
    }
    .workspace-nav-item-full {
      display: inline;
    }
    .workspace-nav-toggle-text {
      display: inline;
    }
    .organizer-workspace-tab-button[aria-pressed="true"] {
      background: var(--nib-ui-button-shell-accent);
      color: var(--nib-ui-on-accent, var(--accent-text, var(--navy)));
      border-color: var(--nib-ui-button-border-accent);
      box-shadow: var(--nib-ui-button-shadow-strong);
    }
    .organizer-workspace-panel {
      display: grid;
      gap: 18px;
    }
    .organizer-settings-panel {
      display: grid;
      gap: 18px;
      padding: 20px;
      border-radius: 20px;
      border: 1px solid rgba(27, 42, 91, 0.1);
      background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(250,247,239,0.96));
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.72);
    }
    .organizer-panel-intro {
      display: grid;
      gap: 8px;
      padding: 16px 18px;
      border-radius: 18px;
      border: 1px solid rgba(201, 162, 39, 0.18);
      background: linear-gradient(135deg, rgba(27, 42, 91, 0.92), rgba(155, 27, 46, 0.82));
      color: var(--white);
      box-shadow: var(--shadow-soft);
    }
    .organizer-panel-intro .small {
      color: rgba(255,255,255,0.84);
      margin: 0;
    }
    .organizer-chair-form {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 16px;
    }
    .organizer-chair-form > label,
    .organizer-chair-form > section,
    .organizer-chair-form > .actions,
    .organizer-chair-form > .message {
      grid-column: 1 / -1;
    }
    .organizer-chair-search-grid {
      grid-column: 1 / -1;
      display: grid;
      grid-template-columns: minmax(260px, 1fr) auto;
      gap: 14px;
      align-items: end;
    }
    .organizer-chair-lookup-panel {
      display: grid;
      gap: 14px;
      padding: 16px 18px;
      border-radius: 18px;
      border: 1px solid rgba(201, 162, 39, 0.22);
      background: rgba(255,255,255,0.82);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
    }
    .organizer-chair-lookup-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .organizer-chair-lookup-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }
    .organizer-chair-lookup-card {
      border: 1px solid rgba(27, 42, 91, 0.12);
      border-radius: 16px;
      padding: 12px 14px;
      background: rgba(245, 241, 230, 0.74);
      display: grid;
      gap: 4px;
    }
    .organizer-chair-lookup-card span {
      font-size: 12px;
      color: var(--muted-text);
      text-transform: uppercase;
      letter-spacing: 0.06em;
    }
    .organizer-chair-confirmations {
      display: grid;
      gap: 10px;
      padding-top: 6px;
    }
    .organizer-inline-actions {
      justify-content: flex-end;
      align-self: end;
    }
    .organizer-chair-table-wrap {
      overflow-x: auto;
    }
    .organizer-chair-table tbody tr td {
      vertical-align: middle;
    }
    .organizer-chair-action-cell {
      white-space: nowrap;
      text-align: right;
    }
    .organizer-chair-delete-button {
      min-height: 38px;
      padding: 8px 14px;
      border-radius: 14px;
      border: 1px solid rgba(155, 27, 46, 0.18);
      background: rgba(255, 255, 255, 0.96);
      color: var(--red);
      box-shadow: 0 10px 18px rgba(16, 29, 63, 0.08);
      font-size: 14px;
    }
    .organizer-chair-delete-button:hover {
      box-shadow: 0 14px 24px rgba(16, 29, 63, 0.12);
      transform: translateY(-1px);
    }
    .organizer-chair-table .status-pill {
      display: inline-flex;
    }
    .organizer-service-panel {
      overflow: hidden;
    }
    .organizer-service-intro {
      background:
        linear-gradient(135deg, rgba(27, 42, 91, 0.94), rgba(155, 27, 46, 0.88)),
        radial-gradient(circle at top right, rgba(201,162,39,0.28), transparent 42%);
    }
    .organizer-service-tab-panel {
      display: grid;
      gap: 18px;
    }
    .organizer-service-highlight-row {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
    }
    .organizer-service-catalog-grid,
    .organizer-service-config-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 16px;
    }
    .organizer-service-card,
    .organizer-service-config-card {
      position: relative;
      display: grid;
      gap: 14px;
      padding: 18px;
      border-radius: 18px;
      border: 1px solid rgba(201, 162, 39, 0.18);
      background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,242,231,0.96)),
        radial-gradient(circle at top right, rgba(201,162,39,0.14), transparent 46%);
      box-shadow: var(--shadow-soft);
    }
    .organizer-service-card::after,
    .organizer-service-config-card::after {
      content: "";
      position: absolute;
      inset: 0 auto auto 0;
      width: 100%;
      height: 4px;
      background: linear-gradient(90deg, var(--gold), var(--red), var(--navy));
      opacity: 0.92;
    }
    .organizer-service-card-head,
    .organizer-service-config-head {
      display: flex;
      align-items: start;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .organizer-service-card-head strong,
    .organizer-service-config-head strong {
      color: var(--navy);
      font-size: 20px;
      line-height: 1.2;
    }
    .organizer-service-card-meta,
    .organizer-service-config-meta {
      display: grid;
      gap: 6px;
    }
    .organizer-service-price {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 8px 12px;
      border-radius: 999px;
      border: 1px solid rgba(201, 162, 39, 0.28);
      background: rgba(255,255,255,0.82);
      color: var(--navy);
      font-weight: 700;
      width: fit-content;
    }
    .organizer-service-list,
    .organizer-service-config-list {
      margin: 0;
      padding-left: 18px;
      display: grid;
      gap: 8px;
      color: var(--ink);
    }
    .organizer-service-list li::marker,
    .organizer-service-config-list li::marker {
      color: var(--gold);
    }
    .organizer-service-foot {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .organizer-service-foot .small {
      margin: 0;
    }
    .organizer-service-cart-shell {
      display: grid;
      grid-template-columns: minmax(0, 1.5fr) minmax(280px, 0.9fr);
      gap: 18px;
      align-items: start;
    }
    .organizer-service-cart-list,
    .organizer-service-cart-summary {
      display: grid;
      gap: 12px;
    }
    .organizer-service-cart-item,
    .organizer-service-cart-summary-grid article {
      border: 1px solid rgba(27, 42, 91, 0.12);
      border-radius: 16px;
      padding: 14px 16px;
      background: rgba(255,255,255,0.86);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
    }
    .organizer-service-cart-item-head {
      display: flex;
      align-items: start;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .organizer-service-cart-item-head strong {
      color: var(--navy);
      font-size: 18px;
    }
    .organizer-service-cart-summary-grid {
      display: grid;
      gap: 12px;
    }
    .organizer-service-cart-summary-grid span {
      display: block;
      font-size: 12px;
      color: var(--muted-text);
      text-transform: uppercase;
      letter-spacing: 0.06em;
      margin-bottom: 4px;
    }
    .organizer-service-cart-summary-grid strong {
      color: var(--navy);
      font-size: 22px;
      line-height: 1.2;
    }
    .organizer-service-cart-actions {
      justify-content: flex-end;
    }
    .organizer-service-empty {
      border: 1px dashed rgba(201, 162, 39, 0.28);
      border-radius: 16px;
      padding: 16px;
      background: rgba(255,255,255,0.76);
      color: var(--muted-text);
    }
    .organizer-service-config-card .small {
      margin: 0;
    }
    .portal-profile-button {
      min-height: 0;
      padding: 12px 14px;
      border-radius: 20px;
      border: 1px solid rgba(201, 162, 39, 0.22);
      background: linear-gradient(145deg, rgba(255,255,255,0.98), rgba(245,241,230,0.96));
      color: var(--ink);
      box-shadow: var(--shadow-soft);
      display: inline-flex;
      align-items: center;
      gap: 12px;
      min-width: min(100%, 280px);
      justify-content: flex-start;
    }
    .portal-profile-button:hover { box-shadow: 0 20px 34px rgba(16, 29, 63, 0.16); }
    .portal-profile-avatar {
      width: 48px;
      height: 48px;
      border-radius: 999px;
      background: linear-gradient(135deg, var(--primary-start), var(--red));
      color: var(--white);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 16px;
      font-weight: 700;
      box-shadow: 0 12px 20px rgba(27, 42, 91, 0.18);
      flex: 0 0 auto;
    }
    .portal-profile-meta { display: grid; gap: 3px; text-align: left; }
    .portal-profile-meta strong { color: var(--navy); font-size: 15px; }
    .portal-profile-meta span { color: var(--muted-text); font-size: 12px; line-height: 1.4; }
    .portal-toolbar { display: grid; gap: 18px; }
    .portal-filter-bar { display: grid; gap: 12px; position: relative; overflow: visible; z-index: 5; }
    .portal-article-filters {
      grid-template-columns: minmax(320px, 2.2fr) minmax(180px, 1fr) auto;
      align-items: start;
      gap: 14px;
      margin-bottom: 18px;
      overflow: visible;
    }
    .portal-article-search-control {
      min-width: 0;
    }
    .portal-article-search-control .portal-filter-label {
      text-align: left;
      justify-self: flex-start;
    }
    .portal-filter-control {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 6px;
      align-items: start;
      justify-items: stretch;
      color: var(--navy);
      font-weight: 700;
      text-align: center;
      position: relative;
      overflow: visible;
    }
    .portal-filter-label {
      display: block;
      width: 100%;
      margin: 0;
      color: inherit;
      font: inherit;
      font-weight: inherit;
      line-height: 1.2;
      text-align: center;
      justify-self: center;
      white-space: normal;
      overflow: visible;
      text-overflow: clip;
    }
    .portal-filter-control input,
    .portal-filter-control select {
      width: 100%;
      text-align: left;
    }
    .portal-article-filters .actions {
      justify-content: flex-end;
      align-self: end;
    }
    .portal-event-toolbar { display: grid; grid-template-columns: minmax(240px, 1fr) minmax(260px, 1fr) auto; gap: 14px; align-items: end; }
    .portal-event-toolbar .actions { justify-content: flex-end; }
    .portal-list-toolbar { align-items: end; gap: 16px; flex-wrap: wrap; }
    #portal-toolbar-actions {
      align-self: end;
    }
    .portal-author-shell-head {
      min-width: 0;
      margin: 0;
    }
    .portal-author-workspace-label,
    .portal-organizer-workspace-label {
      position: absolute;
      top: 26px;
      right: 50px;
      z-index: 4;
      color: var(--navy);
      font-family: var(--brand-display);
      font-size: var(--nib-ui-heading-2-size, 24px);
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.1;
      text-transform: none;
      white-space: nowrap;
    }
    .portal-author-shell-head h2 {
      margin: 0;
    }
    @media (max-width: 720px) {
      /* The floating top-right technique (shared with desktop, and with
         Chair/Reviewer/Track-Chair's headings) put every workspace heading
         at the same on-screen spot, but on mobile widths it either
         overlaps the welcome banner or ends up right-aligned in a way
         that reads awkwardly next to left-aligned content everywhere
         else. Drop back to normal document flow here: stack the heading
         below the banner, left-aligned, with clear vertical spacing. */
      .portal-author-workspace-label,
      .portal-organizer-workspace-label {
        position: static;
        display: block;
        top: auto;
        right: auto;
        font-size: 18px;
        line-height: 1.15;
        text-align: left;
        white-space: normal;
        margin: 10px 0 0;
      }
      /* #portal-organizer-shell is itself a grid with an 18px row-gap,
         which already provides consistent spacing between the welcome
         banner, the heading, and this shell-head -- Chair/Reviewer/
         Track-Chair get the same 18px via their own shell-head's internal
         grid gap. Organizer's shell-head and its actions child each carry
         their own negative margin-top (-10px / -14px) calibrated to pull
         content up under the old floating heading; those now fight the
         parent's natural gap instead of helping, so neutralize them
         rather than adding more spacing on top. #portal-control-bar
         (Author's parent) has no such row-gap, so it needs an explicit
         margin instead. */
      .portal-author-shell-head {
        width: 100%;
        margin-top: 18px;
      }
      .organizer-shell-head {
        margin-top: 0;
      }
      .organizer-shell-head > .organizer-shell-head-actions {
        margin-top: 0;
      }
    }
    .portal-table-controls {
      display: flex;
      align-items: end;
      gap: 14px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }
    .portal-table-footer {
      display: flex;
      justify-content: flex-end;
      margin-top: 16px;
    }
    .portal-table-controls label {
      min-width: 130px;
    }
    .portal-page-nav {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }
    .portal-page-nav .small {
      margin: 0;
      min-width: 104px;
      text-align: center;
    }
    .portal-article-panel { overflow: visible; position: relative; z-index: 1; }
    .portal-article-panel > .portal-table-wrap {
      overflow: visible;
      z-index: 4;
    }
    .portal-article-range { margin: 0 0 10px; }
    .portal-table-wrap {
      position: relative;
      overflow-x: auto;
      overflow-y: visible;
      width: 100%;
      max-width: 100%;
      z-index: 1;
      border: 1px solid var(--table-shell-border);
      border-radius: 18px;
      background: var(--table-shell-bg, var(--card-bg, var(--surface-bg)));
      box-shadow: var(--shadow-soft);
      backdrop-filter: blur(10px);
    }
    .portal-article-table { width: 100%; max-width: 100%; border-collapse: collapse; min-width: 0; table-layout: fixed; position: relative; isolation: isolate; }
    .portal-article-table th,
    .portal-article-table td {
      padding: 10px 12px;
      border-bottom: 1px solid var(--table-line, var(--table-shell-border, var(--secondary-border)));
      text-align: left;
      vertical-align: top;
      overflow-wrap: break-word;
      word-break: break-word;
      white-space: normal;
    }
    .portal-article-table th {
      color: var(--table-head-text);
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      background: var(--table-head-bg);
      box-shadow: inset 0 -1px 0 rgba(255,255,255,0.38);
    }
    .portal-article-table tbody tr:hover td { filter: saturate(1.03) brightness(0.985); }
    .portal-article-row {
      position: relative;
    }
    .portal-article-row.menu-open {
      z-index: 140;
    }
    .portal-article-row.menu-open td {
      position: relative;
      z-index: 2;
      filter: none !important;
    }
    .portal-article-row td {
      vertical-align: middle;
      border-bottom-color: var(--table-line-strong, var(--table-line, var(--table-shell-border, var(--secondary-border))));
      background: var(--row-tone-neutral);
      background-clip: padding-box;
      transition: background 160ms ease, box-shadow 160ms ease, filter 160ms ease;
    }
    .portal-status-cell,
    .portal-decision-cell {
      width: 132px;
    }
    .portal-files-cell { min-width: 0; }
    .portal-settings-header,
    .portal-settings-cell {
      width: 60px;
      padding-inline: 6px;
      position: relative;
      z-index: 1;
      text-align: center;
      vertical-align: middle;
      white-space: nowrap;
      overflow: visible;
    }
    .portal-settings-cell.menu-open {
      z-index: 180;
      isolation: isolate;
    }
    .portal-settings-cell.menu-open .portal-settings-stack,
    .portal-settings-cell.menu-open .portal-row-menu,
    .portal-settings-cell.menu-open .portal-row-actions {
      z-index: 80;
    }
    .portal-settings-stack {
      display: inline-flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 6px;
      min-width: 40px;
    }
    .portal-article-row td:first-child {
      box-shadow: inset 5px 0 0 transparent;
    }
    .portal-article-row.tone-neutral td {
      background: var(--row-tone-neutral);
    }
    .portal-article-row.tone-review td {
      background: var(--row-tone-review);
      color: var(--row-accent-review);
    }
    .portal-article-row.tone-review td:first-child {
      box-shadow: inset 5px 0 0 var(--row-accent-review);
    }
    .portal-article-row.tone-minor-revision td {
      background: var(--row-tone-minor-revision);
      color: var(--row-accent-minor-revision);
    }
    .portal-article-row.tone-minor-revision td:first-child {
      box-shadow: inset 5px 0 0 var(--row-accent-minor-revision);
    }
    .portal-article-row.tone-major-revision td {
      background: var(--row-tone-major-revision);
      color: var(--row-accent-major-revision);
    }
    .portal-article-row.tone-major-revision td:first-child {
      box-shadow: inset 5px 0 0 var(--row-accent-major-revision);
    }
    .portal-article-row.tone-accepted td {
      background: var(--row-tone-accepted);
      color: var(--row-accent-accepted);
    }
    .portal-article-row.tone-accepted td:first-child {
      box-shadow: inset 5px 0 0 var(--row-accent-accepted);
    }
    .portal-article-row.tone-rejected td {
      background: var(--row-tone-rejected);
      color: var(--row-accent-rejected);
    }
    .portal-article-row.tone-rejected td:first-child {
      box-shadow: inset 5px 0 0 var(--row-accent-rejected);
    }
    .portal-article-row.tone-incomplete td {
      background: var(--row-tone-incomplete);
    }
    .portal-article-row.tone-incomplete td:first-child {
      box-shadow: inset 5px 0 0 var(--row-accent-incomplete);
    }
    .portal-article-row--thread-child .portal-thread-child-blank-cell {
      color: transparent;
    }
    .portal-article-row--thread-child .portal-thread-child-blank-cell::before {
      display: none;
    }
    .portal-article-id-stack {
      display: grid;
      gap: 4px;
    }
    .portal-article-id-stack--inline {
      display: inline-flex;
      align-items: baseline;
      gap: 8px;
      flex-wrap: wrap;
    }
    .portal-article-id-main {
      color: var(--table-head-text);
      font-size: 14px;
      line-height: 1.25;
    }
    .portal-article-id-branch {
      color: var(--muted-text);
      font-size: 11.5px;
      line-height: 1.35;
      font-weight: 700;
    }
    .portal-article-id-stack--inline .portal-article-id-main,
    .portal-article-id-stack--inline .portal-article-id-branch {
      white-space: nowrap;
      word-break: normal;
    }
    .nibveda-thread-identity {
      --thread-depth: 0;
      display: flex;
      align-items: flex-start;
      gap: 10px;
      min-width: 0;
      padding-left: calc(var(--thread-depth) * 16px);
    }
    .nibveda-thread-toggle-slot {
      position: relative;
      flex: 0 0 28px;
      width: 28px;
      min-height: 28px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }
    .nibveda-thread-toggle-slot.is-child::before {
      content: "";
      position: absolute;
      inset: -12px auto -12px 50%;
      width: 1px;
      background: color-mix(in srgb, var(--navy) 18%, transparent);
      transform: translateX(-50%);
    }
    .nibveda-thread-toggle-slot.is-child::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 10px;
      border-top: 1px solid color-mix(in srgb, var(--navy) 20%, transparent);
      transform: translateY(-50%);
    }
    .nibveda-thread-node-dot {
      position: relative;
      z-index: 1;
      width: 10px;
      height: 10px;
      border-radius: 999px;
      border: 1px solid color-mix(in srgb, var(--navy) 28%, transparent);
      background: color-mix(in srgb, #ffffff 78%, var(--gold) 22%);
      box-shadow: 0 4px 10px rgba(16, 29, 63, 0.08);
    }
    .nibveda-thread-toggle {
      position: relative;
      z-index: 1;
      width: 28px;
      height: 28px;
      border: 1px solid color-mix(in srgb, var(--navy) 26%, transparent);
      border-radius: 10px;
      background: rgba(255,255,255,0.92);
      color: var(--navy);
      font-size: 16px;
      font-weight: 900;
      line-height: 1;
      cursor: pointer;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.8), 0 10px 20px rgba(16, 29, 63, 0.08);
      transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease, color 160ms ease;
    }
    .nibveda-thread-toggle:hover,
    .nibveda-thread-toggle:focus-visible,
    .nibveda-thread-toggle[aria-expanded="true"] {
      transform: translateY(-1px);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 14px 26px rgba(16, 29, 63, 0.12);
    }
    .nibveda-thread-toggle[aria-expanded="true"] {
      background: var(--navy);
      color: #ffffff;
    }
    .portal-article-title {
      display: grid;
      gap: 4px;
      min-height: 46px;
      align-content: center;
    }
    .portal-article-title strong {
      color: var(--table-head-text);
      font-size: 15px;
      line-height: 1.3;
    }
    .portal-article-title.title-medium strong { font-size: 14.2px; }
    .portal-article-title.title-long strong { font-size: 13.4px; line-height: 1.26; }
    .portal-article-title.title-xlong strong { font-size: 12.6px; line-height: 1.22; }
    .portal-article-title span { color: var(--muted-text); font-size: 12px; line-height: 1.45; }
    .portal-author-list-cell {
      color: var(--ink);
      font-size: 13px;
      line-height: 1.5;
      white-space: normal;
      overflow-wrap: anywhere;
    }
    .portal-inline-pill {
      display: inline-flex;
      align-items: center;
      border-radius: 999px;
      border: 1px solid rgba(201, 162, 39, 0.24);
      padding: 5px 10px;
      background: rgba(201, 162, 39, 0.12);
      color: var(--navy);
      font-size: 12px;
      font-weight: 700;
      white-space: nowrap;
    }
    .portal-file-links {
      display: flex;
      flex-wrap: wrap;
      gap: 5px;
      align-items: center;
    }
    .portal-file-empty {
      display: flex;
      flex-wrap: wrap;
      gap: 7px;
      align-items: center;
    }
    .portal-file-empty .small {
      margin: 0;
      font-size: 12px;
      color: var(--muted-text);
    }
    .nibveda-compact-button-table,
    .portal-file-chip,
    .portal-file-action {
      min-height: 0;
      min-width: 0;
      border-radius: 12px;
      border: 1px solid rgba(27, 42, 91, 0.18);
      background: rgba(255, 251, 245, 0.9);
      color: var(--navy);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.78), 0 10px 18px rgba(16, 29, 63, 0.08);
      transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease, background 160ms ease;
    }
    .nibveda-compact-button-table,
    .nibveda-compact-button-table .nib-ui-button__label,
    .nibveda-compact-button-table .nib-ui-button__leading-icon {
      color: var(--navy) !important;
    }
    .nibveda-compact-button-table:hover,
    .nibveda-compact-button-table:focus-visible,
    .portal-file-chip:hover,
    .portal-file-chip:focus-visible,
    .portal-file-action:hover,
    .portal-file-action:focus-visible {
      transform: translateY(-1px);
      border-color: rgba(27, 42, 91, 0.28);
      background: rgba(255, 253, 249, 0.98);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.86), 0 14px 22px rgba(16, 29, 63, 0.12);
    }
    .nibveda-compact-button-table:hover,
    .nibveda-compact-button-table:focus-visible,
    .nibveda-compact-button-table:hover .nib-ui-button__label,
    .nibveda-compact-button-table:focus-visible .nib-ui-button__label,
    .nibveda-compact-button-table:hover .nib-ui-button__leading-icon,
    .nibveda-compact-button-table:focus-visible .nib-ui-button__leading-icon {
      color: var(--navy) !important;
    }
    .portal-file-chip {
      display: grid;
      justify-items: flex-start;
      gap: 0;
      padding: 5px 8px 6px;
      width: min(100%, clamp(128px, 14vw, 156px));
      max-width: min(100%, clamp(128px, 14vw, 156px));
      text-align: left;
    }
    .portal-file-chip-meta {
      color: var(--red);
      font-size: 10px;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      line-height: 1.1;
    }
    .portal-file-chip-name {
      display: block;
      max-width: 100%;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      color: var(--navy);
      font-size: 12px;
      font-weight: 700;
      line-height: 1.25;
    }
    .portal-file-action {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: min(100%, clamp(158px, 17vw, 196px));
      max-width: 100%;
      min-height: 42px;
      padding: 7px 12px;
      font-size: 11.5px;
      font-weight: 700;
      line-height: 1.1;
      white-space: normal;
    }
    .portal-comment-actions {
      display: grid;
      gap: 6px;
      align-items: center;
      justify-items: flex-start;
    }
    .portal-remark-links {
      display: grid;
      gap: 6px;
      align-items: start;
      justify-items: flex-start;
    }
    .portal-remark-link {
      color: var(--navy);
      font-size: 12px;
      font-weight: 700;
      text-decoration: underline;
      text-underline-offset: 2px;
    }
    .portal-remark-link:hover,
    .portal-remark-link:focus-visible {
      color: var(--red);
    }
    .portal-article-timeline-row[hidden] {
      display: none;
    }
    .portal-article-timeline-row td {
      padding: 0 16px 12px;
      border-bottom: 1px solid var(--table-line, var(--table-shell-border, var(--secondary-border)));
      background: var(--surface-bg);
    }
    .portal-article-timeline-shell {
      border: 1px solid var(--timeline-shell-border);
      border-top: 0;
      border-radius: 0 0 16px 16px;
      background: var(--timeline-shell-bg);
      padding: 8px 12px 10px;
      display: grid;
      gap: 8px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
      overflow: hidden;
    }
    .portal-article-timeline-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      flex-wrap: wrap;
    }
    .portal-article-timeline-current {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }
    .portal-article-timeline-current span {
      color: var(--muted-text);
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      font-weight: 700;
    }
    .portal-article-timeline-meta {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }
    .portal-timeline-state-pill,
    .portal-timeline-step-pill {
      display: inline-flex;
      align-items: center;
      border-radius: 999px;
      padding: 6px 11px;
      border: 1px solid rgba(27, 42, 91, 0.12);
      background: rgba(27, 42, 91, 0.06);
      color: var(--navy);
      font-size: 12px;
      font-weight: 700;
      line-height: 1.3;
    }
    .portal-timeline-state-pill.incomplete_submission,
    .portal-timeline-step-pill.incomplete_submission { background: rgba(155, 27, 46, 0.08); color: #7d3041; border-color: rgba(155, 27, 46, 0.18); }
    .portal-timeline-state-pill.submission,
    .portal-timeline-step-pill.submission,
    .portal-timeline-state-pill.final_submission,
    .portal-timeline-step-pill.final_submission,
    .portal-timeline-state-pill.submitted,
    .portal-timeline-step-pill.submitted { background: rgba(27, 42, 91, 0.08); color: var(--navy); }
    .portal-timeline-state-pill.reviewer_assigned,
    .portal-timeline-step-pill.reviewer_assigned { background: rgba(83, 64, 157, 0.1); color: #553f97; border-color: rgba(83, 64, 157, 0.2); }
    .portal-timeline-state-pill.under_review,
    .portal-timeline-step-pill.under_review { background: rgba(83, 64, 157, 0.1); color: #553f97; border-color: rgba(83, 64, 157, 0.2); }
    .portal-timeline-state-pill.review_completed,
    .portal-timeline-step-pill.review_completed { background: rgba(83, 64, 157, 0.1); color: #553f97; border-color: rgba(83, 64, 157, 0.2); }
    .portal-timeline-state-pill.partial_decision,
    .portal-timeline-step-pill.partial_decision,
    .portal-timeline-state-pill.under_revision,
    .portal-timeline-step-pill.under_revision,
    .portal-timeline-state-pill.under_decision,
    .portal-timeline-step-pill.under_decision { background: rgba(201, 162, 39, 0.2); color: #6f5305; border-color: rgba(201, 162, 39, 0.34); }
    .portal-timeline-state-pill.accepted,
    .portal-timeline-step-pill.accepted,
    .portal-timeline-state-pill.rejected,
    .portal-timeline-step-pill.rejected,
    .portal-timeline-state-pill.decision,
    .portal-timeline-step-pill.decision,
    .portal-timeline-step-pill.final_decision { background: rgba(27, 42, 91, 0.09); color: var(--navy); border-color: rgba(27, 42, 91, 0.18); }
    .portal-timeline-track {
      display: grid;
      gap: 7px;
      min-width: 0;
      overflow-x: auto;
      overflow-y: hidden;
    }
    .portal-timeline-main-track {
      display: flex;
      align-items: flex-start;
      gap: 5px;
      flex-wrap: nowrap;
      min-width: 0;
    }
    .portal-timeline-step {
      display: inline-flex;
      align-items: flex-start;
      gap: 4px;
      min-height: 0;
      min-width: 0;
      flex: 0 0 auto;
    }
    .portal-timeline-step::after {
      content: "";
      width: 8px;
      height: 1px;
      background: var(--table-line, var(--table-shell-border, var(--secondary-border)));
      margin-top: 7px;
    }
    .portal-timeline-step:last-child::after {
      display: none;
    }
    .portal-timeline-step-pill {
      opacity: 0.28;
      transition: opacity 120ms ease, transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease, background 120ms ease, color 120ms ease;
    }
    .portal-timeline-step:not(.completed):not(.current) .portal-timeline-step-pill {
      background: rgba(255, 255, 255, 0.72) !important;
      color: rgba(27, 42, 91, 0.54) !important;
      border-color: rgba(27, 42, 91, 0.1) !important;
    }
    .portal-timeline-step.completed .portal-timeline-step-pill {
      opacity: 1;
      color: var(--navy);
      border-color: rgba(17, 26, 58, 0.24);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.62), 0 10px 18px rgba(17, 26, 58, 0.08);
    }
    .portal-timeline-step.current .portal-timeline-step-pill {
      opacity: 1;
      color: var(--navy);
      border-color: rgba(17, 26, 58, 0.28);
      transform: translateY(-1px);
      box-shadow: 0 12px 20px rgba(27, 42, 91, 0.14), inset 0 1px 0 rgba(255,255,255,0.62);
    }
    .portal-timeline-step {
      align-items: center;
    }
    .portal-timeline-step-marker {
      width: 11px;
      height: 11px;
      border-radius: 999px;
      border: 2px solid rgba(27, 42, 91, 0.18);
      background: rgba(255, 255, 255, 0.88);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.85);
      flex: 0 0 auto;
      position: relative;
      transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease, background 120ms ease;
    }
    .portal-timeline-step-label {
      font-size: 10px;
      font-weight: 700;
      color: var(--muted-text);
      line-height: 1.1;
      display: inline-flex;
      min-width: 0;
      max-width: none;
      white-space: nowrap;
      text-align: left;
      word-break: normal;
      overflow-wrap: normal;
    }
    .portal-timeline-step-marker.incomplete_submission { border-color: rgba(155, 27, 46, 0.22); background: rgba(155, 27, 46, 0.08); }
    .portal-timeline-step-marker.submission { border-color: rgba(27, 42, 91, 0.18); background: rgba(27, 42, 91, 0.08); }
    .portal-timeline-step-marker.reviewer_assigned,
    .portal-timeline-step-marker.under_review,
    .portal-timeline-step-marker.review_completed { border-color: rgba(83, 64, 157, 0.28); background: rgba(83, 64, 157, 0.12); }
    .portal-timeline-step-marker.under_decision { border-color: rgba(201, 162, 39, 0.34); background: rgba(201, 162, 39, 0.22); }
    .portal-timeline-step-marker.decision,
    .portal-timeline-step-marker.accepted,
    .portal-timeline-step-marker.rejected,
    .portal-timeline-step-marker.major_revision,
    .portal-timeline-step-marker.minor_revision,
    .portal-timeline-step-marker.final_submission { border-color: rgba(27, 42, 91, 0.24); background: rgba(27, 42, 91, 0.1); }
    .portal-timeline-step.completed .portal-timeline-step-marker {
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 0 0 3px rgba(27, 42, 91, 0.06);
    }
    .portal-timeline-step:not(.completed):not(.current) .portal-timeline-step-marker {
      border-color: rgba(27, 42, 91, 0.12) !important;
      background: rgba(255, 255, 255, 0.82) !important;
      box-shadow: none;
    }
    .portal-timeline-step.completed .portal-timeline-step-label,
    .portal-timeline-step.current .portal-timeline-step-label {
      color: var(--navy);
    }
    .portal-timeline-step.current .portal-timeline-step-marker {
      transform: scale(1.15);
      border-color: var(--navy);
      background: var(--navy);
      box-shadow: 0 8px 16px rgba(27, 42, 91, 0.28), inset 0 1px 0 rgba(255,255,255,0.35);
    }
    .portal-timeline-step-marker.goal::after {
      content: "";
      position: absolute;
      inset: -4px;
      border-radius: 999px;
      border: 2px solid var(--navy);
      opacity: 0.72;
    }
    .portal-timeline-step.completed::after,
    .portal-timeline-step.current::after {
      background: rgba(27, 42, 91, 0.2);
    }
    .portal-timeline-cell {
      padding: 10px 12px;
      vertical-align: top;
    }
    .portal-comment-cell {
      padding: 10px 12px;
      vertical-align: top;
      line-height: 1.5;
    }
    .portal-feedback-link {
      min-height: 0;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: var(--red);
      box-shadow: none;
      font-size: 13px;
      text-decoration: underline;
      text-decoration-thickness: 1px;
      text-underline-offset: 3px;
    }
    .portal-feedback-link[disabled] {
      opacity: 0.6;
      cursor: not-allowed;
      text-decoration: none;
      color: var(--muted-text);
    }
    .portal-feedback-link:hover,
    .portal-feedback-link:focus-visible {
      transform: none;
      box-shadow: none;
      color: var(--navy);
    }
    .article-decision-pill,
    .article-status-pill {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 999px;
      padding: 6px 12px;
      border: 1px solid rgba(255, 255, 255, 0.52);
      background: rgba(255, 251, 245, 0.84);
      color: var(--navy);
      font-size: 12px;
      font-weight: 700;
      line-height: 1.25;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 8px 14px rgba(16, 29, 63, 0.08);
      backdrop-filter: blur(8px);
    }
    .article-decision-pill {
      text-align: left;
    }
    .article-status-pill {
      text-transform: uppercase;
      letter-spacing: 0.04em;
      text-align: center;
    }
    .article-decision-pill.accepted { background: rgba(221, 247, 231, 0.92); color: #156f49; border-color: rgba(21, 111, 73, 0.34); }
    .article-decision-pill.rejected,
    .article-decision-pill.desk-reject { background: rgba(249, 224, 229, 0.92); color: #94304b; border-color: rgba(148, 48, 75, 0.34); }
    .article-decision-pill.revision,
    .article-decision-pill.minor-revision { background: rgba(252, 236, 215, 0.94); color: #8b4f18; border-color: rgba(179, 118, 49, 0.34); }
    .article-decision-pill.major-revision { background: rgba(248, 225, 189, 0.96); color: #8a4c12; border-color: rgba(179, 118, 49, 0.4); }
    .article-decision-pill.review { background: rgba(252, 236, 215, 0.94); color: #8b4f18; border-color: rgba(179, 118, 49, 0.34); }
    .portal-decision-pending-note {
      display: block;
      margin-top: 5px;
      color: var(--red);
      font-size: 10.5px;
      font-weight: 800;
      line-height: 1.3;
      letter-spacing: 0.03em;
      text-transform: uppercase;
      animation: portal-lock-blink 1.25s ease-in-out infinite;
    }
    .article-status-pill.submission,
    .article-status-pill.final_submission,
    .article-status-pill.submitted { background: rgba(252, 236, 215, 0.94); color: #8b4f18; border-color: rgba(179, 118, 49, 0.32); }
    .article-status-pill.draft,
    .article-status-pill.incomplete_submission { background: rgba(249, 224, 229, 0.92); color: #8e334c; border-color: rgba(148, 48, 75, 0.32); }
    .article-status-pill.withdrawn { background: rgba(249, 224, 229, 0.92); color: #94304b; border-color: rgba(148, 48, 75, 0.34); }
    .article-status-pill.reviewer_assigned,
    .article-status-pill.review_completed,
    .article-status-pill.under_review,
    .article-status-pill.under_decision,
    .article-status-pill.decision,
    .article-status-pill.partial_decision,
    .article-status-pill.under_revision { background: rgba(252, 236, 215, 0.94); color: #8b4f18; border-color: rgba(179, 118, 49, 0.34); }
    .article-status-pill.accepted,
    .article-status-pill.final { background: rgba(221, 247, 231, 0.92); color: #156f49; border-color: rgba(21, 111, 73, 0.32); }
    .article-status-pill.rejected { background: rgba(249, 224, 229, 0.92); color: #94304b; border-color: rgba(148, 48, 75, 0.34); }
    .portal-row-menu { position: relative; display: inline-flex; flex-direction: column; align-items: flex-start; z-index: 6; }
    .portal-row-menu summary::-webkit-details-marker { display: none; }
    .portal-row-menu[open] { z-index: 64; }
    .portal-row-summary.nib-ui-icon-button {
      width: 40px;
      min-width: 40px;
      height: 40px;
      min-height: 40px;
    }
    .portal-row-summary {
      list-style: none;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 40px;
      height: 40px;
      min-height: 40px;
      padding: 0;
      border-radius: 999px;
      border: 1px solid rgba(201, 162, 39, 0.24);
      background: linear-gradient(135deg, var(--primary-start) 0%, var(--red) 100%);
      color: #ffffff;
      box-shadow: 0 14px 24px rgba(16, 29, 63, 0.16);
      cursor: pointer;
      font-weight: 700;
      font-size: 12px;
      transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease, background 160ms ease;
    }
    .portal-row-summary:hover,
    .portal-row-menu[open] .portal-row-summary {
      transform: translateY(-1px);
      box-shadow: 0 22px 34px rgba(16, 29, 63, 0.22);
    }
    .ui-hamburger-lines {
      width: 22px;
      height: 16px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      position: relative;
      color: currentColor;
    }
    .ui-hamburger-lines::before,
    .ui-hamburger-lines::after,
    .ui-hamburger-lines span {
      content: "";
      position: absolute;
      left: 0;
      width: 22px;
      height: 3px;
      border-radius: 999px;
      background: currentColor;
    }
    .ui-hamburger-lines::before { top: 0; }
    .ui-hamburger-lines span { top: 6px; }
    .ui-hamburger-lines::after { top: 12px; }
    .ui-hamburger-button {
      isolation: isolate;
    }
    .portal-inline-timeline-toggle.nib-ui-icon-button {
      width: 46px;
      min-width: 46px;
      height: 34px;
      min-height: 34px;
    }
    .portal-inline-timeline-toggle {
      margin-top: 8px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 46px;
      height: 34px;
      min-height: 34px;
      padding: 0;
      border-radius: 12px;
      border: 1px solid var(--secondary-border);
      background: var(--secondary-bg);
      color: var(--secondary-text);
      box-shadow: var(--secondary-shadow);
      cursor: pointer;
      transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
    }
    .portal-inline-timeline-toggle:hover,
    .portal-inline-timeline-toggle[aria-expanded="true"] {
      transform: translateY(-1px);
      box-shadow: 0 18px 28px rgba(16, 29, 63, 0.12);
    }
    .portal-inline-timeline-toggle img {
      width: 20px;
      height: 20px;
      display: block;
      filter: var(--toolbar-icon-filter, none);
    }
    .portal-row-actions {
      position: absolute;
      top: 0;
      left: calc(100% + 6px);
      right: auto;
      min-width: 156px;
      width: min(168px, calc(100vw - 40px));
      max-width: min(168px, calc(100vw - 40px));
      box-sizing: border-box;
      padding: 4px;
      border-radius: 11px;
      border: 1px solid var(--row-menu-panel-border);
      background: color-mix(in srgb, var(--row-menu-panel-bg, rgba(255,255,255,0.96)) 96%, white 4%);
      box-shadow: 0 18px 32px rgba(16, 29, 63, 0.2), inset 0 1px 0 rgba(255,255,255,0.76);
      backdrop-filter: none;
      display: grid;
      gap: 2px;
      z-index: 220;
      isolation: isolate;
      overflow: hidden;
    }
    .portal-row-actions::before {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: -8px;
      width: 8px;
    }
    .portal-article-table[data-table-key="author-my-submissions"] .portal-article-row,
    .portal-article-table[data-table-key="author-my-submissions"] .portal-article-row td,
    .portal-article-table[data-table-key="author-my-submissions"] .portal-settings-cell {
      overflow: visible;
    }
    .portal-article-table[data-table-key="author-my-submissions"] .portal-article-row.menu-open {
      z-index: 320;
    }
    .portal-article-table[data-table-key="author-my-submissions"] .portal-settings-cell.menu-open {
      z-index: 360;
    }
    .portal-article-table[data-table-key="author-my-submissions"] .portal-settings-stack {
      position: relative;
      overflow: visible;
      z-index: 240;
    }
    .portal-article-table[data-table-key="author-my-submissions"] .portal-row-menu[open] {
      z-index: 420;
    }
    .portal-article-table[data-table-key="author-my-submissions"] .portal-row-actions {
      z-index: 430;
    }
    .portal-row-actions button,
    .portal-row-actions a {
      min-height: 34px;
      width: 100%;
      justify-content: flex-start;
      border-radius: 9px;
      padding: 6px 8px;
      font-size: 12px;
      line-height: 1.35;
      white-space: normal;
      text-align: left;
      background: var(--row-menu-item-bg);
      border-color: var(--row-menu-item-border, var(--row-menu-panel-border, var(--secondary-border)));
      color: var(--row-menu-item-text, var(--table-head-text, var(--ink)));
      font-weight: 700;
      box-shadow: none;
    }
    .portal-row-actions button:hover,
    .portal-row-actions a:hover,
    .portal-row-actions button:focus-visible,
    .portal-row-actions a:focus-visible {
      background: var(--row-menu-item-hover);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.72), 0 10px 18px rgba(16, 29, 63, 0.08);
    }
    @media (max-width: 920px) and (min-width: 721px) {
      .portal-row-actions {
        top: 0;
        left: calc(100% + 8px);
        right: auto;
      }
    }
    .nib-has-tooltip {
      position: relative;
    }
    .nib-has-tooltip::after {
      content: attr(data-tooltip);
      position: absolute;
      left: 50%;
      bottom: calc(100% + 10px);
      width: max-content;
      max-width: min(300px, calc(100vw - 32px));
      transform: translateX(-50%) translateY(4px);
      padding: 8px 10px;
      border-radius: 10px;
      border: 1px solid var(--secondary-border);
      background: var(--theme-menu-bg);
      color: var(--ink);
      box-shadow: var(--theme-menu-shadow);
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 12px;
      font-weight: 700;
      line-height: 1.35;
      text-align: left;
      white-space: normal;
      opacity: 0;
      pointer-events: none;
      z-index: 90;
      transition: opacity 140ms ease, transform 140ms ease;
    }
    .nib-has-tooltip:hover::after,
    .nib-has-tooltip:focus-visible::after {
      opacity: 1;
      transform: translateX(-50%) translateY(0);
    }
    @keyframes portal-lock-blink {
      0%, 100% { opacity: 1; transform: translateY(0); }
      50% { opacity: 0.48; transform: translateY(-1px); }
    }
    .submission-lock-note {
      margin: 0;
      color: var(--red);
      font-size: 13px;
      font-weight: 800;
      line-height: 1.45;
      padding: 10px 12px;
      border-radius: 13px;
      border: 1px solid color-mix(in srgb, var(--red) 28%, transparent);
      background: color-mix(in srgb, var(--cream) 68%, #ffffff 32%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.78), 0 10px 18px rgba(16, 29, 63, 0.08);
      animation: portal-lock-blink 1.25s ease-in-out infinite;
    }
    .portal-row-note {
      color: var(--muted-text);
      font-size: 11px;
      line-height: 1.5;
      padding: 6px 8px;
      border-radius: 9px;
      border: 1px dashed var(--secondary-border);
      background: rgba(255,255,255,0.72);
    }
    .portal-dialog-overlay {
      position: fixed;
      inset: 0;
      display: none;
      z-index: 150;
      padding: 14px;
      overflow: auto;
    }
    .portal-dialog-overlay.open {
      display: grid;
      place-items: center;
    }
    .portal-dialog-backdrop {
      position: absolute;
      inset: 0;
      background: rgba(17, 28, 59, 0.42);
      backdrop-filter: blur(8px);
    }
    .portal-dialog-panel {
      position: relative;
      width: min(560px, calc(100vw - 20px));
      max-height: calc(100vh - 28px);
      border-radius: 26px;
      border: 1px solid rgba(255, 255, 255, 0.34);
      background:
        linear-gradient(160deg, rgba(255,255,255,0.98), rgba(245,241,230,0.96)),
        linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0));
      box-shadow: 0 28px 60px rgba(10, 19, 44, 0.26);
      overflow: hidden;
      display: grid;
      grid-template-rows: auto minmax(0, 1fr);
    }
    .portal-dialog-overlay.reviewer-review-dialog-open .portal-dialog-panel {
      width: min(940px, calc(100vw - 28px));
      max-height: calc(100vh - 32px);
      display: grid;
      grid-template-rows: auto minmax(0, 1fr);
    }
    .portal-dialog-overlay.reviewer-review-dialog-open .portal-dialog-body {
      max-height: calc(100vh - 126px);
      overflow: auto;
      gap: 12px;
      padding-bottom: 14px;
    }
    .portal-dialog-overlay.reviewer-review-dialog-open .portal-dialog-summary {
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 8px;
    }
    .portal-dialog-overlay.reviewer-review-dialog-open .portal-dialog-summary-item {
      padding: 10px 12px;
      border-radius: 14px;
    }
    .portal-dialog-overlay.reviewer-review-dialog-open .portal-dialog-warning {
      padding: 12px 14px;
      border-radius: 14px;
      gap: 6px;
    }
    .portal-dialog-overlay.reviewer-review-dialog-open .portal-dialog-note {
      padding: 10px;
    }
    .portal-dialog-overlay.reviewer-review-dialog-open .portal-dialog-actions {
      position: sticky;
      bottom: 0;
      z-index: 2;
      padding: 10px 0 0;
      background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,253,247,0.96) 28%, rgba(255,253,247,0.98));
    }
    .portal-dialog-panel::before {
      content: "";
      position: absolute;
      inset: 0 auto auto 0;
      width: 100%;
      height: 4px;
      background: linear-gradient(90deg, var(--red), var(--gold), var(--primary-start));
      opacity: 0.96;
    }
    .portal-dialog-head {
      padding: 24px 24px 0;
      display: flex;
      align-items: start;
      justify-content: space-between;
      gap: 16px;
    }
    .portal-dialog-head h2 {
      margin: 0;
      color: var(--navy);
    }
    .portal-dialog-close {
      min-width: 42px;
      min-height: 42px;
      border-radius: 999px;
      background: var(--secondary-bg);
      color: var(--secondary-text);
      border-color: var(--secondary-border);
      box-shadow: var(--shadow-soft);
    }
    .portal-dialog-body {
      padding: 18px 24px 24px;
      display: grid;
      gap: 18px;
      overflow: auto;
      max-height: calc(100vh - 132px);
    }
    .portal-dialog-warning {
      border: 1px solid rgba(155, 27, 46, 0.16);
      border-radius: 18px;
      background: linear-gradient(135deg, rgba(155, 27, 46, 0.08), rgba(201, 162, 39, 0.1));
      padding: 18px;
      display: grid;
      gap: 10px;
    }
    .portal-dialog-warning strong {
      color: var(--red);
      font-size: 16px;
    }
    .portal-dialog-summary {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }
    .portal-dialog-summary-item {
      border: 1px solid var(--surface-border);
      border-radius: 16px;
      background: rgba(255,255,255,0.9);
      padding: 14px;
      display: grid;
      gap: 4px;
    }
    .portal-dialog-summary-item span {
      color: var(--muted-text);
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      font-weight: 700;
    }
    .portal-dialog-summary-item strong {
      color: var(--navy);
      font-size: 15px;
      line-height: 1.45;
      word-break: break-word;
    }
    .portal-dialog-note {
      border-radius: 16px;
      background: rgba(27, 42, 91, 0.05);
      padding: 14px 16px;
      color: var(--muted-text);
      font-size: 13px;
      line-height: 1.6;
    }
    .portal-upload-confirm-shell {
      display: grid;
      gap: 12px;
    }
    .portal-upload-confirm-label {
      display: grid;
      gap: 8px;
      color: var(--navy);
      font-weight: 700;
    }
    .portal-upload-confirm-label span {
      color: var(--muted-text);
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
    }
    .portal-upload-confirm-label input[type="file"] {
      width: 100%;
      max-width: 100%;
    }
    .portal-upload-confirm-file-status {
      margin: 0;
      color: var(--muted-text);
      font-size: 12px;
      line-height: 1.5;
    }
    .revision-drawer-summary-shell,
    .revision-drawer-history-shell,
    .revision-drawer-upload-shell {
      display: grid;
      gap: 14px;
      border-radius: 18px;
      border: 1px solid rgba(201, 162, 39, 0.16);
      background: rgba(255, 255, 255, 0.88);
      padding: 18px;
      box-shadow: var(--shadow-soft);
    }
    .revision-drawer-summary {
      gap: 12px;
    }
    .revision-drawer-summary-item strong {
      word-break: break-word;
    }
    .revision-drawer-route {
      display: grid;
      gap: 10px;
    }
    .revision-drawer-route strong,
    .revision-drawer-history-head strong,
    .revision-drawer-upload-head strong {
      color: var(--navy);
      font-size: 14px;
      line-height: 1.35;
    }
    .revision-drawer-route-list {
      display: grid;
      gap: 8px;
    }
    .revision-drawer-route-chip {
      display: inline-flex;
      align-items: center;
      justify-content: flex-start;
      width: fit-content;
      max-width: 100%;
      border-radius: 999px;
      border: 1px solid rgba(27, 42, 91, 0.14);
      background: rgba(27, 42, 91, 0.06);
      color: var(--navy);
      padding: 8px 14px;
      font-size: 12px;
      font-weight: 700;
      line-height: 1.3;
      word-break: break-word;
    }
    .revision-drawer-route-chip--child {
      background: rgba(155, 27, 46, 0.08);
      border-color: rgba(155, 27, 46, 0.18);
      color: var(--red);
    }
    .revision-drawer-history-head,
    .revision-drawer-upload-head {
      display: grid;
      gap: 6px;
    }
    .revision-drawer-upload-panel {
      display: grid;
      gap: 12px;
    }
    .revision-drawer-upload-panel + .revision-drawer-upload-panel {
      padding-top: 10px;
      border-top: 1px solid rgba(27, 42, 91, 0.08);
    }
    .revision-drawer-upload-actions {
      padding-top: 2px;
    }
    .portal-upload-confirm-preview,
    .portal-registration-confirm-preview {
      display: grid;
      gap: 10px;
      border-radius: 16px;
      border: 1px solid rgba(27, 42, 91, 0.12);
      background: rgba(255, 255, 255, 0.78);
      padding: 14px 16px;
    }
    .portal-upload-confirm-preview strong,
    .portal-registration-confirm-preview strong {
      color: var(--navy);
      font-size: 14px;
      line-height: 1.4;
    }
    .portal-upload-confirm-preview-list,
    .portal-registration-confirm-preview-list {
      display: grid;
      gap: 8px;
    }
    .portal-upload-confirm-preview-row,
    .portal-registration-confirm-preview-row {
      display: grid;
      gap: 4px;
    }
    .portal-upload-confirm-preview-row span,
    .portal-registration-confirm-preview-row span {
      color: var(--muted-text);
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
    }
    .portal-upload-confirm-preview-row strong,
    .portal-registration-confirm-preview-row strong {
      font-size: 14px;
      word-break: break-word;
    }
    .portal-upload-confirm-preview-links,
    .portal-registration-confirm-preview-links {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      align-items: center;
    }
    .portal-upload-confirm-preview-link,
    .portal-registration-confirm-preview-link {
      color: var(--navy);
      font-size: 13px;
      font-weight: 700;
      text-decoration: underline;
      text-underline-offset: 2px;
    }
    .portal-registration-confirm-preview-note {
      margin: 0;
      color: var(--muted-text);
      font-size: 12px;
      line-height: 1.55;
    }
    .portal-dialog-actions {
      display: flex;
      gap: 12px;
      justify-content: flex-end;
      flex-wrap: wrap;
      position: sticky;
      bottom: 0;
      z-index: 2;
      padding-top: 10px;
      background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,253,247,0.95) 30%, rgba(255,253,247,0.98));
    }
    .portal-dialog-actions .danger {
      border-color: rgba(155, 27, 46, 0.7);
      background: linear-gradient(135deg, #8f1b35 0%, #b6324d 100%);
      color: #ffffff;
      box-shadow: 0 16px 28px rgba(155, 27, 46, 0.22);
    }
    .portal-feedback-dialog .portal-dialog-panel {
      width: min(760px, calc(100vw - 28px));
    }
    .portal-feedback-list {
      display: grid;
      gap: 14px;
    }
    .portal-feedback-card {
      border: 1px solid var(--surface-border);
      border-radius: 18px;
      background: rgba(255,255,255,0.92);
      padding: 16px;
      display: grid;
      gap: 12px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.78);
    }
    .portal-feedback-card-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .portal-feedback-card-head strong {
      color: var(--navy);
      font-size: 16px;
    }
    .portal-feedback-card-meta {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      align-items: center;
    }
    .portal-feedback-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }
    .portal-feedback-grid article {
      border: 1px solid rgba(27, 42, 91, 0.08);
      border-radius: 14px;
      background: rgba(245,241,230,0.54);
      padding: 12px;
      display: grid;
      gap: 6px;
    }
    .portal-feedback-grid span {
      color: var(--muted-text);
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      font-weight: 700;
    }
    .portal-meta-item {
      display: grid;
      gap: 5px;
      align-content: center;
    }
    .portal-meta-item span,
    .portal-meta-item strong {
      display: block;
    }
    .portal-feedback-grid p,
    .portal-feedback-note {
      margin: 0;
      color: var(--ink);
      font-size: 13px;
      line-height: 1.6;
    }
    .profile-drawer-panel { width: min(85vw, calc(100vw - 12px)); max-width: 100vw; }
    .author-email-box-drawer-panel { width: min(92vw, 1120px); max-width: 100vw; position: relative; overflow: hidden; }
    .contact-chair-drawer-panel { width: min(85vw, calc(100vw - 12px)); max-width: 100vw; }
    .contact-chair-drawer-panel textarea { min-height: 220px; }
    .author-email-box-body-shell {
      --author-email-reader-width: clamp(360px, 40%, 520px);
      position: relative;
      gap: 10px;
      min-height: min(72vh, 760px);
      padding-top: 12px;
    }
    .author-email-box-layout {
      display: block;
      margin-top: 2px;
      max-width: 100%;
      transition: max-width 180ms ease;
    }
    .author-email-box-body-shell > .message {
      width: 100%;
      max-width: 100%;
      transition: max-width 180ms ease;
    }
    .author-email-box-body-shell.reader-open > .message {
      max-width: calc(100% - var(--author-email-reader-width) - 18px);
    }
    .author-email-box-body-shell.reader-open .author-email-box-layout {
      max-width: calc(100% - var(--author-email-reader-width) - 18px);
    }
    .author-email-box-list-panel {
      border: 1px solid var(--surface-border);
      border-radius: 18px;
      background: color-mix(in srgb, var(--surface-bg-strong, #ffffff) 92%, var(--cream) 8%);
      box-shadow: 0 16px 30px rgba(18, 32, 68, 0.08);
      padding: 14px 16px 16px;
    }
    .author-email-box-list-head {
      display: grid;
      gap: 12px;
      justify-items: stretch;
      align-items: start;
      margin-bottom: 8px;
    }
    .author-email-box-list-search-row {
      width: 100%;
      display: flex;
      justify-content: center;
    }
    .author-email-box-list-search-field {
      width: min(100%, 920px);
      min-width: 0;
      display: grid;
      gap: 6px;
    }
    .author-email-box-list-search-field input[type="search"] {
      margin-top: 0;
      width: 100%;
      min-height: 48px;
      box-sizing: border-box;
    }
    .author-email-box-list-head-copy {
      width: 100%;
      display: flex;
      align-items: start;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .author-email-box-list-count {
      display: block;
      width: 100%;
      text-align: left;
    }
    .author-email-box-pagination {
      display: inline-flex;
      align-items: center;
      justify-content: flex-end;
      gap: 8px;
      flex-wrap: wrap;
      min-width: 0;
      margin-left: auto;
    }
    .author-email-box-pagination-button {
      min-height: 34px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 6px 12px;
      border-radius: 999px;
      border: 1px solid color-mix(in srgb, var(--surface-border) 88%, transparent);
      background: rgba(255,255,255,0.92);
      color: var(--navy);
      font-size: 12px;
      font-weight: 800;
      line-height: 1;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.84);
      transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease, color 160ms ease;
    }
    .author-email-box-pagination-button:hover:not(:disabled),
    .author-email-box-pagination-button:focus-visible {
      border-color: color-mix(in srgb, var(--navy) 24%, transparent);
      box-shadow: 0 8px 18px rgba(17, 31, 63, 0.08);
      outline: none;
    }
    .author-email-box-pagination-button:disabled {
      opacity: 0.48;
      cursor: default;
      box-shadow: none;
    }
    .author-email-box-pagination-summary {
      color: var(--muted-text);
      font-size: 12px;
      font-weight: 800;
      white-space: nowrap;
    }
    .author-email-box-tabs {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
    }
    .author-email-box-tab {
      min-height: 40px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 6px 14px;
      border-radius: 999px;
      border: 1px solid color-mix(in srgb, var(--surface-border) 88%, transparent);
      background: rgba(255,255,255,0.9);
      color: var(--navy);
      font-size: 13px;
      font-weight: 800;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82);
      transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease, transform 160ms ease;
    }
    .author-email-box-tab:hover,
    .author-email-box-tab:focus-visible {
      transform: translateY(-1px);
      border-color: color-mix(in srgb, var(--navy) 24%, transparent);
      box-shadow: 0 10px 20px rgba(17, 31, 63, 0.08);
      outline: none;
    }
    .author-email-box-tab.is-active {
      border-color: color-mix(in srgb, var(--navy) 34%, transparent);
      background: linear-gradient(180deg, rgba(240, 245, 252, 0.98), rgba(229, 237, 248, 0.94));
      box-shadow: 0 12px 22px rgba(17, 31, 63, 0.1);
    }
    .author-email-box-tab-count {
      min-width: 24px;
      height: 24px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 7px;
      border-radius: 999px;
      background: color-mix(in srgb, var(--navy) 94%, white 6%);
      color: #ffffff;
      font-size: 11px;
      font-weight: 800;
      line-height: 1;
    }
    .author-email-box-list {
      display: grid;
      gap: 8px;
      justify-items: stretch;
      max-height: 60vh;
      overflow: auto;
      padding-right: 4px;
    }
    .author-email-box-empty,
    .author-email-box-reader-empty {
      display: grid;
      gap: 8px;
      padding: 22px 18px;
      border-radius: 16px;
      border: 1px dashed color-mix(in srgb, var(--surface-border) 72%, transparent);
      background: linear-gradient(180deg, rgba(255,255,255,0.86), rgba(246,248,252,0.96));
      color: var(--muted-text);
    }
    .author-email-box-reader-empty {
      align-content: center;
      justify-items: start;
      min-height: 320px;
    }
    .author-email-box-card {
      appearance: none;
      -webkit-appearance: none;
      width: 100%;
      box-sizing: border-box;
      min-height: 0;
      cursor: pointer;
      border: 1px solid color-mix(in srgb, var(--surface-border) 84%, transparent) !important;
      border-radius: 14px;
      background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,250,253,0.96)) !important;
      color: var(--navy) !important;
      -webkit-text-fill-color: currentColor;
      box-shadow: 0 6px 16px rgba(17, 31, 63, 0.06);
      display: block !important;
      overflow: visible;
      text-align: left !important;
      padding: 12px 14px;
      transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease, background 160ms ease;
    }
    .author-email-box-card:hover,
    .author-email-box-card:focus-visible {
      transform: translateY(-1px);
      border-color: color-mix(in srgb, var(--navy) 26%, transparent);
      box-shadow: 0 12px 24px rgba(17, 31, 63, 0.1);
      outline: none;
    }
    .author-email-box-card.is-selected {
      border-color: color-mix(in srgb, var(--navy) 34%, transparent);
      background: linear-gradient(180deg, rgba(242,246,252,0.98), rgba(233,240,249,0.92));
      box-shadow: 0 14px 24px rgba(17, 31, 63, 0.12);
    }
    .author-email-box-card.is-unread {
      border-color: color-mix(in srgb, var(--gold, #c9a227) 34%, transparent);
      background: linear-gradient(180deg, rgba(255,255,255,0.99), rgba(255,250,240,0.96));
      box-shadow: inset 4px 0 0 color-mix(in srgb, var(--gold, #c9a227) 64%, transparent), 0 8px 18px rgba(17, 31, 63, 0.06);
    }
    .author-email-box-card-status,
    .author-email-box-reader-title-row {
      display: flex;
      gap: 10px;
      align-items: start;
      justify-content: space-between;
      flex-wrap: wrap;
    }
    .author-email-box-card-main {
      width: 100%;
      display: flex;
      justify-content: space-between;
      align-items: start;
      gap: 16px;
      min-width: 0;
    }
    .author-email-box-card-copy {
      display: grid;
      gap: 6px;
      flex: 1 1 auto;
      min-width: 0;
      width: 100%;
      max-width: none;
      justify-items: start;
      align-self: start;
      text-align: left !important;
    }
    .author-email-box-card-badges {
      display: inline-flex;
      gap: 8px;
      flex-wrap: wrap;
      align-items: center;
      justify-content: flex-end;
      flex: 0 0 auto;
      margin-left: auto;
      align-self: start;
    }
    .author-email-box-card-subject {
      display: block;
      min-width: 0;
      width: 100%;
      color: var(--navy);
      font-size: 14px;
      line-height: 1.35;
      font-weight: 700;
      white-space: normal;
      overflow: hidden;
      overflow-wrap: anywhere;
      text-align: left;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
    }
    .author-email-box-card.is-unread .author-email-box-card-subject {
      font-weight: 800;
    }
    .author-email-box-card-meta {
      display: block;
      width: 100%;
      color: var(--muted-text);
      font-size: 12px;
      font-weight: 700;
      line-height: 1.55;
      text-align: left;
      white-space: normal;
      overflow-wrap: anywhere;
    }
    .author-email-box-card.is-unread .author-email-box-card-meta {
      color: color-mix(in srgb, var(--navy) 88%, var(--red) 12%);
    }
    .author-email-box-state-dot {
      width: 10px;
      height: 10px;
      border-radius: 999px;
      flex: 0 0 auto;
      background: color-mix(in srgb, var(--surface-border) 72%, transparent);
      box-shadow: inset 0 0 0 1px rgba(17, 31, 63, 0.08);
    }
    .author-email-box-state-dot--unread {
      background: linear-gradient(135deg, var(--gold, #c9a227), var(--red, #9b1b2e));
      box-shadow: 0 0 0 4px rgba(201, 162, 39, 0.12);
    }
    .author-email-box-state-dot--neutral {
      background: color-mix(in srgb, var(--navy) 16%, white 84%);
      box-shadow: inset 0 0 0 1px rgba(17, 31, 63, 0.1);
    }
    .author-email-box-card-snippet {
      color: var(--ink);
      font-size: 13px;
      line-height: 1.65;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 3;
      overflow: hidden;
    }
    .author-email-box-badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 5px 10px;
      border-radius: 999px;
      border: 1px solid transparent;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.02em;
      white-space: nowrap;
    }
    .author-email-box-badge--read {
      color: #155a36;
      border-color: rgba(33, 132, 82, 0.2);
      background: rgba(221, 247, 231, 0.96);
    }
    .author-email-box-badge--queued {
      color: #184f86;
      border-color: rgba(32, 104, 170, 0.22);
      background: rgba(227, 240, 252, 0.98);
    }
    .author-email-box-badge--draft {
      color: #8a4217;
      border-color: rgba(191, 108, 51, 0.22);
      background: rgba(255, 238, 223, 0.98);
    }
    .author-email-box-badge--neutral {
      color: var(--muted-text);
      border-color: color-mix(in srgb, var(--surface-border) 88%, transparent);
      background: rgba(250, 251, 253, 0.96);
    }
    .author-email-box-badge--unread {
      color: #8c2e1b;
      border-color: rgba(188, 93, 43, 0.24);
      background: rgba(255, 237, 224, 0.98);
    }
    .author-email-box-reader-drawer {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      width: var(--author-email-reader-width);
      max-width: 100%;
      display: grid;
      grid-template-rows: auto minmax(0, 1fr);
      gap: 14px;
      padding: 18px;
      border-left: 1px solid color-mix(in srgb, var(--surface-border) 88%, transparent);
      border-radius: 18px 0 0 18px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,250,253,0.98)),
        radial-gradient(circle at top right, rgba(23, 56, 109, 0.08), transparent 44%);
      box-shadow: -22px 0 40px rgba(18, 32, 68, 0.14);
      opacity: 0;
      pointer-events: none;
      transform: translateX(104%);
      transition: opacity 180ms ease, transform 180ms ease;
      z-index: 4;
    }
    .author-email-box-reader-drawer.open {
      opacity: 1;
      pointer-events: auto;
      transform: translateX(0);
    }
    .author-email-box-reader-drawer-head {
      display: flex;
      align-items: start;
      justify-content: space-between;
      gap: 12px;
      position: sticky;
      top: 0;
      z-index: 2;
      padding-bottom: 10px;
      border-bottom: 1px solid color-mix(in srgb, var(--surface-border) 88%, transparent);
      background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(255,255,255,0.9));
    }
    .author-email-box-reader-drawer-head strong {
      display: block;
      margin-top: 8px;
      color: var(--navy);
      font-size: 16px;
    }
    .author-email-box-reader-close {
      min-width: 88px;
    }
    .author-email-box-reader {
      min-height: 0;
      height: 100%;
      display: grid;
      gap: 16px;
      align-content: start;
      overflow: auto;
      padding-right: 4px;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      padding-left: 0;
      padding-top: 0;
      padding-bottom: 0;
    }
    .author-email-box-reader-pill {
      display: inline-flex;
      margin-bottom: 8px;
    }
    .author-email-box-reader-head {
      display: grid;
      gap: 14px;
      padding-bottom: 14px;
      border-bottom: 1px solid color-mix(in srgb, var(--surface-border) 88%, transparent);
    }
    .author-email-box-reader-head h3 {
      margin: 0;
      color: var(--navy);
      font-size: clamp(18px, 1.6vw, 24px);
      line-height: 1.35;
    }
    .author-email-box-reader-meta {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }
    .author-email-box-meta-item {
      display: grid;
      gap: 5px;
      padding: 12px 14px;
      border-radius: 14px;
      border: 1px solid color-mix(in srgb, var(--surface-border) 88%, transparent);
      background: rgba(255,255,255,0.78);
    }
    .author-email-box-meta-item span {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }
    .author-email-box-meta-item strong {
      color: var(--navy);
      font-size: 13px;
      line-height: 1.5;
    }
    .author-email-box-body {
      padding: 18px;
      border-radius: 16px;
      border: 1px solid color-mix(in srgb, var(--surface-border) 86%, transparent);
      background: linear-gradient(180deg, rgba(255,255,255,0.95), rgba(248,250,253,0.98));
      color: var(--ink);
      line-height: 1.75;
      white-space: normal;
      overflow-wrap: anywhere;
    }
    .profile-drawer-grid { display: grid; gap: 16px; }
    .profile-drawer-grid fieldset {
      border: 1px solid var(--surface-border);
      border-radius: 18px;
      padding: 16px;
      background: var(--surface-bg);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.66);
    }
    .profile-role-badges { display: flex; gap: 8px; flex-wrap: wrap; }
    .profile-password-pane {
      margin-top: 22px;
      padding: 18px;
      border-radius: 18px;
      border: 1px solid var(--surface-border);
      background: rgba(155, 27, 46, 0.04);
    }
    .profile-password-pane h3 { margin: 0 0 4px; color: var(--navy); font-size: 16px; }
    .profile-password-pane .small { margin: 0 0 14px; }
    .profile-password-pane .profile-drawer-grid { gap: 14px; }
    .drawer-link-row {
      display: flex;
      gap: 12px;
      align-items: center;
      justify-content: space-between;
      padding-top: 4px;
      flex-wrap: wrap;
    }
    @media (max-width: 980px) {
      .author-email-box-body-shell {
        --author-email-reader-width: min(52vw, 460px);
      }
      .author-email-box-body-shell.reader-open > .message,
      .author-email-box-body-shell.reader-open .author-email-box-layout {
        max-width: calc(100% - var(--author-email-reader-width) - 12px);
      }
      .author-email-box-list {
        max-height: none;
      }
      .author-email-box-reader-meta {
        grid-template-columns: 1fr;
      }
    }
    @media (max-width: 860px) {
      .author-email-box-body-shell {
        --author-email-reader-width: calc(100% - 12px);
      }
      .author-email-box-body-shell.reader-open > .message,
      .author-email-box-body-shell.reader-open .author-email-box-layout {
        max-width: 100%;
      }
      .author-email-box-list-head-copy {
        flex-direction: column;
        align-items: stretch;
      }
      .author-email-box-pagination {
        width: 100%;
        justify-content: flex-start;
        margin-left: 0;
      }
      .author-email-box-card-main {
        flex-direction: column;
      }
      .author-email-box-card-badges {
        margin-left: 0;
      }
      .author-email-box-reader-drawer {
        inset: 0 0 0 auto;
        border-left-width: 0;
        border-radius: 18px 18px 0 0;
      }
    }
    .submission-drawer-panel {
      left: 0;
      right: auto;
      width: min(85vw, calc(100vw - 12px));
      max-width: 100vw;
      transform: translateX(-102%);
      box-shadow: 20px 0 50px rgba(17, 28, 59, 0.18);
    }
    .event-drawer-overlay.open .submission-drawer-panel { transform: translateX(0); }
    .revision-drawer-panel {
      width: min(85vw, calc(100vw - 12px));
      max-width: 100vw;
    }
    .event-drawer-overlay.open .revision-drawer-panel { transform: translateX(0); }
    .submission-drawer-grid { display: grid; gap: 18px; }
    .submission-drawer-banner {
      display: grid;
      gap: 8px;
    }
    .submission-inline-status { display: grid; gap: 8px; }
    .submission-inline-status--title {
      grid-template-columns: auto minmax(0, 1fr);
      align-items: center;
      gap: 10px;
      margin-top: -6px;
    }
    .submission-inline-status--single {
      grid-template-columns: minmax(0, 1fr);
      margin-top: -6px;
    }
    .submission-guidance-note {
      margin: -2px 0 4px;
      padding: 10px 12px;
      border-radius: 12px;
      line-height: 1.45;
      font-weight: 700;
    }
    .submission-inline-status--title .submission-guidance-note {
      margin: 0;
      padding: 8px 12px;
      justify-self: end;
      text-align: right;
    }
    .submission-inline-status--single .submission-guidance-note,
    .submission-guidance-note--stacked {
      margin: 0;
      padding: 8px 12px;
      justify-self: start;
      text-align: left;
    }
    .submission-guidance-note--alert {
      color: var(--red);
      border: 1px solid color-mix(in srgb, var(--red) 26%, transparent);
      background: color-mix(in srgb, var(--cream) 70%, #ffffff 30%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
    }
    .submission-guidance-note .portal-remark-link {
      margin-left: 8px;
      font-size: inherit;
      font-weight: 800;
    }
    .submission-file-history { display: grid; gap: 10px; }
    .submission-file-item {
      border: 1px solid rgba(201, 162, 39, 0.16);
      border-radius: 16px;
      background: rgba(255,255,255,0.86);
      padding: 14px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .submission-file-actions {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }
    .submission-file-meta {
      display: grid;
      gap: 2px;
    }
    .submission-file-meta strong { color: var(--navy); }
    .submission-file-meta-line { color: var(--muted-text); font-size: 12px; line-height: 1.45; }
    .submission-title-state {
      min-height: 0;
      margin: 0;
      font-size: 13.5px;
      font-weight: 800;
      line-height: 1.35;
      color: var(--muted-text);
    }
    .submission-title-state:empty { display: none; }
    .submission-title-state.ok { color: #0f7a45; }
    .submission-title-state.error { color: var(--red); }
    .author-entry-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
      align-items: end;
    }
    .author-entry-add-cell { display: flex; }
    .author-entry-add-cell .nib-ui-button { width: 100%; }
    .portal-author-table-wrap { margin-bottom: 4px; }
    .portal-author-added-table th:first-child,
    .portal-author-added-table td:first-child {
      width: 54px;
      padding-inline: 6px;
      text-align: center;
      white-space: nowrap;
    }
    .portal-author-added-table th:nth-child(2),
    .portal-author-added-table td:nth-child(2) {
      width: 92px;
      padding-inline: 8px;
      text-align: center;
      white-space: normal;
    }
    .portal-author-added-table th:last-child,
    .portal-author-added-table td:last-child {
      width: 112px;
      padding-inline: 6px;
      text-align: center;
    }
    .portal-author-added-table {
      table-layout: auto;
    }
    .portal-author-added-table th,
    .portal-author-added-table td {
      padding: 8px 9px;
      font-size: 13px;
      line-height: 1.35;
    }
    .portal-author-added-table th {
      font-size: 11px;
      letter-spacing: 0.05em;
      line-height: 1.2;
    }
    .portal-author-index-cell {
      color: var(--navy);
      font-weight: 700;
      vertical-align: middle;
    }
    .portal-author-added-table td:nth-child(2) input[type="radio"] {
      width: 18px;
      height: 18px;
      accent-color: var(--primary-start, var(--navy));
      cursor: pointer;
    }
    .portal-author-order-cell {
      text-align: center;
      vertical-align: middle;
    }
    .portal-author-order-buttons {
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: center;
      gap: 4px;
    }
    .portal-author-order-buttons .nib-ui-icon-button {
      width: 28px;
      min-width: 28px;
      height: 28px;
      min-height: 28px;
      padding: 0;
    }
    .portal-author-order-buttons .nib-ui-icon-button:disabled {
      opacity: 0.42;
      cursor: not-allowed;
    }
    .portal-author-remove-cell {
      text-align: center;
      vertical-align: middle;
    }
    .portal-author-remove-cell .nib-ui-icon-button {
      width: 32px;
      height: 32px;
    }
    .portal-remark-stack {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 6px;
    }
    .portal-file-status-stack {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 8px;
      margin: 0;
    }
    .portal-status-pill {
      display: inline-flex;
      align-items: center;
      gap: 4px;
      padding: 4px 10px;
      border-radius: 999px;
      font-size: 11px;
      font-weight: 700;
      line-height: 1.3;
      white-space: normal;
      overflow-wrap: break-word;
      word-break: break-word;
      max-width: 100%;
      color: #0f7a45;
      background: rgba(15, 122, 69, 0.12);
      border: 1px solid rgba(15, 122, 69, 0.28);
    }
    .portal-author-action-row,
    .portal-submission-save-row { width: 100%; justify-content: center; }
    .submission-declaration-note { margin: 0 0 8px; color: var(--muted-text); line-height: 1.55; }
    .submission-form-note { color: var(--muted-text); font-size: 13px; line-height: 1.5; }
    .submission-readonly {
      background: rgba(245, 241, 230, 0.94);
      color: var(--ink);
      cursor: not-allowed;
    }
    .submission-form-note { color: var(--muted-text); font-size: 13px; line-height: 1.5; }
    .portal-grid, .submission-shell { display: grid; grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr); gap: 18px; align-items: start; }
    .actions { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
    .actions-centered { justify-content: center; }
    .checks { display: grid; gap: 10px; }
    .list-toolbar { display: flex; gap: 10px; align-items: end; justify-content: space-between; margin-bottom: 14px; }
    .list-toolbar label { min-width: 190px; }
    .decision-toolbar { display: grid; gap: 14px; margin-bottom: 14px; }
    .user-bar { border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,0.9); padding: 12px; display: flex; gap: 12px; align-items: center; justify-content: space-between; }
    .user-bar strong { color: var(--navy); overflow-wrap: anywhere; }
    .user-bar > span { min-width: 0; }
    .user-bar-actions { margin-left: auto; justify-content: flex-end; }
    .conference-shell { display: grid; gap: 18px; }
    .conference-hero {
      border: 1px solid rgba(201, 162, 39, 0.16);
      border-radius: 18px;
      position: relative;
      overflow: hidden;
      background-image:
        linear-gradient(135deg, var(--banner-start), var(--banner-end)),
        var(--hero-graphic, none);
      background-repeat: no-repeat, no-repeat;
      background-position: 0% 0%, right bottom;
      background-size: auto, min(60%, 360px);
      color: var(--white);
      padding: 26px;
      display: grid;
      gap: 14px;
      box-shadow: var(--shadow);
    }
    .conference-hero > * { position: relative; z-index: 1; }
    .conference-hero-shell {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 20px;
      align-items: center;
    }
    .conference-hero-copy {
      display: grid;
      gap: 14px;
      min-width: 0;
    }
    .conference-hero-mark {
      width: clamp(112px, 16vw, 176px);
      aspect-ratio: 1 / 1;
      border-radius: 999px;
      padding: 10px;
      display: grid;
      place-items: center;
      background:
        radial-gradient(circle at 30% 24%, rgba(255,255,255,0.42), rgba(255,255,255,0) 45%),
        linear-gradient(145deg, rgba(255,255,255,0.22), rgba(255,255,255,0.08));
      border: 1px solid rgba(255,255,255,0.24);
      box-shadow: 0 20px 44px rgba(12, 23, 58, 0.18), inset 0 1px 0 rgba(255,255,255,0.28);
      backdrop-filter: blur(8px);
      justify-self: end;
    }
    .conference-hero-mark img {
      width: 100%;
      height: 100%;
      border-radius: 999px;
      object-fit: cover;
      display: block;
      background: rgba(255,255,255,0.92);
      box-shadow: inset 0 0 0 1px rgba(201, 162, 39, 0.2);
    }
    .conference-meta { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
    .conference-meta div { border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,0.9); padding: 12px; display: grid; gap: 4px; }
    .conference-meta strong { color: var(--navy); }
    .track-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .event-page-banner { width: 100%; max-height: 320px; object-fit: cover; border-radius: 18px; border: 1px solid rgba(201, 162, 39, 0.16); box-shadow: var(--shadow-soft); }
    .event-about-panel { line-height: 1.6; }
    .event-about-panel p { margin: 0 0 10px; }
    .event-dates-timeline { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; }
    .event-date-item { border: 1px solid var(--line); border-radius: 12px; background: var(--paper); padding: 14px; display: grid; gap: 4px; }
    .event-date-item strong { color: var(--navy); }
    .event-venue-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; }
    .event-venue-grid div { border: 1px solid var(--line); border-radius: 12px; background: var(--paper); padding: 14px; display: grid; gap: 4px; }
    .event-venue-grid strong { color: var(--navy); }
    .event-committee-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
    .event-committee-card { border: 1px solid var(--surface-border); border-radius: 16px; background: var(--card-bg); box-shadow: var(--shadow-soft); padding: 16px; display: grid; gap: 4px; }
    .event-committee-card strong { color: var(--navy); font-size: 16px; }
    .event-committee-card span { color: var(--muted-ink, var(--ink)); font-size: 14px; }
    .workspace-cockpit { border: 1px solid rgba(201, 162, 39, 0.2); border-radius: 16px; background: linear-gradient(180deg, var(--surface-bg-strong), var(--page-bg-start)); padding: 18px; display: grid; gap: 16px; }
    .workspace-role-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
    .role-workspace-card { position: relative; overflow: hidden; border-radius: 16px; border: 1px solid rgba(255,255,255,0.14); padding: 18px; display: grid; gap: 12px; min-height: 220px; color: var(--white); }
    .role-workspace-card::after { content: ""; position: absolute; inset: auto -20px -28px auto; width: 120px; height: 120px; border-radius: 999px; background: rgba(255,255,255,0.08); filter: blur(2px); }
    .role-workspace-card h3, .role-workspace-card p { margin: 0; position: relative; z-index: 1; }
    .role-workspace-card.author { background: linear-gradient(135deg, rgba(38, 74, 146, 0.96), rgba(12, 23, 58, 0.96)); }
    .role-workspace-card.reviewer { background: linear-gradient(135deg, rgba(122, 35, 53, 0.95), rgba(42, 15, 26, 0.96)); }
    .role-workspace-card.chair { background: linear-gradient(135deg, rgba(130, 74, 16, 0.95), rgba(53, 25, 8, 0.96)); }
    .role-workspace-card.tenant_admin { background: linear-gradient(135deg, rgba(27, 42, 91, 0.96), rgba(14, 22, 47, 0.96)); }
    .role-workspace-card.track_chair { background: linear-gradient(135deg, rgba(0, 106, 89, 0.92), rgba(10, 45, 39, 0.96)); }
    .role-workspace-card .status-pill { position: relative; z-index: 1; color: var(--white); border-color: rgba(255,255,255,0.22); background: rgba(255,255,255,0.14); }
    .role-workspace-stats { display: flex; gap: 8px; flex-wrap: wrap; position: relative; z-index: 1; }
    .role-workspace-stat { display: inline-flex; align-items: center; border-radius: 999px; border: 1px solid rgba(255,255,255,0.16); padding: 5px 10px; background: rgba(255,255,255,0.1); color: var(--white); font-size: 12px; font-weight: 700; }
    .workspace-section { border: 1px solid rgba(201, 162, 39, 0.16); border-radius: 16px; padding: 18px; background: var(--surface-bg); box-shadow: inset 0 1px 0 rgba(255,255,255,0.25); }
    .workspace-section.workspace-section-participant { background: linear-gradient(180deg, rgba(240, 245, 255, 0.98), rgba(255,255,255,0.92)); }
    .workspace-section.workspace-section-author { background: linear-gradient(180deg, rgba(236, 244, 255, 0.98), rgba(255,255,255,0.92)); }
    .workspace-section.workspace-section-manager { background: linear-gradient(180deg, rgba(255, 247, 233, 0.98), rgba(255,255,255,0.92)); }
    .workspace-section.workspace-section-comms { background: linear-gradient(180deg, rgba(247, 240, 255, 0.98), rgba(255,255,255,0.92)); }
    .workspace-section.workspace-section-reviewer { background: linear-gradient(180deg, rgba(255, 240, 243, 0.98), rgba(255,255,255,0.92)); }
    .section-head { display: grid; gap: 6px; }
    .section-head p { margin: 0; }
    .shell-head-title-group { display: grid; gap: 4px; }
    .workspace-welcome-panel {
      display: inline-flex;
      width: fit-content;
      max-width: 100%;
      align-items: flex-start;
      justify-content: flex-start;
      min-height: 0;
      margin: -20px 0 18px -24px;
      padding: 0 18px;
      border: 1px solid color-mix(in srgb, var(--primary-start) 28%, rgba(255, 255, 255, 0.46));
      border-radius: 0 0 14px 14px;
      background:
        linear-gradient(145deg, color-mix(in srgb, var(--primary-start) 86%, white 14%), color-mix(in srgb, var(--primary-end) 84%, white 16%)),
        linear-gradient(180deg, rgba(255,255,255,0.16), rgba(255,255,255,0));
      box-shadow: 0 18px 34px rgba(16, 29, 63, 0.12);
    }
    #portal-control-bar .workspace-welcome-panel,
    #portal-organizer-shell .workspace-welcome-panel,
    #portal-reviewer-shell .workspace-welcome-panel,
    #portal-track-chair-shell .workspace-welcome-panel {
      margin: -24px 0 18px -24px;
      border-radius: 0 0 12px 12px;
    }
    /* Flat/full-flat workspaces should let the welcome banner sit flush with the shell edge. */
    html:not([data-navigation-theme]) #portal-control-bar,
    html:not([data-navigation-theme]) #portal-organizer-shell,
    html:not([data-navigation-theme]) #portal-reviewer-shell,
    html:not([data-navigation-theme]) #portal-track-chair-shell,
    html:not([data-navigation-theme]) #portal-chair-shell,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-control-bar,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-organizer-shell,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-reviewer-shell,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-track-chair-shell,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-chair-shell,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-control-bar,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-organizer-shell,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-reviewer-shell,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-track-chair-shell,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-chair-shell {
      padding-top: 0 !important;
    }
    html:not([data-navigation-theme]) #portal-control-bar .workspace-welcome-panel,
    html:not([data-navigation-theme]) #portal-organizer-shell .workspace-welcome-panel,
    html:not([data-navigation-theme]) #portal-reviewer-shell .workspace-welcome-panel,
    html:not([data-navigation-theme]) #portal-track-chair-shell .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-control-bar .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-organizer-shell .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-reviewer-shell .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-track-chair-shell .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-control-bar .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-organizer-shell .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-reviewer-shell .workspace-welcome-panel,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-track-chair-shell .workspace-welcome-panel {
      margin: 0 0 18px -24px !important;
      min-height: 76px;
      padding: 0 18px;
      align-items: flex-start;
      border-radius: 14px 0 12px 12px;
    }
    html:not([data-navigation-theme]) #portal-control-bar .workspace-welcome-panel .workspace-welcome,
    html:not([data-navigation-theme]) #portal-organizer-shell .workspace-welcome-panel .workspace-welcome,
    html:not([data-navigation-theme]) #portal-reviewer-shell .workspace-welcome-panel .workspace-welcome,
    html:not([data-navigation-theme]) #portal-track-chair-shell .workspace-welcome-panel .workspace-welcome,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-control-bar .workspace-welcome-panel .workspace-welcome,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-organizer-shell .workspace-welcome-panel .workspace-welcome,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-reviewer-shell .workspace-welcome-panel .workspace-welcome,
    html[data-navigation-theme="nibveda-flat-navigation"] #portal-track-chair-shell .workspace-welcome-panel .workspace-welcome,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-control-bar .workspace-welcome-panel .workspace-welcome,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-organizer-shell .workspace-welcome-panel .workspace-welcome,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-reviewer-shell .workspace-welcome-panel .workspace-welcome,
    html[data-navigation-theme="nibveda-flat-full-content"] #portal-track-chair-shell .workspace-welcome-panel .workspace-welcome {
      margin: 22px 0 10px;
    }
    /* On mobile, let the welcome banner span the full available width and
       shrink its padding/min-height -- the heading no longer floats
       beside it at this width (see the position:static override above), so
       there's nothing left to leave room for. This has to match (or beat)
       the specificity of the theme-scoped rules above it, since it's
       overriding those, not the plain .workspace-welcome-panel base rule. */
    @media (max-width: 720px) {
      html:not([data-navigation-theme]) #portal-control-bar .workspace-welcome-panel,
      html:not([data-navigation-theme]) #portal-organizer-shell .workspace-welcome-panel,
      html:not([data-navigation-theme]) #portal-chair-shell .workspace-welcome-panel,
      html:not([data-navigation-theme]) #portal-reviewer-shell .workspace-welcome-panel,
      html:not([data-navigation-theme]) #portal-track-chair-shell .workspace-welcome-panel,
      html[data-navigation-theme="nibveda-flat-navigation"] #portal-control-bar .workspace-welcome-panel,
      html[data-navigation-theme="nibveda-flat-navigation"] #portal-organizer-shell .workspace-welcome-panel,
      html[data-navigation-theme="nibveda-flat-navigation"] #portal-chair-shell .workspace-welcome-panel,
      html[data-navigation-theme="nibveda-flat-navigation"] #portal-reviewer-shell .workspace-welcome-panel,
      html[data-navigation-theme="nibveda-flat-navigation"] #portal-track-chair-shell .workspace-welcome-panel,
      html[data-navigation-theme="nibveda-flat-full-content"] #portal-control-bar .workspace-welcome-panel,
      html[data-navigation-theme="nibveda-flat-full-content"] #portal-organizer-shell .workspace-welcome-panel,
      html[data-navigation-theme="nibveda-flat-full-content"] #portal-chair-shell .workspace-welcome-panel,
      html[data-navigation-theme="nibveda-flat-full-content"] #portal-reviewer-shell .workspace-welcome-panel,
      html[data-navigation-theme="nibveda-flat-full-content"] #portal-track-chair-shell .workspace-welcome-panel,
      #portal-control-bar .workspace-welcome-panel,
      #portal-organizer-shell .workspace-welcome-panel,
      #portal-chair-shell .workspace-welcome-panel,
      #portal-reviewer-shell .workspace-welcome-panel,
      #portal-track-chair-shell .workspace-welcome-panel {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 12px !important;
        min-height: 0 !important;
        padding: 10px 14px !important;
        border-radius: 12px !important;
      }
      html:not([data-navigation-theme]) #portal-control-bar .workspace-welcome-panel .workspace-welcome,
      html:not([data-navigation-theme]) #portal-organizer-shell .workspace-welcome-panel .workspace-welcome,
      html:not([data-navigation-theme]) #portal-chair-shell .workspace-welcome-panel .workspace-welcome,
      html:not([data-navigation-theme]) #portal-reviewer-shell .workspace-welcome-panel .workspace-welcome,
      html:not([data-navigation-theme]) #portal-track-chair-shell .workspace-welcome-panel .workspace-welcome,
      html[data-navigation-theme="nibveda-flat-navigation"] #portal-control-bar .workspace-welcome-panel .workspace-welcome,
      html[data-navigation-theme="nibveda-flat-navigation"] #portal-organizer-shell .workspace-welcome-panel .workspace-welcome,
      html[data-navigation-theme="nibveda-flat-navigation"] #portal-chair-shell .workspace-welcome-panel .workspace-welcome,
      html[data-navigation-theme="nibveda-flat-navigation"] #portal-reviewer-shell .workspace-welcome-panel .workspace-welcome,
      html[data-navigation-theme="nibveda-flat-navigation"] #portal-track-chair-shell .workspace-welcome-panel .workspace-welcome,
      html[data-navigation-theme="nibveda-flat-full-content"] #portal-control-bar .workspace-welcome-panel .workspace-welcome,
      html[data-navigation-theme="nibveda-flat-full-content"] #portal-organizer-shell .workspace-welcome-panel .workspace-welcome,
      html[data-navigation-theme="nibveda-flat-full-content"] #portal-chair-shell .workspace-welcome-panel .workspace-welcome,
      html[data-navigation-theme="nibveda-flat-full-content"] #portal-reviewer-shell .workspace-welcome-panel .workspace-welcome,
      html[data-navigation-theme="nibveda-flat-full-content"] #portal-track-chair-shell .workspace-welcome-panel .workspace-welcome,
      #portal-control-bar .workspace-welcome-panel .workspace-welcome,
      #portal-organizer-shell .workspace-welcome-panel .workspace-welcome,
      #portal-chair-shell .workspace-welcome-panel .workspace-welcome,
      #portal-reviewer-shell .workspace-welcome-panel .workspace-welcome,
      #portal-track-chair-shell .workspace-welcome-panel .workspace-welcome {
        margin: 0 !important;
        font-size: 17px !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
      }
    }
    .workspace-welcome-copy { display: flex; flex-direction: column; }
    .workspace-role-label {
      margin-top: 0;
      color: var(--primary-text, #ffffff);
      opacity: 0.78;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }
    .workspace-welcome {
      margin: 2px 0 10px;
      color: var(--primary-text, #ffffff);
      text-shadow: 0 1px 0 rgba(0, 0, 0, 0.12);
      font-family: var(--brand-display);
      font-size: 22px;
      font-weight: 700;
      text-align: left;
    }
    .role-chips { display: flex; gap: 8px; flex-wrap: wrap; }
    .role-chip { display: inline-flex; align-items: center; border-radius: 999px; border: 1px solid var(--nib-ui-chip-border); padding: 4px 9px; color: var(--secondary-text); background: var(--nib-ui-chip-bg); box-shadow: var(--nib-ui-chip-shadow); font-size: 12px; font-weight: 700; text-transform: uppercase; }
    .workspace-card { border: 1px solid var(--line); border-radius: 14px; background: var(--white); padding: 16px; display: grid; gap: 10px; box-shadow: var(--shadow); }
    .workspace-card h3 { margin: 0; color: var(--navy); }
    .submission-list { display: grid; gap: 12px; }
    .submission-card, .assignment-card { border: 1px solid var(--line); border-radius: 14px; background: var(--white); padding: 14px; display: grid; gap: 12px; box-shadow: var(--shadow); }
    .card-header { display: flex; gap: 12px; justify-content: space-between; align-items: start; flex-wrap: wrap; }
    .card-header strong { color: var(--navy); font-size: 16px; }
    .card-meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; }
    .card-meta div { display: grid; gap: 3px; }
    .card-meta span { color: #5c6480; font-size: 12px; font-weight: 700; text-transform: uppercase; }
    .card-meta strong { color: var(--ink); font-size: 14px; font-weight: 400; overflow-wrap: anywhere; }
    .inline-check { display: flex; align-items: center; gap: 10px; color: var(--ink); font-weight: 700; }
    .inline-check input { width: 18px; height: 18px; margin: 0; flex: 0 0 auto; }
    .surface-section { padding: 4px 0; }
    .band-shell { width: 100%; max-width: var(--nib-content-max-width, 1180px); margin: 0 auto; padding: 0 20px; display: grid; gap: 16px; }
    .metric-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
    .metric-item { border: 1px solid var(--surface-border); border-radius: 18px; background: var(--surface-bg); box-shadow: var(--shadow-soft); padding: 18px; display: grid; gap: 6px; }
    .metric-item strong { color: var(--navy); font-size: 16px; }
    .feature-grid, .role-lane-grid, .process-grid, .support-grid, .workspace-preview-grid { display: grid; gap: 16px; }
    .feature-grid, .role-lane-grid, .support-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .process-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .workspace-preview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .feature-card, .role-lane-card, .process-step, .support-card, .tenant-sidebar-card, .preview-card { border: 1px solid var(--surface-border); border-radius: 18px; background: var(--card-bg); box-shadow: var(--shadow-soft); padding: 18px; display: grid; gap: 10px; transition: transform 180ms ease, box-shadow 180ms ease; }
    .feature-card strong, .role-lane-card strong, .support-card strong, .tenant-sidebar-card strong, .preview-card strong { color: var(--navy); font-size: 17px; }
    .role-lane-card.author, .preview-card.author { background: linear-gradient(180deg, rgba(236, 244, 255, 0.98), rgba(255,255,255,0.94)); }
    .role-lane-card.reviewer, .preview-card.reviewer { background: linear-gradient(180deg, rgba(255, 240, 243, 0.98), rgba(255,255,255,0.94)); }
    .role-lane-card.chair, .preview-card.chair { background: linear-gradient(180deg, rgba(255, 247, 233, 0.98), rgba(255,255,255,0.94)); }
    .role-lane-card.track, .preview-card.track { background: linear-gradient(180deg, rgba(235, 250, 246, 0.98), rgba(255,255,255,0.94)); }
    .role-lane-card.tenant, .preview-card.tenant { background: linear-gradient(180deg, rgba(240, 245, 255, 0.98), rgba(255,255,255,0.94)); }
    .process-step span { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 999px; background: var(--navy); color: var(--white); font-weight: 700; }
    .process-step strong { color: var(--navy); font-size: 16px; }
    .manual-toc-list { margin: 0; padding-left: 20px; display: grid; gap: 8px; }
    .manual-toc-list a { color: var(--navy); font-weight: 700; text-decoration: none; }
    .manual-toc-list a:hover { text-decoration: underline; }
    .manual-section { scroll-margin-top: 90px; }
    .manual-steps { margin: 0; padding-left: 22px; display: grid; gap: 10px; }
    .manual-steps li { padding-left: 4px; }
    .manual-table-wrap { overflow-x: auto; }
    .manual-table { width: 100%; border-collapse: collapse; }
    .manual-table th, .manual-table td { text-align: left; padding: 12px 14px; border-bottom: 1px solid var(--surface-border); vertical-align: top; }
    .manual-table th { color: var(--navy); font-size: 13px; text-transform: uppercase; letter-spacing: 0.04em; }
    .manual-table-note { color: var(--muted-text); font-size: 12px; }
    .manual-flow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 6px 0 4px; }
    .manual-flow-step { display: flex; align-items: center; gap: 10px; background: var(--card-bg); border: 1px solid var(--surface-border); border-radius: 999px; padding: 8px 16px 8px 8px; box-shadow: var(--shadow-soft); }
    .manual-flow-step span { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 999px; background: var(--navy); color: var(--white); font-weight: 700; font-size: 13px; flex-shrink: 0; }
    .manual-flow-step strong { color: var(--navy); font-size: 14px; font-weight: 700; white-space: nowrap; }
    .manual-flow-arrow { color: var(--gold); font-size: 18px; font-weight: 700; }
    .manual-faq { display: grid; gap: 10px; }
    .manual-faq-item { border: 1px solid var(--surface-border); border-radius: 14px; background: var(--card-bg); overflow: hidden; }
    .manual-faq-item summary { cursor: pointer; list-style: none; padding: 14px 18px; font-weight: 700; color: var(--navy); display: flex; align-items: center; justify-content: space-between; gap: 12px; }
    .manual-faq-item summary::-webkit-details-marker { display: none; }
    .manual-faq-item summary::after { content: "+"; font-size: 20px; font-weight: 700; color: var(--gold); transition: transform 0.15s ease; flex-shrink: 0; }
    .manual-faq-item[open] summary::after { transform: rotate(45deg); }
    .manual-faq-item-body { padding: 0 18px 16px; color: var(--ink); }
    .manual-faq-item-body p { margin: 0; }
    .catalog-toolbar { display: grid; grid-template-columns: minmax(280px, 1fr) auto; gap: 14px; align-items: end; margin-bottom: 18px; }
    .search-field { display: grid; gap: 6px; }
    .filter-chip-row { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
    .filter-chip { border: 1px solid var(--secondary-border); background: var(--secondary-bg); color: var(--secondary-text); border-radius: 999px; padding: 9px 14px; font: inherit; font-weight: 700; cursor: pointer; }
    .filter-chip[aria-pressed="true"] { background: var(--primary-start); color: var(--white); border-color: var(--primary-start); }
    .event-card-header { display: flex; gap: 10px; align-items: center; justify-content: space-between; flex-wrap: wrap; }
    .path-chip { display: inline-flex; align-items: center; border-radius: 999px; padding: 5px 10px; border: 1px solid var(--nib-ui-chip-border); background: var(--nib-ui-chip-bg); box-shadow: var(--nib-ui-chip-shadow); color: var(--secondary-text); font-size: 12px; font-weight: 700; }
    .event-actions { display: flex; gap: 10px; flex-wrap: wrap; }
    .tenant-shell { display: grid; grid-template-columns: minmax(280px, 0.36fr) minmax(0, 1fr); gap: 18px; align-items: start; }
    .tenant-sidebar { display: grid; gap: 16px; position: sticky; top: 94px; }
    .tenant-form { display: grid; gap: 18px; }
    .tenant-form-required-note { margin: 0; }
    .tenant-form fieldset { border: 1px solid var(--surface-border); border-radius: 18px; padding: 18px; background: var(--surface-bg); box-shadow: inset 0 1px 0 rgba(255,255,255,0.65); }
    .tenant-form legend { padding: 0 8px; color: var(--navy); font-weight: 700; }
    .field-label-inline {
      display: inline-flex;
      align-items: baseline;
      gap: 4px;
      flex-wrap: nowrap;
      white-space: nowrap;
      max-width: 100%;
    }
    .field-required-mark {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      margin-left: 0;
      color: var(--red);
      font-weight: 800;
      font-size: 1.08em;
      line-height: 1;
      flex: 0 0 auto;
    }
    .workspace-preview-panel { display: grid; gap: 18px; }
    .workspace-preview-grid .preview-card { min-height: 170px; }
    .application-stage { display: grid; grid-template-columns: minmax(0, 0.94fr) minmax(360px, 0.96fr); gap: 22px; align-items: start; }
    .application-story-grid { display: grid; gap: 18px; }
    .application-hero-grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.88fr); gap: 18px; align-items: stretch; }
    .application-hero-panel { min-height: 100%; }
    .application-hero-video-panel {
      display: flex;
      align-items: flex-start;
      justify-content: flex-end;
      min-width: 0;
    }
    .application-hero-video-panel .application-video-player-shell {
      width: 100%;
      max-width: 100%;
      margin-left: auto;
    }
    .application-focus-panel {
      position: relative;
      overflow: hidden;
      border: 1px solid var(--surface-border);
      border-radius: 4px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247, 249, 253, 0.96)),
        radial-gradient(circle at top right, rgba(201,162,39,0.14), transparent 48%);
      box-shadow: var(--shadow-soft);
      padding: 24px;
      display: grid;
      gap: 16px;
    }
    .application-focus-panel::after {
      content: "";
      position: absolute;
      right: -42px;
      bottom: -56px;
      width: 220px;
      height: 220px;
      background: radial-gradient(circle, rgba(201,162,39,0.2), rgba(201,162,39,0) 68%);
      pointer-events: none;
    }
    .application-focus-panel > * {
      position: relative;
      z-index: 1;
    }
    .application-focus-list { display: grid; gap: 12px; }
    .application-focus-item {
      border-left: 4px solid rgba(201,162,39,0.6);
      background: rgba(255,255,255,0.76);
      padding: 12px 14px;
      display: grid;
      gap: 4px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
    }
    .application-focus-item strong { color: var(--navy); font-size: 15px; }
    .application-focus-item p { margin: 0; color: var(--ink); font-size: 14px; line-height: 1.55; }
    .application-metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
    .application-metric-card {
      border: 1px solid var(--surface-border);
      border-radius: 4px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,248,252,0.95)),
        linear-gradient(135deg, rgba(201,162,39,0.06), rgba(27,42,91,0.04));
      box-shadow: var(--shadow-soft);
      padding: 18px;
      display: grid;
      gap: 8px;
    }
    .application-metric-card span {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }
    .application-metric-card strong {
      color: var(--navy);
      font-size: clamp(24px, 2.3vw, 30px);
      line-height: 1;
    }
    .application-metric-card p {
      margin: 0;
      color: var(--ink);
      font-size: 14px;
      line-height: 1.55;
    }
    .application-video-card { gap: 18px; }
    .application-video-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
      gap: 18px;
      align-items: stretch;
    }
    .application-video-player-shell {
      border: 1px solid var(--surface-border);
      background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,248,252,0.96));
      box-shadow: var(--shadow-soft);
      padding: 12px;
    }
    .application-video-player-shell--hero {
      padding: 10px;
    }
    .application-video-player {
      display: block;
      width: 100%;
      aspect-ratio: 16 / 9;
      background: linear-gradient(180deg, rgba(27,42,91,0.94), rgba(14,22,45,0.98));
      object-fit: cover;
    }
    .application-video-placeholder {
      min-height: clamp(240px, 34vw, 340px);
      display: grid;
      gap: 16px;
      align-content: center;
      justify-items: center;
      text-align: center;
      padding: clamp(22px, 4vw, 34px);
      background:
        radial-gradient(circle at top, rgba(201,162,39,0.24), rgba(201,162,39,0) 42%),
        linear-gradient(180deg, rgba(27,42,91,0.96), rgba(14,22,45,0.98));
      color: rgba(255,255,255,0.92);
    }
    .application-video-placeholder__eyebrow {
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.74);
    }
    .application-video-placeholder__trigger {
      min-width: min(100%, 260px);
      justify-content: center;
    }
    .application-video-aside {
      border: 1px solid var(--surface-border);
      background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,249,253,0.96)),
        radial-gradient(circle at top right, rgba(201,162,39,0.12), transparent 46%);
      box-shadow: var(--shadow-soft);
      padding: 18px;
      display: grid;
      gap: 14px;
      align-content: start;
    }
    .application-video-aside strong {
      color: var(--navy);
      font-size: 18px;
    }
    .application-value-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .application-page-head { padding: 36px 0 12px; }
    .application-page-head-panel {
      border: 1px solid var(--surface-border);
      border-radius: 4px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246, 248, 252, 0.96)),
        radial-gradient(circle at top right, rgba(201,162,39,0.1), transparent 46%);
      box-shadow: var(--shadow-soft);
      padding: 24px 28px;
      display: grid;
      gap: 12px;
    }
    .application-page-head-panel .eyebrow { border-radius: 4px; }
    .application-showcase-card { border: 1px solid var(--surface-border); border-radius: 4px; background: var(--card-bg); box-shadow: var(--shadow-soft); padding: 20px; display: grid; gap: 10px; }
    .application-guidance-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
    .application-guidance-card { gap: 16px; }
    .application-program-card {
      position: relative;
      min-height: 100%;
      padding-top: 46px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,249,252,0.94)),
        linear-gradient(135deg, rgba(201,162,39,0.06), rgba(27,42,91,0.03));
    }
    .application-program-card__tag {
      position: absolute;
      top: 14px;
      left: 16px;
      display: inline-flex;
      align-items: center;
      border: 1px solid rgba(201,162,39,0.34);
      background: rgba(201,162,39,0.12);
      color: var(--navy);
      padding: 4px 9px;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }
    .application-program-card strong { font-size: 18px; }
    .application-requirement-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .application-requirement-card {
      border: 1px solid var(--surface-border);
      border-radius: 4px;
      background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248, 249, 252, 0.96));
      padding: 18px;
      display: grid;
      gap: 10px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.72);
    }
    .application-requirement-card strong,
    .application-criteria-list strong { color: var(--navy); font-size: 16px; }
    .application-guidance-list { margin: 0; padding-left: 18px; display: grid; gap: 10px; color: var(--ink); line-height: 1.6; }
    .application-guidance-list li { margin: 0; }
    .application-criteria-list { display: grid; gap: 12px; }
    .application-criteria-list article {
      border: 1px solid var(--surface-border);
      border-radius: 4px;
      background: linear-gradient(180deg, rgba(246, 248, 252, 0.98), rgba(255,255,255,0.98));
      padding: 16px 18px;
      display: grid;
      gap: 6px;
    }
    .application-criteria-list p { margin: 0; color: var(--ink); line-height: 1.6; }
    .application-story-grid .role-lane-card {
      position: relative;
      overflow: hidden;
      border-radius: 4px;
      gap: 12px;
    }
    .application-story-grid .role-lane-card::before {
      content: "";
      position: absolute;
      inset: 0 auto 0 0;
      width: 5px;
      background: linear-gradient(180deg, rgba(201,162,39,0.78), rgba(27,42,91,0.54));
      opacity: 0.9;
    }
    .application-workspace-signal {
      display: inline-flex;
      width: fit-content;
      align-items: center;
      padding: 5px 10px;
      border: 1px solid rgba(27,42,91,0.12);
      background: rgba(255,255,255,0.66);
      color: var(--navy);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .application-feature-toolbar { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; }
    .application-feature-card {
      position: relative;
      overflow: hidden;
      gap: 16px;
      border-radius: 4px;
      padding: 20px;
    }
    .application-feature-card::after {
      content: "";
      position: absolute;
      inset: auto 0 0;
      height: 3px;
      background: linear-gradient(90deg, rgba(201,162,39,0.78), rgba(27,42,91,0.58));
    }
    .application-feature-card__head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 14px;
      flex-wrap: wrap;
    }
    .application-feature-meta {
      margin: 6px 0 0;
      color: var(--muted-text);
      font-size: 14px;
      line-height: 1.58;
    }
    .application-feature-list {
      margin: 0;
      padding-left: 18px;
      gap: 8px;
    }
    .application-feature-trigger {
      align-self: flex-start;
      white-space: nowrap;
    }
    .application-feature-chip-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }
    .application-feature-chip {
      display: inline-flex;
      align-items: center;
      border: 1px solid rgba(27,42,91,0.12);
      background: linear-gradient(180deg, rgba(255,255,255,0.92), rgba(243,246,251,0.94));
      color: var(--secondary-text);
      padding: 6px 10px;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0.04em;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.75);
    }
    .application-feature-modal[hidden] { display: none; }
    .application-feature-modal {
      position: fixed;
      inset: 0;
      z-index: 140;
      display: grid;
      place-items: center;
      padding: 20px;
    }
    .application-feature-modal__backdrop {
      position: absolute;
      inset: 0;
      background: rgba(17, 28, 59, 0.52);
      backdrop-filter: blur(10px);
      opacity: 0;
      transition: opacity 180ms ease;
    }
    .application-feature-modal__dialog {
      position: relative;
      width: min(760px, calc(100vw - 28px));
      max-height: min(84vh, 760px);
      overflow: auto;
      border: 1px solid rgba(27,42,91,0.14);
      border-radius: 16px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246,248,252,0.98)),
        radial-gradient(circle at top right, rgba(201,162,39,0.16), transparent 48%);
      box-shadow: 0 24px 56px rgba(16, 29, 63, 0.26);
      padding: 24px;
      display: grid;
      gap: 18px;
      transform: translateY(16px) scale(0.98);
      opacity: 0;
      transition: transform 180ms ease, opacity 180ms ease;
    }
    .application-feature-modal.open .application-feature-modal__backdrop { opacity: 1; }
    .application-feature-modal.open .application-feature-modal__dialog {
      transform: translateY(0) scale(1);
      opacity: 1;
    }
    .application-feature-modal__head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 16px;
    }
    .application-feature-modal__copy { display: grid; gap: 8px; }
    .application-feature-modal__eyebrow {
      width: fit-content;
      border: 1px solid rgba(201,162,39,0.32);
      background: rgba(201,162,39,0.12);
      color: var(--navy);
      padding: 5px 10px;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .application-feature-modal__list {
      margin: 0;
      padding-left: 20px;
      display: grid;
      gap: 12px;
      color: var(--ink);
      line-height: 1.65;
    }
    .application-feature-modal__close { white-space: nowrap; }
    .application-sticky-shell { position: relative; }
    .floating-form-card { position: sticky; top: 104px; transform: translateY(-48px); box-shadow: var(--hero-shadow); }
    .application-form-head { display: grid; gap: 8px; margin-bottom: 16px; }
    .application-process { display: grid; gap: 12px; }
    .application-process-step { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; align-items: start; }
    .application-process-step span { width: 34px; height: 34px; border-radius: 4px; display: inline-flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--primary-start), var(--primary-end)); color: var(--white); font-weight: 700; box-shadow: 0 10px 20px rgba(27, 42, 91, 0.16); }
    .application-process-step strong { color: var(--navy); display: block; margin-bottom: 4px; }
    .application-story-grid {
      gap: 28px;
    }
    .application-page-head {
      padding: 28px 0 2px;
    }
    .application-page-head-panel {
      border: 0;
      background: transparent;
      box-shadow: none;
      padding: 8px 0 0;
    }
    .application-page-head-panel p,
    .application-form-head p,
    .application-hero-panel p {
      max-width: 78ch;
    }
    .application-hero-panel {
      gap: 18px;
    }
    .application-hero-actions {
      gap: 14px;
      margin-top: 2px;
    }
    .application-hero-button {
      min-width: 248px;
      min-height: 50px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding-inline: 24px;
      text-decoration: none;
      box-sizing: border-box;
      font-size: 15px;
      text-align: center;
      line-height: 1.2;
      white-space: normal;
    }
    .application-hero-button > span {
      position: relative;
      z-index: 1;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 100%;
    }
    .application-hero-button--primary,
    .application-hero-button--primary:visited {
      background: var(--nib-ui-button-shell-primary) !important;
      border-color: var(--nib-ui-button-border-primary) !important;
      color: var(--nib-ui-on-primary, var(--primary-text, #ffffff)) !important;
      -webkit-text-fill-color: currentColor;
      box-shadow: var(--nib-ui-button-shadow-strong) !important;
    }
    .application-hero-button--primary:hover,
    .application-hero-button--primary:focus-visible {
      color: var(--nib-ui-on-primary, var(--primary-text, #ffffff)) !important;
      -webkit-text-fill-color: currentColor;
      box-shadow: var(--nib-ui-button-shadow-hover) !important;
      transform: translateY(var(--nib-ui-button-translate-hover));
    }
    .application-hero-button--secondary,
    .application-hero-button--secondary:visited {
      background: var(--nib-ui-button-shell-secondary) !important;
      border-color: var(--nib-ui-button-border-secondary) !important;
      color: var(--secondary-text) !important;
      -webkit-text-fill-color: currentColor;
      box-shadow: var(--nib-ui-button-shadow-rest) !important;
    }
    .application-hero-button--secondary:hover,
    .application-hero-button--secondary:focus-visible {
      color: var(--secondary-text) !important;
      -webkit-text-fill-color: currentColor;
      box-shadow: var(--nib-ui-button-shadow-hover) !important;
      transform: translateY(var(--nib-ui-button-translate-hover));
    }
    .application-inline-highlights {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }
    .application-inline-highlights span {
      display: inline-flex;
      align-items: center;
      padding: 7px 12px;
      border: 1px solid rgba(27, 42, 91, 0.12);
      background: linear-gradient(180deg, rgba(255,255,255,0.92), rgba(244,246,251,0.96));
      color: var(--navy);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0.04em;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
    }
    .application-signal-strip {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 0;
      border-top: 1px solid rgba(27, 42, 91, 0.12);
      border-bottom: 1px solid rgba(27, 42, 91, 0.12);
    }
    .application-signal-item {
      display: grid;
      gap: 8px;
      padding: 18px 20px;
    }
    .application-signal-item + .application-signal-item {
      border-left: 1px solid rgba(27, 42, 91, 0.12);
    }
    .application-signal-item span {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }
    .application-signal-item strong {
      color: var(--navy);
      font-size: clamp(24px, 2.2vw, 30px);
      line-height: 1;
    }
    .application-signal-item p {
      margin: 0;
      color: var(--ink);
      font-size: 14px;
      line-height: 1.6;
    }
    .application-flow-section {
      display: grid;
      gap: 18px;
      padding-top: 22px;
      border-top: 1px solid rgba(27, 42, 91, 0.1);
    }
    .application-flow-rail {
      position: relative;
      display: grid;
      gap: 16px;
      padding-left: 42px;
    }
    .application-flow-rail::before {
      content: "";
      position: absolute;
      left: 14px;
      top: 10px;
      bottom: 10px;
      width: 2px;
      background: linear-gradient(180deg, rgba(201,162,39,0.88), rgba(27,42,91,0.28));
    }
    .application-flow-item {
      position: relative;
      display: grid;
      grid-template-columns: 54px minmax(0, 1fr);
      gap: 14px;
      align-items: start;
    }
    .application-flow-marker {
      position: relative;
      z-index: 1;
      width: 30px;
      height: 30px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 999px;
      background: linear-gradient(135deg, color-mix(in srgb, var(--primary-start) 90%, white 10%), color-mix(in srgb, var(--primary-end) 84%, white 16%));
      color: var(--nib-ui-on-primary, var(--primary-text, #ffffff));
      font-size: 12px;
      font-weight: 800;
      box-shadow: 0 10px 22px rgba(16, 29, 63, 0.18);
    }
    .application-flow-copy {
      display: grid;
      gap: 8px;
      padding-bottom: 14px;
      border-bottom: 1px solid rgba(27, 42, 91, 0.08);
    }
    .application-flow-item:last-child .application-flow-copy {
      border-bottom: 0;
      padding-bottom: 0;
    }
    .application-flow-copy-head {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 12px;
    }
    .application-flow-copy-head strong {
      color: var(--navy);
      font-size: 20px;
    }
    .application-flow-copy p {
      margin: 0;
      color: var(--ink);
      line-height: 1.65;
    }
    .application-flow-tag {
      display: inline-flex;
      align-items: center;
      padding: 5px 10px;
      border: 1px solid rgba(201, 162, 39, 0.28);
      background: rgba(201, 162, 39, 0.11);
      color: var(--navy);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }
    .application-playbook-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 34px;
    }
    .application-playbook-column {
      display: grid;
      gap: 14px;
    }
    .application-playbook-heading {
      color: var(--navy);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }
    .application-playbook-list {
      display: grid;
      gap: 16px;
    }
    .application-playbook-item {
      display: grid;
      gap: 6px;
      padding-left: 18px;
      border-left: 3px solid rgba(201, 162, 39, 0.58);
    }
    .application-playbook-item strong {
      color: var(--navy);
      font-size: 17px;
    }
    .application-playbook-item p {
      margin: 0;
      color: var(--ink);
      line-height: 1.65;
    }
    .application-role-directory {
      display: grid;
      border-top: 1px solid rgba(27, 42, 91, 0.1);
    }
    .application-role-entry {
      --application-role-accent: rgba(201, 162, 39, 0.78);
      position: relative;
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: 18px;
      padding: 18px 0;
      border-bottom: 1px solid rgba(27, 42, 91, 0.1);
    }
    .application-role-entry::before {
      content: "";
      position: absolute;
      left: 0;
      top: 22px;
      bottom: 22px;
      width: 4px;
      background: var(--application-role-accent);
    }
    .application-role-entry.author { --application-role-accent: linear-gradient(180deg, #2d5f96, #8ab6ea); }
    .application-role-entry.reviewer { --application-role-accent: linear-gradient(180deg, #8f2234, #d78495); }
    .application-role-entry.track { --application-role-accent: linear-gradient(180deg, #2f6f68, #8acbc0); }
    .application-role-entry.chair { --application-role-accent: linear-gradient(180deg, #b86a24, #e8b16f); }
    .application-role-entry.tenant { --application-role-accent: linear-gradient(180deg, #355d93, #98b6e8); }
    .application-role-entry.platform { --application-role-accent: linear-gradient(180deg, #5a447a, #b59cd7); }
    .application-role-entry-main {
      display: grid;
      gap: 8px;
      padding-left: 18px;
      min-width: 0;
    }
    .application-role-entry-top {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px;
    }
    .application-role-entry-top strong {
      color: var(--navy);
      font-size: 19px;
    }
    .application-role-entry p {
      margin: 0;
      color: var(--ink);
      line-height: 1.65;
    }
    .application-role-entry .application-feature-trigger {
      min-width: 190px;
      justify-content: center;
    }
    .application-benefit-ribbon {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 0;
      border-top: 1px solid rgba(27, 42, 91, 0.1);
      border-bottom: 1px solid rgba(27, 42, 91, 0.1);
    }
    .application-benefit-item {
      display: grid;
      gap: 8px;
      padding: 18px 20px;
    }
    .application-benefit-item + .application-benefit-item {
      border-left: 1px solid rgba(27, 42, 91, 0.1);
    }
    .application-benefit-item strong {
      color: var(--navy);
      font-size: 17px;
    }
    .application-benefit-item p {
      margin: 0;
      color: var(--ink);
      line-height: 1.65;
    }
    .application-journey-line {
      position: relative;
      display: grid;
      grid-template-columns: repeat(5, minmax(0, 1fr));
      gap: 18px;
      padding-top: 18px;
    }
    .application-journey-line::before {
      content: "";
      position: absolute;
      left: 18px;
      right: 18px;
      top: 36px;
      height: 2px;
      background: linear-gradient(90deg, rgba(201,162,39,0.82), rgba(27,42,91,0.38));
    }
    .application-journey-stage {
      position: relative;
      z-index: 1;
      display: grid;
      gap: 10px;
      padding-top: 26px;
    }
    .application-journey-index {
      width: 36px;
      height: 36px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 999px;
      background: linear-gradient(135deg, color-mix(in srgb, var(--primary-start) 90%, white 10%), color-mix(in srgb, var(--primary-end) 84%, white 16%));
      color: var(--nib-ui-on-primary, var(--primary-text, #ffffff));
      font-size: 13px;
      font-weight: 800;
      box-shadow: 0 10px 22px rgba(16, 29, 63, 0.18);
    }
    .application-journey-stage strong {
      color: var(--navy);
      font-size: 17px;
    }
    .application-journey-stage p {
      margin: 0;
      color: var(--ink);
      line-height: 1.65;
    }
    .event-drawer-overlay { position: fixed; inset: 0; display: none; z-index: 80; }
    .event-drawer-overlay.open { display: block; }
    .event-drawer-backdrop { position: absolute; inset: 0; background: var(--drawer-backdrop); backdrop-filter: blur(8px); }
    .event-drawer-panel { position: absolute; top: 0; right: 0; width: min(85vw, calc(100vw - 12px)); max-width: 100vw; height: 100%; background: linear-gradient(180deg, var(--drawer-bg-start), var(--drawer-bg-end)); box-shadow: var(--drawer-shadow); transform: translateX(102%); transition: transform 260ms ease; display: grid; grid-template-rows: auto 1fr; }
    .event-drawer-overlay.open .event-drawer-panel { transform: translateX(0); }
    /* Author-profile drawers only (article detail, article registration) stay left-opening
       per user instruction: "all drawer must open from right. except in author profile." */
    .event-drawer-panel.submission-drawer-panel,
    .author-registration-drawer-panel {
      left: 0;
      right: auto;
      width: min(85vw, calc(100vw - 12px));
      max-width: 100vw;
      transform: translateX(-102%);
      box-shadow: 20px 0 50px rgba(17, 28, 59, 0.18);
    }
    .event-drawer-overlay.open .event-drawer-panel.submission-drawer-panel,
    .event-drawer-overlay.open .author-registration-drawer-panel { transform: translateX(0); }
    .event-drawer-head { display: flex; align-items: start; justify-content: space-between; gap: 16px; padding: 22px 22px 0; }
    .event-drawer-head h2 { margin: 0; }
    .event-drawer-head--compact {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
      align-items: center;
      gap: 12px;
      padding: 10px 22px 4px;
    }
    .event-drawer-head-main,
    .event-drawer-head-title {
      display: flex;
      align-items: center;
      min-width: 0;
      justify-content: flex-start;
    }
    .event-drawer-head-center {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      min-width: 0;
      gap: 3px;
    }
    @keyframes eventDrawerHeaderLabelBlink {
      0%, 45% { opacity: 1; }
      50%, 95% { opacity: 0.35; }
      100% { opacity: 1; }
    }
    .event-drawer-head-event-label {
      margin: 0;
      color: var(--navy);
      font-size: clamp(15px, 1.5vw, 19px);
      font-weight: 800;
      text-align: center;
      line-height: 1.3;
      max-width: min(320px, 34vw);
      animation: eventDrawerHeaderLabelBlink 1.6s ease-in-out infinite;
    }
    .event-drawer-head-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      min-width: 0;
    }
    .event-drawer-head-main h2,
    .event-drawer-head-title h2 {
      font-size: clamp(22px, 2vw, 32px);
      line-height: 1.05;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .event-drawer-head-logo {
      height: 58px;
      width: auto;
      max-width: min(220px, 28vw);
      object-fit: contain;
      filter: drop-shadow(0 8px 16px rgba(16,29,63,0.12));
      flex: 0 0 auto;
    }
    .event-drawer-head-copy {
      display: none;
    }
    .event-drawer-brand {
      display: flex;
      justify-content: center;
      padding: 2px 22px 0;
    }
    .event-drawer-brand img {
      width: min(210px, 52%);
      max-width: 210px;
      height: auto;
    }
    .event-drawer-close {
      min-width: 40px;
      min-height: 40px;
      border-radius: 999px;
      border: 1px solid var(--nib-ui-button-border-secondary);
      background: var(--nib-ui-button-shell-secondary);
      color: var(--secondary-text);
      box-shadow: var(--nib-ui-button-shadow-rest);
      transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease;
    }
    .event-drawer-close:hover {
      border-color: var(--nib-ui-button-border-hover);
      background: var(--nib-ui-button-shell-outline);
      color: var(--secondary-text);
      box-shadow: var(--nib-ui-button-shadow-hover);
      transform: translateY(var(--nib-ui-button-translate-hover));
    }
    .event-drawer-close:active {
      box-shadow: var(--nib-ui-button-shadow-pressed);
      transform: translateY(0);
    }
    .event-drawer-body { overflow: auto; padding: 18px 22px 24px; display: grid; gap: 18px; }
    .drawer-info-banner,
    .event-drawer-intro,
    .submission-drawer-banner {
      border: 1px solid color-mix(in srgb, var(--primary-start) 28%, rgba(255, 255, 255, 0.46));
      border-radius: 24px;
      background:
        linear-gradient(145deg, color-mix(in srgb, var(--primary-start) 86%, white 14%), color-mix(in srgb, var(--primary-end) 84%, white 16%)),
        linear-gradient(180deg, rgba(255,255,255,0.16), rgba(255,255,255,0));
      padding: 16px 20px;
      display: grid;
      gap: 8px;
      box-shadow: 0 18px 34px rgba(16, 29, 63, 0.12);
    }
    .drawer-info-banner strong,
    .event-drawer-intro strong,
    .submission-drawer-banner strong {
      margin: 0;
      color: var(--primary-text, #ffffff);
      text-shadow: 0 1px 0 rgba(0, 0, 0, 0.12);
      font-size: 16px;
      font-weight: 800;
      line-height: 1.4;
    }
    .drawer-info-banner p,
    .event-drawer-intro p,
    .submission-drawer-banner p {
      margin: 0;
      color: var(--primary-text, #ffffff);
      font-size: 15px;
      font-weight: 700;
      line-height: 1.6;
    }
    .event-drawer-checklist {
      margin: 2px 0 0;
      padding-left: 20px;
      display: grid;
      gap: 8px;
      color: var(--primary-text, #ffffff);
      font-size: 14px;
      line-height: 1.6;
      font-weight: 600;
    }
    .event-drawer-checklist li {
      margin: 0;
    }
    .event-drawer-grid { display: grid; gap: 18px; }
    .event-application-inline-actions {
      display: flex;
      gap: 12px;
      align-items: center;
      flex-wrap: wrap;
      min-height: 46px;
    }
    .event-application-inline-actions--stacked {
      align-items: flex-start;
      min-height: 0;
    }
    .event-application-identity-stack {
      grid-column: 1 / -1;
      display: grid;
      gap: 14px;
      width: min(100%, calc((100% - 14px) / 2));
      justify-self: start;
    }
    .event-application-identity-stack > label,
    .event-application-identity-stack > .event-application-inline-actions {
      width: 100%;
    }
    .event-application-inline-actions .event-application-verify-button {
      min-height: 28px;
      padding: 5px 11px;
      border-radius: 9px;
      border: 1px solid rgba(27, 42, 91, 0.18);
      background: linear-gradient(180deg, #ffffff 0%, #f6f7fb 100%);
      box-shadow: 0 4px 10px rgba(17, 34, 76, 0.08);
      color: #1b2a5b;
      font-size: 11.5px;
      font-weight: 700;
      letter-spacing: 0.01em;
      text-transform: none;
      line-height: 1.1;
      backdrop-filter: none;
      transform: none;
    }
    .event-application-inline-actions .event-application-verify-button::before,
    .event-application-inline-actions .event-application-verify-button::after {
      display: none;
    }
    .event-application-inline-actions .event-application-verify-button:hover {
      transform: translateY(-1px);
      border-color: rgba(27, 42, 91, 0.28);
      box-shadow: 0 6px 14px rgba(17, 34, 76, 0.12);
    }
    .event-application-inline-actions .event-application-verify-button:active {
      transform: translateY(0);
      box-shadow: inset 0 1px 4px rgba(17, 34, 76, 0.08);
    }
    .event-application-inline-actions .message,
    .event-application-inline-actions .small {
      margin: 0;
    }
    .event-application-success {
      border: 1px solid var(--surface-border);
      border-radius: 4px;
      background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246, 249, 255, 0.98));
      box-shadow: var(--shadow-soft);
      padding: 24px;
      display: grid;
      gap: 16px;
    }
    .event-application-success h3 {
      margin: 0;
      color: var(--navy);
      font-size: clamp(24px, 2vw, 30px);
      line-height: 1.12;
    }
    .event-application-success p {
      margin: 0;
      color: var(--ink);
      line-height: 1.7;
    }
    .event-application-success-meta {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }
    .event-application-success-meta div {
      border: 1px solid var(--surface-border);
      border-radius: 4px;
      background: var(--surface-bg);
      padding: 14px 16px;
      display: grid;
      gap: 4px;
    }
    .application-story-grid .event-banner,
    .application-story-grid .clean-card,
    .application-story-grid .feature-card {
      border-radius: 4px;
    }
    .application-story-grid .event-banner {
      border: 1px solid var(--surface-border);
      background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246, 248, 252, 0.96)),
        radial-gradient(circle at top right, rgba(201,162,39,0.12), transparent 42%);
      color: var(--ink);
      box-shadow: var(--shadow-soft);
    }
    .application-story-grid .event-banner h1 {
      color: var(--navy);
      font-size: clamp(28px, 3.2vw, 36px);
    }
    .application-story-grid .event-banner p {
      color: var(--ink);
    }
    .application-page-head {
      padding: 24px 0 8px;
    }
    .application-page-head-panel {
      border: 0;
      background: transparent;
      box-shadow: none;
      padding: 0;
      gap: 10px;
    }
    .application-story-grid {
      background: #ffffff;
      border: 1px solid rgba(27, 42, 91, 0.09);
      box-shadow: 0 18px 40px rgba(16, 29, 63, 0.05);
      padding: clamp(24px, 3vw, 36px);
      gap: 34px;
    }
    .application-story-grid .event-banner {
      border: 0;
      background: transparent;
      box-shadow: none;
      padding: 0;
      gap: 18px;
    }
    .application-story-grid .event-banner h1,
    .application-form-head h2,
    .application-page-head-panel h1 {
      letter-spacing: 0;
    }
    .application-story-grid .event-banner p,
    .application-story-grid p {
      color: #34425b;
    }
    .application-page-head-panel .eyebrow,
    .application-story-grid .pill {
      border: 1px solid rgba(27, 42, 91, 0.14);
      background: #ffffff;
      color: var(--navy);
      box-shadow: none;
    }
    .application-inline-highlights span,
    .application-flow-tag,
    .application-workspace-signal,
    .application-feature-chip,
    .application-feature-modal__eyebrow {
      background: #ffffff;
      box-shadow: none;
    }
    .application-hero-video-panel .application-video-player-shell,
    .application-video-player-shell {
      border: 1px solid rgba(27, 42, 91, 0.12);
      background: #ffffff;
      box-shadow: 0 10px 24px rgba(16, 29, 63, 0.06);
    }
    .application-hero-button {
      box-shadow: var(--nib-ui-button-shadow-rest);
    }
    .application-hero-button--primary,
    .application-hero-button--primary:visited {
      background: var(--nib-ui-button-shell-primary) !important;
      border-color: var(--nib-ui-button-border-primary) !important;
      color: var(--nib-ui-on-primary, var(--primary-text, #ffffff)) !important;
      -webkit-text-fill-color: currentColor;
      box-shadow: var(--nib-ui-button-shadow-strong) !important;
    }
    .application-hero-button--secondary,
    .application-hero-button--secondary:visited {
      background: var(--nib-ui-button-shell-secondary) !important;
      border-color: var(--nib-ui-button-border-secondary) !important;
      color: var(--secondary-text) !important;
      -webkit-text-fill-color: currentColor;
      box-shadow: var(--nib-ui-button-shadow-rest) !important;
    }
    .application-signal-strip,
    .application-benefit-ribbon,
    .application-role-directory {
      border-color: rgba(27, 42, 91, 0.1);
    }
    .application-signal-item,
    .application-benefit-item {
      background: #ffffff;
    }
    .application-flow-section {
      gap: 20px;
      padding-top: 28px;
      border-top: 1px solid rgba(27, 42, 91, 0.1);
    }
    .application-flow-rail::before,
    .application-journey-line::before {
      background: linear-gradient(180deg, rgba(27, 42, 91, 0.18), rgba(27, 42, 91, 0.12));
    }
    .application-flow-marker,
    .application-journey-index {
      box-shadow: none;
    }
    .application-flow-copy,
    .application-playbook-item,
    .application-role-entry,
    .application-benefit-item,
    .application-signal-item {
      box-shadow: none;
    }
    .application-playbook-item {
      border-left-color: rgba(27, 42, 91, 0.24);
    }
    .application-role-entry::before {
      opacity: 0.9;
    }
    .application-feature-modal__dialog {
      background: #ffffff;
      box-shadow: 0 22px 56px rgba(16, 29, 63, 0.18);
    }
    .application-story-grid code {
      background: #f7f8fb;
      border: 1px solid rgba(27, 42, 91, 0.08);
      padding: 1px 6px;
      color: var(--navy);
    }
    .event-application-drawer-panel .event-drawer-intro,
    .event-application-form fieldset,
    .event-application-form input,
    .event-application-form select,
    .event-application-form textarea,
    .event-application-form .nib-ui-button,
    .event-application-form .event-application-verify-button,
    .event-application-success,
    .event-application-success-meta div,
    .event-application-drawer-panel .event-drawer-close,
    .event-application-drawer-panel .path-chip,
    .event-application-drawer-panel .role-chip,
    .application-page-head-panel .eyebrow,
    .application-story-grid .pill {
      border-radius: 4px;
    }
    .event-application-success-meta span {
      color: #6a738e;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }
    .event-application-success-meta strong {
      color: var(--navy);
      font-size: 16px;
      overflow-wrap: anywhere;
    }
    @media (max-width: 980px) {
      .application-value-grid,
      .application-guidance-grid,
      .application-requirement-grid,
      .application-story-grid > .feature-grid {
        grid-template-columns: 1fr;
      }
    }
    @media (max-width: 720px) {
      .application-showcase-card,
      .application-requirement-card,
      .application-criteria-list article,
      .event-application-success {
        padding: 18px;
      }
      .application-page-head-panel {
        padding: 20px 18px;
      }
      .event-application-identity-stack {
        width: 100%;
      }
      .event-application-success-meta {
        grid-template-columns: 1fr;
      }
    }
    .register-drawer-grid { display: grid; gap: 16px; }
    .register-email-actions {
      justify-content: flex-end;
      margin-top: 8px;
    }
    .register-submit-actions {
      margin-top: 8px;
    }
    .register-note {
      color: var(--muted-text);
      font-size: 13px;
      line-height: 1.5;
    }
    footer {
      margin-top: 0;
      box-sizing: border-box;
      display: flex;
      align-items: center;
      backdrop-filter: blur(16px);
      background: linear-gradient(180deg, rgba(255,255,255,0.18), rgba(255,255,255,0)), var(--frame-nav-surface);
      border-top: 2px solid var(--frame-nav-border);
      box-shadow: var(--frame-nav-shadow);
    }
    .footer-inner { width: 100%; max-width: var(--nib-content-max-width, 1180px); margin: 0 auto; padding: 16px 20px; display: grid; gap: 8px; }
    .footer-minimal { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
    .footer-brand-line { display: grid; gap: 6px; }
    .footer-brand-line img { height: 38px; width: auto; object-fit: contain; }
    .footer-brand-tagline { font-family: var(--brand-display); color: var(--navy); font-size: 12px; font-weight: 500; letter-spacing: 0.13em; text-transform: uppercase; line-height: 1.12; margin-left: 35px; }
    .footer-office-block {
      display: grid;
      gap: 2px;
      max-width: 520px;
      color: #5b6784;
      text-align: right;
    }
    .footer-office-block strong {
      color: var(--navy);
      font-size: 13px;
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }
    .footer-office-block span {
      line-height: 1.45;
      font-size: 13px;
    }
    .footer-note { color: #5b6784; font-size: 13px; padding-top: 0; }
    .small { color: var(--muted-text); font-size: 13px; }
    footer .small { color: #5b6784; }
    .nib-ui-button, button, .path-chip, .pill, .role-chip, .appearance-summary, .header-nav-link, summary {
      font-family: var(--brand-display);
      letter-spacing: 0;
    }
    
    :root {
      --nib-ui-radius-xs: 8px;
      --nib-ui-radius-sm: 12px;
      --nib-ui-radius-md: 16px;
      --nib-ui-radius-lg: 22px;
      --nib-ui-control-height-sm: 38px;
      --nib-ui-control-height-md: 46px;
      --nib-ui-control-height-lg: 54px;
      --nib-ui-control-height-input: 44px;
      --nib-ui-control-height-textarea: 96px;
      --nib-ui-control-font-size: 15px;
      --nib-ui-control-font-size-sm: 13px;
      --nib-ui-control-padding-y: 10px;
      --nib-ui-control-x: 18px;
      --nib-ui-icon-size: 48px;
      --nib-base-font-size: 16px;
      --nib-ui-gloss-line: color-mix(in srgb, var(--primary-start) 16%, transparent);
      --nib-ui-gloss-line-strong: color-mix(in srgb, var(--primary-start) 28%, transparent);
      --nib-ui-gloss-sheen: linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0.22) 48%, rgba(255,255,255,0) 100%);
      --nib-ui-gloss-surface: linear-gradient(180deg, rgba(255,255,255,0.99), rgba(255,255,255,0.94));
      --nib-ui-gloss-surface-warm: linear-gradient(180deg, rgba(255,253,247,0.99), rgba(245,241,230,0.93));
      --nib-ui-gloss-shadow: 0 16px 34px rgba(16, 29, 63, 0.14);
      --nib-ui-gloss-shadow-soft: 0 10px 24px rgba(16, 29, 63, 0.1);
      --nib-ui-gloss-inner: inset 0 1px 0 rgba(255,255,255,0.9), inset 0 -12px 24px rgba(255,255,255,0.18);
      --nib-ui-gloss-danger: linear-gradient(135deg, color-mix(in srgb, var(--red) 92%, #ffffff 8%), color-mix(in srgb, var(--red) 70%, #c9a227 30%));
      --nib-ui-gloss-brand: linear-gradient(135deg, var(--primary-start), color-mix(in srgb, var(--primary-end) 78%, var(--red) 22%));
      --nib-ui-gloss-accent: linear-gradient(135deg, var(--accent-start), color-mix(in srgb, var(--accent-end) 84%, #ffffff 16%));
      --nib-ui-input-text: var(--ink);
      --nib-ui-on-primary: var(--primary-text, #ffffff);
      --nib-ui-on-secondary: var(--secondary-text);
      --nib-ui-on-accent: var(--accent-text, #ffffff);
      --nib-ui-on-danger: #ffffff;
      --nib-ui-on-outline: var(--secondary-text);
      --nib-ui-on-flat: var(--secondary-text);
      --nib-ui-button-radius-base: var(--nib-ui-radius-md);
      --nib-ui-button-radius-soft: var(--nib-ui-radius-sm);
      --nib-ui-button-radius-pill: 999px;
      --nib-ui-button-shell-primary: var(--nib-ui-gloss-brand);
      --nib-ui-button-shell-secondary: var(--nib-ui-gloss-surface-warm);
      --nib-ui-button-shell-accent: var(--nib-ui-gloss-accent);
      --nib-ui-button-shell-danger: var(--nib-ui-gloss-danger);
      --nib-ui-button-shell-outline: linear-gradient(180deg, rgba(255,255,255,0.86), rgba(255,255,255,0.46));
      --nib-ui-button-shell-flat: color-mix(in srgb, var(--cream) 82%, #ffffff 18%);
      --nib-ui-button-border-primary: color-mix(in srgb, var(--primary-start) 58%, var(--gold) 42%);
      --nib-ui-button-border-secondary: var(--nib-ui-gloss-line);
      --nib-ui-button-border-accent: color-mix(in srgb, var(--gold) 62%, var(--primary-start) 38%);
      --nib-ui-button-border-danger: color-mix(in srgb, var(--red) 60%, #ffffff 40%);
      --nib-ui-button-border-outline: color-mix(in srgb, var(--primary-start) 34%, var(--gold) 20%);
      --nib-ui-button-border-hover: var(--nib-ui-gloss-line-strong);
      --nib-ui-button-shadow-rest: var(--nib-ui-gloss-shadow-soft), var(--nib-ui-gloss-inner);
      --nib-ui-button-shadow-strong: 0 18px 32px rgba(16, 29, 63, 0.22), var(--nib-ui-gloss-inner);
      --nib-ui-button-shadow-hover: 0 20px 34px rgba(16, 29, 63, 0.16), var(--nib-ui-gloss-inner);
      --nib-ui-button-shadow-flat: 0 12px 26px rgba(16,29,63,0.08);
      --nib-ui-button-shadow-pressed: inset 0 1px 8px rgba(16, 29, 63, 0.12);
      --nib-ui-button-highlight-bg: var(--nib-ui-gloss-sheen);
      --nib-ui-button-highlight-opacity: 0.76;
      --nib-ui-button-highlight-radius: calc(var(--nib-ui-button-radius-base) - 1px) calc(var(--nib-ui-button-radius-base) - 1px) 12px 12px;
      --nib-ui-button-translate-hover: -1px;
      --nib-ui-button-scale-hover: 1;
      --nib-ui-button-font-family: var(--brand-display);
      --nib-ui-button-font-weight: 700;
      --nib-ui-button-letter-spacing: 0;
      --nib-ui-button-text-transform: none;
      --nib-ui-button-border-style: solid;
      --nib-ui-button-backdrop-filter: none;
      --nib-ui-button-filter: none;
      --nib-ui-button-hover-wash: linear-gradient(135deg, rgba(201,162,39,0.28), rgba(155,27,46,0.16));
      --nib-ui-button-active-wash: linear-gradient(135deg, rgba(27,42,91,0.24), rgba(155,27,46,0.28));
      --nib-ui-button-hover-wash-opacity: 0.18;
      --nib-ui-button-active-wash-opacity: 0.28;
      --nib-ui-button-icon-bg: var(--nib-ui-button-shell-primary);
      --nib-ui-button-icon-border: color-mix(in srgb, var(--gold) 42%, var(--primary-start) 58%);
      --nib-ui-button-icon-shadow: 0 16px 30px rgba(16, 29, 63, 0.2), var(--nib-ui-gloss-inner);
      --nib-ui-button-icon-radius: var(--nib-ui-button-radius-pill);
      --nib-ui-chip-bg: linear-gradient(180deg, rgba(255,255,255,0.76), rgba(255,255,255,0.34));
      --nib-ui-chip-border: color-mix(in srgb, var(--gold) 34%, transparent);
      --nib-ui-chip-shadow: inset 0 1px 0 rgba(255,255,255,0.76);
    }

    :where(button, .nib-ui-button, summary) {
      font-family: var(--nib-ui-button-font-family);
      letter-spacing: var(--nib-ui-button-letter-spacing);
      text-transform: var(--nib-ui-button-text-transform);
    }

    :where(button, .nib-ui-button) {
      touch-action: manipulation;
    }

    :where(button, .nib-ui-button):where(
      :not(.login-link-button):not(.appearance-option):not(.theme-option):not(.header-role-option):not(.header-account-menu-item):not(.portal-row-summary):not(.mobile-header-summary):not(.portal-file-chip):not(.portal-file-action):not(.portal-inline-timeline-toggle):not(.nibveda-compact-button-table):not(.chair-submenu-button):not(.chair-action-chip):not(.reviewer-workspace-tab):not(.admin-tab-button):not(.organizer-workspace-tab-button):not(.track-chair-workspace-tab):not(.author-email-box-card)
    ) {
      --nib-ui-button-fg: var(--nib-ui-on-primary, var(--primary-text, #ffffff));
      position: relative;
      isolation: isolate;
      min-height: var(--nib-ui-control-height-md);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: var(--nib-ui-control-padding-y) var(--nib-ui-control-x);
      font-size: var(--nib-ui-control-font-size);
      border-radius: var(--nib-ui-button-radius-base);
      border: 1px var(--nib-ui-button-border-style) var(--nib-ui-button-border-primary);
      background: var(--nib-ui-button-shell-primary);
      color: var(--nib-ui-button-fg);
      box-shadow: var(--nib-ui-button-shadow-rest);
      backdrop-filter: var(--nib-ui-button-backdrop-filter);
      filter: var(--nib-ui-button-filter);
      overflow: hidden;
      text-decoration: none;
      font-weight: var(--nib-ui-button-font-weight);
      cursor: pointer;
      transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease;
    }

    :where(button, .nib-ui-button):where(
      :not(.login-link-button):not(.appearance-option):not(.theme-option):not(.header-role-option):not(.header-account-menu-item):not(.portal-row-summary):not(.mobile-header-summary):not(.portal-file-chip):not(.portal-file-action):not(.portal-inline-timeline-toggle):not(.nibveda-compact-button-table):not(.chair-submenu-button):not(.chair-action-chip):not(.reviewer-workspace-tab):not(.admin-tab-button):not(.organizer-workspace-tab-button):not(.track-chair-workspace-tab):not(.author-email-box-card)
    ):hover {
      transform: translateY(var(--nib-ui-button-translate-hover)) scale(var(--nib-ui-button-scale-hover));
      border-color: var(--nib-ui-button-border-hover);
      box-shadow: var(--nib-ui-button-shadow-hover);
    }

    :where(button, .nib-ui-button):where(
      :not(.login-link-button):not(.appearance-option):not(.theme-option):not(.header-role-option):not(.header-account-menu-item):not(.portal-row-summary):not(.mobile-header-summary):not(.portal-file-chip):not(.portal-file-action):not(.portal-inline-timeline-toggle):not(.nibveda-compact-button-table):not(.chair-submenu-button):not(.chair-action-chip):not(.reviewer-workspace-tab):not(.admin-tab-button):not(.organizer-workspace-tab-button):not(.track-chair-workspace-tab):not(.author-email-box-card)
    ):active {
      transform: translateY(0);
      box-shadow: var(--nib-ui-button-shadow-pressed);
    }

    :where(.nib-ui-button--secondary) {
      --nib-ui-button-fg: var(--secondary-text);
      border-color: var(--nib-ui-gloss-line);
      background: var(--nib-ui-gloss-surface-warm);
      color: var(--nib-ui-button-fg);
    }

    :where(.nib-ui-button--accent) {
      --nib-ui-button-fg: var(--nib-ui-on-accent, var(--accent-text, #ffffff));
      border-color: color-mix(in srgb, var(--gold) 62%, var(--primary-start) 38%);
      background: var(--nib-ui-gloss-accent);
      color: var(--nib-ui-button-fg);
    }

    :where(.nib-ui-button--danger) {
      --nib-ui-button-fg: #ffffff;
      border-color: color-mix(in srgb, var(--red) 60%, #ffffff 40%);
      background: var(--nib-ui-gloss-danger);
      color: var(--nib-ui-button-fg);
    }

    :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
      border: 1px solid var(--input-border);
      border-radius: 14px;
      background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(255,253,247,0.92));
      color: var(--nib-ui-input-text);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.86), 0 8px 18px rgba(16, 29, 63, 0.04);
      font: inherit;
      font-size: var(--nib-ui-control-font-size);
      letter-spacing: 0;
      transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
    }

    :where(input:not([type="checkbox"]):not([type="radio"]), select) {
      min-height: var(--nib-ui-control-height-input);
    }

    :where(textarea) {
      min-height: var(--nib-ui-control-height-textarea);
    }

    :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea):focus {
      border-color: color-mix(in srgb, var(--gold) 70%, var(--primary-start) 30%);
      box-shadow: 0 0 0 3px color-mix(in srgb, var(--gold) 24%, transparent), inset 0 1px 0 rgba(255,255,255,0.92);
      outline: none;
    }

    :where(fieldset) {
      border-color: var(--nib-ui-gloss-line);
    }

    .nib-ui-surface,
    .nib-ui-menu,
    .portal-row-actions,
    .portal-dialog-panel {
      border: 1px solid var(--nib-ui-gloss-line);
      background: var(--nib-ui-gloss-surface);
      box-shadow: var(--nib-ui-gloss-shadow);
      backdrop-filter: blur(16px) saturate(118%);
    }

    .appearance-menu,
    .theme-menu,
    .header-role-menu,
    .mobile-header-panel {
      border: 1px solid var(--theme-menu-border, var(--nib-ui-gloss-line));
      background: var(--theme-menu-bg, rgba(255,253,247,0.99));
      color: var(--ink);
      box-shadow: var(--theme-menu-shadow, var(--nib-ui-gloss-shadow));
      backdrop-filter: blur(8px) saturate(106%);
    }

    .nib-ui-surface,
    .nib-ui-menu {
      position: relative;
      overflow: hidden;
    }

    .nib-ui-surface::before,
    .nib-ui-menu::before,
    .appearance-menu::before,
    .theme-menu::before,
    .header-role-menu::before,
    .mobile-header-panel::before {
      content: "";
      position: absolute;
      inset: 0 0 auto;
      height: 48%;
      background: var(--nib-ui-gloss-sheen);
      pointer-events: none;
      opacity: 0.3;
    }

    .appearance-menu > *,
    .theme-menu > *,
    .header-role-menu > *,
    .mobile-header-panel > * {
      position: relative;
      z-index: 1;
    }

    .nib-ui-button,
    .header-nav-link,
    .appearance-summary,
    .theme-summary,
    .button-style-summary,
    .header-role-summary,
    .header-action-button,
    .page-header-action-group .header-action-button,
    .organizer-workspace-tab-button {
      position: relative;
      isolation: isolate;
      min-height: var(--nib-ui-control-height-md);
      border-radius: var(--nib-ui-button-radius-base);
      border: 1px solid var(--nib-ui-button-border-secondary);
      background: var(--nib-ui-button-shell-secondary);
      color: var(--nib-ui-button-fg, var(--secondary-text));
      box-shadow: var(--nib-ui-button-shadow-rest);
      overflow: hidden;
      letter-spacing: 0;
      text-decoration: none;
    }

    .nib-ui-button,
    .header-nav-link,
    .appearance-summary,
    .theme-summary,
    .button-style-summary,
    .header-role-summary,
    .header-action-button,
    .page-header-action-group .header-action-button,
    .organizer-workspace-tab-button {
      --nib-ui-button-fg: var(--nib-ui-on-secondary, var(--secondary-text));
    }

    .nib-ui-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: var(--nib-ui-control-padding-y) var(--nib-ui-control-x);
      font-size: var(--nib-ui-control-font-size);
      font-weight: var(--nib-ui-button-font-weight);
      cursor: pointer;
      color: var(--nib-ui-button-fg);
      white-space: nowrap;
      flex: 0 0 auto;
    }

    .header-nav-link,
    .appearance-summary,
    .theme-summary,
    .button-style-summary,
    .header-role-summary {
      --nib-ui-button-fg: var(--nib-ui-on-primary, var(--primary-text, #ffffff));
      border-color: var(--nib-ui-button-border-primary);
      background: var(--nib-ui-button-shell-primary);
      color: var(--nib-ui-button-fg);
      box-shadow: var(--nib-ui-button-shadow-strong);
    }

    .nib-ui-button--pill {
      border-radius: var(--nib-ui-button-radius-pill);
    }

    .nib-ui-button--rounded {
      border-radius: var(--nib-ui-button-radius-base);
    }

    .nib-ui-button--compact {
      min-height: var(--nib-ui-control-height-sm);
      border-radius: var(--nib-ui-button-radius-soft);
      padding: calc(var(--nib-ui-control-padding-y) - 2px) calc(var(--nib-ui-control-x) - 4px);
      font-size: var(--nib-ui-control-font-size-sm);
    }

    .nib-ui-button--outline {
      --nib-ui-button-fg: var(--nib-ui-on-outline, var(--secondary-text));
      background: var(--nib-ui-button-shell-outline);
      color: var(--nib-ui-button-fg);
      border-color: var(--nib-ui-button-border-outline);
      box-shadow: var(--nib-ui-button-shadow-flat);
    }

    .nib-ui-button--flat {
      --nib-ui-button-fg: var(--nib-ui-on-flat, var(--secondary-text));
      background: var(--nib-ui-button-shell-flat);
      color: var(--nib-ui-button-fg);
      box-shadow: var(--nib-ui-button-shadow-flat);
    }

    .nib-ui-button__leading-icon {
      width: 18px;
      height: 18px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex: 0 0 auto;
      line-height: 0;
      position: relative;
      z-index: 1;
      color: var(--nib-ui-button-fg, currentColor);
    }

    .nib-ui-button__label {
      min-width: 0;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      line-height: 1.15;
      position: relative;
      z-index: 1;
      color: var(--nib-ui-button-fg, currentColor);
    }

    .nib-ui-button svg,
    .nib-ui-icon-glyph svg,
    .nib-ui-icon-button svg {
      width: 19px;
      height: 19px;
      display: block;
      stroke: currentColor;
      fill: none;
      stroke-linecap: round;
      stroke-linejoin: round;
      stroke-width: 2.2;
    }

    .nib-ui-icon-button {
      width: var(--nib-ui-icon-size);
      min-width: var(--nib-ui-icon-size);
      height: var(--nib-ui-icon-size);
      min-height: var(--nib-ui-icon-size);
      padding: 0;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
    }

    .nib-ui-icon-button--circle {
      border-radius: var(--nib-ui-button-icon-radius);
    }

    .nib-ui-icon-button--square {
      border-radius: min(var(--nib-ui-button-icon-radius), 14px);
    }

    .nib-ui-icon-button--soft {
      background: var(--nib-ui-gloss-surface-warm);
      color: var(--nib-ui-on-secondary, var(--secondary-text));
    }

    .nib-ui-button::before,
    .header-nav-link::before,
    .appearance-summary::before,
    .theme-summary::before,
    .button-style-summary::before,
    .header-role-summary::before,
    .header-action-button::before,
    .page-header-action-group .header-action-button::before,
    .organizer-workspace-tab-button::before {
      content: "";
      position: absolute;
      inset: 1px 1px auto;
      height: 50%;
      border-radius: var(--nib-ui-button-highlight-radius);
      background: var(--nib-ui-button-highlight-bg);
      opacity: var(--nib-ui-button-highlight-opacity);
      pointer-events: none;
      z-index: 0;
    }

    .nib-ui-button::after,
    .header-nav-link::after,
    .appearance-summary::after,
    .theme-summary::after,
    .button-style-summary::after,
    .header-role-summary::after,
    .header-action-button::after,
    .page-header-action-group .header-action-button::after,
    .organizer-workspace-tab-button::after {
      content: "";
      position: absolute;
      inset: 0;
      background: var(--nib-ui-button-hover-wash);
      opacity: 0;
      pointer-events: none;
      z-index: 0;
      transition: opacity 180ms ease, background 180ms ease;
    }

    .nib-ui-button > *,
    .header-nav-link > *,
    .appearance-summary > *,
    .theme-summary > *,
    .button-style-summary > *,
    .header-role-summary > *,
    .header-action-button > *,
    .page-header-action-group .header-action-button > *,
    .organizer-workspace-tab-button > * {
      position: relative;
      z-index: 1;
    }

    .nib-ui-button:hover,
    .header-nav-link:hover,
    .appearance-summary:hover,
    .theme-summary:hover,
    .button-style-summary:hover,
    .header-role-summary:hover,
    .header-action-button:hover,
    .page-header-action-group .header-action-button:hover,
    .organizer-workspace-tab-button:hover {
      transform: translateY(var(--nib-ui-button-translate-hover));
      border-color: var(--nib-ui-button-border-hover);
      box-shadow: var(--nib-ui-button-shadow-hover);
    }

    .nib-ui-button:hover::after,
    .header-nav-link:hover::after,
    .appearance-summary:hover::after,
    .theme-summary:hover::after,
    .button-style-summary:hover::after,
    .header-role-summary:hover::after,
    .header-action-button:hover::after,
    .page-header-action-group .header-action-button:hover::after,
    .organizer-workspace-tab-button:hover::after {
      opacity: var(--nib-ui-button-hover-wash-opacity);
    }

    .nib-ui-button:active,
    .header-nav-link:active,
    .appearance-summary:active,
    .theme-summary:active,
    .button-style-summary:active,
    .header-role-summary:active,
    .header-action-button:active,
    .page-header-action-group .header-action-button:active,
    .organizer-workspace-tab-button:active {
      transform: translateY(0);
      box-shadow: var(--nib-ui-button-shadow-pressed);
    }

    .nib-ui-button:active::after,
    .header-nav-link:active::after,
    .appearance-summary:active::after,
    .theme-summary:active::after,
    .button-style-summary:active::after,
    .header-role-summary:active::after,
    .header-action-button:active::after,
    .page-header-action-group .header-action-button:active::after,
    .organizer-workspace-tab-button:active::after {
      background: var(--nib-ui-button-active-wash);
      opacity: var(--nib-ui-button-active-wash-opacity);
    }

    .nib-ui-button--primary,
    .header-action-button.primary,
    .page-header-action-group .header-action-button.primary,
    .organizer-workspace-tab-button[aria-pressed="true"] {
      --nib-ui-button-fg: var(--nib-ui-on-primary, var(--primary-text, #ffffff));
      border-color: var(--nib-ui-button-border-primary);
      background: var(--nib-ui-button-shell-primary);
      color: var(--nib-ui-button-fg);
      box-shadow: var(--nib-ui-button-shadow-strong);
    }

    .appearance-switcher[open] .appearance-summary,
    .theme-switcher[open] .theme-summary,
    .button-style-switcher[open] .button-style-summary,
    .header-role-switcher[open] .header-role-summary,
    .header-nav-link[aria-current="page"] {
      --nib-ui-button-fg: var(--nib-ui-on-accent, var(--accent-text, #ffffff));
      border-color: var(--nib-ui-button-border-accent);
      background: var(--nib-ui-button-shell-accent);
      color: var(--nib-ui-button-fg);
      box-shadow: var(--nib-ui-button-shadow-strong);
    }

    .nib-ui-button--secondary {
      --nib-ui-button-fg: var(--nib-ui-on-secondary, var(--secondary-text));
      border-color: var(--nib-ui-button-border-secondary);
      background: var(--nib-ui-button-shell-secondary);
      color: var(--nib-ui-button-fg);
    }

    .nib-ui-button--accent {
      --nib-ui-button-fg: var(--nib-ui-on-accent, var(--accent-text, #ffffff));
      border-color: var(--nib-ui-button-border-accent);
      background: var(--nib-ui-button-shell-accent);
      color: var(--nib-ui-button-fg);
    }

    .nib-ui-button--danger,
    .header-action-button.logout,
    .page-header-action-group .header-action-button.logout {
      --nib-ui-button-fg: var(--nib-ui-on-danger, #ffffff);
      border-color: var(--nib-ui-button-border-danger);
      background: var(--nib-ui-button-shell-danger);
      color: var(--nib-ui-button-fg);
    }

    .header-action-button.logout,
    .page-header-action-group .header-action-button.logout {
      color: var(--nib-ui-button-fg);
    }

    .mobile-header-summary,
    .portal-row-summary,
    .portal-inline-timeline-toggle,
    .nib-ui-icon-button {
      --nib-ui-icon-fg: var(--nib-ui-on-primary, var(--primary-text, #ffffff));
      border-radius: var(--nib-ui-button-radius-pill);
      background: var(--nib-ui-button-icon-bg);
      color: var(--nib-ui-icon-fg);
      border-color: var(--nib-ui-button-icon-border);
      box-shadow: var(--nib-ui-button-icon-shadow);
    }

    .nib-ui-chip,
    .appearance-current-label,
    .theme-current-label,
    .button-style-current-label,
    .header-role-current,
    .role-chip,
    .pill {
      border: 1px solid var(--nib-ui-chip-border);
      background: var(--nib-ui-chip-bg);
      box-shadow: var(--nib-ui-chip-shadow);
      letter-spacing: 0;
    }

    .appearance-current-label,
    .theme-current-label,
    .button-style-current-label,
    .header-role-current {
      color: var(--secondary-text);
    }

    .nibveda-toggle-button,
    .nib-ui-toggle,
    .chair-switch-toggle {
      display: grid;
      grid-template-columns: auto auto 1fr;
      gap: 12px;
      align-items: center;
      min-width: 0;
      padding: 14px 16px;
      border-radius: 16px;
      border: 1px solid color-mix(in srgb, var(--gold, #c9a227) 24%, transparent);
      background: rgba(255,255,255,0.76);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.88), 0 10px 24px rgba(16,29,63,0.05);
      cursor: pointer;
    }

    .nibveda-toggle-button input,
    .nib-ui-toggle input,
    .chair-switch-toggle input {
      position: absolute;
      opacity: 0;
      pointer-events: none;
    }

    .nibveda-toggle-button .nib-ui-toggle-control,
    .nib-ui-toggle-control,
    .chair-switch-toggle-control {
      position: relative;
      width: 62px;
      height: 34px;
      border-radius: 999px;
      background: color-mix(in srgb, var(--navy, #1b2a5b) 16%, #c7d6ee 84%);
      box-shadow: inset 0 1px 3px rgba(16,29,63,0.18);
      transition: background 0.18s ease, box-shadow 0.18s ease;
    }

    .nibveda-toggle-button .nib-ui-toggle-control::after,
    .nib-ui-toggle-control::after,
    .chair-switch-toggle-control::after {
      content: "";
      position: absolute;
      top: 3px;
      left: 3px;
      width: 28px;
      height: 28px;
      border-radius: 50%;
      background: #ffffff;
      box-shadow: 0 6px 16px rgba(16,29,63,0.18);
      transition: transform 0.18s ease;
    }

    .nibveda-toggle-button input:checked + .nib-ui-toggle-control,
    .nib-ui-toggle input:checked + .nib-ui-toggle-control,
    .chair-switch-toggle input:checked + .chair-switch-toggle-control {
      background: linear-gradient(135deg, color-mix(in srgb, var(--navy, #1b2a5b) 80%, #09203f 20%), color-mix(in srgb, var(--accent-end, var(--accent-start, #9b1b2e)) 72%, #d8f6ff 28%));
      box-shadow: inset 0 1px 3px rgba(5,18,46,0.26);
    }

    .nibveda-toggle-button input:checked + .nib-ui-toggle-control::after,
    .nib-ui-toggle input:checked + .nib-ui-toggle-control::after,
    .chair-switch-toggle input:checked + .chair-switch-toggle-control::after {
      transform: translateX(28px);
    }

    .nibveda-toggle-button input:focus-visible + .nib-ui-toggle-control,
    .nib-ui-toggle input:focus-visible + .nib-ui-toggle-control,
    .chair-switch-toggle input:focus-visible + .chair-switch-toggle-control {
      outline: 2px solid color-mix(in srgb, var(--gold, #c9a227) 72%, #ffffff 28%);
      outline-offset: 3px;
    }

    .nibveda-toggle-button.is-disabled,
    .nib-ui-toggle.is-disabled,
    .chair-switch-toggle.is-disabled {
      opacity: 0.68;
      cursor: not-allowed;
    }

    .nibveda-toggle-button .nib-ui-toggle-text,
    .nib-ui-toggle-text,
    .chair-switch-toggle-text {
      display: grid;
      gap: 2px;
      min-width: 0;
    }

    .nibveda-toggle-button .nib-ui-toggle-text strong,
    .nibveda-toggle-button .nib-ui-toggle-text small,
    .nibveda-toggle-button .nib-ui-toggle-state,
    .nib-ui-toggle-text strong,
    .nib-ui-toggle-text small,
    .nib-ui-toggle-state,
    .chair-switch-toggle-text strong,
    .chair-switch-toggle-text small,
    .chair-switch-toggle-state {
      display: block;
    }

    .nibveda-toggle-button .nib-ui-toggle-text strong,
    .nib-ui-toggle-text strong,
    .chair-switch-toggle-text strong {
      color: var(--navy, #1b2a5b);
    }

    .nibveda-toggle-button .nib-ui-toggle-text small,
    .nib-ui-toggle-text small,
    .chair-switch-toggle-text small {
      color: var(--muted-text, rgba(27,42,91,0.68));
      font-weight: 700;
    }

    .nibveda-toggle-button .nib-ui-toggle-state,
    .nib-ui-toggle-state,
    .chair-switch-toggle-state {
      margin-top: 2px;
      color: color-mix(in srgb, var(--navy, #1b2a5b) 72%, var(--gold, #c9a227) 28%);
      font-size: 11px;
      font-weight: 900;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .nib-ui-tabs,
    .organizer-workspace-tabs {
      border-radius: var(--nib-ui-radius-lg);
      border: 1px solid var(--nib-ui-gloss-line);
      background: linear-gradient(180deg, rgba(255,255,255,0.74), rgba(255,255,255,0.36));
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.78), 0 12px 28px rgba(16,29,63,0.08);
    }

    button:not(.login-link-button):not(.appearance-option):not(.theme-option):not(.header-role-option):not(.header-account-menu-item):not(.portal-row-summary):not(.mobile-header-summary):not(.portal-inline-timeline-toggle):not(.portal-file-chip):not(.portal-file-action):not(.nibveda-compact-button-table):not(.application-card):not(.portal-feedback-link):not(.chair-submenu-button):not(.chair-action-chip):not(.reviewer-workspace-tab):not(.admin-tab-button):not(.organizer-workspace-tab-button):not(.track-chair-workspace-tab):not(.chair-track-visual-legend-item):not(.chair-drawer-card-value-link):not(.chair-decision-tab):not(.author-email-box-card) {
      --nib-ui-button-fg: var(--nib-ui-on-primary, var(--primary-text, #ffffff));
      border-radius: var(--nib-ui-button-radius-base);
      border-color: var(--nib-ui-button-border-primary);
      background: var(--nib-ui-button-shell-primary);
      color: var(--nib-ui-button-fg);
      box-shadow: var(--nib-ui-button-shadow-rest);
      letter-spacing: 0;
    }

    .nibveda-compact-button-table {
      --nib-table-button-width: clamp(128px, 14vw, 156px);
      min-width: min(100%, var(--nib-table-button-width));
      max-width: min(100%, var(--nib-table-button-width));
      min-height: 34px;
      border-radius: 10px;
      padding: 5px 9px;
      font-size: 10.8px;
      line-height: 1.15;
      white-space: normal;
    }

    .header-nav-link,
    .appearance-summary,
    .theme-summary,
    .button-style-summary,
    .header-role-summary,
    .header-action-button,
    .page-header-action-group .header-action-button {
      border-radius: var(--nib-ui-button-radius-base);
    }

    .appearance-switcher[open]::after,
    .appearance-switcher[open]::after,
    .theme-switcher[open]::after,
    .header-role-switcher[open]::after,
    .mobile-header-menu[open]::after {
      content: "";
      position: absolute;
      top: 100%;
      right: 0;
      width: min(280px, calc(100vw - 32px));
      height: 20px;
    }

    .portal-row-menu[open]::after {
      content: "";
      position: absolute;
      top: 0;
      left: 100%;
      width: 22px;
      height: 72px;
    }

    .nib-ui-showcase {
      padding: 28px 0 44px;
      display: grid;
      gap: 20px;
    }

    .nib-ui-showcase-hero,
    .nib-ui-showcase-card {
      border-radius: 22px;
      border: 1px solid var(--nib-ui-gloss-line);
      background: var(--nib-ui-gloss-surface);
      box-shadow: var(--nib-ui-gloss-shadow-soft);
    }

    .nib-ui-showcase-hero {
      padding: 24px;
      display: grid;
      gap: 10px;
    }

    .nib-ui-showcase-hero h1,
    .nib-ui-showcase-card h2 {
      margin: 0;
      color: var(--navy);
      font-family: var(--brand-display);
      letter-spacing: 0;
    }

    .nib-ui-showcase-hero p,
    .nib-ui-showcase-card p {
      margin: 0;
      color: var(--muted-text);
      line-height: 1.6;
    }

    .nib-ui-showcase-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 16px;
    }

    .nib-ui-showcase-card {
      padding: 18px;
      display: grid;
      gap: 14px;
      align-content: start;
    }

    .nib-ui-showcase-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      align-items: center;
    }

    .nib-ui-showcase-form {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
    }

    .nib-ui-showcase-form .full {
      grid-column: 1 / -1;
    }

    @media (max-width: 900px) {
      .nib-ui-showcase-grid,
      .nib-ui-showcase-form {
        grid-template-columns: 1fr;
      }
    }

    
    @keyframes chair-favorite-bar-pulse {
      0%, 100% {
        box-shadow:
          0 12px 24px rgba(16, 29, 63, 0.12),
          0 0 0 0 color-mix(in srgb, var(--primary-end) 26%, transparent);
      }
      50% {
        box-shadow:
          0 16px 32px rgba(16, 29, 63, 0.18),
          0 0 0 8px color-mix(in srgb, var(--primary-end) 14%, transparent);
      }
    }
    @keyframes chair-favorite-bar-sheen {
      0% {
        transform: translateX(-130%);
        opacity: 0;
      }
      18% {
        opacity: 0.28;
      }
      55% {
        transform: translateX(135%);
        opacity: 0;
      }
      100% {
        transform: translateX(135%);
        opacity: 0;
      }
    }
    .chair-shell-topline {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 18px;
      min-width: 0;
    }
    .chair-workspace-favorite-strip {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      flex: 0 0 auto;
      width: auto;
      max-width: min(248px, calc(100vw - 24px));
      margin: 0;
      padding: 0;
      min-height: 0;
      position: fixed;
      top: 6px;
      right: clamp(124px, 12vw, 176px);
      left: auto;
      transform: none;
      z-index: 126;
      pointer-events: none;
      opacity: 0;
      visibility: hidden;
      /* Draggable in mobile view (see enableMobileFloatingDrag in
         shared-script.ts) -- without this the browser claims a vertical
         touch-drag for page scrolling before our pointermove handler ever
         sees it, making the strip feel stuck in place. */
      touch-action: none;
      transition: opacity 180ms ease, visibility 0ms linear 180ms;
    }
    .chair-workspace-favorite-strip.is-open {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
      transition: opacity 180ms ease;
    }
    .chair-workspace-favorite-menu {
      position: relative;
      width: auto;
      min-width: 0;
      display: flex;
      justify-content: flex-end;
      pointer-events: auto;
    }
    .chair-workspace-favorite-toggle {
      list-style: none;
      position: relative;
      isolation: isolate;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      width: auto;
      min-height: 38px;
      padding: 6px 11px 6px 9px;
      border-radius: 999px;
      border: 1px solid color-mix(in srgb, var(--gold) 28%, rgba(255, 255, 255, 0.2));
      background:
        linear-gradient(135deg, color-mix(in srgb, var(--primary-start) 88%, white 12%), color-mix(in srgb, var(--primary-end) 86%, white 14%)),
        linear-gradient(180deg, rgba(255,255,255,0.18), rgba(255,255,255,0));
      color: var(--primary-text, #ffffff);
      box-shadow:
        0 12px 24px rgba(16, 29, 63, 0.12),
        0 0 0 0 color-mix(in srgb, var(--primary-end) 26%, transparent);
      font-family: var(--nib-ui-button-font-family);
      font-size: 11px;
      font-weight: var(--nib-ui-button-font-weight);
      letter-spacing: var(--nib-ui-button-letter-spacing);
      line-height: 1.2;
      text-transform: var(--nib-ui-button-text-transform);
      cursor: pointer;
      transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease;
      -webkit-text-fill-color: currentColor;
      text-shadow: none;
      user-select: none;
      overflow: hidden;
      animation: chair-favorite-bar-pulse 1.8s ease-in-out infinite;
    }
    .chair-workspace-favorite-toggle::before {
      content: "\2605";
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 18px;
      height: 18px;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.16);
      color: color-mix(in srgb, white 88%, var(--gold) 12%);
      font-size: 10px;
      line-height: 1;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.18);
      flex: 0 0 18px;
    }
    .chair-workspace-favorite-toggle::after {
      content: "";
      position: absolute;
      inset: 0 auto 0 -24%;
      width: 34%;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,0.28), transparent);
      transform: translateX(-130%);
      opacity: 0;
      pointer-events: none;
      animation: chair-favorite-bar-sheen 2.8s ease-in-out infinite;
    }
    .chair-workspace-favorite-toggle::-webkit-details-marker {
      display: none;
    }
    .chair-workspace-favorite-toggle::marker {
      display: none;
      content: "";
    }
    .chair-workspace-favorite-toggle:hover {
      border-color: color-mix(in srgb, var(--gold) 34%, rgba(255, 255, 255, 0.26));
      background:
        linear-gradient(135deg, color-mix(in srgb, var(--primary-start) 84%, white 16%), color-mix(in srgb, var(--primary-end) 82%, white 18%)),
        linear-gradient(180deg, rgba(255,255,255,0.2), rgba(255,255,255,0));
      color: var(--primary-text, #ffffff);
      box-shadow:
        0 16px 30px rgba(16, 29, 63, 0.18),
        0 0 0 8px color-mix(in srgb, var(--primary-end) 12%, transparent);
      transform: translateY(var(--nib-ui-button-translate-hover)) scale(var(--nib-ui-button-scale-hover));
    }
    .chair-workspace-favorite-menu[open] .chair-workspace-favorite-toggle {
      border-color: color-mix(in srgb, var(--gold) 40%, rgba(255, 255, 255, 0.32));
      background:
        linear-gradient(135deg, color-mix(in srgb, var(--primary-start) 82%, white 18%), color-mix(in srgb, var(--primary-end) 80%, white 20%)),
        linear-gradient(180deg, rgba(255,255,255,0.22), rgba(255,255,255,0));
      color: var(--primary-text, #ffffff);
      box-shadow:
        0 18px 34px rgba(16, 29, 63, 0.22),
        0 0 0 10px color-mix(in srgb, var(--primary-end) 10%, transparent);
      animation: none;
    }
    .chair-workspace-favorite-toggle-label {
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .chair-workspace-favorite-toggle-caret {
      width: 10px;
      height: 10px;
      flex: 0 0 10px;
      border-right: 2px solid currentColor;
      border-bottom: 2px solid currentColor;
      transform: rotate(45deg) translateY(-1px);
      transition: transform 180ms ease;
    }
    .chair-workspace-favorite-menu[open] .chair-workspace-favorite-toggle-caret {
      transform: rotate(-135deg) translateY(-1px);
    }
    .chair-workspace-favorite-menu-panel {
      position: absolute;
      top: calc(100% + 8px);
      right: 0;
      left: auto;
      transform: none;
      z-index: 121;
      display: grid;
      gap: 12px;
      width: min(232px, calc(100vw - 24px));
      min-width: min(196px, calc(100vw - 24px));
      padding: 12px 12px 14px;
      border: 1px solid color-mix(in srgb, var(--gold) 22%, rgba(27, 42, 91, 0.12));
      border-radius: 20px;
      background:
        linear-gradient(180deg, color-mix(in srgb, var(--card-bg, rgba(255,255,255,0.98)) 96%, white 4%), color-mix(in srgb, var(--card-bg, rgba(245,241,230,0.94)) 90%, transparent)),
        radial-gradient(circle at top right, color-mix(in srgb, var(--gold) 18%, transparent), transparent 52%);
      box-shadow: 0 22px 42px rgba(16, 29, 63, 0.18);
      backdrop-filter: blur(14px);
    }
    .chair-workspace-favorite-strip-label {
      color: color-mix(in srgb, var(--secondary-text) 82%, var(--primary-end) 18%);
      font-size: 10px;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      white-space: nowrap;
      line-height: 1;
    }
    .chair-workspace-favorites {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      align-items: center;
      justify-content: stretch;
      gap: 6px;
      width: 100%;
      min-width: 0;
    }
    .chair-favorite-empty {
      color: var(--secondary-text);
      font-size: 12px;
      font-weight: 600;
      line-height: 1.35;
      grid-column: 1 / -1;
      justify-self: start;
    }
    .chair-favorite-chip,
    .chair-drawer-favorite-button {
      position: relative;
      isolation: isolate;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 34px;
      border-radius: 999px;
      border: 1px solid var(--nib-ui-button-border-secondary);
      background: var(--nib-ui-button-shell-secondary);
      color: var(--nib-ui-on-secondary, var(--secondary-text));
      box-shadow: var(--nib-ui-button-shadow-flat);
      font-family: var(--nib-ui-button-font-family);
      font-size: 12px;
      font-weight: var(--nib-ui-button-font-weight);
      letter-spacing: var(--nib-ui-button-letter-spacing);
      line-height: 1.2;
      text-transform: var(--nib-ui-button-text-transform);
      cursor: pointer;
      transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease;
      -webkit-text-fill-color: currentColor;
      text-shadow: none;
    }
    .chair-favorite-chip {
      width: 100%;
      max-width: none;
      min-width: 0;
      min-height: 30px;
      padding: 6px 10px;
      text-align: left;
      justify-content: flex-start;
      font-size: 11px;
      line-height: 1.15;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      border-radius: 16px;
    }
    .chair-drawer-favorite-button {
      padding: 7px 14px;
      white-space: nowrap;
      flex: 0 0 auto;
    }
    .chair-favorite-chip:hover,
    .chair-drawer-favorite-button:hover {
      border-color: var(--nib-ui-button-border-hover);
      background: var(--nib-ui-button-shell-outline);
      color: var(--nib-ui-on-outline, var(--nib-ui-on-secondary, var(--secondary-text)));
      box-shadow: var(--nib-ui-button-shadow-hover);
      transform: translateY(var(--nib-ui-button-translate-hover)) scale(var(--nib-ui-button-scale-hover));
    }
    .chair-favorite-chip[aria-current="true"],
    .chair-drawer-favorite-button[data-favorited="true"] {
      border-color: var(--nib-ui-button-border-accent);
      background: var(--nib-ui-button-shell-accent);
      color: var(--nib-ui-on-accent, var(--accent-text, var(--navy)));
      box-shadow: var(--nib-ui-button-shadow-strong);
      -webkit-text-fill-color: currentColor;
    }
    .chair-favorite-chip[aria-current="true"]:hover,
    .chair-drawer-favorite-button[data-favorited="true"]:hover {
      border-color: var(--nib-ui-button-border-accent);
      background: var(--nib-ui-button-shell-accent);
      color: var(--nib-ui-on-accent, var(--accent-text, var(--navy)));
    }
    .event-drawer-head-title--favorite {
      gap: 10px;
      flex-wrap: wrap;
    }
    .chair-drawer-favorite-button[hidden] {
      display: none !important;
    }
    @media (max-width: 900px) {
      .chair-workspace-favorite-strip {
        right: 104px;
        max-width: min(236px, calc(100vw - 20px));
      }
    }
    @media (max-width: 640px) {
      /* Sit right-aligned, just below the vertical-center-right workspace
         nav toggle pill (top:50%, height 84px), instead of floating
         centered over the top of the page where it can overlap drawers. */
      .chair-workspace-favorite-strip {
        top: calc(50% + 54px);
        left: auto;
        right: 6px;
        transform: none;
        max-width: min(160px, calc(100vw - 20px));
      }
      .chair-workspace-favorite-menu-panel {
        left: auto;
        right: 0;
        transform: none;
        width: min(220px, calc(100vw - 20px));
      }
    }
    .chair-shell-head {
      width: 100%;
      margin: 0 0 8px;
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      align-items: center;
      gap: 18px;
    }
    /* Always float the heading top-right (position:absolute) within the
       shared .panel shell, matching Author/Organizer's workspace-label
       technique at every viewport width, so all five workspace headings
       land at the identical on-screen position regardless of role or
       screen size. */
    .chair-shell-head h2 {
      position: absolute;
      top: 26px;
      right: 50px;
      z-index: 4;
      margin: 0;
      color: var(--navy);
      font-family: var(--brand-display);
      font-size: var(--nib-ui-heading-2-size, 24px);
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.1;
      text-transform: none;
      white-space: nowrap;
    }
    .chair-shell-head .organizer-shell-head-actions {
      margin-left: 0;
      width: 100%;
    }
    .chair-shell-topbar-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      width: 100%;
      max-width: 640px;
    }
    .chair-event-selection {
      width: 100%;
      max-width: 640px;
    }
    .chair-shell-topbar-actions > select,
    .chair-shell-topbar-actions > .nib-select-shell,
    .chair-event-selection > select,
    .chair-event-selection > .nib-select-shell {
      width: 100%;
      max-width: 640px;
    }
    .chair-shell-topbar-actions > .nib-select-shell,
    .chair-event-selection > .nib-select-shell {
      --nib-select-width: 100%;
    }
    #portal-chair-shell .workspace-welcome-panel {
      margin: -24px 0 18px -24px;
      min-height: 76px;
      padding: 0 18px;
      border: 1px solid color-mix(in srgb, var(--primary-start) 28%, rgba(255, 255, 255, 0.46));
      border-radius: 15px 0 14px 14px;
      background:
        linear-gradient(145deg, color-mix(in srgb, var(--primary-start) 86%, white 14%), color-mix(in srgb, var(--primary-end) 84%, white 16%)),
        linear-gradient(180deg, rgba(255,255,255,0.16), rgba(255,255,255,0));
      box-shadow: 0 18px 34px rgba(16, 29, 63, 0.12);
    }
    #portal-chair-shell .workspace-welcome {
      margin: 22px 0 10px;
      color: var(--primary-text, #ffffff);
      text-shadow: 0 1px 0 rgba(0, 0, 0, 0.12);
    }
    .chair-workspace-panel {
      padding: 0 16px 16px;
    }
    .chair-workspace-layout {
      display: grid;
      grid-template-columns: 210px minmax(0, 1fr);
      gap: 18px;
      align-items: start;
    }
    .chair-submenu-shell {
      margin-top: 0;
      border: 1px solid var(--row-menu-panel-border, color-mix(in srgb, var(--gold) 28%, transparent));
      border-radius: 18px;
      background: linear-gradient(
        180deg,
        color-mix(in srgb, var(--row-menu-panel-bg, rgba(255,255,255,0.94)) 96%, white 4%),
        color-mix(in srgb, var(--row-menu-panel-bg, rgba(255,253,247,0.78)) 88%, transparent)
      );
      padding: 10px 12px 12px;
      display: grid;
      gap: 10px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.9), var(--row-menu-panel-shadow, 0 12px 26px rgba(16,29,63,0.06));
      align-self: start;
    }
    .chair-workspace-submenu {
      display: grid;
      gap: 5px;
      align-content: start;
    }
    .chair-submenu-group {
      position: relative;
      display: block;
      width: 100%;
    }
    .chair-submenu-group > .chair-submenu-button,
    .chair-submenu-group > .organizer-workspace-tab-button {
      width: 100%;
    }
    /* Nested submenu children (Role Access Setting, Reviewer Setting, etc.,
       and Organizer's Submission Settings sub-tabs) are hidden by default
       everywhere -- shown via a tap-toggle on mobile (existing) or via
       hover/focus on tablet/desktop/laptop (below), instead of always
       occupying their own permanent row in the tab list. */
    .chair-submenu-children {
      display: none;
    }
    .chair-submenu-group-manual-closed > .chair-submenu-children {
      display: none !important;
    }
    .chair-submenu-child-button {
      display: flex;
      align-items: center;
      gap: 8px;
      width: 100%;
      min-height: 38px;
      padding: 7px 12px;
      border-radius: 10px;
      border: 1px solid rgba(27, 42, 91, 0.14);
      background: rgba(255, 255, 255, 0.75);
      color: var(--navy);
      font-size: 12.5px;
      font-weight: 700;
      text-align: left;
      cursor: pointer;
      white-space: nowrap;
    }
    .chair-submenu-child-button[aria-pressed="true"] {
      background: linear-gradient(135deg, var(--primary-start), var(--primary-end));
      border-color: var(--primary-start);
      color: var(--primary-text, #ffffff);
    }
    .chair-submenu-child-button .workspace-nav-child-icon {
      display: inline-flex;
      width: 16px;
      height: 16px;
      flex: 0 0 auto;
    }
    .chair-submenu-child-button .workspace-nav-child-icon svg {
      width: 100%;
      height: 100%;
    }
    .chair-submenu-button {
      position: relative;
      isolation: isolate;
      min-height: 38px;
      width: 100%;
      border: 1px solid var(--row-menu-item-border, var(--nib-ui-button-border-secondary));
      border-left: 4px solid transparent;
      border-radius: var(--nib-ui-button-radius-base);
      background: var(--row-menu-item-bg, var(--nib-ui-button-shell-secondary));
      box-shadow: var(--nib-ui-button-shadow-flat, 0 10px 18px rgba(16,29,63,0.06));
      color: var(--row-menu-item-text, var(--nib-ui-on-secondary, var(--secondary-text)));
      display: flex;
      align-items: center;
      justify-content: flex-start;
      padding: 8px 10px;
      text-align: left;
      font-family: var(--nib-ui-button-font-family);
      font-weight: var(--nib-ui-button-font-weight);
      letter-spacing: var(--nib-ui-button-letter-spacing);
      text-transform: var(--nib-ui-button-text-transform);
      backdrop-filter: var(--nib-ui-button-backdrop-filter);
      filter: var(--nib-ui-button-filter);
      cursor: pointer;
      -webkit-text-fill-color: currentColor;
      text-shadow: none;
      opacity: 1;
      transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease, filter 180ms ease;
    }
    .chair-submenu-button:hover {
      border-color: var(--row-menu-item-border, var(--nib-ui-button-border-hover));
      background: var(--row-menu-item-hover, var(--nib-ui-button-shell-outline));
      color: var(--row-menu-item-text, var(--nib-ui-on-outline, var(--nib-ui-on-secondary, var(--secondary-text))));
      box-shadow: var(--nib-ui-button-shadow-hover, 0 12px 22px rgba(16,29,63,0.08));
      transform: translateY(var(--nib-ui-button-translate-hover)) scale(var(--nib-ui-button-scale-hover));
    }
    .chair-submenu-button[aria-pressed="true"] {
      --chair-workspace-active-text: var(--primary-text, #ffffff);
      border-color: color-mix(in srgb, var(--primary-start) 72%, var(--primary-end) 28%);
      border-left-color: color-mix(in srgb, var(--primary-start) 72%, var(--primary-end) 28%);
      background: linear-gradient(135deg, var(--primary-start), var(--primary-end));
      color: var(--chair-workspace-active-text);
      -webkit-text-fill-color: var(--chair-workspace-active-text);
      box-shadow: 0 16px 30px rgba(16, 29, 63, 0.16);
    }
    .chair-submenu-button[aria-pressed="true"]:hover {
      border-color: color-mix(in srgb, var(--primary-start) 72%, var(--primary-end) 28%);
      border-left-color: color-mix(in srgb, var(--primary-start) 72%, var(--primary-end) 28%);
      background: linear-gradient(135deg, var(--primary-start), var(--primary-end));
      color: var(--chair-workspace-active-text);
      -webkit-text-fill-color: var(--chair-workspace-active-text);
      box-shadow: 0 16px 30px rgba(16, 29, 63, 0.16);
      transform: translateY(var(--nib-ui-button-translate-hover)) scale(var(--nib-ui-button-scale-hover));
    }
    .chair-workspace-main {
      display: grid;
      gap: 14px;
      min-width: 0;
      align-content: start;
    }
    .chair-empty-panel {
      display: grid;
      gap: 6px;
      min-height: 122px;
      align-content: center;
    }
    .chair-empty-panel[hidden],
    .chair-function-panel[hidden] {
      display: none;
    }
    .chair-function-panel {
      display: grid;
      gap: 12px;
      min-width: 0;
    }
    .chair-function-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
    }
    .chair-function-head h3 {
      margin: 5px 0 4px;
      color: var(--navy);
    }
    .chair-workspace-status {
      margin: 0;
      min-height: 22px;
    }
    .chair-help-panel {
      border: 1px solid color-mix(in srgb, var(--primary-start) 14%, var(--gold) 16%);
      border-radius: 16px;
      background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(255,253,247,0.76));
      color: var(--ink);
      padding: 12px 14px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.9), 0 12px 24px rgba(16,29,63,0.05);
    }
    .chair-help-panel strong {
      color: var(--navy);
    }
    .chair-help-panel p {
      margin: 4px 0 0;
    }
    .chair-summary-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
      gap: 8px;
    }
    .chair-dashboard-strip {
      width: 100%;
      margin: 0 0 4px;
      padding: 8px;
      border: 1px solid color-mix(in srgb, var(--gold) 28%, transparent);
      border-radius: 18px;
      background: linear-gradient(180deg, rgba(255,255,255,0.78), rgba(255,253,247,0.42));
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 12px 26px rgba(16,29,63,0.06);
    }
    .chair-summary-card {
      border: 1px solid var(--surface-border);
      border-radius: 14px;
      background: var(--surface-bg-strong);
      padding: 10px 12px;
      display: grid;
      gap: 3px;
      justify-items: center;
      text-align: center;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.72), 0 12px 24px rgba(16, 29, 63, 0.07);
    }
    .chair-summary-card span {
      color: var(--muted-text);
      font-size: 12px;
      font-weight: 700;
    }
    .chair-summary-card strong {
      color: var(--navy);
      font-size: clamp(18px, 1.6vw, 24px);
      line-height: 1;
    }
    .chair-function-card {
      align-content: start;
    }
    .chair-action-panel {
      display: grid;
      gap: 10px;
    }
    .chair-current-section-title {
      color: var(--red);
      font-size: 14px;
      text-align: left;
    }
    .chair-responsibility-list {
      margin: 10px 0 0;
      padding-left: 18px;
      display: grid;
      gap: 7px;
      color: var(--ink);
      line-height: 1.45;
    }
    /* The in-content action chooser is now redundant with the nested
       drawer/hover submenu -- the title/pill above the panel still shows
       which section and action is active, so this duplicate button row
       stays hidden at every screen size, not just mobile. */
    #chair-action-grid {
      display: none;
    }
    .chair-action-grid {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px;
    }
    .chair-action-grid > .chair-action-chip {
      flex: 0 1 auto;
      width: auto;
      min-width: 170px;
      justify-content: center;
      padding: 9px 16px;
      text-align: center;
      white-space: nowrap;
    }
    .chair-action-chip {
      position: relative;
      isolation: isolate;
      min-height: 42px;
      border: 1px solid var(--row-menu-item-border, var(--nib-ui-button-border-secondary));
      border-radius: var(--nib-ui-button-radius-soft);
      background: var(--row-menu-item-bg, var(--nib-ui-button-shell-secondary));
      box-shadow: var(--nib-ui-button-shadow-flat, 0 10px 18px rgba(16,29,63,0.06));
      color: var(--row-menu-item-text, var(--nib-ui-on-secondary, var(--secondary-text)));
      display: flex;
      align-items: center;
      justify-content: flex-start;
      padding: 8px 10px;
      text-align: left;
      font-size: 13px;
      font-family: var(--nib-ui-button-font-family);
      font-weight: var(--nib-ui-button-font-weight);
      letter-spacing: var(--nib-ui-button-letter-spacing);
      text-transform: var(--nib-ui-button-text-transform);
      backdrop-filter: var(--nib-ui-button-backdrop-filter);
      filter: var(--nib-ui-button-filter);
      cursor: pointer;
      min-width: 0;
      width: 100%;
      white-space: normal;
      -webkit-text-fill-color: currentColor;
      text-shadow: none;
      opacity: 1;
      transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease, filter 180ms ease;
    }
    .chair-action-chip:hover {
      border-color: var(--row-menu-item-border, var(--nib-ui-button-border-hover));
      background: var(--row-menu-item-hover, var(--nib-ui-button-shell-outline));
      color: var(--row-menu-item-text, var(--nib-ui-on-outline, var(--nib-ui-on-secondary, var(--secondary-text))));
      box-shadow: var(--nib-ui-button-shadow-hover, 0 12px 22px rgba(16,29,63,0.08));
      transform: translateY(var(--nib-ui-button-translate-hover)) scale(var(--nib-ui-button-scale-hover));
    }
    .chair-action-chip[aria-pressed="true"] {
      --chair-workspace-active-text: #ffffff;
      border-color: color-mix(in srgb, var(--primary-start) 72%, var(--primary-end) 28%);
      background: linear-gradient(135deg, var(--primary-start), var(--primary-end));
      color: var(--chair-workspace-active-text);
      -webkit-text-fill-color: var(--chair-workspace-active-text);
      box-shadow: 0 16px 30px rgba(16, 29, 63, 0.16);
      text-shadow: 0 1px 1px rgba(6, 12, 27, 0.24);
    }
    .chair-action-chip[aria-pressed="true"]:hover {
      border-color: color-mix(in srgb, var(--primary-start) 72%, var(--primary-end) 28%);
      background: linear-gradient(135deg, var(--primary-start), var(--primary-end));
      color: var(--chair-workspace-active-text);
      -webkit-text-fill-color: var(--chair-workspace-active-text);
      box-shadow: 0 16px 30px rgba(16, 29, 63, 0.16);
      text-shadow: 0 1px 1px rgba(6, 12, 27, 0.24);
      transform: translateY(var(--nib-ui-button-translate-hover)) scale(var(--nib-ui-button-scale-hover));
    }
    .chair-action-chip:disabled {
      cursor: not-allowed;
      opacity: 0.56;
      transform: none;
    }
    .chair-inline-message {
      margin: 0;
      min-height: 20px;
    }
    .chair-drawer-body {
      gap: 14px;
      flex: 1 1 auto;
      min-height: 0;
      min-width: 0;
    }
    .chair-drawer-body .drawer-info-banner,
    .chair-user-drawer-body .drawer-info-banner,
    .chair-assignment-shell .drawer-info-banner,
    .chair-track-report-body .drawer-info-banner,
    .chair-add-user-body .drawer-info-banner,
    .chair-import-preview-drawer-body .drawer-info-banner,
    .chair-email-template-drawer-body .drawer-info-banner {
      padding: 8px 14px;
      gap: 2px;
      border-radius: 16px;
      box-shadow: 0 10px 20px rgba(16, 29, 63, 0.1);
    }
    .chair-drawer-body .drawer-info-banner p,
    .chair-user-drawer-body .drawer-info-banner p,
    .chair-assignment-shell .drawer-info-banner p,
    .chair-track-report-body .drawer-info-banner p,
    .chair-add-user-body .drawer-info-banner p,
    .chair-import-preview-drawer-body .drawer-info-banner p,
    .chair-email-template-drawer-body .drawer-info-banner p {
      font-size: 15px;
      font-weight: 700;
      line-height: 1.42;
    }
    .chair-settings-footer {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: 12px;
      padding: 12px 18px 18px;
      border-top: 1px solid rgba(27, 42, 91, 0.12);
      background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,241,230,0.94)),
        linear-gradient(135deg, color-mix(in srgb, var(--gold) 8%, transparent), transparent 70%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.88);
    }
    .chair-settings-footer[hidden] {
      display: none;
    }
    .chair-settings-footer .nib-ui-button {
      min-width: min(240px, calc(50vw - 40px));
    }
    .chair-settings-footer #chair-settings-next {
      margin-left: auto;
    }
    @media (max-width: 860px) {
      .chair-settings-footer {
        flex-direction: column;
      }
      .chair-settings-footer .nib-ui-button {
        width: 100%;
        min-width: 0;
      }
      .chair-settings-footer #chair-settings-next {
        margin-left: 0;
      }
    }
    .chair-workspace-drawer.open {
      z-index: 86;
    }
    .chair-workspace-drawer-panel {
      width: min(85vw, calc(100vw - 12px));
      max-width: 100vw;
      display: flex;
      flex-direction: column;
    }
    .chair-user-drawer.open {
      z-index: 90;
    }
    .chair-user-drawer-panel {
      width: min(85vw, calc(100vw - 12px));
      max-width: 100vw;
    }
    .chair-user-drawer-body {
      gap: 14px;
    }
    .chair-assignment-drawer.open {
      z-index: 84;
    }
    .chair-assignment-drawer.open.chair-assignment-drawer--top {
      z-index: 88;
    }
    .chair-assignment-drawer-panel {
      width: min(85vw, calc(100vw - 12px));
      max-width: 100vw;
    }
    .chair-track-report-drawer.open {
      z-index: 87;
    }
    .chair-track-report-drawer-panel {
      width: min(85vw, calc(100vw - 12px));
      max-width: 100vw;
    }
    .chair-track-report-body {
      gap: 14px;
    }
    .chair-add-user-drawer.open {
      z-index: 91;
    }
    .chair-add-user-drawer-panel {
      width: min(85vw, calc(100vw - 12px));
      max-width: 100vw;
    }
    .chair-add-user-body {
      gap: 14px;
    }
    .chair-add-user-form {
      display: grid;
      gap: 12px;
    }
    .chair-add-user-form label {
      display: grid;
      gap: 6px;
    }
    .chair-add-user-form input[readonly] {
      background: color-mix(in srgb, var(--cream) 60%, #ffffff 40%);
      color: var(--muted-text);
      cursor: not-allowed;
    }
    .chair-import-preview-drawer.open {
      z-index: 95;
    }
    .chair-import-preview-drawer-panel {
      width: min(40vw, calc(100vw - 12px));
      max-width: 40vw;
    }
    .chair-import-preview-drawer-body {
      gap: 14px;
    }
    .chair-email-template-drawer.open {
      z-index: 96;
    }
    .chair-email-template-drawer-panel {
      width: min(70vw, calc(100vw - 12px));
      max-width: 100vw;
    }
    .chair-email-template-drawer-body {
      gap: 14px;
    }
    .chair-email-template-form {
      display: grid;
      gap: 16px;
    }
    .chair-email-template-editor-shell {
      display: grid;
      grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
      gap: 16px;
      align-items: start;
    }
    .chair-email-template-form-main {
      display: grid;
      gap: 12px;
    }
    .chair-email-template-form label {
      display: grid;
      gap: 6px;
      font-weight: 600;
    }
    .chair-email-template-form textarea {
      min-height: 220px;
      font-family: inherit;
      resize: vertical;
    }
    .chair-email-template-placeholder-panel {
      position: sticky;
      top: 0;
      display: grid;
      gap: 12px;
      align-self: start;
      padding: 14px;
      border: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
      border-radius: 16px;
      background: color-mix(in srgb, var(--cream) 56%, #ffffff 44%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.88), 0 12px 24px rgba(16,29,63,0.05);
    }
    .chair-email-template-placeholder-title {
      color: var(--navy);
      font-size: 15px;
      letter-spacing: 0.02em;
    }
    .chair-email-template-placeholder-copy {
      margin: 0;
      font-size: 12px;
      line-height: 1.6;
      color: var(--muted-text);
    }
    .chair-email-template-placeholder-list {
      display: grid;
      gap: 8px;
    }
    .chair-email-template-placeholder-button {
      width: 100%;
      justify-content: flex-start;
      text-align: left;
    }
    .chair-email-template-form-actions {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }
    .chair-email-template-preview-builder {
      display: grid;
      gap: 14px;
    }
    .chair-email-template-preview-select {
      display: grid;
      gap: 6px;
      font-weight: 700;
      color: var(--navy);
    }
    .chair-email-template-preview-host {
      display: grid;
      gap: 12px;
    }
    .chair-email-template-placeholder-hint {
      position: sticky;
      bottom: 0;
      z-index: 2;
      font-size: 12px;
      color: var(--muted-text);
      margin: 4px -22px -24px;
      padding: 10px 22px 12px;
      background: var(--surface-bg-strong);
      border-top: 1px solid var(--surface-border);
    }
    .chair-email-template-list {
      display: grid;
      gap: 10px;
    }
    .chair-email-template-list-row {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
      gap: 12px;
      align-items: center;
      padding: 10px 12px;
      border: 1px solid color-mix(in srgb, var(--cream) 60%, #ffffff 40%);
      border-radius: 10px;
    }
    .chair-email-template-list-header-row {
      border: 0;
      padding: 0 12px;
      margin-bottom: -4px;
    }
    .chair-email-template-list-header-title {
      text-align: center;
      font-weight: 800;
      color: var(--navy);
      font-size: 15px;
    }
    .chair-email-template-list-label {
      font-weight: 700;
      padding: 6px 10px;
      border-radius: 8px;
      background: color-mix(in srgb, var(--cream) 60%, #ffffff 40%);
      color: var(--navy);
      display: inline-flex;
      align-items: center;
      width: fit-content;
    }
    .chair-email-template-list-label.chair-decision-row--accepted {
      background: #145c32;
      color: #ffffff;
    }
    .chair-email-template-list-label.chair-decision-row--accepted-minor {
      background: #1f6d3f;
      color: #ffffff;
    }
    .chair-email-template-list-label.chair-decision-row--accepted-major {
      background: #2f8f56;
      color: #ffffff;
    }
    .chair-email-template-list-label.chair-decision-row--rejected {
      background: var(--red);
      color: #ffffff;
    }
    .chair-email-template-list-label.chair-decision-row--revision-minor {
      background: #e4b400;
      color: #1b2a5b;
    }
    .chair-email-template-list-label.chair-decision-row--revision-major {
      background: #c98a00;
      color: #1b2a5b;
    }
    .chair-email-template-list-group {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 8px;
    }
    .chair-email-template-variant-select,
    .chair-email-template-audience-select {
      flex: 0 1 200px;
      width: 200px;
      min-width: 0;
      max-width: 100%;
      box-sizing: border-box;
    }
    .nib-select-shell:has(.chair-email-template-variant-select),
    .nib-select-shell:has(.chair-email-template-audience-select) {
      flex: 0 1 200px;
      width: 200px;
      min-width: 0;
      max-width: 100%;
      box-sizing: border-box;
    }
    .chair-publish-stat-cards {
      display: flex;
      gap: 10px;
    }
    .chair-publish-stat-card {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      gap: 4px;
      border: 0;
      border-radius: 12px;
      padding: 8px 14px;
      min-width: 96px;
      cursor: pointer;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.3), 0 4px 12px rgba(16,29,63,0.12);
      transition: transform 160ms ease, box-shadow 160ms ease;
      color: var(--navy);
      background: color-mix(in srgb, var(--cream) 60%, #ffffff 40%);
    }
    .chair-publish-stat-card:hover:not(:disabled) {
      transform: translateY(-2px);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.4), 0 8px 18px rgba(16,29,63,0.18);
    }
    .chair-publish-stat-card:disabled {
      opacity: 0.5;
      cursor: not-allowed;
    }
    .chair-publish-stat-card.chair-decision-row--accepted,
    .chair-publish-stat-card.chair-decision-row--accepted-minor,
    .chair-publish-stat-card.chair-decision-row--accepted-major,
    .chair-publish-stat-card.chair-decision-row--rejected {
      color: #ffffff;
    }
    .chair-publish-stat-card.chair-decision-row--revision-minor,
    .chair-publish-stat-card.chair-decision-row--revision-major {
      color: #1b2a5b;
    }
    .chair-publish-stat-card-label {
      font-weight: 700;
      font-size: 12px;
      white-space: nowrap;
    }
    .chair-publish-stat-card-count {
      font-size: 20px;
      font-weight: 800;
    }
    @media (max-width: 900px) {
      .chair-email-template-editor-shell {
        grid-template-columns: 1fr;
      }
      .chair-email-template-placeholder-panel {
        position: static;
      }
      .chair-email-template-list-row {
        grid-template-columns: 1fr;
      }
    }
    .chair-import-preview-status-ok {
      color: #0f7a45;
      font-weight: 800;
      white-space: nowrap;
    }
    .chair-import-preview-status-error {
      color: var(--red);
      font-weight: 800;
      white-space: nowrap;
    }
    .chair-assignment-body {
      gap: 14px;
      padding-bottom: 82px;
    }
    .chair-assignment-message {
      position: absolute;
      left: 22px;
      right: 22px;
      bottom: 14px;
      margin: 0;
      background: color-mix(in srgb, var(--cream) 70%, #ffffff 30%);
      border-radius: 14px;
      padding: 10px 12px;
      box-shadow: 0 10px 22px rgba(16, 29, 63, 0.08);
    }
    .chair-assignment-map-panel,
    .chair-assignment-panel {
      border: 1px solid color-mix(in srgb, var(--gold) 22%, transparent);
      border-radius: 16px;
      background: color-mix(in srgb, var(--cream) 45%, #ffffff 55%);
      padding: 14px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 12px 24px rgba(16,29,63,0.05);
    }
    .chair-assignment-map-panel {
      display: grid;
      gap: 12px;
    }
    .chair-assignment-grid {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
      gap: 12px;
      align-items: start;
    }
    .chair-assignment-panel {
      display: grid;
      gap: 10px;
    }
    .chair-assignment-panel-head {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
    }
    .chair-assignment-panel-note {
      color: var(--red);
      font-size: 12px;
      font-weight: 800;
      line-height: 1.3;
      text-align: right;
    }
    .chair-assignment-panel-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 8px;
      flex-wrap: wrap;
    }
    .chair-assignment-panel h3 {
      margin: 0;
      color: var(--navy);
    }
    .chair-assignment-panel-controls {
      display: grid;
      grid-template-columns: 1fr;
      gap: 10px;
      align-items: end;
    }
    .chair-assignment-search {
      display: grid;
      gap: 6px;
    }
    .chair-assignment-list {
      display: grid;
      gap: 8px;
      max-height: min(48vh, 460px);
      overflow: auto;
      padding-right: 3px;
    }
    .chair-assignment-option {
      display: grid;
      grid-template-columns: auto 1fr;
      gap: 10px;
      align-items: start;
      border: 1px solid color-mix(in srgb, var(--gold) 18%, transparent);
      border-radius: 14px;
      background: rgba(255,255,255,0.76);
      padding: 10px;
    }
    .chair-assignment-option.conflict {
      opacity: 0.62;
      background: color-mix(in srgb, var(--red) 10%, #ffffff 90%);
      border-color: color-mix(in srgb, var(--red) 30%, transparent);
    }
    .chair-assignment-option.history {
      border-color: color-mix(in srgb, #1d7a52 34%, rgba(201, 162, 39, 0.22));
      background: color-mix(in srgb, #1d7a52 6%, #ffffff 94%);
    }
    .chair-assignment-option strong {
      color: var(--navy);
    }
    .chair-assignment-option span {
      display: block;
      color: var(--muted-text);
      font-size: 12px;
      line-height: 1.35;
    }
    .chair-assignment-option .conflict-note {
      color: var(--red);
      font-weight: 800;
    }
    .chair-assignment-option .history-note {
      color: #1d7a52;
      font-weight: 800;
    }
    .chair-assignment-summary-shell {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 12px;
      align-items: center;
      padding: 2px;
    }
    .chair-assignment-summary {
      display: flex;
      flex: 1 1 360px;
      gap: 8px;
      flex-wrap: wrap;
      align-items: center;
      padding: 4px;
    }
    .chair-assignment-summary-actions {
      display: flex;
      flex: 0 1 auto;
      flex-wrap: nowrap;
      gap: 8px;
      justify-content: flex-end;
      align-items: stretch;
    }
    .chair-assignment-summary-button {
      width: auto;
      min-height: 36px;
      min-width: 132px;
      padding: 8px 12px;
      border-radius: 13px;
      justify-content: center;
      font-size: 13px;
      line-height: 1.1;
      white-space: normal;
      text-align: center;
    }
    .chair-assignment-summary .status-pill {
      color: var(--navy);
      border-color: color-mix(in srgb, var(--primary-start) 30%, var(--gold) 18%);
      background:
        linear-gradient(135deg, color-mix(in srgb, var(--primary-start) 10%, #ffffff 90%), color-mix(in srgb, var(--gold) 14%, #ffffff 86%));
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82);
    }
    .chair-assignment-bulk-panel {
      border: 1px solid color-mix(in srgb, var(--gold) 22%, transparent);
      border-radius: 16px;
      background: color-mix(in srgb, var(--cream) 52%, #ffffff 48%);
      padding: 12px 14px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 12px 24px rgba(16,29,63,0.05);
    }
    .chair-assignment-bulk-panel h3 {
      margin: 0;
      color: var(--navy);
      font-size: 16px;
    }
    .chair-drawer-data {
      display: grid;
      gap: 12px;
    }
    .chair-drawer-card-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(146px, 1fr));
      gap: 10px;
    }
    .chair-drawer-card,
    .chair-drawer-note {
      border: 1px solid color-mix(in srgb, var(--gold) 22%, transparent);
      border-radius: 14px;
      background: rgba(255,255,255,0.82);
      padding: 12px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
    }
    .chair-drawer-card {
      justify-items: center;
      text-align: center;
    }
    .chair-drawer-card span {
      display: block;
      color: var(--muted-text);
      font-size: 12px;
      font-weight: 800;
      margin-bottom: 3px;
    }
    .chair-drawer-card strong {
      color: var(--navy);
      font-size: 22px;
      line-height: 1.1;
    }
    .chair-drawer-card--stat {
      background: #ffffff;
    }
    .chair-drawer-card-value-link {
      appearance: none;
      -webkit-appearance: none;
      border: none;
      background: none;
      padding: 0;
      margin: 0;
      font: inherit;
      font-size: 22px;
      font-weight: 800;
      line-height: 1.1;
      color: #1a56c4;
      cursor: pointer;
      text-decoration: none;
    }
    .chair-drawer-card-value-link:hover,
    .chair-drawer-card-value-link:focus-visible {
      text-decoration: underline;
    }
    .chair-drawer-card-value-link:focus-visible {
      outline: 2px solid #1a56c4;
      outline-offset: 2px;
    }
    .chair-drawer-card-value-link.is-active {
      color: #123a8a;
      text-decoration: underline;
    }
    .chair-drawer-empty {
      border: 1px dashed color-mix(in srgb, var(--gold) 42%, transparent);
      border-radius: 16px;
      background: color-mix(in srgb, var(--cream) 64%, #ffffff 36%);
      padding: 18px;
      color: var(--muted-text);
      font-weight: 700;
    }
    .chair-drawer-table-wrap {
      overflow: auto;
      border: 1px solid var(--table-shell-border);
      border-radius: 16px;
      background: var(--table-shell-bg);
      box-shadow: var(--shadow-soft);
    }
    .chair-review-editor-table-wrap {
      height: min(56vh, 560px);
      overflow: auto;
    }
    .chair-publish-decision-table-wrap {
      width: 100%;
      overflow-x: auto;
      overflow-y: visible;
    }
    .chair-publish-decision-panel .chair-drawer-table {
      min-width: 0;
      max-width: 100%;
      table-layout: fixed;
      box-sizing: border-box;
    }
    .chair-publish-decision-panel .chair-drawer-table th,
    .chair-publish-decision-panel .chair-drawer-table td {
      overflow-wrap: break-word;
      word-break: break-word;
      white-space: normal;
    }
    .chair-publish-decision-panel .chair-drawer-table td .nib-ui-button {
      box-sizing: border-box;
      max-width: 100%;
      white-space: normal;
      padding: 6px 8px;
    }
    .chair-request-revision-panel .chair-drawer-table {
      min-width: 0;
      max-width: 100%;
      table-layout: fixed;
      box-sizing: border-box;
    }
    .chair-request-revision-panel .chair-drawer-table th,
    .chair-request-revision-panel .chair-drawer-table td {
      overflow-wrap: break-word;
      word-break: break-word;
      white-space: normal;
    }
    .chair-request-revision-panel .chair-drawer-table td .nib-ui-button {
      box-sizing: border-box;
      max-width: 100%;
      white-space: normal;
      padding: 6px 8px;
    }
    .chair-email-template-table-wrap {
      width: min(100%, 920px);
      max-width: 100%;
      min-width: 0;
      margin: 0 auto;
      overflow-x: auto;
    }
    .chair-email-template-table-wrap .chair-drawer-table {
      min-width: 0;
      max-width: 100%;
      table-layout: fixed;
      box-sizing: border-box;
    }
    .chair-email-template-table-wrap .chair-drawer-table th,
    .chair-email-template-table-wrap .chair-drawer-table td {
      max-width: 100%;
      min-width: 0;
      box-sizing: border-box;
      overflow-wrap: break-word;
      word-break: break-word;
      white-space: normal;
    }
    .chair-email-template-table-wrap .chair-drawer-table td {
      vertical-align: top;
    }
    .chair-email-template-table-wrap .chair-drawer-table td .chair-email-template-list-label {
      max-width: 100%;
      overflow-wrap: anywhere;
    }
    .chair-email-template-table-wrap .chair-drawer-table td .nib-ui-button,
    .chair-email-template-table-wrap .chair-drawer-table td select,
    .chair-email-template-table-wrap .chair-drawer-table td .nib-select-shell {
      box-sizing: border-box;
      width: 100%;
      min-width: 0;
      max-width: 100%;
      white-space: normal;
    }
    @media (max-width: 860px) {
      .chair-email-template-table-wrap.chair-review-editor-table-wrap {
        height: auto;
        max-height: none;
        overflow: visible;
      }
      .chair-email-template-table-wrap {
        width: 100%;
        margin: 0;
      }
      .chair-email-template-table-wrap .chair-drawer-table tbody,
      .chair-email-template-table-wrap .chair-drawer-table tr,
      .chair-email-template-table-wrap .chair-drawer-table td {
        width: 100%;
        max-width: 100%;
        min-width: 0;
      }
      .chair-email-template-table-wrap .chair-drawer-table td {
        display: grid;
        gap: 8px;
        align-content: start;
      }
      .chair-email-template-table-wrap .chair-drawer-table td::before {
        margin-bottom: 0;
      }
      .chair-email-template-table-wrap .chair-drawer-table td .nib-ui-button,
      .chair-email-template-table-wrap .chair-drawer-table td .nib-select-shell {
        width: 100%;
        justify-self: stretch;
      }
      .chair-email-template-reason-settings {
        margin-top: 6px;
      }
    }
    .chair-publish-decision-summary-cards {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 8px;
      width: min(620px, 85%);
      margin: 5px auto 8px;
    }
    .chair-publish-decision-summary-cards .chair-summary-card {
      padding: 6px 8px;
      border-radius: 12px;
    }
    .chair-publish-decision-summary-cards .chair-summary-card span {
      font-size: 11px;
    }
    .chair-publish-decision-summary-cards .chair-summary-card strong {
      font-size: clamp(15px, 1.2vw, 18px);
    }
    .chair-table-drag-scroll {
      cursor: grab;
    }
    .chair-table-drag-scroll-active {
      cursor: grabbing;
      user-select: none;
    }
    .chair-drawer-table {
      width: 100%;
      min-width: 900px;
      border-collapse: collapse;
    }
    .chair-drawer-table th,
    .chair-drawer-table td {
      padding: 10px 12px;
      border-bottom: 1px solid var(--table-line);
      text-align: left;
      vertical-align: top;
    }
    .chair-drawer-table th {
      color: var(--navy);
      background: var(--table-head-bg);
      font-size: 12px;
      font-weight: 900;
      text-transform: uppercase;
    }
    .chair-merge-column-header,
    .chair-merge-toggle-cell {
      width: 70px;
      min-width: 70px;
      text-align: center !important;
      vertical-align: middle !important;
    }
    .chair-merge-toggle {
      width: 34px;
      height: 34px;
      border: 1px solid color-mix(in srgb, var(--navy) 30%, transparent);
      border-radius: 10px;
      background: color-mix(in srgb, var(--cream) 62%, #ffffff 38%);
      color: var(--navy);
      font-size: 18px;
      font-weight: 900;
      line-height: 1;
      cursor: pointer;
      box-shadow: var(--shadow-soft);
      transition: transform 160ms ease, background 160ms ease, color 160ms ease;
    }
    .chair-merge-toggle:hover {
      transform: translateY(-1px);
    }
    .chair-merge-toggle[aria-expanded="true"] {
      background: var(--navy);
      color: #ffffff;
    }
    .chair-merge-detail-row > td {
      padding: 0 !important;
      border-bottom: 1px solid var(--table-line);
      background: color-mix(in srgb, var(--cream) 48%, #ffffff 52%);
    }
    .chair-merge-detail-cell {
      padding: 0 !important;
    }
    .chair-merge-detail-shell {
      display: grid;
      gap: 12px;
      padding: 14px 16px 16px;
    }
    .chair-merge-detail-summary {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
      gap: 10px;
    }
    .chair-merge-detail-card {
      display: grid;
      gap: 4px;
      padding: 10px 12px;
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      border-radius: 14px;
      background: rgba(255,255,255,0.9);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
    }
    .chair-merge-detail-card span {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.06em;
    }
    .chair-merge-detail-card strong {
      color: var(--navy);
      font-size: 13px;
      line-height: 1.4;
      word-break: break-word;
    }
    .chair-merge-round-shell {
      display: grid;
      gap: 8px;
    }
    .chair-merge-round-title {
      color: var(--navy);
      font-size: 13px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }
    .chair-merge-round-table {
      width: 100%;
      min-width: 0;
      border-collapse: collapse;
      background: rgba(255,255,255,0.92);
      border: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
      border-radius: 14px;
      overflow: hidden;
    }
    .chair-merge-round-table th,
    .chair-merge-round-table td {
      padding: 8px 10px;
      border-bottom: 1px solid var(--table-line);
      text-align: left;
      vertical-align: top;
      word-break: break-word;
    }
    .chair-merge-round-table th {
      background: color-mix(in srgb, var(--table-head-bg) 88%, #ffffff 12%);
      color: var(--navy);
      font-size: 11px;
      font-weight: 900;
      text-transform: uppercase;
    }
    .chair-merge-round-table tbody tr:last-child td {
      border-bottom: 0;
    }
    .chair-table-header-subtitle {
      display: block;
      margin-top: 3px;
      font-size: 10px;
      font-weight: 600;
      text-transform: none;
      letter-spacing: 0;
      color: var(--muted-text);
    }
    table[data-table-key="chair-prepare-decision"] {
      min-width: 1040px;
    }
    table[data-table-key="chair-prepare-decision"] th,
    table[data-table-key="chair-prepare-decision"] td {
      padding: 7px 9px;
    }
    .chair-table-toolbar {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 10px;
      flex-wrap: wrap;
    }
    .chair-table-search {
      display: grid;
      gap: 6px;
      width: 100%;
      color: var(--navy);
      font-weight: 800;
    }
    .chair-table-search input {
      min-height: var(--nib-ui-select-trigger-height, 48px);
      width: 100%;
      font-size: 13px;
    }
    .chair-table-header-cell {
      position: relative;
      min-width: 110px;
      vertical-align: middle;
      white-space: normal;
    }
    .chair-table-resize-handle {
      position: absolute;
      top: 0;
      right: -3px;
      bottom: 0;
      width: 6px;
      cursor: col-resize;
      touch-action: none;
      z-index: 2;
    }
    .chair-table-resize-handle::before {
      content: "";
      position: absolute;
      top: 4px;
      bottom: 4px;
      left: 2px;
      width: 2px;
      border-radius: 2px;
      background: rgba(27, 42, 91, 0.22);
    }
    .chair-table-resize-handle:hover::before,
    .chair-table-resize-handle:active::before {
      background: var(--gold, #c9a227);
      width: 3px;
    }
    .chair-table-header-cell:last-child .chair-table-resize-handle {
      display: none;
      pointer-events: none;
    }
    .chair-table-sort-button {
      appearance: none;
      min-width: 0;
      min-height: 0;
      border: 0 !important;
      border-radius: 0 !important;
      background: transparent !important;
      background-image: none !important;
      box-shadow: none !important;
      color: var(--navy) !important;
      display: inline-flex;
      align-items: center;
      justify-content: flex-start;
      gap: 4px;
      padding: 0 !important;
      font: inherit;
      font-size: inherit;
      font-weight: inherit;
      letter-spacing: inherit;
      text-align: left;
      text-transform: inherit;
      cursor: pointer;
      white-space: normal;
      line-height: 1.15;
      width: 100%;
      padding-right: 12px !important;
    }
    .chair-table-sort-button span:first-child {
      color: var(--navy) !important;
      font-weight: 900;
    }
    .chair-table-sort-label {
      display: inline-block;
      white-space: normal;
      overflow-wrap: anywhere;
      word-break: break-word;
      line-height: 1.2;
    }
    .chair-table-sort-button:hover {
      color: var(--red);
      text-decoration: underline;
      text-underline-offset: 3px;
      transform: none;
      background: transparent !important;
      box-shadow: none !important;
    }
    .chair-table-sort-arrow {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 12px;
      height: 12px;
      position: relative;
    }
    .chair-table-sort-arrow::before {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border-left: 4px solid transparent;
      border-right: 4px solid transparent;
    }
    .chair-table-sort-arrow[data-direction="asc"]::before {
      border-bottom: 6px solid currentColor;
    }
    .chair-table-sort-arrow[data-direction="desc"]::before {
      border-top: 6px solid currentColor;
    }
    .chair-table-empty-cell {
      color: var(--muted-text);
      font-weight: 800;
      text-align: center;
      padding: 18px;
    }
    .chair-reviewer-search-row {
      display: grid;
      grid-template-columns: minmax(220px, 1fr) auto;
      gap: 8px;
      align-items: end;
    }
    .chair-reviewer-search-row--single {
      grid-template-columns: minmax(0, 1fr);
    }
    .chair-reviewer-search-row .chair-inline-field {
      margin: 0;
    }
    .chair-reviewer-search-row .nib-ui-button {
      min-height: 42px;
      white-space: nowrap;
    }
    .chair-reviewer-add-shell {
      display: grid;
      grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
      gap: 14px;
      align-items: start;
    }
    .chair-reject-reason-field {
      display: grid;
      gap: 6px;
      font-weight: 700;
      color: var(--navy);
    }
    .chair-reject-reason-field textarea {
      display: block;
      width: 100%;
      box-sizing: border-box;
      font-family: inherit;
      font-size: 16px;
      line-height: 1.6;
      font-weight: 400;
      color: var(--navy);
      min-height: 132px;
      padding: 14px 16px;
      border-radius: 12px;
      border: 1px solid color-mix(in srgb, var(--primary-start) 18%, var(--surface-border));
      background: #ffffff;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.96), 0 10px 22px rgba(16,29,63,0.05);
      resize: vertical;
      caret-color: var(--primary-start);
    }
    .chair-email-template-reason-settings {
      display: grid;
      gap: 12px;
      width: 100%;
      min-width: 0;
    }
    .chair-reviewer-form,
    .chair-reviewer-settings-form,
    .chair-reviewer-directory-panel,
    .chair-reviewer-bulk-panel {
      border: 1px solid color-mix(in srgb, var(--gold) 22%, transparent);
      border-radius: 16px;
      background: color-mix(in srgb, var(--cream) 50%, #ffffff 50%);
      padding: 14px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 12px 24px rgba(16,29,63,0.05);
    }
    .chair-reviewer-settings-form .grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
      align-items: start;
    }
    .chair-reviewer-settings-form .grid > label,
    .chair-reviewer-settings-form .grid > .chair-reviewer-toggle-label,
    .chair-reviewer-settings-form .grid > .chair-reviewer-decision-label-panel {
      min-width: 0;
    }
    .chair-reviewer-settings-form .grid > label,
    .chair-inline-field {
      display: grid;
      gap: 4px;
      min-width: 0;
      align-content: start;
      color: var(--navy);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }
    .chair-reviewer-settings-form .grid > label input,
    .chair-reviewer-settings-form .grid > label select,
    .chair-reviewer-settings-form .grid > label textarea,
    .chair-inline-field input,
    .chair-inline-field select,
    .chair-inline-field textarea {
      font-size: 14px;
      font-weight: 500;
      letter-spacing: 0;
      text-transform: none;
    }
    .chair-reviewer-bulk-panel {
      display: grid;
      gap: 10px;
    }
    .chair-reviewer-bulk-panel h3,
    .chair-reviewer-bulk-panel p {
      margin: 0;
    }
    .chair-reviewer-bulk-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      align-items: center;
    }
    .chair-reviewer-toggle-label {
      display: grid;
      grid-template-columns: auto 1fr;
      gap: 10px;
      align-items: center;
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      border-radius: 14px;
      background: rgba(255,255,255,0.72);
      padding: 12px;
    }
    .chair-reviewer-toggle-label strong,
    .chair-reviewer-toggle-label small {
      display: block;
    }
    .chair-reviewer-toggle-label strong {
      color: var(--navy);
    }
    .chair-reviewer-toggle-label small {
      color: var(--muted-text);
      font-weight: 700;
    }
    .chair-final-submission-settings-panel {
      display: grid;
      gap: 16px;
    }
    .chair-visibility-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap: 14px;
      align-items: start;
    }
    .chair-visibility-card {
      display: grid;
      gap: 10px;
      border: 1px solid color-mix(in srgb, var(--gold) 22%, transparent);
      border-radius: 16px;
      background: color-mix(in srgb, var(--cream) 50%, #ffffff 50%);
      padding: 14px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 12px 24px rgba(16,29,63,0.05);
    }
    .chair-visibility-card > strong {
      color: var(--navy);
    }
    .chair-visibility-toggle-list {
      display: grid;
      gap: 8px;
    }
    .chair-mark-review-status-select,
    .chair-inline-decision-select {
      font-size: 14px;
      font-weight: 600;
      padding: 8px 10px;
      border-radius: 10px;
      border: 1px solid var(--surface-border);
      background: var(--surface-bg-strong);
      color: var(--navy);
    }
    .nibveda-submenu-horizontal,
    .chair-inline-submenu-shell {
      border: 1px solid rgba(27, 42, 91, 0.1);
      border-radius: 16px;
      background: linear-gradient(180deg, var(--page-bg-start) 0%, var(--page-bg-mid) 50%, var(--page-bg-end) 100%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.84), 0 14px 28px rgba(16,29,63,0.06);
      padding: 12px;
    }
    .nibveda-submenu-horizontal .chair-inline-tabs,
    .chair-inline-tabs {
      display: flex;
      align-items: center;
      gap: 6px;
      flex-wrap: wrap;
    }
    .nibveda-submenu-horizontal .chair-inline-tabs[role="tablist"],
    .chair-inline-tabs[role="tablist"] {
      margin: 0;
      padding: 0;
      list-style: none;
    }
    .nibveda-submenu-horizontal .chair-inline-tab-button,
    .chair-inline-tab-button {
      position: relative;
      width: auto;
      min-height: 38px;
      border: 1px solid var(--surface-border, rgba(27, 42, 91, 0.14));
      border-radius: 12px;
      background: var(--card-bg, rgba(255, 255, 255, 0.85));
      color: var(--ink, var(--navy));
      padding: 9px 16px;
      font-weight: 700;
      font-size: 14px;
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      white-space: nowrap;
      cursor: pointer;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.92), 0 6px 14px rgba(16,29,63,0.08);
      transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
    }
    .nibveda-submenu-horizontal .chair-inline-tab-button:hover,
    .chair-inline-tab-button:hover {
      transform: translateY(-1px);
      border-color: rgba(27, 42, 91, 0.2);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.92), 0 10px 18px rgba(16,29,63,0.12);
    }
    .nibveda-submenu-horizontal .chair-inline-tab-button.is-active,
    .nibveda-submenu-horizontal .chair-inline-tab-button[aria-pressed="true"],
    .chair-inline-tab-button.is-active,
    .chair-inline-tab-button[aria-pressed="true"] {
      background: linear-gradient(180deg, color-mix(in srgb, var(--primary-start, #1b2a5b) 92%, #0d1738 8%), color-mix(in srgb, var(--primary-start, #1b2a5b) 72%, #334f94 28%));
      border-color: color-mix(in srgb, var(--primary-start, #1b2a5b) 75%, var(--gold) 25%);
      color: var(--primary-text, #ffffff);
      box-shadow: 0 0 0 1px rgba(16,29,63,0.08), 0 14px 26px rgba(16,29,63,0.2), inset 0 1px 0 rgba(255,255,255,0.16);
    }
    .nibveda-submenu-horizontal .chair-inline-tab-button.is-active::after,
    .nibveda-submenu-horizontal .chair-inline-tab-button[aria-pressed="true"]::after,
    .chair-inline-tab-button.is-active::after,
    .chair-inline-tab-button[aria-pressed="true"]::after {
      content: "";
      position: absolute;
      left: 12px;
      right: 12px;
      bottom: 5px;
      height: 3px;
      border-radius: 999px;
      background: linear-gradient(90deg, var(--gold), var(--red));
      opacity: 0.96;
    }
    .chair-inline-tab-pane {
      display: grid;
      gap: 14px;
    }
    .chair-reviewer-settings-tab-pane {
      margin-top: 14px;
    }
    .chair-final-submission-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.95fr);
      gap: 12px;
      align-items: start;
    }
    .chair-final-submission-table-shell {
      border: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
      border-radius: 16px;
      background: rgba(255,255,255,0.72);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.86);
      overflow: hidden;
    }
    .chair-final-submission-edit-table {
      width: 100%;
      border-collapse: collapse;
    }
    .chair-final-submission-edit-table th,
    .chair-final-submission-edit-table td {
      padding: 10px 12px;
      border-bottom: 1px solid rgba(27, 42, 91, 0.08);
      vertical-align: middle;
      text-align: left;
    }
    .chair-final-submission-edit-table tbody tr:last-child td {
      border-bottom: none;
    }
    .chair-final-submission-edit-table th {
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: color-mix(in srgb, var(--navy) 78%, var(--gold) 22%);
      background: rgba(255,255,255,0.78);
    }
    .chair-final-submission-field-cell {
      display: grid;
      gap: 2px;
      min-width: 0;
    }
    .chair-final-submission-field-cell strong,
    .chair-final-submission-field-cell small {
      display: block;
      margin: 0;
    }
    .chair-final-submission-field-cell small {
      color: var(--muted-text);
      line-height: 1.35;
    }
    .chair-final-submission-toggle-cell {
      width: 1%;
      white-space: nowrap;
    }
    .chair-final-submission-row-toggle {
      grid-template-columns: auto auto;
      gap: 10px;
      justify-content: start;
      padding: 8px 10px;
      min-width: 0;
    }
    .chair-final-submission-row-toggle .nib-ui-toggle-state {
      margin-top: 0;
      align-self: center;
    }
    .chair-setting-note.chair-reviewer-note,
    .chair-setting-note,
    .chair-reviewer-settings-form > .chair-reviewer-note,
    .chair-final-submission-settings-panel .chair-reviewer-note {
      margin: 0;
      padding: 10px 12px;
      line-height: 1.4;
      align-self: start;
    }
    .chair-final-submission-hint {
      margin: 0;
      padding: 12px 14px;
      border-radius: 14px;
      border: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
      background: rgba(255,255,255,0.58);
    }
    .chair-final-submission-save-button {
      justify-self: center;
    }
    .chair-setting-template-upload {
      display: grid;
      gap: 12px;
      grid-template-columns: minmax(0, 1fr);
      align-content: start;
    }
    .chair-setting-template-upload .chair-inline-field,
    .chair-setting-template-upload .chair-inline-field input[type="file"] {
      width: 100%;
      max-width: 100%;
    }
    .chair-setting-template-upload-status {
      border: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
      border-radius: 14px;
      background: rgba(255,255,255,0.72);
      color: var(--navy);
      font-size: 13px;
      font-weight: 700;
      line-height: 1.5;
      word-break: break-word;
      overflow-wrap: anywhere;
    }
    .chair-setting-template-upload-footer {
      display: flex;
      gap: 12px;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
    }
    .chair-setting-template-upload-footer .portal-remark-link {
      min-width: 0;
      overflow-wrap: anywhere;
    }
    .chair-setting-template-upload-footer .chair-final-submission-save-button {
      justify-self: auto;
      margin-left: auto;
    }
    .chair-reviewer-decision-label-panel {
      display: grid;
      gap: 10px;
      align-content: start;
      padding: 12px;
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      border-radius: 16px;
      background: rgba(255,255,255,0.76);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.84);
    }
    .chair-reviewer-decision-label-panel strong,
    .chair-reviewer-decision-label-panel p {
      margin: 0;
    }
    .chair-reviewer-directory-panel {
      display: grid;
      gap: 10px;
    }
    .chair-reviewer-directory-panel h3 {
      margin: 0;
      color: var(--navy);
    }
    .chair-reviewer-directory-table {
      min-width: 760px;
    }
    .chair-user-panel {
      border: 1px solid color-mix(in srgb, var(--gold) 22%, transparent);
      border-radius: 16px;
      background: color-mix(in srgb, var(--cream) 50%, #ffffff 50%);
      padding: 14px;
      display: grid;
      gap: 12px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 12px 24px rgba(16,29,63,0.05);
    }
    .chair-user-panel h3 {
      margin: 0;
      color: var(--navy);
    }
    .chair-user-panel-heading-text {
      font-size: 1.17em;
      font-weight: 700;
      color: var(--navy);
    }
    .chair-user-table {
      min-width: 980px;
    }
    .chair-user-action-cell {
      display: flex;
      gap: 6px;
      flex-wrap: wrap;
      white-space: nowrap;
    }
    .chair-user-dashboard-grid {
      margin-bottom: 2px;
    }
    .chair-user-add-shell {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
      gap: 14px;
      align-items: start;
    }
    .chair-user-role-picker-row {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
      gap: 12px;
      align-items: start;
    }
    .chair-user-form-shell {
      display: grid;
      grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
      gap: 14px;
      align-items: start;
    }
    .chair-user-identity-pane {
      display: grid;
      gap: 6px;
      align-content: start;
      min-width: 0;
    }
    .chair-user-identity-pane > label {
      display: grid;
      grid-template-columns: minmax(100px, 130px) minmax(0, 1fr);
      align-items: center;
      gap: 10px;
      padding: 6px 0;
      border-bottom: 1px solid color-mix(in srgb, var(--gold) 16%, transparent);
    }
    .chair-user-identity-pane > label:last-child {
      border-bottom: none;
    }
    .chair-user-role-pane {
      display: grid;
      gap: 12px;
      align-content: start;
      min-width: 0;
    }
    .chair-role-picker-panel strong {
      color: var(--navy);
    }
    .chair-user-management-stack {
      display: grid;
      gap: 12px;
    }
    .chair-user-stack-block,
    .chair-user-directory-section {
      display: grid;
      gap: 12px;
      padding: 12px;
      border: 1px solid color-mix(in srgb, var(--gold) 18%, transparent);
      border-radius: 16px;
      background: rgba(255,255,255,0.76);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.84);
    }
    .chair-user-stack-block h3,
    .chair-user-directory-section h3 {
      margin: 0;
      color: var(--navy);
    }
    .chair-role-chip-list {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      align-items: flex-start;
      min-height: 0;
    }
    .chair-role-chip {
      display: inline-flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      border: 1px solid color-mix(in srgb, var(--primary-start) 22%, var(--gold) 18%);
      border-radius: 16px;
      background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(245,241,230,0.78));
      color: var(--navy);
      padding: 8px 8px 8px 12px;
      font-size: 12px;
      font-weight: 800;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.84);
      width: auto;
      max-width: 100%;
      min-height: 36px;
    }
    .chair-role-chip--locked {
      border-style: dashed;
      opacity: 0.72;
    }
    .chair-decision-system-note {
      color: #9a6a00;
      font-weight: 700;
    }
    .chair-decision-label-system-badge {
      flex: 0 0 auto;
      padding: 3px 8px;
      border-radius: 999px;
      font-size: 10px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.04em;
      color: var(--navy);
      background: color-mix(in srgb, var(--gold) 30%, #ffffff 70%);
    }
    .chair-review-completed-pill {
      display: inline-flex;
      padding: 4px 10px;
      border-radius: 999px;
      font-size: 11px;
      font-weight: 800;
      white-space: nowrap;
    }
    .chair-review-completed-pill.is-complete {
      color: #145c32;
      background: color-mix(in srgb, #145c32 16%, #ffffff 84%);
    }
    .chair-review-completed-pill.is-pending {
      color: var(--muted-text);
      background: color-mix(in srgb, var(--muted-text) 12%, #ffffff 88%);
    }
    .chair-role-chip-text {
      flex: 1 1 auto;
      min-width: 0;
      line-height: 1.35;
    }
    .chair-decision-label-input {
      flex: 1 1 auto;
      min-width: 0;
      border: 0 !important;
      background: transparent !important;
      color: var(--navy) !important;
      font: inherit;
      font-weight: 700;
      padding: 6px 4px !important;
    }
    .chair-decision-label-input:focus {
      outline: 2px solid color-mix(in srgb, var(--gold) 40%, transparent);
      border-radius: 8px;
    }
    .chair-role-chip-remove {
      min-width: 24px;
      min-height: 24px;
      width: 24px;
      height: 24px;
      padding: 0;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 8px;
      font-size: 12px;
      line-height: 1;
    }
    .chair-role-picker-panel {
      border: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
      border-radius: 16px;
      background: rgba(255,255,255,0.82);
      padding: 12px;
      display: grid;
      gap: 10px;
    }
    .chair-role-picker-actions {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 8px;
      align-items: end;
    }
    .chair-role-picker-actions > .chair-inline-field {
      margin: 0;
    }
    .chair-role-picker-actions > .chair-inline-field.portal-inline-field {
      grid-template-columns: auto minmax(0, 1fr);
    }
    .chair-role-picker-actions > .nib-ui-button {
      width: auto;
      min-width: 160px;
      align-self: end;
      justify-self: end;
    }
    .chair-role-note {
      margin: 0;
      color: var(--muted-text);
      line-height: 1.4;
    }
    .chair-user-bulk-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      align-items: center;
    }
    @keyframes chairBulkOperationPulse {
      0%, 100% {
        box-shadow: 0 0 0 0 color-mix(in srgb, var(--gold) 60%, transparent);
      }
      50% {
        box-shadow: 0 0 0 10px color-mix(in srgb, var(--gold) 0%, transparent);
      }
    }
    .chair-bulk-operation-button {
      background: linear-gradient(135deg, var(--gold), var(--red)) !important;
      border-color: transparent !important;
      color: #ffffff !important;
      -webkit-text-fill-color: #ffffff !important;
      animation: chairBulkOperationPulse 1.6s ease-in-out infinite;
    }
    .chair-bulk-operation-button:hover {
      animation-play-state: paused;
    }
    .chair-inline-field--stacked-center > span:first-child {
      display: block;
      width: 100%;
      text-align: center;
      justify-self: center;
    }
    .chair-user-role-form {
      display: grid;
      gap: 12px;
    }
    .chair-user-form-actions {
      width: 100%;
      justify-content: center;
      align-items: center;
    }
    .chair-reviewer-settings-actions,
    .chair-track-form-actions {
      justify-content: center;
      width: 100%;
      align-items: center;
    }
    .chair-user-role-form select,
    .chair-user-role-form input,
    .chair-user-role-form textarea,
    .chair-table-search input,
    .chair-article-filter select {
      background-color: rgba(255,255,255,0.94);
      border: 1px solid color-mix(in srgb, var(--gold) 34%, rgba(16,29,63,0.12));
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.92), 0 10px 22px rgba(16,29,63,0.04);
    }
    .chair-user-role-form select:focus,
    .chair-user-role-form input:focus,
    .chair-user-role-form textarea:focus,
    .chair-reject-reason-field textarea:focus,
    .chair-table-search input:focus,
    .chair-article-filter select:focus {
      border-color: color-mix(in srgb, var(--primary-start) 58%, var(--gold) 42%);
      box-shadow: 0 0 0 3px color-mix(in srgb, var(--gold) 22%, transparent), inset 0 1px 0 rgba(255,255,255,0.94);
      outline: none;
    }
    .chair-user-role-form input.chair-user-readonly-value {
      background: transparent;
      border: none;
      box-shadow: none;
      padding: 0;
      min-height: 0;
      height: auto;
      color: var(--red);
      font-weight: 800;
      cursor: default;
    }
    .chair-user-role-form input.chair-user-readonly-value:focus {
      border: none;
      box-shadow: none;
      outline: none;
    }
    .chair-user-readonly-value--static {
      display: block;
      padding: 0;
      color: var(--red);
      font-weight: 800;
    }
    .chair-modify-panel {
      display: grid;
      gap: 10px;
    }
    .chair-modify-panel h3,
    .chair-modify-panel p {
      margin: 0;
    }
    .chair-user-status-note {
      margin: 0;
      color: var(--muted-text);
      line-height: 1.45;
    }
    .chair-track-stack {
      display: grid;
      gap: 14px;
    }
    .chair-track-form-grid {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(180px, 220px) minmax(140px, 180px);
      gap: 12px;
      align-items: end;
    }
    .chair-article-panel {
      display: grid;
      gap: 12px;
    }
    .chair-article-toolbar {
      display: grid;
      grid-template-columns: minmax(220px, 1.2fr) repeat(3, minmax(150px, 0.75fr));
      gap: 10px;
      align-items: end;
    }
    .chair-article-filter {
      display: grid;
      gap: 6px;
      color: var(--navy);
      font-weight: 800;
    }
    .chair-article-summary-line {
      margin: 0;
      color: var(--muted-text);
      font-weight: 700;
      line-height: 1.45;
    }
    .chair-article-title-cell {
      display: grid;
      gap: 4px;
      min-width: 220px;
    }
    .chair-article-title-cell strong {
      color: var(--navy);
      line-height: 1.25;
    }
    .chair-article-title-cell span {
      color: var(--muted-text);
      font-size: 12px;
      line-height: 1.35;
    }
    .chair-affiliation-cell {
      white-space: normal;
      min-width: 220px;
      line-height: 1.45;
    }
    .chair-article-queue-table {
      min-width: 0;
      table-layout: fixed;
    }
    .chair-article-queue-table th,
    .chair-article-queue-table td {
      white-space: normal;
      overflow-wrap: anywhere;
      word-break: break-word;
    }
    .chair-article-queue-table .chair-table-sort-button {
      white-space: normal;
    }
    .chair-article-queue-table .chair-article-title-cell,
    .chair-article-queue-table .chair-affiliation-cell {
      min-width: 0;
    }
    .chair-track-form-grid .full {
      grid-column: 1 / -1;
    }
    .chair-track-preview {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 8px;
      padding: 10px 14px;
      border: 1px solid color-mix(in srgb, var(--gold) 30%, transparent);
      border-radius: 12px;
      background: color-mix(in srgb, var(--gold) 12%, rgba(255,255,255,0.9));
    }
    .chair-track-preview-label {
      color: var(--muted-text);
      font-size: 12px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }
    .chair-track-preview-value {
      color: var(--navy);
      font-size: 15px;
      font-weight: 900;
    }
    .chair-track-existing-block {
      display: grid;
      gap: 12px;
      padding-top: 4px;
      border-top: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
    }
    .chair-track-report-shell {
      display: grid;
      gap: 14px;
    }
    .chair-track-report-toolbar {
      display: grid;
      grid-template-columns: minmax(220px, 1fr);
      gap: 10px;
      align-items: end;
    }
    .chair-track-report-chart {
      display: grid;
      gap: 12px;
    }
    .chair-track-visual-card {
      --chair-chart-blue-1: #1c3f73;
      --chair-chart-blue-2: #4f7fc4;
      --chair-chart-blue-active-1: #123056;
      --chair-chart-blue-active-2: #2f6fd1;
      --chair-chart-blue-line: rgba(28, 63, 115, 0.24);
      --chair-chart-blue-tint: rgba(28, 63, 115, 0.08);
      display: grid;
      gap: 10px;
      padding: 12px;
      border: 1px solid var(--chair-chart-blue-line);
      border-radius: 18px;
      background: color-mix(in srgb, var(--cream) 52%, #ffffff 48%);
      box-shadow: 0 18px 34px rgba(27,42,91,0.08);
    }
    .chair-track-visual-body {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(200px, 240px);
      gap: 14px;
      align-items: stretch;
    }
    @media (max-width: 760px) {
      .chair-track-visual-body {
        grid-template-columns: 1fr;
      }
    }
    .chair-track-visual-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .chair-track-visual-head h4,
    .chair-track-visual-head p {
      margin: 0;
    }
    .chair-track-visual-head h4 {
      color: var(--navy);
      font-size: 20px;
      line-height: 1.2;
    }
    .chair-track-visual-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      align-items: center;
      justify-content: flex-end;
    }
    .chair-track-visual-svg-wrap {
      display: flex;
      align-items: center;
      justify-content: center;
      overflow-x: auto;
      padding: 6px 6px 2px;
      border: 1px solid var(--chair-chart-blue-line);
      border-radius: 18px;
      background:
        radial-gradient(circle at top right, var(--chair-chart-blue-tint), transparent 38%),
        linear-gradient(180deg, rgba(255,255,255,0.97), rgba(240,245,252,0.9));
      justify-self: start;
      min-height: 140px;
      max-width: 500px;
    }
    .chair-track-visual-svg {
      display: block;
      width: auto;
      min-width: 0;
      max-width: 100%;
      height: 100%;
    }
    .chair-track-visual-grid-line {
      stroke: color-mix(in srgb, var(--navy) 8%, transparent);
      stroke-width: 1;
      stroke-dasharray: 5 7;
    }
    .chair-track-visual-axis {
      stroke: color-mix(in srgb, var(--navy) 68%, transparent);
      stroke-width: 2;
      stroke-linecap: round;
    }
    .chair-track-visual-tick,
    .chair-track-visual-x-label,
    .chair-track-visual-value {
      fill: var(--navy);
      font-weight: 800;
    }
    .chair-track-visual-tick {
      font-size: 10px;
    }
    .chair-track-visual-x-label {
      font-size: 11px;
      letter-spacing: 0.03em;
    }
    .chair-track-visual-x-label.is-active {
      fill: var(--chair-chart-blue-active-2, #2f6fd1);
    }
    .chair-track-visual-value {
      font-size: 10.5px;
    }
    .chair-track-visual-value.is-active {
      fill: var(--chair-chart-blue-active-2, #2f6fd1);
    }
    .chair-track-visual-value.is-inside {
      fill: #ffffff;
    }
    .chair-track-visual-bar-stop-start {
      stop-color: var(--chair-chart-blue-1, #1c3f73);
    }
    .chair-track-visual-bar-stop-end {
      stop-color: var(--chair-chart-blue-2, #4f7fc4);
    }
    .chair-track-visual-bar-stop-start-active {
      stop-color: var(--chair-chart-blue-active-1, #123056);
    }
    .chair-track-visual-bar-stop-end-active {
      stop-color: var(--chair-chart-blue-active-2, #2f6fd1);
    }
    .chair-track-visual-bar {
      filter: drop-shadow(0 8px 10px rgba(28,63,115,0.2));
    }
    .chair-track-visual-bar.is-active {
      filter: drop-shadow(0 8px 12px rgba(18,48,86,0.3));
    }
    .chair-track-visual-legend {
      display: grid;
      grid-template-columns: 1fr;
      gap: 8px;
      align-content: start;
    }
    .chair-track-visual-legend-item {
      display: grid;
      grid-template-columns: auto 1fr;
      gap: 8px;
      align-items: center;
      width: 100%;
      padding: 8px 10px;
      border: 1px solid var(--chair-chart-blue-line);
      border-radius: 12px;
      background: rgba(255,255,255,0.92);
      color: var(--navy);
      text-align: left;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.9);
    }
    button.chair-track-visual-legend-item {
      cursor: pointer;
      transition: transform 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
    }
    button.chair-track-visual-legend-item:hover {
      transform: translateY(-1px);
      border-color: var(--chair-chart-blue-active-2, #2f6fd1);
      box-shadow: 0 10px 22px rgba(28,63,115,0.14);
    }
    .chair-track-visual-legend-item.is-active {
      border-color: var(--chair-chart-blue-active-2, #2f6fd1);
      background: color-mix(in srgb, var(--chair-chart-blue-active-2, #2f6fd1) 8%, rgba(255,255,255,0.92));
      box-shadow: 0 0 0 2px color-mix(in srgb, var(--chair-chart-blue-active-2, #2f6fd1) 20%, transparent);
    }
    .chair-track-visual-legend-code {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 32px;
      min-height: 32px;
      border-radius: 10px;
      background: linear-gradient(180deg, var(--chair-chart-blue-1, #1c3f73), var(--chair-chart-blue-2, #4f7fc4));
      color: #ffffff;
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0.04em;
    }
    .chair-track-visual-legend-item.is-active .chair-track-visual-legend-code {
      background: linear-gradient(180deg, var(--chair-chart-blue-active-1, #123056), var(--chair-chart-blue-active-2, #2f6fd1));
    }
    .chair-track-visual-legend-copy {
      display: grid;
      gap: 2px;
      min-width: 0;
    }
    .chair-track-visual-legend-copy strong {
      color: var(--navy);
      font-size: 12.5px;
      line-height: 1.25;
      overflow-wrap: anywhere;
      word-break: break-word;
    }
    .chair-track-visual-legend-copy small {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 800;
      line-height: 1.3;
    }
    .chair-track-report-list {
      display: grid;
      gap: 12px;
    }
    .chair-track-report-table {
      min-width: 0;
      table-layout: fixed;
    }
    .chair-track-report-table th,
    .chair-track-report-table td {
      white-space: normal;
      overflow-wrap: anywhere;
      word-break: break-word;
      vertical-align: middle;
    }
    .chair-track-inline-meta {
      display: grid;
      gap: 3px;
      min-width: 150px;
    }
    .chair-track-inline-meta strong {
      color: var(--navy);
      line-height: 1.2;
    }
    .chair-track-inline-meta span {
      color: var(--muted-text);
      font-size: 12px;
      line-height: 1.35;
    }
    .chair-track-chair-manager {
      display: grid;
      gap: 10px;
      min-width: 240px;
    }
    .chair-track-chair-list {
      display: grid;
      gap: 8px;
    }
    .chair-track-chair-empty {
      color: var(--muted-text);
      font-size: 12px;
      font-weight: 700;
    }
    .chair-track-default-note {
      display: inline-flex;
      align-items: center;
      padding: 8px 12px;
      border: 1px solid color-mix(in srgb, var(--gold) 34%, transparent);
      border-radius: 999px;
      background: color-mix(in srgb, var(--gold) 14%, rgba(255,255,255,0.9));
      color: var(--navy);
      font-size: 12.5px;
      font-weight: 800;
      cursor: help;
    }
    .chair-track-chair-chip {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      padding: 8px 10px;
      border: 1px solid color-mix(in srgb, var(--gold) 18%, transparent);
      border-radius: 14px;
      background: color-mix(in srgb, var(--cream) 48%, #ffffff 52%);
    }
    .chair-track-chair-chip-meta {
      display: grid;
      gap: 2px;
      min-width: 0;
    }
    .chair-track-chair-chip-meta strong,
    .chair-track-chair-chip-meta span {
      white-space: normal;
      overflow-wrap: anywhere;
      word-break: break-word;
    }
    .chair-track-chair-chip-meta strong {
      color: var(--navy);
      line-height: 1.2;
    }
    .chair-track-chair-chip-meta span {
      color: var(--muted-text);
      font-size: 12px;
    }
    .chair-track-chair-remove {
      width: 38px;
      min-width: 38px;
      height: 38px;
      min-height: 38px;
      color: #ffffff;
      box-shadow: 0 10px 20px rgba(155, 27, 46, 0.2), var(--nib-ui-gloss-inner);
    }
    .chair-track-chair-assign {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 8px;
      align-items: center;
    }
    .chair-track-chair-assign .nib-select-shell,
    .chair-track-chair-assign select {
      width: 100%;
    }
    .chair-track-row {
      transition: background 140ms ease, box-shadow 140ms ease, opacity 140ms ease;
    }
    .chair-track-order-cell {
      display: grid;
      grid-template-columns: auto minmax(56px, auto);
      gap: 10px;
      align-items: center;
    }
    .chair-track-order-value {
      color: var(--navy);
      font-size: 15px;
      font-weight: 900;
      line-height: 1;
    }
    .chair-track-order-input {
      max-width: 88px;
    }
    .chair-modify-table-wrap {
      max-height: none;
    }
    .chair-modify-table {
      min-width: 900px;
    }
    .chair-modify-table td {
      vertical-align: middle;
    }
    .chair-review-editor-panel {
      display: grid;
      gap: 10px;
    }
    .chair-review-editor-panel > .message:empty {
      display: none;
      margin: 0;
      padding: 0;
    }
    .chair-review-editor-panel h3 {
      margin: 0;
      color: var(--navy);
    }
    .chair-review-visibility-decision-section {
      display: grid;
      gap: 10px;
      padding: 14px;
      border: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
      border-radius: 18px;
      background: color-mix(in srgb, var(--cream) 48%, #ffffff 52%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.74);
    }
    .chair-review-visibility-decision-heading {
      display: grid;
      gap: 4px;
    }
    .chair-review-visibility-decision-heading h3,
    .chair-review-visibility-decision-heading p {
      margin: 0;
    }
    .chair-review-visibility-decision-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 10px;
    }
    .chair-review-visibility-decision-toggle {
      min-width: 0;
      align-items: start;
    }
    .chair-review-visibility-decision-toggle .nib-ui-toggle-text {
      min-width: 0;
    }
    .chair-review-visibility-decision-toggle strong,
    .chair-review-visibility-decision-toggle small {
      white-space: normal;
      overflow-wrap: anywhere;
    }
    .chair-review-visibility-empty {
      margin: 0;
      color: var(--muted-text);
    }
    .chair-review-editor-table {
      min-width: 1320px;
    }
    .chair-review-editor-table td {
      vertical-align: middle;
    }
    .chair-review-editor-table .chair-merge-detail-row td {
      vertical-align: top;
    }
    .chair-review-link-list {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 7px;
      min-width: 210px;
    }
    .chair-review-link-row {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }
    .chair-review-link {
      border: 0;
      background: transparent;
      color: var(--navy);
      padding: 0;
      font-weight: 700;
      cursor: pointer;
      text-decoration: none;
      text-align: left;
      line-height: 1.35;
    }
    .chair-review-link:hover {
      color: var(--red);
      transform: none;
    }
    .chair-review-link--report {
      font-size: 12px;
      color: var(--red);
    }
    .chair-review-delete-button {
      flex: 0 0 auto;
    }
    .chair-manager-review-form,
    .chair-decision-form {
      display: grid;
      gap: 12px;
    }
    .chair-review-form-builder-shell {
      display: grid;
      gap: 10px;
      padding: 0;
    }
    .chair-review-form-builder-shell > h3,
    .chair-review-form-builder-shell > h4 {
      margin: 0;
    }
    .chair-review-form-builder-shell > .chair-role-note {
      margin: 0;
      font-size: 13px;
      line-height: 1.45;
    }
    .chair-review-template-toolbar {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 8px;
      margin-bottom: 0;
      padding: 10px 12px;
      align-items: end;
      border: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
      border-radius: 18px;
      background: color-mix(in srgb, var(--cream) 58%, #ffffff 42%);
    }
    .chair-review-template-meta-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px 10px;
      align-items: end;
    }
    .chair-compact-field {
      display: grid;
      gap: 2px;
      color: var(--navy);
      font-weight: 800;
      justify-items: stretch;
      text-align: left;
    }
    .chair-compact-field.full {
      grid-column: 1 / -1;
    }
    .chair-compact-field-label {
      color: var(--navy);
      font-size: 11px;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }
    .chair-review-template-meta-grid .chair-compact-field {
      justify-items: stretch;
      text-align: left;
    }
    .chair-review-template-meta-grid .chair-compact-field-label {
      display: block;
      width: 100%;
      justify-self: start;
      text-align: left;
      white-space: normal;
      overflow: visible;
      text-overflow: clip;
    }
    .chair-review-template-actions {
      justify-self: end;
      align-self: end;
      justify-content: flex-end;
      flex-wrap: wrap;
      gap: 8px;
    }
    .chair-review-form-bottom-actions {
      justify-content: center;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
      padding: 2px 0 0;
    }
    .chair-review-template-preview-meta {
      display: grid;
      gap: 3px;
      padding: 9px 11px;
      border: 1px solid color-mix(in srgb, var(--gold) 18%, transparent);
      border-radius: 14px;
      background: color-mix(in srgb, var(--cream) 54%, #ffffff 46%);
    }
    .chair-review-template-preview-meta strong {
      color: var(--navy);
      line-height: 1.2;
    }
    .chair-review-template-preview-meta span {
      color: var(--muted-text);
      font-size: 13px;
      line-height: 1.35;
    }
    .chair-decision-summary {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px;
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      border-radius: 16px;
      background: color-mix(in srgb, var(--cream) 54%, #ffffff 46%);
      padding: 10px 12px;
    }
    .chair-decision-summary span {
      display: grid;
      gap: 2px;
      color: var(--ink);
      font-weight: 700;
    }
    .chair-decision-summary strong {
      color: var(--muted-text);
      font-size: 11px;
      text-transform: uppercase;
      letter-spacing: 0.06em;
    }
    .chair-decision-note-list {
      display: grid;
      gap: 4px;
    }
    .chair-decision-note {
      margin: 0;
      font-size: 13px;
      font-weight: 600;
      line-height: 1.4;
    }
    .chair-decision-note--danger {
      color: var(--red);
    }
    .chair-decision-note--warning {
      color: #9a6a00;
    }
    .chair-decision-note--success {
      color: #145c32;
    }
    .chair-decision-note--large {
      font-size: 15px;
    }
    .chair-decision-tools {
      display: grid;
      gap: 10px;
      padding: 8px 10px;
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      border-radius: 14px;
      background: color-mix(in srgb, var(--cream) 50%, #ffffff 50%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.72);
      width: fit-content;
      justify-self: end;
    }
    .chair-decision-tools-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 10px;
      flex-wrap: wrap;
    }
    .chair-inline-decision {
      display: grid;
      gap: 6px;
      width: 170px;
      max-width: 170px;
      align-items: start;
      justify-items: start;
    }
    .chair-inline-decision-trigger {
      max-width: 100%;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      display: block;
      padding: 6px 12px !important;
      border-radius: 10px;
      border: 1px solid rgba(255,255,255,0.4) !important;
      background: linear-gradient(180deg, rgba(255,255,255,0.4), rgba(255,255,255,0.08)) !important;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.55), 0 2px 6px rgba(16,29,63,0.14);
      color: var(--navy) !important;
      font-weight: 700 !important;
      transition: box-shadow 160ms ease, transform 160ms ease;
    }
    .chair-inline-decision-trigger:hover {
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.7), 0 4px 10px rgba(16,29,63,0.2);
      transform: translateY(-1px);
    }
    .chair-decision-row {
      transition: background-color 160ms ease;
      background: color-mix(in srgb, var(--navy) 10%, #ffffff 90%);
    }
    .chair-decision-row td {
      color: var(--navy);
      border-bottom-color: rgba(27,42,91,0.2);
    }
    .chair-decision-row .chair-inline-decision-note {
      color: var(--muted-text) !important;
    }
    .chair-decision-row--defer {
      background: color-mix(in srgb, var(--cream) 72%, #ffffff 28%);
    }
    .chair-decision-row--accepted {
      background: rgba(221, 247, 231, 0.92);
    }
    .chair-decision-row--accepted td {
      color: #156f49;
    }
    .chair-decision-row--accepted-minor {
      background: rgba(221, 247, 231, 0.68);
    }
    .chair-decision-row--accepted-minor td {
      color: #156f49;
    }
    .chair-decision-row--accepted-major {
      background: rgba(221, 247, 231, 0.44);
    }
    .chair-decision-row--accepted-major td {
      color: #156f49;
    }
    .chair-decision-row--revision-minor {
      background: rgba(252, 236, 215, 0.94);
    }
    .chair-decision-row--revision-minor td {
      color: #8b4f18;
    }
    .chair-decision-row--revision-major {
      background: rgba(248, 225, 189, 0.96);
    }
    .chair-decision-row--revision-major td {
      color: #8a4c12;
    }
    .chair-decision-row--rejected {
      background: rgba(249, 224, 229, 0.92);
    }
    .chair-decision-row--rejected td {
      color: #94304b;
    }
    @keyframes chairDecisionNeedsAttentionPulse {
      0%, 100% {
        box-shadow: inset 0 0 0 9999px color-mix(in srgb, var(--red) 22%, transparent);
      }
      50% {
        box-shadow: inset 0 0 0 9999px color-mix(in srgb, var(--red) 4%, transparent);
      }
    }
    .chair-decision-row-needs-attention td {
      animation: chairDecisionNeedsAttentionPulse 1.6s ease-in-out infinite;
    }
    .chair-decision-row-needs-attention:hover td {
      animation-play-state: paused;
    }
    @keyframes chairPublishPendingBlink {
      0%, 100% {
        box-shadow: 0 0 0 0 color-mix(in srgb, var(--red) 65%, transparent);
      }
      50% {
        box-shadow: 0 0 0 8px color-mix(in srgb, var(--red) 0%, transparent);
      }
    }
    .chair-publish-pending-blink {
      animation: chairPublishPendingBlink 1.6s ease-in-out infinite;
    }
    .chair-publish-pending-blink:hover {
      animation-play-state: paused;
    }
    .chair-decision-tabs-row {
      position: relative;
      top: auto;
      z-index: 1;
      display: flex;
      flex-wrap: wrap;
      align-items: flex-start;
      justify-content: space-between;
      gap: 8px;
      margin-top: 4px;
      padding: 10px 0 4px;
      background: color-mix(in srgb, var(--cream) 92%, #ffffff 8%);
    }
    .chair-decision-tabs-list {
      display: flex;
      flex-wrap: wrap;
      align-items: flex-start;
      gap: 8px;
      max-width: 100%;
    }
    .chair-decision-tab {
      border: 0;
      cursor: pointer;
      font-weight: 700;
      font-size: 13px;
      padding: 8px 14px;
      border-radius: 10px;
      color: var(--navy);
      background: color-mix(in srgb, var(--cream) 60%, #ffffff 40%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.3), 0 2px 8px rgba(16,29,63,0.12);
      transition: transform 160ms ease, box-shadow 160ms ease;
      white-space: nowrap;
    }
    .chair-decision-tab:hover {
      transform: translateY(-2px);
    }
    .chair-email-template-list-label.chair-decision-row--defer,
    .chair-publish-stat-card.chair-decision-row--defer,
    .chair-decision-tab.chair-decision-row--defer,
    .chair-publish-decision-table-title.chair-decision-row--defer,
    .chair-publish-decision-active-banner.chair-decision-row--defer {
      background: color-mix(in srgb, var(--cream) 72%, #ffffff 28%);
      color: var(--navy);
    }
    .chair-decision-tab.chair-decision-row--accepted {
      background: #145c32;
      color: #ffffff;
    }
    .chair-decision-tab.chair-decision-row--accepted-minor {
      background: #1f6d3f;
      color: #ffffff;
    }
    .chair-decision-tab.chair-decision-row--accepted-major {
      background: #2f8f56;
      color: #ffffff;
    }
    .chair-decision-tab.chair-decision-row--rejected {
      background: var(--red);
      color: #ffffff;
    }
    .chair-decision-tab.chair-decision-row--revision-minor {
      background: #e4b400;
      color: #1b2a5b;
    }
    .chair-decision-tab.chair-decision-row--revision-major {
      background: #c98a00;
      color: #1b2a5b;
    }
    .chair-decision-tab.chair-decision-tab--active {
      background: var(--chair-active-tab-color, var(--gold));
      color: #1b2a5b;
      box-shadow: 0 0 0 3px var(--chair-active-tab-color, var(--gold)), 0 6px 16px rgba(16,29,63,0.25);
    }
    .chair-decision-tab-count {
      margin-left: 6px;
      font-weight: 800;
      opacity: 0.85;
    }
    .chair-decision-tab-wrap {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 4px;
      flex: 0 0 auto;
    }
    .chair-decision-tab-pending-badge {
      display: inline-block;
      font-size: 11px;
      font-weight: 700;
      color: var(--navy);
      background: color-mix(in srgb, var(--gold) 35%, #ffffff 65%);
      border-radius: 8px;
      padding: 2px 8px;
      white-space: nowrap;
    }
    .chair-decision-category-panel[hidden] {
      display: none;
    }
    .chair-decision-report-label-select {
      min-width: 200px;
    }
    .chair-publish-decision-intro {
      margin: 0;
      color: var(--red);
      font-size: 14px;
      font-weight: 800;
      line-height: 1.3;
    }
    .chair-email-box-tabs {
      display: flex;
      gap: 10px;
    }
    .chair-email-box-body {
      display: grid;
      gap: 10px;
    }
    .chair-publish-decision-email-preview {
      padding: 12px 16px;
      background: color-mix(in srgb, var(--cream) 40%, #ffffff 60%);
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      border-radius: 12px;
      display: grid;
      gap: 6px;
    }
    .chair-publish-decision-email-preview-body {
      margin: 0;
      white-space: pre-wrap;
      font-family: inherit;
      font-size: 13px;
      color: var(--ink);
      line-height: 1.5;
    }
    .chair-publish-decision-file-history {
      padding: 10px 14px;
      background: color-mix(in srgb, var(--cream) 40%, #ffffff 60%);
      border-radius: 8px;
    }
    .chair-publish-decision-file-history-list {
      margin: 0;
      padding-left: 18px;
      font-size: 13px;
      color: var(--ink);
    }
    .chair-publish-decision-file-history-list li {
      margin: 2px 0;
    }
    .chair-publish-decision-table-title {
      margin: 0;
      padding: 8px 14px;
      border-radius: 10px;
      display: inline-flex;
      width: fit-content;
      color: var(--navy);
      background: color-mix(in srgb, var(--cream) 60%, #ffffff 40%);
    }
    .chair-publish-decision-table-title.chair-decision-row--accepted {
      background: #145c32;
      color: #ffffff;
    }
    .chair-publish-decision-table-title.chair-decision-row--accepted-minor {
      background: #1f6d3f;
      color: #ffffff;
    }
    .chair-publish-decision-table-title.chair-decision-row--accepted-major {
      background: #2f8f56;
      color: #ffffff;
    }
    .chair-publish-decision-table-title.chair-decision-row--rejected {
      background: var(--red);
      color: #ffffff;
    }
    .chair-publish-decision-table-title.chair-decision-row--revision-minor {
      background: #e4b400;
      color: #1b2a5b;
    }
    .chair-publish-decision-table-title.chair-decision-row--revision-major {
      background: #c98a00;
      color: #1b2a5b;
    }
    .chair-publish-decision-active-banner {
      margin: 2px 0 0;
      padding: 6px 16px;
      border-radius: 12px;
      text-align: center;
      font-size: 17px;
      font-weight: 800;
      letter-spacing: 0.02em;
      color: var(--navy);
      background: color-mix(in srgb, var(--cream) 60%, #ffffff 40%);
    }
    .chair-publish-decision-active-banner.chair-decision-row--accepted {
      background: #145c32;
      color: #ffffff;
    }
    .chair-publish-decision-active-banner.chair-decision-row--accepted-minor {
      background: #1f6d3f;
      color: #ffffff;
    }
    .chair-publish-decision-active-banner.chair-decision-row--accepted-major {
      background: #2f8f56;
      color: #ffffff;
    }
    .chair-publish-decision-active-banner.chair-decision-row--rejected {
      background: var(--red);
      color: #ffffff;
    }
    .chair-publish-decision-active-banner.chair-decision-row--revision-minor {
      background: #e4b400;
      color: #1b2a5b;
    }
    .chair-publish-decision-active-banner.chair-decision-row--revision-major {
      background: #c98a00;
      color: #1b2a5b;
    }
    .chair-publish-decision-table-section {
      display: grid;
      gap: 12px;
    }
    .chair-publish-decision-panels {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 12px;
      align-items: start;
      width: 85%;
      margin: 0 auto;
    }
    .chair-publish-decision-column {
      display: grid;
      gap: 6px;
      min-width: 0;
    }
    .chair-publish-decision-panel .chair-drawer-table th,
    .chair-publish-decision-panel .chair-drawer-table td {
      padding: 6px 10px;
    }
    .chair-publish-decision-column-title {
      margin: 0;
      color: var(--navy);
      font-size: 14px;
    }
    .chair-publish-decision-bar {
      position: sticky;
      bottom: 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding: 12px 14px;
      border-radius: 14px;
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      background: color-mix(in srgb, var(--cream) 80%, #ffffff 20%);
      box-shadow: 0 -6px 16px rgba(16,29,63,0.1);
      z-index: 5;
    }
    .chair-publish-decision-select-all {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-weight: 600;
      color: var(--navy);
    }
    .chair-publish-decision-select-all.nibveda-toggle-button {
      padding: 8px 12px;
      min-width: 0;
    }
    .chair-publish-decision-select-all .nib-ui-toggle-state {
      display: none;
    }
    .chair-publish-decision-row-toggle {
      padding: 0;
      min-width: 0;
      border: 0;
      background: transparent;
      box-shadow: none;
      justify-content: center;
    }
    .chair-publish-decision-row-toggle .nib-ui-toggle-text {
      display: none;
    }
    .chair-review-visibility-row-toggle {
      padding: 0;
      min-width: 0;
      margin-inline: auto;
      border: 0;
      background: transparent;
      box-shadow: none;
      justify-content: center;
    }
    .chair-review-visibility-row-toggle .nib-ui-toggle-text {
      display: none;
    }
    .chair-publish-decision-bar-actions {
      display: flex;
      align-items: center;
      gap: 10px;
    }
    @media (max-width: 860px) {
      .chair-publish-decision-panel,
      .chair-decision-category-panel,
      .chair-publish-decision-panels,
      .chair-publish-decision-column,
      .chair-publish-decision-table-wrap {
        width: 100%;
        max-width: 100%;
        min-width: 0;
      }
      .chair-publish-decision-panel .chair-publish-decision-panels {
        width: 100%;
        margin: 0;
      }
      .chair-publish-decision-panel .chair-publish-decision-summary-cards {
        width: 100%;
        grid-template-columns: minmax(0, 1fr);
      }
      .chair-publish-decision-panel .chair-publish-decision-table-wrap {
        overflow: visible;
      }
      .chair-publish-decision-panel .chair-drawer-table thead {
        display: none;
      }
      .chair-publish-decision-panel .chair-drawer-table,
      .chair-publish-decision-panel .chair-drawer-table tbody,
      .chair-publish-decision-panel .chair-drawer-table tr,
      .chair-publish-decision-panel .chair-drawer-table td {
        display: block;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
      }
      .chair-publish-decision-panel .chair-drawer-table tr {
        padding: 12px;
        background: var(--surface-bg-strong, #ffffff);
      }
      .chair-publish-decision-panel .chair-drawer-table td {
        border: 0;
        padding: 7px 0;
      }
      .chair-publish-decision-panel .chair-drawer-table td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 3px;
        color: var(--muted-text);
        font-size: 11px;
        font-weight: 700;
      }
      .chair-publish-decision-panel .chair-table-empty-cell::before {
        content: none;
      }
      .chair-publish-decision-panel .chair-drawer-table td:first-child {
        position: static;
        left: auto;
        z-index: auto;
        background: transparent;
        box-shadow: none;
      }
      .chair-publish-decision-panel .chair-publish-decision-row-toggle {
        justify-content: flex-start;
      }
      .chair-publish-decision-panel .chair-publish-decision-bar {
        position: static;
        align-items: stretch;
        flex-direction: column;
      }
      .chair-publish-decision-panel .chair-publish-decision-bar-actions {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
      }
      .chair-publish-decision-panel .chair-publish-decision-bar-actions .nib-ui-button,
      .chair-publish-decision-panel .chair-publish-decision-select-all.nibveda-toggle-button {
        width: 100%;
        justify-content: center;
      }
    }
    .chair-inline-decision .nib-select-shell,
    .chair-inline-decision select {
      width: 100%;
    }
    .chair-inline-decision .nib-select-menu {
      left: auto;
      right: auto;
      width: 300px;
      max-width: 90vw;
    }
    .chair-inline-decision .nib-select-shell .nib-select-option.is-selected {
      background: transparent !important;
      border-color: transparent !important;
      color: var(--red) !important;
      font-weight: 700 !important;
    }
    .chair-inline-decision-editor {
      display: grid;
      gap: 8px;
      align-items: center;
      width: 100%;
    }
    .chair-inline-decision-note {
      color: var(--muted-text);
      line-height: 1.35;
    }
    .chair-decision-preparation-panel,
    .chair-decision-preparation-panel > *,
    .chair-decision-preparation-toolbar,
    .chair-decision-preparation-table-wrap,
    .chair-decision-preparation-table,
    .chair-decision-preparation-table tbody,
    .chair-decision-preparation-table tr,
    .chair-decision-preparation-table td {
      min-width: 0;
      max-width: 100%;
      box-sizing: border-box;
    }
    .chair-decision-preparation-toolbar .chair-table-search {
      width: 100%;
      justify-self: stretch;
      text-align: left;
    }
    .chair-decision-preparation-toolbar .chair-table-search > .portal-inline-label-text {
      text-align: left;
      justify-self: start;
    }
    .chair-decision-preparation-panel .chair-inline-decision,
    .chair-decision-preparation-panel .chair-review-link-list {
      width: 100%;
      max-width: 100%;
      min-width: 0;
    }
    .chair-decision-preparation-panel .chair-review-link-list {
      align-items: stretch;
    }
    @media (max-width: 860px) {
      .chair-decision-preparation-panel .chair-decision-tools {
        width: 100%;
        justify-self: stretch;
      }
      .chair-decision-preparation-panel .chair-decision-tools-actions {
        justify-content: stretch;
      }
      .chair-decision-preparation-panel .chair-decision-tools-actions .nib-ui-button,
      .chair-decision-preparation-panel .chair-bulk-operation-button {
        width: 100%;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table-wrap.chair-review-editor-table-wrap {
        height: auto;
        max-height: none;
        overflow-x: hidden;
        overflow-y: visible;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table,
      .chair-decision-preparation-panel .chair-decision-preparation-table tbody,
      .chair-decision-preparation-panel .chair-decision-preparation-table tr {
        display: block;
        width: 100%;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table {
        min-width: 0 !important;
        border-collapse: separate;
        border-spacing: 0;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tbody {
        display: grid;
        gap: 12px;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table thead {
        display: none;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tr {
        margin: 0;
        padding: 12px;
        border: 1px solid var(--table-line);
        border-radius: 16px;
        background: var(--surface-bg-strong, #ffffff);
        position: relative;
        z-index: 0;
        overflow: visible;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tr.chair-decision-row {
        background: color-mix(in srgb, var(--navy) 10%, #ffffff 90%);
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tr.chair-decision-row--defer {
        background: color-mix(in srgb, var(--cream) 72%, #ffffff 28%);
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tr.chair-decision-row--accepted {
        background: rgba(221, 247, 231, 0.92);
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tr.chair-decision-row--accepted-minor {
        background: rgba(221, 247, 231, 0.68);
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tr.chair-decision-row--accepted-major {
        background: rgba(221, 247, 231, 0.44);
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tr.chair-decision-row--revision-minor {
        background: rgba(252, 236, 215, 0.94);
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tr.chair-decision-row--revision-major {
        background: rgba(248, 225, 189, 0.96);
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tr.chair-decision-row--rejected {
        background: rgba(249, 224, 229, 0.92);
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table tr:has(.nib-select-shell.is-open) {
        z-index: 24;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table td {
        display: block;
        width: auto;
        max-width: 100%;
        min-width: 0;
        border: 0;
        padding: 7px 0;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table td:has(.nib-select-shell.is-open) {
        position: relative;
        z-index: 25;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 3px;
        color: var(--muted-text);
        font-size: 11px;
        font-weight: 700;
      }
      .chair-decision-preparation-panel .chair-table-empty-cell::before,
      .chair-decision-preparation-panel .chair-merge-detail-row td::before,
      .chair-decision-preparation-panel .chair-merge-detail-cell::before {
        content: none;
      }
      .chair-decision-preparation-panel .chair-decision-preparation-table td:first-child {
        position: static;
        left: auto;
        z-index: auto;
        background: transparent;
        box-shadow: none;
      }
      .chair-decision-preparation-panel .chair-merge-toggle-cell {
        width: 100%;
        min-width: 0;
        text-align: left !important;
      }
      .chair-decision-preparation-panel .chair-inline-decision {
        justify-items: stretch;
      }
      .chair-decision-preparation-panel .chair-inline-decision-trigger {
        white-space: normal;
      }
      .chair-decision-preparation-panel .chair-review-link-row,
      .chair-decision-preparation-panel .chair-review-link,
      .chair-decision-preparation-panel .chair-inline-decision .nib-select-shell,
      .chair-decision-preparation-panel .chair-inline-decision select {
        width: 100%;
        max-width: 100%;
      }
      .chair-decision-preparation-panel .chair-inline-decision .nib-select-shell.is-open {
        z-index: 180;
      }
      .chair-decision-preparation-panel .chair-inline-decision .nib-select-shell.is-open .nib-select-menu {
        z-index: 181;
      }
    }
    .chair-review-comparison-shell {
      display: grid;
      gap: 10px;
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      border-radius: 16px;
      background: color-mix(in srgb, var(--cream) 42%, #ffffff 58%);
      padding: 12px;
    }
    .chair-review-comparison-heading {
      display: grid;
      gap: 4px;
    }
    .chair-review-comparison-heading h4,
    .chair-review-comparison-heading p {
      margin: 0;
    }
    .chair-review-comparison-heading h4 {
      color: var(--navy);
    }
    .chair-review-comparison-heading p {
      color: var(--muted-text);
      font-size: 13px;
      line-height: 1.45;
    }
    .chair-review-comparison-wrap {
      overflow-x: auto;
      overflow-y: visible;
    }
    .chair-review-comparison-table {
      min-width: 980px;
      table-layout: auto;
    }
    .chair-review-comparison-table td,
    .chair-review-comparison-table th {
      white-space: normal;
      overflow-wrap: anywhere;
      word-break: break-word;
      vertical-align: top;
    }
    .chair-reviewer-meta {
      display: grid;
      gap: 2px;
      min-width: 120px;
    }
    .chair-reviewer-meta strong {
      color: var(--navy);
      line-height: 1.2;
    }
    .chair-reviewer-meta span {
      color: var(--muted-text);
      font-size: 12px;
      line-height: 1.35;
    }
    .chair-associated-reviewers {
      display: grid;
      gap: 7px;
      min-width: 240px;
    }
    .chair-associated-reviewer {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      border-radius: 12px;
      background: color-mix(in srgb, var(--cream) 58%, #ffffff 42%);
      padding: 7px 8px;
      color: var(--navy);
      font-size: 12px;
      font-weight: 800;
      line-height: 1.35;
    }
    .chair-associated-remove {
      width: 42px;
      min-width: 42px;
      height: 42px;
      min-height: 42px;
      border-radius: 14px;
      color: #ffffff;
      cursor: pointer;
      padding: 0;
      box-shadow: 0 12px 22px rgba(155, 27, 46, 0.2), var(--nib-ui-gloss-inner);
    }
    .chair-associated-remove:disabled {
      cursor: not-allowed;
      opacity: 0.54;
    }
    .chair-reviewer-delete-icon {
      width: 42px;
      min-width: 42px;
      height: 42px;
      min-height: 42px;
      color: #ffffff;
      box-shadow: 0 12px 22px rgba(155, 27, 46, 0.2), var(--nib-ui-gloss-inner);
    }
    .chair-modify-note {
      display: block;
      margin-top: 5px;
      color: var(--muted-text);
      line-height: 1.35;
    }
    .chair-bulk-panel {
      position: static;
      display: grid;
      gap: 10px;
    }
    .chair-bulk-panel[hidden] {
      display: none;
    }
    .chair-review-form-builder-layout {
      display: grid;
      grid-template-columns: minmax(0, 0.8fr) minmax(360px, 1fr);
      gap: 12px;
      align-items: start;
    }
    .chair-review-form-tab-list {
      justify-content: flex-start;
    }
    .chair-review-form-tab-pane {
      display: grid;
      gap: 12px;
    }
    .chair-review-form-builder-panel {
      display: grid;
      gap: 8px;
      padding: 10px 12px;
      border: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
      border-radius: 18px;
      background: color-mix(in srgb, var(--cream) 50%, #ffffff 50%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
    }
    .chair-review-form-builder-panel h4 {
      margin: 0;
    }
    .chair-review-form-builder-panel > .chair-role-note {
      margin: 0;
      font-size: 12px;
      line-height: 1.4;
    }
    .chair-review-form-editor {
      display: grid;
      gap: 8px;
    }
    .chair-review-form-editor-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 8px 10px;
      align-items: start;
    }
    .chair-review-form-editor-grid > label {
      display: grid;
      gap: 4px;
      color: var(--navy);
      font-size: 12px;
      font-weight: 800;
      line-height: 1.35;
      text-align: left;
    }
    .chair-review-form-editor-grid > label input,
    .chair-review-form-editor-grid > label select,
    .chair-review-form-editor-grid > label textarea {
      min-height: 40px;
      font-size: 13px;
      padding: 9px 12px;
    }
    .chair-review-form-editor-grid > label textarea {
      min-height: 84px;
      resize: vertical;
    }
    .chair-review-form-editor-grid > label.full {
      grid-column: 1 / -1;
    }
    .chair-review-form-editor .chair-reviewer-toggle-label {
      align-self: end;
      min-height: 42px;
      padding: 9px 11px;
      border: 1px solid color-mix(in srgb, var(--gold) 18%, transparent);
      border-radius: 14px;
      background: rgba(255,255,255,0.74);
    }
    .chair-review-form-editor .chair-reviewer-toggle-label span {
      gap: 2px;
    }
    .chair-review-form-editor .chair-reviewer-toggle-label small {
      font-size: 11px;
      line-height: 1.35;
    }
    .chair-review-form-editor-actions {
      justify-content: flex-end;
      gap: 8px;
      flex-wrap: wrap;
    }
    .chair-review-form-field-list {
      display: grid;
      gap: 6px;
    }
    .chair-review-form-field-card {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 8px;
      align-items: center;
      padding: 8px 10px;
      border: 1px solid color-mix(in srgb, var(--gold) 20%, transparent);
      border-radius: 16px;
      background: rgba(255,255,255,0.76);
    }
    .chair-review-form-field-card.is-editing {
      border-color: color-mix(in srgb, var(--red) 26%, var(--gold) 28%);
      box-shadow: 0 0 0 1px color-mix(in srgb, var(--red) 10%, transparent);
    }
    .chair-review-form-field-meta {
      display: grid;
      gap: 1px;
      min-width: 0;
    }
    .chair-review-form-field-heading {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }
    .chair-review-form-field-order {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 64px;
      padding: 2px 8px;
      border-radius: 999px;
      background: color-mix(in srgb, var(--gold) 16%, #ffffff 84%);
      color: var(--navy);
      font-size: 10px;
      font-weight: 800;
      letter-spacing: 0.05em;
      text-transform: uppercase;
    }
    .chair-review-form-field-meta strong {
      color: var(--navy);
      line-height: 1.25;
    }
    .chair-review-form-field-meta span {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }
    .chair-review-form-field-meta small {
      color: var(--muted-text);
      font-size: 12px;
      line-height: 1.35;
    }
    .chair-review-form-field-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 5px;
      flex-wrap: wrap;
    }
    .chair-review-form-field-summary {
      margin: 0;
      font-size: 12px;
      line-height: 1.4;
    }
    .chair-review-form-fields-panel {
      align-content: start;
    }
    .chair-review-form-preview-panel {
      align-content: start;
    }
    .chair-review-form-preview-surface {
      border: 1px solid color-mix(in srgb, var(--gold) 18%, transparent);
      border-radius: 16px;
      background: rgba(255,255,255,0.76);
      padding: 10px 12px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.74);
      overflow: hidden;
    }
    .chair-review-form-preview-body {
      display: grid;
      gap: 8px;
      align-content: start;
    }
    .chair-review-form-preview-form {
      width: 100%;
      max-width: 100%;
      margin: 0;
      box-sizing: border-box;
    }
    .chair-review-form-preview-form .grid {
      min-width: 0;
    }
    .chair-bulk-head h3,
    .chair-bulk-head p {
      margin: 0;
    }
    .chair-bulk-grid {
      display: grid;
      grid-template-columns: minmax(180px, 1fr) auto minmax(180px, 1fr) minmax(180px, 1fr) auto;
      gap: 10px;
      align-items: end;
    }
    .chair-import-preview {
      border: 1px dashed var(--secondary-border);
      border-radius: 14px;
      background: rgba(255,255,255,0.72);
      padding: 12px;
      display: grid;
      gap: 6px;
    }
    .chair-submission-table-wrap {
      display: none;
      margin-top: 0;
      overflow: visible;
    }
    .chair-submission-table-wrap.chair-data-pulse {
      animation: chairDataPulse 900ms ease;
    }
    @keyframes chairDataPulse {
      0% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--gold) 36%, transparent); }
      100% { box-shadow: 0 0 0 12px transparent; }
    }
    .chair-submission-table td {
      vertical-align: middle;
    }
    .chair-submission-title {
      display: grid;
      gap: 3px;
      min-width: 220px;
    }
    .chair-submission-title strong {
      color: var(--navy);
      line-height: 1.2;
    }
    .chair-submission-title span {
      color: var(--muted-text);
      font-size: 12px;
    }
    @media (max-width: 1180px) {
      .chair-user-drawer-panel,
      .chair-track-report-drawer-panel,
      .chair-assignment-drawer-panel,
      .chair-add-user-drawer-panel,
      .chair-import-preview-drawer-panel {
        width: 82vw;
      }
      .chair-workspace-layout {
        grid-template-columns: 190px minmax(0, 1fr);
      }
      .chair-action-grid {
        grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
      }
      .chair-review-template-toolbar {
        grid-template-columns: 1fr;
      }
      .chair-review-template-actions {
        justify-self: stretch;
      }
      .chair-review-form-builder-layout {
        grid-template-columns: minmax(0, 0.82fr) minmax(300px, 1fr);
      }
    }
    @media (max-width: 980px) {
      .chair-article-toolbar,
      .chair-track-chair-assign,
      .chair-assignment-grid,
      .chair-assignment-panel-controls,
      .chair-reviewer-add-shell,
      .chair-user-add-shell,
      .chair-user-form-shell,
      .chair-user-role-picker-row,
      .chair-bulk-grid {
        grid-template-columns: 1fr;
      }
      .chair-track-form-grid,
      .chair-role-picker-actions {
        grid-template-columns: 1fr;
      }
      .chair-user-bulk-actions {
        flex-direction: column;
        align-items: stretch;
      }
      .chair-reviewer-settings-form .grid {
        grid-template-columns: 1fr;
      }
      .chair-final-submission-grid {
        grid-template-columns: 1fr;
      }
      .chair-setting-template-upload-footer {
        align-items: stretch;
      }
      .chair-setting-template-upload-footer .chair-final-submission-save-button {
        margin-left: 0;
      }
      .chair-review-template-meta-grid,
      .chair-review-form-builder-layout,
      .chair-review-form-field-card {
        grid-template-columns: 1fr;
      }
      .chair-review-form-field-actions,
      .chair-review-template-actions,
      .chair-review-form-editor-actions,
      .chair-review-form-bottom-actions {
        justify-content: stretch;
      }
      .chair-assignment-summary-shell {
        display: grid;
        grid-template-columns: 1fr;
      }
      .chair-decision-tools-actions {
        display: grid;
        grid-template-columns: 1fr;
      }
      .chair-assignment-summary-actions {
        flex-wrap: wrap;
        justify-content: flex-start;
      }
      .chair-summary-grid {
        grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
      }
      .chair-reviewer-search-row {
        grid-template-columns: 1fr;
      }
      .chair-user-drawer-panel,
      .chair-track-report-drawer-panel,
      .chair-assignment-drawer-panel,
      .chair-add-user-drawer-panel,
      .chair-import-preview-drawer-panel {
        width: 92vw;
      }
    }
    @media (max-width: 860px) {
      .chair-shell-topline {
        flex-wrap: wrap;
      }
      .chair-workspace-favorite-strip {
        max-width: min(236px, calc(100vw - 20px));
      }
      .chair-workspace-favorite-menu {
        width: auto;
      }
      .chair-shell-topbar-actions {
        justify-content: flex-start;
      }
      .chair-event-selection {
        max-width: none;
      }
    }
    @media (max-width: 720px) {
      #portal-chair-shell .workspace-welcome-panel {
        display: inline-flex !important;
        width: fit-content !important;
        max-width: calc(100% + 14px) !important;
        margin: 0 0 12px -14px !important;
        min-height: 72px !important;
        padding: 0 18px !important;
        border-radius: 15px 0 14px 14px !important;
      }
      .chair-shell-head h2 {
        position: static;
        display: block;
        top: auto;
        right: auto;
        font-size: 18px;
        line-height: 1.15;
        text-align: left;
        white-space: normal;
        margin: 10px 0 0;
      }
      .chair-workspace-layout {
        grid-template-columns: 1fr;
      }
      .chair-submenu-shell {
        max-width: 320px;
        justify-self: start;
      }
      .chair-shell-topline {
        gap: 10px;
      }
      .chair-workspace-favorite-strip {
        max-width: min(232px, calc(100vw - 16px));
      }
      .chair-workspace-favorite-menu-panel {
        width: min(232px, calc(100vw - 16px));
        min-width: min(196px, calc(100vw - 16px));
      }
      .chair-workspace-favorites {
        width: 100%;
      }
      .chair-workspace-panel {
        padding-inline: 12px;
      }
      .chair-submenu-shell,
      .chair-empty-panel,
      .chair-function-panel {
        border-radius: 16px;
      }
      /* .chair-workspace-main and .organizer-settings-panel have no explicit
         grid-template-columns, so their single implicit column sizes to
         content (max-content) instead of filling the available width -- on
         mobile that squeezes chair-action-grid (and everything else inside)
         down to a narrow, easy-to-miss column. */
      .chair-workspace-main {
        grid-template-columns: minmax(0, 1fr);
      }
      .chair-empty-panel,
      .chair-function-panel {
        grid-template-columns: minmax(0, 1fr);
      }
      .chair-workspace-submenu {
        grid-template-columns: 1fr;
      }
      .chair-action-grid {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
      }
      .chair-action-grid > .chair-action-chip {
        width: 100%;
        min-width: 0;
      }
      .chair-assignment-summary-actions {
        width: 100%;
        flex-wrap: wrap;
      }
      .chair-user-drawer-panel,
      .chair-assignment-drawer-panel,
      .chair-add-user-drawer-panel,
      .chair-import-preview-drawer-panel {
        width: 100vw;
      }
      .chair-drawer-table-wrap {
        position: relative;
        box-shadow: inset -14px 0 10px -10px rgba(16, 29, 63, 0.16);
      }
      .chair-drawer-table th:first-child {
        position: sticky;
        left: 0;
        z-index: 2;
        background: var(--table-head-bg);
        box-shadow: 2px 0 6px rgba(27, 42, 91, 0.08);
      }
      .chair-drawer-table td:first-child {
        position: sticky;
        left: 0;
        z-index: 1;
        background: var(--surface-bg-strong, #ffffff);
        box-shadow: 2px 0 6px rgba(27, 42, 91, 0.08);
      }
      .chair-submission-table thead {
        display: none;
      }
      .chair-submission-table,
      .chair-submission-table tbody,
      .chair-submission-table tr,
      .chair-submission-table td {
        display: block;
        width: 100%;
      }
      .chair-submission-table tr {
        border: 1px solid var(--table-line);
        border-radius: 16px;
        background: var(--surface-bg-strong);
        padding: 12px;
        margin-bottom: 12px;
      }
      .chair-submission-table td {
        border: 0;
        padding: 7px 0;
      }
      .chair-submission-table td::before {
        content: attr(data-label);
        display: block;
        color: var(--muted-text);
        font-size: 11px;
        font-weight: 700;
        margin-bottom: 3px;
      }
    }
    /* On tablet/desktop/laptop, the main menu is a vertical list, so a
       section's nested submenu children reveal as a flyout to the SIDE on
       hover/focus (like a standard vertical-nav flyout) instead of a
       tap-toggle below the button, which would overlap the content area. */
    @media (min-width: 721px) {
      /* In desktop/tablet layouts the shared portal script mounts the Chair
         topline directly under #portal-chair-shell. Anchor that wrapper to
         the shell's top-left edge so the welcome banner stays flush with the
         parent border even after the DOM is re-parented. */
      #portal-chair-shell {
        padding-top: 0 !important;
      }
      #portal-chair-shell .chair-shell-topline {
        width: calc(100% + 24px);
        margin: 0 0 18px -24px;
        padding-right: 24px;
      }
      #portal-chair-shell .chair-shell-topline > .workspace-welcome-panel {
        margin: 0;
      }
      #portal-chair-shell {
        overflow: visible;
      }
      #portal-chair-shell .chair-workspace-layout,
      #portal-chair-shell .chair-workspace-submenu,
      #portal-chair-shell .chair-submenu-group {
        overflow: visible;
      }
      #portal-chair-shell .chair-submenu-shell {
        position: relative;
        overflow: visible;
        z-index: 30;
      }
      .chair-submenu-group:hover > .chair-submenu-children,
      .chair-submenu-group:focus-within > .chair-submenu-children {
        display: flex;
        flex-direction: column;
        gap: 6px;
        position: absolute;
        top: 0;
        left: 100%;
        /* No gap between the button and the flyout -- a margin here would
           create a dead zone the mouse has to cross without hovering
           anything, which drops :hover and hides the flyout mid-move. */
        margin-left: 0;
        z-index: 60;
        min-width: 220px;
        padding: 8px;
        border-radius: 14px;
        border: 1px solid var(--theme-menu-border);
        background: var(--theme-menu-bg);
        box-shadow: var(--theme-menu-shadow);
        backdrop-filter: blur(14px);
      }
    }
    
    .reviewer-shell-head {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      flex-wrap: wrap;
      gap: 18px;
      margin-bottom: 8px;
    }
    /* Always float the heading top-right (position:absolute) within the
       shared .panel shell, matching Author/Organizer's workspace-label
       technique at every viewport width, so all five workspace headings
       land at the identical on-screen position regardless of role or
       screen size. */
    .reviewer-shell-head h2 {
      position: absolute;
      top: 26px;
      right: 50px;
      z-index: 4;
      margin: 0;
      color: var(--navy);
      font-family: var(--brand-display);
      font-size: var(--nib-ui-heading-2-size, 24px);
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.1;
      text-transform: none;
      white-space: nowrap;
    }
    .reviewer-shell-head .organizer-shell-head-actions {
      margin-left: 0;
      width: min(640px, 100%);
      justify-content: flex-end;
    }
    .reviewer-event-selector {
      width: 100%;
      gap: 8px;
    }
    .reviewer-event-selector span {
      color: var(--navy);
      font-weight: 800;
    }
    .reviewer-workspace-panel {
      display: grid;
      gap: 14px;
      padding: 16px;
    }
    .reviewer-dashboard-strip {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
      gap: 10px;
    }
    .reviewer-dashboard-strip article {
      border: 1px solid var(--surface-border);
      border-radius: 14px;
      background: var(--surface-bg-strong);
      padding: 12px 14px;
      display: grid;
      gap: 4px;
      justify-items: center;
      text-align: center;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.72), 0 12px 24px rgba(16, 29, 63, 0.07);
    }
    .reviewer-dashboard-strip span {
      color: var(--muted-text);
      font-size: 12px;
      font-weight: 800;
      text-transform: uppercase;
    }
    .reviewer-dashboard-strip strong {
      color: var(--navy);
      font-size: 24px;
      line-height: 1;
    }
    .reviewer-assignment-list {
      display: grid;
      gap: 12px;
    }
    .reviewer-review-drawer-panel {
      left: 0;
      right: auto;
      width: min(85vw, calc(100vw - 12px));
      max-width: 100vw;
      transform: translateX(-102%);
      box-shadow: 20px 0 50px rgba(17, 28, 59, 0.18);
    }
    .event-drawer-overlay.open .reviewer-review-drawer-panel {
      transform: translateX(0);
    }
    .reviewer-review-drawer-body {
      align-content: start;
    }
    .reviewer-review-drawer-summary {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
      gap: 10px;
    }
    .reviewer-review-drawer-summary article {
      border: 1px solid color-mix(in srgb, var(--navy) 12%, transparent);
      border-radius: 14px;
      background: rgba(255,255,255,0.76);
      padding: 10px 12px;
      display: grid;
      gap: 4px;
      min-width: 0;
    }
    .reviewer-review-drawer-summary span {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }
    .reviewer-review-drawer-summary strong {
      color: var(--navy);
      font-size: 13px;
      line-height: 1.35;
      overflow-wrap: anywhere;
    }
    .reviewer-review-drawer-content {
      display: grid;
      gap: 14px;
    }
    .reviewer-review-drawer-actions {
      margin-top: -2px;
    }
    .reviewer-workspace-table {
      min-width: 0;
    }
    .reviewer-abstract-cell {
      max-width: 320px;
      line-height: 1.35;
    }
    .reviewer-row-actions {
      display: flex;
      gap: 6px;
      flex-wrap: wrap;
      align-items: center;
    }
    .reviewer-assignment-card {
      border: 1px solid color-mix(in srgb, var(--gold) 28%, transparent);
      border-radius: 18px;
      background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(255,253,247,0.82));
      box-shadow: var(--shadow-soft);
      padding: 14px;
      display: grid;
      gap: 12px;
    }
    .reviewer-assignment-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .reviewer-assignment-title {
      display: grid;
      gap: 4px;
      min-width: 0;
    }
    .reviewer-assignment-title strong {
      color: var(--navy);
      font-size: 17px;
      line-height: 1.25;
    }
    .reviewer-assignment-title span {
      color: var(--muted-text);
      font-size: 12px;
      font-weight: 700;
    }
    .reviewer-assignment-meta,
    .chair-reviewer-load-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 10px;
    }
    .reviewer-assignment-meta article,
    .chair-reviewer-load-grid article {
      border: 1px solid color-mix(in srgb, var(--navy) 10%, transparent);
      border-radius: 12px;
      background: rgba(255,255,255,0.72);
      padding: 10px;
      display: grid;
      gap: 4px;
    }
    .reviewer-assignment-meta span,
    .chair-reviewer-load-grid span {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 800;
      text-transform: uppercase;
    }
    .reviewer-assignment-meta strong,
    .chair-reviewer-load-grid strong {
      color: var(--ink);
      font-size: 13px;
      overflow-wrap: anywhere;
    }
    .reviewer-file-row {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      align-items: center;
    }
    .reviewer-review-form,
    .chair-reviewer-form,
    .chair-reviewer-settings-form {
      display: grid;
      gap: 8px;
    }
    .reviewer-review-form .grid,
    .chair-reviewer-form .grid,
    .chair-reviewer-settings-form .grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px 10px;
    }
    .reviewer-review-form .full,
    .chair-reviewer-form .full,
    .chair-reviewer-settings-form .full {
      grid-column: 1 / -1;
    }
    .reviewer-review-form label {
      gap: 5px;
    }
    .reviewer-review-form input,
    .reviewer-review-form select {
      min-height: 44px;
    }
    .reviewer-review-form textarea {
      min-height: 78px;
      resize: vertical;
    }
    .reviewer-review-form--compact {
      width: 100%;
      max-width: none;
      margin: 0;
      box-sizing: border-box;
      padding: 14px 16px;
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      border-radius: 20px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(255,253,247,0.94)),
        linear-gradient(160deg, rgba(255,255,255,0.08), rgba(255,255,255,0));
      box-shadow: 0 16px 34px rgba(16, 29, 63, 0.08);
    }
    .reviewer-review-form--compact .grid {
      gap: 10px 12px;
      align-items: start;
    }
    .reviewer-review-form--compact label,
    .reviewer-review-form--compact .reviewer-review-custom-field {
      display: grid;
      gap: 4px;
      align-content: start;
      color: var(--navy);
      font-size: 13px;
      font-weight: 800;
      line-height: 1.3;
    }
    .reviewer-review-form--compact input,
    .reviewer-review-form--compact select,
    .reviewer-review-form--compact textarea {
      font-size: 13px;
      line-height: 1.35;
      padding: 9px 12px;
    }
    .reviewer-review-form--compact input,
    .reviewer-review-form--compact select {
      min-height: 38px;
    }
    .reviewer-review-form--compact textarea {
      min-height: 68px;
      resize: vertical;
    }
    .reviewer-review-form--compact .reviewer-review-core-score input {
      text-align: center;
      font-weight: 800;
    }
    .reviewer-review-form--compact .reviewer-review-decision-field {
      margin-top: 2px;
      padding-top: 10px;
      border-top: 1px solid color-mix(in srgb, var(--gold) 30%, transparent);
    }
    .reviewer-review-form--compact .reviewer-review-decision-field select {
      font-weight: 800;
      letter-spacing: 0.01em;
    }
    .reviewer-review-form--compact .reviewer-review-custom-label {
      color: var(--navy);
      font-size: 11px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }
    .reviewer-review-form--compact .reviewer-review-custom-help {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 600;
      line-height: 1.35;
    }
    .reviewer-review-word-guidance {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 600;
      line-height: 1.35;
    }
    .reviewer-review-form--compact .reviewer-review-custom-radio-group {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
      gap: 8px;
    }
    .reviewer-review-form--compact .reviewer-review-custom-option,
    .reviewer-review-form--compact .reviewer-review-custom-checkbox-row {
      display: flex;
      align-items: center;
      gap: 8px;
      min-height: 38px;
      padding: 8px 10px;
      border: 1px solid color-mix(in srgb, var(--navy) 12%, transparent);
      border-radius: 12px;
      background: rgba(255,255,255,0.76);
      font-size: 12px;
      font-weight: 700;
    }
    .reviewer-review-form--compact .reviewer-review-custom-option input,
    .reviewer-review-form--compact .reviewer-review-custom-checkbox-row input {
      min-height: 0;
      width: 15px;
      height: 15px;
      margin: 0;
      padding: 0;
      accent-color: var(--red);
    }
    .reviewer-review-form--compact .reviewer-review-custom-field--checkbox {
      gap: 6px;
    }
    .chair-reviewer-note {
      border: 1px solid color-mix(in srgb, var(--gold) 34%, transparent);
      border-radius: 14px;
      background: color-mix(in srgb, var(--cream) 72%, #ffffff 28%);
      color: var(--muted-text);
      padding: 12px;
      font-weight: 700;
      line-height: 1.45;
    }
    @media (max-width: 900px) {
      .reviewer-assignment-meta,
      .chair-reviewer-load-grid,
      .reviewer-review-drawer-summary,
      .reviewer-review-form .grid,
      .chair-reviewer-form .grid,
      .chair-reviewer-settings-form .grid {
        grid-template-columns: 1fr;
      }
      .reviewer-review-form--compact {
        width: 100%;
        padding: 12px;
      }
      .reviewer-review-drawer-panel {
        width: 92vw;
      }
      .reviewer-review-form--compact .reviewer-review-custom-radio-group {
        grid-template-columns: 1fr;
      }
      .reviewer-shell-head .organizer-shell-head-actions {
        width: 100%;
      }
    }
    @media (max-width: 720px) {
      /* The h2 itself isn't the flex item -- it's nested inside
         .shell-head-title-group, which is the actual child of
         .reviewer-shell-head's flex row (justify-content:flex-end). That
         wrapper is what needs to be forced full-width; sizing the h2
         alone left it (and the group around it) squeezed to content
         width and pushed to the row's end. */
      .reviewer-shell-head .shell-head-title-group {
        width: 100%;
        flex: 1 0 100%;
      }
      .reviewer-shell-head h2 {
        position: static;
        display: block;
        top: auto;
        right: auto;
        width: 100%;
        font-size: 18px;
        line-height: 1.15;
        text-align: left;
        white-space: normal;
        margin: 10px 0 0;
      }
    }
    
    .track-chair-shell-head {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      flex-wrap: wrap;
      gap: 18px;
      margin-bottom: 8px;
    }
    /* Always float the heading top-right (position:absolute) within the
       shared .panel shell, matching Author/Organizer's workspace-label
       technique at every viewport width, so all five workspace headings
       land at the identical on-screen position regardless of role or
       screen size. */
    .track-chair-shell-head h2 {
      position: absolute;
      top: 26px;
      right: 50px;
      z-index: 4;
      margin: 0;
      color: var(--navy);
      font-family: var(--brand-display);
      font-size: var(--nib-ui-heading-2-size, 24px);
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.1;
      text-transform: none;
      white-space: nowrap;
    }
    .track-chair-shell-head .organizer-shell-head-actions {
      margin-left: 0;
      width: min(640px, 100%);
      justify-content: flex-end;
    }
    .track-chair-event-selector {
      width: 100%;
    }
    .track-chair-workspace-panel {
      display: grid;
      gap: 14px;
      padding: 16px;
    }
    .track-chair-dashboard-strip {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
      gap: 10px;
    }
    .track-chair-dashboard-strip article {
      border: 1px solid var(--surface-border);
      border-radius: 14px;
      background: var(--surface-bg-strong);
      padding: 12px 14px;
      display: grid;
      gap: 4px;
      justify-items: center;
      text-align: center;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.72), 0 12px 24px rgba(16, 29, 63, 0.07);
    }
    .track-chair-dashboard-strip span {
      color: var(--muted-text);
      font-size: 12px;
      font-weight: 800;
      text-transform: uppercase;
    }
    .track-chair-dashboard-strip strong {
      color: var(--navy);
      font-size: 24px;
      line-height: 1;
    }
    .track-chair-panel {
      display: grid;
      gap: 12px;
    }
    .track-chair-callout {
      border: 1px solid color-mix(in srgb, var(--gold) 24%, transparent);
      border-radius: 18px;
      background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(255,253,247,0.82));
      box-shadow: var(--shadow-soft);
      padding: 16px;
      display: grid;
      gap: 12px;
    }
    .track-chair-callout h3,
    .track-chair-callout p {
      margin: 0;
    }
    .track-chair-callout-actions {
      display: flex;
      justify-content: center;
      gap: 10px;
      flex-wrap: wrap;
    }
    .track-chair-callout-metrics {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
      gap: 10px;
    }
    .track-chair-callout-metrics article {
      border: 1px solid color-mix(in srgb, var(--navy) 10%, transparent);
      border-radius: 12px;
      background: rgba(255,255,255,0.78);
      padding: 10px;
      display: grid;
      gap: 4px;
      justify-items: center;
      text-align: center;
    }
    .track-chair-callout-metrics span {
      color: var(--muted-text);
      font-size: 11px;
      font-weight: 800;
      text-transform: uppercase;
    }
    .track-chair-callout-metrics strong {
      color: var(--ink);
      font-size: 14px;
      overflow-wrap: anywhere;
    }
    @media (max-width: 900px) {
      .track-chair-shell-head .organizer-shell-head-actions {
        width: 100%;
      }
    }
    @media (max-width: 720px) {
      /* The h2 itself isn't the flex item -- it's nested inside
         .shell-head-title-group, which is the actual child of
         .track-chair-shell-head's flex row (justify-content:flex-end).
         That wrapper is what needs to be forced full-width; sizing the h2
         alone left it (and the group around it) squeezed to content
         width and pushed to the row's end. */
      .track-chair-shell-head .shell-head-title-group {
        width: 100%;
        flex: 1 0 100%;
      }
      .track-chair-shell-head h2 {
        position: static;
        display: block;
        top: auto;
        right: auto;
        width: 100%;
        font-size: 18px;
        line-height: 1.15;
        text-align: left;
        white-space: normal;
        margin: 10px 0 0;
      }
    }
    .nib-select-shell .nib-select-trigger,
    .nib-select-shell .nib-select-search,
    .nib-select-shell .nib-select-option {
      font-family: var(--brand-display) !important;
      letter-spacing: 0 !important;
      text-transform: none !important;
      text-shadow: none !important;
      text-align: left !important;
    }
    .nib-select-shell .nib-select-trigger {
      min-height: var(--nib-ui-select-trigger-height, 48px);
      font-size: var(--nib-ui-control-font-size) !important;
      border: 1px solid #d7dbe6 !important;
      border-radius: 14px !important;
      background: #ffffff !important;
      color: #1b2a5b !important;
      box-shadow: none !important;
      display: flex !important;
      align-items: center !important;
      justify-content: flex-start !important;
    }
    .nib-select-shell .nib-select-label {
      width: 100% !important;
      text-align: left !important;
    }
    .nib-select-shell .nib-select-trigger:hover,
    .nib-select-shell.is-open .nib-select-trigger {
      border-color: #aab4cb !important;
      background: #ffffff !important;
      box-shadow: 0 0 0 2px rgba(27, 42, 91, 0.06) !important;
      transform: none !important;
    }
    .nib-select-shell .nib-select-menu {
      border: 1px solid #d7dbe6 !important;
      background: #ffffff !important;
      box-shadow: 0 18px 32px rgba(16, 29, 63, 0.14) !important;
    }
    .nib-select-shell .nib-select-search {
      border: 1px solid #d7dbe6 !important;
      border-radius: 12px !important;
      background: #ffffff !important;
      color: #16213a !important;
      box-shadow: none !important;
    }
    .nib-select-shell .nib-select-option {
      min-height: var(--nib-ui-select-option-height, 44px);
      font-size: var(--nib-ui-control-font-size) !important;
      border: 1px solid transparent !important;
      border-radius: 12px !important;
      background: #ffffff !important;
      color: #16213a !important;
      box-shadow: none !important;
      font-weight: 600 !important;
      display: flex !important;
      align-items: center !important;
      justify-content: flex-start !important;
    }
    .nib-select-shell .nib-select-option:hover,
    .nib-select-shell .nib-select-option:focus-visible {
      background: #f4f7fc !important;
      border-color: #d7dbe6 !important;
      color: #1b2a5b !important;
    }
    .nib-select-shell .nib-select-option.is-selected {
      background: #edf3ff !important;
      border-color: #b7c7ef !important;
      color: #1b2a5b !important;
      font-weight: 700 !important;
    }
    .nib-select-shell .nib-select-option[hidden] {
      display: none !important;
    }
    .nib-select-shell .nib-select-empty {
      color: #66728f !important;
      font-family: var(--brand-display) !important;
    }
    [hidden] { display: none !important; }



    @media (min-width: 721px) {
      body.portal-authenticated .workspace-nav-drawer-foot {
        display: none !important;
      }
    }

    @media (min-width: 1601px) {
      :root {
        --nib-ui-control-font-size: 16px;
        --nib-ui-control-font-size-sm: 13.5px;
        --nib-ui-control-height-md: 48px;
        --nib-ui-control-height-lg: 56px;
        --nib-ui-control-height-input: 46px;
        --nib-ui-control-x: 20px;
        --nib-ui-select-trigger-height: 50px;
        --nib-ui-heading-1-size: 50px;
        --nib-ui-heading-2-size: 26px;
      }
    }

    @media (max-width: 1280px) {
      :root {
        --frame-height: 88px;
        --nib-ui-control-font-size: 14.5px;
        --nib-ui-control-height-sm: 36px;
        --nib-ui-control-height-md: 44px;
        --nib-ui-control-height-input: 42px;
        --nib-ui-control-x: 16px;
        --nib-ui-select-trigger-height: 46px;
        --nib-ui-select-option-height: 42px;
        --nib-ui-heading-1-size: 40px;
        --nib-ui-heading-2-size: 22px;
      }
      header > nav {
        padding: 14px 18px;
      }
      .container,
      .band-shell {
        padding-inline: 18px;
      }
      .hero-inner {
        padding: 44px 18px 60px;
        gap: 24px;
        grid-template-columns: minmax(0, 1fr) minmax(320px, 400px);
      }
      .metric-strip,
      .clean-card-grid,
      .feature-grid,
      .role-lane-grid,
      .support-grid,
      .application-signal-strip,
      .application-benefit-ribbon,
      .application-value-grid,
      .preview-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      .process-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
      .application-journey-line {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
      .portal-article-filters {
        grid-template-columns: repeat(2, minmax(180px, 1fr));
      }
      .portal-article-filters .actions {
        grid-column: 1 / -1;
        justify-content: flex-end;
      }
      .catalog-toolbar {
        grid-template-columns: minmax(0, 1fr);
      }
      .event-drawer-panel,
      .event-drawer-panel.submission-drawer-panel,
      .event-drawer-panel.revision-drawer-panel,
      .register-drawer-panel,
      .profile-drawer-panel,
      .author-email-box-drawer-panel {
        width: 82vw;
      }
      .event-drawer-head-logo {
        height: 52px;
        max-width: min(210px, 26vw);
      }
    }

    @media (max-width: 1100px) {
      .hero-inner,
      .event-shell,
      .portal-grid,
      .submission-shell,
      .tenant-shell,
      .application-stage {
        grid-template-columns: 1fr;
      }
      .conference-hero-shell {
        grid-template-columns: 1fr;
      }
      .conference-hero-mark {
        justify-self: start;
      }
      .info-grid,
      .event-grid,
      .workspace-preview-grid,
      .conference-meta,
      .track-grid,
      .workspace-role-grid,
      .card-meta {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      .floating-form-card,
      .tenant-sidebar {
        position: static;
        transform: none;
      }
      .portal-event-toolbar,
      .organizer-shell-head,
      .organizer-chair-form,
      .organizer-chair-search-grid,
      .organizer-chair-lookup-grid,
      .organizer-service-catalog-grid,
      .organizer-service-config-grid,
      .organizer-service-cart-shell {
        grid-template-columns: 1fr;
      }
      .organizer-shell-head-actions {
        width: 100%;
        justify-content: flex-start;
      }
      .organizer-header-select,
      .organizer-header-select select {
        width: 100%;
      }
      .portal-control-actions,
      .list-toolbar,
      .user-bar,
      .portal-session-bar,
      .drawer-link-row {
        flex-direction: column;
        align-items: stretch;
      }
      .list-toolbar label.portal-control-event-label,
      .portal-control-event-label {
        flex: 1 1 auto;
        max-width: none;
      }
      .portal-control-event-stack {
        flex: 0 0 auto;
        max-width: none;
      }
      .user-bar-actions {
        width: 100%;
        justify-content: flex-end;
        margin-left: 0;
      }
      .portal-table-controls,
      .portal-page-nav {
        flex-wrap: wrap;
        gap: 10px;
      }
      .event-drawer-panel,
      .event-drawer-panel.submission-drawer-panel,
      .event-drawer-panel.revision-drawer-panel,
      .register-drawer-panel,
      .profile-drawer-panel,
      .author-email-box-drawer-panel {
        width: 88vw;
      }
    }

    @media (max-width: 980px) {
      :root {
        --nib-ui-control-font-size: 14px;
        --nib-ui-control-height-md: 43px;
        --nib-ui-control-height-input: 42px;
        --nib-ui-control-x: 15px;
      }
      .portal-inline-field:not(.portal-inline-field--stacked-center) {
        grid-template-columns: minmax(116px, 148px) minmax(0, 1fr);
        gap: 7px;
      }
      .hero::before {
        right: -24px;
        top: auto;
        bottom: 16px;
        width: min(54vw, 280px);
        transform: none;
        opacity: 0.76;
      }
      .hero::after {
        left: -40px;
        bottom: -70px;
        width: min(32vw, 220px);
        opacity: 0.44;
      }
      .hero-login-only .hero-inner {
        min-height: auto;
        justify-content: center;
        padding-right: 20px;
      }
      .appearance-menu {
        right: auto;
        left: 0;
        min-width: min(220px, calc(100vw - 40px));
        width: min(320px, calc(100vw - 40px));
      }
      .header-role-menu {
        right: auto;
        left: 0;
        min-width: min(180px, calc(100vw - 40px));
        max-width: min(220px, calc(100vw - 40px));
      }
      .grid,
      .nib-ui-showcase-form,
      .detail-grid,
      .conference-meta,
      .track-grid,
      .workspace-role-grid,
      .card-meta,
      .info-grid,
      .event-grid,
      .metric-strip,
      .feature-grid,
      .role-lane-grid,
      .process-grid,
      .support-grid,
      .workspace-preview-grid,
      .application-hero-grid,
      .application-video-grid,
      .application-metric-grid,
      .application-signal-strip,
      .application-playbook-grid,
      .application-benefit-ribbon,
      .application-journey-line,
      .application-value-grid,
      .preview-stat-grid,
      .clean-card-grid {
        grid-template-columns: 1fr;
      }
      .portal-filter-bar,
      .portal-article-filters,
      .catalog-toolbar {
        grid-template-columns: 1fr;
      }
      .portal-article-filters .actions {
        grid-column: auto;
        justify-content: flex-start;
      }
      .filter-chip-row {
        justify-content: flex-start;
      }
      .application-feature-toolbar,
      .application-feature-card__head,
      .application-feature-modal__head {
        flex-direction: column;
        align-items: stretch;
      }
      .application-feature-trigger,
      .application-feature-modal__close {
        width: 100%;
        justify-content: center;
      }
      .application-story-grid {
        padding: 22px 20px 26px;
      }
      .application-signal-item + .application-signal-item,
      .application-benefit-item + .application-benefit-item {
        border-left: 0;
        border-top: 1px solid rgba(27, 42, 91, 0.1);
      }
      .application-role-entry {
        grid-template-columns: 1fr;
      }
      .application-role-entry .application-feature-trigger,
      .application-hero-button {
        width: 100%;
      }
      .application-journey-line::before {
        display: none;
      }
      .application-journey-stage {
        padding-top: 0;
      }
      .application-feature-modal {
        padding: 12px;
      }
      .application-feature-modal__dialog {
        width: min(100%, calc(100vw - 12px));
        max-height: calc(100vh - 24px);
        padding: 18px;
      }
      .organizer-workspace-tabs {
        width: 100%;
      }
      .organizer-workspace-tab-button {
        flex: 1 1 200px;
      }
      .organizer-inline-actions {
        justify-content: stretch;
      }
      .submission-inline-status--title {
        grid-template-columns: 1fr;
        align-items: stretch;
      }
      .portal-table-wrap {
        border: 0;
        background: transparent;
        box-shadow: none;
        backdrop-filter: none;
      }
      .portal-article-table {
        min-width: 0;
        border-collapse: separate;
        border-spacing: 0 12px;
      }
      .portal-article-table thead {
        display: none;
      }
      .portal-article-table tbody {
        display: block;
        padding: 6px 10px 10px;
      }
      .portal-article-row {
        display: block;
        border-radius: 18px;
        overflow: visible;
        box-shadow: var(--shadow-soft);
        margin-bottom: 12px;
      }
      .portal-article-row td {
        display: block;
        width: 100%;
        padding: 12px 16px;
        border-bottom: 1px solid rgba(27, 42, 91, 0.12);
      }
      .portal-article-row td:last-child {
        border-bottom: 0;
      }
      .portal-article-row td:first-child {
        border-top-left-radius: 18px;
        border-top-right-radius: 18px;
      }
      .portal-article-row td:last-child {
        border-bottom-left-radius: 18px;
        border-bottom-right-radius: 18px;
      }
      .portal-article-row td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 6px;
        color: var(--muted-text);
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.08em;
        text-transform: uppercase;
      }
      .portal-article-row--thread-child .portal-thread-child-blank-cell {
        display: none;
      }
      .portal-settings-cell,
      .portal-settings-header {
        width: auto;
        padding: 14px 16px 8px;
      }
      .portal-settings-cell::before {
        display: none;
      }
      .portal-settings-stack {
        flex-direction: row;
        justify-content: flex-start;
        position: relative;
        z-index: 4;
        isolation: isolate;
      }
      .portal-article-table[data-table-key="author-my-submissions"] .portal-row-actions {
        top: calc(100% + 8px);
        left: 0;
        right: auto;
        min-width: 168px;
        width: min(184px, calc(100vw - 32px));
        max-width: min(184px, calc(100vw - 32px));
      }
      .portal-article-table[data-table-key="author-my-submissions"] .portal-row-actions::before {
        top: -8px;
        bottom: auto;
        left: 0;
        width: 100%;
        height: 8px;
      }
      .portal-inline-timeline-toggle {
        margin-top: 0;
      }
      .portal-status-cell,
      .portal-decision-cell,
      .portal-files-cell {
        width: auto;
        min-width: 0;
      }
      .portal-file-links,
      .portal-file-empty {
        justify-content: flex-start;
      }
      .nibveda-thread-identity {
        padding-left: calc(var(--thread-depth) * 10px);
      }
      .nibveda-thread-toggle-slot {
        flex-basis: 24px;
        width: 24px;
        min-height: 24px;
      }
      .nibveda-thread-toggle {
        width: 24px;
        height: 24px;
        border-radius: 9px;
        font-size: 14px;
      }
      .portal-article-timeline-row {
        display: block;
        margin: -6px 0 14px;
      }
      .portal-article-timeline-row td {
        display: block;
        padding: 0 10px 10px;
        border-bottom: 0;
        background: transparent;
      }
      .portal-article-timeline-shell {
        border-top: 1px solid var(--timeline-shell-border);
        border-radius: 16px;
      }
      .event-drawer-panel,
      .event-drawer-panel.submission-drawer-panel,
      .register-drawer-panel,
      .profile-drawer-panel,
      .author-email-box-drawer-panel {
        width: 92vw;
      }
      .author-email-box-body-shell.reader-open .author-email-box-layout {
        max-width: 100%;
      }
      .author-email-box-reader-drawer {
        inset: 0;
        width: 100%;
        border-left-width: 0;
        border-radius: 0;
      }
      .event-drawer-head {
        padding: 18px 18px 0;
      }
      .event-drawer-head--compact {
        padding: 10px 18px 2px;
      }
      .event-drawer-brand {
        padding-inline: 18px;
      }
      .event-drawer-body {
        padding: 16px 18px 22px;
      }
    }

    @media (max-width: 720px) {
      /* .workspace-event-select-head lays the label and the "Open Selected
         ... Page" link out in a single non-wrapping row (the link has
         flex: 0 0 auto so it never shrinks) -- on a narrow screen the pill
         is wider than the remaining space and overflows past the panel's
         right edge instead of moving to its own line. */
      .workspace-event-select-head {
        flex-wrap: wrap;
      }
      :root {
        --frame-height: auto;
        --nib-ui-control-font-size: 13.5px;
        --nib-ui-control-font-size-sm: 12.5px;
        --nib-ui-control-height-sm: 34px;
        --nib-ui-control-height-md: 42px;
        --nib-ui-control-height-input: 42px;
        --nib-ui-control-x: 14px;
        --nib-ui-select-trigger-height: 44px;
        --nib-ui-select-option-height: 40px;
      }
      header > nav {
        align-items: center;
        flex-wrap: wrap;
        padding: 6px 14px 4px;
        gap: 8px;
      }
      .brand {
        min-width: 0;
        flex: 1 1 100%;
        width: 100%;
        text-align: center;
      }
      header .brand-emblem {
        width: 34px;
        height: 34px;
        padding: 2px;
      }
      header .brand-copy {
        gap: 0;
        width: 100%;
        justify-items: center;
        text-align: center;
      }
      header .brand-wordmark {
        height: 46px;
        max-width: min(100%, 238px);
        justify-self: center;
      }
      header .brand-title {
        font-size: 13px;
        letter-spacing: 0.13em;
        margin-left: 0;
        text-align: center;
      }
      footer {
        align-items: stretch;
      }
      .author-entry-grid {
        grid-template-columns: 1fr;
      }
      .portal-inline-field:not(.portal-inline-field--stacked-center) {
        grid-template-columns: minmax(104px, 132px) minmax(0, 1fr);
        gap: 6px;
      }
      .portal-inline-field > .portal-inline-label-text {
        font-size: 13px;
      }
      /* Inside a full-width content drawer there is no need to reserve a
         fixed label column -- stack the label above its field so the
         textbox/dropdown/search box fills the drawer's full width. */
      .event-drawer-panel .portal-inline-field:not(.portal-inline-field--stacked-center) {
        grid-template-columns: 1fr;
      }
      .event-drawer-panel .portal-inline-field:not(.portal-inline-field--stacked-center) > input:not([type="checkbox"]):not([type="radio"]),
      .event-drawer-panel .portal-inline-field:not(.portal-inline-field--stacked-center) > select,
      .event-drawer-panel .portal-inline-field:not(.portal-inline-field--stacked-center) > textarea,
      .event-drawer-panel .portal-inline-field:not(.portal-inline-field--stacked-center) > .nib-select-shell {
        grid-column: 1;
      }
      /* The workspace heading now floats at a fixed right-aligned spot
         (matching Chair/Reviewer/Track-Chair) instead of stacking below
         the welcome banner. Cap and truncate the banner so a long name
         or role label can't grow underneath/behind the heading text. */
      .workspace-welcome-panel {
        max-width: min(60vw, 220px);
      }
      .workspace-welcome {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }
      /* Chair moves its workspace heading back below the welcome banner at
         this width, so it should not inherit the shared capped/inset banner
         treatment used by the other role shells. Keep it anchored flush to
         the panel's top-left edge instead. */
      #portal-chair-shell .workspace-welcome-panel {
        display: inline-flex !important;
        width: fit-content !important;
        max-width: calc(100% + 14px) !important;
        margin: -14px 0 12px -14px !important;
        min-height: 72px !important;
        padding: 0 18px !important;
        border-radius: 15px 0 14px 14px !important;
      }
      #portal-chair-shell .workspace-welcome {
        overflow: visible !important;
        text-overflow: clip !important;
      }
      .header-right-cluster {
        width: auto;
        gap: 8px;
        justify-items: end;
        margin-left: auto;
      }
      .nav-links {
        gap: 6px;
        justify-content: flex-end;
      }
      .page-header-context {
        width: 100%;
      }
      .page-header-context-inner,
      .page-header-action-group {
        width: 100%;
        justify-content: flex-end;
      }
      .nav-links > .header-nav-link {
        display: none;
      }
      .public-mobile-header-menu {
        display: inline-flex;
      }
      .mobile-header-summary {
        width: 42px;
        height: 42px;
        min-height: 42px;
      }
      .header-manual-pill {
        display: none;
      }
      /* Editorial Programs moves into the account dropdown at mobile width,
         swapping places with the standalone pill (kept for desktop). */
      .mobile-only-menu-item {
        display: flex;
      }
      .header-action-button.header-nav-link {
        display: none;
      }
      .manual-flow {
        flex-direction: column;
        align-items: stretch;
        gap: 6px;
      }
      .manual-flow-step {
        width: 100%;
      }
      .manual-flow-arrow {
        align-self: center;
        transform: rotate(90deg);
      }
      .portal-authenticated .page-header-context,
      .portal-authenticated .page-header-context-inner,
      .portal-authenticated .page-header-action-group {
        width: 100%;
        justify-content: flex-end;
      }
      .portal-authenticated .header-right-cluster {
        width: 100%;
        margin-left: 0;
      }
      .portal-authenticated .page-header-action-group {
        gap: 8px;
      }
      .appearance-switcher {
        width: auto;
      }
      .appearance-summary {
        width: auto;
        justify-content: space-between;
        min-width: 196px;
      }
      .appearance-menu {
        right: 0;
        left: auto;
        width: min(340px, calc(100vw - 32px));
      }
      .hero {
        min-height: auto;
      }
      .hero::before {
        bottom: -16px;
        right: -46px;
        width: 240px;
        opacity: 0.58;
      }
      .hero::after {
        left: -54px;
        bottom: -86px;
        width: 180px;
        opacity: 0.34;
      }
      h1 {
        font-size: 36px;
      }
      .event-banner h1 {
        font-size: 30px;
      }
      .portal-authenticated .page-header-action-group {
        flex-wrap: nowrap;
        gap: 6px;
      }
      .portal-authenticated .header-action-button {
        padding: 8px 10px;
        white-space: nowrap;
      }
      .portal-authenticated .header-role-summary {
        padding: 8px 10px;
        gap: 6px;
      }
      .portal-authenticated .header-role-menu {
        right: 0;
        left: auto;
        max-width: min(220px, calc(100vw - 24px));
      }
      .header-role-switcher-label {
        display: none;
      }
      .portal-event-toolbar .actions,
      .portal-table-controls,
      .portal-page-nav {
        justify-content: flex-start;
      }
      .portal-page-nav .small {
        min-width: 0;
        text-align: left;
      }
      .portal-dialog-summary,
      .portal-feedback-grid {
        grid-template-columns: 1fr;
      }
      .portal-dialog-panel {
        width: min(560px, calc(100vw - 16px));
        max-height: calc(100vh - 16px);
      }
      .portal-dialog-head {
        padding: 18px 18px 0;
      }
      .portal-dialog-body {
        padding: 16px 18px 18px;
        max-height: calc(100vh - 108px);
      }
      .portal-dialog-actions {
        justify-content: stretch;
      }
      .portal-dialog-actions button {
        width: 100%;
      }
      .portal-article-timeline-head {
        align-items: flex-start;
      }
      .portal-timeline-track {
        gap: 6px;
      }
      .portal-timeline-main-track {
        gap: 6px;
        flex-wrap: wrap;
      }
      .portal-timeline-step::after {
        width: 6px;
      }
      .portal-timeline-branch {
        padding-left: 8px;
      }
      .portal-timeline-branch::before {
        left: 0;
        width: 6px;
      }
      .portal-timeline-branch-lanes {
        padding-left: 8px;
        gap: 6px;
      }
      .portal-timeline-branch-lane {
        gap: 6px;
      }
      .portal-timeline-step-label {
        font-size: 10.5px;
        min-width: 0;
        max-width: 96px;
      }
      .portal-article-table tbody {
        padding: 4px 6px 8px;
      }
      .portal-article-row td {
        padding: 11px 14px;
      }
      .portal-file-links,
      .portal-file-empty {
        display: grid;
        gap: 6px;
      }
      .portal-file-chip,
      .portal-file-empty .nib-ui-button,
      .portal-profile-button {
        width: 100%;
        max-width: 100%;
      }
      .portal-row-actions {
        top: calc(100% + 8px);
        left: 0;
        max-width: min(168px, calc(100vw - 32px));
      }
      .footer-minimal {
        flex-direction: column;
        align-items: flex-start;
      }
      .footer-office-block {
        max-width: none;
        text-align: left;
      }
      .event-drawer-panel,
      .event-drawer-panel.submission-drawer-panel,
      .register-drawer-panel,
      .profile-drawer-panel,
      .author-email-box-drawer-panel {
        width: 100vw;
        border-radius: 0;
      }
      .event-drawer-head--compact {
        grid-template-columns: minmax(0, 1fr) auto auto;
        gap: 10px;
      }
      .event-drawer-head-logo {
        height: 42px;
        max-width: 132px;
      }
      /* .panel's desktop 24px padding, stacked with the workspace layout's
         own nested padding (chair-workspace-panel, organizer-settings-panel,
         etc.), was eating well over a third of the mobile viewport width
         before any actual content started. Trim it so workspace content
         (tables, action buttons) has real room to breathe. */
      .panel {
        padding: 14px;
      }
      .organizer-settings-panel {
        padding: 12px;
      }
      /* Chair/Reviewer/Track-Chair/Organizer workspace nav: the submenu
         shell/toggle/drawer are activated at mobile widths for the
         default and flat themes, instead of always rendering the submenu
         inline in the content. */
      html:not([data-navigation-theme]) [data-workspace-nav-bar],
      html[data-navigation-theme="nibveda-flat-navigation"] [data-workspace-nav-bar],
      html[data-navigation-theme="nibveda-flat-full-content"] [data-workspace-nav-bar] {
        display: flex;
        position: fixed;
        top: 50%;
        right: 0;
        left: auto;
        transform: translateY(-50%);
        /* Kept above every drawer/overlay (submenu drawer is 96, the event
           drawer overlay is 80) so the toggle stays reachable no matter
           what's open -- it's draggable, so the user can move it out of
           the way if it overlaps a drawer's own Close button. */
        z-index: 110;
        width: auto;
        margin: 0;
        padding: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
        /* Draggable in mobile view -- prevent touch-drag from being
           captured as a page-scroll gesture instead of reaching our
           pointermove handler. */
        touch-action: none;
      }
      /* A tall rounded pill docked flush to the right edge, vertically
         centered -- sits well clear of the site header's own hamburger
         (which stays untouched at the top) and the drawer's close button
         (which sits inside the drawer head, near the top). */
      html:not([data-navigation-theme]) [data-workspace-nav-toggle],
      html[data-navigation-theme="nibveda-flat-navigation"] [data-workspace-nav-toggle],
      html[data-navigation-theme="nibveda-flat-full-content"] [data-workspace-nav-toggle] {
        display: flex !important;
        flex-direction: column !important;
        align-items: center;
        justify-content: center;
        gap: 0 !important;
        width: 38px !important;
        height: 84px !important;
        min-height: 84px !important;
        padding: 0 !important;
        border-radius: 999px 0 0 999px !important;
        border: 2px solid rgba(255, 255, 255, 0.55) !important;
        border-right-width: 0 !important;
        color: #ffffff !important;
        background: linear-gradient(135deg, var(--gold, #c9a227), var(--red, #9b1b2e)) !important;
        box-shadow: -6px 4px 18px rgba(16, 29, 63, 0.3) !important;
      }
      html:not([data-navigation-theme]) .workspace-nav-toggle-text,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-toggle-text,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-toggle-text {
        display: none !important;
      }
      html:not([data-navigation-theme]) .chair-submenu-shell,
      html:not([data-navigation-theme]) .organizer-submenu-shell,
      html[data-navigation-theme="nibveda-flat-navigation"] .chair-submenu-shell,
      html[data-navigation-theme="nibveda-flat-navigation"] .organizer-submenu-shell,
      html[data-navigation-theme="nibveda-flat-full-content"] .chair-submenu-shell,
      html[data-navigation-theme="nibveda-flat-full-content"] .organizer-submenu-shell {
        position: fixed;
        top: 10px;
        left: 10px;
        bottom: 10px;
        height: calc(100dvh - 20px);
        width: min(84vw, 320px);
        max-width: 100vw;
        margin: 0;
        z-index: 96;
        border: 1px solid var(--theme-menu-border);
        border-radius: 22px;
        background: linear-gradient(180deg, var(--theme-menu-bg), color-mix(in srgb, var(--theme-menu-bg) 72%, var(--surface-bg) 28%)) !important;
        transform: translateX(-120%);
        transition: transform 240ms ease;
        overflow-x: hidden;
        overflow-y: auto;
        padding: 14px 14px 20px;
        box-shadow: 0 24px 60px rgba(17, 28, 59, 0.28);
        /* Card-style panel (like the Syntra reference): head, scrollable
           menu list, and a profile foot pinned to the bottom. A flex
           column with margin-top:auto on the foot keeps it flush to the
           bottom of the drawer even when the menu list is short, instead
           of it trailing right after the last menu item. */
        display: flex;
        flex-direction: column;
      }
      html:not([data-navigation-theme]) .workspace-nav-open .chair-submenu-shell,
      html:not([data-navigation-theme]) .workspace-nav-open .organizer-submenu-shell,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-open .chair-submenu-shell,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-open .organizer-submenu-shell,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-open .chair-submenu-shell,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-open .organizer-submenu-shell {
        transform: translateX(0);
      }
      html:not([data-navigation-theme]) .workspace-nav-drawer-head,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-head,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-head {
        display: flex !important;
        /* Pin the title/close-button row to the top of the drawer's own
           scroll area so it stays visible while the tab list scrolls
           beneath it, instead of scrolling away with the rest of the
           content when there are enough tabs to need scrolling. The
           negative margin/matching padding extends it back out to the
           drawer's own edges (cancelling the drawer's 14px padding) so
           it reads as a flush sticky bar, not an inset one. */
        position: sticky;
        top: -14px;
        z-index: 2;
        flex-shrink: 0;
        margin: -14px -14px 8px;
        justify-content: flex-start;
        padding: 8px 40px 6px 14px;
        background: linear-gradient(180deg, var(--theme-menu-bg), color-mix(in srgb, var(--theme-menu-bg) 76%, var(--surface-bg) 24%));
      }
      html:not([data-navigation-theme]) [data-workspace-nav-close],
      html[data-navigation-theme="nibveda-flat-navigation"] [data-workspace-nav-close],
      html[data-navigation-theme="nibveda-flat-full-content"] [data-workspace-nav-close] {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        min-width: 0 !important;
        width: 28px !important;
        height: 28px !important;
        min-height: 28px !important;
        padding: 0 !important;
        border-radius: 999px !important;
        /* The head's brand+title block is centered as a whole row, so the
           close button is pulled out of flow into the corner instead of
           sharing space-between with it. */
        position: absolute !important;
        right: 8px;
        top: 50%;
        transform: translateY(-50%);
      }
      html:not([data-navigation-theme]) .chair-workspace-submenu,
      html:not([data-navigation-theme]) .organizer-workspace-tabs,
      html[data-navigation-theme="nibveda-flat-navigation"] .chair-workspace-submenu,
      html[data-navigation-theme="nibveda-flat-navigation"] .organizer-workspace-tabs,
      html[data-navigation-theme="nibveda-flat-full-content"] .chair-workspace-submenu,
      html[data-navigation-theme="nibveda-flat-full-content"] .organizer-workspace-tabs {
        display: grid !important;
        grid-template-columns: 1fr;
        gap: 6px;
        width: 100%;
        flex-shrink: 0;
        /* Grid's default align-content stretches auto-sized rows to fill
           the drawer's full height whenever there's leftover space (i.e.
           whenever a role has fewer menu items) -- pinning it to "start"
           keeps the list compact and top-packed regardless of item count. */
        align-content: start !important;
      }
      html:not([data-navigation-theme]) .chair-submenu-button,
      html:not([data-navigation-theme]) .organizer-workspace-tab-button,
      html[data-navigation-theme="nibveda-flat-navigation"] .chair-submenu-button,
      html[data-navigation-theme="nibveda-flat-navigation"] .organizer-workspace-tab-button,
      html[data-navigation-theme="nibveda-flat-full-content"] .chair-submenu-button,
      html[data-navigation-theme="nibveda-flat-full-content"] .organizer-workspace-tab-button {
        display: flex;
        align-items: center;
        gap: 10px;
        padding-right: 18px;
        width: 100%;
        justify-content: flex-start;
        text-align: left;
        white-space: normal;
        min-height: 44px;
      }
      /* Trailing chevron on every top-level drawer menu item, matching
         the reference nav-list style (icon + label ... chevron). */
      html:not([data-navigation-theme]) .chair-submenu-button .workspace-nav-item-indicator,
      html:not([data-navigation-theme]) .organizer-workspace-tab-button .workspace-nav-item-indicator,
      html[data-navigation-theme="nibveda-flat-navigation"] .chair-submenu-button .workspace-nav-item-indicator,
      html[data-navigation-theme="nibveda-flat-navigation"] .organizer-workspace-tab-button .workspace-nav-item-indicator,
      html[data-navigation-theme="nibveda-flat-full-content"] .chair-submenu-button .workspace-nav-item-indicator,
      html[data-navigation-theme="nibveda-flat-full-content"] .organizer-workspace-tab-button .workspace-nav-item-indicator {
        display: block;
        width: 7px;
        height: 7px;
        margin-left: auto;
        align-self: center;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(-45deg);
        opacity: 0.4;
        flex-shrink: 0;
      }
      /* Profile foot: pinned to the drawer's bottom edge (margin-top:auto
         fills any leftover space when the menu list is short) and kept
         flush/visible via the same sticky-plus-cancelled-padding trick
         used for the head, so it stays put while the list scrolls. */
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot {
        display: block;
        flex-shrink: 0;
        margin-top: auto;
        margin-inline: -14px;
        margin-bottom: -20px;
        padding: 12px 14px calc(16px + env(safe-area-inset-bottom, 0px));
        position: sticky;
        bottom: -20px;
        background: linear-gradient(0deg, var(--theme-menu-bg), color-mix(in srgb, var(--theme-menu-bg) 72%, var(--surface-bg) 28%));
        border-top: 1px solid rgba(27, 42, 91, 0.12);
      }
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot:empty,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot:empty,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot:empty {
        display: none;
      }
      /* Inside the drawer foot the account menu becomes a full-width
         profile row (avatar + name + role) instead of the header's
         avatar-only bubble, and its dropdown/role-switcher panels open
         upward since the foot sits at the bottom of the screen. */
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot .header-account-menu,
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot .header-role-switcher,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot .header-account-menu,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot .header-role-switcher,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot .header-account-menu,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot .header-role-switcher {
        display: flex;
        width: 100%;
        align-items: stretch;
      }
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot .header-role-switcher,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot .header-role-switcher,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot .header-role-switcher {
        margin-bottom: 8px;
      }
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot .header-role-summary,
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot .header-account-summary,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot .header-role-summary,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot .header-account-summary,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot .header-role-summary,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot .header-account-summary {
        width: 100%;
        gap: 10px;
        justify-content: flex-start;
        border-radius: 14px;
      }
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot .header-account-summary-text,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot .header-account-summary-text,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot .header-account-summary-text {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        min-width: 0;
        overflow: hidden;
      }
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot .header-account-summary-name,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot .header-account-summary-name,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot .header-account-summary-name {
        font-size: 13.5px;
        font-weight: 800;
        color: var(--navy);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%;
      }
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot .header-account-summary-role,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot .header-account-summary-role,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot .header-account-summary-role {
        font-size: 11.5px;
        font-weight: 600;
        color: var(--muted-text);
      }
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot .header-role-menu,
      html:not([data-navigation-theme]) .workspace-nav-drawer-foot .header-account-menu-panel,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot .header-role-menu,
      html[data-navigation-theme="nibveda-flat-navigation"] .workspace-nav-drawer-foot .header-account-menu-panel,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot .header-role-menu,
      html[data-navigation-theme="nibveda-flat-full-content"] .workspace-nav-drawer-foot .header-account-menu-panel {
        top: auto;
        bottom: calc(100% + 8px);
        right: 0;
        left: 0;
        width: auto;
        max-width: none;
      }
      /* Every role's drawer now carries its own Profile Switcher + account
         menu in the drawer foot (Author included), so the header's copy
         is a pure duplicate on mobile -- hide it there entirely. */
      html:not([data-navigation-theme]) body.portal-authenticated #page-header-context .header-role-switcher,
      html:not([data-navigation-theme]) body.portal-authenticated #page-header-context .header-account-menu,
      html[data-navigation-theme="nibveda-flat-navigation"] body.portal-authenticated #page-header-context .header-role-switcher,
      html[data-navigation-theme="nibveda-flat-navigation"] body.portal-authenticated #page-header-context .header-account-menu,
      html[data-navigation-theme="nibveda-flat-full-content"] body.portal-authenticated #page-header-context .header-role-switcher,
      html[data-navigation-theme="nibveda-flat-full-content"] body.portal-authenticated #page-header-context .header-account-menu {
        display: none !important;
      }
      /* Chair's second-level actions (Role Access Setting, Reviewer Setting,
         etc.) now live as an expandable list nested under their parent
         section inside the drawer, instead of a separate button row in the
         content area -- tapping the parent section toggles this open. */
      .chair-submenu-children {
        display: none;
        flex-direction: column;
        gap: 6px;
        width: 100%;
        padding: 4px 0 4px 14px;
      }
      .chair-submenu-group-open > .chair-submenu-children {
        display: flex;
      }
      /* Chair/Reviewer/Track-Chair/Organizer tables: the same card-collapse
         pattern used for the author's My Articles table (.portal-article-table
         above), reused here since almost every .chair-drawer-table row
         already sets data-label on each cell. */
      .chair-drawer-table-wrap {
        overflow: visible;
        border: 0;
        background: transparent;
        box-shadow: none;
      }
      .chair-drawer-table {
        min-width: 0;
        border-collapse: separate;
        border-spacing: 0 10px;
      }
      .chair-drawer-table thead {
        display: none;
      }
      .chair-drawer-table tbody {
        display: block;
      }
      .chair-drawer-table tr {
        display: block;
        border: 1px solid var(--table-shell-border, rgba(27, 42, 91, 0.12));
        border-radius: 16px;
        box-shadow: var(--shadow-soft, 0 10px 22px rgba(27, 42, 91, 0.06));
        background: #ffffff;
        overflow: hidden;
        margin-bottom: 10px;
      }
      .chair-drawer-table td {
        display: block;
        width: 100%;
        padding: 10px 14px;
        border-bottom: 1px solid rgba(27, 42, 91, 0.08);
      }
      .chair-drawer-table td:last-child {
        border-bottom: 0;
      }
      .chair-drawer-table td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 4px;
        color: var(--muted-text);
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
      }
      .chair-drawer-table td:not([data-label])::before {
        display: none;
      }
    }

    @media (max-width: 560px) {
      :root {
        --nib-ui-control-font-size: 13px;
        --nib-ui-control-height-md: 40px;
        --nib-ui-control-height-input: 40px;
        --nib-ui-control-x: 12px;
      }
      nav,
      .container,
      .band-shell {
        padding-inline: 14px;
      }
      .hero-inner {
        padding: 34px 14px 42px;
      }
      h1 {
        font-size: 32px;
      }
      h2 {
        font-size: 22px;
      }
      .portal-dialog-overlay {
        padding: 8px;
      }
      .portal-dialog-panel {
        width: calc(100vw - 16px);
        max-height: calc(100vh - 8px);
        border-radius: 22px;
      }
      .portal-dialog-head {
        padding: 16px 16px 0;
      }
      .portal-dialog-body {
        padding: 14px 16px 16px;
        gap: 14px;
        max-height: calc(100vh - 96px);
      }
      .portal-dialog-warning,
      .portal-dialog-summary-item,
      .portal-upload-confirm-preview,
      .portal-registration-confirm-preview {
        padding: 12px 14px;
      }
      .login-card,
      .login-form-panel,
      .panel,
      .clean-card,
      .workspace-card,
      .event-card,
      .stat-card {
        border-radius: 18px;
      }
      .event-drawer-head,
      .event-drawer-head--compact,
      .event-drawer-brand,
      .event-drawer-body {
        padding-inline: 14px;
      }
      .appearance-menu,
      .header-role-menu,
      .mobile-header-panel {
        width: min(260px, calc(100vw - 20px));
      }
    }
