/* Production tournament directory. Extends the shared community shell. */
.tournament-live-directory { padding-top: 22px; }
.tournament-directory-hero { --tournament-art:none; position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"copy action" "copy metrics"; align-items:center; min-height:264px; overflow:hidden; margin-bottom:22px; padding:38px 42px; border:1px solid rgba(255,255,255,.12); border-left:3px solid #ef5b3e; background:#090a0b; }
.tournament-directory-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,7,8,.98),rgba(5,7,8,.72) 52%,rgba(5,7,8,.2)),linear-gradient(0deg,rgba(5,7,8,.9),transparent 70%),var(--tournament-art) center/cover no-repeat; filter:saturate(.45) contrast(1.12); }
.tournament-directory-hero::after { content:""; position:absolute; inset:0; pointer-events:none; background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.018) 3px 4px); }
.tournament-directory-hero > * { position:relative; z-index:1; }
.tournament-directory-hero > div { grid-area:copy; max-width:690px; }
.tournament-directory-hero .eyebrow { margin:0 0 10px; color:#ff6243; }
.tournament-directory-hero h1 { margin:0; color:#f6eee5; font:700 clamp(42px,5.5vw,66px)/.98 var(--display); }
.tournament-directory-hero > div > p:last-child { max-width:620px; margin:14px 0 0; color:#b0a8a1; font-size:17px; line-height:1.55; }
.tournament-directory-hero > .btn-inline { grid-area:action; justify-self:end; min-width:168px; min-height:48px; }
.tournament-directory-hero dl { grid-area:metrics; display:flex; justify-self:end; align-self:end; margin:24px 0 0; }
.tournament-directory-hero dl div { display:grid; min-width:104px; padding-left:16px; border-left:2px solid #ef5b3e; }
.tournament-directory-hero dt { color:#918982; font-size:12px; }
.tournament-directory-hero dd { margin:4px 0 0; color:#f5e9dc; font:700 29px/1 var(--display); }
.tournament-directory-section,.tournament-upcoming,.tournament-quick-create { margin-top:34px; }
.tournament-directory-heading,.tournament-upcoming > header { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:15px; }
.tournament-directory-heading .eyebrow,.tournament-upcoming .eyebrow,.tournament-quick-create .eyebrow { margin:0 0 6px; color:#ef6548; }
.tournament-directory-heading h2,.tournament-upcoming h2,.tournament-quick-create h2 { margin:0; color:#f2e6d9; font:650 32px/1.05 var(--display); }
.tournament-filter-row { display:flex; gap:8px; overflow-x:auto; margin-bottom:14px; }
.tournament-filter-row a { flex:0 0 auto; padding:10px 15px; color:#aaa29b; border:1px solid rgba(255,255,255,.1); border-radius:4px; background:#121619; font-size:14px; font-weight:700; text-decoration:none; }
.tournament-filter-row a:hover { border-color:#ef5b3e; color:#f3e5d8; }
.tournament-filter-row a[aria-current=page] { color:#180b07; border-color:#ff5b3b; background:#ff5b3b; }
.tournament-live-list { display:grid; gap:10px; }
.tournament-live-row { display:grid; grid-template-columns:190px minmax(0,1fr) 150px 126px; align-items:stretch; min-height:136px; overflow:hidden; border:1px solid rgba(255,255,255,.11); border-radius:5px; background:linear-gradient(110deg,#121719,#101416); }
.tournament-live-row:hover { border-color:rgba(239,91,62,.55); }
.tournament-live-cover { display:block; min-height:136px; background:linear-gradient(90deg,transparent,rgba(10,13,14,.25)),var(--tournament-art) center/cover no-repeat; }
.tournament-live-copy { align-self:center; min-width:0; padding:16px 20px; }
.tournament-live-status { display:inline-flex; width:max-content; padding:5px 8px; border-radius:4px; background:#263037; color:#c7d0d4; font-size:12px; font-weight:800; }
.tournament-live-status.is-registration_open { background:#d9aa60; color:#21170b; }
.tournament-live-status.is-registration_closed { background:#255071; color:#d3efff; }
.tournament-live-status.is-in_progress { background:#296d49; color:#e0ffec; }
.tournament-live-status.is-completed { background:#393e42; color:#d1d4d5; }
.tournament-live-copy h3 { margin:8px 0 4px; font-size:22px; line-height:1.15; }
.tournament-live-copy h3 a { color:#f4e9dc; text-decoration:none; }
.tournament-live-copy > p { margin:0; color:#aba19a; font-size:14px; }
.tournament-live-meta { display:flex; flex-wrap:wrap; gap:5px 16px; margin-top:10px; color:#847b75; font-size:12px; }
.tournament-live-count { align-self:center; display:grid; gap:5px; padding:18px; border-left:1px solid rgba(255,255,255,.08); }
.tournament-live-count small { color:#8d8580; font-size:12px; }
.tournament-live-count strong { color:#f3e7db; font:700 22px var(--display); }
.tournament-live-count i { position:relative; width:100%; height:4px; overflow:hidden; border-radius:4px; background:#303638; }
.tournament-live-count i::before { content:""; position:absolute; inset:0 auto 0 0; width:var(--fill); background:#ff5b3b; }
.tournament-live-action { align-self:center; justify-self:center; padding:10px 12px; color:#f4e8dc; border:1px solid rgba(255,255,255,.18); border-radius:4px; font-size:13px; font-weight:800; text-decoration:none; }
.tournament-live-action:hover { color:#180b07; border-color:#ff5b3b; background:#ff5b3b; }
.tournament-directory-empty,.tournament-upcoming-empty { padding:34px; border:1px solid rgba(255,255,255,.1); background:#111517; color:#918881; text-align:center; }
.tournament-directory-empty strong { color:#eee2d5; font-size:19px; }
.tournament-directory-empty p { margin:7px 0 10px; }
.tournament-directory-empty a,.tournament-upcoming > header > a { color:#ef6548; font-size:13px; font-weight:800; text-decoration:none; }
.tournament-upcoming-list { border:1px solid rgba(255,255,255,.1); border-radius:5px; background:#111517; }
.tournament-upcoming-row { display:grid; grid-template-columns:132px minmax(0,1fr) auto; align-items:center; gap:18px; min-height:76px; padding:10px 18px; color:inherit; border-top:1px solid rgba(255,255,255,.08); text-decoration:none; }
.tournament-upcoming-row:first-child { border-top:0; }
.tournament-upcoming-row:hover { background:rgba(239,91,62,.055); }
.tournament-upcoming-row time,.tournament-upcoming-row > span { display:grid; gap:4px; }
.tournament-upcoming-row time strong { color:#f2e7db; font-size:18px; }
.tournament-upcoming-row time span,.tournament-upcoming-row span small { color:#837b75; font-size:12px; }
.tournament-upcoming-row > span > strong { color:#eee2d6; font-size:15px; }
.tournament-upcoming-row > span i { padding:0 8px; color:#ef6548; font-style:normal; }
.tournament-upcoming-row > b { color:#aca49e; font:800 12px var(--mono); }
.tournament-quick-create { padding:26px; border:1px solid rgba(255,255,255,.1); background:linear-gradient(120deg,rgba(239,91,62,.06),transparent 42%),#0b0d0e; }
.tournament-quick-create > header { max-width:800px; margin-bottom:22px; }
.tournament-quick-create > header > p:last-child { margin:9px 0 0; color:#918780; font-size:15px; line-height:1.55; }
.tournament-create-shell { display:grid; grid-template-columns:190px minmax(0,1fr) 240px; gap:12px; align-items:start; }
.tournament-create-shell > ol { display:grid; gap:3px; margin:0; padding:0; list-style:none; }
.tournament-create-shell > ol li { display:flex; align-items:center; gap:10px; padding:10px; border-left:2px solid rgba(255,255,255,.11); color:#9a928c; }
.tournament-create-shell > ol li:first-child { color:#f0e4d7; border-left-color:#ef5b3e; background:linear-gradient(90deg,rgba(239,91,62,.1),transparent); }
.tournament-create-shell > ol b { display:grid; width:27px; height:27px; place-items:center; border-radius:50%; background:#252b2e; font-size:12px; }
.tournament-create-shell > ol li:first-child b { color:#190c08; background:#ef5b3e; }
.tournament-create-shell > ol span { display:grid; font-size:13px; font-weight:800; }
.tournament-create-shell > ol small { margin-top:3px; color:#756e68; font-size:12px; font-weight:400; }
.tournament-create-shell > .tournament-create-form { grid-template-columns:repeat(2,minmax(0,1fr)); padding:20px; border:1px solid rgba(255,255,255,.1); border-radius:5px; background:#111517; }
.tournament-create-shell > .tournament-create-form .wide { grid-column:1/-1; }
.tournament-create-shell > aside { display:grid; gap:8px; padding:16px; border:1px solid rgba(255,255,255,.1); border-radius:5px; background:#111517; }
.tournament-create-shell > aside > span { color:#d1ad6d; font-size:12px; font-weight:800; }
.tournament-create-shell > aside > div { aspect-ratio:1.7; background:linear-gradient(0deg,rgba(0,0,0,.72),transparent),var(--tournament-art) center/cover no-repeat; }
.tournament-create-shell > aside strong { color:#eee2d5; font-size:16px; }
.tournament-create-shell > aside p { margin:0; color:#817973; font-size:12px; line-height:1.5; }
.tournament-organizer-strip { display:grid; grid-template-columns:minmax(260px,.6fr) minmax(0,1fr); gap:24px; margin:18px 0; padding:22px; border:1px solid rgba(255,255,255,.1); background:linear-gradient(110deg,rgba(239,91,62,.07),transparent 44%),#0d1011; }
.tournament-organizer-strip .eyebrow { margin:0 0 6px; color:#ef6548; }
.tournament-organizer-strip h2 { margin:0; color:#f0e3d5; font:650 28px var(--display); }
.tournament-organizer-strip > div > p:last-child { margin:8px 0 0; color:#8f8680; font-size:14px; line-height:1.55; }
.tournament-organizer-people { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.tournament-organizer-people article { display:flex; align-items:center; gap:11px; padding:12px; border:1px solid rgba(255,255,255,.09); background:#121719; }
.tournament-organizer-people article > span { display:grid; width:38px; height:38px; place-items:center; color:#ef6548; border:1px solid rgba(239,91,62,.4); font:800 12px var(--mono); }
.tournament-organizer-people article div { display:grid; gap:3px; }
.tournament-organizer-people b { color:#eee2d6; font-size:14px; }
.tournament-organizer-people small,.tournament-organizer-people > p { color:#817973; font-size:12px; }
@media (max-width:1080px) {
  .tournament-live-row { grid-template-columns:160px minmax(0,1fr) 126px; }
  .tournament-live-action { grid-column:3; grid-row:1; align-self:end; margin:0 14px 14px; }
  .tournament-live-count { align-self:start; }
  .tournament-create-shell { grid-template-columns:150px minmax(0,1fr); }
  .tournament-create-shell > aside { grid-column:2; }
}
@media (max-width:760px) {
  .tournament-directory-hero { grid-template-columns:1fr; grid-template-areas:"copy" "action" "metrics"; padding:30px 22px; }
  .tournament-directory-hero > .btn-inline { justify-self:start; margin-top:22px; }
  .tournament-directory-hero dl { justify-self:start; width:100%; overflow-x:auto; }
  .tournament-directory-hero dl div { min-width:98px; }
  .tournament-directory-heading { align-items:flex-start; flex-direction:column; }
  .tournament-live-row { grid-template-columns:112px minmax(0,1fr); min-height:0; }
  .tournament-live-cover { min-height:150px; }
  .tournament-live-copy { padding:14px; }
  .tournament-live-copy h3 { font-size:19px; }
  .tournament-live-meta { display:grid; gap:4px; }
  .tournament-live-count { grid-column:1/-1; grid-row:auto; grid-template-columns:auto auto minmax(80px,1fr); align-items:center; padding:11px 14px; border-top:1px solid rgba(255,255,255,.08); border-left:0; }
  .tournament-live-action { grid-column:1/-1; grid-row:auto; justify-self:stretch; margin:0 12px 12px; text-align:center; }
  .tournament-upcoming-row { grid-template-columns:90px minmax(0,1fr); }
  .tournament-upcoming-row > b { grid-column:2; }
  .tournament-create-shell { grid-template-columns:1fr; }
  .tournament-create-shell > ol { grid-template-columns:repeat(4,minmax(130px,1fr)); overflow-x:auto; }
  .tournament-create-shell > .tournament-create-form,.tournament-create-shell > aside { grid-column:1; }
  .tournament-create-shell > aside { grid-template-columns:120px minmax(0,1fr); }
  .tournament-create-shell > aside > span { grid-column:1/-1; }
  .tournament-create-shell > aside > div { grid-row:2/4; }
  .tournament-quick-create { padding:20px 14px; }
  .tournament-organizer-strip { grid-template-columns:1fr; }
}
@media (max-width:480px) {
  .tournament-live-directory { padding-left:10px; padding-right:10px; }
  .tournament-directory-hero { padding:26px 17px; }
  .tournament-directory-hero h1 { font-size:42px; }
  .tournament-directory-hero > div > p:last-child { font-size:15px; }
  .tournament-directory-hero dl div { min-width:88px; padding-left:10px; }
  .tournament-directory-hero dt { font-size:11px; }
  .tournament-directory-hero dd { font-size:24px; }
  .tournament-live-row { grid-template-columns:92px minmax(0,1fr); }
  .tournament-live-cover { min-height:164px; }
  .tournament-live-copy > p { font-size:13px; }
  .tournament-live-meta span:not(:first-child):not(:last-child) { display:none; }
  .tournament-create-shell > .tournament-create-form { grid-template-columns:1fr; padding:15px; }
  .tournament-create-shell > .tournament-create-form .wide { grid-column:auto; }
  .tournament-create-shell > aside { display:none; }
  .tournament-upcoming-row { grid-template-columns:1fr; gap:7px; }
  .tournament-upcoming-row > b { grid-column:1; }
  .tournament-filter-row a { padding:9px 12px; }
  .tournament-organizer-people { grid-template-columns:1fr; }
}
