.crew-tournament-boundary { --bg:#08070d; --panel:#111019; --line:#2b2838; --muted:#9691a6; --text:#f5f2fb; --purple:#7c3aed; --green:#47d18c; }
.crew-tournament-boundary * { box-sizing:border-box; }
.crew-tournament-boundary { background:var(--bg); }
.crew-tournament-boundary { margin:0; background:var(--bg); color:var(--text); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.crew-tournament-boundary button,.crew-tournament-boundary input,.crew-tournament-boundary select { font:inherit; }
.crew-tournament-boundary button,.crew-tournament-boundary select { cursor:pointer; }
.crew-tournament-boundary .dashboard-shell { min-height:100vh; display:grid; grid-template-columns:76px minmax(0,1fr); background:radial-gradient(circle at 42% -10%,rgba(94,45,180,.12),transparent 35%),var(--bg); }
.crew-tournament-boundary .sidebar { position:sticky; top:0; height:100vh; z-index:5; display:flex; flex-direction:column; align-items:center; padding:22px 12px 18px; border-right:1px solid #211e2b; background:#0c0b12; }
.crew-tournament-boundary .brand-mark { width:42px; height:42px; display:grid; place-items:center; border:1px solid #7f54ca; border-radius:10px; color:#c8adff; font-weight:900; font-size:20px; background:linear-gradient(145deg,#25133f,#130c1f); box-shadow:0 0 26px rgba(124,58,237,.2); }
.crew-tournament-boundary .sidebar nav { display:flex; flex-direction:column; gap:14px; margin-top:56px; }
.crew-tournament-boundary .nav-button { width:44px; height:44px; border-radius:10px; display:grid; place-items:center; border:0; background:transparent; color:#5f5b6c; }
.crew-tournament-boundary .nav-button svg { width:21px; fill:none; stroke:currentColor; stroke-width:1.7; }
.crew-tournament-boundary .nav-button.active { color:#cdbbff; background:#2a1745; box-shadow:inset 3px 0 #8c55e9; }
.crew-tournament-boundary .nav-button:disabled { cursor:not-allowed; opacity:.55; }
.crew-tournament-boundary .sidebar-bottom { margin-top:auto; text-align:center; color:#d6cdf0; font-size:13px; font-weight:800; line-height:1.05; }
.crew-tournament-boundary .sidebar-bottom strong { display:block; font-size:13px; }
.crew-tournament-boundary .sidebar-bottom span { display:block; color:#6d687a; font-size:9px; letter-spacing:.14em; margin-top:4px; }
.crew-tournament-boundary .sidebar-bottom small { display:block; margin-top:3px; color:#514d5c; font-size:7px; letter-spacing:.08em; }
.crew-tournament-boundary .workspace { min-width:0; display:flex; flex-direction:column; min-height:100vh; }
.crew-tournament-boundary .topbar { min-height:88px; padding:17px clamp(24px,4vw,60px); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #211e2b; background:rgba(12,11,18,.82); backdrop-filter:blur(18px); }
.crew-tournament-boundary .eyebrow,.crew-tournament-boundary .section-kicker { margin:0 0 5px; color:#817b8f; font-size:10px; font-weight:800; letter-spacing:.18em; }
.crew-tournament-boundary h1 { margin:0; font-size:clamp(22px,2.2vw,30px); letter-spacing:-.035em; }
.crew-tournament-boundary .event-meta { display:flex; align-items:center; gap:10px; }
.crew-tournament-boundary .event-meta>div { min-width:140px; display:flex; align-items:center; gap:10px; padding:10px 14px; border:1px solid #2a2635; border-radius:9px; background:#121019; font-size:12px; font-weight:700; }
.crew-tournament-boundary .event-meta small { display:block; color:#777183; font-size:8px; letter-spacing:.14em; margin-bottom:3px; }
.crew-tournament-boundary .meta-icon { color:#9e72ee; font-size:19px; }
.crew-tournament-boundary .event-meta .editable-event-meta { min-width:166px; }
.crew-tournament-boundary .editable-event-meta label { flex:1; min-width:0; }
.crew-tournament-boundary .event-meta-input { width:100%; border:0; border-bottom:1px solid #40394e; border-radius:0; padding:1px 0 2px; background:transparent; color:#f4efff; font-size:12px; font-weight:700; }
.crew-tournament-boundary .event-meta-input:focus { border-color:#a77bf7; box-shadow:none; }
.crew-tournament-boundary .event-date-input { min-width:124px; color-scheme:dark; }
.crew-tournament-boundary .participant-count-input { min-width:58px; }
.crew-tournament-boundary .event-meta .event-state { min-width:145px; display:flex; align-items:center; gap:10px; padding:10px 14px; border:1px solid #1b4937; border-radius:9px; background:#101a17; color:#b7f4d3; font-size:12px; font-weight:700; }
.crew-tournament-boundary .event-state select { max-width:145px; appearance:none; border:0; outline:0; background:transparent; color:inherit; font-size:12px; font-weight:700; }
.crew-tournament-boundary .event-state select option { background:#fff; color:#111; }
.crew-tournament-boundary .event-meta .event-state.event-running { background:#25193a; border-color:#6a43a4; color:#d6c4ff; }
.crew-tournament-boundary .event-state.event-running i { background:#b084ff; box-shadow:0 0 8px #8b5bd5; }
.crew-tournament-boundary .event-meta .event-state.event-finished { background:#11251d; border-color:#246044; color:#9ce9c1; }
.crew-tournament-boundary .event-state i,.crew-tournament-boundary footer i { width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 12px rgba(71,209,140,.65); }
.crew-tournament-boundary .content-wrap { width:min(1540px,100%); margin:0 auto; padding:35px clamp(24px,4vw,60px) 44px; }
.crew-tournament-boundary .section-heading,.crew-tournament-boundary .panel-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; }
.crew-tournament-boundary .section-kicker { display:flex; align-items:center; color:#9d77e9; }
.crew-tournament-boundary .section-kicker span { display:inline-block; width:21px; height:2px; margin-right:8px; background:#8547e8; }
.crew-tournament-boundary .section-heading h2,.crew-tournament-boundary .panel-heading h2 { margin:0; font-size:22px; letter-spacing:-.025em; }
.crew-tournament-boundary .section-heading>div>p:last-child { margin:7px 0 0; color:#888294; font-size:13px; }
.crew-tournament-boundary .live-summary { display:flex; align-items:center; gap:9px; min-width:118px; padding:9px 12px; border:1px solid #2a2635; border-radius:9px; background:#100e16; }
.crew-tournament-boundary .live-summary strong { font-size:25px; color:#bd9cff; }
.crew-tournament-boundary .live-summary span { color:#827c8e; font-size:9px; line-height:1.35; text-transform:uppercase; letter-spacing:.1em; }
.crew-tournament-boundary .overview-heading-actions { display:flex; align-items:center; gap:10px; }
.crew-tournament-boundary .add-tournament-button { min-height:43px; padding:9px 14px; border:1px solid #6841a7; border-radius:9px; background:#2b1749; color:#e7dcff; font-size:10px; font-weight:850; }
.crew-tournament-boundary .add-tournament-button span { margin-right:6px; color:#c8a7ff; font-size:15px; }
.crew-tournament-boundary .add-tournament-button:hover:not(:disabled) { background:#3a1f61; }
.crew-tournament-boundary .add-tournament-button:disabled { opacity:.45; cursor:not-allowed; }
.crew-tournament-boundary .live-data-button { min-height:43px; padding:9px 18px; border:1px solid #3b8ff0; border-radius:8px; background:#1769c5; color:#fff; font-size:13px; font-weight:850; letter-spacing:.035em; box-shadow:0 7px 22px rgba(23,105,197,.2); }
.crew-tournament-boundary .live-data-button span { margin-right:7px; color:#bfe0ff; }
.crew-tournament-boundary .live-data-button:hover { background:#247cdb; border-color:#67adff; }
.crew-tournament-boundary .focus-matches-list { display:grid; gap:8px; margin-top:18px; }
.crew-tournament-boundary .focus-match-panel { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:22px; margin:0; padding:15px 18px; border:1px solid #3a304a; border-radius:11px; background:linear-gradient(100deg,#17111f,#111018); }
.crew-tournament-boundary .focus-match-panel.focus-live { border-color:#7043ad; box-shadow:0 0 0 1px rgba(139,91,213,.12),0 14px 38px rgba(0,0,0,.18); }
.crew-tournament-boundary .focus-match-label { display:flex; align-items:center; gap:7px; color:#ba9ae9; font-size:9px; font-weight:850; letter-spacing:.12em; white-space:nowrap; }
.crew-tournament-boundary .focus-match-label i { width:7px; height:7px; border-radius:50%; background:#7f748c; }.crew-tournament-boundary .focus-live .focus-match-label i { background:#b084ff; box-shadow:0 0 10px #8b5bd5; }
.crew-tournament-boundary .focus-match-title small { display:block; margin-bottom:6px; color:#82798d; font-size:9px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }.crew-tournament-boundary .focus-match-title>div { display:flex; align-items:center; gap:10px; min-width:0; }.crew-tournament-boundary .focus-match-title strong { overflow:hidden; color:#f4eefc; font-size:15px; text-overflow:ellipsis; white-space:nowrap; }.crew-tournament-boundary .focus-match-title>div>span { color:#7554a4; font-size:8px; font-weight:900; }
.crew-tournament-boundary .focus-match-meta { display:flex; align-items:center; justify-content:flex-end; gap:18px; }.crew-tournament-boundary .focus-match-meta>span { color:#e4d9f2; font-size:11px; font-weight:750; white-space:nowrap; }.crew-tournament-boundary .focus-match-meta small { display:block; margin-bottom:3px; color:#766e81; font-size:7px; letter-spacing:.12em; }.crew-tournament-boundary .focus-match-meta button { padding:9px 12px; border:1px solid #6841a7; border-radius:7px; background:#2b1749; color:#e6d8ff; font-size:9px; font-weight:800; }.crew-tournament-boundary .focus-match-meta button span { margin-left:7px; color:#bd99ff; }
.crew-tournament-boundary .focus-match-empty { min-width:0; }.crew-tournament-boundary .focus-match-empty strong { display:block; color:#ddd4e8; font-size:12px; }.crew-tournament-boundary .focus-match-empty span { display:block; margin-top:3px; color:#746d7f; font-size:10px; }
.crew-tournament-boundary .tournament-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; margin-top:18px; }
.crew-tournament-boundary .tournament-card { position:relative; overflow:hidden; min-width:0; border:1px solid #2b2736; border-radius:12px; background:linear-gradient(145deg,rgba(25,22,34,.98),rgba(14,13,20,.98)); box-shadow:0 15px 50px rgba(0,0,0,.18); }
.crew-tournament-boundary .card-topline { height:3px; background:linear-gradient(90deg,transparent,#7341bf 35%,#b991ff 60%,transparent); opacity:.75; }
.crew-tournament-boundary .card-heading { display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:11px; padding:18px 18px 14px; border-bottom:1px solid #2a2634; }
.crew-tournament-boundary .game-icon { width:39px; height:39px; padding:8px; border-radius:8px; color:#bd9dff; background:#2b1846; border:1px solid #49306e; }
.crew-tournament-boundary .game-icon svg { width:100%; height:100%; }
.crew-tournament-boundary .card-heading span { display:block; color:#726c80; font-size:8px; font-weight:800; letter-spacing:.16em; }
.crew-tournament-boundary .card-heading h3 { overflow:hidden; text-overflow:ellipsis; margin:4px 0 0; white-space:nowrap; font-size:15px; }
.crew-tournament-boundary .status-select { position:relative; display:flex; align-items:center; gap:5px; border-radius:20px; padding:4px 7px; border:1px solid #393441; background:#15131b; }
.crew-tournament-boundary .status-select select { max-width:89px; appearance:none; border:0; outline:0; background:transparent; color:#aaa4b3; font-size:8px; font-weight:800; text-transform:uppercase; padding-right:2px; }
.crew-tournament-boundary .automatic-status>span:last-child { color:#aaa4b3; font-size:8px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.crew-tournament-boundary .status-select select option,.crew-tournament-boundary .match-status select option,.crew-tournament-boundary .fortnite-status select option { background:#fff; color:#111; }
.crew-tournament-boundary .status-dot { width:5px; height:5px; border-radius:50%; background:#77717f; }
.crew-tournament-boundary .status-live { border-color:#6a43a4; background:#25193a; }.crew-tournament-boundary .status-live .status-dot,.crew-tournament-boundary .status-final .status-dot { background:#b084ff; box-shadow:0 0 8px #8b5bd5; }.crew-tournament-boundary .status-live select,.crew-tournament-boundary .status-final select { color:#d6c4ff; }
.crew-tournament-boundary .status-final { border-color:#9d6a2d; background:#2a2013; }.crew-tournament-boundary .status-final .status-dot { background:#ffb956; box-shadow:0 0 8px #e79d36; }.crew-tournament-boundary .status-final select { color:#ffd99b; }
.crew-tournament-boundary .status-done { border-color:#246044; background:#11251d; }.crew-tournament-boundary .status-done .status-dot { background:var(--green); }.crew-tournament-boundary .status-done select { color:#9ce9c1; }
.crew-tournament-boundary .status-live.automatic-status>span:last-child { color:#d6c4ff; }.crew-tournament-boundary .status-final.automatic-status>span:last-child { color:#ffd99b; }.crew-tournament-boundary .status-done.automatic-status>span:last-child { color:#9ce9c1; }
.crew-tournament-boundary .card-fields { padding:14px 18px 18px; display:grid; gap:10px; }
.crew-tournament-boundary .card-fields label>span { display:block; margin:0 0 5px; color:#827c8d; font-size:9px; font-weight:700; }
.crew-tournament-boundary .automatic-card-value { display:flex; align-items:center; width:100%; min-height:35px; border:1px solid #312d3b; border-radius:7px; background:#0e0d13; color:#efeaf9; padding:9px 10px; font-size:11px; }
.crew-tournament-boundary input,.crew-tournament-boundary table select { width:100%; min-width:0; border:1px solid #312d3b; border-radius:7px; outline:none; background:#0e0d13; color:#efeaf9; padding:9px 10px; font-size:11px; transition:border-color .18s,box-shadow .18s; }
.crew-tournament-boundary input::placeholder { color:#5e5968; }
.crew-tournament-boundary input:focus,.crew-tournament-boundary table select:focus { border-color:#8250d4; box-shadow:0 0 0 3px rgba(124,58,237,.12); }
.crew-tournament-boundary .winner-field>div { position:relative; }.crew-tournament-boundary .winner-field input { padding-left:32px; border-color:#3b304b; background:#15101e; }.crew-tournament-boundary .winner-value { padding-left:32px; border-color:#3b304b; background:#15101e; }.crew-tournament-boundary .trophy { position:absolute; left:11px; top:8px; z-index:1; color:#a274ed; font-size:12px; }
.crew-tournament-boundary .matches-panel { margin-top:34px; overflow:hidden; border:1px solid #2b2736; border-radius:12px; background:#111018; }
.crew-tournament-boundary .panel-heading { padding:18px 20px; border-bottom:1px solid #2a2634; }.crew-tournament-boundary .panel-heading h2 { font-size:18px; }
.crew-tournament-boundary .add-button { padding:9px 14px; border:1px solid #6841a7; border-radius:8px; color:#e5d9ff; background:#2b1749; font-size:11px; font-weight:750; }.crew-tournament-boundary .add-button:hover { background:#3a1f61; }.crew-tournament-boundary .add-button span { color:#bd99ff; font-size:15px; margin-right:4px; }
.crew-tournament-boundary .table-scroll { overflow-x:auto; }
.crew-tournament-boundary table { width:100%; min-width:980px; border-collapse:collapse; }
.crew-tournament-boundary th { padding:10px 14px; text-align:left; color:#756f7f; background:#0c0b11; border-bottom:1px solid #24212c; font-size:8px; letter-spacing:.12em; text-transform:uppercase; }
.crew-tournament-boundary td { padding:10px 7px; border-bottom:1px solid #211e29; } .crew-tournament-boundary td:first-child,.crew-tournament-boundary th:first-child { padding-left:20px; } .crew-tournament-boundary td:last-child,.crew-tournament-boundary th:last-child { padding-right:20px; width:44px; }
.crew-tournament-boundary td input,.crew-tournament-boundary td select { height:36px; } .crew-tournament-boundary td select { color:#d5cfde; }
.crew-tournament-boundary .table-server-value { display:flex; align-items:center; min-height:36px; padding:8px 10px; border:1px solid #302b39; border-radius:7px; background:#17141d; color:#c9bfd3; font-size:10px; font-weight:700; white-space:nowrap; }
.crew-tournament-boundary .remove-button { width:30px; height:30px; border:0; border-radius:6px; color:#b38da7; background:transparent; font-size:18px; }.crew-tournament-boundary .remove-button:hover:not(:disabled) { background:#3b1827; color:#ff9bbc; }.crew-tournament-boundary .remove-button:disabled { opacity:.2; cursor:not-allowed; }
.crew-tournament-boundary .open-tournament-button { width:100%; margin-top:2px; padding:10px 12px; display:flex; align-items:center; justify-content:space-between; border:1px solid #6841a7; border-radius:7px; background:#2b1749; color:#e6daff; font-size:10px; font-weight:800; letter-spacing:.04em; }.crew-tournament-boundary .open-tournament-button:hover { background:#3a1f61; }.crew-tournament-boundary .open-tournament-button span { color:#c9aaff; font-size:15px; }
.crew-tournament-boundary .tournament-card-actions { display:grid; grid-template-columns:minmax(0,1fr) 38px; gap:7px; }
.crew-tournament-boundary .delete-tournament-button { margin-top:2px; border:1px solid #65313f; border-radius:7px; background:#281219; color:#d98b9d; font-size:18px; font-weight:700; }
.crew-tournament-boundary .delete-tournament-button:hover { border-color:#a84960; background:#3b1721; color:#ffc1cf; }
.crew-tournament-boundary .event-data-actions { margin-top:18px; display:flex; align-items:center; justify-content:flex-end; gap:7px; }.crew-tournament-boundary .export-feedback { min-height:13px; margin-right:3px; color:#75c99a; font-size:8px; font-weight:750; letter-spacing:.04em; }.crew-tournament-boundary .export-feedback.export-error { color:#e98da0; }.crew-tournament-boundary .test-data-button,.crew-tournament-boundary .export-data-button,.crew-tournament-boundary .clear-data-button { flex:none; min-height:31px; padding:7px 10px; border-radius:6px; font-size:8px; font-weight:850; letter-spacing:.04em; }.crew-tournament-boundary .test-data-button { border:1px solid #61418b; background:#241537; color:#cdb5f2; }.crew-tournament-boundary .test-data-button span { margin-right:5px; }.crew-tournament-boundary .test-data-button:hover { border-color:#956bd0; background:#34204e; color:#f0e3ff; }.crew-tournament-boundary .export-data-button { min-width:175px; min-height:36px; padding:8px 16px; border:1px solid #32724e; background:#153622; color:#a9e8bf; font-size:10px; }.crew-tournament-boundary .export-data-button span { margin-right:7px; font-size:14px; }.crew-tournament-boundary .export-data-button:hover:not(:disabled) { border-color:#4ea875; background:#1d492e; color:#d2ffe1; }.crew-tournament-boundary .export-data-button:disabled { opacity:.55; cursor:wait; }.crew-tournament-boundary .clear-data-button { border:1px solid #743243; background:#35141d; color:#e99aaa; text-transform:uppercase; }.crew-tournament-boundary .clear-data-button:hover { border-color:#b64b64; background:#4b1926; color:#ffc3cf; }
.crew-tournament-boundary .event-data-actions { justify-content:space-between; gap:18px; }
.crew-tournament-boundary .event-secondary-actions { display:flex; align-items:center; justify-content:flex-end; gap:7px; }
.crew-tournament-boundary .reset-modal-backdrop { position:fixed; inset:0; z-index:100; display:grid; place-items:center; padding:20px; background:rgba(4,3,7,.84); backdrop-filter:blur(7px); }.crew-tournament-boundary .reset-modal { width:min(500px,100%); padding:28px; border:1px solid #8d3045; border-radius:14px; background:radial-gradient(circle at 50% 0,rgba(183,37,66,.18),transparent 45%),#151016; box-shadow:0 30px 90px rgba(0,0,0,.62),0 0 45px rgba(167,38,65,.13); text-align:center; }.crew-tournament-boundary .warning-icon { width:52px; height:52px; margin:0 auto 14px; display:grid; place-items:center; border:1px solid #cf435e; border-radius:50%; background:#42131f; color:#ff93a7; font-size:27px; font-weight:900; }.crew-tournament-boundary .reset-kicker { margin:0 0 5px; color:#d65068; font-size:8px; font-weight:900; letter-spacing:.18em; }.crew-tournament-boundary .reset-modal h2 { margin:0; color:#ff91a6; font-size:25px; letter-spacing:.04em; }.crew-tournament-boundary .reset-modal>p:last-of-type { max-width:420px; margin:13px auto 0; color:#d2bdc3; font-size:12px; line-height:1.65; }.crew-tournament-boundary .reset-modal-actions { margin-top:24px; display:grid; grid-template-columns:1fr 1.35fr; gap:10px; }.crew-tournament-boundary .reset-modal-actions button { min-height:42px; border-radius:8px; font-size:10px; font-weight:850; }.crew-tournament-boundary .cancel-reset-button { border:1px solid #46404a; background:#211d23; color:#d2cbd4; }.crew-tournament-boundary .cancel-reset-button:hover { background:#2b262d; }.crew-tournament-boundary .confirm-reset-button { border:1px solid #cf435e; background:#941f38; color:#fff; }.crew-tournament-boundary .confirm-reset-button:hover:not(:disabled) { background:#b52948; }.crew-tournament-boundary .confirm-reset-button:disabled { border-color:#49333a; background:#2b2226; color:#78666c; cursor:not-allowed; }
.crew-tournament-boundary .tournament-modal { width:min(520px,100%); padding:28px; border:1px solid #65469a; border-radius:14px; background:radial-gradient(circle at 50% 0,rgba(113,62,176,.2),transparent 45%),#15111b; box-shadow:0 30px 90px rgba(0,0,0,.62),0 0 45px rgba(112,62,175,.14); }
.crew-tournament-boundary .tournament-modal h2 { margin:0; color:#f5efff; font-size:23px; }
.crew-tournament-boundary .tournament-modal>p { margin:9px 0 22px; color:#a89db5; font-size:11px; line-height:1.55; }
.crew-tournament-boundary .tournament-modal label { display:block; margin-top:14px; color:#a994bc; font-size:9px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.crew-tournament-boundary .tournament-modal input,.crew-tournament-boundary .tournament-modal select { width:100%; min-height:44px; margin-top:7px; padding:0 13px; border:1px solid #40364c; border-radius:8px; background:#0f0c13; color:#f4eefb; font:inherit; font-size:12px; }
.crew-tournament-boundary .tournament-modal input:focus,.crew-tournament-boundary .tournament-modal select:focus { outline:2px solid rgba(158,104,232,.3); border-color:#8457c2; }
.crew-tournament-boundary .tournament-form-error { margin:11px 0 0!important; color:#f1889b!important; }
.crew-tournament-boundary .tournament-modal-actions { margin-top:22px; display:grid; grid-template-columns:1fr 1.35fr; gap:10px; }
.crew-tournament-boundary .tournament-modal-actions button { min-height:42px; border-radius:8px; font-size:10px; font-weight:850; }
.crew-tournament-boundary .create-tournament-button { border:1px solid #7042ad; background:#482177; color:#fff; }
.crew-tournament-boundary .create-tournament-button:hover { background:#5a2b91; }
.crew-tournament-boundary .tournament-delete-modal strong { color:#fff0f4; }

/* Counter-Strike 2 */
.crew-tournament-boundary .cs2-workspace { background:radial-gradient(circle at 50% -10%,rgba(99,50,185,.16),transparent 32%),#09080e; }
.crew-tournament-boundary .cs2-topbar { position:sticky; top:0; z-index:4; }
.crew-tournament-boundary .cs2-title { display:flex; align-items:center; gap:13px; }
.crew-tournament-boundary .back-button { width:38px; height:38px; display:grid; place-items:center; border:1px solid #383243; border-radius:9px; background:#121019; color:#c5b4e9; font-size:18px; }.crew-tournament-boundary .back-button:hover { border-color:#7546bd; background:#24163a; }
.crew-tournament-boundary .cs2-content { width:100%; padding:34px clamp(22px,3.5vw,52px) 48px; }
.crew-tournament-boundary .cs2-hero { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; max-width:1540px; margin:0 auto 18px; }
.crew-tournament-boundary .cs2-hero h2 { margin:0; font-size:24px; letter-spacing:-.03em; }.crew-tournament-boundary .cs2-hero p:last-child { margin:7px 0 0; color:#8e879a; font-size:13px; }
.crew-tournament-boundary .cs2-progress { min-width:145px; display:flex; align-items:center; gap:10px; padding:10px 13px; border:1px solid #312b3e; border-radius:10px; background:#111018; }.crew-tournament-boundary .cs2-progress span { color:#bea0fa; font-size:26px; font-weight:850; }.crew-tournament-boundary .cs2-progress small { color:#766f80; font-size:8px; font-weight:800; line-height:1.4; letter-spacing:.11em; }
.crew-tournament-boundary .bracket-setup { position:relative; max-width:1540px; margin:0 auto 18px; min-height:76px; padding:14px 16px; display:flex; align-items:center; gap:14px; border:1px solid #302a3b; border-radius:11px; background:linear-gradient(100deg,#17121f,#100e16); }
.crew-tournament-boundary .setup-copy { display:flex; align-items:center; gap:11px; min-width:225px; }.crew-tournament-boundary .setup-number { width:35px; height:35px; display:grid; place-items:center; border-radius:8px; color:#b892ff; background:#2a1746; border:1px solid #49306d; font-size:11px; font-weight:900; }.crew-tournament-boundary .setup-copy strong { display:block; font-size:12px; }.crew-tournament-boundary .setup-copy small { display:block; margin-top:4px; color:#777080; font-size:9px; }
.crew-tournament-boundary .team-count-field { width:92px; }.crew-tournament-boundary .team-count-field input { height:39px; font-size:13px; text-align:center; }
.crew-tournament-boundary .setup-button { height:39px; padding:0 16px; border:1px solid #7549bb; border-radius:7px; background:#351c59; color:#eee6ff; font-size:10px; font-weight:800; }.crew-tournament-boundary .setup-button:hover { background:#482574; }
.crew-tournament-boundary .setup-facts { margin-left:auto; display:flex; gap:8px; }.crew-tournament-boundary .setup-facts span { min-width:80px; padding:8px 10px; border:1px solid #2d2936; border-radius:7px; background:#0d0c12; color:#777181; font-size:8px; text-transform:uppercase; letter-spacing:.08em; }.crew-tournament-boundary .setup-facts strong { display:block; margin-bottom:2px; color:#ddd4ec; font-size:13px; }.crew-tournament-boundary .setup-facts .bye-needed { border-color:#6b4a26; background:#21190f; color:#b79870; }.crew-tournament-boundary .setup-facts .bye-needed strong { color:#ffc875; }
.crew-tournament-boundary .setup-error { position:absolute; left:255px; bottom:-17px; margin:0; color:#ff8fa9; font-size:9px; }
.crew-tournament-boundary .empty-bracket { max-width:1540px; min-height:390px; margin:0 auto; display:flex; flex-direction:column; align-items:center; justify-content:center; border:1px dashed #393141; border-radius:12px; background:rgba(17,15,24,.7); text-align:center; }.crew-tournament-boundary .empty-bracket-icon { width:54px; height:54px; padding:12px; border:1px solid #55367e; border-radius:12px; color:#b794f4; background:#261740; }.crew-tournament-boundary .empty-bracket-icon svg { width:100%; height:100%; }.crew-tournament-boundary .empty-bracket h3 { margin:16px 0 7px; font-size:16px; }.crew-tournament-boundary .empty-bracket p { max-width:440px; margin:0; color:#787281; font-size:11px; line-height:1.6; }
.crew-tournament-boundary .bye-notice { max-width:1540px; margin:0 auto 14px; padding:10px 14px; display:flex; align-items:center; gap:13px; border:1px solid #5b4427; border-radius:8px; background:#1d170f; }.crew-tournament-boundary .bye-notice>span { flex:none; padding:5px 8px; border-radius:5px; color:#ffd590; background:#3a2b16; font-size:8px; font-weight:900; letter-spacing:.1em; }.crew-tournament-boundary .bye-notice p { margin:0; color:#b6a58b; font-size:10px; line-height:1.5; }
.crew-tournament-boundary .mr12-notice { max-width:1540px; margin:0 auto 14px; padding:11px 14px; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:13px; border:1px solid #39476a; border-radius:8px; background:linear-gradient(100deg,#111b2a,#171015); }.crew-tournament-boundary .mr12-notice>span { padding:6px 9px; border:1px solid #486998; border-radius:5px; background:#182c46; color:#add3ff; font-size:9px; font-weight:950; letter-spacing:.12em; }.crew-tournament-boundary .mr12-notice p { margin:0; color:#a5aabe; font-size:10px; line-height:1.5; }.crew-tournament-boundary .mr12-notice p strong { color:#e2e6f2; }.crew-tournament-boundary .mr12-notice>div { display:flex; align-items:center; gap:6px; color:#918b9b; font-size:8px; font-weight:850; }.crew-tournament-boundary .mr12-notice i { width:9px; height:9px; display:inline-block; border-radius:3px; }.crew-tournament-boundary .ct-legend { background:#2879c7; box-shadow:0 0 8px rgba(48,145,235,.35); }.crew-tournament-boundary .t-legend { margin-left:4px; background:#c44848; box-shadow:0 0 8px rgba(227,67,67,.25); }
.crew-tournament-boundary .bracket-scroll { max-width:100%; overflow-x:auto; padding:2px 0 20px; scrollbar-color:#4f356f #111018; }
.crew-tournament-boundary .bracket-board { min-width:calc(var(--round-count) * 365px); min-height:max(520px,calc(var(--first-round-matches) * 330px)); display:grid; grid-template-columns:repeat(var(--round-count),minmax(345px,1fr)); gap:30px; padding:0 2px; }
.crew-tournament-boundary .round-column { min-width:0; display:flex; flex-direction:column; }.crew-tournament-boundary .round-heading { height:64px; flex:none; padding:9px 13px; border-left:2px solid #5f388f; background:linear-gradient(90deg,rgba(51,29,78,.54),transparent); }.crew-tournament-boundary .round-heading span { color:#8d68cb; font-size:8px; font-weight:900; letter-spacing:.15em; }.crew-tournament-boundary .round-heading h3 { margin:4px 0 0; font-size:15px; }.crew-tournament-boundary .round-heading small { float:right; margin-top:-17px; color:#6d6675; font-size:8px; text-transform:uppercase; }
.crew-tournament-boundary .final-column .round-heading { border-color:#e1a94f; background:linear-gradient(90deg,rgba(91,62,21,.38),transparent); }.crew-tournament-boundary .final-column .round-heading span { color:#d6a04b; }
.crew-tournament-boundary .round-matches { flex:1; display:flex; flex-direction:column; justify-content:space-around; gap:16px; padding:12px 0; }
.crew-tournament-boundary .bracket-match { position:relative; min-height:286px; border:1px solid #302a3b; border-radius:10px; background:linear-gradient(145deg,#181520,#0e0d13); box-shadow:0 13px 35px rgba(0,0,0,.25); }.crew-tournament-boundary .bracket-match::after { content:""; position:absolute; left:100%; top:50%; width:31px; height:1px; background:#47335f; }.crew-tournament-boundary .round-column:last-child .bracket-match::after { display:none; }.crew-tournament-boundary .bracket-match.has-winner { border-color:#4e386c; box-shadow:0 0 0 1px rgba(134,79,213,.1),0 13px 35px rgba(0,0,0,.25); }
.crew-tournament-boundary .match-head { height:37px; padding:0 11px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #28232f; }.crew-tournament-boundary .match-head>span { color:#7e7589; font-size:8px; font-weight:900; letter-spacing:.13em; }
.crew-tournament-boundary .match-status { display:flex; align-items:center; gap:5px; padding:3px 6px; border:1px solid #36313d; border-radius:12px; background:#111016; }.crew-tournament-boundary .match-status i { width:5px; height:5px; border-radius:50%; background:#6c6672; }.crew-tournament-boundary .match-status select { max-width:78px; appearance:none; border:0; outline:0; background:transparent; color:#8f8996; font-size:7px; font-weight:850; text-transform:uppercase; }.crew-tournament-boundary .match-ready { border-color:#3c5368; background:#101a23; }.crew-tournament-boundary .match-ready i { background:#62a6df; }.crew-tournament-boundary .match-ready select { color:#a9d6fa; }.crew-tournament-boundary .match-live { border-color:#67449d; background:#241735; }.crew-tournament-boundary .match-live i { background:#b384ff; box-shadow:0 0 8px #9964e6; }.crew-tournament-boundary .match-live select { color:#d1baff; }.crew-tournament-boundary .match-done { border-color:#28573f; background:#102119; }.crew-tournament-boundary .match-done i { background:#4bc98a; }.crew-tournament-boundary .match-done select { color:#a4e5c3; }
.crew-tournament-boundary .team-row { padding:8px 10px 0; display:grid; grid-template-columns:minmax(0,1fr) 68px 68px; gap:7px; }.crew-tournament-boundary .team-input { position:relative; }.crew-tournament-boundary .team-input>span { position:absolute; top:6px; left:9px; z-index:1; color:#6f6878; font-size:7px; font-weight:850; letter-spacing:.1em; }.crew-tournament-boundary .team-input input { height:58px; padding:21px 9px 7px; font-size:11px; font-weight:650; }.crew-tournament-boundary .team-input input:read-only { color:#b6aec2; background:#121019; cursor:default; }.crew-tournament-boundary .team-input.winner-team input { border-color:#7a4cc0; background:#211432; color:#e5d6ff; }.crew-tournament-boundary .side-score-field { position:relative; height:58px; display:grid; grid-template-rows:24px 34px; overflow:hidden; border:1px solid; border-radius:7px; }.crew-tournament-boundary .side-score-field small { position:absolute; top:8px; right:6px; z-index:2; font-size:6px; font-weight:850; letter-spacing:.04em; pointer-events:none; }.crew-tournament-boundary .side-score-field select { width:100%; min-width:0; height:24px; padding:0 20px 0 7px; appearance:none; border:0; outline:0; background:transparent; color:inherit; font-size:9px; font-weight:950; }.crew-tournament-boundary .side-score-field select option { background:#fff; color:#111; }.crew-tournament-boundary .side-score-field input { width:100%; height:34px; padding:2px 4px; border:0; border-top:1px solid currentColor; border-radius:0; background:rgba(0,0,0,.12); color:inherit; text-align:center; font-size:16px; font-weight:900; appearance:textfield; }.crew-tournament-boundary .side-score-field input:focus { box-shadow:inset 0 0 0 2px currentColor; }.crew-tournament-boundary .side-score-field input::-webkit-inner-spin-button,.crew-tournament-boundary .side-score-field input::-webkit-outer-spin-button { margin:0; appearance:none; }.crew-tournament-boundary .side-score-field input:disabled { opacity:.38; cursor:not-allowed; }.crew-tournament-boundary .t-score-field { border-color:#8f363e; background:#321417; color:#ffc2c6; }.crew-tournament-boundary .t-score-field small { color:#d87b82; }.crew-tournament-boundary .t-score-field:focus-within { border-color:#e05c65; box-shadow:0 0 0 3px rgba(224,92,101,.14); }.crew-tournament-boundary .ct-score-field { border-color:#246a9e; background:#10283b; color:#b9ddff; }.crew-tournament-boundary .ct-score-field small { color:#6ea9d4; }.crew-tournament-boundary .ct-score-field:focus-within { border-color:#3998dc; box-shadow:0 0 0 3px rgba(57,152,220,.14); }
.crew-tournament-boundary .bye-actions { padding:7px 10px 0; display:grid; grid-template-columns:1fr 1fr; gap:6px; }.crew-tournament-boundary .bye-actions button { padding:5px 4px; border:1px dashed #58462f; border-radius:5px; background:#18130d; color:#b59a74; font-size:7px; font-weight:750; }.crew-tournament-boundary .bye-actions button:hover:not(:disabled) { border-style:solid; color:#ffd28d; }.crew-tournament-boundary .bye-actions button:disabled { opacity:.25; cursor:not-allowed; }
.crew-tournament-boundary .winner-actions { padding:8px 10px; }.crew-tournament-boundary .winner-actions>span { display:block; margin-bottom:5px; color:#6f6878; font-size:7px; font-weight:850; letter-spacing:.11em; }.crew-tournament-boundary .winner-actions>div { display:grid; grid-template-columns:1fr 1fr auto; gap:6px; }.crew-tournament-boundary .winner-actions button { min-height:28px; padding:5px; border:1px solid #35303d; border-radius:5px; background:#111016; color:#847d8e; font-size:8px; font-weight:800; }.crew-tournament-boundary .winner-actions button:hover:not(:disabled) { border-color:#6844a0; color:#d8c6fa; }.crew-tournament-boundary .winner-actions button.selected { border-color:#8554ce; background:#2b1846; color:#e1d0ff; }.crew-tournament-boundary .winner-actions button:disabled { opacity:.3; cursor:not-allowed; }.crew-tournament-boundary .winner-actions .clear-winner { width:28px; color:#a97f90; }
.crew-tournament-boundary .mr12-score-summary { margin:9px 10px; padding:8px 10px; display:grid; grid-template-columns:1fr auto; align-items:center; gap:2px 10px; border:1px solid #35303f; border-radius:7px; background:#0d0c12; }.crew-tournament-boundary .mr12-score-summary span { color:#797180; font-size:7px; font-weight:900; letter-spacing:.11em; }.crew-tournament-boundary .mr12-score-summary strong { grid-row:1/3; grid-column:2; color:#eee6f8; font-size:17px; font-weight:900; }.crew-tournament-boundary .mr12-score-summary strong i { margin:0 4px; color:#706878; font-style:normal; }.crew-tournament-boundary .mr12-score-summary small { color:#625c69; font-size:7px; }.crew-tournament-boundary .invalid-score-strip { margin:0 10px 8px; padding:8px 9px; display:flex; flex-direction:column; gap:3px; border:1px solid #8b3e48; border-radius:6px; background:#2b1418; }.crew-tournament-boundary .invalid-score-strip strong { color:#ffb3bb; font-size:8px; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }.crew-tournament-boundary .invalid-score-strip span { color:#cb8b92; font-size:7px; line-height:1.4; }
.crew-tournament-boundary .winner-strip { margin:0 10px 8px; padding:7px 9px; display:grid; grid-template-columns:auto 1fr; gap:2px 8px; align-items:center; border:1px solid #5d3a8c; border-radius:6px; background:linear-gradient(90deg,#2b1746,#1b1227); }.crew-tournament-boundary .winner-strip span { color:#a984e6; font-size:7px; font-weight:900; letter-spacing:.11em; }.crew-tournament-boundary .winner-strip strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#eadfff; font-size:10px; }.crew-tournament-boundary .winner-strip small { grid-column:2; color:#806a99; font-size:6px; letter-spacing:.09em; }
.crew-tournament-boundary .draw-strip { margin:0 10px 8px; padding:7px 9px; display:grid; grid-template-columns:auto 1fr; gap:2px 8px; align-items:center; border:1px solid #6a5c38; border-radius:6px; background:linear-gradient(90deg,#2d2718,#18150f); }.crew-tournament-boundary .draw-strip span { color:#d8bb6d; font-size:7px; font-weight:900; letter-spacing:.11em; }.crew-tournament-boundary .draw-strip strong { color:#ffe6a4; font-size:11px; }.crew-tournament-boundary .draw-strip small { grid-column:2; color:#8b7d59; font-size:6px; letter-spacing:.09em; }.crew-tournament-boundary .bracket-match.is-draw { border-color:#655737; }
.crew-tournament-boundary .match-meta { padding:8px 10px 10px; display:grid; grid-template-columns:1fr 1.25fr; gap:7px; border-top:1px solid #27232e; }.crew-tournament-boundary .match-meta label>span { display:block; margin-bottom:4px; color:#67616f; font-size:7px; font-weight:800; letter-spacing:.1em; }.crew-tournament-boundary .match-meta input { height:31px; padding:6px 8px; font-size:9px; }.crew-tournament-boundary .static-server-value { display:flex; align-items:center; min-height:31px; padding:6px 8px; border:1px solid #302b39; border-radius:7px; background:#17141d; color:#c9bfd3; font-size:9px; font-weight:700; }
.crew-tournament-boundary .champion-banner { max-width:1540px; min-height:105px; margin:18px auto 0; display:flex; flex-direction:column; align-items:center; justify-content:center; border:1px solid #4d3b25; border-radius:12px; background:radial-gradient(circle at 50% 0,rgba(168,112,36,.15),transparent 60%),#12100d; }.crew-tournament-boundary .champion-banner>span { color:#d9a958; font-size:9px; font-weight:900; letter-spacing:.18em; }.crew-tournament-boundary .champion-banner strong { margin:5px 0 2px; color:#827562; font-size:24px; }.crew-tournament-boundary .champion-banner small { color:#6c6459; font-size:8px; letter-spacing:.1em; text-transform:uppercase; }.crew-tournament-boundary .champion-banner.decided { border-color:#9d7131; box-shadow:0 0 35px rgba(211,155,67,.12); }.crew-tournament-boundary .champion-banner.decided strong { color:#ffe6ae; text-shadow:0 0 20px rgba(255,201,99,.25); }

/* Fortnite */
.crew-tournament-boundary .fortnite-workspace { background:radial-gradient(circle at 48% -8%,rgba(68,72,185,.17),transparent 34%),#09080f; }
.crew-tournament-boundary .fortnite-topbar { position:sticky; top:0; z-index:4; }
.crew-tournament-boundary .fortnite-status { min-width:145px; display:flex!important; align-items:center; gap:9px; padding:9px 13px!important; border:1px solid #34303e; border-radius:9px; background:#121019; }.crew-tournament-boundary .fortnite-status small { display:block; }.crew-tournament-boundary .fortnite-status select { max-width:105px; appearance:none; border:0; outline:0; padding:0; background:transparent; color:inherit; font-size:11px; font-weight:750; }
.crew-tournament-boundary .fortnite-content { width:min(1540px,100%); margin:0 auto; padding:34px clamp(24px,4vw,60px) 48px; }
.crew-tournament-boundary .fortnite-hero { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:17px; }.crew-tournament-boundary .fortnite-hero h2 { margin:0; font-size:24px; letter-spacing:-.03em; }.crew-tournament-boundary .fortnite-hero p:last-child { margin:7px 0 0; color:#8e879a; font-size:13px; }
.crew-tournament-boundary .fortnite-stats { display:flex; gap:8px; }.crew-tournament-boundary .fortnite-stats div { min-width:115px; padding:10px 12px; border:1px solid #302b3b; border-radius:9px; background:#111018; }.crew-tournament-boundary .fortnite-stats strong { display:block; color:#aeb6ff; font-size:22px; }.crew-tournament-boundary .fortnite-stats span { display:block; margin-top:2px; color:#706a79; font-size:7px; font-weight:800; letter-spacing:.1em; }
.crew-tournament-boundary .rules-notice { margin-bottom:14px; padding:10px 14px; display:flex; align-items:center; gap:13px; border:1px solid #3c426f; border-radius:8px; background:#11152a; }.crew-tournament-boundary .rules-notice>span { flex:none; padding:5px 8px; border-radius:5px; color:#cbd0ff; background:#252c5a; font-size:8px; font-weight:900; letter-spacing:.1em; }.crew-tournament-boundary .rules-notice p { margin:0; color:#a7a9c7; font-size:10px; line-height:1.5; }
.crew-tournament-boundary .fortnite-settings { min-height:73px; margin-bottom:18px; padding:13px 16px; display:flex; align-items:center; gap:18px; border:1px solid #302b3d; border-radius:10px; background:linear-gradient(100deg,#15152a,#100e16); }.crew-tournament-boundary .settings-title { min-width:220px; display:flex; align-items:center; gap:11px; }.crew-tournament-boundary .settings-title strong { display:block; font-size:12px; }.crew-tournament-boundary .settings-title small { display:block; margin-top:4px; color:#777080; font-size:9px; }.crew-tournament-boundary .fortnite-settings label { min-width:180px; }.crew-tournament-boundary .fortnite-settings label>span { display:block; margin-bottom:5px; color:#747080; font-size:7px; font-weight:850; letter-spacing:.1em; }.crew-tournament-boundary .fortnite-settings select { width:100%; height:37px; padding:0 10px; border:1px solid #373245; border-radius:7px; outline:0; background:#0e0d14; color:#d9d3e5; font-size:10px; }.crew-tournament-boundary .fortnite-settings select:focus { border-color:#626bd0; box-shadow:0 0 0 3px rgba(87,96,203,.12); }
.crew-tournament-boundary .format-capabilities { margin-left:auto; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }.crew-tournament-boundary .format-capabilities span { padding:6px 8px; border:1px solid #343851; border-radius:5px; background:#15182b; color:#9298c3; font-size:7px; font-weight:800; letter-spacing:.09em; }
.crew-tournament-boundary .fortnite-results-panel { overflow:hidden; border:1px solid #2d2938; border-radius:11px; background:#111018; }.crew-tournament-boundary .fortnite-results-panel .panel-heading { padding:17px 19px; }.crew-tournament-boundary .fortnite-table-scroll { overflow-x:auto; }
.crew-tournament-boundary .fortnite-table { min-width:1120px; }.crew-tournament-boundary .fortnite-table th:nth-child(1) { width:115px; }.crew-tournament-boundary .fortnite-table th:nth-child(2) { width:230px; }.crew-tournament-boundary .fortnite-table th:nth-child(3),.crew-tournament-boundary .fortnite-table th:nth-child(4),.crew-tournament-boundary .fortnite-table th:nth-child(5),.crew-tournament-boundary .fortnite-table th:nth-child(6) { width:130px; }.crew-tournament-boundary .fortnite-table th:nth-child(7) { width:170px; }.crew-tournament-boundary .fortnite-table td { height:57px; padding-top:9px; padding-bottom:9px; }.crew-tournament-boundary .fortnite-table input { height:37px; }.crew-tournament-boundary .placement-cell { display:grid; grid-template-columns:24px 1fr; align-items:center; gap:6px; }.crew-tournament-boundary .placement-cell>span { color:#53505b; font-size:8px; font-weight:800; }.crew-tournament-boundary .placement-cell input { text-align:center; font-size:13px; font-weight:850; }.crew-tournament-boundary .final-result-input { border-color:#4f4561; background:#151221; }.crew-tournament-boundary .total-result-input { border-color:#4c5090; background:#12152a; color:#dde0ff; font-weight:750; }
.crew-tournament-boundary .fortnite-podium { margin-top:22px; padding:20px; border:1px solid #302b3a; border-radius:11px; background:linear-gradient(145deg,#15131e,#0e0d13); }.crew-tournament-boundary .podium-heading h2 { margin:0; font-size:19px; }.crew-tournament-boundary .podium-heading>p:last-child { margin:6px 0 0; color:#7b7584; font-size:10px; }.crew-tournament-boundary .podium-grid { display:grid; grid-template-columns:1.2fr 1fr 1fr 1.2fr; gap:10px; margin-top:16px; }.crew-tournament-boundary .podium-card { position:relative; min-height:91px; padding:14px 12px 11px; border:1px solid #35303e; border-radius:9px; background:#101016; }.crew-tournament-boundary .podium-card .medal { position:absolute; top:11px; right:12px; color:#81778d; font-size:17px; }.crew-tournament-boundary .podium-card small { display:block; margin:0 30px 10px 0; color:#847d8e; font-size:8px; font-weight:900; letter-spacing:.09em; }.crew-tournament-boundary .podium-card input { height:36px; }.crew-tournament-boundary .podium-card.first-place { border-color:#7d6031; background:linear-gradient(145deg,#211a10,#12100d); }.crew-tournament-boundary .podium-card.first-place small { color:#e0b361; }.crew-tournament-boundary .podium-card.first-place input { border-color:#594528; background:#17120b; color:#ffe7b4; }.crew-tournament-boundary .podium-card.second-place { border-color:#53525d; }.crew-tournament-boundary .podium-card.third-place { border-color:#5f4032; }.crew-tournament-boundary .podium-card.prize-card { border-color:#49406c; background:#151222; }.crew-tournament-boundary .podium-card.prize-card small { color:#b09be0; }

/* Roblox */
.crew-tournament-boundary .roblox-workspace { background:radial-gradient(circle at 48% -8%,rgba(189,66,93,.12),transparent 34%),#09080e; }
.crew-tournament-boundary .roblox-topbar { position:sticky; top:0; z-index:4; }
.crew-tournament-boundary .roblox-theme .section-kicker { color:#dc7188; }.crew-tournament-boundary .roblox-theme .section-kicker span { background:#c6506a; }.crew-tournament-boundary .roblox-theme .setup-number { color:#f0a0b1; background:#401a25; border-color:#713143; }.crew-tournament-boundary .roblox-theme .fortnite-stats strong { color:#f0a0b1; }.crew-tournament-boundary .roblox-theme .rules-notice { border-color:#633242; background:#25121a; }.crew-tournament-boundary .roblox-theme .rules-notice>span { color:#ffd1db; background:#572234; }.crew-tournament-boundary .roblox-theme .rules-notice p { color:#c4a4ac; }.crew-tournament-boundary .roblox-theme .format-capabilities span { border-color:#593040; background:#28151c; color:#cc8798; }.crew-tournament-boundary .roblox-theme .add-button { border-color:#8c3e55; background:#4b1d2b; }.crew-tournament-boundary .roblox-theme .add-button:hover { background:#64283b; }.crew-tournament-boundary .roblox-theme .total-result-input { border-color:#754052; background:#24131a; color:#f7d7df; }.crew-tournament-boundary .roblox-theme .podium-card.prize-card { border-color:#643549; background:#21121a; }.crew-tournament-boundary .roblox-theme .podium-card.prize-card small { color:#d88ba0; }
.crew-tournament-boundary .roblox-table { min-width:1120px; }.crew-tournament-boundary .roblox-table th:nth-child(1) { width:245px; }.crew-tournament-boundary .roblox-table th:nth-child(2),.crew-tournament-boundary .roblox-table th:nth-child(3),.crew-tournament-boundary .roblox-table th:nth-child(4),.crew-tournament-boundary .roblox-table th:nth-child(5) { width:130px; }.crew-tournament-boundary .roblox-table th:nth-child(6) { width:175px; }.crew-tournament-boundary .roblox-table th:nth-child(7) { width:115px; }.crew-tournament-boundary .participant-cell { display:grid; grid-template-columns:24px 1fr; align-items:center; gap:6px; }.crew-tournament-boundary .participant-cell>span { color:#53505b; font-size:8px; font-weight:800; }.crew-tournament-boundary .roblox-placement-input { text-align:center; border-color:#5d3a47; background:#1c1116; font-size:13px; font-weight:850; }
.crew-tournament-boundary .result-actions { display:flex; align-items:center; gap:8px; }.crew-tournament-boundary .round-button,.crew-tournament-boundary .remove-round-button { padding:9px 13px; border:1px solid #614151; border-radius:8px; background:#21151b; color:#d5a2ae; font-size:10px; font-weight:750; }.crew-tournament-boundary .round-button:hover { border-color:#9d4a61; background:#301a23; color:#ffd3dd; }.crew-tournament-boundary .round-button span,.crew-tournament-boundary .remove-round-button span { margin-right:4px; font-size:14px; }.crew-tournament-boundary .remove-round-button { border-color:#633541; background:#251318; color:#d994a4; }.crew-tournament-boundary .remove-round-button:hover:not(:disabled) { border-color:#a64a61; background:#361820; color:#ffc0ce; }.crew-tournament-boundary .remove-round-button:disabled { opacity:.32; cursor:not-allowed; }.crew-tournament-boundary .roblox-table th:not(:first-child):not(:last-child) { min-width:125px; }.crew-tournament-boundary .roblox-table th:first-child { min-width:225px; }.crew-tournament-boundary .calculated-input { border-color:#3e704f!important; background:#101f16!important; color:#a9e6be!important; cursor:default; font-weight:800; }

/* Alle-mod-alle */
.crew-tournament-boundary .tournament-format-picker { margin-bottom:18px; display:flex; align-items:flex-end; gap:14px; padding:14px 16px; border:1px solid #3b304c; border-radius:10px; background:#14101c; }.crew-tournament-boundary .tournament-format-picker label { min-width:230px; }.crew-tournament-boundary .tournament-format-picker label>span,.crew-tournament-boundary .league-setup label>span { display:block; margin-bottom:6px; color:#9a7ac8; font-size:8px; font-weight:850; letter-spacing:.11em; }.crew-tournament-boundary .tournament-format-picker select,.crew-tournament-boundary .league-setup select { width:100%; min-height:38px; border:1px solid #563b79; border-radius:7px; background:#1c1229; color:#f2e8ff; padding:8px 10px; font-size:11px; font-weight:750; }.crew-tournament-boundary .tournament-format-picker select option,.crew-tournament-boundary .league-setup select option { background:#fff; color:#111; }.crew-tournament-boundary .tournament-format-picker small { padding-bottom:11px; color:#766d81; font-size:9px; }
.crew-tournament-boundary .league-platform { margin-top:18px; overflow:hidden; border:1px solid #3a3048; border-radius:12px; background:linear-gradient(145deg,#15121d,#0d0c12); }.crew-tournament-boundary .league-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; padding:20px; border-bottom:1px solid #2d2737; }.crew-tournament-boundary .league-heading h2 { margin:0; font-size:22px; }.crew-tournament-boundary .league-heading p:last-child { margin:7px 0 0; color:#92889f; font-size:11px; line-height:1.55; }.crew-tournament-boundary .league-save { opacity:0; padding:6px 9px; border:1px solid #356b4c; border-radius:6px; background:#112419; color:#9ce1b7; font-size:8px; font-weight:900; transition:opacity .2s; }.crew-tournament-boundary .league-save.visible { opacity:1; }
.crew-tournament-boundary .league-setup { display:flex; align-items:flex-end; gap:14px; padding:16px 20px; border-bottom:1px solid #29232f; background:#100e16; }.crew-tournament-boundary .league-setup label { width:180px; }.crew-tournament-boundary .league-participant-actions { flex:1; display:flex; align-items:center; justify-content:flex-end; gap:8px; }.crew-tournament-boundary .league-participant-actions>strong { margin-right:auto; color:#968aa3; font-size:10px; }.crew-tournament-boundary .league-participant-actions .setup-button:disabled { opacity:.35; cursor:not-allowed; }
.crew-tournament-boundary .league-participants { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:16px 20px; }.crew-tournament-boundary .league-participant { display:grid; grid-template-columns:24px minmax(0,1fr) 30px; align-items:center; gap:6px; }.crew-tournament-boundary .league-participant>span { color:#625a6d; font-size:8px; font-weight:850; }.crew-tournament-boundary .league-empty { margin:0 20px 18px; padding:24px; border:1px dashed #3d3548; border-radius:9px; color:#797181; text-align:center; }.crew-tournament-boundary .league-empty strong,.crew-tournament-boundary .league-empty span { display:block; }.crew-tournament-boundary .league-empty strong { color:#c5bacf; font-size:12px; }.crew-tournament-boundary .league-empty span { margin-top:5px; font-size:9px; }
.crew-tournament-boundary .league-progress { display:flex; align-items:center; justify-content:space-between; padding:12px 20px; border-top:1px solid #2a2431; border-bottom:1px solid #2a2431; background:#15101d; color:#9b90a6; font-size:10px; }.crew-tournament-boundary .league-progress strong { color:#cdb0ff; font-size:16px; }.crew-tournament-boundary .league-progress b { padding:5px 8px; border:1px solid #4d3970; border-radius:5px; background:#24163a; color:#d9c3ff; font-size:8px; letter-spacing:.08em; }
.crew-tournament-boundary .league-match-table { min-width:900px; }.crew-tournament-boundary .league-match-table th:nth-child(1) { width:70px; }.crew-tournament-boundary .league-match-table th:nth-child(2),.crew-tournament-boundary .league-match-table th:nth-child(4) { width:220px; }.crew-tournament-boundary .league-match-table th:nth-child(3) { width:190px; }.crew-tournament-boundary .league-match-table th:nth-child(5) { width:130px; }.crew-tournament-boundary .league-match-table td>strong { color:#e9e0f1; font-size:11px; }.crew-tournament-boundary .league-score { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:7px; }.crew-tournament-boundary .league-score input { text-align:center; font-size:14px; font-weight:850; }.crew-tournament-boundary .league-score span { color:#705b8a; font-weight:900; }.crew-tournament-boundary .league-match-status { display:inline-flex; padding:6px 8px; border:1px solid #3b3542; border-radius:5px; color:#8c8492; font-size:7px; font-weight:900; }.crew-tournament-boundary .league-match-status.live { border-color:#7147a9; background:#28183e; color:#d4baff; }.crew-tournament-boundary .league-match-status.done { border-color:#34704f; background:#11251a; color:#9de2b9; }
.crew-tournament-boundary .league-standings { border-top:1px solid #362d41; }.crew-tournament-boundary .league-standings .panel-heading { align-items:flex-start; }.crew-tournament-boundary .league-standings .panel-heading p:last-child { margin:6px 0 0; color:#7d7488; font-size:9px; }.crew-tournament-boundary .league-standings-table { min-width:720px; }.crew-tournament-boundary .league-standings-table th:not(:nth-child(2)),.crew-tournament-boundary .league-standings-table td:not(:nth-child(2)) { text-align:center; }.crew-tournament-boundary .league-standings-table tbody tr:first-child { background:rgba(174,125,52,.08); }.crew-tournament-boundary .league-points { display:inline-grid; min-width:34px; min-height:30px; place-items:center; border:1px solid #4a7659; border-radius:6px; background:#12241a; color:#a8e6be; font-size:14px; }
.crew-tournament-boundary .league-podium { display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:9px; padding:18px 20px 20px; border-top:1px solid #342b3e; }.crew-tournament-boundary .league-podium>div { min-height:74px; padding:13px; border:1px solid #403749; border-radius:8px; background:#121017; }.crew-tournament-boundary .league-podium>div:first-child { border-color:#76582c; background:#21190e; }.crew-tournament-boundary .league-podium small,.crew-tournament-boundary .league-podium strong { display:block; }.crew-tournament-boundary .league-podium small { color:#a58a5d; font-size:8px; font-weight:900; letter-spacing:.08em; }.crew-tournament-boundary .league-podium strong { margin-top:10px; color:#f1e7fa; font-size:12px; }

/* Just Dance */
.crew-tournament-boundary .just-dance-workspace { background:radial-gradient(circle at 48% -8%,rgba(215,75,165,.15),transparent 34%),#09080f; }.crew-tournament-boundary .just-dance-topbar { position:sticky; top:0; z-index:4; }.crew-tournament-boundary .just-dance-theme .section-kicker { color:#eb79c1; }.crew-tournament-boundary .just-dance-theme .section-kicker span { background:#d852a5; }.crew-tournament-boundary .just-dance-theme .fortnite-stats strong { color:#f09fd3; }.crew-tournament-boundary .just-dance-theme .rules-notice { border-color:#69345a; background:#251321; }.crew-tournament-boundary .just-dance-theme .rules-notice>span { color:#ffd4ef; background:#592144; }.crew-tournament-boundary .just-dance-theme .rules-notice p { color:#c7a7bc; }.crew-tournament-boundary .just-dance-theme .add-button { border-color:#9a3c77; background:#552040; }.crew-tournament-boundary .just-dance-theme .add-button:hover { background:#712b56; }
.crew-tournament-boundary .dance-flow { margin-bottom:18px; padding:14px 16px; border:1px solid #43304a; border-radius:10px; background:linear-gradient(100deg,#1c1322,#100e16); }.crew-tournament-boundary .dance-flow>small { display:block; margin-bottom:10px; color:#8c6d86; font-size:7px; font-weight:850; letter-spacing:.13em; }.crew-tournament-boundary .dance-flow>div { display:flex; align-items:center; gap:11px; }.crew-tournament-boundary .dance-flow span { flex:1; padding:9px 11px; border:1px solid #49354d; border-radius:7px; background:#171219; color:#c5acc0; font-size:9px; font-weight:850; letter-spacing:.08em; text-align:center; }.crew-tournament-boundary .dance-flow b { color:#8d587d; font-size:16px; }.crew-tournament-boundary .dance-flow .flow-final { border-color:#9c7141; background:#261d12; color:#ffd493; }
.crew-tournament-boundary .just-dance-table { min-width:920px; }.crew-tournament-boundary .just-dance-table th:nth-child(1) { width:245px; }.crew-tournament-boundary .just-dance-table th:nth-child(2) { width:210px; }.crew-tournament-boundary .just-dance-table th:nth-child(3),.crew-tournament-boundary .just-dance-table th:nth-child(4) { width:145px; }.crew-tournament-boundary .just-dance-table th:nth-child(5) { width:195px; }.crew-tournament-boundary .just-dance-table td { height:58px; }.crew-tournament-boundary .advance-control { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px; }.crew-tournament-boundary .advance-toggle { min-height:36px; display:flex; align-items:center; justify-content:center; gap:7px; border:1px solid #3a333e; border-radius:7px; background:#111016; color:#756d78; cursor:pointer; }.crew-tournament-boundary .advance-toggle input { position:absolute; width:1px; height:1px; opacity:0; }.crew-tournament-boundary .advance-toggle span { font-size:7px; font-weight:850; letter-spacing:.05em; }.crew-tournament-boundary .advance-toggle.checked { border-color:#34704f; background:#12251a; color:#9de2b9; box-shadow:inset 3px 0 #48c987; }.crew-tournament-boundary .advance-toggle.manual { border-style:dashed; }.crew-tournament-boundary .restore-auto-button { width:42px; border:1px solid #59435a; border-radius:6px; background:#211723; color:#c695b4; font-size:7px; font-weight:850; }.crew-tournament-boundary .restore-auto-button:hover { border-color:#9b507d; color:#ffd0ed; }
.crew-tournament-boundary .dance-final-panel { overflow:hidden; margin-top:22px; border:1px solid #875e33; border-radius:12px; background:radial-gradient(circle at 50% 0,rgba(181,116,43,.12),transparent 52%),#15110d; box-shadow:0 18px 55px rgba(0,0,0,.22); }.crew-tournament-boundary .dance-final-heading { padding:19px; display:flex; align-items:flex-end; justify-content:space-between; gap:20px; border-bottom:1px solid #4b3824; }.crew-tournament-boundary .dance-final-heading h2 { margin:0; color:#ffe0a8; font-size:22px; }.crew-tournament-boundary .dance-final-heading p:last-child { margin:6px 0 0; color:#9e8564; font-size:10px; }.crew-tournament-boundary .automatic-final-badge { flex:none; padding:8px 10px; border:1px solid #805c33; border-radius:7px; background:#2c2012; color:#e6bd7c; font-size:8px; font-weight:900; letter-spacing:.08em; }.crew-tournament-boundary .automatic-final-badge.results-ready { border-color:#3e704f; background:#112419; color:#a9e6be; box-shadow:0 0 18px rgba(72,201,135,.12); }.crew-tournament-boundary .dance-final-table { min-width:700px; }.crew-tournament-boundary .dance-final-table th { background:#100d09; color:#8d7453; }.crew-tournament-boundary .dance-final-table th:nth-child(1) { width:48%; }.crew-tournament-boundary .dance-final-table th:nth-child(2) { width:28%; }.crew-tournament-boundary .dance-final-table th:nth-child(3),.crew-tournament-boundary .dance-final-table th:last-child,.crew-tournament-boundary .dance-final-table td:last-child { width:18%; padding-right:20px; }.crew-tournament-boundary .dance-final-table td { border-color:#302619; }.crew-tournament-boundary .dance-final-table .participant-cell>span { color:#9d7744; }.crew-tournament-boundary .dance-final-table .participant-cell input:read-only { color:#f0d6aa; background:#18120b; cursor:default; }.crew-tournament-boundary .dance-final-placement { border-color:#75552f; background:#21180e; color:#ffd792; text-align:center; font-weight:850; }.crew-tournament-boundary .final-empty-state { padding:24px; color:#86745a; font-size:10px; text-align:center; }.crew-tournament-boundary .just-dance-podium { border-color:#503247; }.crew-tournament-boundary .just-dance-podium .prize-card { border-color:#6b3b5c; background:#241320; }.crew-tournament-boundary .just-dance-podium .prize-card small { color:#e58abc; }

/* Præmievindere */
.crew-tournament-boundary .prizes-workspace { background:radial-gradient(circle at 50% -10%,rgba(205,145,48,.13),transparent 36%),#09080d; }.crew-tournament-boundary .prizes-topbar { position:sticky; top:0; z-index:4; }.crew-tournament-boundary .prize-progress { border-color:#315a43!important; background:#101d16!important; color:#a8eac3; }.crew-tournament-boundary .prizes-content { width:min(1440px,100%); margin:0 auto; padding:34px clamp(24px,4vw,60px) 48px; }.crew-tournament-boundary .prizes-hero { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; }.crew-tournament-boundary .prizes-hero h2 { margin:0; color:#ffe2a6; font-size:25px; letter-spacing:-.03em; }.crew-tournament-boundary .prizes-hero p:last-child { margin:7px 0 0; color:#928875; font-size:13px; }.crew-tournament-boundary .prize-total { min-width:140px; padding:11px 14px; display:flex; align-items:center; gap:11px; border:1px solid #5e4528; border-radius:9px; background:#18130d; }.crew-tournament-boundary .prize-total strong { color:#ffd68a; font-size:27px; }.crew-tournament-boundary .prize-total span { color:#9f845d; font-size:8px; font-weight:850; line-height:1.35; letter-spacing:.09em; }.crew-tournament-boundary .prize-notice { margin:18px 0; padding:11px 14px; display:flex; align-items:center; gap:13px; border:1px solid #4c3a24; border-radius:8px; background:#17120c; }.crew-tournament-boundary .prize-notice>span { flex:none; padding:5px 8px; border-radius:5px; background:#49351d; color:#ffdda1; font-size:8px; font-weight:900; letter-spacing:.1em; }.crew-tournament-boundary .prize-notice p { margin:0; color:#aa9676; font-size:10px; line-height:1.5; }
.crew-tournament-boundary .prize-table-panel { overflow:hidden; border:1px solid #3d3224; border-radius:12px; background:#11100e; box-shadow:0 18px 55px rgba(0,0,0,.2); }.crew-tournament-boundary .prize-table { min-width:1050px; }.crew-tournament-boundary .prize-table th { background:#0d0b09; color:#897657; }.crew-tournament-boundary .prize-table th:nth-child(1) { width:210px; }.crew-tournament-boundary .prize-table th:nth-child(2) { width:130px; }.crew-tournament-boundary .prize-table th:nth-child(3) { width:290px; }.crew-tournament-boundary .prize-table th:nth-child(4) { width:250px; }.crew-tournament-boundary .prize-table th:nth-child(5) { width:190px; }.crew-tournament-boundary .prize-table td { height:72px; border-color:#2d271e; }.crew-tournament-boundary .prize-table tr.prize-game-start td { border-top:2px solid #51402a; }.crew-tournament-boundary .prize-table tbody tr:first-child td { border-top:0; }.crew-tournament-boundary .prize-table tr.prize-delivered { background:rgba(53,117,79,.07); }.crew-tournament-boundary .prize-game-name { color:#f1e3c9; font-size:11px; font-weight:800; }.crew-tournament-boundary .prize-placement { display:inline-flex; min-width:78px; padding:6px 8px; justify-content:center; border:1px solid #443d33; border-radius:6px; background:#171510; color:#b6aa98; font-size:9px; font-weight:850; }.crew-tournament-boundary .prize-placement.place-1 { border-color:#80602f; background:#241b0e; color:#ffd68b; }.crew-tournament-boundary .prize-placement.place-2 { border-color:#575862; background:#17171c; color:#d3d4dc; }.crew-tournament-boundary .prize-placement.place-3 { border-color:#654735; background:#21160f; color:#d9a47d; }.crew-tournament-boundary .prize-table input { height:40px; border-color:#40372a; background:#14110d; font-size:12px; }.crew-tournament-boundary .prize-table input:focus { border-color:#b58238; box-shadow:0 0 0 3px rgba(181,130,56,.12); }.crew-tournament-boundary .prize-winner-control>div { min-height:16px; margin-top:4px; display:flex; align-items:center; justify-content:space-between; gap:8px; }.crew-tournament-boundary .prize-winner-control>div>span { color:#6f675b; font-size:6px; font-weight:850; letter-spacing:.08em; }.crew-tournament-boundary .prize-winner-control>div>button { padding:2px 6px; border:1px solid #665135; border-radius:4px; background:#21180e; color:#d7b67e; font-size:6px; font-weight:850; }.crew-tournament-boundary .prize-winner-control>div>button:hover { border-color:#a77a38; color:#ffe1aa; }
.crew-tournament-boundary .delivered-check { width:100%; min-height:40px; padding:6px 8px; display:flex; align-items:center; justify-content:center; gap:8px; border:1px solid #65432d; border-radius:7px; background:#24170e; color:#e1a868; cursor:pointer; }.crew-tournament-boundary .delivered-check span { width:22px; height:22px; display:grid; place-items:center; border:2px solid #976133; border-radius:5px; color:transparent; font-size:15px; font-weight:950; }.crew-tournament-boundary .delivered-check strong { font-size:7px; letter-spacing:.07em; }.crew-tournament-boundary .delivered-check:hover:not(:disabled) { border-color:#b9793d; background:#321f10; }.crew-tournament-boundary .delivered-check.checked { border-color:#34704f; background:#11251a; color:#9de2b9; box-shadow:inset 3px 0 #48c987; }.crew-tournament-boundary .delivered-check.checked span { border-color:#48c987; background:#48c987; color:#0a1a11; }.crew-tournament-boundary .delivered-check:disabled { border-color:#302b25; background:#13110f; color:#5f5850; cursor:not-allowed; opacity:.7; }.crew-tournament-boundary .delivered-check:disabled span { border-color:#48423a; }.crew-tournament-boundary .delivery-modal { width:min(520px,calc(100% - 32px)); padding:28px; border:1px solid #76552d; border-radius:14px; background:radial-gradient(circle at 50% 0,rgba(198,139,51,.15),transparent 42%),#13100c; box-shadow:0 28px 100px rgba(0,0,0,.68); }.crew-tournament-boundary .delivery-modal-icon { width:48px; height:48px; margin:0 auto 13px; display:grid; place-items:center; border:1px solid #467455; border-radius:50%; background:#13291c; color:#70d599; font-size:24px; font-weight:950; }.crew-tournament-boundary .delivery-modal h2 { margin:0; color:#ffe0a7; text-align:center; font-size:24px; }.crew-tournament-boundary .delivery-modal .reset-kicker { color:#af8550; text-align:center; }.crew-tournament-boundary .delivery-recipient { margin:18px 0; padding:14px; border:1px solid #4c3a24; border-radius:9px; background:#1b150d; text-align:center; }.crew-tournament-boundary .delivery-recipient small { display:block; color:#9b805b; font-size:8px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }.crew-tournament-boundary .delivery-recipient strong { display:block; margin-top:6px; color:#fff0cf; font-size:18px; }.crew-tournament-boundary .delivery-recipient span { display:block; margin-top:4px; color:#8d806d; font-size:10px; }.crew-tournament-boundary .initials-field>span { display:block; margin-bottom:6px; color:#a58e6b; font-size:8px; font-weight:850; letter-spacing:.1em; }.crew-tournament-boundary .initials-field input { height:48px; text-align:center; border-color:#79572f; background:#0f0d0a; color:#ffe2aa; font-size:18px; font-weight:900; letter-spacing:.15em; text-transform:uppercase; }.crew-tournament-boundary .delivery-modal-actions { margin-top:18px; display:grid; grid-template-columns:1fr 1fr; gap:8px; }.crew-tournament-boundary .delivery-modal-actions:has(.remove-receipt-button) { grid-template-columns:1fr 1fr 1.2fr; }.crew-tournament-boundary .delivery-modal-actions button { min-height:42px; border-radius:8px; font-size:9px; font-weight:850; }.crew-tournament-boundary .confirm-delivery-button { border:1px solid #34704f; background:#173522; color:#a9e6be; }.crew-tournament-boundary .confirm-delivery-button:hover:not(:disabled) { background:#20472f; }.crew-tournament-boundary .confirm-delivery-button:disabled { opacity:.35; cursor:not-allowed; }.crew-tournament-boundary .remove-receipt-button { border:1px solid #713646; background:#2a141a; color:#e8a0b4; }.crew-tournament-boundary .remove-receipt-button:hover { background:#3a1923; }.crew-tournament-boundary .prize-overview-callout { margin-top:22px; padding:18px 20px; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:16px; border:1px solid #5b4326; border-radius:12px; background:linear-gradient(100deg,#1b140c,#100e13); }.crew-tournament-boundary .prize-callout-icon { width:45px; height:45px; display:grid; place-items:center; border:1px solid #7a572a; border-radius:9px; background:#2b1e0d; color:#ffd27f; font-size:22px; }.crew-tournament-boundary .prize-overview-callout h2 { margin:0; color:#ffe1a8; font-size:18px; }.crew-tournament-boundary .prize-overview-callout p:last-child { margin:5px 0 0; color:#8e816d; font-size:10px; }.crew-tournament-boundary .prize-overview-callout button { padding:11px 15px; border:1px solid #8b632e; border-radius:8px; background:#3a270f; color:#ffe0a4; font-size:10px; font-weight:850; }.crew-tournament-boundary .prize-overview-callout button:hover { background:#503615; }.crew-tournament-boundary .prize-overview-callout button span { margin-left:7px; }
.crew-tournament-boundary footer { margin-top:auto; min-height:41px; padding:0 clamp(24px,4vw,60px); display:flex; align-items:center; justify-content:space-between; border-top:1px solid #211e2b; color:#5f596a; background:#0b0a10; font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.crew-tournament-boundary footer span { display:flex; align-items:center; gap:7px; } .crew-tournament-boundary footer i { width:6px; height:6px; }.crew-tournament-boundary .save-indicator { opacity:0; color:#9be2be; transition:opacity .2s; }.crew-tournament-boundary .save-indicator.visible { opacity:1; }
.crew-tournament-boundary .tournament-workflow { margin:16px 0; padding:15px 17px; display:flex; align-items:center; justify-content:space-between; gap:18px; border:1px solid #40364d; border-radius:10px; background:linear-gradient(100deg,#17121f,#100d16); }.crew-tournament-boundary .tournament-workflow>div:first-child { display:flex; flex-direction:column; gap:4px; }.crew-tournament-boundary .tournament-workflow small { color:#a775ec; font-size:8px; font-weight:900; letter-spacing:.12em; }.crew-tournament-boundary .tournament-workflow strong { color:#f1e8fa; font-size:14px; }.crew-tournament-boundary .tournament-workflow span { color:#8f8498; font-size:10px; }.crew-tournament-boundary .tournament-workflow button,.crew-tournament-boundary .league-status-actions button { min-height:36px; padding:8px 12px; border-radius:7px; font-size:8px; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }.crew-tournament-boundary .workflow-start { border:1px solid #4a745b; background:#173321; color:#9ee0b7; }.crew-tournament-boundary .workflow-finish { border:1px solid #7c5730; background:#33210f; color:#ffd08b; }.crew-tournament-boundary .workflow-reopen { border:1px solid #60417e; background:#241433; color:#d5adfa; }.crew-tournament-boundary .tournament-workflow button:disabled,.crew-tournament-boundary .league-status-actions button:disabled { opacity:.35; cursor:not-allowed; }.crew-tournament-boundary .league-status-actions { display:flex; align-items:center; gap:7px; }.crew-tournament-boundary .league-status-actions button { min-height:30px; padding:6px 8px; border:1px solid #60417e; background:#241433; color:#d5adfa; white-space:nowrap; }
.crew-tournament-boundary .selection-required { margin:18px 0; padding:28px; display:flex; align-items:center; justify-content:center; gap:14px; border:1px dashed #65468a; border-radius:12px; background:linear-gradient(110deg,#171120,#100d16); text-align:left; }.crew-tournament-boundary .selection-required>span { width:38px; height:38px; flex:none; display:grid; place-items:center; border:1px solid #8257b3; border-radius:50%; background:#28173b; color:#d9b5ff; font-size:18px; font-weight:950; }.crew-tournament-boundary .selection-required strong { display:block; color:#f4eafd; font-size:15px; }.crew-tournament-boundary .selection-required p { margin:5px 0 0; color:#9a8ca5; font-size:10px; line-height:1.5; }
.crew-tournament-boundary .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:1180px) { .crew-tournament-boundary .tournament-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.crew-tournament-boundary .event-meta>div { min-width:115px; }.crew-tournament-boundary .podium-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:800px) { .crew-tournament-boundary .dashboard-shell { grid-template-columns:1fr; padding-bottom:66px; }.crew-tournament-boundary .sidebar { position:fixed; top:auto; bottom:0; width:100%; height:66px; flex-direction:row; justify-content:space-between; padding:9px 16px; border:0; border-top:1px solid #2b2736; }.crew-tournament-boundary .sidebar nav { flex-direction:row; gap:2px; margin:0; }.crew-tournament-boundary .nav-button { width:36px; height:39px; }.crew-tournament-boundary .brand-mark { width:39px; height:39px; }.crew-tournament-boundary .sidebar-bottom { margin:0; }.crew-tournament-boundary .topbar { align-items:flex-start; gap:18px; }.crew-tournament-boundary .event-meta { flex-wrap:wrap; justify-content:flex-end; }.crew-tournament-boundary .event-meta>div { min-width:0; padding:8px 10px; }.crew-tournament-boundary .event-meta .event-state { min-width:0; }.crew-tournament-boundary .meta-icon { display:none; }.crew-tournament-boundary .cs2-content { padding:25px 20px 38px; }.crew-tournament-boundary .bracket-setup { flex-wrap:wrap; }.crew-tournament-boundary .setup-facts { width:100%; margin-left:0; }.crew-tournament-boundary .setup-facts span { flex:1; }.crew-tournament-boundary .setup-error { position:static; width:100%; }.crew-tournament-boundary .bracket-board { grid-template-columns:repeat(var(--round-count),300px); }.crew-tournament-boundary .cs2-hero { align-items:flex-start; }.crew-tournament-boundary .fortnite-content { padding:25px 20px 38px; }.crew-tournament-boundary .fortnite-settings { flex-wrap:wrap; }.crew-tournament-boundary .format-capabilities { width:100%; margin-left:0; justify-content:flex-start; }.crew-tournament-boundary .fortnite-hero { align-items:flex-start; } }
@media (max-width:620px) { .crew-tournament-boundary .topbar { flex-direction:column; }.crew-tournament-boundary .event-meta { width:100%; justify-content:flex-start; }.crew-tournament-boundary .event-meta>div { flex:1; }.crew-tournament-boundary .content-wrap { padding-top:25px; }.crew-tournament-boundary .section-heading { align-items:flex-start; }.crew-tournament-boundary .live-summary { min-width:95px; }.crew-tournament-boundary .tournament-grid { grid-template-columns:1fr; }.crew-tournament-boundary .panel-heading { align-items:center; } .crew-tournament-boundary footer>span:nth-child(2) { display:none; }.crew-tournament-boundary .cs2-topbar .event-meta>div:first-child,.crew-tournament-boundary .fortnite-topbar .event-meta>div:first-child,.crew-tournament-boundary .roblox-topbar .event-meta>div:first-child,.crew-tournament-boundary .just-dance-topbar .event-meta>div:first-child,.crew-tournament-boundary .prizes-topbar .event-meta>div:first-child { display:none; }.crew-tournament-boundary .cs2-hero { align-items:flex-start; }.crew-tournament-boundary .cs2-progress { min-width:115px; }.crew-tournament-boundary .setup-copy { min-width:100%; }.crew-tournament-boundary .bye-notice { align-items:flex-start; flex-direction:column; }.crew-tournament-boundary .bracket-board { min-width:calc(var(--round-count) * 285px); grid-template-columns:repeat(var(--round-count),270px); gap:24px; }.crew-tournament-boundary .fortnite-hero { flex-direction:column; }.crew-tournament-boundary .fortnite-stats { width:100%; }.crew-tournament-boundary .fortnite-stats div { flex:1; }.crew-tournament-boundary .rules-notice { align-items:flex-start; flex-direction:column; }.crew-tournament-boundary .settings-title { min-width:100%; }.crew-tournament-boundary .fortnite-settings label { flex:1; }.crew-tournament-boundary .podium-grid { grid-template-columns:1fr; }.crew-tournament-boundary .result-actions { flex-direction:column; align-items:stretch; }.crew-tournament-boundary .result-actions button { width:100%; }.crew-tournament-boundary .event-data-actions { flex-wrap:wrap; }.crew-tournament-boundary .export-feedback { width:100%; margin:0; text-align:right; }.crew-tournament-boundary .reset-modal { padding:23px 18px; }.crew-tournament-boundary .reset-modal-actions { grid-template-columns:1fr; }.crew-tournament-boundary .dance-flow>div { align-items:stretch; flex-direction:column; }.crew-tournament-boundary .dance-flow b { transform:rotate(90deg); align-self:center; }.crew-tournament-boundary .dance-final-heading { align-items:stretch; flex-direction:column; }.crew-tournament-boundary .dance-final-add { width:100%; }.crew-tournament-boundary .prizes-hero { align-items:stretch; flex-direction:column; }.crew-tournament-boundary .prize-total { width:100%; }.crew-tournament-boundary .prize-notice { align-items:flex-start; flex-direction:column; }.crew-tournament-boundary .prize-overview-callout { grid-template-columns:auto minmax(0,1fr); }.crew-tournament-boundary .prize-overview-callout button { grid-column:1/-1; width:100%; }.crew-tournament-boundary .delivery-modal { padding:23px 18px; }.crew-tournament-boundary .delivery-modal-actions,.crew-tournament-boundary .delivery-modal-actions:has(.remove-receipt-button) { grid-template-columns:1fr; } }
@media (max-width:620px) { .crew-tournament-boundary .overview-heading-actions { width:100%; align-items:stretch; flex-direction:column-reverse; }.crew-tournament-boundary .add-tournament-button { width:100%; }.crew-tournament-boundary .tournament-modal { padding:23px 18px; }.crew-tournament-boundary .tournament-modal-actions { grid-template-columns:1fr; } }
@media (max-width:620px) { .crew-tournament-boundary .event-data-actions { align-items:stretch; flex-direction:column; }.crew-tournament-boundary .live-data-button { align-self:flex-start; }.crew-tournament-boundary .event-secondary-actions { flex-wrap:wrap; }.crew-tournament-boundary .event-secondary-actions .export-feedback { width:100%; text-align:right; } }

/* Offentlig Live LAN-visning */
.crew-tournament-boundary .live-lan-page { min-height:100vh; padding:clamp(22px,4vw,58px); background:radial-gradient(circle at 10% 0,rgba(102,48,169,.2),transparent 34%),#09070e; color:#f6f1fb; }
.crew-tournament-boundary .live-lan-header { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; padding-bottom:25px; border-bottom:1px solid #30283a; }
.crew-tournament-boundary .live-lan-header>div:first-child>p { margin:0 0 8px; color:#a775ec; font-size:10px; font-weight:900; letter-spacing:.18em; }
.crew-tournament-boundary .live-lan-header h1 { margin:0; font-size:clamp(30px,4vw,58px); line-height:1.05; letter-spacing:-.025em; }
.crew-tournament-boundary .live-lan-event-meta { display:flex; align-items:stretch; gap:8px; }
.crew-tournament-boundary .live-lan-event-meta>span { min-width:130px; padding:12px 15px; display:flex; flex-direction:column; justify-content:center; border:1px solid #30293a; border-radius:10px; background:#13101a; color:#eee6f7; font-size:12px; font-weight:750; }
.crew-tournament-boundary .live-lan-event-meta small { margin-bottom:4px; color:#8f849c; font-size:8px; font-weight:850; letter-spacing:.12em; }
.crew-tournament-boundary .live-lan-event-meta .live-lan-status { position:relative; padding-left:29px; }
.crew-tournament-boundary .live-lan-status i { position:absolute; left:14px; width:7px; height:7px; border-radius:50%; background:#9b5cff; box-shadow:0 0 12px #9b5cff; }
.crew-tournament-boundary .live-lan-update { min-height:45px; display:flex; align-items:center; justify-content:flex-end; gap:8px; color:#92869e; font-size:9px; font-weight:750; letter-spacing:.06em; }
.crew-tournament-boundary .live-lan-update>span { width:7px; height:7px; border-radius:50%; background:#654f72; }.crew-tournament-boundary .live-lan-update>span.online { background:#54d58a; box-shadow:0 0 10px rgba(84,213,138,.7); }
.crew-tournament-boundary .live-lan-content { display:grid; gap:34px; }
.crew-tournament-boundary .live-lan-section { padding:clamp(18px,2.5vw,30px); border:1px solid #2d2735; border-radius:15px; background:linear-gradient(145deg,rgba(28,23,35,.96),rgba(15,12,20,.96)); }
.crew-tournament-boundary .live-lan-live { border-color:#7141a9; box-shadow:0 0 45px rgba(117,61,178,.1); }
.crew-tournament-boundary .live-lan-section-heading { margin-bottom:17px; display:flex; align-items:flex-end; justify-content:space-between; gap:20px; }
.crew-tournament-boundary .live-lan-section-heading p { margin:0 0 7px; color:#a69aaa; font-size:11px; font-weight:900; letter-spacing:.16em; }.crew-tournament-boundary .live-lan-section-heading p span { width:24px; height:3px; margin-right:9px; display:inline-block; vertical-align:middle; background:#8e4ce0; }
.crew-tournament-boundary .live-lan-live .live-lan-section-heading p { color:#ff3f58; font-size:14px; transform-origin:left center; animation:live-lan-alert-pulse 1.45s ease-in-out infinite; }
.crew-tournament-boundary .live-lan-live .live-lan-section-heading p span { background:#ff304d; box-shadow:0 0 12px rgba(255,48,77,.9); }
@keyframes live-lan-alert-pulse { 0%,100% { opacity:.62; transform:scale(1); text-shadow:0 0 4px rgba(255,33,67,.35); } 50% { opacity:1; transform:scale(1.08); color:#ff1338; text-shadow:0 0 8px rgba(255,28,61,.95),0 0 22px rgba(255,28,61,.8),0 0 38px rgba(255,28,61,.5); } }
.crew-tournament-boundary .live-lan-section-heading h2 { margin:0; font-size:clamp(20px,2.4vw,31px); }.crew-tournament-boundary .live-lan-section-heading>strong { color:#b995ef; font-size:28px; }
.crew-tournament-boundary .live-lan-list { display:grid; gap:9px; }
.crew-tournament-boundary .live-lan-card { min-height:104px; padding:18px 20px; display:grid; grid-template-columns:minmax(190px,.85fr) minmax(300px,1.8fr) minmax(130px,.65fr) minmax(180px,.8fr); align-items:center; gap:20px; border:1px solid #322b3b; border-radius:10px; background:#0f0c14; }
.crew-tournament-boundary .live-lan-live .live-lan-card { border-color:#59347f; background:linear-gradient(90deg,rgba(74,37,112,.18),#0f0c14 38%); }
.crew-tournament-boundary .live-lan-game,.crew-tournament-boundary .live-lan-result,.crew-tournament-boundary .live-lan-meta { display:flex; flex-direction:column; gap:7px; }.crew-tournament-boundary .live-lan-game span { color:#b984fa; font-size:15px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }.crew-tournament-boundary .live-lan-game strong { color:#ded2e6; font-size:15px; line-height:1.35; }
.crew-tournament-boundary .live-lan-versus { display:flex; align-items:center; gap:14px; min-width:0; }.crew-tournament-boundary .live-lan-versus strong { overflow:hidden; color:#fff; font-size:clamp(18px,1.8vw,25px); text-overflow:ellipsis; white-space:nowrap; }.crew-tournament-boundary .live-lan-versus small { color:#91839b; font-size:11px; font-weight:900; }
.crew-tournament-boundary .live-lan-result strong { color:#d5b2ff; font-size:29px; }.crew-tournament-boundary .live-lan-result span { color:#aaa0b1; font-size:12px; }
.crew-tournament-boundary .live-lan-meta { flex-direction:row; justify-content:flex-end; gap:22px; }.crew-tournament-boundary .live-lan-meta span { color:#f3edf7; font-size:18px; font-weight:850; }.crew-tournament-boundary .live-lan-meta small { margin-bottom:5px; display:block; color:#a69bad; font-size:10px; font-weight:850; letter-spacing:.11em; }
.crew-tournament-boundary .live-lan-empty { padding:28px; border:1px dashed #342d3d; border-radius:10px; color:#776e80; font-size:11px; text-align:center; }
.crew-tournament-boundary .live-lan-footer { margin-top:40px; padding-top:18px; display:flex; justify-content:space-between; border-top:1px solid #292230; color:#766d7e; font-size:9px; letter-spacing:.07em; }.crew-tournament-boundary .live-lan-footer span:first-child { color:#a675df; font-weight:900; }
@media (max-width:900px) { .crew-tournament-boundary .live-lan-header { align-items:flex-start; flex-direction:column; }.crew-tournament-boundary .live-lan-event-meta { width:100%; flex-wrap:wrap; }.crew-tournament-boundary .live-lan-event-meta>span { flex:1; }.crew-tournament-boundary .live-lan-card { grid-template-columns:1fr 1fr; }.crew-tournament-boundary .live-lan-versus { grid-column:1/-1; grid-row:1; }.crew-tournament-boundary .live-lan-game { grid-row:2; }.crew-tournament-boundary .live-lan-result { grid-column:2; grid-row:2; align-items:flex-end; }.crew-tournament-boundary .live-lan-meta { grid-column:1/-1; justify-content:flex-start; } }
@media (max-width:560px) { .crew-tournament-boundary .live-lan-page { padding:18px 12px; }.crew-tournament-boundary .live-lan-event-meta>span { min-width:calc(50% - 4px); }.crew-tournament-boundary .live-lan-card { grid-template-columns:1fr; }.crew-tournament-boundary .live-lan-versus,.crew-tournament-boundary .live-lan-game,.crew-tournament-boundary .live-lan-result,.crew-tournament-boundary .live-lan-meta { grid-column:1; grid-row:auto; align-items:flex-start; }.crew-tournament-boundary .live-lan-versus { flex-wrap:wrap; }.crew-tournament-boundary .live-lan-result { flex-direction:row; align-items:center; gap:12px; }.crew-tournament-boundary .live-lan-meta { flex-wrap:wrap; }.crew-tournament-boundary .live-lan-footer { gap:12px; flex-direction:column; } }
@media (prefers-reduced-motion:reduce) { .crew-tournament-boundary .live-lan-live .live-lan-section-heading p { animation:none; opacity:1; } }
@media (max-width:900px) { .crew-tournament-boundary .focus-match-panel { grid-template-columns:1fr auto; }.crew-tournament-boundary .focus-match-label { grid-column:1/-1; }.crew-tournament-boundary .focus-match-meta { align-items:flex-end; flex-direction:column; gap:7px; } }
@media (max-width:620px) { .crew-tournament-boundary .focus-match-panel { grid-template-columns:1fr; gap:13px; }.crew-tournament-boundary .focus-match-label { grid-column:auto; }.crew-tournament-boundary .focus-match-title>div { align-items:flex-start; flex-direction:column; gap:4px; }.crew-tournament-boundary .focus-match-title>div>span { margin:1px 0; }.crew-tournament-boundary .focus-match-meta { align-items:stretch; }.crew-tournament-boundary .focus-match-meta button { width:100%; } }
@media (max-width:620px) { .crew-tournament-boundary .mr12-notice { grid-template-columns:1fr; }.crew-tournament-boundary .mr12-notice>span { width:max-content; } }
@media (max-width:900px) { .crew-tournament-boundary .league-participants { grid-template-columns:repeat(2,minmax(0,1fr)); }.crew-tournament-boundary .league-setup { align-items:stretch; flex-direction:column; }.crew-tournament-boundary .league-setup label { width:100%; }.crew-tournament-boundary .league-participant-actions { width:100%; flex-wrap:wrap; }.crew-tournament-boundary .league-podium { grid-template-columns:1fr; } }
@media (max-width:620px) { .crew-tournament-boundary .tournament-format-picker { align-items:stretch; flex-direction:column; }.crew-tournament-boundary .tournament-format-picker label { min-width:0; }.crew-tournament-boundary .tournament-format-picker small { padding:0; }.crew-tournament-boundary .league-heading { align-items:flex-start; flex-direction:column; }.crew-tournament-boundary .league-participants { grid-template-columns:1fr; }.crew-tournament-boundary .league-participant-actions { align-items:stretch; flex-direction:column; }.crew-tournament-boundary .league-participant-actions>strong { margin:0 0 4px; }.crew-tournament-boundary .league-participant-actions button { width:100%; }.crew-tournament-boundary .tournament-workflow { align-items:stretch; flex-direction:column; }.crew-tournament-boundary .tournament-workflow button { width:100%; } }

.crew-tournament-boundary .cloud-status{display:flex;gap:20px;align-items:center;flex-wrap:wrap;padding:10px 24px;background:#101b2b;color:#a9bbce;border-bottom:1px solid #24405c;font:13px system-ui}.crew-tournament-boundary .cloud-status span{margin-right:auto}.crew-tournament-boundary .cloud-status a{color:#51ddc5;text-decoration:none}.crew-tournament-boundary .cloud-status button{border:1px solid #45bca7;background:transparent;color:inherit;border-radius:6px;padding:6px 12px;cursor:pointer}.crew-tournament-boundary .cloud-conflict{background:#5a341b;color:#fff}.crew-tournament-boundary .app-import-note{color:#abc2d3;font-size:13px;margin:12px 0}.crew-tournament-boundary .registered-teams{padding:14px 24px;background:#101b2b;color:#bdd2e2}.crew-tournament-boundary .registered-teams strong{color:#51ddc5}

/* The same tournament engine, presented inside Crew. */
.crew-tournament-boundary:has(.crew-tournament-shell) .cloud-status a{display:none}
.crew-tournament-boundary:has(.crew-tournament-shell){overflow-x:hidden}
.crew-tournament-boundary .crew-tournament-shell{display:block;min-height:0;padding:0;background:transparent;font-size:16px;line-height:1.55}
.crew-tournament-boundary .crew-tournament-shell .workspace{min-height:0}
.crew-tournament-boundary .crew-login-required{max-width:620px;margin:60px auto;padding:28px;color:#ece4fa;line-height:1.7}.crew-tournament-boundary .crew-login-required a{display:inline-flex;align-items:center;min-height:48px;padding:12px 20px;border-radius:10px;background:#783ed5;color:white;text-decoration:none;font-weight:700}
.crew-tournament-boundary .crew-tournament-shell .reset-modal-backdrop{top:var(--crew-visible-top,0px);bottom:auto;height:var(--crew-visible-height,100vh);overflow:auto}
.crew-tournament-boundary .crew-tournament-shell button,.crew-tournament-boundary .crew-tournament-shell select,.crew-tournament-boundary .crew-tournament-shell input{min-height:46px;font-size:15px}
.crew-tournament-boundary .crew-tournament-shell :is(button,a,input,select,summary):focus-visible{outline:3px solid #c6abff;outline-offset:3px}
.crew-tournament-boundary .crew-tournament-shell .topbar{padding:20px;gap:16px}
.crew-tournament-boundary .crew-tournament-shell :is(.fortnite-content,.cs2-content,.prizes-content,.content-wrap){padding:24px 20px}
.crew-tournament-boundary .crew-tournament-shell .back-button{width:48px}
.crew-tournament-boundary .crew-tournament-shell .section-kicker{font-size:12px;color:#c5bdd5}
.crew-tournament-boundary .crew-tournament-shell .rules-notice p,.crew-tournament-boundary .crew-tournament-shell .selection-required p{font-size:15px;line-height:1.65}
.crew-tournament-boundary .crew-tournament-shell .event-meta small{font-size:11px;color:#bbb1cb}
.crew-tournament-boundary .crew-tool-nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:16px 20px;border-bottom:1px solid #332946;background:#111020}
.crew-tournament-boundary .crew-tool-nav button,.crew-tournament-boundary .crew-tool-nav a,.crew-tournament-boundary .crew-simple-home button,.crew-tournament-boundary .crew-task-help button{display:inline-flex;justify-content:center;align-items:center;border:1px solid #51416d;border-radius:10px;background:#211631;color:#f7f2ff;padding:11px 16px;font-weight:650;text-decoration:none;font-size:15px;min-height:48px}
.crew-tournament-boundary .crew-tool-nav button[aria-current=page]{background:#7236c4}
.crew-tournament-boundary .crew-live-status{font-size:14px;color:#b9b3d0;margin-left:auto}
.crew-tournament-boundary .crew-live-status.saved{color:#7ee2b0}.crew-tournament-boundary .crew-live-status.error{color:#ffb3ad;font-weight:700}
.crew-tournament-boundary .crew-simple-home{padding:26px 20px 40px;max-width:1280px;margin:auto}
.crew-tournament-boundary .crew-intro{margin-bottom:24px}.crew-tournament-boundary .crew-intro h1{font-size:clamp(26px,4vw,36px)}
.crew-tournament-boundary .crew-simple-home p{color:#c5bdd5;line-height:1.65;margin:8px 0 16px}
.crew-tournament-boundary .crew-simple-home h2{font-size:21px;margin:0 0 8px;letter-spacing:-.02em}.crew-tournament-boundary .crew-simple-home h3{font-size:19px;margin:0}
.crew-tournament-boundary .crew-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}
.crew-tournament-boundary .crew-steps article,.crew-tournament-boundary .crew-game{border:1px solid #423353;border-radius:16px;padding:22px;background:linear-gradient(135deg,#1b152c,#11101a);display:flex;flex-direction:column;align-items:flex-start}
.crew-tournament-boundary .crew-steps article p{flex:1}.crew-tournament-boundary .crew-step-number{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#783ed5;color:white;font-weight:800;margin-bottom:14px}
.crew-tournament-boundary .crew-simple-home .crew-primary{background:#793bd3;border-color:#9e69e8}
.crew-tournament-boundary .crew-feedback{padding:16px 20px;border:1px solid #4f6c57;background:#12251a;border-radius:12px;color:#d2f6df!important}
.crew-tournament-boundary .crew-game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.crew-tournament-boundary .crew-games-section{scroll-margin-top:20px;margin:30px 0}.crew-tournament-boundary .crew-game{padding:20px}.crew-tournament-boundary .crew-game>button{margin-top:auto;width:100%;justify-content:space-between}
.crew-tournament-boundary .crew-game-heading{display:flex;align-items:center;gap:10px;justify-content:space-between;width:100%;flex-wrap:wrap}
.crew-tournament-boundary .crew-game-status{font-size:13px;background:#272337;color:#ddd3ef;border-radius:20px;padding:4px 12px}.crew-tournament-boundary .crew-game-status.done{background:#153b2b;color:#a5efc6}
.crew-tournament-boundary .crew-manual-note,.crew-tournament-boundary .crew-extra{padding:18px 20px;border:1px solid #3c354b;border-radius:12px;margin-top:16px;background:#13101d}
.crew-tournament-boundary .crew-extra summary{cursor:pointer;font-weight:700;font-size:16px;padding:4px 0}.crew-tournament-boundary .crew-extra p{margin-top:16px}
.crew-tournament-boundary .crew-extra-actions{display:flex;gap:12px;flex-wrap:wrap}.crew-tournament-boundary .crew-event-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.crew-tournament-boundary .crew-event-fields label{display:grid;gap:8px;font-weight:600}.crew-tournament-boundary .crew-event-fields input{border:1px solid #51416d;border-radius:8px;color:white;background:#0b0910;padding:10px;color-scheme:dark}
.crew-tournament-boundary .crew-task-help{padding:18px 22px;background:#191427;border-bottom:1px solid #44305f;color:#e8e0f6}
.crew-tournament-boundary .crew-task-help summary{cursor:pointer;font-weight:750;font-size:17px}.crew-tournament-boundary .crew-task-help ol{padding-left:24px;max-width:1000px;line-height:1.7;margin:16px 0}.crew-tournament-boundary .crew-task-help li+li{margin-top:8px}
@media(max-width:760px){.crew-tournament-boundary .crew-steps{grid-template-columns:1fr}.crew-tournament-boundary .crew-steps article{padding:18px}.crew-tournament-boundary .crew-tool-nav{padding:12px;gap:8px}.crew-tournament-boundary .crew-tool-nav button,.crew-tournament-boundary .crew-tool-nav a{padding:10px 12px}.crew-tournament-boundary .crew-live-status{width:100%;margin:0}.crew-tournament-boundary .crew-simple-home{padding:22px 14px}.crew-tournament-boundary .crew-task-help{padding:18px 14px}.crew-tournament-boundary .crew-event-fields{grid-template-columns:1fr}.crew-tournament-boundary .crew-tournament-shell .topbar{padding:18px 14px}.crew-tournament-boundary .crew-tournament-shell :is(.fortnite-content,.cs2-content,.prizes-content,.content-wrap){padding:22px 14px}}
@media(max-width:540px){.crew-tournament-boundary .crew-game-grid{grid-template-columns:1fr}.crew-tournament-boundary .crew-simple-home button{width:100%}.crew-tournament-boundary .crew-extra-actions{flex-direction:column}}
.crew-tournament-boundary .crew-simple-home .crew-assisted-signup{margin-top:10px;background:transparent}

/* Guided tournament planner: one task, one readable panel. */
.crew-tournament-boundary .simple-planner{--planner-ink:#282337;--planner-muted:#625c70;--planner-line:#ded9e8;--planner-purple:#6035a5;max-width:1020px;width:100%;margin:24px auto 40px;padding:28px;background:#f5f3f8;color:var(--planner-ink);border:1px solid #d9d2e4;border-radius:20px;font-size:16px;line-height:1.6;min-width:0}
.crew-tournament-boundary .simple-planner *{box-sizing:border-box}
.crew-tournament-boundary .simple-planner h1{font-size:32px;line-height:1.2;letter-spacing:-.025em;margin:12px 0 6px;color:var(--planner-ink)}
.crew-tournament-boundary .simple-planner h2{font-size:28px;line-height:1.25;letter-spacing:-.025em;margin:4px 0 10px;color:var(--planner-ink)}
.crew-tournament-boundary .simple-planner h3{font-size:20px;margin:0 0 10px;line-height:1.4;color:var(--planner-ink)}
.crew-tournament-boundary .simple-planner p{color:var(--planner-muted);margin:8px 0 18px;line-height:1.65}
.crew-tournament-boundary .simple-planner.simple-planner :is(button,input,select){font:inherit;min-height:48px;max-width:100%;border-radius:9px;letter-spacing:normal}
.crew-tournament-boundary .simple-planner button{white-space:normal;line-height:1.4;font-weight:650;cursor:pointer}
.crew-tournament-boundary .simple-planner button:disabled{opacity:.48;cursor:not-allowed}
.crew-tournament-boundary .simple-planner :is(button,input,select,summary):focus-visible{outline:3px solid #8b58c5;outline-offset:3px}
.crew-tournament-boundary .simple-planner input,.crew-tournament-boundary .simple-planner select{width:100%;padding:11px 13px;border:1px solid #b6adc6;background:white;color:var(--planner-ink);font-size:17px;box-shadow:none;color-scheme:light}
.crew-tournament-boundary .simple-planner input:read-only{color:#514466;background:#f2eff6;border-color:var(--planner-line)}
.crew-tournament-boundary .simple-planner input:disabled{opacity:.5}
.crew-tournament-boundary .simple-planner select option{color:#282337;background:#fff}
.crew-tournament-boundary .simple-planner .planner-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 20px;border:1px solid var(--planner-purple);background:var(--planner-purple);color:white}
.crew-tournament-boundary .simple-planner .planner-primary:hover:not(:disabled){background:#4a2587}
.crew-tournament-boundary .simple-planner .planner-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 17px;border:1px solid #bdb2cf;background:#fff;color:#4c2a7e}
.crew-tournament-boundary .simple-planner .planner-secondary:hover:not(:disabled){background:#eee8f6}
.crew-tournament-boundary .simple-planner .planner-text-button{background:transparent;color:#6035a5;border:0;padding:4px 0;min-height:36px;text-align:left}
.crew-tournament-boundary .planner-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}
.crew-tournament-boundary .planner-header p{margin:0}
.crew-tournament-boundary .planner-status{display:inline-flex;padding:6px 12px;border:1px solid #d7cbe8;background:#ebe4f4;color:#573982;border-radius:30px;font-size:13px;white-space:nowrap;margin-top:12px}
.crew-tournament-boundary .planner-status.finished{background:#e0f2e9;color:#216447;border-color:#b9dbc9}
.crew-tournament-boundary .planner-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 24px}
.crew-tournament-boundary .simple-planner .planner-steps button{display:flex;align-items:center;justify-content:center;gap:9px;padding:12px 8px;border:1px solid #d7cee3;background:#fff;color:#6a6177;font-size:15px;min-height:62px}
.crew-tournament-boundary .planner-steps button>span{display:grid;place-items:center;border-radius:50%;width:27px;height:27px;background:#eee9f5;color:#6d5b83;flex-shrink:0;font-size:14px}
.crew-tournament-boundary .simple-planner .planner-steps button[aria-current=step]{border:2px solid #6035a5;color:#482179;background:#f0e8fa;font-weight:800}
.crew-tournament-boundary .planner-steps button[aria-current=step]>span{background:#6035a5;color:#fff}
.crew-tournament-boundary .planner-task{padding:28px;background:#fff;border:1px solid var(--planner-line);border-radius:14px;min-width:0}
.crew-tournament-boundary .planner-task-heading{margin-bottom:28px;max-width:720px}
.crew-tournament-boundary .planner-task-heading>p:first-child{margin:0;color:#76549d;font-size:13px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}
.crew-tournament-boundary .planner-task-heading h2{scroll-margin-top:24px;outline:none}
.crew-tournament-boundary .planner-task-heading>p:last-child{margin-bottom:0}
.crew-tournament-boundary .planner-next{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--planner-line);margin:32px 0 0;padding:22px 0 0;background:transparent;font-size:16px;color:var(--planner-ink)}
.crew-tournament-boundary .planner-next>p{width:100%;margin:0;text-align:right;font-size:14px}
.crew-tournament-boundary .planner-participant-actions{border-bottom:1px solid var(--planner-line);padding-bottom:20px;margin-bottom:24px}
.crew-tournament-boundary .planner-participant-actions>div,.crew-tournament-boundary .planner-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.crew-tournament-boundary .planner-participant-actions p{font-size:14px;margin:10px 0 0}
.crew-tournament-boundary .planner-name-row{display:flex;align-items:flex-end;gap:12px;margin-bottom:14px}
.crew-tournament-boundary .planner-name-row>label{flex:1;min-width:0;display:block}
.crew-tournament-boundary .planner-name-row>label>span,.crew-tournament-boundary .planner-field>span{display:block;font-size:14px;font-weight:650;margin-bottom:6px;color:#5e566b}
.crew-tournament-boundary .simple-planner .planner-remove{flex-shrink:0;border:1px solid #e0c7ce;background:#fff6f7;color:#8f354d;padding:10px 14px;min-height:48px}
.crew-tournament-boundary .planner-names>.planner-secondary{margin-top:8px}
.crew-tournament-boundary .planner-field{display:block;margin:0 0 18px;min-width:0}
.crew-tournament-boundary .planner-round-picker{max-width:430px}
.crew-tournament-boundary .planner-choices{border:0;padding:0;margin:0 0 26px;min-width:0}
.crew-tournament-boundary .planner-choices legend{font-size:18px;font-weight:750;padding:0;margin-bottom:12px;color:#282337}
.crew-tournament-boundary .planner-choices>div{display:flex;gap:12px;flex-wrap:wrap}
.crew-tournament-boundary .planner-choices label{display:flex;align-items:flex-start;gap:12px;border:1px solid #cdc3dc;border-radius:12px;background:#fcfbfd;padding:18px;flex:1 1 210px;cursor:pointer}
.crew-tournament-boundary .planner-choices label.selected{border:2px solid #6035a5;background:#f3edfa;padding:17px}
.crew-tournament-boundary .simple-planner .planner-choices input{width:20px;height:20px;min-height:20px;flex-shrink:0;accent-color:#6035a5;margin:3px 0 0}
.crew-tournament-boundary .planner-choices strong{display:block;font-size:17px;line-height:1.4}
.crew-tournament-boundary .planner-choices small{display:block;font-size:14px;line-height:1.6;color:#655b72;margin-top:7px}
.crew-tournament-boundary .planner-round-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:20px;border:1px solid var(--planner-line);border-radius:12px;background:#faf8fc;margin:20px 0}
.crew-tournament-boundary .planner-round-controls>div{flex:1;min-width:180px}
.crew-tournament-boundary .planner-round-controls strong{font-size:19px}.crew-tournament-boundary .planner-round-controls p{font-size:14px;margin:4px 0 0}
.crew-tournament-boundary .planner-inline-status{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1px solid var(--planner-line);margin-bottom:24px}
.crew-tournament-boundary .simple-planner .planner-progress{font-size:14px;color:#604b79;font-weight:650;margin-bottom:14px}
.crew-tournament-boundary .planner-score-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--planner-line)}
.crew-tournament-boundary .planner-score-row>strong{font-size:18px;overflow-wrap:anywhere;flex:1;min-width:0}
.crew-tournament-boundary .planner-score-row>span{display:block;font-size:13px;color:#71647d;width:190px;flex-shrink:0}
.crew-tournament-boundary .simple-planner .planner-score-row input{margin-top:5px}
.crew-tournament-boundary .planner-extra,.crew-tournament-boundary .planner-help{padding:17px 0;border-top:1px solid var(--planner-line);margin-top:24px;color:#5d5071}
.crew-tournament-boundary .planner-help{margin-bottom:0;padding-bottom:0}
.crew-tournament-boundary .planner-extra summary,.crew-tournament-boundary .planner-help summary{font-size:15px;font-weight:700;cursor:pointer;min-height:30px;line-height:1.6}
.crew-tournament-boundary .planner-extra[open]>summary,.crew-tournament-boundary .planner-help[open]>summary{margin-bottom:16px}
.crew-tournament-boundary .planner-extra-row{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:14px 0;border-top:1px solid var(--planner-line)}
.crew-tournament-boundary .planner-extra-row>strong{flex:1;min-width:150px}.crew-tournament-boundary .planner-extra-row .planner-field{max-width:180px;margin-bottom:0}
.crew-tournament-boundary .simple-planner .planner-notice{padding:14px 18px;background:#fff5dd;border:1px solid #e9d49b;border-radius:10px;color:#6b5017;font-size:15px}
.crew-tournament-boundary .simple-planner .planner-success{padding:16px 18px;background:#e9f5ee;border:1px solid #b8dbc6;border-radius:10px;color:#216344;font-size:15px}
.crew-tournament-boundary .planner-success p{color:inherit}
.crew-tournament-boundary .simple-planner .planner-note{font-size:14px;color:#71647d;margin:18px 0}
.crew-tournament-boundary .simple-planner .planner-empty{padding:22px;border:1px dashed #c2b5d2;border-radius:12px;background:#faf8fd}
.crew-tournament-boundary .planner-explanation{padding:22px;border:1px solid #d8cce7;border-radius:12px;background:#f9f5fe;margin-bottom:22px}
.crew-tournament-boundary .planner-explanation ol{padding-left:24px;margin:10px 0;line-height:1.8}.crew-tournament-boundary .planner-explanation p:last-child{margin-bottom:0}
.crew-tournament-boundary .planner-winners{display:grid;gap:14px;margin:22px 0}
.crew-tournament-boundary .planner-winners>label{display:flex;align-items:center;gap:18px;padding:18px;border:1px solid var(--planner-line);background:#fcfbfe;border-radius:12px}
.crew-tournament-boundary .planner-winners>label:first-of-type{background:#fff9e9;border-color:#ead8a7}
.crew-tournament-boundary .planner-medal{display:grid;place-items:center;font-size:25px;width:40px;flex-shrink:0;color:#947033;font-weight:750}
.crew-tournament-boundary .planner-winners>label>span:last-child{flex:1;min-width:0}
.crew-tournament-boundary .planner-winners strong{display:block;font-size:16px;margin-bottom:6px}
.crew-tournament-boundary .planner-tournament-state{border-top:1px solid var(--planner-line);margin-top:26px;padding-top:18px;display:flex;align-items:flex-start;flex-direction:column;gap:12px}
.crew-tournament-boundary .planner-tournament-state p{margin:0}
.crew-tournament-boundary .planner-tournament-state+.planner-secondary{margin-top:18px}
.crew-tournament-boundary .planner-check{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--planner-line);flex-wrap:wrap}
.crew-tournament-boundary .simple-planner .planner-check>input{width:22px;height:22px;min-height:22px;accent-color:#6035a5}
.crew-tournament-boundary .planner-match-card{border:1px solid #d9cde6;border-radius:14px;padding:24px;margin:20px 0;background:#fcfaff}
.crew-tournament-boundary .planner-match-card>h3{font-size:24px;overflow-wrap:anywhere}
.crew-tournament-boundary .planner-match-card>h3>span{font-size:16px;color:#7e6d90;font-weight:400;margin:0 6px}
.crew-tournament-boundary .planner-match-label{font-weight:650;font-size:14px}
.crew-tournament-boundary .planner-match-scores{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.crew-tournament-boundary .simple-planner .planner-match-scores input{font-size:24px;min-height:60px}
.crew-tournament-boundary .planner-halves{display:grid;grid-template-columns:minmax(120px,1fr) 120px 120px;gap:10px;align-items:center;margin:24px 0}
.crew-tournament-boundary .planner-halves>strong{font-size:14px;text-align:center;color:#6f5d81}
.crew-tournament-boundary .planner-half-row{display:contents}.crew-tournament-boundary .planner-half-row>strong{font-size:17px;overflow-wrap:anywhere}
.crew-tournament-boundary .simple-planner .planner-half-row input{text-align:center;font-size:24px;min-height:60px}
.crew-tournament-boundary .planner-final-score{display:flex;align-items:center;justify-content:space-between;background:#eee7f6;border-radius:10px;padding:16px 20px;margin:18px 0;color:#553276}
.crew-tournament-boundary .planner-final-score>strong{font-size:28px;white-space:nowrap}
.crew-tournament-boundary .planner-standings{list-style:none;padding:0;margin:0}.crew-tournament-boundary .planner-standings li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--planner-line);flex-wrap:wrap}.crew-tournament-boundary .planner-standings span{color:#71647d}
.crew-tournament-boundary .crew-simple-home .crew-intro h1{font-size:32px;max-width:760px}.crew-tournament-boundary .crew-short-flow{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:22px 0 28px;font-size:14px;color:#d5c5ed}.crew-tournament-boundary .crew-short-flow span{padding:7px 11px;border:1px solid #463553;border-radius:8px}.crew-tournament-boundary .crew-short-flow b{color:#9985b3;font-weight:400}
.crew-tournament-boundary .crew-simple-home .crew-games-section{margin:0 0 28px}.crew-tournament-boundary .crew-game h2{font-size:23px;margin:0}.crew-tournament-boundary .crew-game .crew-game-next{font-size:14px;color:#b2a1c8;margin:0 0 22px}.crew-tournament-boundary .crew-simple-home .crew-game button{min-height:52px;display:flex;justify-content:space-between;width:100%;font-size:17px;margin-top:auto}.crew-tournament-boundary .crew-simple-home .crew-game{padding:24px;background:#191224}.crew-tournament-boundary .crew-simple-home .crew-game>p:first-of-type{margin-bottom:8px}.crew-tournament-boundary .crew-prize-shortcut{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #483751;border-radius:14px;padding:22px;margin:24px 0}.crew-tournament-boundary .crew-prize-shortcut p{margin-bottom:0}
@media(max-width:760px){.crew-tournament-boundary .simple-planner{padding:18px;margin:16px 0 28px;border-radius:14px}.crew-tournament-boundary .planner-task{padding:20px}.crew-tournament-boundary .simple-planner h1{font-size:28px}.crew-tournament-boundary .planner-header{gap:10px}.crew-tournament-boundary .planner-steps{gap:6px}.crew-tournament-boundary .simple-planner .planner-steps button{flex-direction:column;gap:5px;padding:9px 3px;font-size:13px}.crew-tournament-boundary .planner-halves{grid-template-columns:minmax(90px,1fr) 90px 90px}.crew-tournament-boundary .planner-match-card{padding:18px}.crew-tournament-boundary .crew-prize-shortcut{flex-direction:column;align-items:stretch}}
@media(max-width:480px){.crew-tournament-boundary .simple-planner{padding:12px}.crew-tournament-boundary .planner-task{padding:18px 14px}.crew-tournament-boundary .planner-header{flex-wrap:wrap}.crew-tournament-boundary .planner-status{margin-top:0}.crew-tournament-boundary .simple-planner h1{font-size:26px}.crew-tournament-boundary .simple-planner h2{font-size:25px}.crew-tournament-boundary .planner-next{align-items:stretch;flex-direction:column}.crew-tournament-boundary .planner-next>p{text-align:left}.crew-tournament-boundary .planner-participant-actions>div{align-items:stretch;flex-direction:column}.crew-tournament-boundary .planner-name-row{gap:8px}.crew-tournament-boundary .simple-planner .planner-remove{padding:10px}.crew-tournament-boundary .planner-score-row{gap:12px}.crew-tournament-boundary .planner-score-row>span{width:135px;font-size:12px}.crew-tournament-boundary .planner-score-row>strong{font-size:16px}.crew-tournament-boundary .planner-choices label{flex-basis:100%}.crew-tournament-boundary .planner-halves{grid-template-columns:minmax(66px,1fr) 66px 66px;gap:8px}.crew-tournament-boundary .planner-half-row>strong{font-size:14px}.crew-tournament-boundary .planner-halves>strong{font-size:12px}.crew-tournament-boundary .simple-planner .planner-half-row input{font-size:20px;padding:8px}.crew-tournament-boundary .planner-winners>label{padding:13px;gap:10px}.crew-tournament-boundary .planner-medal{width:30px}.crew-tournament-boundary .planner-match-scores{gap:10px}.crew-tournament-boundary .planner-round-controls{padding:15px}.crew-tournament-boundary .crew-simple-home .crew-game{padding:20px}.crew-tournament-boundary .crew-simple-home .crew-intro h1{font-size:28px}}

/* Event actions stay on the simple Crew home. */
.crew-tournament-boundary .crew-event-actions { display:flex; flex-wrap:wrap; gap:12px; margin:0 0 24px; }
.crew-tournament-boundary .crew-event-actions button { background:#fff; color:#372142; border:1px solid #d9cfe1; border-radius:12px; padding:14px 20px; font:inherit; font-weight:700; cursor:pointer; min-height:48px; }
.crew-tournament-boundary .crew-event-actions button:last-child { color:#9d253c; }
.crew-tournament-boundary .tournament-action-dialog { background:#fff; color:#302339; width:min(560px,calc(100vw - 32px)); padding:28px; border-radius:20px; box-shadow:0 24px 80px #29153244; max-height:calc(var(--crew-visible-height,100dvh) - 40px); overflow:auto; }
.crew-tournament-boundary .tournament-action-dialog h2 { margin:0 0 14px; font-size:26px; }
.crew-tournament-boundary .tournament-action-dialog p { line-height:1.6; margin:12px 0; }
.crew-tournament-boundary .tournament-name-fields { display:grid; gap:12px; margin:20px 0; }
.crew-tournament-boundary .tournament-name-fields label,.crew-tournament-boundary .tournament-reset-confirm { display:grid; gap:6px; font-weight:700; }
.crew-tournament-boundary .tournament-action-dialog input { width:100%; box-sizing:border-box; min-height:46px; padding:10px 12px; border:1px solid #bdb0c7; border-radius:8px; background:#fff; color:#302339; font:inherit; }
.crew-tournament-boundary .tournament-action-dialog input:focus { outline:3px solid #d7c7ee; border-color:#6831a3; }
.crew-tournament-boundary .tournament-action-buttons { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; margin-top:24px; }
.crew-tournament-boundary .tournament-action-dialog button { min-height:46px; padding:12px 18px; background:#f6f1fa; color:#3b2450; border:1px solid #d5c9e0; border-radius:9px; font:inherit; font-weight:700; cursor:pointer; }
.crew-tournament-boundary .tournament-action-dialog button.primary { color:#fff; background:#6737a1; border-color:#6737a1; }
.crew-tournament-boundary .tournament-action-dialog button.danger { color:#fff; background:#ad2441; border-color:#ad2441; }
.crew-tournament-boundary .tournament-action-dialog button:disabled { opacity:.5; cursor:default; }
.crew-tournament-boundary .tournament-action-dialog .tournament-action-error { color:#9c1c36; background:#fff0f2; padding:12px; border-radius:8px; }
.crew-tournament-boundary .tournament-reset-confirm { margin-top:20px; }
@media(max-width:600px) { .crew-tournament-boundary .crew-event-actions button { width:100%; } .crew-tournament-boundary .tournament-action-dialog { padding:20px; } .crew-tournament-boundary .tournament-action-buttons button { flex:1; } }

.crew-tournament-boundary .tournament-modal{max-height:calc(var(--crew-visible-height,100dvh) - 40px);overflow:auto}.crew-tournament-boundary .crew-event-actions button:disabled{opacity:.5;cursor:default}

.crew-tournament-boundary .crew-simple-home .crew-game .crew-remove-tournament{margin-top:12px;min-height:44px;justify-content:center;font-size:15px;color:#eebac7;border:1px solid #73404c;background:transparent}.crew-tournament-boundary .crew-simple-home .crew-game .crew-remove-tournament:hover{background:#3a1c29;border-color:#d985a0}

.crew-tournament-boundary .double-bracket-current{margin:22px 0;padding:22px;border:1px solid #806697;border-radius:14px;background:#21172d}.crew-tournament-boundary .double-bracket-current h3{font-size:24px;margin:8px 0}.crew-tournament-boundary .double-bracket-current .planner-choices{margin:20px 0}.crew-tournament-boundary .double-bracket-current .planner-choices>label{display:flex;gap:12px;padding:16px;border:1px solid #725285;border-radius:12px;margin:10px 0;cursor:pointer}.crew-tournament-boundary .double-bracket-current .planner-choices>label.selected{background:#422b53;border-color:#c48fe6}.crew-tournament-boundary .double-bracket-group{margin:24px 0}.crew-tournament-boundary .double-bracket-group h3{font-size:21px}.crew-tournament-boundary .double-bracket-rounds{display:flex;align-items:stretch;gap:16px;overflow-x:auto;padding-bottom:12px}.crew-tournament-boundary .double-bracket-round{flex:1 0 230px;max-width:300px}.crew-tournament-boundary .double-bracket-round h4{font-size:15px;min-height:40px}.crew-tournament-boundary .double-bracket-card{margin-bottom:12px;padding:15px;border:1px solid #594268;border-radius:12px;background:#18111f}.crew-tournament-boundary .double-bracket-card>strong{font-size:12px;color:#bca8cd}.crew-tournament-boundary .double-bracket-card p{overflow-wrap:anywhere;margin:10px 0;font-size:16px}.crew-tournament-boundary .double-bracket-card small{color:#b9a5c8}.crew-tournament-boundary .double-bracket-card.bracket-ready{border-color:#a880c3}.crew-tournament-boundary .double-bracket-card .bracket-winner{color:#a8f3c6;font-weight:700}.crew-tournament-boundary .double-bracket-card.bracket-bye,.crew-tournament-boundary .double-bracket-card.bracket-inactive{opacity:.7}.crew-tournament-boundary .bracket-losers h3{color:#f0bea5}.crew-tournament-boundary .bracket-finals h3{color:#f2d68e}@media(max-width:540px){.crew-tournament-boundary .double-bracket-current{padding:16px}.crew-tournament-boundary .double-bracket-current h3{font-size:21px}.crew-tournament-boundary .double-bracket-round{flex-basis:220px}}

/* Strong contrast throughout the winner decision card, including selected names. */
.crew-tournament-boundary .simple-planner .double-bracket-current{background:#21172d;color:#faf6ff;border-color:#9f80ba}
.crew-tournament-boundary .simple-planner .double-bracket-current h3,.crew-tournament-boundary .simple-planner .double-bracket-current .planner-choices legend,.crew-tournament-boundary .simple-planner .double-bracket-current .planner-choices strong{color:#fff}
.crew-tournament-boundary .simple-planner .double-bracket-current p{color:#ded1ec;font-size:16px;line-height:1.6}
.crew-tournament-boundary .simple-planner .double-bracket-current .section-kicker{color:#e3c6ff;font-weight:750}
.crew-tournament-boundary .simple-planner .double-bracket-current .planner-choices>label{background:#32233f;color:#fff;border-color:#a287b8}
.crew-tournament-boundary .simple-planner .double-bracket-current .planner-choices>label.selected{background:#624078;color:#fff;border:2px solid #e1b7ff;padding:15px}
.crew-tournament-boundary .simple-planner .double-bracket-current .planner-choices input{accent-color:#e3b5ff;color-scheme:dark}

/* Shared timetable editor and tournament-only start times. */
.crew-tournament-boundary .schedule-editor{max-width:960px;margin:auto}.crew-tournament-boundary .schedule-editor .crew-intro{margin-bottom:20px}.crew-tournament-boundary .schedule-back{margin-bottom:18px}
.crew-tournament-boundary .schedule-form,.crew-tournament-boundary .tournament-time{padding:20px;margin:16px 0;border:1px solid #36505d;border-radius:16px;background:#101e29;color:#f4f7ff}
.crew-tournament-boundary .schedule-form h2{margin:0 0 16px}.crew-tournament-boundary .schedule-form label,.crew-tournament-boundary .tournament-time label{display:grid;gap:8px;margin:14px 0;font-size:15px;font-weight:700;color:#edf5ff}
.crew-tournament-boundary .schedule-form input,.crew-tournament-boundary .schedule-form select,.crew-tournament-boundary .schedule-form textarea,.crew-tournament-boundary .tournament-time input,.crew-tournament-boundary .tournament-time select{box-sizing:border-box;width:100%;min-height:46px;padding:12px;border:1px solid #5b718b;border-radius:9px;background:#09121d;color:#fff;font:inherit}
.crew-tournament-boundary .schedule-form textarea{resize:vertical}.crew-tournament-boundary .schedule-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.crew-tournament-boundary .schedule-list{list-style:none;padding:0;margin:24px 0;display:grid;gap:12px}.crew-tournament-boundary .schedule-item{display:grid;grid-template-columns:80px minmax(0,1fr);gap:18px;padding:20px;border:1px solid #304958;border-radius:16px;background:#101b28;color:#f4f7ff}
.crew-tournament-boundary .schedule-time small,.crew-tournament-boundary .schedule-time strong{display:block}.crew-tournament-boundary .schedule-time small{color:#bdd0e6;margin-bottom:8px}.crew-tournament-boundary .schedule-time strong{font-size:24px;color:#b4efc4}
.crew-tournament-boundary .schedule-copy h2{margin:0;font-size:20px;overflow-wrap:anywhere}.crew-tournament-boundary .schedule-copy p{white-space:pre-line;overflow-wrap:anywhere;color:#dae5f2;line-height:1.5}
.crew-tournament-boundary .schedule-actions,.crew-tournament-boundary .schedule-confirm{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:14px}.crew-tournament-boundary .schedule-actions span{font-size:13px;color:#b9c8dc}.crew-tournament-boundary .schedule-confirm p{width:100%;margin:0}
.crew-tournament-boundary .schedule-editor button,.crew-tournament-boundary .tournament-time button{min-height:44px;padding:11px 16px;border:1px solid #587188;border-radius:10px;background:#1c3041;color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.crew-tournament-boundary .schedule-form button[type=submit],.crew-tournament-boundary .tournament-time .schedule-save{background:#7a2cf3;border-color:#b690ef;color:#fff}
.crew-tournament-boundary .schedule-editor button:focus-visible,.crew-tournament-boundary .tournament-time button:focus-visible,.crew-tournament-boundary .schedule-editor input:focus-visible,.crew-tournament-boundary .schedule-editor textarea:focus-visible,.crew-tournament-boundary .tournament-time input:focus-visible{outline:3px solid #90d8ff;outline-offset:3px}
.crew-tournament-boundary .schedule-error{padding:14px;background:#4a2030;border:1px solid #f295ad;color:#fff;border-radius:10px}.crew-tournament-boundary .tournament-time summary{cursor:pointer;font-weight:700;color:#edf5ff}.crew-tournament-boundary .tournament-time p{color:#dae5f2;font-size:14px;line-height:1.5}
@media(max-width:520px){.crew-tournament-boundary .schedule-item{grid-template-columns:64px minmax(0,1fr);padding:14px;gap:12px}.crew-tournament-boundary .schedule-time strong{font-size:20px}.crew-tournament-boundary .schedule-fields{gap:12px}.crew-tournament-boundary .schedule-form{padding:15px}.crew-tournament-boundary .schedule-actions button{flex:1}}

.crew-tournament-boundary .tournament-with-time{min-width:0;flex:1;display:flex;flex-direction:column}.crew-tournament-boundary .tournament-with-time>.tournament-time{margin:18px 20px 0}

.crew-tournament-boundary .cloud-merge-conflict{margin:16px;padding:22px;border:2px solid #ffba72;border-radius:16px;background:#24152f;color:#fff;line-height:1.6}.crew-tournament-boundary .cloud-merge-conflict h2{margin:0 0 8px;color:#fff}.crew-tournament-boundary .cloud-merge-conflict ul{padding:0;list-style:none}.crew-tournament-boundary .cloud-merge-conflict li{display:grid;gap:5px;padding:12px;margin:8px 0;background:#110b1b;border-radius:8px;overflow-wrap:anywhere}.crew-tournament-boundary .cloud-merge-conflict li strong{color:#ffd9ae}.crew-tournament-boundary .cloud-merge-conflict button{padding:12px 16px;margin:5px;border:1px solid #d8b8ff;border-radius:8px;background:#6423a9;color:#fff;font:inherit;font-weight:700;cursor:pointer}.crew-tournament-boundary .cloud-merge-conflict button:focus-visible{outline:3px solid #ffcd87;outline-offset:3px}

.crew-tournament-boundary .prize-bulk-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:18px 0;color:#d5cae5}.crew-tournament-boundary .prize-bulk-actions button{padding:14px 20px;border:0;border-radius:12px;background:#a674f0;color:#170e23;font-weight:800;font-size:1rem;cursor:pointer}.crew-tournament-boundary .prize-bulk-actions button:disabled{opacity:.5;cursor:default}

.crew-tournament-boundary .cs-match-mode{margin:18px 20px 0;padding:20px;background:#fff;color:#282337;border:1px solid #d9d0e5;border-radius:16px}.crew-tournament-boundary .cs-match-mode .planner-choices{margin:0}.crew-tournament-boundary .cs-match-mode .planner-choices label{color:#282337}.crew-tournament-boundary .cs-match-mode input[type=radio]{width:20px;height:20px;min-height:20px;flex-shrink:0;accent-color:#6035a5;margin:3px 0 0}.crew-tournament-boundary .cs-match-mode input:focus-visible{outline:3px solid #6035a5;outline-offset:3px}

.crew-tournament-boundary .tournament-description-editor textarea{box-sizing:border-box;width:100%;min-height:140px;padding:12px;border:1px solid #5b718b;border-radius:9px;background:#09121d;color:#fff;font:inherit;font-size:16px;line-height:1.5;resize:vertical}.crew-tournament-boundary .tournament-description-editor textarea:focus-visible{outline:3px solid #90d8ff;outline-offset:3px}

.crew-tournament-boundary .app-settings-editor{box-sizing:border-box;max-width:1000px;width:100%;padding:24px;margin:0 auto;color:#edf5ff}.crew-tournament-boundary .app-settings-editor h1{font-size:28px}.crew-tournament-boundary .app-settings-editor p{font-size:15px;line-height:1.6;color:#cbd7eb}.crew-tournament-boundary .app-settings-editor fieldset{min-width:0;margin:22px 0;padding:20px;border:1px solid #42516c;border-radius:14px;background:#101b2c}.crew-tournament-boundary .app-settings-editor legend{padding:0 8px;font-size:18px;font-weight:800}.crew-tournament-boundary .app-settings-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.crew-tournament-boundary .app-settings-editor label{display:grid;gap:8px;margin:12px 0;font-size:15px;font-weight:700}.crew-tournament-boundary .app-settings-editor input,.crew-tournament-boundary .app-settings-editor select,.crew-tournament-boundary .app-settings-editor textarea{box-sizing:border-box;width:100%;min-height:46px;padding:12px;border:1px solid #687994;border-radius:9px;background:#09121d;color:#fff;font:inherit;font-size:16px}.crew-tournament-boundary .app-settings-editor textarea{resize:vertical}.crew-tournament-boundary .app-settings-info{background:#0b1525!important}.crew-tournament-boundary .app-settings-save{padding:16px 0}.crew-tournament-boundary .app-settings-editor button{min-height:44px}.crew-tournament-boundary .app-settings-conflicts{padding:18px;border:1px solid #f7ba77;border-radius:12px}.crew-tournament-boundary .app-settings-conflicts article{padding:12px 0;border-bottom:1px solid #49576f;overflow-wrap:anywhere}.crew-tournament-boundary .app-settings-conflicts button{margin:12px 12px 0 0}@media(max-width:600px){.crew-tournament-boundary .app-settings-editor{padding:18px 12px}.crew-tournament-boundary .app-settings-editor fieldset{padding:15px}.crew-tournament-boundary .app-settings-fields{grid-template-columns:1fr;gap:0}}

.lan-bracket{width:100%;min-width:0;color:#f8f2ff;font:15px/1.45 Arial,Helvetica,sans-serif;--bracket-a:#b78bff;--bracket-b:#f5b576}
.lan-bracket *{box-sizing:border-box}.lan-bracket h3{margin:0 0 16px;font-size:23px;color:#f8f2ff}
.lan-bracket-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin:12px 0 16px}.lan-bracket-toolbar strong{font-size:16px}.lan-bracket-toolbar p{font-size:13px;color:#c3b5d0;margin:5px 0 0}
.lan-bracket-zoom{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.lan-bracket .lan-bracket-zoom button{width:auto;min-width:42px;min-height:42px;margin:0;padding:8px 13px;border:1px solid #694a81;border-radius:9px;background:#251b33;color:#f8f2ff;font-size:15px;cursor:pointer}.lan-bracket-zoom output{min-width:56px;text-align:center;color:#dcc7fa;font-size:13px}.lan-bracket button:focus-visible,.lan-bracket-viewport:focus-visible{outline:3px solid #e0b3ff;outline-offset:3px}
.lan-bracket-legend{display:flex;gap:18px;flex-wrap:wrap;margin:12px 0;font-size:12px;color:#c3b5d0}.lan-bracket .lane-a{color:var(--bracket-a)}.lan-bracket .lane-b{color:var(--bracket-b)}.lan-bracket .legend-winner{color:#90edb4}.lan-bracket .legend-transfer:before{content:"";display:inline-block;width:23px;border-top:2px dashed #f5b576;margin:0 7px 3px 0}
.lan-bracket-viewport{width:100%;max-height:720px;overflow:auto;border:1px solid #4f3b62;border-radius:14px;background:radial-gradient(circle at 1px 1px,#35253f 1px,transparent 1px) 0 0/24px 24px,#110d19;scrollbar-width:thin;scrollbar-color:#9d74c0 #1b1227;overscroll-behavior:contain}.lan-bracket-size{position:relative;min-width:100%;overflow:hidden}.lan-bracket-board{position:relative;isolation:isolate}
.lan-bracket-lane-label{position:absolute;height:34px;font-size:22px;font-weight:800;z-index:1}.lan-bracket-lane-label small{font-size:12px;font-weight:400;color:#c1b0cf;margin-left:14px}.lan-bracket-round-label{position:absolute;color:#b4a2c5;font-size:12px;font-weight:700;letter-spacing:.06em}.lan-bracket-round-label.lane-finals{color:#f6d58c;font-size:15px}
.lan-bracket-lines{position:absolute;left:0;top:0;overflow:visible;pointer-events:none;z-index:0}.lan-bracket-edge{fill:none;stroke:#8964b3;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.lan-bracket-edge.is-resolved{stroke:#a888cf}.lan-bracket-edge.is-transfer{stroke:var(--bracket-b);stroke-dasharray:6 6;opacity:.15}.lan-bracket-edge.is-conditional{stroke:#dfc079;stroke-dasharray:7 6;opacity:.5}.lan-bracket-edge.is-highlighted{stroke:#d2a4ff;stroke-width:4;opacity:1;filter:drop-shadow(0 0 4px #be86f7)}.lan-bracket-edge.is-transfer.is-highlighted{stroke:var(--bracket-b);filter:drop-shadow(0 0 4px #f5b576)}
.lan-bracket .lan-bracket-match{position:absolute;z-index:1;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:10px 12px;margin:0;text-align:left;border:1px solid #6e5088;border-left:4px solid var(--bracket-a);border-radius:11px;background:#20172c;box-shadow:0 5px 18px #0006;color:#f8f2ff;font:15px/1.3 Arial,Helvetica,sans-serif;overflow:hidden;cursor:pointer;min-height:0}
.lan-bracket .lan-bracket-match.lane-losers{border-left-color:var(--bracket-b);background:#241b25}.lan-bracket .lan-bracket-match.lane-finals{border-color:#9b7b37;border-left-color:#f1ca6b;background:#292219}.lan-bracket .lan-bracket-match.state-ready{box-shadow:0 0 0 1px #9e72cd,0 5px 18px #0006}.lan-bracket .lan-bracket-match.state-inactive{opacity:.55}.lan-bracket .lan-bracket-match:hover,.lan-bracket .lan-bracket-match.is-related{border-color:#cb9cf5;box-shadow:0 0 0 2px #a378c44d}.lan-bracket .lan-bracket-match.is-selected{border-color:#e6beff;box-shadow:0 0 0 3px #c68bef,0 0 22px #8d43b44d}
.lan-bracket-card-top{display:flex;justify-content:space-between;align-items:center;margin:0 0 5px;min-height:20px}.lan-bracket-card-top strong{font-size:12px;letter-spacing:.05em;color:#d2b4ec}.lan-bracket-card-top small{font-size:10px;color:#c1afce}.lan-bracket .state-ready .lan-bracket-card-top small{color:#d7b7ff}.lan-bracket-player{display:flex;justify-content:space-between;align-items:center;min-height:40px;gap:9px;padding:3px 6px;margin:0 -2px;border-radius:5px}.lan-bracket-player>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;line-height:1.2;font-size:15px;font-weight:700}.lan-bracket-player b{font-size:16px;color:#88efb0}.lan-bracket-player.is-winner{background:#194531;color:#b6f9ce}.lan-bracket-player.is-loser{color:#a79aae}.lan-bracket-destination{margin-top:auto;padding-top:5px;border-top:1px solid #ffffff14;color:#bda9cb;font-size:10px;white-space:nowrap}.lan-bracket-conditional-note{position:absolute;inset:26px 8px 10px;padding:25px 13px;background:#292219f5;font-size:13px;text-align:center;color:#edd8aa}
@media(max-width:600px){.lan-bracket-toolbar{align-items:flex-start;flex-direction:column}.lan-bracket-viewport{max-height:65vh;min-height:300px}.lan-bracket-legend{gap:10px;font-size:11px}.lan-bracket .lan-bracket-zoom button{min-height:44px}.lan-bracket-lane-label small{margin-left:10px}}

.lan-bracket-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.lan-bracket-view-switch{display:inline-flex;padding:4px;gap:4px;border:1px solid #69517e;border-radius:12px;background:#17101f}.lan-bracket-view-switch button,.lan-bracket .lan-bracket-view-switch button{min-width:86px;min-height:42px;padding:9px 15px;border:0;border-radius:8px;background:transparent;color:#c9b6d8;font:700 14px Arial,Helvetica,sans-serif;cursor:pointer;margin:0;width:auto}.lan-bracket-view-switch button[aria-pressed=true],.lan-bracket .lan-bracket-view-switch button[aria-pressed=true]{background:#68438d;color:#fff;box-shadow:0 3px 10px #0005}.lan-bracket-list-group{margin:20px 0}.lan-bracket .lan-bracket-list-match{width:100%;display:block;border:1px solid #644c78;border-radius:10px;background:#20162b;color:#f7efff;margin:10px 0;padding:16px;text-align:left;cursor:pointer}.lan-bracket-list-match.is-selected{outline:2px solid #d4a3fa}.lan-bracket-list-players{display:flex;align-items:center;gap:15px;margin-top:12px;font-size:17px;font-weight:700;flex-wrap:wrap}.lan-bracket-list-players small{color:#b5a4c4;font-size:12px}.lan-bracket-list-players .is-winner{color:#91eab3}

.lan-bracket.is-focused{position:fixed!important;inset:0!important;z-index:2147483000!important;width:100vw!important;height:100vh!important;height:100dvh!important;max-width:none!important;margin:0!important;padding:20px!important;display:flex;flex-direction:column;gap:0;background:#110d19;overflow:hidden;isolation:isolate}.lan-bracket.is-focused>.lan-bracket-toolbar{flex-shrink:0;margin-top:0}.lan-bracket.is-focused>.lan-bracket-legend,.lan-bracket.is-focused>h3{flex-shrink:0}.lan-bracket.is-focused>.lan-bracket-viewport,.lan-bracket.is-focused>.lan-bracket-list{flex:1;min-height:0;max-height:none;overflow:auto}.lan-bracket .lan-bracket-focus{border-color:#c399ed;background:#624184;font-weight:700}.bracket-decisions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:18px;align-items:start}.bracket-decisions .double-bracket-current{margin:0}.bracket-decisions .double-bracket-current h3{overflow-wrap:anywhere}@media(max-width:600px){.lan-bracket.is-focused{padding:10px!important}.lan-bracket.is-focused .lan-bracket-toolbar{gap:8px}.lan-bracket.is-focused .lan-bracket-toolbar p{font-size:12px}.lan-bracket.is-focused .lan-bracket-legend{margin:6px 0;font-size:10px}.lan-bracket.is-focused>.lan-bracket-toolbar{flex-direction:row}}

.lan-bracket-scroll-status{display:block;flex-shrink:0;background:#251b33;padding:7px 10px;border-radius:8px;color:#e4c9fb;font-size:13px;line-height:1.5;margin:4px 0 10px}.lan-bracket button[data-bracket-auto-control][aria-pressed=true]{background:#4c3468;border-color:#d4a9ff;color:#fff}

/* Phones follow one round at a time; the connected desktop canvas keeps its size. */
.lan-bracket-mobile,.lan-bracket-mobile-copy{display:none}
.lan-bracket-diagram-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.lan-bracket button:disabled{cursor:default;opacity:.4}
.lan-bracket-mobile{min-width:0;width:100%}
.lan-bracket .lan-bracket-mobile button,.lan-bracket .lan-bracket-mobile select{box-sizing:border-box;min-width:0;min-height:46px;width:auto;margin:0;padding:11px 12px;border:1px solid #594469;border-radius:10px;background:#21182d;color:#f8f2ff;font:700 15px/1.35 Arial,Helvetica,sans-serif;cursor:pointer;touch-action:manipulation}
.lan-bracket .lan-bracket-mobile select:focus-visible{outline:3px solid #e0b3ff;outline-offset:2px}
.lan-bracket-mobile-mode{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#110d19;border:1px solid #493655;border-radius:13px;margin-bottom:16px}
.lan-bracket .lan-bracket-mobile-mode button{background:transparent;border-color:transparent;color:#bfaecc}
.lan-bracket .lan-bracket-mobile-mode button[aria-pressed=true]{background:#69438d;color:#fff;box-shadow:0 2px 8px #0005}
.lan-bracket-pool-tabs{display:flex;gap:7px}
.lan-bracket .lan-bracket-pool-tabs button{flex:1;border-bottom:3px solid #78608c;background:#18111f;white-space:nowrap}
.lan-bracket .lan-bracket-pool-tabs .lane-winners{border-bottom-color:var(--bracket-a)}
.lan-bracket .lan-bracket-pool-tabs .lane-losers{border-bottom-color:var(--bracket-b)}
.lan-bracket .lan-bracket-pool-tabs .lane-finals{border-bottom-color:#efcb76}
.lan-bracket .lan-bracket-pool-tabs button[aria-pressed=true]{background:#372547;border-top-color:#ae86cb;color:#fff}
.lan-bracket .lan-bracket-pool-note{font-size:12px;line-height:1.4;color:#bfaecc;margin:9px 0 15px}
.lan-bracket-round-nav{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;gap:8px}
.lan-bracket .lan-bracket-round-nav button{font-size:21px;padding:8px}
.lan-bracket .lan-bracket-round-nav select{width:100%;font-size:16px;background:#24192e}
.lan-bracket-round-summary{display:flex;justify-content:space-between;gap:12px;padding:12px 1px;color:#bfaecc;font-size:12px}
.lan-bracket-round-summary span:last-child{color:#a7edc0;text-align:right}
.lan-bracket-round-cards{display:grid;gap:12px;padding-bottom:4px}
.lan-bracket-mobile-card{min-width:0;overflow:hidden;border:1px solid #594367;border-left:4px solid var(--bracket-a);border-radius:13px;background:linear-gradient(130deg,#251a31,#1a1323);box-shadow:0 4px 15px #0003}
.lan-bracket-mobile-card.lane-losers{border-left-color:var(--bracket-b);background:linear-gradient(130deg,#2d202c,#1c1523)}
.lan-bracket-mobile-card.lane-finals{border-left-color:#efcb76;background:linear-gradient(130deg,#34291f,#211b21)}
.lan-bracket-mobile-card.is-selected{border-color:#d5a4ff;box-shadow:0 0 0 2px #aa78d366}
.lan-bracket .lan-bracket-mobile-match{display:block;width:100%;padding:13px 12px;border:0;border-radius:0;text-align:left;background:transparent;box-shadow:none}
.lan-bracket-mobile-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.lan-bracket-mobile-card-head strong{font-size:12px;letter-spacing:.06em;color:#d7b5f1}
.lan-bracket-mobile-card-head small{font-size:11px;font-weight:400;color:#c1b0cc;padding:3px 7px;border-radius:5px;background:#ffffff07}
.state-ready .lan-bracket-mobile-card-head small{color:#c4f5d5;background:#15422b}
.lan-bracket-mobile-player{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:43px;padding:9px 8px;border-radius:6px;font-size:16px;font-weight:700;line-height:1.4}
.lan-bracket-mobile-player>span{min-width:0;overflow-wrap:anywhere;white-space:normal}
.lan-bracket-mobile-player b{color:#a3f2bc;flex-shrink:0}
.lan-bracket-mobile-player.is-winner{background:#18432e;color:#c7f8d7}
.lan-bracket-mobile-player.is-loser{color:#b6a8bf}
.lan-bracket-mobile-paths{display:flex;gap:0;border-top:1px solid #ffffff12}
.lan-bracket .lan-bracket-mobile-paths button{flex:1;min-height:46px;padding:11px 8px;border:0;border-radius:0;background:#ffffff03;color:#cbb3df;font-size:12px;font-weight:400}
.lan-bracket .lan-bracket-mobile-paths button+button{border-left:1px solid #ffffff12;color:#ebc29d}
.lan-bracket-mobile-note{margin:0;padding:0 13px 13px;font-size:12px;color:#efd59c;line-height:1.5}
.lan-bracket[data-mobile-view=full] .lan-bracket-mobile-rounds{display:none}
@media(max-width:760px){
 .lan-bracket-mobile{display:block}
 .lan-bracket[data-mobile-view=rounds] .lan-bracket-viewport,.lan-bracket[data-mobile-view=rounds] .lan-bracket-scroll-status,.lan-bracket[data-mobile-view=rounds] .lan-bracket-legend,.lan-bracket[data-mobile-view=rounds] .lan-bracket-desktop-control,.lan-bracket[data-mobile-view=rounds] .lan-bracket-desktop-copy{display:none}
 .lan-bracket[data-mobile-view=rounds] .lan-bracket-mobile-copy{display:block;margin:0;color:#cfc0d9;font-size:13px;font-weight:400}
 .lan-bracket h3{font-size:20px;overflow-wrap:anywhere;margin-bottom:10px}
 .lan-bracket-toolbar{gap:10px;margin:10px 0 12px;flex-direction:row;align-items:center}
 .lan-bracket-controls{gap:8px;max-width:100%}
 .lan-bracket .lan-bracket-view-switch button{min-width:72px;min-height:44px;padding:9px 12px}
 .lan-bracket .lan-bracket-zoom button{min-height:44px}
 .lan-bracket-list-players{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;overflow-wrap:anywhere}
 .lan-bracket.is-focused{padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))!important}
 .lan-bracket.is-focused[data-mobile-view=rounds]>.lan-bracket-mobile{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:2px 3px 10px}
 .lan-bracket.is-focused[data-mobile-view=full]>.lan-bracket-mobile{flex-shrink:0}
 .lan-bracket.is-focused .lan-bracket-toolbar{flex-direction:row}
}
