:root{--ink:#eff4e9;--muted:#9aaea3;--paper:#061015;--panel:#0b1b20;--panel-2:#10272b;--line:#cae5d526;--cream:#f4f0db;--mint:#8de0c0;--coral:#fa7968;--gold:#e8c260;--blue:#8cb8ff;--shadow:0 22px 55px #00000042}html{background:var(--paper);min-height:100%}body{background:var(--paper);min-width:280px;min-height:100%;color:var(--ink);margin:0;font-family:Space Grotesk,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}button,input{font:inherit}button{cursor:pointer}button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}input:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.app-shell{background:radial-gradient(circle at 75% 4%, #20524638, transparent 34%), var(--paper);min-height:100svh;overflow:hidden}.high-contrast{--line:#eef7e94d;--muted:#c5d6ca}.boot-screen{text-align:center;min-height:100svh;color:var(--cream);background:#061015;place-content:center;gap:10px;display:grid}.boot-screen p{letter-spacing:.18em;margin:18px 0 0;font-size:11px;font-weight:700}.boot-screen small{color:var(--muted);font:12px DM Mono,monospace}.boot-mark{border:1px solid #8de0c066;border-radius:50%;place-items:center;width:52px;height:52px;margin:auto;display:grid;position:relative}.boot-mark:before,.boot-mark:after{content:"";border-radius:50%;position:absolute}.boot-mark:before{border:2px solid var(--mint);top:8px;bottom:8px;left:8px;right:8px}.boot-mark:after{background:var(--coral);width:7px;height:7px}.app-header{justify-content:space-between;align-items:center;gap:18px;width:min(1280px,100% - 64px);min-height:78px;margin:auto;display:flex}.brand-lockup{color:var(--cream);text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:8px 0;display:flex}.brand-lockup strong{letter-spacing:.15em;font-size:14px;display:block}.brand-lockup small{color:var(--muted);letter-spacing:.12em;margin-top:4px;font:9px DM Mono,monospace;display:block}.brand-mark{border:1px solid #8de0c08c;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:relative}.brand-mark:before{content:"";border:2px solid var(--mint);border-radius:50%;width:22px;height:22px}.brand-mark i,.brand-mark b{border-radius:50%;display:block;position:absolute}.brand-mark i{background:var(--coral);width:7px;height:7px;transform:translate(9px,-9px)}.brand-mark b{background:var(--gold);width:5px;height:5px;transform:translate(-9px,9px)}.brand-mark.small{width:25px;height:25px}.brand-mark.small:before{border-width:1px;width:14px;height:14px}.brand-mark.small i{width:4px;height:4px;transform:translate(6px,-6px)}.brand-mark.small b{width:3px;height:3px;transform:translate(-6px,6px)}.header-status,.save-status{color:#8db5a6;letter-spacing:.1em;font:10px DM Mono,monospace}.live-dot,.event-led{background:var(--mint);border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block;box-shadow:0 0 0 4px #8de0c01a}.icon-button{border:1px solid var(--line);min-width:48px;min-height:48px;color:var(--cream);background:#ffffff08;border-radius:8px;padding:0 10px}.icon-button:hover{border-color:var(--mint);color:var(--mint)}.home-screen{min-height:100svh;padding-bottom:44px}.home-hero{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:45px;width:min(1280px,100% - 64px);min-height:500px;margin:35px auto 0;display:grid}.hero-copy{z-index:1;padding:35px 0;position:relative}.eyebrow{color:var(--mint);letter-spacing:.17em;margin:0 0 16px;font:500 10px DM Mono,monospace}h1,h2,p{margin-top:0}.hero-copy h1,.flow-title h1,.setup-copy h1,.result-card h1{color:var(--cream);letter-spacing:-.075em;margin:0;font-size:clamp(48px,6.5vw,86px);line-height:.94}h1 em,h2 em{color:var(--coral);font-style:normal}.hero-lede{max-width:420px;color:var(--muted);margin:25px 0 30px;font-size:15px;line-height:1.55}.hero-actions,.result-actions{flex-wrap:wrap;align-items:center;gap:13px;display:flex}.primary-button,.secondary-button,.text-button,.back-button,.view-button{border-radius:7px;min-height:48px;transition:transform .18s,border-color .18s,background .18s,color .18s}.primary-button{border:1px solid var(--coral);background:var(--coral);color:#211716;padding:0 19px;font-weight:700}.primary-button:hover{background:#ff9586;transform:translateY(-2px)}.primary-button span,.text-button span{margin-left:16px;font-size:18px}.secondary-button{border:1px solid var(--line);color:var(--cream);background:#ffffff0a;padding:0 18px;font-weight:600}.secondary-button:hover{border-color:var(--mint);background:#8de0c014}.text-button,.back-button{color:var(--muted);background:0 0;border:0;padding:0 8px;font-weight:600}.text-button:hover,.back-button:hover{color:var(--cream)}.wide{width:100%}.hero-table{min-height:450px;box-shadow:var(--shadow);background:radial-gradient(circle at 47% 48%,#8de0c04d,#0000 20%),linear-gradient(145deg,#153a35,#071a1f 72%);border:1px solid #8de0c03b;border-radius:18px;position:relative;overflow:hidden;transform:rotate(1deg)}.hero-table:before{content:"";background:linear-gradient(110deg,#1f6650,#0f3c35);border:11px solid #1c2f2a;position:absolute;top:44px;bottom:44px;left:44px;right:44px;box-shadow:inset 0 0 0 2px #cfb36a,0 0 0 1px #ffffff1f}.hero-glow{filter:blur(20px);background:#8de0c024;border-radius:50%;width:46%;height:42%;position:absolute;top:29%;left:29%}.hero-rail{z-index:1;justify-content:space-between;align-items:center;display:flex;position:absolute;top:29px;bottom:29px;left:29px;right:29px}.hero-rail span{background:var(--gold);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #e8c2601a}.hero-line{z-index:2;background:linear-gradient(90deg, transparent, var(--mint), var(--gold), transparent);width:67%;height:1px;box-shadow:0 0 12px var(--mint);position:absolute;top:50%;left:17%;transform:rotate(-8deg)}.hero-balls{z-index:3;position:absolute;top:0;bottom:0;left:0;right:0}.hero-ball{border-radius:50%;width:46px;height:46px;position:absolute;box-shadow:inset -8px -10px 12px #00000057,inset 8px 7px 10px #ffffff3d,0 13px 20px #00000040}.hero-ball:after{content:"";background:#ffffffb3;border-radius:50%;width:8px;height:8px;position:absolute;top:9px;left:11px}.hero-ball.cue{background:#f7f3e0;top:46%;left:23%}.hero-ball.red{background:#c54a44;top:38%;left:50%}.hero-ball.blue{background:#477bd6;top:49%;left:62%}.hero-ball.gold{background:#d6ad47;top:34%;left:73%}.hero-caption{z-index:4;color:#b8cfbf;letter-spacing:.16em;font:10px DM Mono,monospace;position:absolute;bottom:24px;left:29px}.game-select,.home-footer-strip{width:min(1280px,100% - 64px);margin:78px auto 0}.section-intro{justify-content:space-between;align-items:end;gap:22px;margin-bottom:22px;display:flex}.section-intro h2{letter-spacing:-.07em;color:var(--cream);margin:0;font-size:clamp(32px,4vw,54px)}.section-intro>p{max-width:300px;color:var(--muted);margin:0 0 3px;font-size:13px;line-height:1.5}.game-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.game-choice{border:1px solid var(--line);min-height:330px;color:var(--cream);text-align:left;background:linear-gradient(145deg,#ffffff14,#ffffff06);border-radius:12px;flex-direction:column;align-items:flex-start;padding:24px;display:flex;position:relative;overflow:hidden}.game-choice:hover{border-color:var(--mint);box-shadow:var(--shadow);transform:translateY(-4px)}.game-choice.coral:hover{border-color:var(--coral)}.game-choice.gold:hover{border-color:var(--gold)}.choice-index,.choice-kicker,.mode-number,.mode-tag,.stat-label,.setup-spec,.board-meta,.score-head,.match-footer-note,.field-label{letter-spacing:.13em;font:500 10px DM Mono,monospace}.choice-index{color:var(--muted);position:absolute;top:23px;right:24px}.choice-kicker{color:var(--mint);margin-top:190px}.coral .choice-kicker,.coral .mode-tag{color:var(--coral)}.gold .choice-kicker,.gold .mode-tag{color:var(--gold)}.game-choice strong{letter-spacing:-.06em;margin-top:8px;font-size:26px}.choice-description{max-width:220px;color:var(--muted);margin-top:8px;font-size:12px;line-height:1.45}.choice-link{color:var(--cream);margin-top:auto;padding-top:20px;font-size:11px;font-weight:700}.choice-link b{color:var(--coral);margin-left:10px;font-size:17px}.choice-illustration{background:#103d32;border:1px solid #dff1d82e;border-radius:7px;width:calc(100% - 48px);height:137px;position:absolute;top:34px;left:24px;overflow:hidden}.mini-table{background:#1e614a;border:5px solid #1b2c26;outline:1px solid #c8a760;position:absolute;top:18px;bottom:18px;left:18px;right:18px}.mini-table:before,.mini-table:after{content:"";background:#02070a;border-radius:50%;width:15px;height:15px;position:absolute;top:-7px}.mini-table:before{left:-8px}.mini-table:after{right:-8px}.choice-illustration:after{content:"";background:var(--mint);width:60%;height:1px;box-shadow:0 0 9px var(--mint);position:absolute;top:50%;left:20%;transform:rotate(-7deg)}.mini-ball{z-index:2;border-radius:50%;width:22px;height:22px;position:absolute;box-shadow:inset -4px -5px 6px #0000004d,inset 4px 3px 4px #ffffff59}.mini-ball:after{content:"";background:#ffffffbf;border-radius:50%;width:4px;height:4px;position:absolute;top:4px;left:5px}.mini-pool{background:#f5f0d9;top:44%;left:31%}.mini-snooker{background:#c64b42;top:33%;left:57%}.mini-pyramid{background:#e4dfc9;top:51%;left:67%}.home-footer-strip{border-top:1px solid var(--line);align-items:center;gap:36px;padding:24px 0 0;display:flex}.home-footer-strip>div{min-width:72px}.home-footer-strip strong{color:var(--cream);margin-top:8px;font:700 23px DM Mono,monospace;display:block}.home-footer-strip p{color:var(--muted);margin:0 0 0 auto;font:11px DM Mono,monospace}.flow-screen,.result-screen,.match-screen{min-height:100svh}.flow-header{border-bottom:1px solid var(--line)}.back-button{color:var(--muted)}.back-button span{color:var(--coral);margin-right:8px;font-size:20px}.flow-breadcrumb{color:var(--cream);letter-spacing:.12em;align-items:center;gap:10px;font:10px DM Mono,monospace;display:flex}.flow-breadcrumb b{color:var(--muted);margin:0 8px}.flow-inner{width:min(1120px,100% - 64px);margin:72px auto}.flow-title{justify-content:space-between;align-items:end;gap:30px;margin-bottom:52px;display:flex}.flow-title h1{font-size:clamp(44px,6vw,78px)}.flow-title>p:last-child{max-width:250px;color:var(--muted);margin:0 0 5px;font-size:13px;line-height:1.55}.mode-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.mode-card{border:1px solid var(--line);min-height:310px;color:var(--cream);text-align:left;background:#ffffff09;border-radius:11px;flex-direction:column;align-items:flex-start;padding:24px;display:flex;position:relative;overflow:hidden}.mode-card:hover{border-color:var(--mint);box-shadow:var(--shadow);transform:translateY(-4px)}.mode-card.coral:hover{border-color:var(--coral)}.mode-card.gold:hover{border-color:var(--gold)}.mode-number{color:var(--muted)}.mode-tag{color:var(--mint);margin-top:20px}.mode-symbol{border:1px solid #8de0c059;border-radius:50%;width:72px;height:72px;position:absolute;top:60px;right:27px}.mode-symbol:before,.mode-symbol i{content:"";border-radius:50%;display:block;position:absolute}.mode-symbol:before{border:1px solid var(--mint);top:15px;bottom:15px;left:15px;right:15px}.mode-symbol i:first-child{background:var(--coral);width:9px;height:9px;top:7px;right:13px}.mode-symbol i:nth-child(2){background:var(--gold);width:7px;height:7px;bottom:18px;left:9px}.mode-symbol i:nth-child(3){background:var(--blue);width:5px;height:5px;bottom:16px;right:8px}.mode-card strong{letter-spacing:-.06em;margin-top:auto;font-size:27px}.mode-card p{max-width:230px;min-height:42px;color:var(--muted);margin:8px 0 20px;font-size:12px;line-height:1.5}.mode-arrow{font-size:11px;font-weight:700}.mode-arrow b{color:var(--coral);margin-left:12px;font-size:17px}.shot-steps{color:var(--muted);letter-spacing:.08em;gap:28px;margin-top:46px;font:10px DM Mono,monospace;display:flex}.shot-steps b{color:var(--mint);margin-right:8px}.setup-layout{grid-template-columns:minmax(0,.9fr) minmax(400px,1.1fr);align-items:start;gap:80px;width:min(1120px,100% - 64px);margin:72px auto 0;display:grid}.setup-copy h1{font-size:clamp(44px,5.5vw,76px)}.setup-copy>p:last-child{max-width:385px;color:var(--muted);margin-top:25px;font-size:14px;line-height:1.6}.difficulty-panel,.room-panel{border:1px solid var(--line);background:#ffffff09;border-radius:11px;padding:24px}.difficulty-list{gap:9px;margin:20px 0;display:grid}.difficulty-card,.team-card{border:1px solid var(--line);min-height:66px;color:var(--cream);text-align:left;background:#ffffff06;border-radius:7px;align-items:center;gap:14px;padding:12px 14px;display:flex}.difficulty-card:hover,.difficulty-card.active,.team-card:hover,.team-card.active{border-color:var(--mint);background:#8de0c014}.difficulty-card>span:nth-child(2){flex-direction:column;gap:4px;display:flex}.difficulty-card strong,.team-card strong{font-size:14px}.difficulty-card small,.team-card span{color:var(--muted);font-size:10px}.difficulty-card>b{color:var(--muted);margin-left:auto;font:9px DM Mono,monospace}.difficulty-card.active>b{color:var(--mint)}.difficulty-signal{align-items:end;gap:3px;width:35px;display:flex}.difficulty-signal i{background:var(--muted);border-radius:2px;width:7px}.difficulty-signal i:first-child{height:10px}.difficulty-signal i:nth-child(2){height:17px}.difficulty-signal i:nth-child(3){height:24px}.difficulty-signal.easy i:nth-child(3){opacity:.25}.difficulty-signal.medium i:nth-child(2){opacity:.65}.difficulty-signal.hard i{background:var(--mint)}.setup-note{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:12px;padding:15px 0;font:9px DM Mono,monospace;display:flex}.setup-note strong{color:var(--cream);text-align:right}.setup-spec{color:var(--muted);justify-content:space-between;gap:15px;margin-top:18px;display:flex}.setup-spec span:first-child{color:var(--mint)}.segmented{border:1px solid var(--line);border-radius:7px;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:20px;padding:4px;display:grid}.segmented button{min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:5px;font-size:11px;font-weight:600}.segmented button.active{background:var(--mint);color:#09201b}.room-team-grid{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:20px;display:grid}.team-card{flex-direction:column;align-items:flex-start;min-height:84px;display:flex}.room-empty{border:1px dashed var(--line);text-align:center;border-radius:7px;align-content:center;place-items:center;gap:7px;min-height:150px;display:grid}.room-empty strong{font-size:16px}.room-empty>span:last-child{color:var(--muted);font-size:11px}.room-symbol{border:1px solid var(--mint);width:38px;height:38px;color:var(--mint);border-radius:50%;place-items:center;margin-bottom:6px;font-size:22px;display:grid}.room-code{text-align:center;background:#8de0c014;border:1px solid #8de0c059;border-radius:7px;align-content:center;place-items:center;gap:6px;min-height:150px;display:grid}.room-code span,.field-label{color:var(--mint)}.room-code strong{color:var(--cream);letter-spacing:.11em;font:700 40px DM Mono,monospace}.room-code small,.field-hint{max-width:300px;color:var(--muted);font-size:10px;line-height:1.5}.field-label{margin:22px 0 8px;display:block}.room-input{border:1px solid var(--line);width:100%;min-height:58px;color:var(--cream);letter-spacing:.12em;background:#081519;border-radius:7px;outline:none;padding:0 15px;font:700 24px DM Mono,monospace}.room-input:focus{border-color:var(--mint)}.field-hint{margin:10px 0 20px}.room-panel .primary-button,.difficulty-panel .primary-button{margin-top:20px}.match-screen{background:#030b10;height:100svh;overflow:hidden}.match-header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;width:100%;min-height:68px;padding:0 24px;display:grid}.match-header>.back-button{justify-self:start}.match-title{color:var(--cream);align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.match-title small{color:var(--muted);letter-spacing:.11em;margin-left:8px;font:9px DM Mono,monospace}.match-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.match-actions .icon-button{min-width:42px;min-height:42px}.match-layout{grid-template-columns:minmax(0,1fr) 310px;gap:18px;width:min(1420px,100% - 34px);height:calc(100svh - 68px);margin:auto;padding:18px 0;display:grid}.board-panel{flex-direction:column;min-width:0;display:flex}.board-meta{color:var(--muted);justify-content:space-between;gap:10px;padding:0 2px 11px;display:flex}.board-meta span:nth-child(2){color:var(--mint)}.canvas-wrap{background:#061118;border:1px solid #8de0c02e;border-radius:10px;flex:1;place-items:center;width:100%;min-height:0;display:grid;overflow:hidden}.canvas-wrap canvas{touch-action:none;width:100%;height:auto;max-height:100%;display:block}.board-event{min-height:39px;color:var(--cream);align-items:center;font-size:12px;display:flex}.event-led{width:6px;height:6px;box-shadow:none;margin-right:10px}.board-controls{justify-content:space-between;align-items:center;gap:12px;display:flex}.view-button{border:1px solid var(--line);color:var(--muted);background:0 0;padding:0 12px;font-size:11px}.view-button:hover,.view-button.active{border-color:var(--mint);color:var(--mint)}.view-button span{color:var(--gold);margin-left:9px}.keyboard-hint{color:#6d8579;font:9px DM Mono,monospace}.match-sidebar{scrollbar-width:none;flex-direction:column;gap:12px;min-width:0;display:flex;overflow-y:auto}.match-sidebar::-webkit-scrollbar{display:none}.turn-card,.score-card,.shot-controls,.select-tip,.match-footer-note{border:1px solid var(--line);background:#ffffff09;border-radius:9px;padding:17px}.turn-player{grid-template-columns:38px 1fr;align-items:center;gap:2px 10px;margin-top:14px;display:grid}.turn-player strong{font-size:17px}.turn-player small{color:var(--muted);grid-column:2;font:9px DM Mono,monospace}.player-disc{background:var(--mint);border-radius:50%;grid-row:1/span 2;width:35px;height:35px;box-shadow:inset -7px -8px 8px #00000047,0 0 0 5px #8de0c017}.player-disc.team-B{background:var(--coral);box-shadow:inset -7px -8px 8px #00000047,0 0 0 5px #fa796817}.score-head{color:var(--muted);border-bottom:1px solid var(--line);justify-content:space-between;padding-bottom:11px;display:flex}.score-row{min-height:42px;color:var(--muted);border-bottom:1px solid #cae5d514;justify-content:space-between;align-items:center;font-size:12px;display:flex}.score-row:last-child{border-bottom:0}.score-row.active{color:var(--cream)}.score-row strong{color:var(--cream);font:700 22px DM Mono,monospace}.player-dot{background:var(--mint);border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.player-dot.team-B{background:var(--coral)}.control-heading,.spin-label,.power-control>span{justify-content:space-between;align-items:center;display:flex}.control-heading>span:last-child{color:var(--mint);font:9px DM Mono,monospace}.spin-control{margin:20px 0 19px}.spin-label{color:var(--muted);margin-bottom:10px;font:9px DM Mono,monospace}.spin-label small{color:var(--cream)}.spin-grid{grid-template-columns:repeat(3,1fr);gap:5px;width:108px;margin:auto;display:grid}.spin-grid button{border:1px solid var(--line);background:#071419;border-radius:4px;min-width:32px;min-height:32px;padding:0}.spin-grid button:hover,.spin-grid button.selected{border-color:var(--gold);background:#e8c2601f}.spin-grid span{background:var(--muted);border-radius:50%;width:7px;height:7px;margin:auto;display:block}.spin-grid button.selected span{background:var(--gold);box-shadow:0 0 9px var(--gold)}.power-control{margin-bottom:16px;display:block}.power-control>span{color:var(--muted);margin-bottom:10px;font:9px DM Mono,monospace}.power-control b{color:var(--cream)}.power-control small{color:var(--gold)}.power-control input{width:100%;accent-color:var(--coral)}.strike-button{min-height:56px;font-size:15px}.select-tip{text-align:center;place-content:center;min-height:155px;display:grid}.tip-icon{border:1px solid var(--mint);width:38px;height:38px;color:var(--mint);border-radius:50%;place-items:center;margin:0 auto 11px;font-size:21px;display:grid}.select-tip strong{font-size:15px}.select-tip small{max-width:210px;color:var(--muted);margin-top:7px;font-size:11px;line-height:1.45}.match-footer-note{margin-top:auto}.match-footer-note span{color:var(--mint);font:9px DM Mono,monospace;display:block}.match-footer-note small{color:var(--muted);margin-top:7px;font-size:10px;display:block}.result-screen{background:radial-gradient(circle at 50% 42%,#29694f47,#0000 32%),#061015;position:relative;overflow:auto}.result-noise{opacity:.11;pointer-events:none;background-image:linear-gradient(115deg,#0000 47%,#ffffff1f 48%,#0000 49%);background-size:13px 13px;position:absolute;top:0;bottom:0;left:0;right:0}.result-card{text-align:center;width:min(620px,100% - 40px);margin:8vh auto 60px;position:relative}.result-card h1{font-size:clamp(44px,7vw,74px)}.result-score-grid{grid-template-columns:repeat(2,1fr);gap:9px;margin:42px 0 15px;display:grid}.result-score{border:1px solid var(--line);text-align:left;border-radius:8px;padding:16px}.result-score.winner{border-color:var(--mint);background:#8de0c01a}.result-score span{color:var(--muted);font-size:12px;display:block}.result-score strong{color:var(--cream);margin:5px 0;font:700 34px DM Mono,monospace;display:block}.result-score small{color:var(--mint);font:9px DM Mono,monospace}.result-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:10px;padding:18px 0;font:9px DM Mono,monospace;display:flex}.result-stats strong{color:var(--cream);margin-top:7px;font-size:14px;display:block}.result-actions{justify-content:center;margin-top:26px}.overlay-layer,.modal-layer{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#01070ac7;place-items:center;padding:18px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.overlay-card,.modal-card{width:min(430px,100%);box-shadow:var(--shadow);background:#0c1b20;border:1px solid #8de0c047;border-radius:12px;padding:26px}.overlay-card h2,.modal-card h2{color:var(--cream);letter-spacing:-.06em;margin:0;font-size:31px}.overlay-card p:not(.eyebrow){color:var(--muted);margin:13px 0 20px;font-size:13px;line-height:1.55}.overlay-card .secondary-button,.overlay-card .text-button{margin-top:10px}.confirm-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.modal-card header{justify-content:space-between;align-items:start;margin-bottom:20px;display:flex}.modal-card header h2{font-size:29px}.modal-close{border:1px solid var(--line);min-width:44px;min-height:44px;color:var(--muted);background:0 0;border-radius:7px;font-size:25px}.modal-close:hover{color:var(--coral);border-color:var(--coral)}.settings-list{margin-bottom:20px}.setting-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:68px;display:flex}.setting-row span{flex-direction:column;gap:5px;display:flex}.setting-row strong{color:var(--cream);font-size:13px}.setting-row small{color:var(--muted);font-size:10px;line-height:1.4}.setting-row input{width:23px;height:23px;accent-color:var(--mint)}.status-value{color:var(--mint);font:10px DM Mono,monospace}.help-list{gap:16px;margin-bottom:22px;display:grid}.help-list>div{grid-template-columns:32px 1fr;gap:12px;display:grid}.help-list b{color:var(--mint);font:12px DM Mono,monospace}.help-list span{flex-direction:column;gap:5px;display:flex}.help-list strong{color:var(--cream);font-size:13px}.help-list small{color:var(--muted);font-size:11px;line-height:1.5}@media (max-width:900px){.app-header,.home-hero,.game-select,.home-footer-strip,.flow-inner,.setup-layout{width:min(100% - 32px,680px)}.home-hero{grid-template-columns:1fr;gap:10px;margin-top:20px}.hero-copy{padding-bottom:0}.hero-table{min-height:280px;transform:none}.game-grid,.mode-grid{grid-template-columns:1fr}.game-choice{min-height:270px}.choice-kicker{margin-top:155px}.choice-illustration{height:110px}.flow-inner{margin-top:45px}.flow-title{margin-bottom:30px;display:block}.flow-title>p:last-child{margin-top:20px}.setup-layout{grid-template-columns:1fr;gap:28px;margin-top:45px}.match-layout{grid-template-columns:minmax(0,1fr) 270px;gap:10px;width:calc(100% - 20px)}.match-header{padding:0 12px}.keyboard-hint{display:none}}@media (max-width:700px){.app-header{min-height:66px}.header-status{font-size:8px}.header-status .icon-button{margin-left:6px}.hero-copy h1{font-size:52px}.section-intro{display:block}.section-intro>p{margin-top:13px}.home-footer-strip{flex-wrap:wrap;gap:22px}.home-footer-strip p{width:100%;margin:4px 0 0}.flow-breadcrumb{font-size:8px}.flow-breadcrumb .brand-mark{display:none}.setup-spec{flex-direction:column;gap:8px;line-height:1.5}.match-screen{height:100svh}.match-header{grid-template-columns:1fr auto;min-height:61px}.match-title{justify-self:start;font-size:14px}.match-title small{margin:3px 0 0;font-size:7px;display:block}.match-header>.back-button{font-size:0}.match-header>.back-button span{font-size:20px}.match-actions{gap:3px}.save-status{display:none}.match-layout{grid-template-rows:minmax(220px,42vh) 1fr;grid-template-columns:1fr;gap:9px;height:calc(100svh - 61px);padding:10px 0;display:grid}.board-meta{font-size:8px}.board-event{min-height:33px;font-size:10px}.board-controls{display:none}.match-sidebar{padding-bottom:10px;display:block;overflow-y:auto}.turn-card,.score-card,.shot-controls,.select-tip,.match-footer-note{margin-bottom:8px;padding:12px}.turn-card{width:100%;display:inline-block}.turn-player{margin-top:8px}.turn-player strong{font-size:14px}.score-card{width:100%;display:inline-block}.score-head{padding-bottom:7px}.score-row{min-height:32px}.select-tip{min-height:92px}.match-footer-note{display:none}.shot-controls{padding:12px 15px}.spin-control{margin:11px 0}.spin-grid{width:100px}.spin-grid button{min-height:30px}.power-control{margin-bottom:10px}.strike-button{min-height:48px}.room-team-grid{grid-template-columns:1fr}.room-code strong{font-size:30px}.result-card{margin-top:5vh}.result-score-grid{margin-top:28px}.result-stats{flex-wrap:wrap;justify-content:center}.result-stats span{min-width:31%}.result-actions{flex-direction:column;align-items:stretch}.result-actions .text-button{width:100%}.modal-card{padding:20px}}@media (max-width:390px){.hero-copy h1,.flow-title h1,.setup-copy h1{font-size:44px}.hero-lede{font-size:13px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .primary-button{width:100%}.home-footer-strip{gap:13px}.home-footer-strip strong{font-size:19px}.game-choice{min-height:250px;padding:18px}.choice-illustration{width:calc(100% - 36px);left:18px}.choice-kicker{margin-top:146px}.game-choice strong{font-size:22px}.flow-inner,.setup-layout{margin-top:30px}.flow-title{margin-bottom:24px}.mode-card{min-height:245px}.mode-symbol{top:42px;right:20px}.mode-card strong{font-size:24px}.setup-layout{width:calc(100% - 24px)}.difficulty-panel,.room-panel{padding:15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.contact-instruction{color:var(--muted);letter-spacing:.08em;align-items:center;gap:10px;margin:13px 0 15px;font:9px/1.45 DM Mono,monospace;display:flex}.contact-instruction>span{color:var(--gold);flex:none;font-size:14px}.contact-lock-button{min-height:43px;color:var(--gold);border-color:#e8c2608c;margin-bottom:16px}.contact-lock-button.locked{color:var(--mint);background:#8de0c014;border-color:#8de0c0a6}.primary-button:disabled{cursor:not-allowed;opacity:.42;transform:none}.power-control input:disabled{cursor:not-allowed;opacity:.42}.simple-home-screen{isolation:isolate;background:#17372f;flex-direction:column;min-height:100svh;padding:0;display:flex;position:relative;overflow:hidden}.simple-home-background,.simple-home-vignette{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.simple-home-background{z-index:-2;filter:brightness(1.5)saturate(1.08)contrast(1.02);background:url(/content/brand/cuecraft-main-menu.png) 50%/cover no-repeat}.simple-home-vignette{z-index:-1;background:linear-gradient(90deg,#030b1047 0%,#030b1014 41%,#030b1024 100%),linear-gradient(#030b1014 0%,#0000 72%,#030b1057 100%)}.simple-home-top{justify-content:space-between;align-items:center;gap:18px;width:min(1240px,100% - 48px);margin:0 auto;padding:25px 0;display:flex}.simple-brand-lockup{color:var(--cream);align-items:center;gap:12px;display:flex}.simple-brand-lockup strong{letter-spacing:.15em;font-size:14px;display:block}.simple-brand-lockup small{color:#b4c7b6;letter-spacing:.12em;margin-top:4px;font:9px DM Mono,monospace;display:block}.simple-build-label{color:#b7cbb8;letter-spacing:.12em;font:9px DM Mono,monospace}.simple-home-menu{z-index:1;width:min(382px,100% - 38px);margin:auto;position:relative;transform:translateY(-14vh)}.simple-home-menu>.eyebrow{color:#d4bb75;text-align:center;text-shadow:0 2px 14px #000000b3;margin-bottom:16px}.simple-game-grid{gap:12px;display:grid}.simple-game-choice{width:100%;min-height:72px;color:var(--cream);text-align:left;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(90deg,#061a1a9e,#07171752);border:0;border-radius:3px;grid-template-columns:28px 38px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 13px;transition:transform .18s,background .18s,box-shadow .18s;display:grid;position:relative;box-shadow:inset 0 1px #fff3b829,inset 0 -1px #fff3b814,0 8px 20px #00000029}.simple-game-choice:before{content:"";pointer-events:none;border:1px solid #e7c6745c;border-radius:2px;position:absolute;top:1px;bottom:1px;left:1px;right:1px}.simple-game-choice:after{content:"";background:var(--gold);pointer-events:none;width:2px;height:38px;position:absolute;top:17px;left:0;box-shadow:0 0 10px #e8c2608c}.simple-game-choice:hover{background:linear-gradient(90deg,#144136c7,#0e272385);transform:translate(3px);box-shadow:inset 0 1px #fff3b838,inset 0 -1px #fff3b81f,0 12px 25px #00000040}.simple-game-choice.coral:after{background:var(--coral);box-shadow:0 0 10px #fa796880}.simple-game-choice.gold:after{background:var(--gold)}.simple-choice-index{color:#dbc98e;letter-spacing:.06em;font:700 18px DM Mono,monospace}.simple-choice-icon{width:48px;height:36px;position:relative}.simple-mini-table{background:linear-gradient(135deg,#2b765a,#143d34);border:3px solid #1b2c26;border-radius:2px;outline:1px solid #e1c26ce6;position:absolute;top:6px;bottom:6px;left:1px;right:1px;box-shadow:inset 0 0 0 1px #ffffff29}.simple-mini-table:before,.simple-mini-table:after{content:"";background:#071016;border-radius:50%;width:6px;height:6px;margin-top:-3px;position:absolute;top:50%;box-shadow:0 0 4px #0000008c}.simple-mini-table:before{left:-5px}.simple-mini-table:after{right:-5px}.simple-mini-ball{z-index:2;border-radius:50%;width:12px;height:12px;position:absolute;box-shadow:inset -2px -3px 4px #00000059,inset 2px 2px 3px #ffffff73}.simple-mini-ball:after{content:"";background:#ffffffbf;border-radius:50%;width:3px;height:3px;position:absolute;top:2px;left:3px}.simple-mini-pool{background:#f5f0d9;top:17px;left:22px}.simple-mini-snooker{background:#c64b42;top:12px;left:28px}.simple-mini-pyramid{background:#e4dfc9;top:19px;left:31px}.simple-choice-copy{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.simple-choice-copy small{color:var(--mint);letter-spacing:.14em;font:9px DM Mono,monospace}.simple-game-choice.coral .simple-choice-copy small{color:var(--coral)}.simple-game-choice.gold .simple-choice-copy small{color:var(--gold)}.simple-choice-copy strong{color:var(--cream);letter-spacing:-.045em;text-shadow:0 2px 10px #0000008c;font-size:21px}.simple-choice-arrow{color:#c3d3c1;letter-spacing:.1em;white-space:nowrap;font:700 10px DM Mono,monospace}.simple-choice-arrow b{color:var(--coral);margin-left:10px;font-size:18px}.simple-home-footer{z-index:1;color:#afc1b1;text-align:right;letter-spacing:.16em;text-shadow:0 2px 12px #000c;width:min(1240px,100% - 48px);margin:0 auto;padding:18px 0 24px;font:9px DM Mono,monospace;position:relative}.simple-home-footer span{color:var(--gold);margin:0 8px}@media (max-width:700px){.simple-home-top{width:calc(100% - 28px);padding:17px 0}.simple-brand-lockup strong{font-size:12px}.simple-brand-lockup small,.simple-build-label{font-size:8px}.simple-home-menu{width:calc(100% - 24px);transform:translateY(-4vh)}.simple-home-menu>.eyebrow{margin-bottom:12px;font-size:8px}.simple-game-grid{gap:9px}.simple-game-choice{grid-template-columns:28px 39px minmax(0,1fr);gap:10px;min-height:72px;padding:9px 12px}.simple-choice-index{font-size:14px}.simple-choice-icon{transform-origin:0;width:39px;height:30px;transform:scale(.9)}.simple-choice-copy small{font-size:8px}.simple-choice-copy strong{font-size:19px}.simple-choice-arrow{display:none}.simple-home-footer{text-align:center;width:calc(100% - 28px);padding:15px 0 18px;font-size:7px}}@media (max-width:390px){.simple-home-top{padding-top:12px}.simple-build-label{display:none}.simple-home-menu>.eyebrow{margin-bottom:9px}.simple-game-choice{min-height:66px}.simple-choice-copy strong{font-size:17px}.simple-home-footer{letter-spacing:.1em}}.match-layout{grid-template-columns:minmax(0,1fr) 224px;gap:12px;width:min(1500px,100% - 22px)}.match-sidebar{gap:8px}.match-sidebar .turn-card,.match-sidebar .score-card,.match-sidebar .select-tip,.match-sidebar .match-footer-note{padding:12px}.match-sidebar .select-tip{min-height:108px}.aim-controls{padding:10px 12px}.aim-controls .contact-instruction{margin-bottom:8px}@media (max-width:700px){.match-layout{grid-template-columns:1fr;width:calc(100% - 14px)}.match-sidebar .turn-card,.match-sidebar .score-card,.match-sidebar .select-tip,.match-sidebar .match-footer-note{padding:12px}}.aim-controls .control-heading,.aim-controls .contact-instruction{margin-bottom:12px}.aim-control-row{grid-template-columns:minmax(145px,.7fr) auto minmax(180px,1fr) auto;align-items:center;gap:12px;display:grid}.aim-control-row .spin-label,.aim-control-row .power-control{margin:0}.aim-control-row .contact-lock-button{white-space:nowrap;min-height:42px;margin:0}.aim-control-row .strike-button{min-width:145px;min-height:42px}.change-target-button{min-height:34px;margin-top:12px;padding:0 14px;font-size:10px}.match-sidebar .shot-controls{display:none}@media (max-width:900px){.aim-control-row{grid-template-columns:minmax(130px,.7fr) auto minmax(150px,1fr)}.aim-control-row .strike-button{grid-column:2/-1}.aim-control-row .contact-lock-button{justify-self:start}}@media (max-width:700px){.aim-controls{padding:12px}.aim-control-row{grid-template-columns:1fr 1fr;gap:9px}.aim-control-row .spin-label,.aim-control-row .power-control{grid-column:1/-1}.aim-control-row .contact-lock-button,.aim-control-row .strike-button{width:100%}.aim-control-row .strike-button{grid-column:auto}.change-target-button{width:100%}}.mode-select-screen{isolation:isolate;background:#0a1718;min-height:100svh;position:relative;overflow:hidden}.mode-select-screen:before{content:"";z-index:-2;filter:brightness(1.16)saturate(1.04)contrast(1.02);background:url(/content/brand/cuecraft-modes.png) 50%/cover no-repeat;position:absolute;top:0;bottom:0;left:0;right:0}.mode-select-screen:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#030c0e61,#030c0e14 52%,#030c0e2e),linear-gradient(#030c0e1a,#0000 64%,#030c0e75);position:absolute;top:0;bottom:0;left:0;right:0}.mode-select-screen .flow-header{z-index:2;background:#050e1094;border-bottom-color:#dac27140;position:relative}.classic-mode-menu{z-index:1;flex-direction:column;gap:18px;width:min(520px,100% - 44px);margin:clamp(120px,22vh,220px) auto 0;display:flex;position:relative}.classic-mode-row{width:100%;min-height:68px;color:var(--cream);text-align:left;cursor:pointer;background:linear-gradient(90deg,#051717b3,#05171733);border:0;border-bottom:1px solid #e8c260b8;border-radius:0;justify-content:space-between;align-items:center;padding:0 22px 0 28px;transition:background .18s,transform .18s,border-color .18s;display:flex;position:relative;box-shadow:0 8px 22px #0000002e}.classic-mode-row:before{content:"";background:var(--gold);width:2px;position:absolute;top:14px;bottom:14px;left:0;box-shadow:0 0 10px #e8c26073}.classic-mode-row span{letter-spacing:.01em;text-shadow:0 2px 12px #0009;font:600 clamp(20px,3vw,30px)/1 Georgia,Times New Roman,serif}.classic-mode-row b{color:var(--gold);font:700 20px DM Mono,monospace}.classic-mode-row:hover{border-bottom-color:var(--mint);background:linear-gradient(90deg,#133f34d6,#0c252170);outline:none;transform:translate(5px)}.classic-mode-row:focus-visible{border-bottom-color:var(--mint);background:linear-gradient(90deg,#133f34d6,#0c252170);outline:none;transform:translate(5px)}.classic-mode-row.coral:before{background:var(--coral);box-shadow:0 0 10px #fa796873}.classic-mode-row.coral b{color:var(--coral)}.classic-mode-row.gold:before{background:var(--gold)}.classic-mode-row.gold b{color:var(--gold)}@media (max-width:700px){.classic-mode-menu{gap:12px;width:calc(100% - 28px);margin-top:clamp(90px,16vh,150px)}.classic-mode-row{min-height:58px;padding:0 16px 0 20px}.classic-mode-row span{font-size:21px}}section.flow-screen:has(.setup-layout){isolation:isolate;background:#0a1718;position:relative;overflow:hidden}section.flow-screen:has(.setup-layout):before{content:"";z-index:-2;filter:brightness(1.18)saturate(1.04)contrast(1.02);background:url(/content/brand/cuecraft-modes.png) 50%/cover no-repeat;position:absolute;top:0;bottom:0;left:0;right:0}section.flow-screen:has(.setup-layout):after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#030c0e66,#030c0e14 52%,#030c0e2e),linear-gradient(#030c0e1a,#0000 64%,#030c0e7a);position:absolute;top:0;bottom:0;left:0;right:0}section.flow-screen:has(.setup-layout) .flow-header{z-index:2;background:#050e1094;border-bottom-color:#dac27140;position:relative}section.flow-screen:has(.setup-layout) .setup-layout{z-index:1;width:min(560px,100% - 44px);margin:clamp(120px,22vh,220px) auto 0;display:block;position:relative}section.flow-screen:has(.setup-layout) .setup-copy{display:none}section.flow-screen:has(.setup-layout) .setup-spec{display:none}section.flow-screen:has(.setup-layout) .difficulty-panel{background:0 0;border:0;border-radius:0;padding:0}section.flow-screen:has(.setup-layout) .room-panel{background:0 0;border:0;border-radius:0;padding:0}section.flow-screen:has(.setup-layout) .difficulty-panel>.eyebrow{display:none}section.flow-screen:has(.setup-layout) .setup-note{display:none}section.flow-screen:has(.setup-layout) .difficulty-list{gap:10px;margin:0 0 24px}section.flow-screen:has(.setup-layout) .difficulty-card{background:linear-gradient(90deg,#051717b8,#05171733);border:0;border-bottom:1px solid #e8c260b8;border-radius:0;justify-content:space-between;width:100%;min-height:66px;padding:0 22px 0 28px;position:relative;box-shadow:0 8px 22px #0000002e}section.flow-screen:has(.setup-layout) .team-card{background:linear-gradient(90deg,#051717b8,#05171733);border:0;border-bottom:1px solid #e8c260b8;border-radius:0;justify-content:space-between;width:100%;min-height:66px;padding:0 22px 0 28px;position:relative;box-shadow:0 8px 22px #0000002e}section.flow-screen:has(.setup-layout) .difficulty-card:before{content:"";background:var(--gold);width:2px;position:absolute;top:14px;bottom:14px;left:0;box-shadow:0 0 10px #e8c26073}section.flow-screen:has(.setup-layout) .team-card:before{content:"";background:var(--gold);width:2px;position:absolute;top:14px;bottom:14px;left:0;box-shadow:0 0 10px #e8c26073}section.flow-screen:has(.setup-layout) .difficulty-card:hover{border-bottom-color:var(--mint);background:linear-gradient(90deg,#133f34d6,#0c25216b)}section.flow-screen:has(.setup-layout) .difficulty-card.active{border-bottom-color:var(--mint);background:linear-gradient(90deg,#133f34d6,#0c25216b)}section.flow-screen:has(.setup-layout) .team-card:hover{border-bottom-color:var(--mint);background:linear-gradient(90deg,#133f34d6,#0c25216b)}section.flow-screen:has(.setup-layout) .team-card.active{border-bottom-color:var(--mint);background:linear-gradient(90deg,#133f34d6,#0c25216b)}section.flow-screen:has(.setup-layout) .difficulty-card.active:before{background:var(--mint);box-shadow:0 0 10px #8de0c080}section.flow-screen:has(.setup-layout) .team-card.active:before{background:var(--mint);box-shadow:0 0 10px #8de0c080}section.flow-screen:has(.setup-layout) .difficulty-signal{display:none}section.flow-screen:has(.setup-layout) .difficulty-card>b{display:none}section.flow-screen:has(.setup-layout) .difficulty-card small{display:none}section.flow-screen:has(.setup-layout) .team-card span{display:none}section.flow-screen:has(.setup-layout) .difficulty-card>span:nth-child(2){display:block}section.flow-screen:has(.setup-layout) .difficulty-card strong{color:var(--cream);letter-spacing:.01em;text-shadow:0 2px 12px #0009;font:600 clamp(20px,3vw,28px)/1 Georgia,Times New Roman,serif}section.flow-screen:has(.setup-layout) .team-card strong{color:var(--cream);letter-spacing:.01em;text-shadow:0 2px 12px #0009;font:600 clamp(20px,3vw,28px)/1 Georgia,Times New Roman,serif}section.flow-screen:has(.setup-layout) .segmented{border:0;border-radius:0;gap:10px;margin:0 0 18px;padding:0}section.flow-screen:has(.setup-layout) .segmented button{min-height:54px;color:var(--cream);text-align:left;background:linear-gradient(90deg,#051717b8,#05171733);border:0;border-bottom:1px solid #e8c260b8;border-radius:0;padding:0 20px;font:600 18px Georgia,Times New Roman,serif}section.flow-screen:has(.setup-layout) .segmented button.active{border-bottom-color:var(--mint);color:var(--cream);background:linear-gradient(90deg,#133f34d6,#0c25216b)}section.flow-screen:has(.setup-layout) .room-team-grid{gap:10px;margin-bottom:24px}section.flow-screen:has(.setup-layout) .team-card{justify-content:center;align-items:flex-start}section.flow-screen:has(.setup-layout) .room-empty{display:none}section.flow-screen:has(.setup-layout) .room-code{background:#05171740;border:0;border-bottom:1px solid #8de0c099;border-radius:0;min-height:104px;margin-bottom:16px;padding:12px 0}section.flow-screen:has(.setup-layout) .room-code span{display:none}section.flow-screen:has(.setup-layout) .room-code small{display:none}section.flow-screen:has(.setup-layout) .field-hint{display:none}section.flow-screen:has(.setup-layout) .field-label{display:none}section.flow-screen:has(.setup-layout) .room-code strong{font-size:clamp(30px,6vw,42px)}section.flow-screen:has(.setup-layout) .room-input{background:#0517179e;border:0;border-bottom:1px solid #e8c260b8;border-radius:0;min-height:62px}section.flow-screen:has(.setup-layout) .room-panel .primary-button{width:100%;min-height:58px;margin-top:0}section.flow-screen:has(.setup-layout) .difficulty-panel .primary-button{width:100%;min-height:58px;margin-top:0}@media (max-width:700px){section.flow-screen:has(.setup-layout) .setup-layout{width:calc(100% - 28px);margin-top:clamp(90px,16vh,150px)}section.flow-screen:has(.setup-layout) .difficulty-card{min-height:58px;padding:0 16px 0 20px}section.flow-screen:has(.setup-layout) .team-card{min-height:58px;padding:0 16px 0 20px}section.flow-screen:has(.setup-layout) .difficulty-card strong{font-size:21px}section.flow-screen:has(.setup-layout) .team-card strong{font-size:21px}section.flow-screen:has(.setup-layout) .segmented button{min-height:48px;padding:0 16px;font-size:17px}}.simple-home-background{background-image:url(/content/brand/cuecraft-modes.png)!important}.simple-game-choice{min-height:68px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-bottom:1px solid #e8c26080;border-radius:0;grid-template-columns:32px minmax(0,1fr) auto;padding:10px 2px 10px 0}.simple-game-choice:before,.simple-game-choice:after{display:none}.simple-game-choice:hover{border-bottom-color:var(--mint);box-shadow:none;background:0 0;outline:none;transform:translate(6px)}.simple-game-choice:focus-visible{border-bottom-color:var(--mint);box-shadow:none;background:0 0;outline:none;transform:translate(6px)}.simple-game-choice:focus-visible{outline-offset:6px;outline:1px solid #8de0c0bf}.simple-choice-icon{display:none}.simple-choice-copy strong{font-size:25px}.simple-choice-arrow{color:#d5dfcf}@media (max-width:700px){.simple-game-choice{grid-template-columns:28px minmax(0,1fr);min-height:62px;padding:8px 0}.simple-game-grid{gap:10px}.simple-choice-copy strong{font-size:21px}}.simple-home-menu{width:min(470px,100% - 48px);margin:auto 0 auto clamp(28px,8vw,136px);transform:translateY(-10vh)}.simple-home-menu>.eyebrow{text-align:left;padding-left:32px}@media (max-width:700px){.simple-home-menu{width:calc(100% - 28px);margin:auto 14px;transform:translateY(-5vh)}.simple-home-menu>.eyebrow{padding-left:28px}}.aim-controls{background:linear-gradient(135deg,#091e1ff0,#071216f0);border:1px solid #8de0c03d;border-radius:9px;margin-top:10px;padding:11px 14px 13px;box-shadow:0 12px 30px #0003}.aim-stepper{grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 12px;display:grid}.aim-stepper span{color:#718a7c;letter-spacing:.1em;border-bottom:1px solid #cae5d526;padding-bottom:7px;font:9px DM Mono,monospace}.aim-stepper span.active{border-bottom-color:var(--coral);color:var(--cream)}.aim-stepper span.done{color:var(--mint);border-bottom-color:#8de0c08c}.aim-stage-copy{justify-content:space-between;align-items:baseline;gap:16px;margin:0 0 12px;display:flex}.aim-stage-copy strong{color:var(--cream);font-size:13px}.aim-stage-copy small{color:var(--muted);text-align:right;font-size:10px;line-height:1.4}.power-meter-control{margin:0}.power-meter-control>span{margin-bottom:7px}.power-meter{background:#040c0fb8;border:1px solid #e8c26073;border-radius:99px;width:100%;height:9px;overflow:hidden;box-shadow:inset 0 1px 2px #00000059}.power-meter>span{border-radius:inherit;background:linear-gradient(90deg, var(--mint), var(--gold), var(--coral));height:100%;transition:width 60ms linear;display:block;box-shadow:0 0 14px #fa79687a}.power-scale{color:#789185;letter-spacing:.1em;justify-content:space-between;margin-top:5px;font:8px DM Mono,monospace;display:flex}.aim-controls.is-charging .power-meter>span{box-shadow:0 0 18px #fa7968b8}@media (max-width:700px){.aim-controls{padding:10px 12px 12px}.aim-stage-copy{display:block}.aim-stage-copy small{text-align:left;margin-top:5px;display:block}.aim-stepper{gap:7px}.aim-stepper span{font-size:8px}}.simple-build-label{color:#d5dfcf;letter-spacing:.14em;white-space:nowrap;align-items:center;font-size:11px;display:flex}.simple-build-label .live-dot{margin-right:9px}.simple-home-menu>.eyebrow{letter-spacing:.2em;margin-bottom:20px;padding-left:32px;font-size:12px}.simple-game-grid{gap:14px}.simple-game-choice{border-left:2px solid #8de0c0d1;grid-template-columns:minmax(0,1fr);min-height:82px;padding:11px 2px 11px 32px}.simple-game-choice.coral{border-left-color:#fa7968e6}.simple-game-choice.gold{border-left-color:#e8c260e6}.simple-game-choice:hover{transform:translate(7px)}.simple-game-choice:focus-visible{transform:translate(7px)}.simple-choice-copy{gap:5px}.simple-choice-copy small{letter-spacing:.17em;font-size:11px}.simple-choice-copy strong{letter-spacing:-.04em;font-size:29px}@media (max-width:700px){.simple-build-label{letter-spacing:.08em;font-size:9px}.simple-home-menu>.eyebrow{margin-bottom:14px;padding-left:16px;font-size:10px}.simple-game-choice{grid-template-columns:minmax(0,1fr);min-height:72px;padding:9px 0 9px 16px}.simple-choice-copy small{font-size:9px}.simple-choice-copy strong{font-size:23px}}@media (max-width:390px){.simple-build-label{font-size:7px;display:flex}.simple-choice-copy strong{font-size:21px}}.canvas-wrap{position:relative}.power-overlay{z-index:4;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:linear-gradient(135deg,#07191beb,#060e12f0);border:1px solid #8de0c085;border-radius:10px;width:min(360px,100% - 32px);padding:12px 14px 10px;position:absolute;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 12px 26px #0000005c,0 0 0 1px #030b0d80}.power-overlay-heading{color:var(--mint);letter-spacing:.16em;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;font:10px DM Mono,monospace;display:flex}.power-overlay-heading strong{color:var(--cream);letter-spacing:0;font-size:15px}.power-overlay-meter{background:#01080bc7;border:1px solid #e8c260ad;border-radius:99px;width:100%;height:12px;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #00000075}.power-overlay-meter>span{z-index:1;border-radius:inherit;background:linear-gradient(90deg,#8de0c0 0%,#e8c260 62%,#fa7968 100%);height:100%;transition:width 60ms linear;display:block;position:relative;box-shadow:0 0 16px #fa79689e}.power-overlay-meter>i{z-index:2;background:#041012b8;width:1px;position:absolute;top:0;bottom:0}.power-overlay-scale{color:#9ab2a3;letter-spacing:.12em;justify-content:space-between;gap:4px;margin-top:5px;font:8px DM Mono,monospace;display:flex}.power-overlay-scale small{text-align:center;white-space:nowrap;flex:20%;min-width:0;font-size:8px}.power-overlay-scale small:first-child{text-align:left}.power-overlay-scale small:last-child{text-align:right}.power-overlay p{color:var(--cream);text-align:center;margin:8px 0 0;font-size:11px}.power-overlay.is-charging{border-color:#fa7968cc;box-shadow:0 12px 26px #00000061,0 0 22px #fa79682e}.power-overlay.is-charging .power-overlay-meter>span{box-shadow:0 0 22px #fa7968e0}@media (max-width:700px){.power-overlay{width:calc(100% - 24px);padding:10px 12px 9px;bottom:10px}.power-overlay-heading{font-size:9px}.power-overlay-heading strong{font-size:14px}.power-overlay p{margin-top:6px;font-size:10px}.power-overlay-scale small{font-size:7px}}.match-screen{width:var(--cuecraft-viewport-width,100vw);height:var(--cuecraft-viewport-height,100dvh)}@media (orientation:portrait) and (max-width:700px){.match-layout{height:calc(var(--cuecraft-viewport-height,100dvh) - 61px);grid-template-rows:minmax(230px,44%) minmax(0,1fr)}.canvas-wrap canvas{object-fit:contain;width:100%;height:100%}}@media (orientation:landscape) and (max-height:600px){.match-header{min-height:48px;padding-right:max(10px, env(safe-area-inset-right));padding-left:max(10px, env(safe-area-inset-left))}.match-layout{width:calc(100% - 16px);height:calc(var(--cuecraft-viewport-height,100dvh) - 48px);grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) clamp(210px,29vw,260px);gap:8px;padding:7px 0}.board-meta{padding-bottom:5px;font-size:8px}.board-event{min-height:26px;font-size:9px}.match-sidebar{padding-bottom:0;display:flex}.turn-card,.score-card,.shot-controls,.select-tip,.match-footer-note{margin-bottom:0;padding:8px 10px}.turn-player{margin-top:5px}.score-head{padding-bottom:4px}.score-row{min-height:27px}.select-tip,.match-footer-note{display:none}.shot-controls{overflow-y:auto}.spin-control{margin:6px 0}.spin-grid{width:76px}.spin-grid button{min-height:24px}.strike-button{min-height:38px}.power-overlay{width:min(330px,100% - 20px);padding:8px 10px;bottom:7px}}html,body,#root{min-height:100%;margin:0}*{box-sizing:border-box}body{font-family:Arial,sans-serif}button,input,select{font:inherit}
/*$vite$:1*/