@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,600;0,700;0,800;0,900;1,800&family=Inter:wght@400;500;600;700&display=swap');

:root {
  --ink: #08110d;
  --panel: #101c16;
  --panel-2: #15231b;
  --line: #2a392f;
  --lime: #b8ff5a;
  --lime-soft: #dcffad;
  --white: #f5f7f2;
  --acid: var(--lime);
  --paper: var(--white);
  --display: "Barlow Condensed", sans-serif;
  --muted: #a8b3aa;
  --orange: #ff7448;
  --radius: 18px;
  --site-background: #07110c;
  --site-grid-line: rgba(103, 158, 115, .095);
  --site-background-glow: rgba(76, 142, 91, .08);
}

.coverage-dashboard{margin:1.5rem 0;padding:1.4rem;border:1px solid #294737;border-radius:1rem;background:rgba(8,24,16,.86)}
.coverage-dashboard-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.coverage-dashboard-heading h2{margin:.2rem 0 0}
.coverage-quota{padding:.55rem .75rem;border:1px solid #41634d;border-radius:999px;color:#b8c8bd;font-size:.75rem;font-weight:800;white-space:nowrap}
.coverage-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem;margin:1.1rem 0}
.coverage-summary div{padding:.8rem;border:1px solid #294737;border-radius:.7rem;background:#07140d}
.coverage-summary strong,.coverage-summary span{display:block}
.coverage-summary strong{color:#a8ff4f;font-size:1.35rem}.coverage-summary span{color:#9eafa4;font-size:.76rem}
.coverage-filters{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.9rem}
.coverage-filters button{padding:.5rem .68rem;border:1px solid #355443;border-radius:999px;background:transparent;color:#aab9af;font-size:.72rem;font-weight:800}
.coverage-filters button.active{background:#a8ff4f;color:#07110b;border-color:#a8ff4f}
.coverage-player-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;max-height:30rem;overflow:auto}
.coverage-player{position:relative;padding:.72rem;border:1px solid #294737;border-radius:.7rem;background:#091810}
.coverage-player>div{display:flex;align-items:center;gap:.4rem}.coverage-player span{color:#a8ff4f;font-size:.7rem;font-weight:900}
.coverage-player strong{font-size:.82rem}.coverage-player small{margin-left:auto;color:#74877b}
.coverage-player>b{display:block;margin:.45rem 0 .2rem;font-size:1rem}.coverage-player p{margin:0;color:#8fa197;font-size:.68rem}
.coverage-player em{display:inline-block;margin-top:.45rem;color:#ffcb6b;font-size:.65rem;font-style:normal;text-transform:uppercase}
.coverage-player.target_reached{border-color:#4e7a5d}.coverage-player.zero{border-color:#72423f}
.admin-content-kind{margin:.45rem 0 0;color:#a8ff4f;font-size:.68rem;font-weight:800;letter-spacing:.06em}
.content-operations{margin:1.5rem 0;padding:1.4rem;border:1px solid #294737;border-radius:1rem;background:rgba(8,24,16,.86)}
.operations-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:1.25rem;margin-top:1.1rem}
.operations-grid>div{min-width:0;padding:1rem;border:1px solid #294737;border-radius:.8rem;background:#07140d}
.operations-grid h3{font-size:1.25rem}.operations-intro{margin:.35rem 0 1rem;color:#8fa197;font-size:.75rem;line-height:1.45}
.source-signal-list,.transcript-rescue-list{display:grid;gap:.5rem;max-height:24rem;overflow:auto}
.source-signal,.transcript-rescue{padding:.75rem;border:1px solid #294737;border-radius:.65rem;background:#091810}
.source-signal>div:first-child,.transcript-rescue>div{display:flex;justify-content:space-between;align-items:center;gap:.7rem}
.source-signal strong,.transcript-rescue strong{font-size:.8rem}.source-signal>div:first-child span,.transcript-rescue>div span{color:#8fa197;font-size:.65rem}
.source-signal-metrics{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.55rem}.source-signal-metrics span{padding:.3rem .45rem;border-radius:999px;background:#14261a;color:#adc0b3;font-size:.62rem;font-weight:700}
.triage-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-top:1rem}.triage-summary>div{display:grid;gap:.2rem;padding:.8rem;border:1px solid #294737;border-radius:.7rem;background:#07140d}.triage-summary strong{font-size:1.35rem;color:#a8ff3e}.triage-summary span{font-size:.65rem;color:#8fa197;text-transform:uppercase;letter-spacing:.05em}
.transcript-rescue p{margin:.55rem 0;color:#c7d3ca;font-size:.72rem;line-height:1.4}.transcript-rescue a{color:#a8ff4f;font-size:.66rem;font-weight:800;text-decoration:none}
.semantic-review-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;align-items:end;margin-top:1rem}.semantic-review-grid label{display:grid;gap:.4rem}.semantic-review-grid label span{color:#8fa197;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.semantic-review-grid input,.semantic-review-grid textarea{width:100%;border:1px solid #365843;border-radius:.65rem;background:#06110b;color:#eaf3ec;padding:.75rem;font:inherit}.semantic-review-grid textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;line-height:1.45}.semantic-review-grid button{min-height:2.8rem;padding:.7rem 1rem;border:1px solid #79b63f;border-radius:.65rem;background:#a8ff4f;color:#071008;font-size:.7rem;font-weight:900;letter-spacing:.04em}.semantic-review-grid button:disabled{cursor:wait;opacity:.55}.semantic-review-wide{grid-column:1/-1}
@media(max-width:900px){.coverage-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.coverage-player-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.operations-grid,.semantic-review-grid{grid-template-columns:1fr}.semantic-review-wide{grid-column:auto}.triage-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.coverage-dashboard-heading{display:block}.coverage-quota{display:inline-block;margin-top:.75rem}.coverage-player-grid{grid-template-columns:1fr}.coverage-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--white);
  background:
    radial-gradient(circle at 73% 18%, var(--site-background-glow), transparent 31rem),
    linear-gradient(var(--site-grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--site-grid-line) 1px, transparent 1px),
    var(--site-background);
  background-size: auto, 44px 44px, 44px 44px, auto;
  font-family: Inter, system-ui, sans-serif;
  min-height: 100vh;
}

button, select { font: inherit; }
button { cursor: pointer; }
.topbar {
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 max(20px, calc((100vw - 1180px) / 2));
  border-bottom: 1px solid var(--line);
  background: rgba(8,17,13,.92);
  position: sticky;
  top: 0;
  z-index: 10;
  backdrop-filter: blur(14px);
}
.brand { color: var(--white); text-decoration: none; display: flex; gap: 10px; align-items: center; font-family: "Barlow Condensed", sans-serif; font-weight: 900; letter-spacing: .08em; font-size: 1.15rem; }
.brand-play-icon { display: grid; width: 34px; height: 36px; flex: 0 0 auto; place-items: center; filter: drop-shadow(0 0 6px rgba(184,255,90,.22)); }
.brand-play-icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.season-badge { color: var(--lime); border: 1px solid #52752f; border-radius: 999px; padding: 7px 10px; font: 700 .72rem Inter, sans-serif; letter-spacing: .1em; }
.topbar-actions { display: flex; align-items: center; gap: 12px; }
.admin-link { color: var(--muted); text-decoration: none; font-size: .7rem; font-weight: 800; letter-spacing: .09em; }
.admin-link:hover, .admin-link.active { color: var(--lime); }
.back-link { text-decoration: none; }
main { max-width: 1180px; margin: 0 auto; padding: 58px 24px 72px; }
.intro { position: relative; }
.intro::after { content: "26"; position: absolute; z-index: -1; right: 0; top: -80px; font: 900 20rem/1 "Barlow Condensed", sans-serif; color: transparent; -webkit-text-stroke: 1px rgba(184,255,90,.09); }
.eyebrow, .section-kicker { margin: 0 0 8px; color: var(--lime); letter-spacing: .15em; font: 800 .75rem/1 Inter, sans-serif; }
h1, h2, h3 { font-family: "Barlow Condensed", sans-serif; margin: 0; line-height: .95; text-transform: uppercase; }
h1 { max-width: 780px; font-size: clamp(3.9rem, 9vw, 7.5rem); letter-spacing: -.035em; font-weight: 900; }
.lede { max-width: 610px; color: var(--muted); font-size: 1.08rem; line-height: 1.65; margin: 20px 0 34px; }
.builder { background: linear-gradient(135deg, rgba(21,35,27,.98), rgba(12,23,17,.98)); border: 1px solid var(--line); border-radius: var(--radius); padding: 24px; box-shadow: 0 24px 80px rgba(0,0,0,.23); }
.builder-heading, .watch-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.builder h2, .watch-heading h2 { font-size: clamp(2rem, 5vw, 3.2rem); }
.text-button { color: var(--muted); background: none; border: 0; text-decoration: underline; text-underline-offset: 4px; padding: 8px; }
.text-button:hover { color: var(--white); }
.builder-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.select-row { display: grid; grid-template-columns: .8fr 1.5fr auto; align-items: end; gap: 12px; margin-top: 22px; }
label span { display: block; margin-bottom: 7px; color: var(--muted); font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
select { width: 100%; min-height: 50px; appearance: none; color: var(--white); background: #0a1510 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b8ff5a' stroke-width='2'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E") no-repeat right 14px center/18px; border: 1px solid #3b4d41; border-radius: 10px; padding: 0 42px 0 14px; }
select:focus, button:focus-visible { outline: 3px solid rgba(184,255,90,.45); outline-offset: 2px; }
.add-button { min-height: 50px; border: 0; border-radius: 10px; background: var(--lime); color: var(--ink); padding: 0 22px; font-weight: 800; }
.add-button:hover { background: var(--lime-soft); }
.add-button:disabled { opacity: .4; cursor: not-allowed; }
.position-key { display: flex; align-items: center; gap: 7px; margin-top: 12px; color: #89998e; font-size: .62rem; font-weight: 850; letter-spacing: .08em; }
.position-key > span { margin-right: 2px; }
.position-key b { display: inline-grid; min-width: 31px; min-height: 25px; place-items: center; border: 1px solid color-mix(in srgb,var(--position-color) 52%,#294236); border-radius: 5px; color: var(--position-color); background: color-mix(in srgb,var(--position-color) 10%,#08150f); font-size: .62rem; letter-spacing: .04em; }
.position-key [data-position="QB"],.player-chip[data-position="QB"],.player-identity[data-position="QB"] { --position-color: #ffb34d; }
.position-key [data-position="RB"],.player-chip[data-position="RB"],.player-identity[data-position="RB"] { --position-color: #a8ff4f; }
.position-key [data-position="WR"],.player-chip[data-position="WR"],.player-identity[data-position="WR"] { --position-color: #60c7ff; }
.position-key [data-position="TE"],.player-chip[data-position="TE"],.player-identity[data-position="TE"] { --position-color: #d19cff; }
.roster-strip { display: flex; gap: 18px; align-items: flex-start; margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--line); }
.roster-meta { flex: 0 0 auto; min-width: 92px; }
.roster-count { flex: 0 0 auto; color: var(--muted); padding-top: 7px; font: 800 .7rem Inter, sans-serif; letter-spacing: .1em; }
.roster-count span { color: var(--white); }
.save-status { color: #718078; margin-top: 7px; font-size: .62rem; line-height: 1.3; opacity: 0; transform: translateY(-2px); transition: opacity .2s, transform .2s; }
.save-status.visible { opacity: 1; transform: translateY(0); }
.roster-chips { display: flex; gap: 8px; flex-wrap: wrap; }
.coverage-note { margin: 16px 0 0 110px; color: var(--muted); font-size: .82rem; line-height: 1.5; }
.coverage-note strong { color: var(--paper); }
.player-chip { display: inline-flex; align-items: center; gap: 8px; color: var(--white); background: #1a2b20; border: 1px solid color-mix(in srgb,var(--position-color) 38%,#38503e); border-radius: 999px; padding: 6px 9px 6px 7px; font-size: .82rem; }
.chip-position { display: inline-grid; min-width: 28px; min-height: 23px; place-items: center; border-radius: 999px; color: #06110b; background: var(--position-color); font-weight: 900; font-size: .62rem; letter-spacing: .025em; }
.remove-chip { border: 0; border-radius: 50%; width: 22px; height: 22px; color: var(--muted); background: #0c1711; line-height: 1; }
.remove-chip:hover { color: var(--white); background: #334439; }
.watch-section { margin-top: 70px; }
.weekly-flow { margin-top: 28px; padding: 22px 24px; border: 1px solid #405247; border-radius: var(--radius); background: rgba(13,27,19,.82); }
.weekly-flow h2 { font-size: clamp(1.8rem, 4vw, 2.7rem); }
.weekly-flow ol { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 20px 0 14px; padding: 0; }
.weekly-flow li { min-width: 0; display: grid; grid-template-columns: auto 1fr; column-gap: 9px; align-items: center; padding: 13px; border: 1px solid #304438; border-radius: 11px; background: #0a1510; }
.weekly-flow li > span { grid-row: 1 / 3; color: var(--lime); font: 900 1.4rem/1 "Barlow Condensed", sans-serif; }
.weekly-flow strong { font: 800 1rem "Barlow Condensed", sans-serif; text-transform: uppercase; }
.weekly-flow small { color: var(--muted); font-size: .68rem; line-height: 1.35; }
.cadence { margin: 0; color: #849289; font-size: .74rem; line-height: 1.55; }
.playback-notice { margin-top: 16px; padding: 12px 15px; border: 1px solid #8c5f36; border-radius: 10px; color: #ffd7ad; background: #26170e; font-size: .78rem; line-height: 1.45; }
.watch-summary { color: var(--muted); margin: 11px 0 0; line-height: 1.5; }
.content-switch { display: grid; grid-template-columns: repeat(2, minmax(145px, 1fr)); gap: 6px; padding: 5px; border: 1px solid #405247; border-radius: 13px; background: #09130e; }
.content-mode { min-height: 58px; padding: 9px 13px; text-align: left; color: var(--muted); border: 1px solid transparent; border-radius: 9px; background: transparent; }
.content-mode strong, .content-mode small { display: block; }
.content-mode strong { color: inherit; font: 800 1rem "Barlow Condensed", sans-serif; text-transform: uppercase; letter-spacing: .035em; }
.content-mode small { margin-top: 2px; font-size: .63rem; }
.content-mode.active { color: var(--ink); border-color: var(--lime); background: var(--lime); }
.content-mode.active small { color: #26351d; }
.queue-button { width: 100%; display: flex; align-items: center; text-align: left; gap: 14px; margin: 24px 0; color: var(--ink); border: 0; border-radius: 14px; padding: 17px 20px; background: var(--lime); box-shadow: 0 12px 38px rgba(184,255,90,.12); }
.queue-button:hover { background: var(--lime-soft); transform: translateY(-1px); }
.queue-button:disabled { opacity: .35; cursor: not-allowed; transform: none; }
.queue-button strong { display: block; font: 900 1.4rem "Barlow Condensed", sans-serif; text-transform: uppercase; }
.queue-button small { display: block; font-size: .78rem; opacity: .7; margin-top: 2px; }
.play-symbol { width: 38px; height: 38px; border: 2px solid var(--ink); border-radius: 50%; display: grid; place-items: center; padding-left: 2px; }
.queue-arrow { margin-left: auto; font-size: 1.5rem; }
.card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.player-card { position: relative; overflow: hidden; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); transition: border-color .2s, transform .2s; }
.player-card:hover { transform: translateY(-2px); border-color: #4f6957; }
.card-accent { height: 4px; background: var(--lime); }
.card-head { display: flex; justify-content: space-between; gap: 16px; padding: 20px 20px 15px; }
.position-label { color: var(--lime); font: 800 .72rem Inter, sans-serif; letter-spacing: .13em; margin-bottom: 5px; }
.player-card h3 { font-size: clamp(1.75rem, 4vw, 2.5rem); }
.team-mark { flex: 0 0 auto; height: 34px; min-width: 46px; padding: 0 8px; display: grid; place-items: center; border: 1px solid #415448; color: var(--muted); transform: skew(-6deg); font: 800 .72rem Inter, sans-serif; }
.player-intro { margin: -3px 20px 18px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.hype-label { display: inline-flex; align-items: center; gap: 7px; color: var(--lime); font-size: .65rem; font-weight: 800; letter-spacing: .1em; }
.hype-label::before { content: ""; width: 18px; height: 2px; background: var(--lime); }
.player-intro p { max-width: 540px; margin: 8px 0 12px; color: #dce5dd; font-size: .92rem; line-height: 1.55; }
.game-environment { margin: 0 20px 18px; padding: 13px; border: 1px solid #3d5747; border-radius: 12px; background: linear-gradient(135deg, rgba(21,42,29,.95), rgba(8,20,13,.96)); }
.environment-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.environment-heading span { color: #9daf9f; font-size: .61rem; font-weight: 900; letter-spacing: .1em; }
.environment-heading strong { flex: 0 0 auto; border-radius: 999px; padding: 4px 8px; font-size: .59rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.game-environment.strong .environment-heading strong { color: #10210e; background: var(--lime); }
.game-environment.average .environment-heading strong { color: #241803; background: #efbb55; }
.game-environment.difficult .environment-heading strong { color: #fff; background: #8e4b43; }
.pending-environment .environment-heading strong { color: #241803; background: #efbb55; }
.environment-update { padding: 12px; border: 1px solid #2d4436; border-radius: 9px; background: rgba(4,12,7,.52); }
.environment-update b, .environment-update span { display: block; }
.environment-update b { color: var(--paper); font-size: .8rem; }
.environment-update span { margin-top: 5px; color: #9daf9f; font-size: .66rem; line-height: 1.45; }
.environment-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.environment-grid > div { min-width: 0; padding: 9px 10px; border: 1px solid #2d4436; border-radius: 9px; background: rgba(4,12,7,.52); }
.environment-grid small, .environment-grid b, .environment-grid span { display: block; }
.environment-grid small { color: #809087; font-size: .53rem; font-weight: 900; letter-spacing: .08em; }
.environment-grid b { margin: 4px 0 3px; color: var(--paper); font-size: .77rem; }
.environment-grid span { overflow: hidden; color: #9daf9f; font-size: .59rem; text-overflow: ellipsis; white-space: nowrap; }
.weather-metric.pending b { color: #d9c27b; }
.weather-metric.pending span::before { content: "◌ "; color: #efbb55; }
.weather-metric.ready b { color: var(--lime); }
.game-environment > p { margin: 9px 1px 0; color: #819187; font-size: .61rem; line-height: 1.4; }
.reel-tabs { display: flex; gap: 7px; margin: -2px 20px 14px; overflow-x: auto; scrollbar-width: none; }
.reel-tabs::-webkit-scrollbar { display: none; }
.reel-tab { flex: 0 0 auto; min-height: 34px; padding: 0 10px; border: 1px solid #354a3c; border-radius: 999px; color: #9dac9f; background: #0a1510; font: 800 .64rem Inter,sans-serif; letter-spacing: .025em; white-space: nowrap; }
.reel-tab span { display: inline-grid; min-width: 18px; height: 18px; margin-left: 4px; place-items: center; border-radius: 999px; color: #829087; background: #18271e; font-size: .57rem; }
.reel-tab:hover { color: var(--paper); border-color: #66806d; }
.reel-tab.active { color: var(--ink); border-color: var(--lime); background: var(--lime); }
.reel-tab.active span { color: var(--paper); background: var(--ink); }
.carousel-meta { display: flex; align-items: center; gap: 10px; padding: 0 20px 14px; }
.progress-segments { display: flex; gap: 4px; flex: 1; }
.progress-segment { height: 3px; flex: 1; border-radius: 999px; background: #324238; transition: background .2s; }
.progress-segment.active { background: var(--lime); }
.carousel-count { color: var(--muted); min-width: 44px; text-align: right; font-size: .72rem; font-weight: 800; letter-spacing: .04em; }
.video-carousel { border-top: 1px solid var(--line); overflow: hidden; }
.video-track { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(250px, 88%); gap: 12px; overflow-x: auto; padding: 16px 20px 12px; scroll-snap-type: x mandatory; scroll-padding-inline: 20px; scrollbar-width: none; overscroll-behavior-inline: contain; }
.video-track::-webkit-scrollbar { display: none; }
.video-item { display: grid; grid-template-rows: auto 1fr; min-width: 0; border: 1px solid #31443a; border-radius: 13px; overflow: hidden; background: #0a1510; scroll-snap-align: start; }
.video-copy { display: flex; min-height: 0; flex-direction: column; padding: 13px 14px 15px; }
.thumb { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: #020503; align-self: start; border: 0; padding: 0; }
.thumb img { width: 100%; height: 100%; object-fit: cover; display: block; opacity: .82; transition: opacity .2s, transform .25s; }
.external-source-thumb { width: 100%; height: 100%; min-height: 150px; display: grid; place-content: center; gap: 5px; color: #fff; background: radial-gradient(circle at 50% 20%, #315d45, #07110c 68%); text-align: center; }
.external-source-thumb b { color: var(--lime); font-size: 1.1rem; letter-spacing: .08em; text-transform: uppercase; }
.external-source-thumb small { color: #b9c8be; font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
.thumb:hover img { opacity: 1; transform: scale(1.03); }
.thumb .mini-play { position: absolute; inset: 0; margin: auto; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; color: var(--ink); background: var(--lime); font-size: .75rem; padding-left: 2px; }
.clip-badge { position: absolute; right: 9px; top: 9px; color: var(--white); background: rgba(7, 18, 12, .9); border: 1px solid rgba(255, 255, 255, .28); border-radius: 5px; padding: 5px 7px; font-size: .57rem; font-weight: 900; letter-spacing: .06em; }
.external-badge { position: absolute; left: 9px; bottom: 9px; color: var(--white); background: rgba(183, 28, 28, .94); border-radius: 5px; padding: 6px 8px; font-size: .55rem; font-weight: 900; letter-spacing: .055em; }
.external-video { border-color: #5a4937; }
.external-video .thumb img { opacity: .94; }
.external-video .thumb .mini-play { color: #fff; background: #e62117; }
.external-explainer { margin: 7px 0 9px; color: #9eaaa1; font-size: .68rem; line-height: 1.45; }
.player-card.resume-highlight { border-color: var(--lime); box-shadow: 0 0 0 3px rgba(184,255,90,.14), 0 20px 65px rgba(0,0,0,.3); }
.video-type { color: var(--orange); font: 800 .68rem Inter, sans-serif; letter-spacing: .11em; text-transform: uppercase; }
.lane-badge { display: inline-flex; margin: 0 0 8px; color: var(--ink); background: var(--lime); border-radius: 999px; padding: 4px 7px; font-size: .57rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.video-copy h4 { margin: 6px 0 8px; font-size: .93rem; line-height: 1.35; }
.video-actions { margin-top: auto; padding-top: 10px; }
.watch-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.watch-link { color: var(--lime); background: none; border: 0; padding: 0; font-size: .78rem; font-weight: 800; }
.watch-link:hover { text-decoration: underline; text-underline-offset: 3px; }
.share-video { border: 1px solid var(--line); background: transparent; color: var(--paper); border-radius: 8px; padding: 9px 11px; font: 900 .67rem Inter, sans-serif; letter-spacing: .05em; cursor: pointer; }
.share-video:hover { border-color: var(--acid); color: var(--acid); }
.shared-arrival { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 24px auto 0; width: min(1400px, calc(100% - 48px)); padding: 16px 18px; border: 1px solid #5d913d; border-radius: 14px; background: #102317; box-shadow: 0 18px 50px rgba(0,0,0,.3); }
.shared-arrival > div { display: flex; align-items: center; gap: 12px; }
.shared-arrival span { color: var(--acid); font: 900 .68rem Inter, sans-serif; letter-spacing: .1em; }
.shared-arrival strong { color: var(--paper); }
.shared-arrival small { color: var(--muted); }
.shared-arrival button { border: 0; border-radius: 9px; background: var(--acid); color: #08110d; padding: 10px 12px; font-weight: 900; cursor: pointer; }
.shared-arrival .share-dismiss { background: transparent; color: var(--muted); }
.feedback-row { display: flex; align-items: center; gap: 6px; margin-top: 13px; padding-top: 11px; border-top: 1px solid #26382d; color: #718078; font-size: .66rem; font-weight: 700; text-transform: uppercase; }
.feedback-button { color: var(--muted); background: #17251c; border: 1px solid #35483b; border-radius: 6px; padding: 5px 7px; font-size: .63rem; font-weight: 800; }
.feedback-button.selected { color: var(--ink); background: var(--lime); border-color: var(--lime); }
.feedback-reasons { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; }
.feedback-reason { color: #94a299; background: transparent; border: 1px solid #31443a; border-radius: 999px; padding: 5px 7px; font-size: .6rem; font-weight: 700; }
.feedback-reason:hover { color: var(--white); border-color: #587262; }
.feedback-reason.selected { color: var(--ink); background: var(--orange); border-color: var(--orange); }
.carousel-nav { display: flex; justify-content: space-between; align-items: center; padding: 0 20px 17px; }
.swipe-hint { color: #718078; font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.nav-buttons { display: flex; gap: 7px; }
.carousel-button { width: 34px; height: 34px; border-radius: 50%; border: 1px solid #405448; color: var(--white); background: #17271d; font-size: 1rem; }
.carousel-button:hover { border-color: var(--lime); color: var(--lime); }
.carousel-button:disabled { opacity: .3; cursor: not-allowed; }
.empty-state { border: 1px dashed #405247; border-radius: var(--radius); padding: 55px 24px; text-align: center; color: var(--muted); }
.empty-state .empty-number { color: #26382d; font: 900 5rem/1 "Barlow Condensed", sans-serif; margin: 0; }
.empty-state h3 { color: var(--white); font-size: 2rem; }
.pending-copy { margin: 0 20px 20px; min-height: 230px; display: grid; place-items: center; align-content: center; text-align: center; border: 1px dashed #405247; border-radius: 12px; padding: 28px; }
.pending-icon { color: var(--lime); font-size: 2.4rem; }
.pending-copy h4 { margin: 8px 0 5px; font: 800 1.35rem "Barlow Condensed", sans-serif; text-transform: uppercase; }
.pending-copy p { max-width: 330px; color: var(--muted); margin: 0; font-size: .82rem; line-height: 1.5; }
.remove-pending { color: var(--lime); background: none; border: 0; margin-top: 14px; font-size: .72rem; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
footer { display: flex; justify-content: space-between; gap: 24px; max-width: 1180px; margin: 0 auto; padding: 24px; border-top: 1px solid var(--line); color: #718078; font-size: .73rem; line-height: 1.5; }
dialog { width: min(900px, calc(100% - 28px)); padding: 0; border: 1px solid #42564a; border-radius: var(--radius); color: var(--white); background: #0c1711; box-shadow: 0 30px 110px rgba(0,0,0,.8); }
dialog::backdrop { background: rgba(0,0,0,.8); backdrop-filter: blur(8px); }
.dialog-bar { display: flex; align-items: center; justify-content: space-between; padding: 18px 20px; }
.dialog-bar h2 { font-size: 2rem; }
.close-button { color: var(--white); background: #1b2c21; border: 1px solid #3a4e40; width: 42px; height: 42px; border-radius: 50%; font-size: 1.7rem; line-height: 1; }
.video-frame { aspect-ratio: 16/9; background: #000; }
.video-frame iframe, #videoPlayer { display: block; width: 100%; height: 100%; border: 0; }
.facebook-embed-shell { min-height: 500px; display: grid; grid-template-columns: minmax(280px, 1fr) minmax(220px, .62fr); align-items: center; gap: 22px; padding: 20px; background: #050906; }
.facebook-embed-frame { display: block; width: 100%; min-height: 520px; border: 0; border-radius: 10px; background: #000; }
.facebook-embed-actions { padding: 18px; }
.facebook-embed-actions > span { color: var(--lime); font-size: .68rem; font-weight: 900; letter-spacing: .12em; }
.facebook-embed-actions p { color: #c0cbc3; line-height: 1.5; }
.facebook-embed-actions > div { display: flex; flex-wrap: wrap; gap: 9px; }
.facebook-embed-actions a, .facebook-embed-actions button { min-height: 46px; display: inline-grid; place-items: center; padding: 0 16px; border: 0; border-radius: 8px; color: #fff; background: #0866ff; font: 900 .72rem Inter, sans-serif; text-decoration: none; }
.facebook-embed-actions button { color: var(--ink); background: var(--lime); }
.dialog-note { color: var(--muted); margin: 0; padding: 15px 20px 18px; font-size: .8rem; }
.external-fallback { position: relative; min-height: 360px; display: grid; place-items: center; overflow: hidden; background: #020503; }
.external-fallback > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: blur(2px); opacity: .58; transform: scale(1.02); }
.external-fallback-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(2,5,3,.96), rgba(2,5,3,.66)); }
.external-fallback-copy { position: relative; z-index: 1; width: min(560px, 88%); text-align: center; padding: 38px 20px; }
.external-fallback-copy > span { color: var(--orange); font-size: .68rem; font-weight: 900; letter-spacing: .14em; }
.external-fallback-copy h3 { margin-top: 10px; font-size: clamp(2rem, 6vw, 3.25rem); }
.external-fallback-copy p { color: #c0cbc3; line-height: 1.5; }
.external-fallback-copy .external-video-title { margin: 8px auto 14px; max-width: 46ch; color: #fff; font-weight: 800; }
.external-fallback-copy button, .external-fallback-copy a { min-height: 48px; display: inline-grid; place-items: center; margin-top: 7px; padding: 0 19px; border: 0; border-radius: 9px; color: #fff; background: #e62117; font-weight: 900; text-decoration: none; }
.resume-banner { position: fixed; z-index: 50; right: 20px; bottom: 20px; width: min(440px, calc(100% - 40px)); display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 16px 17px; border: 1px solid #627b69; border-radius: 14px; color: var(--white); background: rgba(12, 23, 17, .97); box-shadow: 0 22px 75px rgba(0,0,0,.55); backdrop-filter: blur(14px); }
.resume-banner[hidden] { display: none; }
.resume-banner strong, .resume-banner small { display: block; }
.resume-kicker { display: block; margin-bottom: 3px; color: var(--lime); font-size: .58rem; font-weight: 900; letter-spacing: .12em; }
.resume-banner strong { font: 900 1.3rem "Barlow Condensed", sans-serif; text-transform: uppercase; }
.resume-banner small { margin-top: 3px; color: var(--muted); font-size: .68rem; line-height: 1.4; }
.resume-actions { flex: 0 0 auto; display: grid; gap: 4px; }
.resume-actions button { min-height: 38px; padding: 0 12px; border: 0; border-radius: 7px; color: var(--ink); background: var(--lime); font-size: .66rem; font-weight: 900; }
.resume-actions .resume-dismiss { min-height: 28px; color: var(--muted); background: transparent; font-weight: 700; }

@media (max-width: 600px) {
  .resume-banner { right: 12px; bottom: 12px; width: calc(100% - 24px); }
  .external-fallback { min-height: 310px; }
  .facebook-embed-shell { min-height: 0; grid-template-columns: 1fr; gap: 10px; padding: 10px; }
  .facebook-embed-frame { min-height: 470px; }
  .facebook-embed-actions { padding: 8px; }
  .facebook-embed-actions a, .facebook-embed-actions button { flex: 1 1 150px; }
}

.admin-main { max-width: 1260px; padding-top: 44px; }
.admin-heading h1 { max-width: none; font-size: clamp(3.2rem, 7vw, 6rem); }
.admin-heading > p:last-child { max-width: 720px; color: var(--muted); line-height: 1.6; }
.admin-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 28px 0 18px; }
.admin-stats div { padding: 18px; border: 1px solid var(--line); border-radius: 13px; background: var(--panel); }
.admin-stats strong { display: block; color: var(--lime); font: 900 2.6rem/1 "Barlow Condensed", sans-serif; }
.admin-stats span { display: block; margin-top: 6px; color: var(--muted); font-size: .76rem; }
.pending-reels-panel { display: grid; grid-template-columns: minmax(210px,.7fr) 2fr; gap: 20px; align-items: center; padding: 20px; border: 1px solid #4b5e51; border-radius: 13px; background: #0c1811; }
.pending-reels-panel h2 { font-size: 1.7rem; }
.beta-gate { margin-top: 20px; padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: rgba(10, 26, 18, .76); }
.beta-gate-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.beta-gate-heading h2 { margin: 4px 0 0; font-family: var(--display); font-size: clamp(1.55rem, 3vw, 2.45rem); }
.beta-gate-status { flex: 0 0 auto; border: 1px solid #8a5b41; border-radius: 99px; padding: 9px 12px; color: #ffb58c; font: 900 .7rem Inter, sans-serif; letter-spacing: .08em; }
.beta-gate-status.open { border-color: #6ba345; color: var(--acid); }
.beta-gate-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; margin-top: 20px; }
.beta-check { display: flex; gap: 12px; min-height: 90px; padding: 14px; border: 1px solid var(--line); border-radius: 12px; }
.beta-check > span { color: var(--muted); font-size: 1.2rem; }
.beta-check.pass > span { color: var(--acid); }
.beta-check strong, .beta-check small { display: block; }
.beta-check strong { color: var(--paper); font-size: .86rem; }
.beta-check small { margin-top: 6px; color: var(--muted); line-height: 1.4; }
.pending-player-list { display: flex; flex-wrap: wrap; gap: 8px; }
.pending-player-list > span { display: grid; grid-template-columns: auto 1fr; gap: 2px 7px; align-items: center; padding: 9px 11px; border: 1px solid #3a4d40; border-radius: 9px; color: var(--white); font-size: .76rem; }
.pending-player-list b { color: var(--lime); font-size: .65rem; }
.pending-player-list small { grid-column: 1 / -1; color: #7f8e84; font-size: .62rem; }
.pending-roster-empty { margin: 0; color: var(--muted); font-size: .78rem; line-height: 1.5; }
.admin-view-switch { display: inline-grid; grid-template-columns: repeat(2, auto); gap: 6px; margin-top: 28px; padding: 5px; border: 1px solid #405247; border-radius: 12px; background: #09130e; }
.admin-view-button { min-height: 42px; padding: 0 15px; color: var(--muted); border: 1px solid transparent; border-radius: 8px; background: transparent; font-size: .76rem; font-weight: 800; }
.admin-view-button span { display: inline-grid; min-width: 23px; height: 23px; margin-left: 7px; place-items: center; border-radius: 999px; color: var(--muted); background: #17251c; font-size: .65rem; }
.admin-view-button.active { color: var(--ink); border-color: var(--lime); background: var(--lime); }
.admin-view-button.active span { color: var(--white); background: var(--ink); }
.admin-controls { display: grid; grid-template-columns: repeat(3,minmax(160px,1fr)) auto; gap: 12px; align-items: end; margin: 28px 0 16px; }
.admin-controls > [hidden] { display: none; }
.sheet-button { min-height: 50px; display: grid; place-items: center; padding: 0 18px; border-radius: 10px; color: var(--ink); background: var(--lime); text-decoration: none; font-size: .72rem; font-weight: 900; }
.admin-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.admin-card { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: var(--panel); }
.admin-thumb { position: relative; width: 100%; aspect-ratio: 16/9; padding: 0; border: 0; background: #000; overflow: hidden; }
.admin-thumb img { width: 100%; height: 100%; display: block; object-fit: cover; opacity: .82; }
.admin-thumb .mini-play { position: absolute; inset: 0; margin: auto; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; color: var(--ink); background: var(--lime); }
.admin-card-body { padding: 15px; }
.admin-card-flags { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.admin-id-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 10px; }
.review-id { color: var(--white); font: 900 1.25rem/1 "Barlow Condensed", sans-serif; letter-spacing: .08em; }
.audit-pill { border: 1px solid #4a5c50; border-radius: 999px; padding: 4px 7px; color: var(--muted); font-size: .56rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.audit-pill.approved { color: var(--lime); border-color: #52752f; }
.audit-pill.rejected { color: #ff9a7e; border-color: #814432; }
.audit-pill.needs-review { color: #f5c96a; border-color: #6c5a2b; }
.verify-pill { color: #f5c96a; font-size: .56rem; font-weight: 900; letter-spacing: .06em; }
.verify-pill.pass { color: var(--lime); }
.verify-pill.fail { color: #ff9275; }
.admin-player { margin: 3px 0 5px; color: var(--orange); font-size: .68rem; font-weight: 800; letter-spacing: .08em; }
.admin-card h3 { font: 800 1.3rem/1.05 "Barlow Condensed", sans-serif; }
.admin-meta { color: #819087; font-size: .68rem; line-height: 1.45; }
.admin-note { min-height: 54px; color: #c8d2ca; font-size: .74rem; line-height: 1.5; }
.review-evidence { margin: 10px 0; color: #c8d2ca; font-size: .74rem; line-height: 1.5; }
.review-evidence summary { cursor: pointer; color: #d8ef88; }
.review-evidence summary:focus-visible { outline: 2px solid #d8ef88; outline-offset: 4px; }
.review-evidence p { margin: 6px 0; }
.roster-pulse { margin: 0 0 20px; border: 1px solid #314735; border-radius: 12px; background: #111e16; padding: 14px 18px; font-size: .875rem; }
.roster-pulse summary { cursor: pointer; min-height: 44px; padding: 8px 0; }
.roster-pulse summary strong { color: #d8ef88; margin-right: 12px; }
.roster-pulse summary span { color: #c8d2ca; overflow-wrap: anywhere; }
.pulse-context,.roster-pulse>p { color: #abbcaf; line-height: 1.5; margin: 10px 0; }
.pulse-item { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 14px 0; border-top: 1px solid #314735; }
.pulse-item strong,.pulse-item span,.pulse-item small { display: block; }
.pulse-item span { color: #d8ef88; margin: 4px 0; }.pulse-item p { margin: 6px 0; line-height: 1.5; overflow-wrap: anywhere; }
.pulse-item small { color: #abbcaf; }.pulse-item .text-button { min-height: 44px; font-size: .875rem; }
.roster-pulse summary:focus-visible,.team-settings-dialog button:focus-visible { outline: 2px solid #d8ef88; outline-offset: 4px; }
.team-identity { display: flex; gap: 12px; align-items: center; min-width: 0; }.team-identity h1 { overflow-wrap: anywhere; }
#teamLogo { width: 52px; height: 52px; object-fit: cover; border-radius: 12px; flex: 0 0 52px; }
#teamLogo[hidden] { display: none; }
.roster-heading-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.team-settings-dialog { width: min(520px,calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow-y: auto; color: #edf3ed; background: #111e16; border: 1px solid #314735; border-radius: 12px; padding: 24px; }
.team-settings-dialog::backdrop { background: rgb(0 0 0 / .72); }.team-settings-dialog p { font-size: .875rem; line-height: 1.5; color: #c8d2ca; }
.team-settings-dialog label { display: flex; gap: 10px; flex-wrap: wrap; margin: 14px 0; font-size: .875rem; align-items: center; }
.team-settings-dialog label>input:not([type=checkbox]) { width: 100%; min-height: 44px; padding: 10px; color: #edf3ed; background: #08110d; border: 1px solid #52644f; border-radius: 6px; font-size: 1rem; }
.team-settings-dialog fieldset { border: 1px solid #314735; margin: 16px 0; }.team-settings-dialog fieldset label { min-height: 32px; }
.team-settings-actions { display: flex; flex-wrap: wrap; gap: 14px; }.team-settings-actions button { min-height: 44px; }
@media(max-width:600px) { .pulse-item { grid-template-columns: minmax(0,1fr); gap: 6px; }.pulse-item .text-button { justify-self: start; }.roster-pulse summary strong,.roster-pulse summary span { display: block; }.team-identity { align-items: start; }.team-settings-dialog { padding: 18px; } }
.admin-card-actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-top: 12px; border-top: 1px solid var(--line); }
.admin-card-actions button, .admin-card-actions a { color: var(--lime); background: none; border: 0; padding: 0; text-decoration: none; font-size: .68rem; font-weight: 900; }
.embed-test-status { padding: 10px 20px; color: #f5c96a; background: #2a210e; font-size: .73rem; }
.embed-test-status.pass { color: var(--lime); background: #102315; }
.embed-test-status.fail { color: #ffb29d; background: #30130c; }
.review-controls { display: grid; grid-template-columns: 1fr 1fr auto; gap: 7px; margin: 12px 0; padding: 11px 0; border-top: 1px solid var(--line); }
.rejection-reason { grid-column: 1 / -1; display: grid; gap: 5px; color: var(--muted); font-size: .58rem; font-weight: 900; letter-spacing: .08em; }
.rejection-reason select { min-height: 38px; padding: 0 9px; border: 1px solid var(--line); border-radius: 5px; color: var(--white); background: #102018; font: inherit; letter-spacing: 0; }
.review-action { min-height: 36px; border: 1px solid #405448; border-radius: 7px; color: var(--muted); background: #14231a; font-size: .65rem; font-weight: 900; }
.review-action.approve.selected { color: var(--ink); border-color: var(--lime); background: var(--lime); }
.review-action.reject.selected { color: #fff; border-color: #a7442d; background: #7b2b1d; }
.live-toggle { display: flex; align-items: center; gap: 6px; padding: 0 7px; color: var(--muted); font-size: .6rem; font-weight: 900; }
.live-toggle input { accent-color: var(--lime); }
.publish-panel { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 18px 0 24px; padding: 20px; border: 1px solid #52752f; border-radius: 14px; background: linear-gradient(135deg,#112519,#0b1710); }
.publish-panel h2 { font-size: 1.8rem; }
.publish-panel p:last-child { margin: 7px 0 0; color: var(--muted); font-size: .75rem; }
.publish-actions { display: grid; justify-items: end; gap: 7px; }
.publish-actions button { min-height: 48px; padding: 0 18px; border: 0; border-radius: 9px; color: var(--ink); background: var(--lime); font-size: .7rem; font-weight: 900; }
.publish-actions button:disabled { opacity: .55; cursor: wait; }
.publish-actions .secondary-publish { border: 1px solid #52752f; color: var(--lime); background: transparent; }
.account-card{position:relative}.account-gate-close{position:absolute;top:18px;right:18px;display:grid;place-items:center;width:38px;height:38px;border:1px solid #45604f;border-radius:50%;background:#0a1810;color:#dce5df;font-size:1.4rem}.account-guest{width:100%;min-height:46px;margin-top:10px;border:1px solid #45604f;border-radius:8px;background:transparent;color:#dce5df;font-size:.72rem;font-weight:900;letter-spacing:.08em}.guest-account-button{white-space:nowrap}
.publish-actions span { min-height: 1em; color: var(--muted); font-size: .68rem; }
@media (max-width: 720px) { .publish-panel { align-items: stretch; flex-direction: column; } .publish-actions { justify-items: stretch; } .review-controls { grid-template-columns: 1fr 1fr; } .live-toggle { grid-column: 1 / -1; min-height: 34px; } }

@media (max-width: 760px) {
  .topbar { height: 60px; padding: 0 16px; }
  .season-badge { font-size: .63rem; }
  .topbar-actions { gap: 8px; }
  main { padding: 40px 16px 54px; }
  .intro::after { font-size: 11rem; top: -30px; }
  h1 { font-size: clamp(3.55rem, 19vw, 5.2rem); }
  .lede { font-size: 1rem; }
  .builder { padding: 19px 16px; }
  .builder-heading { align-items: flex-start; }
  .builder-actions { display: grid; justify-items: end; gap: 0; }
  .select-row { grid-template-columns: 1fr 1.6fr; }
  .add-button { grid-column: 1 / -1; }
  .roster-strip { display: block; }
  .coverage-note { margin-left: 0; }
  .roster-meta { display: flex; align-items: center; justify-content: space-between; min-width: 0; padding-bottom: 10px; }
  .roster-count { padding: 0; }
  .save-status { margin: 0; }
  .watch-section { margin-top: 52px; }
  .weekly-flow { padding: 19px 16px; }
  .weekly-flow ol { grid-template-columns: 1fr; }
  .watch-heading { display: block; }
  .content-switch { margin-top: 18px; grid-template-columns: 1fr 1fr; }
  .card-grid { grid-template-columns: 1fr; }
  .card-head { padding: 18px 16px 14px; }
  .game-environment { margin-inline: 16px; }
  .environment-heading { align-items: flex-start; flex-direction: column; gap: 6px; }
  .environment-heading strong { max-width: 100%; line-height: 1.25; }
  .player-intro { margin-inline: 16px; }
  .environment-grid { grid-template-columns: 1fr 1fr; }
  .carousel-meta { padding-inline: 16px; }
  .video-track { grid-auto-columns: 88%; padding-inline: 16px; scroll-padding-inline: 16px; }
  .carousel-nav { padding-inline: 16px; }
  footer { display: block; padding: 22px 16px; }
  .admin-stats { grid-template-columns: 1fr; }
  .pending-reels-panel { grid-template-columns: 1fr; }
  .admin-controls { grid-template-columns: 1fr 1fr; }
  .sheet-button { grid-column: 1 / -1; }
  .admin-grid { grid-template-columns: 1fr; }
  .beta-gate-heading, .shared-arrival { align-items: flex-start; flex-direction: column; }
  .beta-gate-grid { grid-template-columns: 1fr; }
  .shared-arrival { width: auto; margin-inline: 14px; }
  .shared-arrival > div { flex-wrap: wrap; }
}

@media (max-width: 440px) {
  /* Only collapse the admin text label; keep the roster lockup and icon visible. */
  .brand:not(.roster-wordmark) > span:last-child:not(.brand-play-icon) { display: none; }
  .admin-link { font-size: .62rem; }
  .select-row { grid-template-columns: 1fr; }
  .add-button { grid-column: auto; }
  .video-track { grid-auto-columns: 91%; }
  .environment-grid { grid-template-columns: 1fr; }
}

/* Roster hub v78 */
[hidden] { display: none !important; }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; clip-path: inset(50%) !important; }
main#top { max-width: none; padding: 0 0 72px; }
.roster-topbar { position: sticky; z-index: 60; top: 0; display: grid; grid-template-columns: auto auto minmax(0,1fr) auto; min-height: 68px; align-items: center; column-gap: 48px; padding: 0 clamp(18px,4vw,48px); border-bottom: 1px solid #294234; background: rgba(4,15,11,.96); backdrop-filter: blur(15px); }
.roster-wordmark { display: grid; justify-self: start; width: max-content; grid-template-columns: max-content 35px; grid-template-rows: auto auto; column-gap: 5px; row-gap: 1px; align-items: center; color: #f5faf6; font-family: "Barlow Condensed",Arial,sans-serif; letter-spacing: 0; text-decoration: none; }
.roster-brand-type { display: inline-flex; grid-column: 1; grid-row: 1; align-items: baseline; gap: 0; font: italic 950 1.92rem/.84 "Barlow Condensed",Arial,sans-serif; letter-spacing: -.045em; white-space: nowrap; }
.roster-brand-type strong { color: var(--acid); }
.roster-wordmark small { grid-column: 1; grid-row: 2; color: #f5faf6; font: 900 .49rem/1 Arial,sans-serif; letter-spacing: .105em; white-space: nowrap; }
.roster-wordmark .brand-play-icon { grid-column: 2; grid-row: 1 / span 2; width: 31px; height: 34px; }
.roster-nav { display: flex; height: 68px; align-items: stretch; gap: 20px; margin-left: 8px; }
.roster-nav a { display: flex; min-width: 92px; align-items: center; justify-content: center; border-bottom: 3px solid transparent; color: #c5d0c8; font-weight: 800; text-decoration: none; }
.roster-nav a.active { border-color: var(--acid); color: var(--acid); }
.roster-page-heading { display: flex; width: min(100% - 48px,1500px); align-items: end; justify-content: space-between; gap: 30px; margin: 30px auto 20px; }
.roster-page-heading h1 { margin: 0; color: #f7fbf7; font-size: clamp(2.8rem,4vw,4.4rem); line-height: .9; text-transform: none; }
.roster-page-heading p { margin: 8px 0 0; color: #b9c7be; font-size: 1rem; }
.roster-heading-actions { display: flex; align-items: center; gap: 20px; }
.roster-tagline { position: relative; display: inline-block; color: var(--acid); font: italic 700 1.12rem/1.1 "Segoe Print","Bradley Hand",cursive; letter-spacing: -.04em; white-space: nowrap; transform: rotate(-2deg); }
.roster-tagline::after { position: absolute; right: 5%; bottom: -8px; width: 46%; height: 8px; border-top: 3px solid var(--acid); border-radius: 50%; content: ""; opacity: .95; transform: skewX(-28deg) rotate(-2deg); }
.topbar-tagline { justify-self: end; margin: 0 4px 5px 0; }
.manage-roster-button { min-height: 42px; padding: 0 16px; border: 1px solid #486655; border-radius: 6px; color: var(--acid); background: #0b1d14; font-weight: 900; cursor: pointer; }
.roster-builder { width: min(100% - 48px,1500px); margin: 0 auto 24px; }
.roster-watch { width: min(100% - 48px,1500px); margin: 0 auto; }
.roster-watch .watch-summary,.roster-watch .queue-button,.legacy-content-switch { display: none !important; }
.roster-watch .queue-button { min-height: 52px; margin-bottom: 20px; padding: 9px 16px; border-radius: 8px; }
.roster-watch .queue-button strong { font-size: .82rem; }
.roster-watch .queue-button small { font-size: .68rem; }
#playerCards.card-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch; gap: 18px; }
.player-card { position: relative; display: flex; height: 100%; min-width: 0; flex-direction: column; overflow: hidden; padding: 0; border: 1px solid #456e50; border-radius: 12px; background: linear-gradient(145deg,#071b13,#06130e 70%); box-shadow: 0 14px 38px rgba(0,0,0,.18); transform: none; }
.player-card:hover { transform: none; }
.player-card .card-accent { display: none; }
.player-identity { position: relative; display: grid; grid-template-columns: 210px minmax(0,1fr); min-height: 98px; align-items: center; overflow: hidden; border-bottom: 1px solid color-mix(in srgb,var(--team-primary) 38%,#173426); background: radial-gradient(circle at 13% 25%,color-mix(in srgb,var(--team-secondary) 24%,transparent),transparent 36%),linear-gradient(108deg,color-mix(in srgb,var(--team-primary) 82%,#06110c) 0%,color-mix(in srgb,var(--team-primary) 56%,#06110c) 54%,color-mix(in srgb,var(--team-primary) 22%,#06110c) 100%); }
.identity-art { position: relative; align-self: stretch; overflow: hidden; }
.identity-art img { position: absolute; z-index: 1; right: 13px; bottom: -60px; width: 150px; height: 175px; object-fit: contain; opacity: .98; filter: grayscale(.58) sepia(.12) brightness(1.55) contrast(1.08); mix-blend-mode: screen; }
.player-identity[data-position="RB"] .identity-art img { right: 5px; bottom: -58px; width: 145px; }
.player-identity[data-position="WR"] .identity-art img { right: 0; bottom: -61px; width: 150px; }
.player-identity[data-position="TE"] .identity-art img { right: 0; bottom: -60px; width: 154px; }
.identity-art strong { position: absolute; z-index: 2; bottom: 10px; left: 16px; color: white; font: italic 950 2.3rem/1 "Barlow Condensed",Arial,sans-serif; text-shadow: 0 3px 8px rgba(0,0,0,.55); }
.identity-art span { position: absolute; z-index: 2; top: 13px; left: 17px; display: inline-grid; min-width: 32px; min-height: 23px; place-items: center; border: 1px solid color-mix(in srgb,var(--position-color) 72%,white); border-radius: 4px; color: #06110b; background: var(--position-color); font-size: .62rem; font-weight: 950; letter-spacing: .06em; box-shadow: 0 3px 10px rgba(0,0,0,.24); }
.identity-copy { position: relative; z-index: 3; min-width: 0; padding: 18px 58px 18px 12px; }
.identity-copy h3 { margin: 0; overflow: hidden; color: #fff; font-size: clamp(1.45rem,2.2vw,2rem); line-height: 1; text-overflow: ellipsis; white-space: nowrap; }
.identity-copy p { display: flex; gap: 9px; margin: 9px 0 0; color: #c2cec6; font-size: .82rem; }
.identity-copy p b { color: var(--position-color); }
.identity-copy p i { color: #84978b; font-style: normal; }
.identity-team { position: absolute; z-index: 1; right: 54px; color: rgba(230,242,233,.11); font: italic 950 3.35rem/1 "Barlow Condensed",Arial,sans-serif; letter-spacing: -.03em; transform: skew(-6deg); }
.remove-player-card { position: absolute; z-index: 5; top: 11px; right: 12px; display: grid; width: 34px; height: 34px; place-items: center; border: 0; border-radius: 50%; color: #cbd6cf; background: rgba(3,12,8,.54); font-size: 1.2rem; cursor: pointer; }
.content-primary-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; padding: 12px 14px 0; }
.primary-content-tab { display: flex; min-height: 44px; align-items: center; justify-content: center; gap: 9px; border: 1px solid #345947; border-radius: 5px; color: #d5ded8; background: #071710; font: 850 .79rem/1 Arial,sans-serif; cursor: pointer; }
.primary-content-tab.active { border-color: var(--acid); color: #071009; background: var(--acid); }
.primary-content-tab span { font-size: .9rem; }
.player-content-panel { min-height: 246px; flex: 1; padding: 10px 14px 13px; }
.reel-subfilters { display: flex; max-width: 100%; gap: 22px; overflow-x: auto; padding: 0 4px 9px; scrollbar-width: none; }
.reel-subfilters::-webkit-scrollbar { display: none; }
.reel-tab { flex: 0 0 auto; min-height: 35px; padding: 0 0 5px; border: 0; border-bottom: 3px solid transparent; border-radius: 0; color: #a8b5ad; background: transparent; font-size: .72rem; font-weight: 800; cursor: pointer; }
.reel-tab.active { border-color: var(--acid); color: var(--acid); background: transparent; }
.content-carousel { min-width: 0; }
.video-track { display: grid; grid-auto-columns: calc((100% - 24px)/3); grid-auto-flow: column; gap: 12px; overflow-x: auto; padding: 0 0 5px; scroll-snap-type: x mandatory; scrollbar-width: none; }
.video-track::-webkit-scrollbar { display: none; }
.compact-content-card { min-width: 0; overflow: hidden; border: 1px solid #294a3a; border-radius: 7px; background: #06140e; scroll-snap-align: start; }
.compact-content-card .thumb { position: relative; display: block; width: 100%; aspect-ratio: 16/8.5; overflow: hidden; border: 0; border-radius: 0; padding: 0; background: #0b1912; cursor: pointer; }
.compact-content-card .thumb img { width: 100%; height: 100%; object-fit: cover; }
.compact-content-card .external-source-thumb { min-height: 100%; }
.mini-play { position: absolute; left: 50%; top: 50%; display: grid; width: 38px; height: 38px; place-items: center; border: 2px solid white; border-radius: 50%; color: white; background: rgba(0,0,0,.66); font-size: .7rem; transform: translate(-50%,-50%); }
.duration-badge { position: absolute; right: 5px; bottom: 5px; padding: 3px 5px; border-radius: 3px; color: white; background: rgba(0,0,0,.82); font-size: .58rem; font-weight: 900; }
.video-copy { display: grid; gap: 5px; padding: 8px; }
.lane-badge { display: inline; margin: 0; padding: 0; border-radius: 0; color: var(--acid); background: transparent; font-size: .56rem; font-weight: 950; letter-spacing: .06em; text-transform: uppercase; }
.video-copy h4 { display: -webkit-box; min-height: 2.45em; margin: 0; overflow: hidden; color: #f2f6f3; font: 800 .78rem/1.25 Arial,sans-serif; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.content-source { margin: 0; overflow: hidden; color: #aebbb2; font-size: .62rem; text-overflow: ellipsis; white-space: nowrap; }
.video-actions { margin-top: 3px; }
.feedback-row { display: flex; align-items: center; gap: 4px; color: #78887e; font-size: .54rem; }
.feedback-button { min-width: 25px; min-height: 25px; padding: 0; border: 1px solid #294637; border-radius: 4px; background: #0b1c13; font-size: .7rem; }
.share-video { margin-left: auto; padding: 4px; border: 0; color: #8ca095; background: none; font-size: .51rem; }
.feedback-reasons { display: flex; flex-wrap: wrap; gap: 4px; padding-top: 6px; }
.feedback-reason { padding: 3px 5px; border: 1px solid #345340; border-radius: 3px; color: #aeb9b2; background: transparent; font-size: .48rem; }
.feedback-reason.selected { color: #071009; background: var(--acid); }
.request-review-actions { display:flex; gap:6px; margin-top:8px; }
.request-review-actions button { padding:6px 8px; border:1px solid #587763; border-radius:4px; color:#071009; background:var(--acid); font-size:.55rem; font-weight:900; cursor:pointer; }
.request-review-actions button:last-child { color:#f5d5cf; background:#401b18; border-color:#77413c; }
.carousel-nav { display: flex; min-height: 35px; align-items: center; justify-content: space-between; padding: 6px 2px 0; }
.swipe-hint { color: #85958b; font-size: .61rem; font-weight: 800; }
.nav-buttons { display: flex; gap: 6px; }
.carousel-button { display: grid; width: 30px; height: 30px; place-items: center; border: 1px solid #3c5e4b; border-radius: 50%; color: #eef5ef; background: #0a1c13; cursor: pointer; }
.carousel-button:disabled { opacity: .35; }
.article-item { display: grid; grid-template-rows: auto 1fr; color: inherit; text-decoration: none; }
.article-image { position: relative; display: block; aspect-ratio: 16/8.5; overflow: hidden; background: linear-gradient(135deg,#193625,#08150f); }
.article-image img { position: relative; z-index: 1; width: 100%; height: 100%; object-fit: cover; }
.article-fallback { position: absolute; inset: 0; display: grid; align-content: center; gap: 6px; padding: 14px; color: var(--acid); background: linear-gradient(135deg,#193625,#08150f); text-align: left; }
.article-fallback small { color: #91a299; font-size: .57rem; font-weight: 900; letter-spacing: .15em; }
.article-fallback b { display: -webkit-box; overflow: hidden; font: italic 950 1.28rem/1.02 "Barlow Condensed",Arial,sans-serif; text-transform: uppercase; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.article-copy { display: grid; align-content: space-between; gap: 10px; min-height: 92px; padding: 9px; }
.article-copy b { display: -webkit-box; overflow: hidden; color: #f2f6f3; font-size: .77rem; line-height: 1.3; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.article-copy small { color: #9fafa5; font-size: .6rem; }
.content-empty,.compact-pending { display: grid; min-height: 190px; align-content: center; justify-items: center; padding: 25px; border: 1px dashed #345442; border-radius: 8px; color: #aab7af; text-align: center; }
.content-empty strong,.compact-pending h4 { margin: 0 0 8px; color: #eff5f0; font-size: 1rem; }
.content-empty span,.compact-pending p { max-width: 430px; margin: 0; font-size: .78rem; line-height: 1.5; }
.compact-pending .pending-icon { margin-bottom: 10px; color: var(--acid); font-size: 1.4rem; }
.player-content-panel .game-environment { margin: 0; padding: 15px; border-radius: 8px; }
.player-content-panel .environment-heading { align-items: center; }
.player-content-panel .environment-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.player-content-panel .environment-grid > div { min-height: 88px; padding: 12px; }
.player-content-panel .game-environment > p { margin: 12px 0 0; font-size: .72rem; }
.roster-watch + * { clear: both; }

@media (max-width: 1000px) {
  .roster-topbar { gap: 18px; }
  .roster-tagline { display: none; }
  #playerCards.card-grid { grid-template-columns: 1fr; }
  .player-content-panel .environment-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .roster-topbar { grid-template-columns: 1fr auto; min-height: 58px; padding: 0 14px; }
  .roster-brand-type { font-size: 1.45rem; }
  .roster-wordmark small { font-size: .39rem; }
  .roster-wordmark .brand-play-icon { width: 25px; height: 28px; }
  .roster-nav { display: none; }
  .topbar-actions .admin-link { display: none; }
  .roster-topbar .topbar-actions .admin-link {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    padding: 0 9px;
    border: 1px solid #466250;
    border-radius: 999px;
    color: var(--paper);
    font-size: 0;
    white-space: nowrap;
  }
  .roster-topbar .topbar-actions .admin-link::after {
    content: "ADMIN";
    color: var(--acid);
    font-size: .58rem;
    letter-spacing: .08em;
  }
  .roster-page-heading { display: grid; width: calc(100% - 28px); margin: 22px auto 15px; }
  .roster-page-heading h1 { font-size: 2.7rem; }
  .roster-page-heading p { font-size: .84rem; line-height: 1.45; }
  .roster-heading-actions { display: flex; justify-content: flex-end; gap: 9px; }
  .manage-roster-button { min-height: 40px; padding: 0 12px; font-size: .68rem; }
  .roster-builder,.roster-watch { width: calc(100% - 28px); }
  .roster-watch .watch-summary { display: none; }
  .roster-watch .queue-button { margin-bottom: 15px; }
  #playerCards.card-grid { gap: 18px; }
  .player-card { border-radius: 10px; }
  .player-identity { grid-template-columns: 132px minmax(0,1fr); min-height: 92px; }
  .identity-art img,.player-identity[data-position] .identity-art img { right: 0; bottom: -32px; width: 112px; height: 140px; }
  .identity-art strong { bottom: 8px; left: 10px; font-size: 1.75rem; }
  .identity-art span { top: 10px; left: 11px; font-size: .56rem; }
  .identity-copy { padding: 14px 43px 14px 8px; }
  .identity-copy h3 { font-size: clamp(1.22rem,6vw,1.55rem); }
  .identity-copy p { gap: 6px; font-size: .69rem; }
  .identity-team { right: 41px; font-size: 2.4rem; }
  .remove-player-card { top: 8px; right: 8px; width: 30px; height: 30px; }
  .content-primary-tabs { gap: 6px; padding: 9px 9px 0; }
  .primary-content-tab { min-height: 44px; gap: 6px; padding: 0 4px; font-size: .68rem; }
  .player-content-panel { min-height: 235px; padding: 8px 9px 10px; }
  .reel-subfilters { gap: 19px; padding-left: 2px; }
  .reel-tab { min-height: 40px; font-size: .68rem; }
  .video-track { grid-auto-columns: 78%; gap: 10px; }
  .video-copy h4 { font-size: .8rem; }
  .carousel-nav { min-height: 38px; }
  .player-content-panel .environment-grid { grid-template-columns: 1fr; }
  .player-content-panel .environment-heading { display: grid; gap: 8px; }
  .player-content-panel .environment-heading strong { justify-self: start; }
  .player-content-panel .environment-grid > div { min-height: 78px; }
}
@media (max-width: 390px) {
  .roster-page-heading,.roster-builder,.roster-watch { width: calc(100% - 20px); }
  .player-identity { grid-template-columns: 112px minmax(0,1fr); }
  .identity-copy h3 { font-size: 1.15rem; }
  .primary-content-tab span { display: none; }
  .video-track { grid-auto-columns: 84%; }
}

/* Article administration */
.article-admin { margin: 28px 0; padding: clamp(18px,3vw,30px); border: 1px solid #355443; border-radius: 14px; background: #0a1911; }
.article-workflow-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.article-workflow-toolbar button { min-height: 42px; padding: 0 14px; border: 1px solid #6d9d7d; border-radius: 6px; color: #071009; background: var(--acid); font-size: .7rem; font-weight: 950; cursor: pointer; }
.article-workflow-toolbar button.secondary-publish { color: #e8f2eb; background: #0d2116; }
.article-workflow-toolbar button:disabled { opacity: .45; cursor: default; }
.article-workflow-toolbar span { color: #a8b8ad; font-size: .72rem; }
.article-source-status { display: flex; flex-wrap: wrap; gap: 8px; margin: 13px 0 4px; }
.article-source-chip { display: inline-flex; align-items: center; gap: 7px; min-height: 32px; padding: 0 10px; border: 1px solid #31513d; border-radius: 999px; color: #a7b5ac; font-size: .64rem; }
.article-source-chip b { color: #e5eee8; }
.article-source-chip.active::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--acid); }
.article-source-chip.inactive { opacity: .55; }
.article-manual-entry { margin-top: 16px; border-top: 1px solid #294637; padding-top: 14px; }
.article-manual-entry summary { color: #c6d3ca; font-size: .75rem; font-weight: 900; cursor: pointer; }
.article-admin-form { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 13px; margin-top: 20px; }
.article-admin-form label { display: grid; gap: 7px; color: #9fb0a5; font-size: .68rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.article-admin-form input,.article-admin-form select { width: 100%; min-height: 45px; padding: 0 11px; border: 1px solid #456351; border-radius: 6px; color: #f2f7f3; background: #07120c; font: inherit; }
.article-admin-form button { min-height: 45px; align-self: end; border: 0; border-radius: 6px; color: #071009; background: var(--acid); font-weight: 950; cursor: pointer; }
.article-admin-list { display: grid; gap: 10px; margin-top: 22px; }
.article-admin-card { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 18px; padding: 15px; border: 1px solid #294637; border-radius: 8px; background: #07140e; }
.article-admin-card span { color: var(--acid); font-size: .62rem; font-weight: 900; text-transform: uppercase; }
.article-admin-card h3 { margin: 5px 0; color: #f1f6f2; font: 850 1rem/1.25 Arial,sans-serif; text-transform: none; }
.article-admin-card p { margin: 0; color: #9fafa4; font-size: .74rem; }
.article-admin-card > a { color: #dce6df; font-size: .68rem; font-weight: 900; }
.article-review-actions { display: flex; align-items: center; gap: 7px; }
.article-review-actions button { min-height: 36px; padding: 0 10px; border: 1px solid #587763; border-radius: 5px; color: #071009; background: var(--acid); font-size: .61rem; font-weight: 950; cursor: pointer; }
.article-review-actions button.reject { color: #f5d5cf; background: #401b18; }
.article-review-actions select { min-height: 36px; max-width: 190px; border: 1px solid #587763; border-radius: 5px; background: #111a13; color: #e8f0e9; padding: 0 8px; font-size: .66rem; }
.article-player-insights { display: grid; grid-template-columns: repeat(auto-fit,minmax(205px,1fr)); gap: 8px; margin: 12px 0 16px; }
.article-player-signal { display: grid; gap: 3px; padding: 10px 12px; border: 1px solid #33473a; border-radius: 7px; background: #101713; }
.article-player-signal.gap { border-color: #7a493e; background: #1c1311; }
.article-player-signal strong { font-size: .78rem; }
.article-player-signal span,.article-player-signal small { color: #aebbb1; font-size: .68rem; }
.article-recheck-title { margin: 20px 0 8px; color: #d5e4d8; font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; }
.article-admin-card.recheck { border-color: #8c6a30; }
.article-status { min-width: 95px; color: #a8b6ad !important; }
@media (max-width: 980px) { .article-admin-form { grid-template-columns: repeat(2,minmax(0,1fr)); } .article-admin-card { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .article-admin-form { grid-template-columns: 1fr; } .article-review-actions { flex-wrap: wrap; } }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}

.analytics-main { width: min(1440px, calc(100% - 48px)); margin: 0 auto; padding: 58px 0 80px; }
.analytics-state { margin-top: 28px; padding: 22px; border: 1px solid var(--line); border-radius: 14px; color: var(--muted); }
.analytics-state.error { color: #ffb3a7; }
.period-heading { margin: 38px 0 12px; color: var(--acid); font-weight: 900; letter-spacing: .14em; font-size: .75rem; }
.metric-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.metric-card, .milestone-card, .analytics-section { border: 1px solid var(--line); background: rgba(10, 26, 18, .72); border-radius: 16px; }
.metric-card { min-height: 154px; padding: 18px; display: flex; flex-direction: column; }
.metric-card span, .milestone-card span { color: var(--muted); font-size: .8rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.metric-card strong { margin-top: auto; font-family: var(--display); font-size: clamp(2.3rem, 4vw, 4rem); line-height: .9; color: var(--paper); }
.metric-card small, .milestone-card small { margin-top: 9px; color: var(--muted); line-height: 1.35; }
.analytics-section { margin-top: 34px; padding: 24px; }
.analytics-section h2 { margin: 4px 0 0; font-family: var(--display); font-size: clamp(1.7rem, 3vw, 2.5rem); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.section-heading > p { max-width: 360px; color: var(--muted); text-align: right; }
.milestone-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }
.milestone-card { padding: 18px; }
.milestone-card > div:first-child { display: flex; align-items: end; justify-content: space-between; gap: 12px; }
.milestone-card strong { font-family: var(--display); font-size: 2rem; color: var(--paper); }
.progress { height: 8px; margin: 20px 0 5px; overflow: hidden; border-radius: 99px; background: #17291f; }
.progress i { display: block; height: 100%; border-radius: inherit; background: var(--acid); }
.analytics-split { display: grid; grid-template-columns: 1.55fr 1fr; gap: 18px; }
.trend-chart { height: 220px; display: flex; align-items: end; gap: 5px; margin-top: 28px; padding-top: 18px; border-bottom: 1px solid var(--line); }
.trend-day { position: relative; flex: 1; height: 100%; min-width: 3px; }
.trend-day i { position: absolute; bottom: 0; left: 12%; width: 76%; min-height: 4px; border-radius: 4px 4px 0 0; background: #355843; }
.trend-day b { position: absolute; left: 50%; width: 7px; height: 7px; border-radius: 50%; background: var(--acid); transform: translate(-50%, 50%); }
.top-player-list { margin: 22px 0 0; padding: 0; list-style: none; }
.top-player-list li { display: grid; grid-template-columns: 1fr auto; gap: 3px 14px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.top-player-list li span { color: var(--paper); font-weight: 800; }
.top-player-list li strong { color: var(--acid); }
.top-player-list li small { grid-column: 1 / -1; color: var(--muted); }
.empty-copy { color: var(--muted); }
.definitions dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin: 22px 0 0; }
.definitions dt { color: var(--paper); font-weight: 900; }
.definitions dd { margin: 7px 0 0; color: var(--muted); line-height: 1.5; }
.cohort-table-wrap { margin-top: 22px; overflow-x: auto; }
.cohort-table { width: 100%; min-width: 650px; border-collapse: collapse; text-align: center; }
.cohort-table th, .cohort-table td { padding: 13px 14px; border-bottom: 1px solid var(--line); }
.cohort-table thead th { color: var(--muted); font-size: .76rem; text-transform: uppercase; letter-spacing: .06em; }
.cohort-table tbody th { color: var(--paper); text-align: left; }
.cohort-table td { color: var(--acid); font-weight: 800; }
@media (max-width: 1100px) { .metric-grid { grid-template-columns: repeat(3, 1fr); } .milestone-grid, .definitions dl { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 720px) { .analytics-main { width: min(100% - 28px, 1440px); padding-top: 34px; } .metric-grid { grid-template-columns: repeat(2, 1fr); } .analytics-split { grid-template-columns: 1fr; } .section-heading { display: block; } .section-heading > p { margin-top: 10px; text-align: left; } }
@media (max-width: 480px) { .metric-grid, .milestone-grid, .definitions dl { grid-template-columns: 1fr; } .metric-card { min-height: 125px; } }

/* Account access */
#accountSlot { position: relative; }
.account-control { position: relative; }
.account-button { min-height: 34px; padding: 0 11px; border: 1px solid #466250; border-radius: 999px; color: var(--paper); background: #102117; font: 900 .64rem/1 Arial, sans-serif; letter-spacing: .06em; cursor: pointer; }
.account-button span { margin-right: 5px; color: var(--acid); }
.account-menu { position: absolute; z-index: 80; top: calc(100% + 11px); right: 0; display: grid; width: 250px; gap: 7px; padding: 16px; border: 1px solid #496252; border-radius: 12px; background: #0c1b12; box-shadow: 0 18px 50px rgba(0,0,0,.38); }
.account-menu strong { color: var(--acid); font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; }
.account-menu span { overflow: hidden; color: var(--muted); font-size: .76rem; text-overflow: ellipsis; }
.account-menu button { justify-self: stretch; width: 100%; margin-top: 2px; padding: 9px 10px; border: 0; border-radius: 7px; color: var(--paper); background: transparent; font-weight: 800; text-align: left; text-decoration: underline; cursor: pointer; transition: background-color .16s ease,color .16s ease; }
.account-menu button:hover,.account-menu button:focus-visible { color: var(--acid); background: rgba(184,255,90,.09); outline: none; }
.account-menu button:disabled { opacity: .55; cursor: wait; }

/* League-aware waiver wire */
.waiver-main { width: min(100% - 48px,1500px); margin: 0 auto; padding: 0 0 72px; }
.waiver-main .roster-page-heading { width: 100%; }
.waiver-heading .section-kicker { margin-bottom: 7px; color: var(--acid); font-size: .68rem; font-weight: 950; letter-spacing: .12em; }
.waiver-status { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin: 0 0 18px; padding: 18px 20px; border: 1px solid #3c5d48; border-radius: 12px; background: linear-gradient(110deg,rgba(184,255,90,.1),rgba(8,24,15,.92) 48%); }
.waiver-status > div { display: grid; gap: 4px; }
.waiver-status span { color: var(--acid); font-size: .66rem; font-weight: 950; letter-spacing: .1em; }
.waiver-status strong { color: var(--paper); font-size: 1.05rem; }
.waiver-status p { margin: 0; color: #b6c5bb; font-size: .82rem; line-height: 1.45; }
.waiver-status .waiver-beta { flex: 0 0 auto; padding: 7px 9px; border: 1px solid rgba(184,255,90,.4); border-radius: 999px; background: rgba(5,17,10,.7); }
.waiver-filters { display: flex; gap: 8px; margin-bottom: 14px; overflow-x: auto; }
.waiver-filters button { min-width: 58px; min-height: 38px; padding: 0 15px; border: 1px solid #3d5d48; border-radius: 999px; color: #cad5cd; background: #0b1b12; font-weight: 900; cursor: pointer; }
.waiver-filters button:hover,.waiver-filters button:focus-visible { border-color: #6d9d79; color: var(--paper); outline: none; }
.waiver-filters button.active { border-color: var(--acid); color: #071009; background: var(--acid); }
.waiver-filter-note { margin: 0 0 16px; color: #91a197; font-size: .76rem; }
.waiver-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.waiver-player { min-width: 0; overflow: hidden; border: 1px solid #355540; border-radius: 14px; background: linear-gradient(145deg,#0d2116,#07140d); box-shadow: 0 14px 34px rgba(0,0,0,.2); }
.waiver-player > header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 16px 17px; border-bottom: 1px solid #284534; }
.waiver-position { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 9px; color: #071009; font-size: .74rem; font-weight: 950; }
.waiver-position[data-position="QB"] { background: #ed7d55; }
.waiver-position[data-position="RB"] { background: #61d89a; }
.waiver-position[data-position="WR"] { background: #63aef2; }
.waiver-position[data-position="TE"] { background: #bc8cf2; }
.waiver-player h2 { margin: 0; color: var(--paper); font: 900 1.55rem/1 "Barlow Condensed",sans-serif; text-transform: uppercase; }
.waiver-player header p { margin: 5px 0 0; color: #9eaea3; font-size: .72rem; }
.waiver-player header b { align-self: start; padding: 5px 7px; border-radius: 5px; color: var(--acid); background: rgba(184,255,90,.09); font-size: .58rem; letter-spacing: .08em; }
.waiver-video-list { display: grid; }
.waiver-video-list > a { display: grid; grid-template-columns: 142px minmax(0,1fr); gap: 13px; min-width: 0; padding: 13px 15px; border-bottom: 1px solid #213c2c; color: inherit; text-decoration: none; transition: background-color .16s ease; }
.waiver-video-list > a:last-child { border-bottom: 0; }
.waiver-video-list > a:hover,.waiver-video-list > a:focus-visible { background: rgba(184,255,90,.065); outline: none; }
.waiver-thumb { position: relative; display: grid; min-height: 78px; place-items: center; overflow: hidden; border-radius: 8px; background: #12271a; }
.waiver-thumb img { width: 100%; height: 100%; object-fit: cover; }
.waiver-thumb i { position: absolute; display: grid; place-items: center; width: 32px; height: 32px; border: 2px solid #f4fff6; border-radius: 50%; color: #071009; background: var(--acid); font-size: .68rem; font-style: normal; box-shadow: 0 4px 14px rgba(0,0,0,.38); }
.waiver-video-copy { display: grid; min-width: 0; align-content: center; gap: 5px; }
.waiver-video-copy small { overflow: hidden; color: var(--acid); font-size: .63rem; font-weight: 900; letter-spacing: .04em; text-overflow: ellipsis; white-space: nowrap; }
.waiver-video-copy strong { display: -webkit-box; overflow: hidden; color: #edf5ef; font-size: .82rem; line-height: 1.28; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.waiver-video-copy em { color: #899a8f; font-size: .66rem; font-style: normal; font-weight: 800; }
.waiver-state { display: grid; min-height: 220px; place-items: center; align-content: center; gap: 8px; padding: 35px; border: 1px dashed #385642; border-radius: 14px; color: #a9b8ae; background: #09170f; text-align: center; }
.waiver-state strong { color: var(--paper); font-size: 1.05rem; }
.waiver-state p { max-width: 520px; margin: 0; line-height: 1.5; }
.waiver-state button { min-height: 40px; padding: 0 15px; border: 1px solid var(--acid); border-radius: 7px; color: #071009; background: var(--acid); font-weight: 900; cursor: pointer; }
.waiver-disclaimer { margin: 18px 0 0; color: #829389; font-size: .7rem; line-height: 1.5; }
@media (max-width: 760px) {
  .roster-topbar { grid-template-rows: 58px 42px; }
  .roster-nav { display: flex; grid-column: 1 / -1; grid-row: 2; height: 42px; align-self: stretch; gap: 0; margin: 0 -14px; border-top: 1px solid #1d3427; }
  .roster-nav a { min-width: 0; flex: 1; padding: 0 14px; font-size: .72rem; }
  .waiver-main { width: calc(100% - 28px); }
  .waiver-main .roster-page-heading { width: 100%; }
  .waiver-status { align-items: start; padding: 15px; }
  .waiver-status .waiver-beta { margin-top: 1px; }
  .waiver-grid { grid-template-columns: 1fr; }
  .waiver-video-list > a { grid-template-columns: 118px minmax(0,1fr); padding: 11px; }
  .waiver-thumb { min-height: 68px; }
}
@media (max-width: 430px) {
  .waiver-main { width: calc(100% - 20px); }
  .waiver-status { display: grid; }
  .waiver-status .waiver-beta { justify-self: start; }
  .waiver-player > header { grid-template-columns: auto minmax(0,1fr); }
  .waiver-player header b { grid-column: 2; justify-self: start; }
  .waiver-video-list > a { grid-template-columns: 104px minmax(0,1fr); gap: 10px; }
}
.content-request-gate { position: fixed; z-index: 1100; inset: 0; display: grid; place-items: center; overflow-y: auto; padding: 22px; background: rgba(3,10,6,.86); backdrop-filter: blur(8px); }
.content-request-card { position: relative; width: min(100%, 620px); max-height: calc(100vh - 44px); overflow-y: auto; padding: clamp(25px,5vw,42px); border: 1px solid #476651; border-radius: 18px; background: linear-gradient(145deg,#102319,#08150e); box-shadow: 0 28px 90px rgba(0,0,0,.58); }
.content-request-card h2 { margin: 6px 0 10px; color: var(--paper); font: 900 clamp(2.35rem,7vw,3.7rem)/.92 "Barlow Condensed",sans-serif; text-transform: uppercase; }
.content-request-intro { margin: 0 42px 24px 0; color: #becbc2; font-size: .9rem; line-height: 1.55; }
.content-request-form { display: grid; gap: 15px; }
.content-request-form label { display: grid; gap: 7px; color: var(--acid); font-size: .7rem; font-weight: 900; letter-spacing: .08em; }
.content-request-form label small { color: #7f9185; font-size: .6rem; }
.content-request-form input[type="text"],.content-request-form input[type="url"],.content-request-form select,.content-request-form textarea { width: 100%; min-height: 47px; padding: 11px 13px; border: 1px solid #506b58; border-radius: 8px; color: #f2f8f3; background: #07120c; font: 500 .88rem/1.4 Arial,sans-serif; outline: none; }
.content-request-form textarea { min-height: 84px; resize: vertical; }
.content-request-form input:focus,.content-request-form select:focus,.content-request-form textarea:focus { border-color: var(--acid); box-shadow: 0 0 0 3px rgba(184,255,90,.1); }
.content-request-kind { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; padding: 0; border: 0; }
.content-request-kind legend { grid-column: 1/-1; margin-bottom: 7px; color: var(--acid); font-size: .7rem; font-weight: 900; letter-spacing: .08em; }
.content-request-kind label { display: flex; min-height: 44px; align-items: center; gap: 8px; padding: 10px 12px; border: 1px solid #385442; border-radius: 8px; color: #dce6df; background: #0b1b12; font-size: .78rem; letter-spacing: 0; cursor: pointer; }
.content-request-kind input { accent-color: var(--acid); }
.content-request-submit { min-height: 49px; border: 0; border-radius: 8px; color: #071009; background: var(--acid); font-size: .76rem; font-weight: 950; letter-spacing: .06em; cursor: pointer; }
.content-request-submit:disabled { opacity: .55; cursor: wait; }
.content-request-message { min-height: 1.4em; margin: -4px 0 0; color: #aebcb2; font-size: .75rem; line-height: 1.45; }
.content-request-history { display: grid; gap: 7px; margin-top: 22px; padding-top: 18px; border-top: 1px solid #2b4233; }
.content-request-history > strong { margin-bottom: 3px; color: #7f9185; font-size: .66rem; letter-spacing: .1em; }
.content-request-history > div { display: flex; align-items: center; justify-content: space-between; gap: 14px; color: #dce6df; font-size: .8rem; }
.content-request-history b { color: var(--acid); font-size: .62rem; letter-spacing: .06em; text-transform: uppercase; }
.content-request-history b[data-status="declined"] { color: #ff9b88; }
.sleeper-import-gate { position: fixed; z-index: 1120; inset: 0; display: grid; place-items: center; overflow-y: auto; padding: 22px; background: rgba(3,10,6,.88); backdrop-filter: blur(8px); }
.sleeper-import-card { position: relative; width: min(100%,700px); max-height: calc(100vh - 44px); overflow-y: auto; padding: clamp(25px,5vw,42px); border: 1px solid #486953; border-radius: 18px; background: linear-gradient(145deg,#102319,#08150e); box-shadow: 0 28px 90px rgba(0,0,0,.6); }
.sleeper-import-card h2 { margin: 6px 0 10px; color: var(--paper); font: 900 clamp(2.35rem,7vw,3.7rem)/.92 "Barlow Condensed",sans-serif; text-transform: uppercase; }
.sleeper-import-intro { max-width: 580px; margin: 0 42px 22px 0; color: #becbc2; font-size: .9rem; line-height: 1.55; }
.sleeper-connected { display: grid; gap: 3px; margin-bottom: 16px; padding: 13px 15px; border-left: 3px solid var(--acid); background: #0b1d12; }
.sleeper-connected span,.sleeper-preview-heading span { color: var(--acid); font-size: .62rem; font-weight: 900; letter-spacing: .1em; }
.sleeper-connected strong { color: var(--paper); font-size: .95rem; }
.sleeper-connected small { color: #84958a; font-size: .7rem; }
.sleeper-username-form { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 10px; }
.sleeper-username-form label { display: grid; gap: 7px; color: var(--acid); font-size: .7rem; font-weight: 900; letter-spacing: .08em; }
.sleeper-username-form input { width: 100%; min-height: 48px; padding: 0 13px; border: 1px solid #506b58; border-radius: 8px; color: #f2f8f3; background: #07120c; font: 500 .9rem Arial,sans-serif; outline: none; }
.sleeper-username-form input:focus { border-color: var(--acid); box-shadow: 0 0 0 3px rgba(184,255,90,.1); }
.sleeper-username-form button,.sleeper-import-submit { min-height: 48px; padding: 0 16px; border: 0; border-radius: 8px; color: #071009; background: var(--acid); font-size: .7rem; font-weight: 950; letter-spacing: .05em; cursor: pointer; }
.sleeper-username-form button:disabled,.sleeper-import-submit:disabled { opacity: .5; cursor: wait; }
.sleeper-league-list { display: grid; gap: 7px; margin-top: 18px; }
.sleeper-league-list > strong { color: #84958a; font-size: .65rem; letter-spacing: .09em; }
.sleeper-league-list button { display: flex; min-height: 54px; align-items: center; justify-content: space-between; gap: 16px; padding: 10px 13px; border: 1px solid #3a5744; border-radius: 8px; color: var(--paper); background: #0b1c12; text-align: left; cursor: pointer; }
.sleeper-league-list button:hover { border-color: var(--acid); }
.sleeper-league-list span { font-weight: 850; }
.sleeper-league-list small { color: #87968d; text-transform: capitalize; }
.sleeper-preview-heading { display: flex; align-items: end; justify-content: space-between; gap: 14px; margin-top: 22px; padding-bottom: 10px; border-bottom: 1px solid #30483a; }
.sleeper-preview-heading > div { display: grid; gap: 3px; }
.sleeper-preview-heading strong { color: var(--paper); font-size: 1.05rem; }
.sleeper-preview-heading b { color: var(--acid); font-size: .7rem; letter-spacing: .06em; }
.sleeper-player-list { display: grid; gap: 5px; margin: 10px 0 15px; }
.sleeper-player-list label { display: grid; grid-template-columns: auto 34px minmax(0,1fr) auto; align-items: center; gap: 9px; min-height: 43px; padding: 7px 9px; border: 1px solid #294233; border-radius: 7px; color: #dfe8e2; background: #0a1910; cursor: pointer; }
.sleeper-player-list input { width: 17px; height: 17px; accent-color: var(--acid); }
.sleeper-player-list span { display: grid; place-items: center; width: 30px; height: 24px; border-radius: 4px; color: #071009; background: var(--acid); font-size: .62rem; font-weight: 950; }
.sleeper-player-list span[data-position="RB"] { background: #77d8ff; }
.sleeper-player-list span[data-position="WR"] { background: #ffb15a; }
.sleeper-player-list span[data-position="TE"] { background: #d29bff; }
.sleeper-player-list strong { overflow: hidden; font-size: .82rem; text-overflow: ellipsis; white-space: nowrap; }
.sleeper-player-list small { color: #819086; font-size: .67rem; }
.sleeper-unmatched { margin: 10px 0 15px; padding: 11px 13px; border: 1px solid #5d4b2d; border-radius: 8px; color: #ddc18f; background: #211b0f; font-size: .75rem; }
.sleeper-unmatched summary { font-weight: 900; cursor: pointer; }
.sleeper-unmatched p { margin: 7px 0 0; color: #bda77e; }
.sleeper-import-submit { width: 100%; }
.sleeper-back { display: block; margin: 10px auto 0; border: 0; color: #aab7ae; background: none; font-size: .72rem; font-weight: 800; text-decoration: underline; cursor: pointer; }
.sleeper-import-message { min-height: 1.4em; margin: 13px 0 0; color: #aebcb2; font-size: .75rem; line-height: 1.45; }
.sleeper-attribution { margin: 12px 0 0; color: #66776c; font-size: .66rem; }
.sleeper-attribution a { color: #91a89a; }
.content-request-admin { margin: 24px 0; padding: 24px; border: 1px solid #2e4b38; border-radius: 14px; background: #0a1810; }
.content-request-admin-list { display: grid; gap: 10px; margin-top: 18px; }
.content-request-admin-card { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 16px; padding: 16px; border: 1px solid #304b39; border-radius: 10px; background: #0d1d13; }
.content-request-admin-card[data-request-status="new"] { border-left: 4px solid var(--acid); }
.content-request-admin-copy span { color: var(--acid); font-size: .62rem; font-weight: 900; letter-spacing: .08em; }
.content-request-admin-copy h3 { margin: 5px 0; color: var(--paper); font-size: 1rem; }
.content-request-admin-copy p { margin: 4px 0; color: #b8c5bc; font-size: .78rem; line-height: 1.45; }
.content-request-admin-copy small { color: #788a7e; font-size: .66rem; }
.content-request-admin-links { display: flex; align-items: start; gap: 10px; }
.content-request-admin-links a { color: var(--acid); font-size: .66rem; font-weight: 900; }
.content-request-admin-actions { grid-column: 1/-1; display: flex; flex-wrap: wrap; gap: 7px; }
.content-request-admin-actions button { padding: 7px 9px; border: 1px solid #557060; border-radius: 6px; color: #dfe9e2; background: #13281b; font-size: .6rem; font-weight: 900; cursor: pointer; }
.content-request-admin-actions button.reject { border-color: #77413c; color: #ffd0c7; background: #351613; }
@media (max-width: 620px) {
  .content-request-gate { align-items: start; padding: 10px; }
  .content-request-card { max-height: none; margin: 8px 0; padding: 25px 18px; }
  .content-request-kind { grid-template-columns: 1fr; }
  .content-request-admin-card { grid-template-columns: 1fr; }
  .sleeper-import-gate { align-items: start; padding: 10px; }
  .sleeper-import-card { max-height: none; margin: 8px 0; padding: 25px 18px; }
  .sleeper-username-form { grid-template-columns: 1fr; }
  .sleeper-player-list label { grid-template-columns: auto 31px minmax(0,1fr); }
  .sleeper-player-list small { grid-column: 3; }
}
.account-gate { position: fixed; z-index: 1000; inset: 0; display: grid; place-items: center; overflow-y: auto; padding: 22px; background: radial-gradient(circle at 73% 18%, var(--site-background-glow), transparent 31rem), linear-gradient(var(--site-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--site-grid-line) 1px, transparent 1px), var(--site-background); background-size: auto, 44px 44px, 44px 44px, auto; }
.account-card { position: relative; width: min(100%, 520px); overflow: hidden; padding: clamp(25px, 5vw, 46px); border: 1px solid #3c5a45; border-radius: 20px; background: linear-gradient(145deg, rgba(16,35,25,.98), rgba(9,21,14,.99)); box-shadow: 0 28px 90px rgba(0,0,0,.48); }
.account-card > * { position: relative; z-index: 1; }
.account-helmet { position: absolute; z-index: 0; top: 20px; right: 18px; width: clamp(96px, 28%, 150px); opacity: .17; filter: brightness(1.2) saturate(1.15); pointer-events: none; }
.account-brand { display: inline-flex; max-width: calc(100% - 92px); align-items: center; gap: 9px; margin-bottom: 34px; color: var(--paper); font: 900 .84rem/1 Arial, sans-serif; letter-spacing: .09em; text-decoration: none; }
.account-brand > .brand-play-icon { width: 34px; height: 36px; }
.account-brand > .account-brand-name { display: inline; width: auto; height: auto; color: inherit; background: none; }
.account-card h1 { max-width: 440px; margin: 6px 0 14px; font-size: clamp(2.8rem, 8vw, 4.6rem); line-height: .88; }
.account-intro { max-width: 440px; margin: 0 0 27px; color: #c7d3ca; font-size: .98rem; line-height: 1.55; }
.account-sign-in-options { display: grid; gap: 18px; }
.account-google { display: flex; min-height: 50px; align-items: center; justify-content: center; gap: 12px; border: 1px solid #789367; border-radius: 8px; color: #f3f8f3; background: #24422d; box-shadow: 0 8px 24px rgba(0,0,0,.16); font: 700 .875rem/1.2 Arial, sans-serif; letter-spacing: 0; cursor: pointer; }
.account-google svg { width: 18px; height: 18px; flex: 0 0 18px; }
.account-google:hover { border-color: #a0bd86; background: #2d5037; }
.account-google:focus-visible { outline: 3px solid rgba(184,255,90,.28); outline-offset: 2px; }
.account-google:disabled { color: #79847d; background: #121b16; box-shadow: none; cursor: wait; }
.account-divider { display: flex; align-items: center; gap: 12px; color: #849188; font-size: .72rem; font-weight: 900; letter-spacing: .1em; }
.account-divider::before, .account-divider::after { height: 1px; flex: 1; background: var(--line); content: ""; }
.account-form { display: grid; gap: 10px; }
.account-form label { color: var(--acid); font-size: .75rem; font-weight: 900; letter-spacing: .1em; }
.account-form input[type="email"] { width: 100%; min-height: 52px; padding: 0 15px; border: 1px solid #6f8877; border-radius: 9px; color: #f7fff2; -webkit-text-fill-color: #f7fff2; caret-color: var(--acid); background: #07120c; font: inherit; outline: none; }
.account-form input[type="email"]::placeholder { color: #8fa096; -webkit-text-fill-color: #8fa096; }
.account-form input[type="email"]:-webkit-autofill,
.account-form input[type="email"]:-webkit-autofill:hover,
.account-form input[type="email"]:-webkit-autofill:focus { -webkit-text-fill-color: #071009; caret-color: #071009; box-shadow: 0 0 0 1000px #e9f2ff inset; }
.account-form input[type="email"]:focus { border-color: var(--acid); box-shadow: 0 0 0 3px rgba(184,255,90,.12); }
.account-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; }
.account-email-trust { margin: -1px 0 2px; color: #94a39a; font-size: .74rem; line-height: 1.45; }
.account-turnstile { width: 100%; min-height: 65px; overflow: hidden; }
.account-form > button:not(.account-secondary) { min-height: 52px; margin-top: 4px; border: 0; border-radius: 9px; color: #071009; background: var(--acid); font-weight: 950; letter-spacing: .04em; cursor: pointer; }
.account-email-submit:not(:disabled) { border: 1px solid #607565 !important; color: #e9f0eb !important; background: #102117 !important; }
.account-email-submit:not(:disabled):hover { border-color: var(--acid) !important; background: #182c1e !important; }
.account-form button:disabled { color: #91a096; background: #26372c; opacity: 1; cursor: not-allowed; }
.account-secondary { justify-self: center; padding: 8px; border: 0; color: var(--muted); background: none; font-weight: 800; text-decoration: underline; cursor: pointer; }
.account-otp { display: flex; align-items: center; justify-content: center; margin: 6px 0 4px; }
.account-otp [data-slot="input-otp-group"] { display: flex; align-items: center; }
.account-otp-slot { position: relative; display: flex; width: 46px !important; height: 52px !important; align-items: center; justify-content: center; border: 1px solid #6f8877 !important; color: #f7fff2 !important; background: #07120c; font-size: 1.15rem !important; }
.account-otp-slot:first-child { border-radius: 8px 0 0 8px; }
.account-otp-slot:last-child { border-radius: 0 8px 8px 0; }
.account-otp-slot[data-active="true"] { border-color: var(--acid) !important; box-shadow: 0 0 0 3px rgba(184,255,90,.12) !important; }
.account-sent { display: grid; justify-items: start; gap: 12px; padding: 4px 0 2px; }
.account-sent-icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; color: #071009; background: var(--acid); font-weight: 950; }
.account-sent h2 { margin: 3px 0 0; color: var(--paper); font: 900 2.1rem/1 "Barlow Condensed", sans-serif; text-transform: uppercase; }
.account-sent p { margin: 0; color: #c7d3ca; font-size: .9rem; line-height: 1.55; }
.account-sent strong { color: var(--paper); overflow-wrap: anywhere; }
.account-message { min-height: 1.35em; margin: 17px 0 0; color: #aebcb2; font-size: .78rem; line-height: 1.5; }
.account-message.error { color: #ffb29d; }
.account-loading { min-height: 52px; display: grid; place-items: center; color: var(--acid); font-weight: 900; }
.account-fine-print { margin: 23px 0 0; padding-top: 18px; border-top: 1px solid var(--line); color: #829087; font-size: .74rem; line-height: 1.5; }
@media (max-width: 760px) {
  .topbar-actions .season-badge { display: none; }
  .account-button { min-height: 32px; font-size: .58rem; }
}
@media (max-width: 440px) {
  .account-gate { align-items: start; padding: 12px; }
  .account-card { margin: 10px 0; padding: 24px 18px; }
  .account-brand { margin-bottom: 25px; }
  .account-helmet { top: 17px; right: 12px; width: 96px; opacity: .15; }
  .account-otp-slot { width: 42px !important; height: 49px !important; }
}

/* Audit: both mobile header rows must occupy normal layout space. */
.roster-topbar > .topbar-actions { grid-column: 4; grid-row: 1; justify-self: end; }
.player-search-label { display:block; margin:16px 0 8px; color:var(--paper); font-size:.9rem; }
.player-search { width:100%; min-height:44px; margin-bottom:14px; padding:10px 12px; border:1px solid #496252; border-radius:8px; background:#0c1b12; color:var(--paper); font:inherit; }
.sleeper-onboarding { color:var(--muted); line-height:1.5; }
.video-segment-description { margin:8px 0; color:#b9c7be; font-size:.875rem; line-height:1.45; }
.content-publication { display:block; margin-top:6px; color:#a9b8ae; font-size:.8rem; }
.waiver-connect,.waiver-refresh { display:inline-flex; align-items:center; min-height:44px; margin-top:10px; padding:8px 12px; border:1px solid var(--acid); border-radius:7px; color:var(--acid); background:transparent; font:inherit; cursor:pointer; }
:where(button,a,input,select):focus-visible { outline:2px solid var(--acid); outline-offset:3px; }
@media (max-width:1000px) and (min-width:761px) { .roster-topbar { column-gap:18px; grid-template-columns:auto auto minmax(0,1fr) auto; } .roster-nav { gap:6px; margin-left:0; } }
@media (max-width:760px) {
  .topbar.roster-topbar { height:auto; min-height:102px; grid-template-rows:minmax(58px,auto) minmax(44px,auto); row-gap:0; }
  .roster-topbar > .brand { grid-column:1; grid-row:1; min-width:0; }
  .roster-topbar > .topbar-actions { grid-column:2; grid-row:1; }
  .roster-topbar > .roster-nav { grid-column:1 / -1; grid-row:2; height:auto; min-height:44px; }
  .roster-nav a { min-height:44px; font-size:.875rem; }
  .roster-page-heading { margin-top:26px; }
  .waiver-main { padding-top:24px; }
  .waiver-heading { margin-top:0; margin-bottom:24px; }
}
/* Owner operations: extends the existing review surface without extra controls. */
.operations-health-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.admin-section-nav{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}
.admin-section-nav a{display:inline-flex;align-items:center;min-height:44px;padding:.6rem .9rem;border:1px solid var(--line);border-radius:8px;color:var(--white);font-size:.875rem;text-decoration:none}
.admin-section-nav a:focus-visible,.operations-health-heading button:focus-visible,.analytics-refresh-line button:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.owner-dashboard .topbar{height:auto;min-height:64px;flex-wrap:wrap;gap:12px;padding-top:10px;padding-bottom:10px}
.owner-dashboard .topbar-actions{flex-wrap:wrap}
.owner-dashboard .topbar-actions .admin-link{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem}
@media(max-width:760px){
  .roster-topbar { grid-template-columns:auto minmax(0,1fr); }
  .roster-topbar #audiencePortalLink::after { content:"STATS"; }
  /* Align each wrapped row, not just the outer grid item, to the right edge. */
  .roster-topbar > .topbar-actions { width:100%; min-width:0; flex-wrap:wrap; justify-content:flex-end; gap:6px; max-width:100%; padding-block:6px; }
  .owner-dashboard .topbar-actions { width:100%; }
}
.operations-health-heading h2{margin:.3rem 0 0}
.operations-health-heading button{padding:.7rem 1rem;min-height:44px}
.operations-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.operations-health-grid .metric-card{min-width:0}
.operations-health-grid .metric-card strong{font-size:1.5rem;overflow-wrap:anywhere}
.operations-health-grid .metric-card small{font-size:.875rem;line-height:1.5}
.operations-run-details>summary{cursor:pointer;padding:1rem 0;font-weight:700;font-size:1rem}
.operations-run-details[open]>summary{margin-bottom:1rem}
.account-metrics-note{font-size:.875rem;line-height:1.6;color:var(--muted);margin:1rem 0}
.analytics-refresh-line{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
@media(max-width:900px){.operations-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.operations-health-grid{grid-template-columns:1fr}.operations-health-heading{align-items:flex-start}}

/* Official game highlights: secondary to the player feed. */
.games-main{width:min(100% - 48px,1200px);margin:30px auto 48px}.games-heading h1,.game-watch-main h1{font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.15;margin:8px 0 12px}.games-heading>p:last-child{color:var(--muted);font-size:1rem;line-height:1.5}.games-week-nav{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.games-week-nav a,.games-scope button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 15px;border:1px solid #456e50;border-radius:7px;background:#0b1d14;color:#dce6df;font:inherit;text-decoration:none;cursor:pointer}.games-week-nav a[aria-current=page],.games-scope button[aria-pressed=true]{border-color:var(--acid);color:var(--acid)}.games-scope button:disabled{opacity:.5;cursor:default}.games-controls{display:flex;flex-wrap:wrap;gap:16px;align-items:end;justify-content:space-between}.games-scope{display:flex;flex-wrap:wrap;gap:8px}.games-controls label{display:flex;gap:8px;align-items:center;font-size:.875rem}.games-controls select{min-height:44px;max-width:100%;font:inherit;border:1px solid #456e50;border-radius:7px;background:#0b1d14;color:#dce6df;padding:8px}.games-note{font-size:.875rem;color:#b9c7be;line-height:1.5}.games-note a,.game-return a,.game-breadcrumb a{color:var(--acid)}.games-count{margin:24px 0 16px;font-size:.875rem;color:#dce6df}.games-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.game-card{min-width:0;overflow:hidden;border:1px solid #456e50;border-radius:12px;background:linear-gradient(145deg,#071b13,#06130e 70%)}.game-thumb{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:#04100a}.game-thumb img{width:100%;height:100%;object-fit:cover}.game-thumb span{position:absolute;bottom:10px;right:10px;padding:4px 7px;border-radius:4px;background:#06130eee;color:white;font-size:.875rem}.game-card-body{padding:18px}.game-label{color:var(--acid);font-size:.75rem;line-height:1.5;font-weight:800;letter-spacing:.06em}.game-card h2{margin:8px 0;font-size:1.125rem;line-height:1.4}.game-card h2 a{color:#eef7f0;text-decoration:none}.game-original-title{font-size:.875rem;color:#b9c7be;line-height:1.5}.game-roster-players{font-size:.875rem;line-height:1.5;color:var(--acid)}.game-watch-link{display:inline-flex;min-height:44px;align-items:center;padding:8px 14px;border:1px solid var(--acid);border-radius:7px;color:var(--acid);text-decoration:none;font-weight:700;font-size:.875rem}.game-card-pending{border-color:#244132}.games-empty{margin:24px 0;padding:24px;border:1px solid #456e50;border-radius:12px}.games-attribution{margin-top:28px}.game-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px;font-size:.875rem}.game-player{aspect-ratio:16/9;background:#000;margin:24px 0 16px}.game-player iframe{display:block;width:100%;height:100%;border:0}.game-external-preview{display:block;position:relative;aspect-ratio:16/9;margin:24px 0 16px;overflow:hidden}.game-external-preview img{width:100%;height:100%;object-fit:cover}.game-external-preview span{position:absolute;inset:auto 0 0;padding:20px;background:#06130eee;color:var(--acid);font-weight:800}.game-source-heading{font-size:1rem;margin-top:26px}.game-return{padding:22px 0;margin-top:24px;border-top:1px solid #456e50}.game-return h2{font-size:1.25rem}.game-return p{line-height:1.5;color:#b9c7be}.games-topbar .topbar-tagline{display:none}
@media(min-width:761px){.roster-nav{gap:12px}.roster-nav a{min-width:0;padding:0 8px}.roster-topbar .topbar-tagline{font-size:.95rem}}
@media(max-width:1100px) and (min-width:761px){.roster-topbar .topbar-tagline{display:none}.roster-topbar{grid-template-columns:auto minmax(0,1fr) auto}.roster-topbar>.topbar-actions{grid-column:3}.games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.games-main{width:calc(100% - 28px);margin-top:24px}.games-grid{grid-template-columns:1fr}.roster-nav a{padding:0 6px;font-size:.8rem;white-space:normal;text-align:center}.games-controls{align-items:stretch}.games-controls label{width:100%;justify-content:space-between}.games-controls select{flex:1;min-width:0}.landing-nav-actions{flex-wrap:wrap;justify-content:flex-end}.landing-games-link{font-size:.7rem!important}}

@media(min-width:1101px){.games-topbar{grid-template-columns:auto minmax(0,1fr) auto}.games-topbar>.topbar-actions{grid-column:3}}
@media(min-width:1001px) and (max-width:1400px){.roster-topbar .topbar-tagline{display:none}.roster-topbar{grid-template-columns:auto minmax(0,1fr) auto;column-gap:24px}.roster-topbar>.topbar-actions{grid-column:3}}
@media(min-width:761px) and (max-width:1000px){.roster-topbar{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:minmax(68px,auto) minmax(44px,auto);column-gap:16px}.roster-topbar>.brand{grid-column:1;grid-row:1}.roster-topbar>.topbar-actions{grid-column:2;grid-row:1}.roster-topbar>.roster-nav{grid-column:1/-1;grid-row:2;height:auto;min-height:44px;justify-content:center;border-top:1px solid #1d3427}.roster-nav a{min-height:44px}.roster-topbar .topbar-tagline{display:none}}

/* Public player pilot extends the existing media card and matchup styles. */
.public-player-main>h1{font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.2;margin:8px 0 16px}.public-player-main section{margin-top:28px}.public-player-main section>h2{font-size:1.3rem;margin-bottom:18px}.public-player-links{display:flex;flex-wrap:wrap;gap:10px 18px;padding:14px 0}.public-player-links a{color:var(--acid);font-size:1rem;line-height:1.5;padding:8px 0}.landing-player-links{width:min(100% - 48px,1200px);margin:0 auto}.public-player-video h3{font-size:1.125rem;line-height:1.45;margin:12px 0;overflow-wrap:anywhere}.public-segment-description{font-size:1rem;line-height:1.5;color:#eef7f0}.public-video-thumb{display:block;position:relative;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#04100a;color:white;cursor:pointer}.public-video-thumb img{display:block;width:100%;height:100%;object-fit:cover}.public-video-thumb>span:not(.sr-only){position:absolute;bottom:10px;right:10px;background:#06130eee;padding:8px 12px;border-radius:4px;font:inherit;font-weight:700}.public-video-thumb:focus-visible,.public-player-links a:focus-visible{outline:3px solid var(--acid);outline-offset:3px}.public-player-video .game-player{margin:12px 0}.public-player-video [hidden]{display:none}.public-player-video .game-card-body{display:flex;flex-direction:column;align-items:flex-start}.public-player-video .game-card-body>div{width:100%}.public-player-video .game-label{margin:0}.public-player-video .game-watch-link{margin-top:auto}.public-player-main a{overflow-wrap:anywhere}

/* Public profiles share roster identity, tabs and media card treatments. */
.public-profile-card{height:auto}.public-profile-identity{grid-template-columns:170px minmax(0,1fr);min-height:140px}.public-profile-identity .identity-copy{padding:24px 28px 24px 16px}.public-profile-identity h1{margin:0;color:#fff;font-size:clamp(2rem,5vw,3rem);line-height:1.08;overflow-wrap:anywhere}.public-profile-identity .identity-copy p{font-size:1rem;line-height:1.5;flex-wrap:wrap}.public-profile-identity .identity-team{right:26px;font-size:5rem;opacity:.55}.public-profile-identity .public-profile-subtitle{font-size:1rem;color:#d4e0d7}.public-profile-follow{display:flex;gap:12px 24px;align-items:center;flex-wrap:wrap;padding:18px 20px 8px}.public-profile-follow p{margin:0}.public-profile-tabs{display:block;min-width:0}.public-profile-tabs .content-primary-tabs{display:grid;width:auto;height:auto;justify-content:stretch;background:transparent;border-radius:0;gap:10px;padding:12px 20px 0}.public-profile-tabs .primary-content-tab{min-height:48px;height:auto;white-space:normal;font-size:1rem;background:#071710;border:1px solid #345947;color:#d5ded8;border-radius:5px}.public-profile-tabs .primary-content-tab[data-state=active]{border-color:var(--acid);color:#071009;background:var(--acid)}.public-profile-tabs .primary-content-tab span{font-size:.875rem}.public-profile-tabs .player-content-panel{padding:12px 20px 24px}.public-profile-tabs [hidden]{display:none!important}.public-coverage-meta{margin:4px 0 14px}.public-profile-tabs .reel-subfilters{gap:20px;flex-wrap:wrap;overflow:visible;margin-bottom:10px}.public-profile-tabs .reel-tab{min-height:44px;font-size:.875rem}.public-profile-tabs .reel-tab span{margin-left:4px;opacity:.8}.public-coverage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.public-player-video .video-copy{display:flex;gap:8px;flex-direction:column;padding:16px}.public-player-video h3{margin:0;font-size:1.125rem;line-height:1.4}.public-player-video .lane-badge{font-size:.875rem;line-height:1.5}.public-player-video .video-segment-description{font-size:1rem;line-height:1.5;margin:0;color:#d4e0d7}.public-player-video .content-source,.public-player-video .content-publication{font-size:.875rem;line-height:1.5;margin:0}.public-player-video .watch-link{font-size:.875rem;line-height:1.5;min-height:44px;display:flex;align-items:center;margin-top:auto}.public-player-video .duration-badge{font-size:.875rem}.public-profile-tabs .article-item{display:block;text-decoration:none}.public-profile-tabs .article-image{display:block;position:relative;aspect-ratio:16/9}.public-profile-tabs .article-copy{display:block;padding:16px}.public-profile-tabs .article-copy b{font-size:1.125rem;line-height:1.5}.public-profile-tabs .article-copy small{font-size:.875rem;line-height:1.5;margin-top:10px}.public-profile-tabs .content-empty{padding:36px 18px;min-height:180px;line-height:1.5}.public-profile-tabs .content-empty strong{font-size:1.125rem}.public-profile-tabs .content-empty span{font-size:1rem}.public-profile-tabs .game-environment{margin:8px 0 0;padding:20px}.public-profile-tabs .environment-heading span,.public-profile-tabs .environment-heading strong,.public-profile-tabs .environment-grid small{font-size:.875rem}.public-profile-tabs .environment-grid b{font-size:1.125rem}.public-profile-tabs .environment-grid span{font-size:1rem;line-height:1.5;white-space:normal}.public-profile-tabs .game-environment>p{font-size:.875rem;line-height:1.5}.public-video-dialog{position:fixed;z-index:1002;top:50%;left:50%;transform:translate(-50%,-50%);display:block;width:min(900px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 28px);overflow:auto;padding:24px;border:1px solid #456e50;border-radius:12px;background:#0c1711;color:#eef7f0;box-shadow:0 30px 110px #000b}.public-video-dialog>[data-slot=dialog-title]{font-size:1.5rem;line-height:1.3;margin:12px 40px 12px 0}.public-video-dialog>[data-slot=dialog-description]{font-size:1rem;line-height:1.5;color:#c7d4cb}.public-video-dialog>[data-slot=dialog-close]{position:absolute;top:12px;right:12px;width:44px;height:44px;display:grid;place-items:center;border:1px solid #456e50;background:#102317;color:#eef7f0;border-radius:8px}.public-video-dialog .game-player{margin:18px 0;aspect-ratio:16/9}.public-video-dialog .section-kicker{padding-right:44px;font-size:.875rem;line-height:1.5}body:has(.public-video-dialog) [data-slot=dialog-overlay]{position:fixed;z-index:1001;inset:0;background:#000c;backdrop-filter:blur(6px)}.public-profile-tabs button:focus-visible,.public-profile-card a:focus-visible,.public-video-dialog button:focus-visible,.public-video-dialog a:focus-visible{outline:3px solid var(--acid);outline-offset:3px}
@media(max-width:760px){.public-profile-identity{grid-template-columns:100px minmax(0,1fr);min-height:150px}.public-profile-identity .identity-copy{padding:20px 14px 20px 8px}.public-profile-identity h1{font-size:2rem}.public-profile-identity .identity-copy p{font-size:.875rem}.public-profile-identity .identity-team{right:14px;font-size:3rem}.public-profile-follow{padding:16px 14px 8px}.public-profile-tabs .content-primary-tabs{padding:12px 14px 0;gap:7px}.public-profile-tabs .primary-content-tab{font-size:.875rem}.public-profile-tabs .player-content-panel{padding:12px 14px 20px}.public-coverage-grid{grid-template-columns:1fr}.public-video-dialog{padding:20px 14px}.public-profile-tabs .environment-grid{grid-template-columns:1fr}.public-profile-tabs .environment-heading{flex-wrap:wrap}.public-profile-tabs .game-environment{padding:14px}.public-profile-identity .identity-art strong{left:12px;font-size:1.8rem}}
