/* Platform-wide visual language. Business layouts, score geometry and stream palettes stay functional. */
html[data-theme] body[data-platform-ui]{--ui-bg:#101922;--ui-surface:#1b2a39;--ui-raised:#233647;--ui-ink:#edf5ff;--ui-muted:#a6b7c9;--ui-line:#b9d4ef26;--ui-red:#e21442;--ui-blue:#8cbbfa;--ui-shadow:0 12px 35px #0001}
html[data-theme=light] body[data-platform-ui]{--ui-bg:#eef3f8;--ui-surface:#fff;--ui-raised:#e7eef6;--ui-ink:#172c40;--ui-muted:#566d83;--ui-line:#304c6726;--ui-red:#d90032;--ui-blue:#2466b0;--ui-shadow:0 10px 32px #1b35530c}
html body[data-platform-ui]:not([data-app=overlay]):not([data-app=scoreboard]):not([data-ui-screen=scoreboard]){background:radial-gradient(ellipse at 0 15%,#47c6b512,transparent 48%),radial-gradient(ellipse at 95% 10%,#8d9bfc19,transparent 48%),var(--ui-bg)!important;color:var(--ui-ink)!important;font-family:Inter,"Segoe UI",Arial,sans-serif}
body[data-platform-ui] [hidden]{display:none!important}
body[data-platform-ui] :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--ui-blue);outline-offset:3px}
/* Every business tool lives in the coloured dock; its middle track scrolls on touch screens. */
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock{width:max-content!important;max-width:calc(100vw - 32px)!important;border-radius:24px!important;padding:10px!important;gap:8px!important;justify-content:flex-start!important;bottom:14px!important;overflow:visible!important}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-track{display:flex;align-items:stretch;gap:5px;min-width:0;flex:0 1 auto;overflow-x:auto;overflow-y:hidden;padding:4px 3px 6px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#7188a550 transparent;overscroll-behavior-x:contain}
.os-dock-track::-webkit-scrollbar{height:4px}.os-dock-track::-webkit-scrollbar-track{background:transparent}.os-dock-track::-webkit-scrollbar-thumb{background:#7188a550;border-radius:8px}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-item{height:80px!important;min-height:80px!important;min-width:74px!important;max-width:80px;flex:0 0 74px;padding:5px 3px!important;gap:8px!important;scroll-snap-align:start;border:1px solid transparent!important;border-radius:15px!important}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-item>.os-app-art{width:46px!important;height:46px!important;border-radius:15px!important;background:linear-gradient(145deg,var(--os-accent),var(--os-end))!important;color:#fff!important}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-item>.os-app-art svg{width:23px!important;height:23px!important;color:#fff!important;stroke-width:1.6}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-item>span:last-child{font-size:10px!important;line-height:1.2!important;white-space:normal;min-height:12px;color:var(--ui-muted)!important}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-item.os-selected{background:#e2144210!important;border-color:#e2144245!important;color:var(--ui-ink)!important}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-item.os-selected>span:last-child{color:var(--ui-ink)!important;font-weight:800}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-item.os-all-apps{min-width:62px!important;flex-basis:62px;min-height:70px!important;height:70px!important;background:transparent!important;box-shadow:none!important;color:var(--ui-ink)!important;gap:10px!important}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-all-apps>svg{height:43px!important;width:43px!important;padding:11px;border-radius:14px;background:var(--ui-raised)!important;color:var(--ui-ink)!important;border:1px solid var(--ui-line)}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-all-apps:hover{background:var(--ui-raised)!important}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-home{min-width:62px!important;flex-basis:62px}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-home .os-app-art{width:43px!important;height:43px!important}
html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-manager-shortcut{margin-top:28px}
html[data-theme] body.club-os #main-content>.os-main{width:100%!important;flex:1 1 auto!important;margin:0!important;padding-bottom:150px!important;min-width:0!important}
html[data-theme] body.club-os #main-app>.os-main,html[data-theme] body.club-os #app{padding-bottom:150px!important}
html[data-theme] body.club-os #main-content{min-width:0}
html[data-theme] body.club-os #main-content #page-content{width:auto!important;max-width:1250px!important;padding:26px 0 30px!important;margin:auto!important}
html[data-theme] body.club-os #main-content :is(.card,.global-counts>div,.console-metrics>div){background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important;border-radius:20px!important;box-shadow:var(--ui-shadow)!important}
html[data-theme] body.club-os :is(#main-app,#main-content) #page-content :is(.card-header,.console-heading){border-color:var(--ui-line)!important}
html[data-theme] body.club-os :is(#main-app,#main-content) #page-content :is(.btn,.console-tabs button){border-radius:11px!important;min-height:44px}
html[data-theme] body.club-os :is(#main-app,#main-content) #page-content .btn-primary{background:linear-gradient(135deg,#ed1744,#cc0030)!important;border-color:transparent!important;color:#fff!important}
html[data-theme] body.club-os :is(#main-app,#main-content) #page-content .btn-primary:hover{background:#ae0029!important;color:#fff!important}
html[data-theme] body.club-os :is(#main-app,#main-content) #page-content .btn-secondary{background:var(--ui-raised)!important;border-color:var(--ui-line)!important;color:var(--ui-ink)!important}
html[data-theme] body.club-os :is(#main-app,#main-content) #page-content .btn-secondary:is(:hover,:focus-visible){background:var(--ui-surface)!important;border-color:var(--ui-blue)!important;color:var(--ui-ink)!important}
html[data-theme] body.club-os #main-content :is(.global-tabs button,.global-filters button,.global-pagination button){border-radius:11px;min-height:44px}
html[data-theme] body.club-os #main-content #global-overview :is(button,input,select){background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important;border-radius:11px}
html[data-theme] body.club-os #main-content #global-overview button:hover:not(:disabled){background:var(--ui-raised)!important;border-color:var(--ui-blue)!important}
html[data-theme] body.club-os #main-content #global-overview button[aria-pressed=true]{background:linear-gradient(135deg,#ed1744,#cc0030)!important;border-color:transparent!important;color:#fff!important}
html[data-theme] body.club-os #main-content #global-overview button:disabled{opacity:1;color:var(--ui-muted)!important;background:var(--ui-raised)!important;cursor:not-allowed}
html[data-theme] body.club-os #main-content #global-overview :is(p,label,.global-counts span){color:var(--ui-muted)!important}
html[data-theme] body.club-os #main-content #global-overview .global-scroll{border-color:var(--ui-line)!important;border-radius:15px;background:var(--ui-surface)}
html[data-theme] body.club-os #main-content #global-overview :is(th,td){border-color:var(--ui-line)!important;color:var(--ui-ink)!important}
html[data-theme] body.club-os #main-content #global-overview th{background:var(--ui-raised)!important}
/* Welcome and sign-in: one entrance, one palette, original transparent logo. */
.platform-login-controls{position:absolute;top:22px;inset-inline:28px;display:flex;align-items:center;justify-content:space-between;gap:15px;z-index:2;font-size:12px}
html[data-theme] body[data-platform-ui] .platform-login-controls a{color:var(--ui-muted)!important;text-decoration:none}
html[data-theme] body[data-platform-ui] .platform-login-controls a:hover{color:var(--ui-ink)!important}
html[data-theme] body[data-platform-ui] .platform-theme-toggle{display:inline-flex;align-items:center;gap:9px;min-height:44px;width:auto;margin:0;padding:9px 13px;border:1px solid var(--ui-line);border-radius:12px;background:var(--ui-surface)!important;color:var(--ui-ink)!important;font:600 11px "Segoe UI",sans-serif;cursor:pointer}
body[data-platform-ui] .platform-theme-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
html[data-theme] body[data-platform-ui] .platform-theme-toggle:hover{background:var(--ui-raised)!important}
html[data-theme] body[data-platform-ui] .platform-login-title{font-size:24px;letter-spacing:-.6px;line-height:1.3;color:var(--ui-ink)!important;font-weight:750;margin:0 0 10px}
body[data-platform-ui] .platform-password-wrap{position:relative}
html[data-theme] body[data-platform-ui] #login-password{padding-inline-end:52px!important}
html[data-theme] body[data-platform-ui] #toggle-password{position:absolute!important;inset-inline-end:4px!important;top:50%!important;transform:translateY(-50%)!important;width:42px!important;height:42px!important;min-height:42px!important;display:grid!important;place-items:center!important;margin:0!important;padding:9px!important;background:transparent!important;border:0!important;color:var(--ui-muted)!important;border-radius:10px!important}
html[data-theme] body[data-platform-ui] #toggle-password:hover{background:var(--ui-raised)!important;color:var(--ui-ink)!important}
body[data-platform-ui] #toggle-password svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
body[data-platform-ui] .platform-eye-slash{display:none}body[data-platform-ui] [aria-pressed=true] .platform-eye-slash{display:block}
html[data-theme] body[data-platform-ui] :is(#login-screen,#login){position:relative;background:transparent!important;min-height:100vh;padding:42px 22px!important}
html[data-theme] body[data-platform-ui] #login-screen>div:not(.platform-login-controls){width:min(460px,100%)!important;max-width:460px!important}
html[data-theme] body[data-platform-ui] :is(#login-screen>div>div,.login-card){background:var(--ui-surface)!important;border:1px solid var(--ui-line)!important;border-radius:28px!important;box-shadow:0 28px 85px #142c4820!important;padding:38px!important;color:var(--ui-ink)!important;position:relative;overflow:hidden}
html[data-theme] body[data-platform-ui] :is(#login-screen>div>div,.login-card):before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ed1744,#af69d6,#54bdb8)}
html[data-theme] body[data-platform-ui] :is(#login-screen,#login) img{background:transparent!important;box-shadow:none!important;padding:0!important;display:block!important;margin:0 auto 22px!important;width:195px!important;height:auto!important;border-radius:0!important}
html[data-theme=light] body[data-platform-ui] :is(#login-screen,#login) img{filter:url(#snooker-logo-light)!important}
html[data-theme] body[data-platform-ui] :is(#login-screen,#login) :is(p,label,.owner-link){color:var(--ui-muted)!important}
html[data-theme] body[data-platform-ui] :is(#login-screen,#login) :is(input,select){color:var(--ui-ink)!important;background:var(--ui-bg)!important;border:1px solid var(--ui-line)!important;min-height:48px;border-radius:12px!important;box-shadow:none!important}
html[data-theme] body[data-platform-ui] :is(#login-screen,#login) :is(input,select):focus{border-color:var(--ui-blue)!important}
html[data-theme] body[data-platform-ui] :is(#login-screen,#login) input[type=checkbox]{min-height:16px;height:16px;width:16px}
html[data-theme] body[data-platform-ui] :is(#login-screen,#login) button[type=submit]{min-height:49px;background:linear-gradient(135deg,#ed1744,#cc0030)!important;border:0!important;border-radius:12px!important;color:#fff!important;box-shadow:0 8px 20px #df00301c}
html[data-theme] body[data-platform-ui] :is(#login-screen,#login) button[type=submit]:hover{background:#ae0029!important}
/* Shared portal cards and forms; applies to commercial, community and player pages. */
html[data-theme] body[data-platform-ui][data-experience]{--bg:var(--ui-bg);--panel:var(--ui-surface);--panel2:var(--ui-raised);--text:var(--ui-ink);--muted:var(--ui-muted);--line:var(--ui-line)}
html[data-theme] body[data-platform-ui][data-experience] .page-header{background:var(--ui-bg)!important;border-color:var(--ui-line)!important;box-shadow:0 6px 30px #142c4808}
html[data-theme] body[data-platform-ui][data-experience] .topline{background:transparent!important;border-color:var(--ui-line)!important;color:var(--ui-muted)!important}
html[data-theme] body[data-platform-ui][data-experience] .hero-backdrop{background:transparent!important}
html[data-theme] body[data-platform-ui][data-experience] .hero-backdrop:before{opacity:.25}
html[data-theme] body[data-platform-ui][data-experience] .main-nav{background:var(--ui-surface)!important;border:1px solid var(--ui-line)!important;border-radius:18px!important;padding:6px!important}
html[data-theme] body[data-platform-ui][data-experience] .nav-link{border-radius:12px!important;min-height:43px;color:var(--ui-muted)!important}
html[data-theme] body[data-platform-ui][data-experience] .nav-link:hover{background:var(--ui-raised)!important;color:var(--ui-ink)!important}
html[data-theme] body[data-platform-ui][data-experience] .nav-link.active{background:linear-gradient(135deg,#ed1744,#cc0030)!important;color:white!important;box-shadow:0 6px 15px #e0003020}
html[data-theme] body[data-platform-ui][data-experience] .nav-link:not(.active)>.icon{color:#68b9de}
html[data-theme=light] body[data-platform-ui][data-experience] .nav-link:not(.active)>.icon{color:#247b9a}
html[data-theme] body[data-platform-ui][data-experience] .main-nav>a:nth-child(2):not(.active)>.icon{color:#c89934}
html[data-theme] body[data-platform-ui][data-experience] .main-nav>a:nth-child(3):not(.active)>.icon{color:#e65c7e}
html[data-theme] body[data-platform-ui][data-experience] .main-nav>a:nth-child(4):not(.active)>.icon{color:#a17dde}
html[data-theme] body[data-platform-ui][data-experience] :is(.feature,.plan,.sport-card,.community-card,.community-home-card,.sport-profile,.sport-match,.sport-info,.sport-stats article,.passport-panel,.passport-metric,.match-results,.match-sidebar>.panel,.sport-search-box){background:var(--ui-surface)!important;border-color:var(--ui-line)!important;color:var(--ui-ink)!important;border-radius:21px!important;box-shadow:var(--ui-shadow)!important}
html[data-theme] body[data-platform-ui][data-experience] :is(.sport-card,.community-home-card):hover{background:var(--ui-surface)!important;border-color:var(--ui-blue)!important;box-shadow:0 14px 35px #142c481a!important}
html[data-theme] body[data-platform-ui][data-experience] :is(.sport-hero,.passport-hero){background:linear-gradient(115deg,#168b7b14,#8756d414)!important;border:1px solid var(--ui-line)!important;border-radius:25px!important;color:var(--ui-ink)!important;padding:32px!important}
html[data-theme] body[data-platform-ui][data-experience] :is(.sport-hero,.passport-hero) p{color:var(--ui-muted)!important}
html[data-theme] body[data-platform-ui][data-experience] .btn{min-height:44px;border-radius:12px!important;background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important;box-shadow:none!important}
html[data-theme] body[data-platform-ui][data-experience] .btn:hover{background:var(--ui-raised)!important;border-color:var(--ui-blue)!important;color:var(--ui-ink)!important}
html[data-theme] body[data-platform-ui][data-experience] :is(.btn-primary,.btn.account){background:linear-gradient(135deg,#ed1744,#cc0030)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 6px 16px #e0003015!important}
html[data-theme] body[data-platform-ui][data-experience] :is(.btn-primary,.btn.account):hover{background:#ae0029!important;color:#fff!important}
html[data-theme] body[data-platform-ui][data-experience] :is(.btn,.passport-tabs button):disabled{background:var(--ui-raised)!important;border-color:var(--ui-line)!important;color:var(--ui-muted)!important;box-shadow:none!important;opacity:.8;cursor:not-allowed}
html[data-theme] body[data-platform-ui][data-experience] :is(.sport-filters,.sport-search-form,.public-search,.passport-filter-panel){border-radius:18px!important;border-color:var(--ui-line)!important;background:var(--ui-surface)!important;color:var(--ui-ink)!important}
html[data-theme] body[data-platform-ui][data-experience] :is(input,select,textarea){border-radius:11px!important;border-color:var(--ui-line)!important;background:var(--ui-surface)!important;color:var(--ui-ink)!important}
html[data-theme] body[data-platform-ui][data-experience] :is(input,select,textarea)::placeholder{color:var(--ui-muted)!important}
html[data-theme] body[data-platform-ui][data-experience] :is(input,select,textarea):focus{border-color:var(--ui-blue)!important}
html[data-theme] body[data-platform-ui][data-experience] .passport-tabs{background:var(--ui-surface)!important;border-color:var(--ui-line)!important;border-radius:18px;padding:7px}
html[data-theme] body[data-platform-ui][data-experience] .passport-tabs button{border-radius:12px;color:var(--ui-muted);display:flex;align-items:center;gap:9px}
html[data-theme] body[data-platform-ui][data-experience] .passport-tabs button[aria-pressed=true]{color:#fff!important;background:linear-gradient(135deg,#ed1744,#cc0030)!important}
html[data-theme] body[data-platform-ui][data-experience] .passport-tabs button:hover:not([aria-pressed=true]){color:var(--ui-ink)!important;background:var(--ui-raised)!important}
.passport-tabs svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
html[data-theme] body[data-platform-ui][data-experience] :is(.feature-icon,.entrance-icon){width:55px;height:55px;border-radius:18px!important;background:linear-gradient(135deg,#178d7a,#4abcb1)!important;color:#fff!important;display:grid;place-items:center;box-shadow:inset 0 1px #fff5,0 7px 15px #1b8a7d20}
html[data-theme] body[data-platform-ui][data-experience] .feature:nth-child(2) .feature-icon,html[data-theme] body[data-platform-ui][data-experience] .entrance-card:nth-child(2) .entrance-icon{background:linear-gradient(135deg,#7753d5,#b48eec)!important}
html[data-theme] body[data-platform-ui][data-experience] .feature:nth-child(3) .feature-icon,html[data-theme] body[data-platform-ui][data-experience] .entrance-card:nth-child(3) .entrance-icon{background:linear-gradient(135deg,#327cdb,#69b6ef)!important}
.entrance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:25px 0}.entrance-card{display:flex;flex-direction:column;gap:15px;margin:0!important;padding:28px!important}.entrance-card h2{font-size:23px;margin:3px 0 0!important}.entrance-card p{margin:0;line-height:1.8;color:var(--ui-muted)}.entrance-card .btn{margin-top:auto;align-self:flex-start}.entrance-card .console-help{font-size:11px}.entrance-icon>.icon{width:26px;height:26px}
.entrance-note{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 28px;border:1px solid var(--ui-line);border-radius:20px;background:var(--ui-surface);margin-top:23px}.entrance-note h2{font-size:20px;margin:0 0 7px}.entrance-note p{font-size:13px;color:var(--ui-muted);margin:0}
/* The public welcome illustrates the actual Club OS composition. */
.marketing-os{padding:22px;background:var(--ui-surface);color:var(--ui-ink);border-radius:21px;border:1px solid var(--ui-line)}.marketing-top{display:flex;align-items:center;gap:6px;margin-bottom:24px;font-size:10px}.marketing-top>i{width:6px;height:6px;border-radius:50%;background:#ed5e7e}.marketing-top>i:nth-child(2){background:#e6b857}.marketing-top>i:nth-child(3){background:#53b99c}.marketing-top strong{margin-inline-start:8px;font-size:10px;letter-spacing:.6px}.marketing-top small{margin-inline-start:auto;color:var(--ui-muted);font-size:8px}.marketing-os h3{font-size:24px;letter-spacing:-.6px;margin:0 0 8px;color:var(--ui-ink)}.marketing-os>p{font-size:10px;color:var(--ui-muted);margin:0 0 20px}.marketing-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:19px}.marketing-stats>div{border:1px solid var(--ui-line);padding:13px 10px;border-radius:12px;background:var(--ui-bg)}.marketing-stats small{display:block;color:var(--ui-muted);font-size:8px}.marketing-stats strong{display:block;font-size:20px;margin:7px 0 0}.marketing-tables{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.marketing-tables>div{border:1px solid var(--ui-line);border-radius:12px;padding:13px 9px;min-width:0;background:var(--ui-bg)}.marketing-tables .icon{height:21px;width:21px;color:#44ac99;display:block;margin-bottom:8px}.marketing-tables .busy .icon{color:#ed5e7e}.marketing-tables b{font-size:10px;display:block}.marketing-tables small{font-size:8px;color:var(--ui-muted);display:block;margin-top:5px}.marketing-dock{display:flex;align-items:center;justify-content:center;gap:16px;padding:14px 10px 4px;margin-top:20px;border-top:1px solid var(--ui-line)}.marketing-dock>div{text-align:center;font-size:8px;color:var(--ui-muted)}.marketing-dock .icon{display:block;margin:0 auto 6px;padding:10px;height:39px;width:39px;border-radius:13px;background:linear-gradient(135deg,#178d7a,#4abcb1);color:#fff}.marketing-dock>div:nth-child(2) .icon{background:linear-gradient(135deg,#327cdb,#69b6ef)}.marketing-dock>div:nth-child(3) .icon{background:linear-gradient(135deg,#ed214c,#fa8291)}.marketing-dock>div:nth-child(4) .icon{background:linear-gradient(135deg,#7753d5,#b48eec)}.marketing-dock>div:nth-child(5) .icon{background:linear-gradient(135deg,#d28b16,#f3bc53)}.marketing-dock>div:nth-child(6) .icon{background:linear-gradient(135deg,#008c9a,#59c4ce)}
html[data-theme] body[data-platform-ui][data-experience] .showcase-frame{background:transparent!important;border-radius:24px!important;border-color:var(--ui-line)!important;padding:6px;box-shadow:0 30px 70px #172c4020!important}
/* TV and OBS keep a dark, high-contrast playing surface and transparent canvas. */
body[data-platform-ui]:is([data-app=scoreboard],[data-ui-screen=scoreboard]){--ui-ink:#edf5ff;--ui-muted:#a6b7c9;--ui-bg:#101922;--ui-surface:#1b2a39;--ui-line:#b9d4ef26}
body[data-platform-ui]:is([data-app=scoreboard],[data-ui-screen=scoreboard]) :is(.match-header,.header-bar){background:linear-gradient(110deg,#172632,#233647)!important;border-bottom-color:#42576b!important}
body[data-platform-ui]:is([data-app=scoreboard],[data-ui-screen=scoreboard]) .player-zone{border-color:#42576b}
body[data-platform-ui]:is([data-app=scoreboard],[data-ui-screen=scoreboard]) :is(.settings-panel,.queue-panel){border-radius:18px;background:#1b2a39;border-color:#42576b}
body[data-platform-ui][data-app=overlay] .match-center{border-radius:12px}
body[data-platform-ui][data-app=overlay] .status{border-radius:10px}
@media(max-width:1439px){html[data-theme] body.club-os #main-content #page-content{max-width:none!important;margin-inline:36px!important}}
@media(max-width:1000px){html[data-theme] body.club-os #main-content #page-content{margin-inline:24px!important}.entrance-grid{grid-template-columns:1fr 1fr}.entrance-card:last-child{grid-column:1/-1}.marketing-dock{gap:10px}.marketing-dock>div:nth-child(6){display:none}}
@media(max-width:760px){html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock{padding:7px!important;gap:4px!important;max-width:calc(100vw - 20px)!important;bottom:10px!important}html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-item{min-width:68px!important;flex-basis:68px;max-width:70px;height:77px!important;min-height:77px!important}html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-item.os-dock-home,html[data-theme] body.club-os :is(#main-app,#app,#main-content) .os-dock-item.os-all-apps{min-width:52px!important;flex-basis:52px;max-width:52px}.os-dock-divider{margin:0 1px}html[data-theme] body[data-platform-ui][data-experience] :is(.sport-hero,.passport-hero){padding:24px!important}.marketing-os{padding:18px}.marketing-top{margin-bottom:18px}.marketing-dock>div:nth-child(6){display:block}.entrance-note{flex-direction:column;align-items:flex-start}.os-dock-track:focus-visible{outline-offset:-2px!important}}
@media(max-width:520px){html[data-theme] body.club-os #main-content #page-content{margin-inline:16px!important}.entrance-grid{grid-template-columns:1fr}.entrance-card:last-child{grid-column:auto}.entrance-card{padding:24px!important}html[data-theme] body[data-platform-ui] :is(#login-screen>div>div,.login-card){padding:29px 24px!important}.marketing-dock{gap:12px}.marketing-dock>div:nth-child(6){display:none}.marketing-tables>div{padding:11px 8px}.marketing-stats strong{font-size:17px}.marketing-top small{font-size:7px}.marketing-os h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){body[data-platform-ui] *{transition:none!important;scroll-behavior:auto!important}}

html[data-theme] body[data-platform-ui] #login-screen>.platform-login-controls{width:auto!important;max-width:none!important}
body[data-platform-ui][data-app=site] .floating-live{display:none!important}
.marketing-stats strong small{display:inline;font-size:9px;margin-inline-start:3px}

/* Shared actions and sports glyphs; SVGs inherit every light/dark/disabled state. */
body[data-platform-ui] .ui-action-icon{display:inline-block;width:18px;height:18px;flex:0 0 18px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
body[data-platform-ui] .ui-has-icon{display:inline-flex;align-items:center;justify-content:center;gap:9px}
body[data-platform-ui] .ui-has-icon>i:is(.fas,.far,.fa){display:none!important}
body[data-platform-ui] .ui-row-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
body[data-platform-ui] .ui-row-actions .btn{font-size:12px;padding:9px 12px;white-space:nowrap}
html[data-theme] body[data-platform-ui] .ui-table-emblem{display:block;width:52px;height:52px;margin:0 auto 14px;color:#60bfb2;stroke-width:1.3}
html[data-theme=light] body[data-platform-ui] .ui-table-emblem{color:#127c69}
html[data-theme] body[data-platform-ui] .ui-table-emblem{width:68px;height:40px;flex-basis:68px}
html[data-theme] body[data-platform-ui] :is(.ball-rack,.console-rack){display:flex!important;align-items:center!important;justify-content:center!important;padding:12px!important;min-height:60px}
html[data-theme] body[data-platform-ui] .ui-rack-icon{width:59px!important;height:32px!important;flex:0 0 59px!important;margin:0!important;color:#fff!important}
html[data-theme] body.club-os :is(#main-app,#main-content) .ui-dashboard-table-icon{display:block;width:48px;height:27px;flex-basis:48px;margin-top:16px;color:#60bfb2}
html[data-theme=light] body.club-os :is(#main-app,#main-content) .ui-dashboard-table-icon{color:#127c69}
body[data-platform-ui] .ui-table-emblem circle{fill:currentColor;stroke:none}

/* Vertical rhythm: components keep their own internal padding; adjacent blocks get a real gap. */
html[data-theme] body.club-os :is(#main-app,#main-content) .console-page{display:grid;gap:24px;min-width:0}
html[data-theme] body.club-os :is(#main-app,#main-content) .console-page>:is(.console-heading,.console-tabs,.card){margin-block:0!important}
html[data-theme] body.club-os :is(#main-app,#main-content) .console-tabs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px;border-radius:17px;border:1px solid var(--ui-line);background:var(--ui-surface)}
html[data-theme] body.club-os :is(#main-app,#main-content) .console-heading{gap:18px}
html[data-theme] body.club-os :is(#main-app,#main-content) :is(.console-filters,.report-toolbar){gap:16px;margin-bottom:0!important;padding:20px!important;border-radius:19px!important}
html[data-theme] body.club-os :is(#main-app,#main-content) :is(.report-summary,.console-metrics){gap:16px;margin-block:0!important}
html[data-theme] body.club-os :is(#main-app,#main-content) .console-report-layout{gap:24px}
html[data-theme] body.club-os :is(#main-app,#main-content) .report-table-ribbon{padding:5px 4px 16px;gap:16px}
html[data-theme] body.club-os :is(#main-app,#main-content,#app) :is(.console-table-ribbon,.report-table-ribbon){gap:16px;padding:5px 4px 15px}
html[data-theme] body.club-os :is(#main-app,#main-content,#app) :is(.console-table-card,.report-table-card){border:1px solid var(--ui-line)!important;background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-radius:17px;box-shadow:var(--ui-shadow);overflow:hidden}
html[data-theme] body.club-os :is(#main-app,#main-content,#app) :is(.console-table-card,.report-table-card):hover{border-color:var(--ui-blue)!important;background:var(--ui-raised)!important}
html[data-theme] body.club-os :is(#main-app,#main-content,#app) :is(.console-table-card,.report-table-card).selected{border-color:var(--ui-red)!important;box-shadow:0 0 0 1px var(--ui-red)}
html[data-theme] body.club-os :is(#main-app,#main-content,#app) :is(.console-rack,.report-table-card .ball-rack){background:linear-gradient(135deg,#197c70,#46b7a9)!important;color:#fff!important}
html[data-theme] body.club-os :is(#main-app,#main-content,#app) :is(.console-table-card.selected .console-rack,.report-table-card.selected .ball-rack){background:linear-gradient(135deg,#ed1744,#cc0030)!important;color:#fff!important}
html[data-theme] body.club-os :is(#main-app,#main-content,#app) :is(.console-table-card small,.report-card-counts){color:var(--ui-muted)!important}
html[data-theme] body.club-os :is(#main-app,#main-content) #tables-list-panel{display:grid;gap:22px}
html[data-theme] body.club-os :is(#main-app,#main-content) #tables-list-panel>:is(.card,div){margin:0}
html[data-theme] body.club-os #main-app .matches-page{display:grid;gap:24px}
html[data-theme] body.club-os #main-app .matches-page>*{margin-block:0!important;min-width:0}
html[data-theme] body.club-os #main-app .matches-page>div:first-child{gap:18px;flex-wrap:wrap}
html[data-theme] body.club-os #main-app .matches-page .tab-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 18px!important;min-height:46px;background:var(--ui-surface)!important;color:var(--ui-muted)!important;border:1px solid var(--ui-line)!important;border-radius:12px;font-size:12px;font-weight:650}
html[data-theme] body.club-os #main-app .matches-page .tab-button.active{background:linear-gradient(135deg,#ed1744,#cc0030)!important;border-color:transparent!important;color:#fff!important}
html[data-theme] body.club-os #main-app .matches-page .tab-button:hover:not(.active){background:var(--ui-raised)!important;color:var(--ui-ink)!important}
html[data-theme] body.club-os #main-app .matches-page #reports-view{display:grid;gap:22px}
html[data-theme] body.club-os #main-app .matches-page #reports-view>.card>.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(140px,.8fr);gap:18px;align-items:end}
html[data-theme] body.club-os #main-app .matches-page #reports-view>.card>.grid>div{min-width:0}
html[data-theme] body.club-os #main-app .matches-page #reports-view>*{margin-block:0!important;min-width:0}
html[data-theme] body.club-os #main-app #matches-report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
html[data-theme] body.club-os #main-app #matches-report-summary>.card{margin:0!important;padding:22px!important;min-height:118px}
html[data-theme] body.club-os #main-app #reports-view .input{min-height:48px;background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important;border-radius:11px}
html[data-theme] body.club-os #main-app #tables-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
html[data-theme] body.club-os #main-app #tables-grid>.card{padding:24px 20px!important;margin:0!important}
html[data-theme] body.club-os #main-app #tables-grid [data-action]{display:flex;width:100%;gap:9px}
html[data-theme] body.club-os #main-app #tables-grid [data-action]+[data-action]{margin-top:10px}
html[data-theme] body.club-os :is(#main-app,#main-content) .os-dashboard-workspace+.card{margin-top:24px!important}
html[data-theme] body.club-os .modal-footer{gap:12px;padding-top:20px!important;margin-top:20px;flex-wrap:wrap}
html[data-theme] body.club-os .modal-footer>*{margin-inline:0!important;min-height:44px}
html[data-theme] body.club-os .modal-body form{display:grid;gap:18px}
html[data-theme] body.club-os .modal-body form>.form-group{margin:0}

/* Public competitions use the same surfaces and spacing as the club desktop. */
html[data-theme] body[data-platform-ui] #public-tabs{display:flex;align-items:center;gap:8px;padding:9px;margin:28px 0 24px!important;background:var(--ui-surface)!important;border:1px solid var(--ui-line)!important;border-radius:18px!important}
html[data-theme] body[data-platform-ui] #public-tabs .btn{display:inline-flex;gap:9px;padding:12px 17px;min-height:46px;align-items:center}
html[data-theme] body[data-platform-ui] #public-panel{min-width:0;margin-top:24px}
html[data-theme] body[data-platform-ui] #public-panel>h2{margin:0 0 20px;font-size:28px;line-height:1.3;color:var(--ui-ink)!important}
html[data-theme] body[data-platform-ui] .public-info{gap:18px;margin:0 0 24px}
html[data-theme] body[data-platform-ui] .public-info article{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:7px 14px;min-height:112px;padding:23px;background:var(--ui-surface)!important;border:1px solid var(--ui-line)!important;border-radius:18px;color:var(--ui-ink)!important}
html[data-theme] body[data-platform-ui] .public-info small{font-size:12px;color:var(--ui-muted)!important;margin:0}
html[data-theme] body[data-platform-ui] .public-info strong{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
html[data-theme] body[data-platform-ui] .public-info .ui-info-icon{grid-row:span 2;height:42px;width:42px;padding:10px;border-radius:13px;stroke:#60bfb2;background:#168b7b18}
html[data-theme=light] body[data-platform-ui] .public-info .ui-info-icon{stroke:#127c69}
html[data-theme] body[data-platform-ui] .public-info article:nth-child(3n+2) .ui-info-icon{stroke:#a98be4;background:#8756d418}
html[data-theme=light] body[data-platform-ui] .public-info article:nth-child(3n+2) .ui-info-icon{stroke:#7552b5}
html[data-theme] body[data-platform-ui] .public-info article:nth-child(3n) .ui-info-icon{stroke:#d7b36b;background:#bd8b2518}
html[data-theme=light] body[data-platform-ui] .public-info article:nth-child(3n) .ui-info-icon{stroke:#8e6619}
html[data-theme] body[data-platform-ui] .public-player-list{gap:16px;margin:0 0 26px}
html[data-theme] body[data-platform-ui] .public-player-list li{display:flex;align-items:center;gap:14px;padding:19px;min-height:72px;background:var(--ui-surface)!important;color:var(--ui-ink)!important;border:1px solid var(--ui-line)!important;border-radius:15px}
html[data-theme] body[data-platform-ui] .public-player-list a{color:var(--ui-ink)!important;line-height:1.5;overflow-wrap:anywhere}
html[data-theme] body[data-platform-ui] .public-player-list a:hover{color:var(--ui-red)!important;text-decoration:underline;text-underline-offset:4px}
html[data-theme] body[data-platform-ui] .ui-participant-icon{width:33px;height:33px;flex-basis:33px;padding:7px;background:var(--ui-raised);color:var(--ui-muted);border-radius:11px}
html[data-theme] body[data-platform-ui] .competition-view-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin:0 0 22px;padding:0}
html[data-theme] body[data-platform-ui] .competition-view-toolbar p{margin:0;max-width:550px;line-height:1.6;color:var(--ui-muted)!important}
html[data-theme] body[data-platform-ui] .competition-view-toolbar .console-actions{gap:10px}
html[data-theme] body[data-platform-ui] .competition-bracket-scroll{padding:24px!important;border:1px solid var(--ui-line)!important;border-radius:22px!important;background:var(--ui-surface)!important}
html[data-theme] body[data-platform-ui] .competition-bracket-tree{background:transparent!important;border:0!important;padding:0!important}
html[data-theme] body[data-platform-ui] .competition-tree-card{background:var(--ui-bg)!important;border:1px solid var(--ui-line)!important;border-radius:15px!important;padding:16px!important;color:var(--ui-ink)!important;box-shadow:var(--ui-shadow)}
html[data-theme] body[data-platform-ui] .competition-tree-card header{background:transparent!important;border:0!important;position:static!important;min-height:0!important;height:auto!important;padding:0 0 12px!important;color:var(--ui-muted)!important}
html[data-theme] body[data-platform-ui] .competition-player-row{background:var(--ui-surface)!important;border-radius:7px;color:var(--ui-ink)!important;padding:9px 10px!important;gap:12px}
html[data-theme] body[data-platform-ui] .competition-player-row+.competition-player-row{margin-top:6px}
html[data-theme] body[data-platform-ui] .competition-player-row strong{color:#dfbe77!important}
html[data-theme=light] body[data-platform-ui] .competition-player-row strong{color:#866015!important}
html[data-theme] body[data-platform-ui] .competition-winner{background:#26a78219!important;border-inline-start:3px solid #34b594!important}
html[data-theme] body[data-platform-ui] .competition-tree-card footer{color:var(--ui-muted)!important;padding-top:13px;background:transparent!important}
html[data-theme] body[data-platform-ui] .competition-round-tables{display:grid;gap:26px}
html[data-theme] body[data-platform-ui] .competition-round-tables h3{margin:0 0 16px!important}
html[data-theme] body[data-platform-ui] .competition-round-slots{grid-template-rows:repeat(var(--bracket-slots),212px)}
html[data-theme] body[data-platform-ui] .competition-tree-card{height:auto!important;min-height:172px}
html[data-theme] body[data-platform-ui] .competition-tree-card footer{height:auto!important;min-height:27px}
@media(max-width:1100px){html[data-theme] body.club-os #main-app #tables-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){html[data-theme] body.club-os #main-app .matches-page #reports-view>.card>.grid{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-theme] body.club-os #main-app #tables-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}html[data-theme] body.club-os #main-app #matches-report-summary{grid-template-columns:1fr;gap:12px}html[data-theme] body[data-platform-ui] #public-tabs{gap:7px;padding:8px}html[data-theme] body[data-platform-ui] #public-tabs .btn{padding:10px 13px;font-size:12px}html[data-theme] body[data-platform-ui] .public-info article{padding:19px;gap:7px 11px;grid-template-columns:35px minmax(0,1fr)}html[data-theme] body[data-platform-ui] .public-info .ui-info-icon{width:35px;height:35px;padding:8px}html[data-theme] body[data-platform-ui] .competition-bracket-scroll{padding:18px!important}}
@media(max-width:480px){html[data-theme] body[data-platform-ui] .public-info{grid-template-columns:1fr}html[data-theme] body[data-platform-ui] .public-player-list{grid-template-columns:1fr}html[data-theme] body.club-os #main-app #tables-grid>.card{padding:19px 13px!important}html[data-theme] body.club-os #main-app #tables-grid [data-action]{font-size:11px;gap:6px;padding-inline:8px}}
/* Consistent business spacing and accessible dialog surfaces in both themes. */
html[data-theme] body[data-platform-ui] :is(.console-actions,.modal-footer,.passport-filter-actions,.passport-pagination){gap:12px;row-gap:12px;flex-wrap:wrap}
html[data-theme] body[data-platform-ui] :is(.console-page,.player-space,.public-main) :is(.console-filters,.console-form-grid,.passport-form-grid){gap:20px}
html[data-theme] body[data-platform-ui] :is(.card,.passport-panel)>:is(.console-actions,.modal-footer){margin-top:20px}
html[data-theme] body[data-platform-ui] .console-page>:is(.card,form,nav,section)+:is(.card,form,nav,section){margin-top:24px}
html[data-theme] body[data-platform-ui] :is(.console-tabs,.passport-tabs){gap:10px;padding:8px;margin-bottom:24px}
html[data-theme] body[data-platform-ui] :is(.console-tabs,.passport-tabs) button{min-height:44px}
html[data-theme] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog){background:var(--ui-surface)!important;color:var(--ui-ink)!important;border:1px solid var(--ui-line)!important;border-radius:22px;box-shadow:0 28px 90px #0004;padding:28px}
html[data-theme] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog) :is(h2,h3,td){color:var(--ui-ink)!important}
html[data-theme] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog) :is(p,label,small){color:var(--ui-muted)!important}
html[data-theme] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog) :is(input,select,textarea){background:var(--ui-raised)!important;color:var(--ui-ink)!important;border:1px solid var(--ui-line)!important;border-radius:10px;min-height:46px;padding:11px;width:100%;min-width:0}
html[data-theme] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog) th{background:var(--ui-raised)!important;color:var(--ui-ink)!important}
html[data-theme] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog) :is(td,th){border-color:var(--ui-line)!important}
html[data-theme] body[data-platform-ui] #competition-dialog .console-actions{display:flex;margin-top:24px;padding-top:20px;border-top:1px solid var(--ui-line)}
html[data-theme] body[data-platform-ui] #competition-dialog .btn-primary{background:linear-gradient(135deg,#ed1744,#cc0030)!important;color:#fff!important}
html[data-theme] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog) .btn-secondary{background:var(--ui-raised)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog) .btn-secondary:hover{background:var(--ui-surface)!important;border-color:var(--ui-blue)!important}
html[data-theme] body[data-platform-ui] #tournament-console .competition-card{padding:24px;border-top:3px solid #df214e!important;background:linear-gradient(130deg,#de174408,transparent 60%),var(--ui-surface)!important}
html[data-theme] body[data-platform-ui] #tournament-console .competition-card p{line-height:1.8;margin:8px 0;color:var(--ui-muted)}
html[data-theme] body[data-platform-ui] #competition-detail{margin-top:32px;scroll-margin-top:110px}
html[data-theme] body[data-platform-ui] #competition-tab{margin-top:24px}
html[data-theme] body[data-platform-ui] .competition-match-list{display:grid;gap:20px}
html[data-theme] body[data-platform-ui] .competition-match-list .competition-match{margin:0;padding:24px}
html[data-theme] body[data-platform-ui] .competition-schedule-meta{margin-top:12px!important;line-height:1.8}
html[data-theme] body[data-platform-ui] .competition-view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:24px 0}
html[data-theme] body[data-platform-ui] .competition-round-tables>section{padding:22px;border:1px solid var(--ui-line);border-radius:20px;background:var(--ui-surface);margin:24px 0}
html[data-theme] body[data-platform-ui] .competition-round-tables h3{margin:0 0 20px}
html[data-theme] body[data-platform-ui] .competition-round-table td:last-child .btn{white-space:nowrap}
html[data-theme] body[data-platform-ui] .competition-tree-card:has([data-round-schedule]){height:194px!important}
html[data-theme] body[data-platform-ui] .competition-bracket-tree:has([data-round-schedule]) .competition-round-slots{grid-template-rows:repeat(var(--bracket-slots),220px)}
html[data-theme] body[data-platform-ui] .competition-tree-card:has([data-round-schedule]) footer{bottom:60px!important}
html[data-theme] body[data-platform-ui] .competition-tree-card [data-round-schedule]{position:absolute;bottom:10px;left:10px;right:10px;justify-content:center}
@media(max-width:600px){html[data-theme] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog){padding:20px}html[data-theme] body[data-platform-ui] .competition-round-tables>section{padding:14px}html[data-theme] body[data-platform-ui] #competition-dialog .console-actions .btn{flex:1}html[data-theme] body[data-platform-ui] .competition-match-list .competition-match{padding:18px}}
html[data-theme=light] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog){color-scheme:light}
html[data-theme=dark] body[data-platform-ui] :is(#competition-dialog,.passport-match-dialog,#public-match-dialog){color-scheme:dark}
