.bracket-layout{grid-template-columns:minmax(280px,.8fr) minmax(0,1.6fr)}.bracket-layout .tool-panel{height:var(--page-play-height,650px)}.bracket-order-label{margin:20px 0 10px;font-weight:700}.bracket-order-hint{min-height:42px}.bracket-results{--bracket-line:#aaa3ba;--bracket-route:#9164c6;--bracket-pending-glow:#b9a4d440;--bracket-winner:#eee7fc;--bracket-winner-ink:#624090;--bracket-winner-border:#c2a6e8;--bracket-gold:#956417;--bracket-gold-bg:#fff3d6;scroll-margin-top:calc(var(--site-header-height,70px) + 12px);gap:12px}:root[data-theme=dark] .bracket-results{--bracket-line:#93869f;--bracket-route:#bc91ef;--bracket-pending-glow:#b292db30;--bracket-winner:#443256;--bracket-winner-ink:#e8d2ff;--bracket-winner-border:#9270b4;--bracket-gold:#f4cd78;--bracket-gold-bg:#463b25}.bracket-toolbar{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding-right:12px;display:flex}.bracket-toolbar>div{flex-wrap:wrap;gap:5px;display:flex}.bracket-toolbar .tool-note{margin:0;font-size:11px}.bracket-toolbar button{gap:5px;min-height:34px;padding:6px 9px;font-size:12px}.bracket-scroll.rounded-scroll-body{flex:1;min-height:0;padding:6px 10px 6px 4px;display:block}.bracket-scaled{flex-shrink:0;position:relative}.bracket-tree{transform-origin:0 0;position:absolute;top:0;left:0}.bracket-connectors{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.bracket-connectors path{fill:none;stroke:var(--bracket-line);stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round}.bracket-connectors path[data-decided=false]{stroke-dasharray:4 6;opacity:.8;animation:3.2s ease-in-out infinite bracket-pending,1.6s linear infinite bracket-pending-flow}.bracket-connectors path[data-decided=true]{stroke:var(--bracket-route);stroke-width:2.5px}@keyframes bracket-pending-flow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-10px}}@keyframes bracket-pending{0%,to{opacity:.65;filter:drop-shadow(0 0 #0000)}50%{opacity:.9;filter:drop-shadow(0 0 2px var(--bracket-pending-glow))}}.bracket-round-title{color:var(--muted-foreground);margin:0;font-size:13px;font-weight:650;line-height:24px;position:absolute;top:0}.bracket-match{border:1px solid var(--border);background:var(--card);border-radius:16px;grid-template-rows:16px 64px 64px 22px;gap:4px;padding:10px;display:grid;position:absolute;box-shadow:0 3px 10px #17132b06}.bracket-match>small{color:var(--muted-foreground);font-size:10px;line-height:16px}.bracket-player{border:1px solid var(--border);background:var(--background);min-width:0;color:var(--foreground);text-align:left;cursor:pointer;border-radius:9px;align-items:center;gap:7px;padding:4px 8px;font-size:12px;line-height:18px;display:flex}.bracket-name{overflow-wrap:anywhere;flex:1;min-width:0}.bracket-name[data-long=true]{font-size:11px;line-height:14px}.bracket-player>svg{flex-shrink:0}.bracket-player:disabled{cursor:default}.bracket-player:disabled[data-result=pending]{color:var(--muted-foreground)}.bracket-player[data-result=won]{background:var(--bracket-winner);border-color:var(--bracket-winner-border);color:var(--bracket-winner-ink);font-weight:650}.bracket-player[data-result=lost]{background:var(--card);color:var(--muted-foreground);border-color:#0000}.bracket-player[data-result=lost] .bracket-name{text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb,var(--muted-foreground) 45%,transparent);text-decoration-color:color-mix(in srgb,var(--muted-foreground) 45%,transparent)}.bracket-player:hover:enabled{border-color:var(--bracket-winner-border)}:is(.bracket-player:focus-visible,.bracket-clear:focus-visible){outline:2px solid var(--ring);outline-offset:1px}.bracket-seed{opacity:.7;flex-shrink:0;width:15px;font-size:10px}.bracket-clear{color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;justify-self:end;align-items:center;gap:4px;padding:2px 4px;font-size:10px;display:flex}.bracket-clear:disabled{visibility:hidden}.bracket-champion{border:1px solid color-mix(in srgb,var(--bracket-gold) 45%,var(--border));background:var(--bracket-gold-bg);width:210px;color:var(--bracket-gold);text-align:center;box-shadow:0 5px 24px color-mix(in srgb,var(--bracket-gold) 12%,transparent);border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex;position:absolute}.bracket-champion .wheel-confetti{overflow:visible}.bracket-champion[data-long=true] strong{font-size:13px;line-height:17px}.bracket-champion[data-long=true] .bracket-cup svg{width:48px;height:48px}.bracket-cup{filter:drop-shadow(0 3px 0 color-mix(in srgb,var(--bracket-gold) 15%,transparent));place-items:center;display:grid}.bracket-champion small{font-size:11px}.bracket-champion strong{overflow-wrap:anywhere;max-width:100%;font-size:17px;line-height:1.3}.bracket-layout[data-expanded=true]{grid-template-columns:minmax(0,1fr)}.bracket-layout[data-expanded=true]>.tool-settings{display:none}.bracket-layout[data-expanded=true]>.bracket-results{height:calc(100svh - var(--site-header-height,70px) - 24px)}.game-page:has(.bracket-layout[data-expanded=true]){max-width:1920px}:is(.game-page:has(.bracket-layout[data-expanded=true])>.back-link,.game-page:has(.bracket-layout[data-expanded=true])>.game-page-heading){display:none}.bracket-confirm{border:1px solid var(--border);background:var(--card);width:min(480px,100% - 24px);max-height:calc(100dvh - 24px);color:var(--foreground);border-radius:24px;margin:auto;padding:24px;overflow:hidden}.bracket-confirm[open]{flex-direction:column;display:flex}.bracket-confirm-body{min-height:0;padding:3px;overflow:auto}.bracket-confirm h2{margin-bottom:12px;font-size:22px}.bracket-confirm p{line-height:1.6}.bracket-confirm .tool-actions{flex-shrink:0}.bracket-confirm::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#17204466}@media (max-width:900px){.bracket-layout{grid-template-columns:minmax(0,1fr)}.bracket-layout .tool-settings{height:var(--page-play-height,650px)}.bracket-toolbar>div{gap:4px}.bracket-toolbar button{padding:6px 8px}}@media (prefers-reduced-motion:reduce){.bracket-scroll{scroll-behavior:auto}.bracket-connectors path[data-decided=false]{opacity:.8;filter:none;animation:none}}
