/* Shared theme. Light variants preserve existing surfaces and states exactly. */
:root, .report-paper {
  color-scheme: light;
  --app-bg: #eef1f4;
  --app-panel: #ffffff;
  --app-panel-soft: #f8fafc;
  --app-border: #c8d0d8;
  --app-text: #1f2933;
  --app-muted: #5b6976;
  --app-accent: #2f5f9e;
  --app-accent-soft: #dbe7f5;
  --app-topbar: #f8fafc;
  --app-sidebar: #f7f9fb;
  --app-field-bg: #ffffff;
  --app-action-bg: #2f5f9e;
  --app-on-action: #ffffff;
  --app-focus-ring: #2f5f9e;
  --app-success-bg: #e8f5e9;
  --app-success-text: #276749;
  --app-success-border: #bbf7d0;
  --app-success-strong: #166534;
  --app-warning-bg: #fff7e6;
  --app-warning-text: #9a3412;
  --app-warning-border: #fde68a;
  --app-warning-strong: #92400e;
  --app-error-bg: #fef2f2;
  --app-error-text: #991b1b;
  --app-error-border: #fecaca;
  --app-error-strong: #b91c1c;
  --app-info-bg: #eff6ff;
  --app-info-text: #1d4ed8;
  --app-info-border: #bfdbfe;
  --app-aux-bg: #f5f3ff;
  --app-aux-text: #6d28d9;
  --app-aux-border: #ddd6fe;
  --app-neutral-strong: #64748b;
  --app-login-bg: #f5f7fb;
  --app-login-text: #1f2937;
  --app-login-border: #dbe2ea;
  --app-login-muted: #6b7280;
  --app-login-field-text: #000000;
  --app-login-action: #0f62fe;
  --app-login-secondary: #64748b;
  --app-login-error-bg: #fdecec;
  --app-login-error-text: #dc3545;
  --app-login-shadow: 0 4px 16px rgba(17,24,39,.05);
  --app-shadow: 0 1px 2px rgba(15,23,42,.03);
  --app-surface-neutral-1: #f8fafc;
  --app-border-neutral-1: #dde4eb;
  --app-backdrop-1: rgba(15, 23, 42, .45);
  --app-shadow-tint-1: rgba(15, 23, 42, .20);
  --app-surface-info-1: #f7faff;
  --app-surface-error-1: #fee2e2;
  --app-text-error-1: #991b1b;
  --app-surface-neutral-2: #edf2f7;
  --app-strong-success-1: #2f855a;
  --app-strong-warning-1: #d97706;
  --app-strong-error-1: #dc2626;
  --app-surface-neutral-3: #e2e8f0;
  --app-surface-info-2: #eff6ff;
  --app-shadow-tint-2: rgba(47, 95, 158, .10);
  --app-surface-success-1: #f0fdf4;
  --app-text-error-2: #9a3412;
  --app-border-warning-1: #f6c56f;
  --app-surface-error-2: #fef2f2;
  --app-border-error-1: #fecaca;
  --app-border-success-1: #bbf7d0;
  --app-surface-error-3: #fff1f2;
  --app-border-error-2: #fecdd3;
  --app-border-error-3: #dc2626;
  --app-surface-success-2: #dcfce7;
  --app-text-success-1: #166534;
  --app-surface-info-3: #dbeafe;
  --app-text-info-1: #1d4ed8;
  --app-surface-info-4: #e8eef7;
  --app-text-neutral-1: #315178;
  --app-surface-neutral-4: #eef2f7;
  --app-text-neutral-2: #475569;
  --app-surface-warning-1: #fef3c7;
  --app-text-error-3: #92400e;
  --app-surface-neutral-5: #f1f5f9;
  --app-text-muted-1: #64748b;
  --app-border-neutral-2: #dce3ea;
  --app-surface-success-3: #ecfdf3;
  --app-surface-warning-2: #fffbeb;
  --app-border-neutral-3: #e3e8ef;
  --app-border-neutral-4: #cbd5e1;
  --app-text-neutral-3: #334155;
  --app-border-info-1: rgba(15, 23, 42, .18);
  --app-surface-info-5: #dcecff;
  --app-surface-success-4: #dff4e6;
  --app-surface-warning-3: #ffe8c2;
  --app-surface-warning-4: #fff0b8;
  --app-surface-error-4: #ffdada;
  --app-surface-neutral-6: #e8edf3;
  --app-border-neutral-5: #b8c5d3;
  --app-shadow-tint-3: rgba(15, 23, 42, .07);
  --app-border-neutral-6: #94a3b8;
  --app-surface-neutral-7: #e8eef6;
  --app-text-neutral-4: #172033;
  --app-text-muted-2: #526174;
  --app-text-info-2: #1e4f91;
  --app-border-info-2: #9bc3f8;
  --app-text-success-2: #17633a;
  --app-border-neutral-7: #93d5a9;
  --app-text-warning-1: #8a4a00;
  --app-border-warning-2: #f0b86a;
  --app-text-warning-2: #765600;
  --app-border-warning-3: #e8ca55;
  --app-text-error-4: #9a2424;
  --app-border-error-4: #ee9999;
  --app-text-neutral-5: #4b596a;
  --app-border-neutral-8: #b8c2cf;
  --app-text-muted-3: #536276;
  --app-border-neutral-9: rgba(71, 85, 105, .22);
  --app-border-info-3: #3b82f6;
  --app-border-success-2: #22a45a;
  --app-border-warning-4: #ed8a18;
  --app-border-warning-5: #d6a600;
  --app-border-error-5: #df3f3f;
  --app-border-neutral-10: #7b8796;
  --app-surface-info-6: #cfe4ff;
  --app-surface-success-5: #cfedd8;
  --app-surface-warning-5: #ffdc9f;
  --app-surface-warning-6: #ffe88c;
  --app-surface-error-5: #ffc9c9;
  --app-surface-neutral-8: #dce2e9;
  --app-shadow-tint-4: #1f5f9f;
  --app-border-info-4: #7db3f5;
  --app-border-neutral-11: #79c594;
  --app-border-warning-6: #eaa650;
  --app-border-warning-7: #d8b52f;
  --app-text-error-5: #962121;
  --app-border-error-6: #e98181;
  --app-border-neutral-12: #aeb8c4;
  --app-text-muted-4: #5f6d7e;
  --app-surface-warning-7: #fff6cd;
  --app-surface-success-6: #e7f7ec;
  --app-surface-error-6: #ffe7e7;
  --app-text-neutral-6: #24344a;
  --app-surface-neutral-9: #e6f5ec;
  --app-text-success-3: #14532d;
  --app-surface-warning-8: #fff4d8;
  --app-text-warning-3: #7c4a03;
  --app-surface-error-7: #fde8e8;
  --app-text-error-6: #8b1a1a;
  --app-border-info-5: rgba(45,90,160,.25);
  --app-border-neutral-13: #e2e8f0;
  --app-shadow-tint-5: rgba(15,23,42,.18);
  --app-border-info-6: #2563eb;
  --app-strong-info-1: #0f172a;
  --app-text-muted-5: #f8fafc;
  --app-text-muted-6: #e2e8f0;
  --app-border-neutral-14: #dbe3ef;
  --app-surface-info-7: #eef4ff;
  --app-text-info-3: #174ea6;
  --app-shadow-tint-6: rgba(15, 23, 42, .12);
  --app-surface-info-8: #f8fbff;
  --app-border-info-7: #cbdcf8;
  --app-shadow-tint-7: rgba(15, 23, 42, .06);
  --app-text-info-4: #0f172a;
  --app-surface-info-9: #e0f2fe;
  --app-text-info-5: #075985;
  --app-border-neutral-15: #24324a;
  --app-border-neutral-16: #334155;
  --app-strong-neutral-1: #172033;
  --app-border-neutral-17: #64748b;
  --app-strong-neutral-2: #334155;
  --app-text-info-6: #dbeafe;
  --app-border-neutral-18: rgba(148,163,184,.22);
  --app-border-info-8: #bfdbfe;
  --app-surface-warning-9: #fffaf0;
  --app-surface-error-8: #fff7f7;
  --app-backdrop-2: rgba(15,23,42,.48);
  --app-shadow-tint-8: rgba(15,23,42,.35);
  --app-border-neutral-19: #d8e0e8;
  --app-surface-neutral-10: #fbfcfd;
  --app-surface-info-10: #f4f7fb;
  --app-border-neutral-20: #d6e0ec;
  --app-border-neutral-21: #edf1f5;
  --app-surface-info-11: #f5f8fc;
  --app-text-muted-7: #8a96a3;
  --app-surface-neutral-11: #fafafa;
  --app-border-neutral-22: #e0e6ec;
  --app-surface-neutral-12: #fafbfd;
  --app-surface-neutral-13: rgba(238,241,244,0);
  --app-border-warning-8: #f59e0b;
  --app-border-error-7: #ef4444;
  --app-border-success-3: #a7f3d0;
  --app-surface-success-7: #ecfdf5;
  --app-text-success-4: #047857;
  --app-shadow-tint-9: rgba(15,23,42,.16);
  --app-text-error-7: #b91c1c;
  --app-surface-info-12: #f5f3ff;
  --app-text-info-7: #6d28d9;
  --app-border-info-9: #ddd6fe;
  --app-surface-warning-10: #fff7ed;
  --app-text-error-8: #c2410c;
  --app-border-warning-9: #fed7aa;
  --app-surface-error-9: rgba(254,242,242,.42);
  --app-shadow-tint-10: #8b5cf6;
  --app-shadow-tint-11: #ef4444;
  --app-backdrop-3: rgba(15,23,42,.42);
  --app-border-warning-10: #fde68a;
  --app-text-warning-4: #a16207;
  --app-border-error-8: #f1a7a7;
  --app-text-error-9: #b42318;
  --app-border-warning-11: #ead9b7;
  --app-surface-warning-11: #fff7e8;
  --app-text-warning-5: #8a5a12;
  --app-border-error-9: #f3b5b5;
  --app-surface-error-10: #fff1f1;
  --app-text-error-10: #8a1f1f;
  --app-surface-neutral-14: #cbd5e1;
  --app-surface-neutral-15: #94a3b8;
  --app-shadow-tint-12: rgba(15, 23, 42, 0.26);
  --app-border-info-10: #bcd1eb;
  --app-surface-info-13: #eef4fb;
  --app-border-error-10: #ffe4e6;
  --app-text-error-11: #9f1239;
  --app-surface-success-8: #e8f7ee;
  --app-text-success-5: #17653a;
  --app-surface-warning-12: #fff4d6;
  --app-text-warning-6: #7a5200;
  --app-surface-error-11: #fdeaea;
  --app-text-error-12: #9b1c1c;
  --app-surface-info-14: #f3f7fb;
  --app-border-neutral-23: #dde7f0;
  --app-border-info-11: #c6d8ef;
  --app-border-neutral-24: #ddd;
  --app-surface-info-15: #e9f2ff;
  --app-text-info-8: #162c48;
  --app-border-neutral-25: #a6b8ce;
  --app-text-muted-8: #68758a;
  --app-border-neutral-26: #dbe2ea;
  --app-surface-neutral-16: #f6f8fb;
  --app-surface-info-16: #eef6ff;
  --app-border-warning-12: #fcd34d;
  --app-surface-neutral-17: rgba(255, 255, 255, .96);
  --app-backdrop-4: rgba(15, 23, 42, 0.46);
  --app-border-neutral-27: rgba(148, 163, 184, 0.35);
  --app-border-neutral-28: rgba(148, 163, 184, 0.28);
  --app-border-neutral-29: rgba(148, 163, 184, 0.24);
  --app-surface-neutral-18: rgba(148, 163, 184, 0.10);
  --app-border-info-12: rgba(59, 130, 246, 0.28);
  --app-strong-info-2: rgba(59, 130, 246, 0.045);
  --app-border-neutral-30: rgba(148, 163, 184, 0.18);
  --app-surface-neutral-19: rgba(255, 255, 255, 0.55);
  --app-border-warning-13: rgba(217, 119, 6, 0.32);
  --app-strong-warning-2: rgba(217, 119, 6, 0.055);
  --app-border-warning-14: rgba(217, 119, 6, 0.35);
  --app-focus-tint-1: rgba(217, 119, 6, 0.55);
  --app-focus-tint-2: rgba(185, 28, 28, 0.65);
  --app-border-warning-15: rgba(217, 119, 6, 0.75);
  --app-shadow-tint-13: rgba(217, 119, 6, 0.12);
  --app-border-error-11: rgba(185, 28, 28, 0.82);
  --app-shadow-tint-14: rgba(185, 28, 28, 0.14);
  --app-text-error-13: #7c2d12;
  --app-border-error-12: #c2410c;
  --app-surface-info-17: #e8f1ff;
  --app-text-info-9: #1c4d8f;
  --app-surface-success-9: #e8f7ef;
  --app-text-success-6: #17623b;
  --app-surface-warning-13: #fff4d7;
  --app-text-warning-7: #805b00;
  --app-surface-error-12: #ffe8e8;
  --app-text-error-14: #912727;
  --app-surface-neutral-20: #eef0f3;
  --app-text-muted-9: #5d6672;
  --app-surface-warning-14: #fff8df;
  --app-border-warning-16: #ead386;
  --app-text-warning-8: #664e00;
  --app-border-neutral-31: #e3e7ec;
  --app-border-neutral-32: #d9dee5;
  --app-border-info-13: #1f5f9e;
  --app-shadow-tint-15: rgba(31,95,158,.12);
  --app-surface-neutral-21: #f3f5f7;
  --app-text-warning-9: #a46b00;
  --app-text-success-7: #177149;
  --app-strong-neutral-3: #343a40;
  --app-shadow-tint-16: rgba(0,0,0,.28);
  --app-text-info-10: rgba(25,115,185,.12);
  --app-border-info-14: #1973b9;
  --app-text-warning-10: rgba(255,170,0,.14);
  --app-border-warning-17: #ff9d00;
  --app-text-success-8: rgba(31,140,75,.13);
  --app-border-success-4: #1f8c4b;
  --app-text-muted-10: rgba(110,110,110,.18);
  --app-border-neutral-33: #686868;
  --app-text-neutral-7: #202a35;
  --app-strong-info-3: #1f5f9e;
  --app-surface-neutral-22: #f7f9fb;
  --app-border-neutral-34: #dce1e6;
  --app-text-info-11: #195a94;
  --app-border-neutral-35: #dfe4ea;
  --app-border-neutral-36: #e5e8ec;
  --app-border-neutral-37: #eef0f2;
  --app-shadow-tint-17: rgba(0,0,0,.35);
  --app-backdrop-5: rgba(20,27,35,.55);
  --app-border-neutral-38: #e1e5ea;
  --app-text-muted-11: #657180;
  --app-text-muted-12: #58677c;
  --app-border-neutral-39: #cad2df;
  --app-shadow-tint-18: #1f2a4412;
  --app-border-info-15: #203c67;
  --app-text-muted-13: #56657b;
  --app-surface-neutral-23: #f5f7fa;
  --app-border-neutral-40: #e2e7ef;
  --app-surface-info-18: #eaf0f8;
  --app-border-info-16: #31598d;
  --app-border-neutral-41: #d8dee8;
  --app-text-info-12: #1558a6;
  --app-text-info-13: #0b3f80;
  --app-text-muted-14: #9aa5b5;
  --app-surface-neutral-24: #f8f9fb;
  --app-border-neutral-42: #b8c2d1;
  --app-text-muted-15: #5b687b;
  --app-border-neutral-43: #cbd3df;
  --app-text-muted-16: #667085;
  --app-border-neutral-44: #d9e0ea;
  --app-backdrop-6: #0c1729a6;
  --app-shadow-tint-19: #0c172933;
  --app-border-neutral-45: #d6deea;
  --app-text-neutral-8: #46566e;
  --app-text-info-14: #173c70;
  --app-border-neutral-46: #dce3ed;
  --app-text-muted-17: #53637a;
  --app-text-success-9: #087443;
  --app-text-warning-11: #8a5a00;
  --app-surface-neutral-25: #f1f4f8;
  --app-text-muted-18: #68778d;
  --app-surface-neutral-26: #eaf7ef;
  --app-border-neutral-47: #b7e1c5;
  --app-text-success-10: #135c32;
  --app-border-info-17: #dbeafe;
  --app-border-info-18: #c7d2fe;
  --app-border-neutral-48: #cfd8e6;
  --app-shadow-tint-20: rgba(15,23,42,.08);
  --app-border-neutral-49: #d5dfec;
  --app-strong-info-4: #265fae;
  --app-shadow-tint-21: rgba(38,95,174,.22);
  --app-border-neutral-50: #cbd8e9;
  --app-text-info-15: #214a80;
  --app-text-info-16: #245da8;
  --app-text-info-17: #12203a;
  --app-surface-info-19: #e7f0fb;
  --app-text-info-18: #123f75;
  --app-text-neutral-9: #315374;
  --app-surface-info-20: #eef7ff;
  --app-border-info-19: #cbe2ff;
  --app-border-neutral-51: #e0e8f2;
  --app-text-neutral-10: #1e293b;
  --app-surface-info-21: #f7fbff;
  --app-surface-info-22: #eaf3ff;
  --app-text-info-19: #1d4f8f;
  --app-border-info-20: #d6e2f1;
  --app-text-neutral-11: #29415f;
  --app-surface-neutral-27: rgba(255,255,255,.88);
  --app-border-info-21: #dde7f4;
  --app-shadow-tint-22: rgba(15,23,42,.28);
  --app-strong-info-5: #245da8;
  --app-border-info-22: #245da8;
  --app-border-info-23: #dbe6f4;
  --app-border-neutral-52: #b8c9df;
  --app-backdrop-7: rgba(15,23,42,.52);
  --app-shadow-tint-23: rgba(15,23,42,.34);
  --app-border-neutral-53: #d9e2ef;
  --app-border-neutral-54: #d7e0ea;
  --app-border-error-13: rgba(220,53,69,.35);
  --app-strong-error-2: #b42318;
  --app-border-error-14: #b42318;
}
@media screen {
  html[data-theme="dark"] {
    color-scheme: dark;
    --app-bg: #0f141c;
    --app-panel: #18222e;
    --app-panel-soft: #202d3b;
    --app-border: #364557;
    --app-text: #eff4fa;
    --app-muted: #b0bed0;
    --app-accent: #9bc9ff;
    --app-accent-soft: #203650;
    --app-topbar: #141c26;
    --app-sidebar: #131c26;
    --app-field-bg: #1b2735;
    --app-action-bg: #285f9b;
    --app-on-action: #ffffff;
    --app-focus-ring: #9bc9ff;
    --app-success-bg: #14382f;
    --app-success-text: #9de5c2;
    --app-success-border: #32644f;
    --app-success-strong: #21704c;
    --app-warning-bg: #3b2d1b;
    --app-warning-text: #ffd599;
    --app-warning-border: #735c34;
    --app-warning-strong: #80601c;
    --app-error-bg: #44242b;
    --app-error-text: #ffadb6;
    --app-error-border: #7e424e;
    --app-error-strong: #8f3544;
    --app-info-bg: #203650;
    --app-info-text: #9bc9ff;
    --app-info-border: #385575;
    --app-aux-bg: #302741;
    --app-aux-text: #d8c6ff;
    --app-aux-border: #665483;
    --app-neutral-strong: #364557;
    --app-login-bg: #0f141c;
    --app-login-text: #eff4fa;
    --app-login-border: #364557;
    --app-login-muted: #b0bed0;
    --app-login-field-text: #eff4fa;
    --app-login-action: #285f9b;
    --app-login-secondary: #364557;
    --app-login-error-bg: #44242b;
    --app-login-error-text: #ffadb6;
    --app-login-shadow: 0 4px 16px rgba(0,0,0,.25);
    --app-shadow: 0 1px 2px rgba(0,0,0,.2);
    --app-surface-neutral-1: var(--app-panel-soft);
    --app-border-neutral-1: var(--app-border);
    --app-backdrop-1: rgba(3,7,12,.72);
    --app-shadow-tint-1: rgba(0,0,0,.3);
    --app-surface-info-1: var(--app-info-bg);
    --app-surface-error-1: var(--app-error-bg);
    --app-text-error-1: var(--app-error-text);
    --app-surface-neutral-2: var(--app-panel-soft);
    --app-strong-success-1: var(--app-success-strong);
    --app-strong-warning-1: var(--app-warning-strong);
    --app-strong-error-1: var(--app-error-strong);
    --app-surface-neutral-3: var(--app-panel-soft);
    --app-surface-info-2: var(--app-info-bg);
    --app-shadow-tint-2: rgba(0,0,0,.3);
    --app-surface-success-1: var(--app-success-bg);
    --app-text-error-2: var(--app-error-text);
    --app-border-warning-1: var(--app-warning-border);
    --app-surface-error-2: var(--app-error-bg);
    --app-border-error-1: var(--app-error-border);
    --app-border-success-1: var(--app-success-border);
    --app-surface-error-3: var(--app-error-bg);
    --app-border-error-2: var(--app-error-border);
    --app-border-error-3: var(--app-error-border);
    --app-surface-success-2: var(--app-success-bg);
    --app-text-success-1: var(--app-success-text);
    --app-surface-info-3: var(--app-info-bg);
    --app-text-info-1: var(--app-info-text);
    --app-surface-info-4: var(--app-info-bg);
    --app-text-neutral-1: var(--app-text);
    --app-surface-neutral-4: var(--app-panel-soft);
    --app-text-neutral-2: var(--app-text);
    --app-surface-warning-1: var(--app-warning-bg);
    --app-text-error-3: var(--app-error-text);
    --app-surface-neutral-5: var(--app-panel-soft);
    --app-text-muted-1: var(--app-muted);
    --app-border-neutral-2: var(--app-border);
    --app-surface-success-3: var(--app-success-bg);
    --app-surface-warning-2: var(--app-warning-bg);
    --app-border-neutral-3: var(--app-border);
    --app-border-neutral-4: var(--app-border);
    --app-text-neutral-3: var(--app-text);
    --app-border-info-1: var(--app-info-border);
    --app-surface-info-5: var(--app-info-bg);
    --app-surface-success-4: var(--app-success-bg);
    --app-surface-warning-3: var(--app-warning-bg);
    --app-surface-warning-4: var(--app-warning-bg);
    --app-surface-error-4: var(--app-error-bg);
    --app-surface-neutral-6: var(--app-panel-soft);
    --app-border-neutral-5: var(--app-border);
    --app-shadow-tint-3: rgba(0,0,0,.3);
    --app-border-neutral-6: var(--app-border);
    --app-surface-neutral-7: var(--app-panel-soft);
    --app-text-neutral-4: var(--app-text);
    --app-text-muted-2: var(--app-muted);
    --app-text-info-2: var(--app-info-text);
    --app-border-info-2: var(--app-info-border);
    --app-text-success-2: var(--app-success-text);
    --app-border-neutral-7: var(--app-border);
    --app-text-warning-1: var(--app-warning-text);
    --app-border-warning-2: var(--app-warning-border);
    --app-text-warning-2: var(--app-warning-text);
    --app-border-warning-3: var(--app-warning-border);
    --app-text-error-4: var(--app-error-text);
    --app-border-error-4: var(--app-error-border);
    --app-text-neutral-5: var(--app-text);
    --app-border-neutral-8: var(--app-border);
    --app-text-muted-3: var(--app-muted);
    --app-border-neutral-9: var(--app-border);
    --app-border-info-3: var(--app-info-border);
    --app-border-success-2: var(--app-success-border);
    --app-border-warning-4: var(--app-warning-border);
    --app-border-warning-5: var(--app-warning-border);
    --app-border-error-5: var(--app-error-border);
    --app-border-neutral-10: var(--app-border);
    --app-surface-info-6: var(--app-info-bg);
    --app-surface-success-5: var(--app-success-bg);
    --app-surface-warning-5: var(--app-warning-bg);
    --app-surface-warning-6: var(--app-warning-bg);
    --app-surface-error-5: var(--app-error-bg);
    --app-surface-neutral-8: var(--app-panel-soft);
    --app-shadow-tint-4: rgba(0,0,0,.3);
    --app-border-info-4: var(--app-info-border);
    --app-border-neutral-11: var(--app-border);
    --app-border-warning-6: var(--app-warning-border);
    --app-border-warning-7: var(--app-warning-border);
    --app-text-error-5: var(--app-error-text);
    --app-border-error-6: var(--app-error-border);
    --app-border-neutral-12: var(--app-border);
    --app-text-muted-4: var(--app-muted);
    --app-surface-warning-7: var(--app-warning-bg);
    --app-surface-success-6: var(--app-success-bg);
    --app-surface-error-6: var(--app-error-bg);
    --app-text-neutral-6: var(--app-text);
    --app-surface-neutral-9: var(--app-panel-soft);
    --app-text-success-3: var(--app-success-text);
    --app-surface-warning-8: var(--app-warning-bg);
    --app-text-warning-3: var(--app-warning-text);
    --app-surface-error-7: var(--app-error-bg);
    --app-text-error-6: var(--app-error-text);
    --app-border-info-5: var(--app-info-border);
    --app-border-neutral-13: var(--app-border);
    --app-shadow-tint-5: rgba(0,0,0,.3);
    --app-border-info-6: var(--app-info-border);
    --app-strong-info-1: var(--app-panel-soft);
    --app-text-muted-5: var(--app-muted);
    --app-text-muted-6: var(--app-muted);
    --app-border-neutral-14: var(--app-border);
    --app-surface-info-7: var(--app-info-bg);
    --app-text-info-3: var(--app-info-text);
    --app-shadow-tint-6: rgba(0,0,0,.3);
    --app-surface-info-8: var(--app-info-bg);
    --app-border-info-7: var(--app-info-border);
    --app-shadow-tint-7: rgba(0,0,0,.3);
    --app-text-info-4: var(--app-info-text);
    --app-surface-info-9: var(--app-info-bg);
    --app-text-info-5: var(--app-info-text);
    --app-border-neutral-15: var(--app-border);
    --app-border-neutral-16: var(--app-border);
    --app-strong-neutral-1: var(--app-neutral-strong);
    --app-border-neutral-17: var(--app-border);
    --app-strong-neutral-2: var(--app-neutral-strong);
    --app-text-info-6: var(--app-info-text);
    --app-border-neutral-18: var(--app-border);
    --app-border-info-8: var(--app-info-border);
    --app-surface-warning-9: var(--app-warning-bg);
    --app-surface-error-8: var(--app-error-bg);
    --app-backdrop-2: rgba(3,7,12,.72);
    --app-shadow-tint-8: rgba(0,0,0,.3);
    --app-border-neutral-19: var(--app-border);
    --app-surface-neutral-10: var(--app-panel-soft);
    --app-surface-info-10: var(--app-info-bg);
    --app-border-neutral-20: var(--app-border);
    --app-border-neutral-21: var(--app-border);
    --app-surface-info-11: var(--app-info-bg);
    --app-text-muted-7: var(--app-muted);
    --app-surface-neutral-11: var(--app-panel-soft);
    --app-border-neutral-22: var(--app-border);
    --app-surface-neutral-12: var(--app-panel-soft);
    --app-surface-neutral-13: var(--app-panel-soft);
    --app-border-warning-8: var(--app-warning-border);
    --app-border-error-7: var(--app-error-border);
    --app-border-success-3: var(--app-success-border);
    --app-surface-success-7: var(--app-success-bg);
    --app-text-success-4: var(--app-success-text);
    --app-shadow-tint-9: rgba(0,0,0,.3);
    --app-text-error-7: var(--app-error-text);
    --app-surface-info-12: var(--app-info-bg);
    --app-text-info-7: var(--app-info-text);
    --app-border-info-9: var(--app-info-border);
    --app-surface-warning-10: var(--app-warning-bg);
    --app-text-error-8: var(--app-error-text);
    --app-border-warning-9: var(--app-warning-border);
    --app-surface-error-9: var(--app-error-bg);
    --app-shadow-tint-10: rgba(0,0,0,.3);
    --app-shadow-tint-11: rgba(0,0,0,.3);
    --app-backdrop-3: rgba(3,7,12,.72);
    --app-border-warning-10: var(--app-warning-border);
    --app-text-warning-4: var(--app-warning-text);
    --app-border-error-8: var(--app-error-border);
    --app-text-error-9: var(--app-error-text);
    --app-border-warning-11: var(--app-warning-border);
    --app-surface-warning-11: var(--app-warning-bg);
    --app-text-warning-5: var(--app-warning-text);
    --app-border-error-9: var(--app-error-border);
    --app-surface-error-10: var(--app-error-bg);
    --app-text-error-10: var(--app-error-text);
    --app-surface-neutral-14: var(--app-panel-soft);
    --app-surface-neutral-15: var(--app-panel-soft);
    --app-shadow-tint-12: rgba(0,0,0,.3);
    --app-border-info-10: var(--app-info-border);
    --app-surface-info-13: var(--app-info-bg);
    --app-border-error-10: var(--app-error-border);
    --app-text-error-11: var(--app-error-text);
    --app-surface-success-8: var(--app-success-bg);
    --app-text-success-5: var(--app-success-text);
    --app-surface-warning-12: var(--app-warning-bg);
    --app-text-warning-6: var(--app-warning-text);
    --app-surface-error-11: var(--app-error-bg);
    --app-text-error-12: var(--app-error-text);
    --app-surface-info-14: var(--app-info-bg);
    --app-border-neutral-23: var(--app-border);
    --app-border-info-11: var(--app-info-border);
    --app-border-neutral-24: var(--app-border);
    --app-surface-info-15: var(--app-info-bg);
    --app-text-info-8: var(--app-info-text);
    --app-border-neutral-25: var(--app-border);
    --app-text-muted-8: var(--app-muted);
    --app-border-neutral-26: var(--app-border);
    --app-surface-neutral-16: var(--app-panel-soft);
    --app-surface-info-16: var(--app-info-bg);
    --app-border-warning-12: var(--app-warning-border);
    --app-surface-neutral-17: var(--app-panel-soft);
    --app-backdrop-4: rgba(3,7,12,.72);
    --app-border-neutral-27: var(--app-border);
    --app-border-neutral-28: var(--app-border);
    --app-border-neutral-29: var(--app-border);
    --app-surface-neutral-18: var(--app-panel-soft);
    --app-border-info-12: var(--app-info-border);
    --app-strong-info-2: var(--app-action-bg);
    --app-border-neutral-30: var(--app-border);
    --app-surface-neutral-19: var(--app-panel-soft);
    --app-border-warning-13: var(--app-warning-border);
    --app-strong-warning-2: var(--app-warning-strong);
    --app-border-warning-14: var(--app-warning-border);
    --app-focus-tint-1: var(--app-focus-ring);
    --app-focus-tint-2: var(--app-focus-ring);
    --app-border-warning-15: var(--app-warning-border);
    --app-shadow-tint-13: rgba(0,0,0,.3);
    --app-border-error-11: var(--app-error-border);
    --app-shadow-tint-14: rgba(0,0,0,.3);
    --app-text-error-13: var(--app-error-text);
    --app-border-error-12: var(--app-error-border);
    --app-surface-info-17: var(--app-info-bg);
    --app-text-info-9: var(--app-info-text);
    --app-surface-success-9: var(--app-success-bg);
    --app-text-success-6: var(--app-success-text);
    --app-surface-warning-13: var(--app-warning-bg);
    --app-text-warning-7: var(--app-warning-text);
    --app-surface-error-12: var(--app-error-bg);
    --app-text-error-14: var(--app-error-text);
    --app-surface-neutral-20: var(--app-panel-soft);
    --app-text-muted-9: var(--app-muted);
    --app-surface-warning-14: var(--app-warning-bg);
    --app-border-warning-16: var(--app-warning-border);
    --app-text-warning-8: var(--app-warning-text);
    --app-border-neutral-31: var(--app-border);
    --app-border-neutral-32: var(--app-border);
    --app-border-info-13: var(--app-info-border);
    --app-shadow-tint-15: rgba(0,0,0,.3);
    --app-surface-neutral-21: var(--app-panel-soft);
    --app-text-warning-9: var(--app-warning-text);
    --app-text-success-7: var(--app-success-text);
    --app-strong-neutral-3: var(--app-neutral-strong);
    --app-shadow-tint-16: rgba(0,0,0,.3);
    --app-text-info-10: var(--app-info-text);
    --app-border-info-14: var(--app-info-border);
    --app-text-warning-10: var(--app-warning-text);
    --app-border-warning-17: var(--app-warning-border);
    --app-text-success-8: var(--app-success-text);
    --app-border-success-4: var(--app-success-border);
    --app-text-muted-10: var(--app-muted);
    --app-border-neutral-33: var(--app-border);
    --app-text-neutral-7: var(--app-text);
    --app-strong-info-3: var(--app-action-bg);
    --app-surface-neutral-22: var(--app-panel-soft);
    --app-border-neutral-34: var(--app-border);
    --app-text-info-11: var(--app-info-text);
    --app-border-neutral-35: var(--app-border);
    --app-border-neutral-36: var(--app-border);
    --app-border-neutral-37: var(--app-border);
    --app-shadow-tint-17: rgba(0,0,0,.3);
    --app-backdrop-5: rgba(3,7,12,.72);
    --app-border-neutral-38: var(--app-border);
    --app-text-muted-11: var(--app-muted);
    --app-text-muted-12: var(--app-muted);
    --app-border-neutral-39: var(--app-border);
    --app-shadow-tint-18: rgba(0,0,0,.3);
    --app-border-info-15: var(--app-info-border);
    --app-text-muted-13: var(--app-muted);
    --app-surface-neutral-23: var(--app-panel-soft);
    --app-border-neutral-40: var(--app-border);
    --app-surface-info-18: var(--app-info-bg);
    --app-border-info-16: var(--app-info-border);
    --app-border-neutral-41: var(--app-border);
    --app-text-info-12: var(--app-info-text);
    --app-text-info-13: var(--app-info-text);
    --app-text-muted-14: var(--app-muted);
    --app-surface-neutral-24: var(--app-panel-soft);
    --app-border-neutral-42: var(--app-border);
    --app-text-muted-15: var(--app-muted);
    --app-border-neutral-43: var(--app-border);
    --app-text-muted-16: var(--app-muted);
    --app-border-neutral-44: var(--app-border);
    --app-backdrop-6: rgba(3,7,12,.72);
    --app-shadow-tint-19: rgba(0,0,0,.3);
    --app-border-neutral-45: var(--app-border);
    --app-text-neutral-8: var(--app-text);
    --app-text-info-14: var(--app-info-text);
    --app-border-neutral-46: var(--app-border);
    --app-text-muted-17: var(--app-muted);
    --app-text-success-9: var(--app-success-text);
    --app-text-warning-11: var(--app-warning-text);
    --app-surface-neutral-25: var(--app-panel-soft);
    --app-text-muted-18: var(--app-muted);
    --app-surface-neutral-26: var(--app-panel-soft);
    --app-border-neutral-47: var(--app-border);
    --app-text-success-10: var(--app-success-text);
    --app-border-info-17: var(--app-info-border);
    --app-border-info-18: var(--app-info-border);
    --app-border-neutral-48: var(--app-border);
    --app-shadow-tint-20: rgba(0,0,0,.3);
    --app-border-neutral-49: var(--app-border);
    --app-strong-info-4: var(--app-action-bg);
    --app-shadow-tint-21: rgba(0,0,0,.3);
    --app-border-neutral-50: var(--app-border);
    --app-text-info-15: var(--app-info-text);
    --app-text-info-16: var(--app-info-text);
    --app-text-info-17: var(--app-info-text);
    --app-surface-info-19: var(--app-info-bg);
    --app-text-info-18: var(--app-info-text);
    --app-text-neutral-9: var(--app-text);
    --app-surface-info-20: var(--app-info-bg);
    --app-border-info-19: var(--app-info-border);
    --app-border-neutral-51: var(--app-border);
    --app-text-neutral-10: var(--app-text);
    --app-surface-info-21: var(--app-info-bg);
    --app-surface-info-22: var(--app-info-bg);
    --app-text-info-19: var(--app-info-text);
    --app-border-info-20: var(--app-info-border);
    --app-text-neutral-11: var(--app-text);
    --app-surface-neutral-27: var(--app-panel-soft);
    --app-border-info-21: var(--app-info-border);
    --app-shadow-tint-22: rgba(0,0,0,.3);
    --app-strong-info-5: var(--app-action-bg);
    --app-border-info-22: var(--app-info-border);
    --app-border-info-23: var(--app-info-border);
    --app-border-neutral-52: var(--app-border);
    --app-backdrop-7: rgba(3,7,12,.72);
    --app-shadow-tint-23: rgba(0,0,0,.3);
    --app-border-neutral-53: var(--app-border);
    --app-border-neutral-54: var(--app-border);
    --app-border-error-13: var(--app-error-border);
    --app-strong-error-2: var(--app-error-strong);
    --app-border-error-14: var(--app-error-border);
  }
  html[data-theme="dark"] :focus-visible { outline: 2px solid var(--app-focus-ring); outline-offset: 2px; }
}
.app-theme-control { display: flex; flex-direction: column; gap: 6px; }
.app-theme-select { width: 140px; min-width: 0; max-width: 100%; }
.app-topbar-right { flex-wrap: wrap; justify-content: flex-end; min-width: 0; }
.app-btn-primary { background: var(--app-action-bg); border-color: var(--app-action-bg); color: var(--app-on-action); }
iframe[title="Náhled dokladu"], .mail-html-frame { color-scheme: light; }
@media (max-width: 980px) { .app-topbar-right { justify-content: flex-start; width: 100%; } }
