.orion-live-roster {
  --olr-bg: #07131e;
  --olr-panel: #0d202e;
  --olr-panel-2: #112a3b;
  --olr-border: #31566f;
  --olr-border-soft: #203b4e;
  --olr-text: #edf4f8;
  --olr-muted: #9eb2c0;
  position: relative;
  left: 50%;
  margin-left: -50vw;
  width: 100vw;
  color: var(--olr-text);
  background: radial-gradient(circle at 50% 0, #153550 0, #0b1d2c 30%, var(--olr-bg) 72%, #050c12 100%);
}
.orion-live-roster *, .orion-live-roster *::before, .orion-live-roster *::after { box-sizing: border-box; }
.olr-canvas { width: min(1480px, 100%); margin: 0 auto; padding: 44px 36px 72px; }
.olr-status, .olr-empty { padding: 50px 20px; color: var(--olr-muted); text-align: center; }
.olr-status.is-error { color: #e5a4a4; }

.olr-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.olr-summary__card { padding: 15px 17px; border: 1px solid var(--olr-border); border-top: 3px solid #59a9d6; border-radius: 3px; background: linear-gradient(145deg, #102a3d, var(--olr-panel)); }
.olr-summary__label, .olr-summary__detail { display: block; color: var(--olr-muted); font: 11px/1.25 Arial, sans-serif; }
.olr-summary__value { display: block; margin: 4px 0; color: #fff; font: 700 24px/1 Arial, sans-serif; }

.olr-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 26px; padding: 12px; border: 1px solid var(--olr-border-soft); background: rgba(7, 19, 30, .7); }
.olr-search { width: min(380px, 100%); height: 38px; padding: 0 12px; color: #fff; border: 1px solid var(--olr-border); border-radius: 2px; outline: 0; background: #0a1924; font: 13px Arial, sans-serif; }
.olr-search:focus { border-color: #65add5; box-shadow: 0 0 0 2px rgba(89, 169, 214, .14); }
.olr-filters { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.olr-filter { padding: 7px 10px; color: #b6c9d6; border: 1px solid #29485d; border-radius: 2px; cursor: pointer; background: #102432; font: 600 11px Arial, sans-serif; }
.olr-filter:hover, .olr-filter.is-active { color: #fff; border-color: #5997bd; background: #17405a; }

.olr-section { --section-accent: #7898ad; margin-bottom: 25px; overflow: hidden; border: 1px solid var(--olr-border); border-top: 4px solid var(--section-accent); border-radius: 3px; background: #091720; box-shadow: 0 12px 28px rgba(0, 0, 0, .2); }
.olr-section--leadership { --section-accent: #d4b15c; }
.olr-section--valkyrie { --section-accent: #8d73c7; }
.olr-section--apollo { --section-accent: #9d5a67; }
.olr-section--baldur { --section-accent: #3f7195; }
.olr-section--reserves { --section-accent: #778894; }
.olr-section--blacklisted { --section-accent: #8a4149; }
.olr-section__header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 13px 17px; border-bottom: 1px solid var(--olr-border); background: linear-gradient(90deg, #17384d, #11293a); }
.olr-section__header h2 { margin: 0; color: #fff; font: 700 21px/1.1 Arial, sans-serif; }
.olr-section__header span { color: var(--olr-muted); font: 600 11px Arial, sans-serif; }

.olr-table-wrap { overflow-x: auto; }
.olr-table { width: 100%; border-collapse: collapse; color: var(--olr-text); font: 12px Arial, sans-serif; }
.olr-table th { padding: 10px 12px; color: #a9c0cf; border-bottom: 1px solid var(--olr-border); background: #102330; font-weight: 600; text-align: left; white-space: nowrap; }
.olr-table td { padding: 10px 12px; border-bottom: 1px solid rgba(49, 86, 111, .38); vertical-align: middle; }
.olr-table tbody tr:last-child td { border-bottom: 0; }
.olr-table tbody tr:hover { background: rgba(40, 91, 124, .12); }
.olr-person strong, .olr-person span { display: block; }
.olr-person strong { color: #fff; font-size: 13px; }
.olr-person span { margin-top: 2px; color: #6f899a; font-size: 10px; }
.olr-assignment { color: #bed8e8; font-weight: 600; }
.olr-number { font-weight: 700; }
.olr-badge, .olr-bct { display: inline-block; padding: 4px 7px; border: 1px solid #3b5363; border-radius: 2px; color: #aabac5; background: #182630; font-size: 10px; font-weight: 700; }
.olr-badge.is-active { color: #a8e1b7; border-color: #396c48; background: #183525; }
.olr-badge.is-reserve { color: #e0ca8c; border-color: #6d5d32; background: #332e1d; }
.olr-badge.is-blacklisted { color: #e1a0a6; border-color: #6c353b; background: #351d21; }
.olr-bct.is-qualified { color: #add5eb; border-color: #376785; background: #172f40; }
.olr-cards { display: none; }

@media (max-width: 1050px) {
  .olr-canvas { padding: 35px 18px 60px; }
  .olr-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .olr-toolbar { align-items: stretch; flex-direction: column; }
  .olr-search { width: 100%; }
  .olr-filters { justify-content: flex-start; }
}

@media (max-width: 760px) {
  .orion-live-roster { left: 0; margin-left: 0; width: 100%; }
  .olr-canvas { padding: 24px 10px 42px; }
  .olr-summary { gap: 8px; }
  .olr-summary__card { padding: 12px; }
  .olr-summary__value { font-size: 20px; }
  .olr-table-wrap { display: none; }
  .olr-cards { display: grid; gap: 10px; padding: 10px; }
  .olr-card { overflow: hidden; border: 1px solid var(--olr-border-soft); border-left: 3px solid var(--section-accent); border-radius: 2px; background: var(--olr-panel); }
  .olr-card__header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px; border-bottom: 1px solid var(--olr-border-soft); background: var(--olr-panel-2); }
  .olr-card__header h3 { margin: 0; color: #fff; font: 700 15px Arial, sans-serif; }
  .olr-card__header div > span { color: var(--olr-muted); font-size: 11px; }
  .olr-card__field { display: flex; justify-content: space-between; gap: 15px; padding: 8px 12px; border-bottom: 1px solid rgba(49, 86, 111, .3); font: 12px Arial, sans-serif; }
  .olr-card__field:last-child { border-bottom: 0; }
  .olr-card__field span { color: var(--olr-muted); }
  .olr-card__field strong { color: #e8f2f7; text-align: right; }
}
