.network-shell {
  grid-template-columns: 310px minmax(0, 1fr);
}

.network-rail {
  position: sticky;
  top: 0;
  height: 100vh;
}

.network-rail-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.network-rail-list li {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  column-gap: 11px;
  padding: 11px 12px;
  border: 1px solid transparent;
  border-radius: 12px;
}

.network-rail-list li:first-child {
  border-color: rgba(26, 48, 217, 0.18);
  background: var(--blue-100);
}

.network-rail-list li > span {
  grid-row: 1 / 3;
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--blue-700);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
}

.network-rail-list strong {
  color: var(--ink-950);
  font-size: 12px;
}

.network-rail-list small {
  margin-top: 3px;
  color: var(--ink-500);
  font-size: 10px;
  line-height: 1.45;
}

.rail-trust {
  padding: 17px;
  border: 1px solid rgba(26, 48, 217, 0.14);
  border-radius: var(--radius-lg);
  background: #f8faff;
}

.rail-trust strong {
  display: block;
  font-family: Inter, sans-serif;
  font-size: 12px;
}

.rail-trust p {
  margin: 7px 0 0;
  color: var(--ink-500);
  font-size: 10px;
  line-height: 1.55;
}

.network-workspace {
  min-width: 0;
  padding: 28px clamp(24px, 4vw, 64px) 64px;
}

.network-topbar {
  max-width: 1320px;
}

.network-top-actions {
  display: flex;
  align-items: center;
  gap: 18px;
}

.network-container {
  max-width: 1320px;
  margin: 0 auto;
}

.network-error {
  margin-bottom: 18px;
}

.network-hero,
.portal-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 34px;
  margin: 5vh 0 30px;
}

.network-hero h1,
.portal-heading h1 {
  max-width: 760px;
  font-size: clamp(52px, 6vw, 84px);
}

.network-hero .lead,
.portal-heading .lead {
  margin-bottom: 0;
}

.network-hero-note {
  width: min(320px, 100%);
  padding: 22px;
  border: 1px solid rgba(26, 48, 217, 0.18);
  border-radius: var(--radius-xl);
  background: var(--blue-100);
}

.network-hero-note strong,
.network-hero-note span {
  display: block;
}

.network-hero-note strong {
  font-family: Inter, sans-serif;
  font-size: 14px;
}

.network-hero-note span {
  margin-top: 8px;
  color: var(--ink-500);
  font-size: 11px;
  line-height: 1.6;
}

.network-tabs {
  display: inline-flex;
  gap: 4px;
  margin-bottom: 14px;
  padding: 4px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fff;
}

.network-tab {
  min-height: 42px;
  padding: 0 16px;
  border: 0;
  border-radius: 11px;
  background: transparent;
  color: var(--ink-500);
  font-size: 12px;
  font-weight: 800;
}

.network-tab.is-active {
  background: var(--blue-700);
  color: #fff;
  box-shadow: 0 8px 40px rgba(46, 91, 255, 0.35);
}

.network-auth-card,
.network-apply-card,
.application-success {
  padding: clamp(26px, 4vw, 48px);
}

.network-auth-card {
  max-width: 820px;
}

.network-auth-card h2,
.network-apply-card h2,
.application-success h2,
.portal-card h2,
.portal-side-card h2 {
  margin: 0;
}

.network-auth-card > div > .muted {
  max-width: 660px;
  font-size: 13px;
  line-height: 1.65;
}

.network-form {
  margin-top: 26px;
}

.code-field {
  max-width: 280px;
}

.code-field input {
  min-height: 58px;
  font-family: Inter, sans-serif;
  font-size: 24px;
  font-weight: 800;
  letter-spacing: 0.22em;
  text-align: center;
}

.network-application-form {
  display: grid;
  gap: 28px;
}

.form-section {
  min-width: 0;
  margin: 0;
  padding: 0 0 28px;
  border: 0;
  border-bottom: 1px solid var(--line);
}

.form-section legend {
  margin-bottom: 18px;
  padding: 0;
  color: var(--ink-950);
  font-family: Inter, sans-serif;
  font-size: 15px;
  font-weight: 800;
}

.choice-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.choice-card {
  min-width: 0;
  min-height: 86px;
  padding: 14px;
  border: 1px solid #c8d1df;
  border-radius: 13px;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  background: #fff;
  cursor: pointer;
}

.choice-card:has(input:checked) {
  border-color: rgba(26, 48, 217, 0.45);
  background: var(--blue-100);
}

.choice-card input {
  width: 17px;
  height: 17px;
  margin: 1px 0 0;
  accent-color: var(--blue-700);
}

.choice-card strong,
.choice-card small {
  display: block;
}

.choice-card strong {
  font-size: 12px;
}

.choice-card small {
  margin-top: 5px;
  color: var(--ink-500);
  font-size: 10px;
  line-height: 1.45;
}

.capability-language {
  max-width: 560px;
  margin-top: 16px;
}

.money-field > span {
  position: relative;
  display: block;
}

.money-field b {
  position: absolute;
  top: 50%;
  left: 13px;
  z-index: 1;
  transform: translateY(-50%);
  color: var(--ink-500);
  font-size: 13px;
}

.money-field input {
  padding-left: 29px;
}

.application-attestation {
  max-width: 860px;
}

.application-success {
  max-width: 720px;
}

.application-success h2 {
  margin-top: 18px;
}

.application-success .tracking-code {
  color: var(--blue-700);
}

.application-success .btn {
  margin-top: 10px;
}

.portal-heading {
  margin-top: 3vh;
}

.portal-code {
  flex: 0 0 auto;
  padding: 16px 18px;
  border: 1px solid rgba(26, 48, 217, 0.18);
  border-radius: var(--radius-lg);
  background: #fff;
  text-align: right;
}

.portal-code span,
.portal-code strong {
  display: block;
}

.portal-code span {
  color: var(--ink-500);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.portal-code strong {
  margin-top: 5px;
  color: var(--blue-700);
  font-family: Inter, sans-serif;
  font-size: 13px;
}

.network-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 20px;
}

.network-metric {
  min-width: 0;
  padding: 19px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.06);
}

.network-metric span,
.network-metric strong,
.network-metric small {
  display: block;
}

.network-metric span {
  color: var(--ink-500);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.network-metric strong {
  margin-top: 9px;
  color: var(--ink-950);
  font-family: Inter, sans-serif;
  font-size: clamp(18px, 2.2vw, 26px);
  letter-spacing: -0.03em;
}

.network-metric small {
  margin-top: 6px;
  color: var(--ink-500);
  font-size: 10px;
  line-height: 1.45;
}

.portal-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 20px;
  align-items: start;
}

.portal-card,
.portal-side-card {
  padding: clamp(22px, 3vw, 34px);
}

.portal-card + .portal-card,
.portal-side-card + .portal-side-card {
  margin-top: 16px;
}

.offer-compensation {
  margin: 22px 0;
  padding: 21px;
  border-radius: var(--radius-lg);
  background: var(--blue-100);
}

.offer-compensation span,
.offer-compensation strong,
.offer-compensation small {
  display: block;
}

.offer-compensation span {
  color: var(--ink-500);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.offer-compensation strong {
  margin-top: 7px;
  color: var(--blue-700);
  font-family: Inter, sans-serif;
  font-size: clamp(28px, 4vw, 42px);
  letter-spacing: -0.04em;
}

.offer-compensation small {
  margin-top: 5px;
  color: var(--ink-500);
  font-size: 10px;
}

.offer-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.offer-facts div {
  min-width: 0;
  padding: 18px 14px;
}

.offer-facts div + div {
  border-left: 1px solid var(--line);
}

.offer-facts dt {
  color: var(--ink-500);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.offer-facts dd {
  margin: 7px 0 0;
  color: var(--ink-950);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.45;
}

.offer-list {
  margin-top: 22px;
}

.offer-list h3 {
  margin-bottom: 10px;
}

.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.tag-list li {
  padding: 7px 9px;
  border-radius: 999px;
  background: #f2f4f7;
  color: var(--ink-700);
  font-size: 10px;
  font-weight: 700;
}

.offer-card .notice {
  margin-top: 22px;
}

.offer-actions {
  display: flex;
  gap: 10px;
  margin-top: 20px;
}

.offer-confirmation {
  margin-top: 20px;
  padding: 18px;
  border: 1px solid rgba(26, 48, 217, 0.2);
  border-radius: var(--radius-lg);
  background: #f8faff;
}

.offer-confirmation p {
  margin: 7px 0 0;
}

.earning-card h2 {
  font-size: clamp(28px, 4vw, 40px);
}

.performance-card h2 {
  font-size: clamp(28px, 4vw, 40px);
}

.performance-progress {
  display: grid;
  gap: 10px;
  margin-top: 20px;
  padding: 16px;
  border-radius: var(--radius-lg);
  background: var(--blue-100);
}

.performance-progress div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.performance-progress span,
.performance-progress strong {
  color: var(--blue-700);
  font-size: 11px;
  font-weight: 800;
}

.performance-progress progress {
  width: 100%;
  height: 8px;
  accent-color: var(--blue-700);
}

.performance-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 22px 0 0;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  overflow: hidden;
}

.performance-metrics div {
  min-width: 0;
  padding: 16px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.performance-metrics div:nth-child(3n) {
  border-right: 0;
}

.performance-metrics div:nth-last-child(-n + 3) {
  border-bottom: 0;
}

.performance-metrics dt {
  color: var(--ink-500);
  font-size: 9px;
  font-weight: 800;
  line-height: 1.4;
  text-transform: uppercase;
}

.performance-metrics dd {
  margin: 7px 0 0;
  color: var(--ink-950);
  font-family: Inter, sans-serif;
  font-size: 20px;
  font-weight: 800;
}

.performance-signals {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 22px;
}

.performance-signals h3 {
  margin-bottom: 9px;
}

.performance-signal-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.performance-signal-list li {
  padding: 10px 11px;
  border-radius: 10px;
  background: var(--warning-bg);
  color: #5f450f;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.45;
}

.performance-signal-list.positive li {
  background: var(--success-bg);
  color: #17603d;
}

.performance-boundary {
  margin-top: 22px;
}

.readiness-list {
  display: grid;
  gap: 10px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.readiness-list li {
  padding: 11px 12px;
  border-radius: 10px;
  background: var(--warning-bg);
  color: #5f450f;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.45;
}

.button-stack {
  display: grid;
  gap: 9px;
  margin-top: 18px;
}

.availability-form {
  display: grid;
  gap: 16px;
  margin-top: 18px;
}

.availability-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.availability-options label {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  padding: 10px 8px;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: var(--ink-700);
  font-size: 9px;
  font-weight: 800;
}

.availability-options input {
  width: 15px;
  height: 15px;
  min-height: auto;
  margin: 0;
  padding: 0;
  accent-color: var(--blue-700);
}

.availability-form .field label,
.availability-form .field small {
  font-size: 10px;
}

.availability-status {
  margin-top: 14px;
}

.credential-upload-form {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}

.credential-upload-form .field-grid {
  gap: 10px;
}

.credential-upload-form .field label {
  font-size: 10px;
}

.credential-upload-form .field small {
  margin-top: 6px;
}

.credential-upload-form input[type="file"] {
  min-height: 48px;
  padding: 8px;
  background: #fff;
  font-size: 10px;
}

.credential-upload-form input[type="file"]::file-selector-button {
  margin-right: 8px;
  padding: 8px 10px;
  border: 0;
  border-radius: 8px;
  background: var(--blue-100);
  color: var(--blue-700);
  font-family: Inter, sans-serif;
  font-size: 10px;
  font-weight: 800;
}

.credential-progress {
  display: grid;
  gap: 7px;
  color: var(--ink-500);
  font-size: 10px;
  font-weight: 700;
}

.credential-progress progress {
  width: 100%;
  height: 7px;
  accent-color: var(--blue-700);
}

.credential-status-copy {
  margin: 12px 0 0;
}

.sandbox-note {
  margin: 12px 0 0;
}

.privacy-card {
  background: #f9fbff;
}

@media (max-width: 1120px) {
  .network-shell {
    grid-template-columns: 260px minmax(0, 1fr);
  }

  .network-workspace {
    padding-inline: 26px;
  }

  .network-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .portal-grid {
    grid-template-columns: minmax(0, 1fr) 300px;
  }

  .choice-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .network-shell {
    display: block;
  }

  .network-rail {
    position: static;
    height: auto;
    min-height: auto;
    padding: 18px 22px;
  }

  .network-rail .rail-copy,
  .network-rail-list,
  .rail-trust,
  .network-rail .rail-foot {
    display: none;
  }

  .network-workspace {
    padding: 20px 18px 44px;
  }

  .network-hero,
  .portal-heading {
    display: grid;
    gap: 20px;
    margin-top: 30px;
  }

  .network-hero-note {
    width: 100%;
  }

  .portal-code {
    justify-self: start;
    text-align: left;
  }

  .portal-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .portal-aside {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }

  .portal-side-card + .portal-side-card {
    margin-top: 0;
  }

  .privacy-card {
    grid-column: 1 / -1;
  }
}

@media (max-width: 620px) {
  .network-topbar {
    align-items: flex-start;
  }

  .network-top-actions {
    gap: 8px;
    flex-direction: column;
    align-items: flex-end;
  }

  .network-hero h1,
  .portal-heading h1 {
    font-size: 46px;
  }

  .network-tabs {
    width: 100%;
  }

  .network-tab {
    flex: 1;
    padding-inline: 10px;
  }

  .choice-grid,
  .network-metrics,
  .portal-aside {
    grid-template-columns: minmax(0, 1fr);
  }

  .privacy-card {
    grid-column: auto;
  }

  .offer-facts {
    grid-template-columns: minmax(0, 1fr);
  }

  .performance-metrics,
  .performance-signals {
    grid-template-columns: minmax(0, 1fr);
  }

  .availability-options {
    grid-template-columns: minmax(0, 1fr);
  }

  .performance-metrics div,
  .performance-metrics div:nth-child(3n),
  .performance-metrics div:nth-last-child(-n + 3) {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .performance-metrics div:last-child {
    border-bottom: 0;
  }

  .offer-facts div + div {
    border-top: 1px solid var(--line);
    border-left: 0;
  }

  .offer-actions {
    flex-direction: column;
  }

  .offer-actions .btn {
    width: 100%;
  }
}

/* Court-appointment declaration and status. */
.appointment-form { display: grid; gap: 12px; margin: 14px 0; }
.appointment-list { display: grid; gap: 8px; list-style: none; margin: 14px 0 0; padding: 0; }
.appointment-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: "where pill" "meta pill";
  align-items: center;
  gap: 2px 10px;
  padding: 10px 12px;
  border: 1px solid var(--line, rgba(0, 0, 0, .12));
  border-radius: 10px;
}
.appointment-item > strong { grid-area: where; word-break: break-word; }
.appointment-item > .small { grid-area: meta; }
.appointment-item > .status-pill { grid-area: pill; }
.appointment-item.empty { grid-template-columns: minmax(0, 1fr); grid-template-areas: "where"; }

/* Inline contractor agreement [ADDENDUM 4]. */
.agreement-text {
  max-height: 420px;
  overflow-y: auto;
  margin: 14px 0;
  padding: 16px 18px;
  border: 1px solid var(--line, rgba(0, 0, 0, .12));
  border-radius: 10px;
  background: var(--panel, #fff);
  font-size: .85rem;
  line-height: 1.55;
}
.agreement-text h3 { margin: 18px 0 8px; font-size: .95rem; }
.agreement-text h4 { margin: 14px 0 6px; font-size: .85rem; }
.agreement-text p { margin: 0 0 10px; }
.agreement-text ul { margin: 0 0 10px; padding-left: 20px; }
.agreement-text table { width: 100%; border-collapse: collapse; margin: 0 0 12px; font-size: .8rem; }
.agreement-text th, .agreement-text td { border: 1px solid var(--line, rgba(0, 0, 0, .12)); padding: 6px 8px; text-align: left; }
.agreement-act { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--line, rgba(0, 0, 0, .12)); }
.agreement-act h3 { margin: 0 0 10px; font-size: .95rem; }
.agreement-form { display: grid; gap: 10px; }
.agreement-form .check-row { display: flex; gap: 10px; align-items: flex-start; font-size: .85rem; }
.agreement-form .check-row input { margin-top: 3px; }
.agreement-signed { margin: 0 0 6px; }
.agreement-complete { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--line, rgba(0, 0, 0, .12)); display: grid; gap: 10px; justify-items: start; }

/* Packet onboarding checklist as the portal task list. */
.checklist { display: grid; gap: 8px; list-style: none; margin: 14px 0 0; padding: 0; }
.checklist-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: "label pill" "who pill";
  align-items: center;
  gap: 2px 10px;
  padding: 9px 12px;
  border: 1px solid var(--line, rgba(0, 0, 0, .12));
  border-radius: 10px;
}
.checklist-item > strong { grid-area: label; font-size: .88rem; word-break: break-word; }
.checklist-item > .checklist-who { grid-area: who; font-size: .72rem; letter-spacing: .04em; text-transform: uppercase; color: var(--muted, #5b6472); }
.checklist-item > .status-pill { grid-area: pill; }
.checklist-item.is-not-applicable { opacity: .55; }

/* Staged onboarding wizard (owner directive 2026-08-28): one primary
   column, stages locked until the prior completes, mobile-first. */
.wizard-progress {
  display: grid;
  gap: 8px;
  margin: 18px 0 14px;
  padding: 14px 16px;
  border: 1px solid var(--line, rgba(0, 0, 0, .12));
  border-radius: 12px;
  background: var(--panel, #fff);
}
.wizard-progress-copy { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; }
.wizard-progress-track { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 4px; }
.wizard-progress-segment { height: 6px; border-radius: 3px; background: var(--line, rgba(0, 0, 0, .12)); }
.wizard-progress-segment.is-done { background: var(--success, #00d084); }
.wizard-progress-segment.is-current,
.wizard-progress-segment.is-waiting { background: var(--accent, #1a30d9); }
.wizard { list-style: none; margin: 0 0 24px; padding: 0; display: grid; gap: 12px; max-width: 860px; }
.wizard-stage {
  border: 1px solid var(--line, rgba(0, 0, 0, .12));
  border-radius: 14px;
  background: var(--panel, #fff);
  overflow: hidden;
}
.wizard-stage.is-current { border-color: var(--accent, #1a30d9); box-shadow: 0 0 0 1px var(--accent, #1a30d9); }
.wizard-stage.is-locked { opacity: .62; }
.wizard-stage-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 14px 16px;
  border: 0;
  background: none;
  text-align: left;
  cursor: pointer;
  font: inherit;
}
.wizard-stage-head[data-locked="true"] { cursor: not-allowed; }
.wizard-stage-num {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1.5px solid var(--line, rgba(0, 0, 0, .2));
  font-weight: 800;
  font-size: .85rem;
}
.wizard-stage.is-done .wizard-stage-num { border-color: var(--success, #00d084); color: var(--success, #00b872); }
.wizard-stage.is-current .wizard-stage-num { border-color: var(--accent, #1a30d9); color: var(--accent, #1a30d9); }
.wizard-stage-title { display: grid; gap: 2px; min-width: 0; }
.wizard-stage-title strong { font-size: .98rem; }
.wizard-stage-hint { color: var(--muted, #5b6472); font-size: .8rem; line-height: 1.4; }
.wizard-stage-body { padding: 0 16px 16px; display: grid; gap: 14px; border-top: 1px solid var(--line, rgba(0, 0, 0, .08)); }
.wizard-stage-body > .card { border: 0; box-shadow: none; padding: 0; margin: 0; background: none; }
.wizard-stage-body > .card + .card { border-top: 1px solid var(--line, rgba(0, 0, 0, .08)); padding-top: 14px; }
.wizard-stage-tasks { margin: 14px 0 0; }
.wizard-stage-tasks:first-child { margin-top: 14px; }
.portal-work { display: grid; gap: 16px; max-width: 860px; }
@media (max-width: 720px) {
  .wizard-stage-head { grid-template-columns: auto minmax(0, 1fr); }
  .wizard-stage-pill { grid-column: 2; justify-self: start; }
}

/* Task navigation uses ordinary buttons, avoiding incomplete ARIA tab behavior. */
.network-workspace-navigation { display:flex; flex-wrap:wrap; gap:8px; margin:24px 0; }
.network-workspace-navigation[hidden], [data-network-section][hidden] { display:none !important; }
.network-workspace-navigation button { min-height:44px; padding:10px 16px; border:1px solid #9ca3af; border-radius:10px; background:#fff; color:#111827; font:inherit; font-weight:700; cursor:pointer; }
.network-workspace-navigation button[hidden] { display:none !important; }
.network-workspace-navigation button[aria-pressed="true"] { background:#1a30d9; color:#fff; border-color:#1a30d9; }
.network-workspace-navigation button:focus-visible, [data-network-section]:focus-visible { outline:3px solid #166534; outline-offset:3px; }
[data-network-section] { min-width:0; width:100%; }
[data-network-section] > .card { margin-bottom:16px; }
@media (max-width:480px) { .network-workspace-navigation button { flex:1 1 130px; padding:10px; } }
@media (forced-colors:active) { .network-workspace-navigation button[aria-pressed="true"] { border:3px solid Highlight; } }

/* Readable copy on the dark rail and on its light information card. */
.network-rail .network-rail-list li:not(:first-child) strong { color:#f8faff; }
.network-rail .network-rail-list li:not(:first-child) small,
.network-rail .rail-foot { color:#c2c6d6; }
.network-rail .rail-trust strong { color:#111827; }
.network-rail-list[hidden] { display:none !important; }

/* Renewal guidance occupies its own row below the original metadata. */
.appointment-item > .appointment-renewal { grid-area: auto; grid-column: 1 / -1; grid-row: 3; margin: 8px 0 0; }
