/* Turnuvalar: üst çubuk düğmesi, lobi bandı, "Maçım" şeridi, liste/ayrıntı penceresi ve eşleşme ağacı. */
.tn-btn { position: relative; font-size: 1.1rem; }
.tn-dot { position: absolute; top: 3px; right: 3px; width: 9px; height: 9px; border-radius: 50%; background: var(--accent); } .tn-dot[hidden] { display: none; }
.tn-dot.hot { background: #ef4444; animation: tn-pulse 1.1s ease-in-out infinite; }
@keyframes tn-pulse { 50% { transform: scale(1.5); box-shadow: 0 0 0 6px transparent, 0 0 12px #ef4444; } }

/* Lobi bandı: açık / oynanan turnuvalar */
.tn-banner { display: grid; gap: 6px; padding: 0 10px 8px; } .tn-banner[hidden] { display: none; }
.tn-chip { display: flex; align-items: center; gap: 10px; padding: 9px 12px; border-radius: 14px; border: 1px solid color-mix(in srgb, #f59e0b 45%, var(--line)); background: linear-gradient(90deg, color-mix(in srgb, #f59e0b 16%, var(--surface-2)), var(--surface-2)); color: var(--text); text-align: left; cursor: pointer; }
.tn-chip:hover { border-color: #f59e0b; }
.tn-chip-ico { font-size: 1.4rem; } .tn-chip-txt { display: grid; min-width: 0; flex: 1; } .tn-chip-txt b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .9rem; } .tn-chip-txt small { color: var(--dim); font-size: .74rem; }
.tn-chip-go { padding: 4px 12px; border-radius: 999px; background: #f59e0b; color: #1a1203; font-weight: 800; font-size: .76rem; white-space: nowrap; } .tn-chip-go.in { background: color-mix(in srgb, var(--ok) 25%, transparent); color: var(--ok); }

/* "Maçım" şeridi: maç hazırken her ekranda üstte */
.tn-strip { position: fixed; top: 10px; left: 50%; transform: translateX(-50%); z-index: 240; display: flex; align-items: center; gap: 10px; padding: 8px 10px 8px 14px; max-width: calc(100vw - 16px); border-radius: 16px; background: rgba(8, 13, 24, .94); color: #fff; border: 1px solid #f59e0b; box-shadow: 0 10px 30px rgba(0, 0, 0, .5), 0 0 24px rgba(245, 158, 11, .35); animation: tn-in .3s ease-out; }
.tn-strip[hidden] { display: none; }
.tn-strip-ico { font-size: 1.5rem; } .tn-strip-txt { display: grid; min-width: 0; } .tn-strip-txt b { font-size: .9rem; } .tn-strip-txt small { opacity: .8; font-size: .74rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@keyframes tn-in { from { opacity: 0; transform: translate(-50%, -14px); } to { opacity: 1; transform: translate(-50%, 0); } }

/* Pencere */
.modal-layer.tn-layer .modal { width: min(720px, 100%); }
.tn { display: grid; gap: 12px; } .tn h4 { margin: 4px 0 0; font-size: .9rem; }
.tn-head { display: flex; align-items: center; gap: 10px; } .tn-head h3 { margin: 0; flex: 1; font-size: 1.15rem; }
.tn-list { display: grid; gap: 8px; }
.tn-card { display: grid; gap: 6px; padding: 12px 14px; border-radius: 14px; background: var(--surface-2); border: 1px solid var(--line); cursor: pointer; transition: transform .12s, border-color .12s; } .tn-card:hover { transform: translateY(-1px); border-color: #f59e0b; }
.tn-card-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; } .tn-card-top b { font-size: 1rem; }
.tn-meta { display: flex; flex-wrap: wrap; gap: 6px 8px; font-size: .78rem; } .tn-meta span { padding: 2px 9px; border-radius: 999px; background: var(--surface); border: 1px solid var(--line); }
.tn-in { color: var(--ok); font-weight: 700; }
.tn-info { display: grid; gap: 10px; padding: 12px; border-radius: 14px; background: var(--surface-2); border: 1px solid var(--line); }
.tn-prizes { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; } .tn-prize { display: flex; gap: 8px; align-items: center; padding: 4px 12px; border-radius: 12px; background: color-mix(in srgb, #f59e0b 14%, var(--surface)); font-size: .82rem; }
.tn-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.tn-players { display: flex; flex-wrap: wrap; gap: 6px; }
.tn-pl { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: 999px; background: var(--surface-2); border: 1px solid var(--line); font-size: .8rem; } .tn-pl i { font-style: normal; font-size: .66rem; color: var(--dim); }
.tn-pl.me { border-color: var(--accent); font-weight: 800; } .tn-pl.eliminated { opacity: .55; text-decoration: line-through; } .tn-pl.champion { border-color: #f59e0b; background: color-mix(in srgb, #f59e0b 20%, var(--surface-2)); font-weight: 800; }

/* Eşleşme ağacı: tur sütunları (yatay kayar) */
.tn-bracket { display: flex; gap: 14px; overflow-x: auto; padding: 4px 2px 10px; }
.tn-col { display: grid; align-content: space-around; gap: 10px; min-width: 150px; flex: 1; } .tn-col-h { text-align: center; font-weight: 800; color: var(--dim); text-transform: uppercase; letter-spacing: .05em; font-size: .68rem; }
.tn-m { position: relative; display: grid; gap: 1px; border-radius: 10px; overflow: hidden; border: 1px solid var(--line-strong); background: var(--line); }
.tn-m.ready { border-color: #f59e0b; } .tn-m.playing { border-color: var(--ok); box-shadow: 0 0 0 2px color-mix(in srgb, var(--ok) 30%, transparent); } .tn-m.bye { opacity: .6; }
.tn-pc { padding: 6px 10px; background: var(--surface); font-size: .82rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tn-pc.win { background: color-mix(in srgb, var(--ok) 18%, var(--surface)); font-weight: 800; } .tn-pc.lose { color: var(--dim); text-decoration: line-through; } .tn-pc.me { box-shadow: inset 3px 0 0 var(--accent); }
.tn-st { display: block; padding: 2px 10px; background: var(--surface-2); color: var(--dim); font-size: .66rem; text-align: center; }
.tn-watch { border: 0; padding: 4px 10px; background: color-mix(in srgb, var(--ok) 22%, var(--surface-2)); color: var(--text); font-size: .72rem; font-weight: 800; cursor: pointer; }

/* Profil unvanları ve sıralama */
.tag.pf-title { background: color-mix(in srgb, #f59e0b 22%, var(--surface-2)); border-color: color-mix(in srgb, #f59e0b 50%, var(--line)); font-weight: 800; } .tag.pf-title.reigning { box-shadow: 0 0 14px color-mix(in srgb, #f59e0b 45%, transparent); }
.tn-tabs { display: flex; gap: 6px; } .tn-tab { padding: 6px 16px; border-radius: 999px; border: 1px solid var(--line); background: var(--surface-2); color: var(--dim); font-weight: 700; font-size: .84rem; cursor: pointer; } .tn-tab.on { background: var(--accent); color: var(--accent-ink); border-color: transparent; }
.tn-champ { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-radius: 14px; background: linear-gradient(90deg, color-mix(in srgb, #f59e0b 22%, var(--surface-2)), var(--surface-2)); border: 1px solid color-mix(in srgb, #f59e0b 45%, var(--line)); font-size: .88rem; } .tn-champ .crown { font-size: 1.6rem; } .tn-champ small { color: var(--dim); display: block; }
.tn-board { display: grid; gap: 6px; } .tn-row { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto auto auto auto; gap: 10px; align-items: center; padding: 8px 12px; border-radius: 12px; background: var(--surface-2); border: 1px solid var(--line); font-size: .86rem; }
.tn-row.me { border-color: var(--accent); } .tn-row.head { background: transparent; border: 0; color: var(--dim); font-size: .68rem; text-transform: uppercase; letter-spacing: .05em; font-weight: 800; padding-block: 0; }
.tn-row .rk { font-weight: 900; text-align: center; } .tn-row b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .tn-row span.n { text-align: right; font-variant-numeric: tabular-nums; min-width: 38px; }
@media (max-width: 560px) { .tn-row { grid-template-columns: 28px minmax(0, 1fr) auto auto auto; } .tn-row .prize { display: none; } }

/* Yönetim */
.ad-tour { display: grid; gap: 8px; }
.ad-tour .ad-row small { color: var(--dim); }

/* Telefon yatay: şerit küçülür */
@media (orientation: landscape) and (max-height: 520px) { .tn-strip { top: 4px; padding: 5px 8px 5px 10px; } .tn-strip-txt small { display: none; } }
@media (prefers-reduced-motion: reduce) { .tn-dot.hot, .tn-strip { animation: none; } }
