/* Shared, offline CI tokens for the planner and the standalone employee portal.
   Inspired by the supplied RTW livery. Bright livery colors are accents only;
   brand actions and clinical/planning states always have distinct tokens. */
:root {
  --font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

  --brand: #15364b;
  --brand-hover: #0d2738;
  --brand-soft: #eaf0f4;
  --brand-line: #7b93a3;
  --accent-yellow: #f4d84b;
  --accent-orange: #ed713f;
  --accent-orange-ink: #913d1b;
  --accent-soft: #fff5dc;
  --accent-tile-width: 128px;
  --accent-stripe: repeating-linear-gradient(90deg, var(--accent-yellow) 0 var(--accent-tile-width), var(--accent-orange) var(--accent-tile-width) calc(var(--accent-tile-width) * 2));
  --accent-stripe-height: 4px;

  --ink: #1b1c1b;
  --ink-soft: var(--ink);
  --ink-faint: var(--ink);
  --muted: var(--ink);
  --paper: #ffffff;
  --canvas: #f3f5f6;
  --canvas-warm: #f8f9fa;
  --surface-subtle: #f7f9fa;
  --line: #d7dfe4;
  --line-strong: #a5b2bc;
  --control-line: #7a8994;
  --focus: var(--brand);
  --shadow-panel: 0 2px 8px #15364b06;
  --shadow-dialog: 0 18px 70px #0d273826;
  --backdrop: #0d273866;

  --danger: #922b35;
  --danger-dark: #711e27;
  --danger-soft: #fff1f2;
  --danger-line: #bc7279;
  --success: #246344;
  --success-soft: #edf6ef;
  --success-line: #6f927b;
  --warning: #6b4e0a;
  --warning-soft: #fff6d9;
  --warning-line: #ac8b39;
  --training: #4e3d67;
  --training-soft: #f2eef8;
  --training-line: #a18dbb;

  /* Compatibility aliases represent status only, never the brand palette. */
  --red: var(--danger);
  --red-dark: var(--danger-dark);
  --red-soft: var(--danger-soft);
  --green: var(--success);
  --green-soft: var(--success-soft);
  --amber: var(--warning);
  --amber-soft: var(--warning-soft);
  --blue: var(--brand);
  --blue-soft: var(--brand-soft);
}

/* One accent per table, on its immediate scroll container. Painting inside a
   reserved top border keeps the line stationary during either scroll direction
   and leaves sticky header offsets and table semantics untouched. The root
   qualifier keeps component background/border shorthands from resetting it. */
:root :is(
  .table-wrap,
  .month-table-scroll,
  .analysis-scroll,
  .reporting-scroll,
  .staff-events-scroll,
  .person-plan-table-wrap,
  .period-opt-table-wrap,
  .planner-assistant-table-wrap
):has(> table),
:root .calendar-month:has(> .calendar-grid),
:root .calendar-week:has(> .calendar-week-day) {
  border-top: var(--accent-stripe-height) solid transparent;
  background-image: var(--accent-stripe);
  background-size: 100% var(--accent-stripe-height);
  background-position: left top;
  background-repeat: no-repeat;
  background-origin: border-box;
  background-clip: border-box;
  background-attachment: scroll;
}
