.basketball-score-burst{position:absolute;z-index:6;top:calc(29% - 250px);left:50%;width:min(320px,78%);pointer-events:none;transform:translate(-50%);text-align:center;isolation:isolate}.basketball-score-burst-art{position:relative;width:100%;height:auto;display:block;filter:drop-shadow(0 5px 2px #21081e88);animation:basketball-score-slam .95s both}.basketball-score-burst-points{display:block;margin-top:-8px;font-size:clamp(36px,8vw,54px);line-height:1;font-weight:1000;font-style:italic;color:#ffed75;-webkit-text-stroke:2px #4b132b;paint-order:stroke fill;text-shadow:0 4px 0 #bd3118,0 6px 8px #17041277;animation:basketball-score-points .95s both}.basketball-score-burst-ring{position:absolute;width:120px;height:120px;top:50%;left:50%;margin:-60px;border:5px solid #ffc847;border-radius:50%;opacity:0;animation:basketball-score-wave .5s ease-out both}.basketball-score-burst--swish .basketball-score-burst-ring{border-width:7px}.basketball-score-burst-sparks{position:absolute;top:50%;left:50%}.basketball-score-burst-sparks i{position:absolute;width:14px;height:5px;background:#ffda58;box-shadow:0 0 0 1px #ed5a19;border-radius:2px;animation:basketball-score-spark .6s cubic-bezier(.1,.6,.2,1) both}@keyframes basketball-score-slam{0%{opacity:0;transform:scale(.25) rotate(-12deg)}12%{opacity:1;transform:scale(1.22) rotate(3deg)}23%{transform:scale(.94) rotate(-2deg)}34%,72%{opacity:1;transform:scale(1) rotate(0)}to{opacity:0;transform:scale(1.1) translateY(-24px)}}@keyframes basketball-score-points{0%,10%{opacity:0;transform:scale(.4)}24%{opacity:1;transform:scale(1.25)}38%,75%{opacity:1;transform:scale(1)}to{opacity:0;transform:translateY(-18px)}}@keyframes basketball-score-wave{0%{opacity:.8;transform:scale(.2)}to{opacity:0;transform:scale(2.5)}}@keyframes basketball-score-spark{0%{opacity:0;transform:translate(0) rotate(var(--spark-angle)) scale(.3)}12%{opacity:1}to{opacity:0;transform:translate(var(--spark-x),var(--spark-y)) rotate(var(--spark-angle)) scale(.7)}}@media(prefers-reduced-motion:reduce){.basketball-score-burst-art,.basketball-score-burst-points{animation:none}.basketball-score-burst-ring,.basketball-score-burst-sparks{display:none}}.basketball-time-up{position:absolute;inset:0;z-index:25;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;background:#32102538}.basketball-final-whistle{width:182px;overflow:visible;transform-origin:65% 65%;animation:basketball-whistle-shake .12s ease-in-out 5 alternate}.basketball-whistle-lines{animation:basketball-whistle-blast .18s ease-out 3 alternate}.basketball-time-up-art{position:relative;margin-top:13px;color:#ffe753;font-size:clamp(54.6px,13vw,98.8px);font-weight:1000;font-style:italic;line-height:1.1;letter-spacing:-2.6px;-webkit-text-stroke:6.5px #321025;paint-order:stroke fill;text-shadow:0 6.5px 0 #ff7625,0 11.7px 0 #321025;transform:rotate(-7deg);animation:basketball-time-up-slam .4s .18s cubic-bezier(.18,.85,.3,1.3) both}.basketball-time-up-art span{color:#ff8e31}.basketball-final-whistle img{display:block;width:100%;height:auto}.basketball-time-up-art{width:min(440px,92%);font-size:0;line-height:0;letter-spacing:0;-webkit-text-stroke:0;text-shadow:none;margin-top:4px}.basketball-time-up-art img{display:block;width:100%;height:auto}@keyframes basketball-whistle-shake{0%{transform:rotate(-14deg) translate(-3px)}to{transform:rotate(14deg) translate(3px)}}@keyframes basketball-whistle-blast{0%{opacity:.3;transform:translate(-2px,2px)}to{opacity:1;transform:translate(2px,-2px)}}@keyframes basketball-time-up-slam{0%{opacity:0;transform:rotate(-7deg) scale(2.1)}70%{opacity:1;transform:rotate(-7deg) scale(.92)}to{opacity:1;transform:rotate(-7deg) scale(1)}}@media(prefers-reduced-motion:reduce){.basketball-final-whistle,.basketball-whistle-lines,.basketball-time-up-art{animation:none}}*{box-sizing:border-box}body{margin:0;background:#f6f5ff;font:16px system-ui,sans-serif;color:#fff}button{font:inherit;border:0;border-radius:14px;background:#6953ff;color:#fff;padding:10px 18px;cursor:pointer}button:disabled{opacity:.5;cursor:wait}.basketball-game{position:relative;isolation:isolate;display:flex;flex-direction:column;width:min(100%,620px);height:100vh;height:100svh;max-height:900px;margin:auto;overflow:hidden;background:#321025;padding-bottom:env(safe-area-inset-bottom,0px)}header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:60px;padding:8px 12px;z-index:3;position:relative;flex-shrink:0}header button{padding:8px 12px}header span{font-variant-numeric:tabular-nums}.basketball-court{position:relative;flex:1;min-height:0;width:100%}.basketball-3d-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.overlay{position:absolute;z-index:20;inset:0;display:grid;place-items:center;text-align:center;background:#160d28b8;padding:20px}.overlay>div{max-width:340px;padding:25px;background:#321025e8;border:1px solid #ffffff40;border-radius:24px}.overlay p{line-height:1.5}h1{margin-top:0}.basketball-last-shot{position:absolute;top:68px;left:50%;transform:translate(-50%);z-index:10;background:#321025dd;border-radius:14px;padding:8px 16px;pointer-events:none;font-weight:700}header strong{font-size:14px;max-width:110px}header span{font-size:13px;text-align:center}header button{font-size:13px;padding:8px 10px}.mode-overlay{background:#160d28aa;padding:14px;overflow-y:auto}.overlay>div.mode-panel{width:min(100%,390px);max-width:390px;padding:22px 24px;border-color:#fc55;background:#271225f5;box-shadow:0 20px 70px #0007}.mode-panel h1{font-size:34px;margin:0 0 18px;font-style:italic;letter-spacing:-1px}.eyebrow{margin:0 0 6px!important;color:#ffd96c;font-size:11px;letter-spacing:2px;font-weight:800}.mode-tabs{display:flex;background:#140b19;border:1px solid #ffffff20;border-radius:13px;padding:4px;gap:4px}.mode-tabs button{flex:1;font-size:14px;background:transparent;border-radius:9px;padding:10px 12px;color:#cbbdcc}.mode-tabs button[aria-pressed=true]{background:#ffd05b;color:#321025;font-weight:800}.classic-intro{padding:20px 0 10px}.mode-number{font-size:64px;font-style:italic;font-weight:900;color:#ffd05b;line-height:1}.mode-number span{display:block;font-size:10px;font-style:normal;letter-spacing:3px;margin-top:5px}.classic-intro h2{font-size:21px;margin:15px 0 7px}.classic-intro p,.selected-rule{font-size:13px;color:#d9cbdc;line-height:1.5!important;margin:8px 0 12px}.rule-chips{display:flex;justify-content:center;gap:8px}.rule-chips span{background:#ffffff0d;border:1px solid #ffffff1a;padding:5px 10px;border-radius:8px;font-size:12px;color:#ffe1a2}.mode-note{color:#c9b7cb;font-size:11px;margin:13px 0}.challenge-list{display:grid;gap:8px}.challenge-card{display:flex;align-items:center;gap:12px;text-align:left;width:100%;background:#ffffff06;border:1px solid #ffffff20;padding:12px 10px;border-radius:12px}.challenge-card[aria-pressed=true]{background:#ffcc5514;border-color:#ffd05b}.challenge-index{font-size:22px;font-weight:900;font-style:italic;color:#ffd05b}.challenge-card strong{display:block;font-size:14px}.challenge-card small{display:block;font-size:11px;margin-top:4px;color:#d8c7da}.challenge-select{margin-left:auto;color:#ffd05b;font-weight:700}.selected-rule{min-height:40px;text-align:left;margin:13px 0 7px}.input-hint{font-size:11px;color:#c7b8ca;margin:11px 0!important}.primary-action{width:100%;background:#fc5;color:#321025;font-weight:850;padding:12px 18px;border-radius:12px;box-shadow:0 3px #b96b29}.secondary-action{display:block;width:100%;margin-top:12px;background:transparent;color:#ddcde1;font-size:13px;padding:8px}.challenge-progress{position:absolute;top:65px;left:50%;transform:translate(-50%);z-index:8;width:min(260px,70%);background:#241126e8;border:1px solid #ffffff2b;border-radius:12px;padding:8px 12px;text-align:center;pointer-events:none}.challenge-progress span{font-size:12px;font-weight:700}.challenge-progress progress{display:block;width:100%;height:6px;margin-top:7px;border:0;border-radius:6px;overflow:hidden;appearance:none;background:#ffffff25}.challenge-progress progress::-webkit-progress-bar{background:#ffffff25}.challenge-progress progress::-webkit-progress-value{background:#ffd05b}.challenge-progress progress::-moz-progress-bar{background:#ffd05b}.challenge-last-shot{top:126px}.challenge-finish{position:absolute;inset:0;z-index:25;background:#1f0b2755;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;text-align:center}.challenge-finish strong{color:#ffdf6b;font-size:clamp(24px,6vw,38px);font-style:italic;text-shadow:0 3px 0 #321025,0 0 15px #321025}.challenge-finish span{background:#321025dc;border-radius:10px;padding:9px 16px;margin-top:14px}.result-panel h1{font-size:28px;margin:10px 0}.result-progress{font-size:22px;color:#ffd05b;font-weight:800}.result-stats{font-size:13px;color:#d8c7da;line-height:1.8!important}button:focus-visible{outline:3px solid white;outline-offset:3px}@media(max-height:650px){.overlay>div.mode-panel{padding:15px 20px}.mode-panel h1{font-size:28px;margin-bottom:10px}.classic-intro{padding:12px 0 4px}.mode-number{font-size:46px}.challenge-card{padding:9px 10px}.mode-note{margin:9px 0}.selected-rule{margin:9px 0 5px;min-height:0}.input-hint{margin:7px 0!important}}@media(max-width:370px){header{gap:5px;padding:8px}header strong{max-width:80px;font-size:12px}header span{font-size:11px}header button{font-size:12px;padding:7px}.overlay>div.mode-panel{padding:16px}.mode-panel h1{font-size:29px}}.home-screen{position:absolute;inset:0;z-index:15;overflow:hidden;background:radial-gradient(ellipse at 50% 55%,#65384a 0,#302033 65%,#211728);color:#fff0cf}.home-screen:before{content:"";position:absolute;inset:0;opacity:.12;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:6px 6px;pointer-events:none}.home-topline{position:absolute;top:max(22px,env(safe-area-inset-top));left:24px;right:24px;display:flex;justify-content:space-between;font-size:10px;font-weight:800;letter-spacing:1.4px;color:#e7c59c}.home-logo{position:absolute;top:12%;left:15%;width:70%;text-align:center;transform:rotate(-6deg)}.home-logo>span{display:block;color:#ffb95c;font-size:clamp(13px,3vw,18px);letter-spacing:8px;font-weight:900}.home-logo strong{display:block;font-size:clamp(48px,11vw,76px);font-style:italic;font-weight:1000;line-height:.84;letter-spacing:-3px;text-shadow:3px 5px 0 #1b1224,5px 7px 0 #e66b43;margin:12px 0 20px}.logo-ball{display:inline-flex;align-items:center;justify-content:center;font-size:.5em;border:3px solid #251525;border-radius:100%;width:.8em;height:.8em;vertical-align:middle;box-sizing:content-box;margin-left:6px;color:#251525;text-shadow:none}.home-logo small{font-size:9px;letter-spacing:2px;color:#d4b8b7}.home-center{position:absolute;top:45%;left:23%;width:54%;animation:hoop-float 4s ease-in-out infinite}.home-hoop{display:block;width:100%;overflow:hidden}.home-nav-item{position:absolute;width:82px;height:85px;padding:12px 6px 8px;background:#fff3df0d;border:1px solid #e6bd8255;box-shadow:0 5px #170e2044;border-radius:0 20px 20px 0;display:flex;flex-direction:column;align-items:center;gap:5px;color:#f8e7c6}.home-nav-item svg{width:33px;height:33px}.home-nav-item span{font-size:10px;font-weight:750;letter-spacing:.3px}.nav-0,.nav-2{top:49%}.nav-1,.nav-3{top:calc(49% + 102px)}.nav-0,.nav-1{left:0}.nav-2,.nav-3{right:0;border-radius:20px 0 0 20px}.home-nav-item:hover{background:#ffcc5525;color:#ffcf72}.tap-start{position:absolute;top:81%;left:20%;width:60%;padding:6px;background:transparent;color:#ffe4ac;text-align:center}.tap-start>span{display:block;font-size:clamp(24px,6vw,34px);font-weight:900;font-style:italic;animation:start-glow 2.8s ease-in-out infinite}.tap-start small{display:block;font-size:10px;letter-spacing:2px;margin-top:8px;color:#d9bfc3}.tap-start b{color:#fc5;font-size:16px}.home-bottom{position:absolute;bottom:max(13px,env(safe-area-inset-bottom));width:100%;text-align:center;font-size:10px;color:#b89eae}.still *{animation:none!important}.hub-overlay{background:#201327f5;overflow-y:auto;padding:24px 20px}.overlay>div.hub-panel{width:100%;max-width:410px;padding:24px;border:1px solid #a77b6d66;background:#332035;text-align:left;box-shadow:0 18px 60px #0004}.panel-heading{display:flex;align-items:center;gap:18px;margin-bottom:22px}.panel-heading button{background:#ffffff0e;border:1px solid #ffffff20;border-radius:12px;font-size:22px;padding:6px 13px}.panel-heading h1{font-size:27px;font-style:italic;margin:0}.panel-description{font-size:12px;color:#cfb9ca;line-height:1.6}.hub-panel h2{font-size:15px;margin:25px 0 12px}.record-hero{background:#ffcf5912;border:1px solid #ffcf5944;border-radius:16px;text-align:center;padding:20px;margin:20px 0}.record-hero small{font-size:10px;letter-spacing:2px;color:#f6cc7b}.record-hero strong{display:block;font-size:64px;color:#ffd46e;font-style:italic}.record-hero em{font-size:12px;margin-left:10px}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stats-grid>div{background:#ffffff06;border-radius:12px;padding:12px}.stats-grid strong{display:block;font-size:22px}.stats-grid small{font-size:11px;color:#cdb4ca}.swatches{display:flex;gap:8px}.swatches button{flex:1;display:flex;flex-direction:column;gap:12px;align-items:center;padding:16px 5px;font-size:11px;background:#ffffff08;border:1px solid #ffffff20}.swatches button[aria-pressed=true]{border-color:#ffd05b;background:#ffcc5518;color:#ffdc83}.ball-swatch{width:43px;height:43px;border-radius:50%;background:linear-gradient(90deg,transparent 47%,#321025 48%,#321025 52%,transparent 53%),linear-gradient(0deg,transparent 47%,#321025 48%,#321025 52%,transparent 53%),var(--swatch);border:2px solid #321025;box-shadow:inset -8px -6px #0002}.rim-swatch{width:48px;height:25px;border:6px solid;border-radius:50%;margin:9px 0}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 0;border-bottom:1px solid #ffffff15}.setting-row strong{display:block;font-size:14px}.setting-row small{display:block;color:#bda8bd;font-size:11px;margin-top:6px;line-height:1.6}.setting-row input{accent-color:#ffcc55;width:22px;height:22px;flex-shrink:0}.settings-note{font-size:12px;color:#c6afc3;line-height:1.8;margin-top:28px}.local-save{font-size:9px!important;letter-spacing:1px;color:#ad93aa;text-align:center;margin:22px 0 0}.play-hint{position:absolute;bottom:95px;left:50%;transform:translate(-50%);white-space:nowrap;background:#211326bb;border:1px solid #fff3;border-radius:30px;padding:9px 15px;font-size:11px;pointer-events:none}@keyframes hoop-float{50%{transform:translateY(-8px)}}@keyframes start-glow{50%{opacity:.65}}@media(prefers-reduced-motion:reduce){.home-screen *{animation:none!important}}@media(max-width:380px){.home-nav-item{width:66px;height:75px}.nav-1,.nav-3{top:calc(49% + 88px)}.home-logo strong{font-size:49px}.hub-overlay{padding:12px}.overlay>div.hub-panel{padding:18px}}@media(max-height:550px){.home-logo{top:10%}.home-logo strong{font-size:42px;margin:6px 0 12px}.home-logo small{display:none}.home-center{top:39%;left:34%;width:32%}.home-nav-item{height:66px;width:80px;flex-direction:row}.home-nav-item svg{width:24px}.nav-0,.nav-2{top:42%}.nav-1,.nav-3{top:calc(42% + 76px)}.tap-start{top:79%}.home-bottom{display:none}.hub-overlay{place-items:start center}}.is-home .basketball-court{position:absolute;inset:40% 0 -40%;height:100%}.home-screen{background:linear-gradient(180deg,#1d102699 0%,#1d102622 32%,transparent 60%,#1d1026aa 100%)}.home-screen:before{display:none}.home-logo{top:9%}.home-logo strong{font-size:clamp(46px,10vw,66px)}.home-logo small{color:#ffedcf;text-shadow:0 2px 4px #000}.home-topline,.home-bottom{text-shadow:0 2px 4px #000;color:#ffedcf}.home-nav-item{background:#29172be8;box-shadow:0 5px #170e2088}.tap-start{text-shadow:0 3px 5px #211021}.tap-start small{color:#fff1d4}@media(max-height:550px){.is-home .basketball-court{inset:38% 0 -38%}.home-logo{top:9%}.home-logo strong{font-size:38px}.home-logo>span{font-size:11px}}.basketball-game .basketball-court,.basketball-game.is-home .basketball-court{position:absolute;inset:60px 0 0;height:auto}.home-screen{transition:opacity .22s ease,transform .4s ease}.entering .home-screen{opacity:0;transform:translateY(-14px);pointer-events:none}.entering:after{content:"";position:absolute;inset:0;z-index:30}.basketball-game:not(.is-home)>header{animation:hud-appear .18s ease-out}@keyframes hud-appear{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.home-screen{transition:none}.basketball-game>header{animation:none!important}}header.game-hud{height:60px;min-height:60px;padding:0 16px;align-items:flex-start;pointer-events:none;overflow:visible}.hud-clock{position:relative;width:88px;height:88px;flex-shrink:0;margin-top:10px;border-radius:50%;background:#201426f5;color:#ffcf65;box-shadow:0 4px 14px #0007}.hud-clock svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.hud-clock circle{fill:none;stroke-width:5}.clock-track{stroke:#fff2}.clock-progress{stroke:currentColor;stroke-linecap:round;transition:stroke-dashoffset .45s linear}.clock-value{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0}.game-hud .clock-value strong{max-width:none;font-size:34px;font-weight:950;line-height:1.05;letter-spacing:-1px;font-variant-numeric:tabular-nums;color:#fff5de}.clock-value small{font-size:9px;font-weight:800;letter-spacing:2px;margin-top:3px}.hud-clock.urgent{color:#ff455a;background:#391322}.hud-clock.urgent .clock-value strong{color:#ffb8bf}.hud-clock.breathing{animation:clock-breathe 1s ease-in-out infinite}.hud-controls{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:9px;pointer-events:auto}.game-hud .hud-mode{font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#fff2d9;text-shadow:0 2px 4px #000}.hud-controls>div{display:flex;gap:5px}.game-hud .hud-controls button{border:1px solid #ffffff40;border-radius:10px;min-width:44px;height:36px;padding:4px 12px;background:#24152ce8;font-size:18px;line-height:1}.hud-score{margin-top:10px;min-width:94px;padding:9px 14px 8px;text-align:center;border:1px solid #ffd76e99;border-radius:16px;background:#24152cf5;box-shadow:0 4px 14px #0007;display:flex;flex-direction:column;align-items:center}.game-hud .hud-score>span{font-size:10px;letter-spacing:2px;font-weight:850;color:#f4d698}.game-hud .hud-score strong{max-width:none;font-size:38px;line-height:1.05;font-weight:950;font-variant-numeric:tabular-nums;color:#ffe080;margin:2px 0}.hud-score small{font-size:8px;letter-spacing:1.5px;color:#d1b7bb}.score-pop{animation:score-pop .26s ease-out}@keyframes clock-breathe{0%,to{box-shadow:0 0 #ff455a22,0 4px 14px #0007}50%{box-shadow:0 0 0 7px #ff455a30,0 0 24px #ff455a88}}@keyframes score-pop{0%{transform:scale(1.22);color:#fff}to{transform:scale(1)}}@media(max-width:380px){header.game-hud{padding:0 10px}.hud-clock{width:76px;height:76px}.game-hud .clock-value strong{font-size:30px}.hud-score{min-width:78px;padding:8px 10px}.game-hud .hud-score strong{font-size:32px}.game-hud .hud-mode{font-size:9px;letter-spacing:.3px}}@media(prefers-reduced-motion:reduce){.hud-clock.breathing,.score-pop{animation:none}.clock-progress{transition:none}.hud-clock.urgent{box-shadow:0 0 0 3px #ff455a66}}header.game-hud{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;padding:0 16px}.game-hud .hud-clock{grid-column:1;grid-row:1;justify-self:start;width:64px;height:64px;margin-top:10px}.game-hud .clock-value strong{font-size:28px;line-height:1;letter-spacing:-.5px}.game-hud .clock-value small{font-size:7px;margin-top:3px;letter-spacing:1px}.game-hud .hud-score{grid-column:2;grid-row:1;justify-self:center;min-width:0;margin:4px 0 0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}.game-hud .hud-score strong{font-size:44px;line-height:1.1;margin:0;color:#fff2cc;text-shadow:0 2px 0 #301322,0 0 5px #301322,0 3px 8px #0009}.game-hud .hud-controls{grid-column:3;grid-row:1;justify-self:end;padding-top:12px;gap:0}.game-hud .hud-controls button{width:44px;height:40px;padding:4px 8px}@media(max-width:380px){header.game-hud{padding:0 12px}.game-hud .hud-clock{width:58px;height:58px}.game-hud .clock-value strong{font-size:25px}.game-hud .hud-score strong{font-size:40px}}.primary-action.pause-resume{background:#65c98a;color:#142e20;box-shadow:0 3px #32864f}.pause-home{display:block;width:100%;margin-top:14px;padding:11px 18px;border:1px solid #c5acc454;border-radius:12px;background:#ffffff09;color:#d5c4d8;font-weight:650}.pause-home:hover{background:#ffffff14;border-color:#c5acc47a}.pause-home-note{margin:7px 0 0!important;font-size:11px;color:#ac98b1}.overlay>div.classic-result{width:min(100%,284px);max-width:284px;padding:25px;border-radius:24px}.classic-result h1{font-size:25px;line-height:1.2;margin:9px 0 0;letter-spacing:-.5px}.result-total{display:flex;flex-direction:column;align-items:center;margin:14px 0 16px}.result-total strong{font-size:54px;line-height:1;font-weight:900;letter-spacing:-2px;color:#ffdc7e;font-variant-numeric:tabular-nums}.result-total>span{font-size:9px;letter-spacing:2px;color:#d6be96;margin-top:6px;font-weight:750}.result-metrics{display:grid;grid-template-columns:repeat(3,1fr);padding:12px 0;margin-bottom:20px;border-top:1px solid #ffffff18;border-bottom:1px solid #ffffff18}.result-metrics>div{display:flex;flex-direction:column;gap:5px;align-items:center}.result-metrics>div+div{border-left:1px solid #ffffff18}.result-metrics strong{font-size:21px;font-weight:750;line-height:1;font-variant-numeric:tabular-nums}.result-metrics span{font-size:10px;color:#c5b2c8}@media(max-height:480px){.overlay:has(.classic-result){overflow-y:auto;place-items:start center}.overlay>div.classic-result{padding:18px 25px}.classic-result .result-total{margin:10px 0}.classic-result .result-metrics{margin-bottom:14px}}.result-total>.new-record-badge{display:inline-block;margin:0 0 10px;padding:5px 10px;border:1px solid #ffd46e88;border-radius:20px;background:#ffd46e18;color:#ffe18e;font-size:10px;letter-spacing:.5px;font-weight:850;line-height:1.3}.classic-result.has-new-record{position:relative;isolation:isolate;animation:record-panel-arrive .55s cubic-bezier(.2,.9,.25,1.18)}.classic-result.has-new-record:before{content:"";position:absolute;z-index:-1;inset:-2px;border-radius:26px;background:conic-gradient(from 0deg,#ffd86a00,#ffd86a88,#ff8b5a00,#ffd86a88,#ffd86a00);filter:blur(7px);opacity:0;animation:record-halo 1.6s ease-out}.has-new-record .new-record-badge{transform-origin:center;animation:record-badge-pop .78s .16s cubic-bezier(.18,.9,.25,1.28) both,record-badge-glow .62s .78s ease-in-out 2 alternate}.has-new-record .result-total>strong{animation:record-score-pop .72s .42s cubic-bezier(.18,.9,.25,1.25) both}.record-celebration{position:absolute;z-index:3;top:38%;left:50%;width:1px;height:1px;pointer-events:none}.record-celebration i{--tx:0px;--ty:-90px;--delay:0s;position:absolute;left:-4px;top:-4px;width:8px;height:8px;background:#ffe17f;clip-path:polygon(50% 0,62% 36%,100% 50%,62% 64%,50% 100%,38% 64%,0 50%,38% 36%);filter:drop-shadow(0 0 4px #ffbd48);opacity:0;animation:record-spark .9s var(--delay) cubic-bezier(.1,.65,.25,1) both}.record-celebration i:nth-child(1){--tx:-112px;--ty:-72px;--delay:.18s}.record-celebration i:nth-child(2){--tx:-74px;--ty:-108px;--delay:.12s}.record-celebration i:nth-child(3){--tx:-28px;--ty:-122px;--delay:.23s}.record-celebration i:nth-child(4){--tx:28px;--ty:-120px;--delay:.15s}.record-celebration i:nth-child(5){--tx:76px;--ty:-103px;--delay:.24s}.record-celebration i:nth-child(6){--tx:112px;--ty:-66px;--delay:.17s}.record-celebration i:nth-child(7){--tx:118px;--ty:18px;--delay:.27s}.record-celebration i:nth-child(8){--tx:82px;--ty:64px;--delay:.2s}.record-celebration i:nth-child(9){--tx:30px;--ty:82px;--delay:.29s}.record-celebration i:nth-child(10){--tx:-32px;--ty:82px;--delay:.21s}.record-celebration i:nth-child(11){--tx:-84px;--ty:60px;--delay:.3s}.record-celebration i:nth-child(12){--tx:-118px;--ty:14px;--delay:.22s}@keyframes record-panel-arrive{0%{transform:scale(.94);opacity:.25}to{transform:scale(1);opacity:1}}@keyframes record-halo{0%{opacity:0;transform:scale(.85)}30%{opacity:.95}to{opacity:0;transform:scale(1.12) rotate(18deg)}}@keyframes record-badge-pop{0%{opacity:0;transform:translateY(12px) scale(.55) rotate(-5deg)}64%{opacity:1;transform:translateY(-3px) scale(1.12) rotate(2deg)}to{opacity:1;transform:none}}@keyframes record-badge-glow{0%{box-shadow:0 0 #ffd76f00;background:#ffd46e18}to{box-shadow:0 0 18px #ffd76f99;background:#ffd46e35}}@keyframes record-score-pop{0%{opacity:.35;transform:scale(.72)}60%{transform:scale(1.2);color:#fff8c7;text-shadow:0 0 22px #ffd25a}to{opacity:1;transform:scale(1)}}@keyframes record-spark{0%{opacity:0;transform:translate(0) scale(.2) rotate(0)}22%{opacity:1}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(1.25) rotate(150deg)}}@media(prefers-reduced-motion:reduce){.classic-result.has-new-record,.classic-result.has-new-record:before,.has-new-record .new-record-badge,.has-new-record .result-total>strong,.record-celebration i{animation:none!important}.record-celebration{display:none}.has-new-record .new-record-badge{box-shadow:0 0 0 2px #ffd76f55,0 0 16px #ffd76f55}}.overlay>div.challenge-hub{background:linear-gradient(150deg,#483049,#292236);border-color:#dab29566;padding:24px;width:min(100%,390px)}.challenge-hub .panel-heading{margin-bottom:22px}.challenge-hub .panel-heading h1{font-size:30px;color:#fff1cf}.challenge-hub .challenge-list{gap:12px}.challenge-hub .challenge-card{--accent:#ffbc66;--tint:#b96a2729;padding:16px 12px;min-height:94px;border:1px solid #ffffff2a;border-left:4px solid var(--accent);border-radius:15px;background:linear-gradient(110deg,var(--tint),#ffffff05);gap:12px;box-shadow:0 4px #160e242e}.challenge-hub .challenge-color-1{--accent:#7be1ce;--tint:#238e8333}.challenge-hub .challenge-color-2{--accent:#bda3ff;--tint:#7b52ca33}.challenge-hub .challenge-card[aria-pressed=true]{border-color:var(--accent);background:linear-gradient(110deg,var(--tint),#ffffff12);box-shadow:0 0 0 1px var(--accent),0 5px 12px #160e2444}.challenge-hub .challenge-index{color:var(--accent);font-size:26px;align-self:center}.challenge-copy{flex:1;min-width:0}.challenge-hub .challenge-card strong{font-size:23px;line-height:1.15;font-weight:850;color:#fff3de;letter-spacing:-.4px}.challenge-objective{display:block;margin-top:8px;font-size:13px;line-height:1.5;font-weight:450;color:#d7cbdc}.challenge-facts{display:flex;align-items:center;gap:7px;margin-top:9px;flex-wrap:wrap}.challenge-facts b{font-size:12px;font-weight:800;color:var(--accent)}.challenge-hub .challenge-facts small{font-size:10px;margin:0;padding:3px 7px;border-radius:6px;background:#150d242e;color:#efe4f3;white-space:nowrap}.challenge-hub .challenge-select{color:var(--accent);font-size:19px}.challenge-hub .challenge-best{font-size:10px;color:#c6b5ce;margin-top:7px}.challenge-rule{font-size:12px;color:#d6c9de;text-align:center;margin:17px 0!important;min-height:18px}@media(max-width:370px){.overlay>div.challenge-hub{padding:18px}.challenge-hub .challenge-card{gap:9px;padding:15px 12px}.challenge-hub .challenge-card strong{font-size:21px}.challenge-objective{font-size:12px}}@media(max-height:600px){.challenge-hub .panel-heading{margin-bottom:14px}.challenge-hub .challenge-card{min-height:76px;padding:12px}.challenge-hub .challenge-list{gap:9px}}.overlay>div.records-hub{width:min(100%,390px);padding:24px;background:linear-gradient(150deg,#483049,#292236);border-color:#dab29566}.records-hub .panel-heading{margin-bottom:22px}.records-hub .panel-heading h1{font-size:30px;color:#fff1cf}.records-best{display:flex;align-items:center;gap:16px;padding:20px 18px;border:1px solid #ffcb6b88;border-radius:17px;background:linear-gradient(120deg,#be7c333b,#ffcd7010);position:relative;overflow:hidden}.records-trophy{width:52px;height:58px;display:grid;place-items:center;color:#ffcf78;flex-shrink:0}.records-trophy svg{width:48px;height:48px}.records-best>div>span{font-size:10px;letter-spacing:1.6px;color:#f6d698;font-weight:850}.records-best strong{display:flex;align-items:baseline;gap:9px;font-size:52px;line-height:1.1;letter-spacing:-1.5px;color:#ffe39b;font-weight:900;font-variant-numeric:tabular-nums;margin-top:4px}.records-best strong small{font-size:10px;letter-spacing:1px;font-weight:750;color:#d5b794}.records-star{position:absolute;right:13px;bottom:3px;color:#ffcf7810;font-size:90px;transform:rotate(12deg);pointer-events:none}.records-section-label{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:22px 0 10px;font-size:9px;letter-spacing:1.2px;color:#d2bdd5;font-weight:750}.records-section-label>span:last-child{font-size:11px;letter-spacing:0;color:#f0e2ee;font-weight:500}.records-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.record-tile{--record-accent:#7be1ce;--record-tint:#238e831d;display:flex;flex-direction:column;align-items:flex-start;padding:15px 16px;border:1px solid #ffffff20;border-radius:13px;background:linear-gradient(120deg,var(--record-tint),#ffffff03);gap:7px}.record-tile.gold{--record-accent:#ffcb79;--record-tint:#be7c3322}.record-tile.purple{--record-accent:#c2abff;--record-tint:#7b52ca22}.record-tile strong{font-size:29px;line-height:1;font-weight:850;color:var(--record-accent);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.record-tile span{font-size:11px;color:#dfcfe2}.records-wins{display:flex;align-items:center;gap:11px;margin-top:12px;border:1px solid #bda3ff45;border-radius:13px;padding:12px 15px;background:#9d7be510;color:#dfd1fb;font-size:12px}.wins-icon{display:flex;width:24px;height:24px;color:#bda3ff}.wins-icon svg{width:100%;height:100%}.records-wins strong{margin-left:auto;font-size:24px;font-weight:850;line-height:1;color:#c9b4ff}.records-empty{font-size:11px;color:#cfb9ca;text-align:center;margin:15px 0 0!important}.records-hub .local-save{margin-top:18px;font-size:8px!important;color:#b5a0b8;letter-spacing:1.1px}@media(max-width:370px){.overlay>div.records-hub{padding:18px}.records-hub .panel-heading h1{font-size:27px}.records-best{padding:16px 12px;gap:10px}.records-best strong{font-size:46px}.record-tile{padding:13px}}@media(max-height:600px){.records-hub .panel-heading{margin-bottom:14px}.records-best{padding:13px 16px}.records-best strong{font-size:44px}.records-section-label{margin-top:15px}.record-tile{padding:12px 14px}.record-tile strong{font-size:26px}}.home-nav-item{width:78px;height:78px;justify-content:center;padding:16px;border:1px solid #edc98b88;border-left:0;background:linear-gradient(145deg,#755565ee,#39283bed 48%,#251a2aee);box-shadow:inset 0 2px #fff4ca33,inset 0 -3px #120c2255,0 5px #1a1125b3,0 9px 18px #0005;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.home-nav-item.nav-2,.home-nav-item.nav-3{border-left:1px solid #edc98b88;border-right:0}.home-nav-item img{display:block;width:42px;height:42px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 0 #170e27) drop-shadow(0 0 5px #ffcd5520)}.home-nav-item:hover{background:linear-gradient(145deg,#896375f2,#483247f2 50%,#302034f2);filter:brightness(1.08)}.home-nav-item:active{transform:translateY(3px);box-shadow:inset 0 2px 5px #160c2455,0 2px #1a1125b3,0 4px 9px #0004}@media(max-width:380px){.home-nav-item{width:66px;height:70px;padding:13px}.home-nav-item img{width:37px;height:37px}}@media(max-height:550px){.home-nav-item{width:70px;height:62px;padding:12px}.home-nav-item img{width:34px;height:34px}}@media(prefers-reduced-motion:reduce){.home-nav-item{transition:none}}.home-logo{position:absolute;top:6%;left:14%;width:72%;transform:none;text-align:center}.home-logo img{display:block;width:100%;height:auto;max-height:230px;object-fit:contain;filter:drop-shadow(4px 6px 0 #1b1224aa);-webkit-user-select:none;user-select:none}@media(max-height:550px){.home-logo{top:5%;left:23%;width:54%}.home-logo img{max-height:155px}}.overlay>div.settings-hub{width:min(100%,360px);padding:24px;background:linear-gradient(150deg,#423044,#292236);border-color:#d4ab8a55}.settings-hub .panel-heading{margin-bottom:20px}.settings-hub .panel-heading h1{font-size:30px;color:#fff1cf}.settings-groups{display:grid;gap:18px}.settings-group{margin:0}.settings-group h2{margin:0 0 8px;font-size:9px;line-height:1;letter-spacing:1.7px;text-transform:uppercase;color:#cbb6cf}.settings-group .setting-row{position:relative;min-height:60px;padding:10px 12px;border:1px solid #ffffff16;background:#ffffff08;gap:11px;cursor:pointer}.settings-group .setting-row:first-of-type{border-radius:14px 14px 5px 5px}.settings-group .setting-row:last-of-type{border-radius:5px 5px 14px 14px;margin-top:3px}.settings-group .setting-row:hover{background:#ffffff0d;border-color:#ffffff25}.setting-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:#ffca6720;color:#ffd888;font-size:18px;font-weight:800}.settings-group .setting-row strong{flex:1;font-size:14px;color:#f8eaf4;font-weight:720}.settings-group .setting-row input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.setting-switch{position:relative;width:46px;height:26px;flex:0 0 46px;border-radius:15px;background:#1c1423;border:1px solid #ffffff20;box-shadow:inset 0 2px 4px #0005;transition:background .18s ease,border-color .18s ease}.setting-switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#a99bad;box-shadow:0 2px 4px #0006;transition:transform .18s ease,background .18s ease}.setting-row input:checked+.setting-switch{background:#65c98a;border-color:#8be0aa}.setting-row input:checked+.setting-switch:after{transform:translate(20px);background:#f4fff6}.setting-row:has(input:focus-visible){outline:2px solid #ffd16d;outline-offset:2px}@media(max-width:370px){.overlay>div.settings-hub{padding:18px}.settings-groups{gap:14px}.settings-group .setting-row{min-height:56px}}@media(prefers-reduced-motion:reduce){.setting-switch,.setting-switch:after{transition:none}}.hub-panel .panel-heading{position:relative;display:flex;justify-content:center;align-items:center;min-height:42px;margin-bottom:22px;padding:0 46px}.hub-panel .panel-heading h1{width:100%;margin:0;text-align:center}.hub-panel .panel-heading .panel-close{position:absolute;top:50%;right:0;transform:translateY(-50%);display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #ffffff24;border-radius:12px;background:#ffffff0b;color:#eadfeb;font-family:Arial,sans-serif;font-size:28px;font-weight:300;line-height:1;box-shadow:inset 0 1px #ffffff16;transition:background .14s ease,border-color .14s ease,transform .14s ease}.hub-panel .panel-heading .panel-close:hover{background:#ffffff16;border-color:#ffffff38}.hub-panel .panel-heading .panel-close:active{transform:translateY(calc(-50% + 2px))}@media(max-width:370px){.hub-panel .panel-heading{padding:0 42px}.hub-panel .panel-heading .panel-close{width:36px;height:36px;font-size:25px}}@media(prefers-reduced-motion:reduce){.hub-panel .panel-heading .panel-close{transition:none}}.overlay>div.challenge-result{width:min(100%,300px);max-width:300px;padding:25px;border-radius:24px;background:linear-gradient(155deg,#432d45,#281d32);border-color:#d7ad8d66}.challenge-result h1{font-size:25px;line-height:1.2;margin:9px 0 0;letter-spacing:-.5px}.challenge-result-total{display:flex;flex-direction:column;align-items:center;margin:14px 0 12px}.challenge-result-total>strong{font-size:52px;line-height:1;font-weight:900;letter-spacing:-2px;color:#ffdc7e;font-variant-numeric:tabular-nums;margin-top:11px}.challenge-result-total>span:last-child{font-size:9px;letter-spacing:2px;color:#d6be96;margin-top:5px;font-weight:750}.challenge-result-badge{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:4px 10px;border-radius:20px;font-size:10px;font-weight:850;letter-spacing:.25px}.challenge-result-badge.complete{border:1px solid #65c98a88;background:#65c98a1c;color:#99e8b4}.challenge-result-badge.incomplete{border:1px solid #c6aec34a;background:#ffffff08;color:#cdbbcf}.challenge-result-goal{display:flex;align-items:center;justify-content:space-between;margin:0 0 13px;padding:10px 13px;border:1px solid #ffffff16;border-radius:11px;background:#ffffff06}.challenge-result-goal>span{font-size:11px;color:#cdbacf}.challenge-result-goal>strong{font-size:20px;line-height:1;color:#f7e6c7;font-variant-numeric:tabular-nums}.challenge-result-goal small{font-size:11px;color:#ad9bb1;font-weight:650}.challenge-result .result-metrics{margin-bottom:18px}@media(max-height:520px){.overlay:has(.challenge-result){overflow-y:auto;place-items:start center}.overlay>div.challenge-result{padding:18px 25px}.challenge-result-total{margin:10px 0}.challenge-result-total>strong{font-size:45px}.challenge-result-goal{padding:8px 12px}.challenge-result .result-metrics{margin-bottom:13px}}.game-hud.challenge-hud{grid-template-columns:70px minmax(0,1fr) 48px;gap:10px}.challenge-status{grid-column:2;grid-row:1;align-self:start;justify-self:center;display:grid;grid-template-columns:17.65% 82.35%;width:85%;min-height:62px;margin-top:7px;border-radius:15px;background:#24152cee;box-shadow:0 4px 14px #0006;overflow:hidden;pointer-events:none}.challenge-status-score{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:7px 4px;border-right:1px solid #ffffff1c}.challenge-status-score span{font-size:7px;font-weight:850;letter-spacing:1.4px;color:#d2b98b}.game-hud .challenge-status-score strong{max-width:none;margin-top:2px;font-size:28px;line-height:1;font-weight:950;color:#ffe080;text-shadow:0 2px 5px #0008;font-variant-numeric:tabular-nums}.challenge-status-task{display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0;padding:8px 12px}.challenge-status-task>div{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:8px;min-width:0}.game-hud .challenge-status-task strong{max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-size:13px;line-height:1.2;color:#fff1d4}.game-hud .challenge-status-task.complete strong{color:#8ee4ad}.challenge-status-task b{font-size:14px;line-height:1;color:#fff0bd;font-variant-numeric:tabular-nums;white-space:nowrap}.challenge-status-task b small{font-size:9px;color:#c6b3c8}.challenge-status-task progress{display:block;width:100%;height:9px;border:0;border-radius:9px;overflow:hidden;appearance:none;background:#ffffff2b;box-shadow:inset 0 1px 2px #0005}.challenge-status-task progress::-webkit-progress-bar{background:#ffffff2b}.challenge-status-task progress::-webkit-progress-value{background:linear-gradient(90deg,#57bd7c,#86dda5);border-radius:9px}.challenge-status-task progress::-moz-progress-bar{background:linear-gradient(90deg,#57bd7c,#86dda5);border-radius:9px}.challenge-hud .hud-controls{grid-column:3}.challenge-last-shot{top:82px}@media(max-width:430px){.game-hud.challenge-hud{grid-template-columns:62px minmax(0,1fr) 42px;gap:7px;padding:0 9px}.challenge-status{min-height:58px}.challenge-status-score{padding:6px 2px}.game-hud .challenge-status-score strong{font-size:24px}.challenge-status-task{padding:7px 8px}.game-hud .challenge-status-task strong{font-size:11px}.challenge-hud .hud-controls button{width:40px}}.overlay>div.looks-hub{width:min(100%,410px);padding:22px;background:linear-gradient(150deg,#493448,#292236);border-color:#dbb28d66}.looks-hub .panel-heading{margin-bottom:13px}.looks-hub .panel-heading h1{font-size:29px;color:#fff1cf}.looks-progress{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;margin-bottom:10px;border-radius:12px;background:#1c1423aa;border:1px solid #ffffff16}.looks-progress span{font-size:8px;font-weight:850;letter-spacing:1.5px;color:#ccb9ce}.looks-progress strong{font-size:20px;color:#ffe08a}.looks-progress small{font-size:11px;color:#bfaabd;margin-left:2px}.looks-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:13px;padding:4px;border-radius:14px;background:#1b1321}.looks-tabs button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 3px;border-radius:10px;background:transparent;color:#a996ad;font-size:9px;font-weight:750}.looks-tabs button b{font-size:21px;line-height:1}.looks-tabs button[aria-selected=true]{background:#6b4d64;color:#fff0d2;box-shadow:inset 0 1px #ffffff20}.looks-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.looks-grid>button{position:relative;display:flex;min-width:0;min-height:92px;padding:8px 4px 7px;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid #ffffff18;border-radius:14px;background:#ffffff08;color:#e9dce9;overflow:hidden}.looks-grid>button.selected{border-color:#ffcf6f;box-shadow:0 0 0 2px #ffcf6f55;background:#ffcf6f12}.looks-grid>button.locked{filter:saturate(.35);color:#948397}.looks-grid>button strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:9px;line-height:1.1;white-space:nowrap}.look-preview{height:55px;display:grid;place-items:center}.look-preview .ball-swatch{width:52px;height:52px}.look-preview .rim-swatch{width:57px;height:31px;border-width:7px}.sticker-swatch{display:grid;place-items:center;width:70px;height:48px;border-radius:8px;background:linear-gradient(150deg,#743837,#3d232f);overflow:hidden}.sticker-swatch img{width:64px;height:auto;object-fit:contain;transform:scale(var(--sticker-scale)) rotate(var(--sticker-rotate));mix-blend-mode:screen;opacity:.92;filter:drop-shadow(0 1px 0 #000);background:var(--sticker);border-radius:3px}.look-lock{position:absolute;right:5px;top:5px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#2b2130e8;color:#cbbdcc;font-size:13px}.looks-grid>button.locked .look-preview{opacity:.38}.look-detail{display:flex;align-items:center;justify-content:space-between;margin-top:11px;padding:9px 12px;border-radius:11px;background:#ffffff07;color:#eadbea;font-size:11px}.look-detail strong{color:#79d69b;font-size:9px;letter-spacing:1px;text-transform:uppercase}.look-detail.locked-detail{background:#ffcf6f0c;color:#f4d697}.look-detail.locked-detail strong{color:#f0b86c}.look-unlock{margin:8px 0 0!important;text-align:center;color:#aa97ad;font-size:9px;line-height:1.3!important}@media(max-width:370px){.overlay>div.looks-hub{padding:16px}.looks-grid{gap:6px}.looks-grid>button{min-height:82px}.look-preview{height:47px}.look-preview .ball-swatch{width:45px;height:45px}.sticker-swatch{width:60px;height:42px}.sticker-swatch img{width:55px}}@media(max-height:680px){.looks-hub .panel-heading{margin-bottom:8px}.looks-progress{padding:6px 12px;margin-bottom:7px}.looks-tabs{margin-bottom:8px}.looks-tabs button{padding:5px 3px}.looks-tabs button b{font-size:17px}.looks-grid>button{min-height:72px;padding:5px}.look-preview{height:40px}.look-preview .ball-swatch{width:39px;height:39px}.look-preview .rim-swatch{width:46px;height:25px}.sticker-swatch{width:57px;height:37px}.sticker-swatch img{width:52px}.look-detail{margin-top:7px;padding:6px 10px}.look-unlock{margin-top:5px!important}}.looks-panel{position:relative}.looks-tabs{margin-bottom:15px;padding:0 20px;border-radius:0;background:transparent;border-bottom:1px solid #ffffff18;gap:12px}.looks-tabs button{height:64px;padding:7px;border-radius:16px 16px 0 0;background:#ffffff08}.looks-tabs button[aria-selected=true]{background:#71536b;color:#fff0d2;box-shadow:inset 0 2px #fff2}.look-tab-icon{position:relative;display:block;width:42px;height:42px}.look-tab-icon.ball{border:3px solid currentColor;border-radius:50%;background:linear-gradient(90deg,transparent 46%,currentColor 47%,currentColor 53%,transparent 54%),linear-gradient(0deg,transparent 46%,currentColor 47%,currentColor 53%,transparent 54%)}.look-tab-icon.rim{height:24px;margin-top:9px;border:6px solid currentColor;border-radius:50%}.look-tab-icon.sticker{width:50px;height:34px;margin-top:4px;display:grid;place-items:center;border-radius:6px;background:#4a2e3e;overflow:hidden}.look-tab-icon.sticker img{width:48px;height:auto}.looks-grid{gap:10px}.looks-grid>button{min-height:106px;padding:9px 5px;gap:0}.look-preview{height:76px}.look-preview .ball-swatch{width:68px;height:68px}.look-preview .rim-swatch{width:73px;height:39px;border-width:9px}.sticker-swatch{width:88px;height:59px}.sticker-swatch img{width:81px}.looks-grid>button.locked .look-preview{opacity:.3;filter:grayscale(.45)}.look-lock{right:7px;top:7px;width:23px;height:23px;background:#df4c6e;color:#fff;box-shadow:0 2px #7b283e;font-size:14px}.look-modal-backdrop{position:absolute;z-index:6;inset:-4px -2px;display:grid;place-items:center;padding:18px;background:#17101dc7;border-radius:18px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.look-modal{position:relative;width:min(100%,278px);padding:25px 22px 22px;border:1px solid #ffffff2c;border-radius:23px;background:linear-gradient(155deg,#f5edf2,#d8cdd7);color:#382535;text-align:center;box-shadow:0 20px 50px #0008}.look-modal-close{position:absolute;top:-12px;right:-12px;display:grid;place-items:center;width:43px;height:43px;padding:0;border-radius:50%;background:#51404f;color:#fff;border:2px solid #e8dfe7;font-size:27px;line-height:1;box-shadow:0 4px #241924}.look-modal .look-preview.large{height:145px;margin:5px 0 8px}.look-modal .look-preview.large .ball-swatch{width:132px;height:132px}.look-modal .look-preview.large .rim-swatch{width:150px;height:78px;border-width:15px}.look-modal .look-preview.large .sticker-swatch{width:210px;height:125px}.look-modal .look-preview.large .sticker-swatch img{width:195px}.look-modal h2{margin:2px 0 9px;font-size:20px;color:#3b2837}.look-modal p{margin:0!important;padding:12px 10px;border-radius:12px;background:#fff9;color:#654b60;font-size:14px;font-weight:750;line-height:1.25!important}@media(max-width:370px){.looks-tabs{padding:0 10px}.looks-tabs button{height:56px}.look-tab-icon{width:36px;height:36px}.look-tab-icon.rim{height:21px}.looks-grid>button{min-height:91px}.look-preview{height:62px}.look-preview .ball-swatch{width:57px;height:57px}.look-preview .rim-swatch{width:62px;height:33px}.sticker-swatch{width:72px;height:49px}.sticker-swatch img{width:67px}}@media(max-height:680px){.looks-tabs{margin-bottom:9px}.looks-tabs button{height:48px}.look-tab-icon{width:32px;height:32px}.look-tab-icon.rim{height:19px;margin-top:6px;border-width:5px}.look-tab-icon.sticker{width:40px;height:28px;margin-top:2px}.look-tab-icon.sticker img{width:38px}.looks-grid>button{min-height:80px}.look-preview{height:55px}.look-preview .ball-swatch{width:50px;height:50px}.look-preview .rim-swatch{width:57px;height:29px;border-width:7px}.sticker-swatch{width:65px;height:43px}.sticker-swatch img{width:60px}}.overlay>div.looks-hub{height:min(78svh,680px);min-height:540px;display:flex;flex-direction:column}.looks-hub .panel-heading{flex:0 0 auto;margin-bottom:20px}.looks-hub .looks-panel{display:flex;flex:1;min-height:0;flex-direction:column}.looks-hub .looks-tabs{flex:0 0 auto;margin-bottom:20px}.looks-hub .looks-grid{flex:1;grid-template-rows:repeat(3,minmax(0,1fr));gap:12px}.looks-hub .looks-grid>button{height:100%;min-height:0}@media(max-height:720px){.overlay>div.looks-hub{height:calc(100svh - 28px);min-height:0;padding-top:18px;padding-bottom:18px}.looks-hub .panel-heading,.looks-hub .looks-tabs{margin-bottom:10px}.looks-hub .looks-grid{gap:8px}.looks-hub .look-preview{height:86px}.looks-hub .look-preview .ball-swatch{width:76px;height:76px}.looks-hub .look-preview .rim-swatch{width:82px;height:43px;border-width:9px}.looks-hub .sticker-swatch{width:108px;height:70px}.looks-hub .sticker-swatch img{width:100px}}@media(max-height:540px){.looks-hub .look-preview{height:60px}.looks-hub .look-preview .ball-swatch{width:52px;height:52px}.looks-hub .look-preview .rim-swatch{width:60px;height:31px;border-width:7px}.looks-hub .sticker-swatch{width:76px;height:48px}.looks-hub .sticker-swatch img{width:70px}}.ball-swatch.textured{background-color:#ffc51c;background-repeat:no-repeat;background-size:200% 100%;background-position:50% center}.rim-swatch.textured{border:0;background-size:cover;background-position:center;mask:radial-gradient(ellipse at center,transparent 0 48%,#000 52% 100%);-webkit-mask:radial-gradient(ellipse at center,transparent 0 48%,#000 52% 100%)}.looks-panel .rim-swatch.textured{position:relative;display:block;border:0;mask:none;-webkit-mask:none;background-size:0 0;background-repeat:no-repeat;overflow:visible;isolation:isolate;filter:drop-shadow(0 8px 4px #0c061950);transform:rotate(-8deg)}.looks-panel .rim-swatch.textured:before,.looks-panel .rim-swatch.textured:after{content:"";position:absolute;inset:0;border-radius:50%;background-image:inherit;background-size:cover;background-position:center;mask:radial-gradient(ellipse at center,transparent 0 54%,#000 57% 100%);-webkit-mask:radial-gradient(ellipse at center,transparent 0 54%,#000 57% 100%)}.looks-panel .rim-swatch.textured:before{transform:translateY(15%);filter:brightness(.48) saturate(1.2);z-index:0;box-shadow:inset 0 -3px 2px #170b2777}.looks-panel .rim-swatch.textured:after{z-index:1;box-shadow:inset 0 2px 2px #fff7dfdd,inset 0 -3px 3px #240a2766;filter:brightness(1.12);background-color:#ff8c30}.look-modal .rim-swatch.textured{filter:drop-shadow(0 14px 7px #28183666)}.looks-panel .ball-swatch.textured{position:relative;display:block;isolation:isolate;overflow:hidden;border:1px solid #25192d99;box-shadow:inset -7px -8px 12px #160c2b77,0 8px 9px -5px #080313bb,0 1px 1px #fff5}.looks-panel .ball-swatch.textured:after{content:"";position:absolute;inset:0;z-index:2;border-radius:50%;pointer-events:none;background:radial-gradient(ellipse at 28% 22%,#fff9dd75 0,transparent 35%),radial-gradient(circle at 36% 30%,transparent 36%,#130b2440 72%,#0d071880 100%);box-shadow:inset 1px 1px 2px #fff8dc75}.preview-seams{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none;overflow:hidden}.preview-seams path{stroke:#291925;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.looks-panel .ball-swatch.textured:before{content:"";position:absolute;z-index:3;left:19%;top:12%;width:25%;height:10%;border-radius:50%;background:#fff5c777;transform:rotate(-33deg);pointer-events:none}.looks-panel .ball-swatch.textured:after{background:radial-gradient(ellipse at 27% 24%,#fff9dd45 0,transparent 40%),radial-gradient(circle at 33% 27%,transparent 38%,#38112533 70%,#13092380 100%);box-shadow:inset 1px 1px 2px #fff8dc75}.look-modal .ball-swatch.textured{box-shadow:inset -13px -14px 20px #160c2b80,0 14px 12px -8px #21152b88,0 1px 2px #fff8dc88}.look-tab-image{display:block;width:44px;height:44px;object-fit:contain;opacity:.7}.looks-tabs button[aria-selected=true] .look-tab-image{opacity:1}@media(max-height:680px){.look-tab-image{width:32px;height:32px}}.basketball-game{--panel:#292145;--ink:#fff9ef;--muted:#c8c1df;--mint:#57e5a0;--yellow:#ffdb63;--orange:#ff9954;--violet:#b5a0ff;font-family:ui-rounded,SF Pro Rounded,Avenir Next,system-ui,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}.basketball-game button{font-family:inherit;touch-action:manipulation;transition:background .16s,box-shadow .16s,transform .16s}.basketball-game button:active:not(:disabled){transform:translateY(2px)}.overlay{background:#110d26bd;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);overflow-y:auto;padding:24px 18px}.hub-overlay{background:#110d26cc}.overlay>div,.overlay>div.hub-panel,.overlay>div.classic-result,.overlay>div.challenge-result,.overlay>div.settings-hub,.overlay>div.records-hub,.overlay>div.looks-hub{background:radial-gradient(ellipse at 0 0,#63449b35,transparent 65%),linear-gradient(155deg,#34294f,#231d39);border:1px solid #bba4ff4d;border-top:3px solid #bba4ff80;border-radius:28px;box-shadow:0 8px #120d27a6,0 22px 65px #08051280,inset 0 1px #ffffff0d;padding:26px}.overlay>div:not(.hub-panel){width:min(100%,330px);max-width:330px}.basketball-game .overlay h1{color:var(--ink);font-size:30px;line-height:1.12;font-weight:900;letter-spacing:-.8px;font-style:italic;text-wrap:balance}.hub-panel .panel-heading{min-height:44px;margin-bottom:24px}.hub-panel .panel-heading h1{font-size:32px;color:var(--ink);font-weight:900}.hub-panel .panel-heading .panel-close,.look-modal-close{background:#514268;border:1px solid #c4afff55;color:#fffaf3;box-shadow:0 3px #17112c;width:40px;height:40px;border-radius:13px;font-size:28px}.overlay p{color:var(--muted);font-size:14px;line-height:1.55}.overlay .eyebrow{font-size:11px;color:var(--yellow);font-weight:850;letter-spacing:1.5px}.basketball-game .primary-action,.basketball-game .pause-resume{min-height:52px;padding:14px 25px;background:linear-gradient(#69eaa7,#38ca83);border:1px solid #a0ffd07a;border-radius:16px;color:#102d29;font-size:17px;font-weight:900;letter-spacing:.1px;box-shadow:0 5px #16774f,inset 0 1px #d0ffe580}.basketball-game .primary-action:hover{background:linear-gradient(#86f4bc,#4edb95)}.basketball-game .pause-home{min-height:46px;padding:12px 22px;margin-top:16px;border:1px solid #b8a8dd55;background:#ffffff09;border-radius:15px;font-size:15px;font-weight:750;color:#e3dcf3;box-shadow:0 3px #160f2b66}.basketball-game .pause-home:hover{background:#ffffff16}.challenge-hub .challenge-list{gap:14px}.challenge-hub .challenge-card{padding:19px 16px;min-height:104px;border-radius:19px;border-left-width:4px;--accent:#ffb765;--tint:#ff9a5020;background:linear-gradient(115deg,var(--tint),#ffffff03);box-shadow:0 4px #160f2a70}.challenge-hub .challenge-color-1{--accent:#68e5c4;--tint:#40d9ae20}.challenge-hub .challenge-color-2{--accent:#bca5ff;--tint:#9c78ff25}.challenge-hub .challenge-card strong{font-size:24px;font-weight:900;letter-spacing:-.5px;color:var(--ink)}.challenge-objective{font-size:14px;line-height:1.45;color:#d5cce6;margin-top:8px}.challenge-hub .challenge-card[aria-pressed=true]{background:linear-gradient(115deg,var(--tint),#ffffff0d);box-shadow:0 0 0 1px var(--accent),0 5px #160f2a70}.challenge-hub .challenge-select{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#ffffff0c;font-size:20px}.challenge-hub .challenge-best{font-size:11px;color:#b7abc9;margin-top:8px}.challenge-hub .challenge-rule{font-size:12px;margin:18px 0;color:var(--muted)}.records-best{border-color:#ffd86677;border-radius:20px;background:linear-gradient(115deg,#ffb44625,#ffdc6608);padding:22px 18px}.records-best strong{font-size:60px;color:var(--yellow);font-weight:900}.records-best>div>span{color:#ffe7a3;font-size:11px}.records-trophy{color:var(--yellow)}.records-section-label{font-size:10px;color:var(--muted);letter-spacing:.8px}.record-tile{border-radius:17px;padding:18px 16px;--record-accent:#75efd0;--record-tint:#36d3ac20}.record-tile.gold{--record-accent:#ffdc63;--record-tint:#ffba3b20}.record-tile.purple{--record-accent:#c3aeff;--record-tint:#a17aff20}.record-tile strong{font-size:34px;font-weight:900}.record-tile span{font-size:12px;color:#d7cee6}.records-wins{border-radius:16px;font-size:13px;padding:14px 16px;background:#a17aff14;color:#e0d4ff}.records-wins strong{font-size:27px;color:#c9b5ff}.settings-groups{gap:24px}.settings-group h2{font-size:11px;letter-spacing:1.5px;color:#bcaade;margin-bottom:10px}.settings-group .setting-row{min-height:68px;padding:14px;border-color:#bfa8ff25;background:#ffffff06}.settings-group .setting-row strong{font-size:16px;font-weight:750;color:var(--ink)}.settings-group .setting-icon{color:#c5afff;background:#b999ff15;border-radius:11px}.setting-row input:checked~.setting-switch{background:#39d58d;border-color:#7cf3b9;box-shadow:0 0 12px #3ddd8a22}.looks-tabs{padding:0 10px;gap:10px;border-bottom:1px solid #b89bff40}.looks-tabs button{background:#ffffff08;color:#b8a6d4;border-radius:17px 17px 0 0}.looks-tabs button[aria-selected=true]{background:linear-gradient(#8963d8,#6844b3);color:#fff5dc;box-shadow:inset 0 2px #d0b0ff80}.looks-grid>button{border:1px solid #c0a6ff27;background:radial-gradient(ellipse at 50% 35%,#ffffff0e,#ffffff03);border-radius:19px}.looks-grid>button.selected{border-color:var(--yellow);background:#ffdc6314;box-shadow:0 0 0 2px #ffdc6340,inset 0 0 20px #ffdc6308}.look-lock{background:#fa658b;box-shadow:0 3px #923456;color:#fff}.look-modal{border-radius:25px;background:linear-gradient(150deg,#fffaf1,#e6e0fb);border-color:#fff9ef;box-shadow:0 6px #8e7baf,0 20px 50px #0008}.look-modal h2{font-size:24px;line-height:1.15;color:#32234c;font-weight:900;margin:4px 8px 16px;text-wrap:balance}.look-modal .look-preview.large{margin:0 0 20px}.look-modal p{font-size:14px;color:#584473;background:#ffffffa8;line-height:1.5!important;padding:14px 12px;margin:0;border-radius:13px;font-weight:650}.look-unlock-progress{display:block;margin-top:9px;color:#43305e;font-size:29px;line-height:1.15;font-weight:900;font-variant-numeric:tabular-nums}.look-unlock-progress small{font-size:20px;color:#9789a8;font-weight:750}.result-total>strong,.challenge-result-total>strong{font-size:68px;color:var(--yellow);font-weight:950;text-shadow:0 3px 0 #9e641c55}.result-total>span:not(.new-record-badge),.challenge-result-total>span:last-child{font-size:11px;color:#e1d1aa;letter-spacing:2px}.result-metrics{padding:16px 0;margin:18px 0 24px;border-color:#bd9eff2d}.result-metrics strong{font-size:25px;font-weight:850}.result-metrics span{font-size:12px;color:#cfc4e1}.result-total>.new-record-badge{font-size:12px;padding:7px 13px;color:#ffea9c;border-color:#ffdc6399;background:#ffcb501a}.challenge-result-badge{font-size:12px;padding:7px 12px;min-height:30px}.challenge-result-badge.complete{color:#8cf2ba;border-color:#57e5a077;background:#57e5a014}.challenge-result-goal{padding:13px 15px;border-radius:15px;background:#ffffff07}.challenge-result-goal>span{font-size:13px}.challenge-result-goal>strong{font-size:24px;color:var(--mint)}.home-nav-item{border-color:#d1b6ff60!important;background:linear-gradient(145deg,#695083e8,#342943ed)!important;box-shadow:0 5px #1b122c,inset 0 1px #f3e4ff40!important}.home-nav-item:hover{background:linear-gradient(145deg,#82609fe8,#493561ed)!important}.tap-start>span{color:#ffdc63;font-weight:950;text-shadow:0 3px 0 #49273d,0 0 22px #ffbb4333}.game-hud .hud-controls button{background:#352743e6;border:1px solid #c5a1ed55;color:#fff5e1;border-radius:13px;box-shadow:0 3px #1c132f88}.challenge-status{background:#28203deb;border:1px solid #b89bff35;border-radius:16px}.challenge-status-task progress{height:12px}.challenge-status-task progress::-webkit-progress-value{background:linear-gradient(90deg,#36cf86,#8bf2b4)}@media(max-width:370px){.overlay>div,.overlay>div.hub-panel,.overlay>div.classic-result,.overlay>div.challenge-result{padding:21px}.hub-panel .panel-heading h1{font-size:28px}.challenge-hub .challenge-card{padding:16px 13px;min-height:96px}.challenge-hub .challenge-card strong{font-size:21px}.challenge-objective{font-size:13px}.result-total>strong,.challenge-result-total>strong{font-size:60px}.record-tile strong{font-size:30px}}@media(max-height:640px){.overlay{padding:16px}.hub-panel .panel-heading{margin-bottom:16px}.challenge-hub .challenge-list{gap:10px}.challenge-hub .challenge-card{min-height:86px;padding:14px}.challenge-hub .challenge-card strong{font-size:21px}.settings-group .setting-row{min-height:57px}.settings-groups{gap:16px}.result-total>strong,.challenge-result-total>strong{font-size:56px}.result-metrics{margin:12px 0 17px;padding:12px 0}.overlay>div.looks-hub{padding:18px}}@media(max-height:500px){.overlay{place-items:start center}.overlay>div{margin:auto 0}.hub-panel .panel-heading h1,.basketball-game .overlay h1{font-size:26px}}@media(prefers-reduced-motion:reduce){.basketball-game button{transition:none}}.basketball-game .save-warning{position:absolute;z-index:1000;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translate(-50%);width:max-content;max-width:calc(100% - 32px);box-sizing:border-box;margin:0;padding:10px 14px;border:1px solid #ffd36f80;border-radius:12px;background:#34253df5;color:#ffe5a0;font-size:13px;line-height:1.4;text-align:center;pointer-events:none}
