:root {
    color-scheme: light;
    --px-bg: #eef3f8;
    --px-surface: #ffffff;
    --px-surface-2: #dce6f0;
    --px-text: #132238;
    --px-muted: #53657a;
    --px-border: #8da2b8;
    --px-primary: #123f73;
    --px-primary-strong: #082b54;
    --px-accent: #d9a62e;
    --px-link: #075da8;
    --px-shadow: rgba(8, 31, 58, .24);
    --px-input: #ffffff;
}

html, body { background: var(--px-bg); color: var(--px-text); }
body, .planox, .tabs, .tabs-content, .tabs-panel { background-color: var(--px-bg) !important; color: var(--px-text); }
.header, .topbar {
    background: linear-gradient(135deg, var(--px-primary-strong), var(--px-primary)) !important;
    border-bottom: 3px solid var(--px-accent);
    color: #fff;
}
.header .headline, .heading { color: #fff; letter-spacing: .025em; }
a { color: var(--px-link); }
label, legend, h1, h2, h3, h4, h5, h6, p, dt, dd { color: inherit; }
fieldset, .competition, .competition .item, .qb, .qb li, .potentialsList {
    background: var(--px-surface) !important;
    color: var(--px-text);
    border-color: var(--px-border) !important;
    box-shadow: 0 .3rem 1rem var(--px-shadow);
}
input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]),
select, textarea {
    background-color: var(--px-input) !important;
    color: var(--px-text) !important;
    border-color: var(--px-border) !important;
}
input::placeholder, textarea::placeholder { color: var(--px-muted); opacity: 1; }
.button, button.ui-button, input.button { background-color: var(--px-primary); color: #fff; }
.button:hover, .button:focus, button.ui-button:hover, button.ui-button:focus { background-color: var(--px-primary-strong); color: #fff; }
.button.warning { background-color: var(--px-accent); color: #122033; }
.scenario-preview-button,
.scenario-preview-button:hover,
.scenario-preview-button:focus {
    background: transparent !important;
    color: var(--px-primary-strong) !important;
}
.scenario-preview-button:focus-visible { outline: 2px solid var(--px-accent); outline-offset: -2px; }
.scenario-preview-button svg { fill: currentColor; }
.tabs { border-color: var(--px-border); }
.tabs-title > a { color: var(--px-link); }
.tabs-title > a:focus, .tabs-title > a[aria-selected="true"] { background: var(--px-surface-2); color: var(--px-text); }
.ui-widget-content, .ui-dialog, .ui-dialog-content, .ui-tabs-panel, .ui-tooltip {
    background: var(--px-surface) !important;
    color: var(--px-text) !important;
    border-color: var(--px-border) !important;
}
.ui-widget-header, .ui-dialog-titlebar { background: var(--px-primary-strong) !important; color: #fff !important; border-color: var(--px-border) !important; }
.ui-dialog .ui-dialog-titlebar-close { display: none !important; }
.ui-dialog-buttonpane .ui-button { background: var(--px-primary) !important; color: #fff !important; border-color: var(--px-border) !important; }
.ui-dialog-buttonpane .ui-button:hover, .ui-dialog-buttonpane .ui-button:focus { background: var(--px-primary-strong) !important; }
.ui-state-default, .ui-widget-content .ui-state-default { background: var(--px-surface-2); color: var(--px-text); border-color: var(--px-border); }
table, tbody, thead, tfoot { background: var(--px-surface); color: var(--px-text); border-color: var(--px-border); }
tbody tr:nth-child(even) { background-color: var(--px-surface); }
th { background: var(--px-primary-strong) !important; color: #fff; }
th a, #tabContacts th a { color: #fff; }
th a:hover, th a:focus, #tabContacts th a:hover, #tabContacts th a:focus { color: var(--px-accent); }
td { border-color: var(--px-border) !important; }
.dispatchTable td:hover, .gradeRow:hover, .qb li:hover { background-color: color-mix(in srgb, var(--px-accent) 25%, var(--px-surface)) !important; }
.status-key { cursor: default; border-radius: 999px; font-weight: 700; }
.status-dispatched { background: #0d47a1 !important; color: #f2bf42 !important; }
.status-acknowledged { background: #f9a825 !important; color: #172033 !important; }
.status-onscene { background: #b3261e !important; color: #fff !important; }
.status-cleared { background: #6a1b9a !important; color: #fff !important; }
.status-graded { background: #2e7d32 !important; color: #fff !important; }
#assignmentNotes { background: var(--px-primary-strong) !important; border-color: var(--px-accent) !important; color: #fff; }
.stickyCol { background: var(--px-surface-2) !important; color: var(--px-text) !important; }
.break { background: var(--px-primary-strong); color: var(--px-accent); }
.wait { background-color: color-mix(in srgb, var(--px-bg) 82%, transparent); }
.tox .tox-editor-header, .tox .tox-toolbar-overlord, .tox .tox-toolbar__primary { background-color: var(--px-surface) !important; }
body.attendance label { color: var(--px-text) !important; }
