:root {
  color-scheme: light;
  --ink: #1e293b;
  --muted: #334155;
  --line: #64748b;
  --bg: #f8fafc;
  --card: #fff;
  --focus: #1e293b;
  --danger: #ef4444;
  --status: #22c55e;
  --status-ink: #0f172a;
}

html {
  font-size: 16px;
}

body {
  margin: 0 auto;
  max-width: 72rem;
  padding: 1.25rem 1rem 3rem;
  font-family: "Segoe UI", system-ui, sans-serif;
  color: var(--ink);
  background: #f3f6f5;
  line-height: 1.45;
}

h1,
h2,
h3 {
  margin: 0 0 0.4rem;
  font-weight: 650;
}

h1 {
  font-size: 1.45rem;
}

h2 {
  font-size: 1.1rem;
}

h3 {
  font-size: 1rem;
  margin-top: 1rem;
}

header p,
.hint {
  color: var(--muted);
  margin: 0 0 1rem;
}

section {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 0.4rem;
  padding: 1rem 1rem 1.1rem;
  margin: 0 0 1rem;
}

form {
  display: grid;
  gap: 0.65rem;
}

label {
  display: grid;
  gap: 0.25rem;
  font-size: 0.9rem;
}

input,
select,
textarea {
  font: inherit;
  padding: 0.4rem 0.5rem;
  border: 1px solid var(--line);
  border-radius: 0.25rem;
}

textarea {
  min-height: 7rem;
  font-family: ui-monospace, Consolas, monospace;
  font-size: 0.82rem;
}

.next-progress {
  max-width: 10rem;
}

input:focus,
select:focus,
textarea:focus,
button:focus,
a:focus {
  outline: 3px solid var(--focus);
  outline-offset: 2px;
}

.actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

button {
  font: inherit;
  padding: 0.4rem 0.75rem;
  border: 1px solid var(--ink);
  background: var(--ink);
  color: #fff;
  border-radius: 0.25rem;
  cursor: pointer;
}

button[type="button"] {
  background: #fff;
  color: var(--ink);
}

button:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.status {
  min-height: 1.3rem;
  margin: 0.75rem 0 0;
  white-space: pre-wrap;
}

.status.error {
  background: var(--danger);
  color: #fff;
  padding: 0.65rem 0.75rem;
  border: 1px solid var(--danger);
}

.status.ok::before {
  content: "OK";
  display: inline-block;
  margin: 0 0.6rem 0.35rem 0;
  padding: 0.45rem 0.7rem;
  background: var(--status);
  color: var(--status-ink);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1;
  border: 1px solid var(--status-ink);
}

table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
}

th,
td {
  text-align: left;
  vertical-align: top;
  padding: 0.4rem 0.45rem;
  border-bottom: 1px solid var(--line);
  word-break: break-word;
}

th {
  font-weight: 600;
}

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

code {
  font-size: 0.88em;
}

.mono {
  font-family: ui-monospace, Consolas, monospace;
  font-size: 0.82rem;
}

.flag {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 650;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #7a3b00;
  background: #fff3e0;
  border: 1px solid #e0b070;
  border-radius: 0.2rem;
  padding: 0.1rem 0.35rem;
}

.flag-assigned {
  color: #1a4a8b;
  background: #e8f0fe;
  border-color: #8ab4f8;
}

.flag-progress {
  color: #7a3b00;
  background: #fff3e0;
  border-color: #e0b070;
}

.flag-done {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-cover-none {
  color: #8b1a1a;
  background: #fdecea;
  border-color: #e57373;
}

.flag-cover-raised {
  color: #7a3b00;
  background: #fff3e0;
  border-color: #e0b070;
}

.flag-cover-assigned {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-overlay-none {
  color: #1a4a8b;
  background: #e8f0fe;
  border-color: #8ab4f8;
}

.flag-overlay-travel {
  color: #4a148c;
  background: #f3e5f5;
  border-color: #ce93d8;
}

.flag-paid-time {
  color: #004d40;
  background: #e0f2f1;
  border-color: #80cbc4;
}

.flag-assigned-remaining {
  color: #4e342e;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-assigned-paid-time {
  color: #006064;
  background: #e0f7fa;
  border-color: #80deea;
}

.flag-nmw-none {
  color: #4e342e;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-nmw-check {
  color: #1a237e;
  background: #e8eaf6;
  border-color: #9fa8da;
}

.flag-nmw-met {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-nmw-short {
  color: #8b1a1a;
  background: #fdecea;
  border-color: #e57373;
}

.flag-nmw-short-none {
  color: #4e342e;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-nmw-short-top-up {
  color: #4a148c;
  background: #f3e5f5;
  border-color: #ce93d8;
}

.flag-rti-none {
  color: #4e342e;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-rti-filing {
  color: #0d47a1;
  background: #e3f2fd;
  border-color: #90caf9;
}

.flag-rti-submission-none {
  color: #4e342e;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-rti-submission {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-verify-none {
  color: #4e342e;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-verify {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-emar-none {
  color: #4e342e;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-emar {
  color: #0d47a1;
  background: #e3f2fd;
  border-color: #90caf9;
}

.flag-except-none {
  color: #4e342e;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-except {
  color: #b71c1c;
  background: #ffebee;
  border-color: #ef9a9a;
}

.flag-pack-none {
  color: #4e342e;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-pack {
  color: #311b92;
  background: #ede7f6;
  border-color: #b39ddb;
}

.flag-quality-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-quality {
  color: #00695c;
  background: #e0f2f1;
  border-color: #80cbc4;
}

.flag-complaint-none {
  color: #5d4037;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-complaint {
  color: #880e4f;
  background: #fce4ec;
  border-color: #f48fb1;
}

.flag-training-none {
  color: #4e342e;
  background: #efebe9;
  border-color: #bcaaa4;
}

.flag-training {
  color: #1a237e;
  background: #e8eaf6;
  border-color: #9fa8da;
}

.flag-training-lapsed {
  color: #7a3b00;
  background: #fff3e0;
  border-color: #e0b070;
}

.flag-carer-quality-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-carer-quality {
  color: #01579b;
  background: #e1f5fe;
  border-color: #81d4fa;
}

.flag-roster-geography {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-roster-skills {
  color: #4a148c;
  background: #f3e5f5;
  border-color: #ce93d8;
}

.flag-roster-availability {
  color: #0d47a1;
  background: #e3f2fd;
  border-color: #90caf9;
}

.flag-area-quality-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-area-quality {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-continuing-care-outcome-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-continuing-care-outcome {
  color: #4a148c;
  background: #f3e5f5;
  border-color: #ce93d8;
}

.flag-review-trigger-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-review-trigger {
  color: #b71c1c;
  background: #ffebee;
  border-color: #ef9a9a;
}

.flag-continuity-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-continuity-maintained {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-continuity-watch {
  color: #7a3b00;
  background: #fff3e0;
  border-color: #e0b070;
}

.flag-continuity-breached {
  color: #b71c1c;
  background: #ffebee;
  border-color: #ef9a9a;
}

.flag-matching-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-matching-reinforce {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-matching-hold {
  color: #7a3b00;
  background: #fff3e0;
  border-color: #e0b070;
}

.flag-matching-reduce {
  color: #b71c1c;
  background: #ffebee;
  border-color: #ef9a9a;
}

.flag-apply-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-apply-hold {
  color: #7a3b00;
  background: #fff3e0;
  border-color: #e0b070;
}

.flag-apply-reinforce {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-apply-reduce {
  color: #b71c1c;
  background: #ffebee;
  border-color: #ef9a9a;
}

.flag-forecast-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-forecast-current {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-outlook-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-outlook-stable {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-outlook-rising,
.flag-outlook-falling,
.flag-outlook-mixed {
  color: #7a3b00;
  background: #fff3e0;
  border-color: #e0b070;
}

.flag-need-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-need-stable {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-need-watch,
.flag-need-improved,
.flag-need-mixed {
  color: #7a3b00;
  background: #fff3e0;
  border-color: #e0b070;
}

.flag-need-deteriorated {
  color: #b71c1c;
  background: #ffebee;
  border-color: #ef9a9a;
}

.flag-absence-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-absence-leave,
.flag-absence-training,
.flag-absence-other {
  color: #7a3b00;
  background: #fff3e0;
  border-color: #e0b070;
}

.flag-absence-sickness {
  color: #b71c1c;
  background: #ffebee;
  border-color: #ef9a9a;
}

.flag-absence-cover-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-absence-cover-materialised {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-planned-cover-assignment-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-planned-cover-assignment-materialised {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-planned-cover-travel-overlay-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-planned-cover-travel-overlay-materialised {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-plan-amendment-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-plan-amendment-materialised {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-slot-rematerialisation-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-slot-rematerialisation-materialised {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-note-summary-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-note-summary-materialised {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-visit-notes-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-visit-notes-listed {
  color: #01579b;
  background: #e1f5fe;
  border-color: #4fc3f7;
}

.flag-visit-note-appended {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-clients-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-clients-listed {
  color: #01579b;
  background: #e1f5fe;
  border-color: #4fc3f7;
}

.flag-client-opened {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-carers-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-carers-listed {
  color: #01579b;
  background: #e1f5fe;
  border-color: #4fc3f7;
}

.flag-carer-opened {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-referrals-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-referrals-listed {
  color: #01579b;
  background: #e1f5fe;
  border-color: #4fc3f7;
}

.flag-referral-recorded {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-assessments-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-assessments-listed {
  color: #01579b;
  background: #e1f5fe;
  border-color: #4fc3f7;
}

.flag-assessment-recorded {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-consents-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-consents-listed {
  color: #01579b;
  background: #e1f5fe;
  border-color: #4fc3f7;
}

.flag-consent-recorded {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-current-plans-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-current-plans-listed {
  color: #01579b;
  background: #e1f5fe;
  border-color: #4fc3f7;
}

.flag-plan-published {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-visits-none {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-unbound-listed {
  color: #01579b;
  background: #e1f5fe;
  border-color: #4fc3f7;
}

.flag-visit-bound {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-supporting-read {
  color: #4a148c;
  background: #f3e5f5;
  border-color: #ce93d8;
}

.flag-authoring-table {
  color: #0d47a1;
  background: #e3f2fd;
  border-color: #64b5f6;
}

.flag-pairing-current {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-no-current-pairing {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-visit-slot {
  color: #0d47a1;
  background: #e3f2fd;
  border-color: #64b5f6;
}

.flag-remat-slot {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-slot-on-approval {
  color: #b71c1c;
  background: #ffebee;
  border-color: #ef9a9a;
}

.flag-slot-proposed {
  color: #e65100;
  background: #fff3e0;
  border-color: #ffcc80;
}

.flag-no-current-slots {
  color: #37474f;
  background: #eceff1;
  border-color: #b0bec5;
}

.flag-first-slice-runs {
  color: #0d47a1;
  background: #e3f2fd;
  border-color: #64b5f6;
}

.flag-build-run {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-rematch-current {
  color: #4a148c;
  background: #f3e5f5;
  border-color: #ce93d8;
}

.flag-first-slice-slots {
  color: #0d47a1;
  background: #e3f2fd;
  border-color: #64b5f6;
}

.flag-materialise-slots {
  color: #1b5e20;
  background: #e8f5e9;
  border-color: #81c784;
}

.flag-propose-horizon {
  color: #e65100;
  background: #fff3e0;
  border-color: #ffb74d;
}

.flag-build-horizon {
  color: #00695c;
  background: #e0f2f1;
  border-color: #4db6ac;
}

.check-set {
  border: 1px solid var(--line);
  border-radius: 0.25rem;
  padding: 0.5rem 0.65rem 0.65rem;
  display: grid;
  gap: 0.3rem;
}

.check-set legend {
  font-size: 0.9rem;
  padding: 0 0.25rem;
}

.check {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.9rem;
}

.check input {
  margin: 0;
}

.job-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin: 0.75rem 0 1rem;
}

.job-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: #3d4f4d;
  text-decoration: none;
  border: 1px solid transparent;
  border-radius: 999px;
  padding: 0.4rem 0.85rem;
  background: transparent;
  transition: border-color 200ms linear, background-color 200ms linear;
}

.job-nav a:hover {
  border-color: #d5e0de;
  background: #fff;
}

.job-nav a[aria-current="page"] {
  color: #1c2b2a;
  background: #fff;
  border-color: #d5e0de;
  font-weight: 650;
}

.job-group {
  margin: 0 0 1.5rem;
}

.job-group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin: 0 0 0.6rem;
}

.job-group-head h2 {
  font-size: 1.25rem;
  margin: 0;
}

.job-group-toggle {
  font: inherit;
  padding: 0.3rem 0.6rem;
  border: 1px solid var(--line);
  border-radius: 0.25rem;
  background: var(--card);
  color: var(--ink);
}

.job-group.is-collapsed .job-group-body {
  display: none;
}

.job-group[hidden] {
  display: none;
}

.desk-table {
  font-size: 0.82rem;
}

.desk-table th,
.desk-table td {
  padding: 0.28rem 0.4rem;
}

.desk-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}

.desk-act,
.today-card button,
.range button {
  font: inherit;
  font-size: 0.85rem;
  padding: 0.3rem 0.55rem;
  border: 1px solid var(--line);
  border-radius: 0.25rem;
  background: var(--card);
  color: var(--ink);
  cursor: pointer;
}

.today-card {
  border: 1px solid #d5e0de;
  border-radius: 10px;
  padding: 0.9rem 1rem;
  margin: 0;
  background: #fff;
}

.today-card h3 {
  margin: 0 0 0.2rem;
  font-size: 1.05rem;
  color: #1c2b2a;
}

.today-dl {
  display: grid;
  grid-template-columns: 8.5rem 1fr;
  gap: 0.2rem 0.6rem;
  margin: 0.4rem 0;
}

.today-dl dt {
  color: var(--muted);
}

.today-dl dd {
  margin: 0;
}

.today-modules {
  margin: 0.2rem 0 0;
  padding-left: 1.1rem;
}

.today-modules li {
  margin: 0.2rem 0;
}

.status-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin: 0 0 0.85rem;
}

.status-nav button {
  font: inherit;
  min-height: 44px;
  padding: 0.45rem 0.9rem;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: #3d4f4d;
  cursor: pointer;
}

.status-nav button[aria-current="page"] {
  background: #fff;
  color: #1c2b2a;
  border-color: #d5e0de;
  font-weight: 650;
}

.range {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  align-items: center;
  margin: 0 0 0.9rem;
}

.range button {
  font: inherit;
  min-height: 44px;
  padding: 0.45rem 0.75rem;
  border: 1px solid #0c5c56;
  border-radius: 8px;
  background: #fff;
  color: #0c5c56;
}

.range button[aria-pressed="true"] {
  background: #0c5c56;
  color: #fff;
  border-color: #0c5c56;
  font-weight: 650;
}

.range label {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.92rem;
  color: #1c2b2a;
}

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

.skip-link:focus {
  position: absolute;
  left: 0.75rem;
  top: 0.75rem;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0.45rem 0.7rem;
  overflow: visible;
  clip: auto;
  white-space: normal;
  background: var(--card);
  color: var(--ink);
  border: 2px solid var(--ink);
  z-index: 2;
}

button,
.job-nav a {
  transition: border-color 200ms linear, background-color 200ms linear;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

header.desk-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin: -1.25rem -1rem 0;
  padding: 0.9rem 1.25rem;
  background: #fff;
  border-bottom: 1px solid #d5e0de;
  color: #1c2b2a;
}

header.desk-header h1 {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 650;
  color: #1c2b2a;
}

header.desk-header .agency {
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.35;
  color: #3d4f4d;
  text-align: right;
}

header.desk-header .agency strong {
  color: #1c2b2a;
  font-weight: 650;
}

#today {
  max-width: 58rem;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}

#today-heading {
  margin: 0 0 0.85rem;
  font-size: 1.35rem;
  color: #1c2b2a;
}

#today-list {
  display: grid;
  gap: 0.75rem;
}

#today .when-line,
#today .meta,
#today .desk-note {
  margin: 0 0 0.9rem;
  color: #3d4f4d;
  font-size: 0.92rem;
}

#today .desk-note {
  color: #1c2b2a;
}

#today-gate:empty,
#today-range:empty,
#today .status:empty {
  display: none;
}

#today .status {
  min-height: 0;
  margin: 0 0 0.75rem;
}

#today .empty {
  margin: 0;
  padding: 0.9rem 1rem;
  color: #1c2b2a;
  background: #fff;
  border: 1px dashed #d5e0de;
  border-radius: 10px;
}

#today .tag {
  display: inline-block;
  margin: 0 0 0.35rem;
  padding: 0.12rem 0.5rem;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 650;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

#today .tag.late {
  background: #fdeeee;
  color: #8d1d1d;
}

#today .tag.wait {
  background: #fff6e8;
  color: #8a4b08;
}

#today .tag.open {
  background: #eef3f8;
  color: #1d3f66;
}

#today .tag.ok {
  background: #e7f6ef;
  color: #0d5c3d;
}

#today .actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-top: 0.7rem;
}

#today button.primary,
#today button.quiet,
#today a.quiet,
#today .range button {
  font: inherit;
  font-size: 1rem;
  min-height: 44px;
  border-radius: 8px;
  cursor: pointer;
}

#today button.primary,
#today .range button[aria-pressed="true"] {
  background: #0c5c56;
  color: #fff;
  border: 1px solid #0c5c56;
}

#today button.quiet,
#today a.quiet,
#today .range button {
  background: #fff;
  color: #0c5c56;
  border: 1px solid #0c5c56;
  text-decoration: none;
}

#today a.quiet {
  display: inline-flex;
  align-items: center;
  padding: 0.45rem 0.75rem;
}

#today .range input {
  min-height: 44px;
  border: 1px solid #d5e0de;
  border-radius: 8px;
  background: #fff;
  color: #1c2b2a;
}

#today .today-modules {
  margin: 0.2rem 0 0;
  padding-left: 1.1rem;
}

#today .today-modules li {
  margin: 0.28rem 0;
}

@media (max-width: 40rem) {
  header.desk-header {
    flex-direction: column;
    align-items: flex-start;
  }

  header.desk-header .agency {
    text-align: left;
  }
}
