/* The Lodge: an illustrated living environment, with lightweight CSS effects. */
:root{--green:#e7c68b;--violet:#6bc9c3;--bg:#0b1516;--line:#665b4280;--blue:#7ebcc5}body{background:#0b1516;color:#f3efdf}body[data-screen=lobby]:before{content:'';position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,#071011bb,#0b1516f2 85%),url('art/lodge-v17.webp') center/cover no-repeat}header{background:linear-gradient(180deg,#101f20f5,#0a1516ed);border-bottom:1px solid #9a805348;box-shadow:0 8px 30px #0003}.brand{color:#f1dfb9;letter-spacing:1px}.brand b{color:#c2ac7c}.mark{background:linear-gradient(135deg,#f1d7a3,#a97c3e);color:#26352d;box-shadow:0 2px 12px #dfb76a22}.header-actions button,.header-actions .header-level{border-color:#b89b5a66;background:#22332e;color:#eddaaf}.header-actions .shop-open{background:#97753e1a;color:#f3d294}.lobby-heading h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:34px;color:#f1e2bd;line-height:1.2}.mini-label{color:#bda46d;font-size:10px;letter-spacing:3px}#lobby{padding-top:28px;max-width:1280px}.lobby-heading{margin-bottom:24px}.lobby-grid{grid-template-columns:minmax(0,1.45fr) minmax(330px,1fr);gap:26px}.hero-card.lodge-hero{background:linear-gradient(180deg,#07131270 0%,transparent 40%,#07131250 78%,#071312d9 100%),url('art/lodge-v17.webp') center/cover no-repeat;border:1px solid #c0a57288;border-radius:22px;min-height:590px;box-shadow:0 22px 65px #0006,inset 0 0 0 5px #1c261c55}.lodge-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(115deg,#071413aa,transparent 60%);z-index:0}.lodge-hero:after{content:'';position:absolute;inset:8px;border:1px solid #d7ba792f;border-radius:15px;pointer-events:none}.lodge-hero .hero-copy{position:relative;z-index:2;padding:34px 30px;max-width:100%;width:auto}.lodge-hero .hero-copy h2{font:400 clamp(29px,3.1vw,45px)/1.16 Georgia,'Times New Roman',serif;letter-spacing:-.6px;margin:24px 0 16px;text-transform:none;text-shadow:0 3px 16px #000c;color:#f9edce}.lodge-hero .hero-copy h2 em{font-style:italic;color:#e9c080}.lodge-hero .hero-copy p{font-size:13px;line-height:1.8;color:#efe1c4;text-shadow:0 2px 10px #000}.season-tag{font-size:9px;letter-spacing:2px;color:#e8d2a6;background:#0b1b18a6;border:1px solid #bd9c6555;padding:9px 12px;border-radius:5px}.season-tag i{background:#83c9ab;box-shadow:0 0 10px #93ddbb}.hero-caption{z-index:2;bottom:23px;left:30px;right:30px;color:#ead6af;font-size:8px;letter-spacing:1.4px}.lobby-play{padding:24px;background:linear-gradient(150deg,#21352ee8,#101d1ced);border:1px solid #b3925c55;border-radius:22px;box-shadow:inset 0 1px 0 #f6e0b218,0 12px 38px #0003}.section-title h3{font-family:Georgia,'Times New Roman',serif;font-size:20px;font-weight:400;color:#e9dfc8}.section-title>span{font-size:8px;color:#bfae88}.mode-list{gap:12px}.mode-card{min-height:91px;padding:16px;background:linear-gradient(110deg,#2d4036cc,#1a2c29);border:1px solid #9f895157;border-radius:12px;box-shadow:inset 0 1px 0 #ffffff0a;transition:border-color .18s,transform .18s,background .18s}.mode-card:hover{transform:translateY(-2px);border-color:#ddbc7a}.mode-card.selected{border-color:#dec08a;background:linear-gradient(110deg,#6b583d55,#283e32);box-shadow:inset 3px 0 0 #e4c082,0 0 25px #d9b85c08}.mode-card b{font-size:15px;color:#f3ead5}.mode-card small{font-size:11px;color:#bfc8b7;line-height:1.5}.mode-symbol{background:linear-gradient(145deg,#b9975844,#0c211d);color:#ebce92;border:1px solid #b79a5466;border-radius:12px;width:48px;height:52px}.mode-symbol svg,.bottom-nav svg{width:25px;height:25px;display:block}.mode-card i{color:#d2b575}.play-big,.primary,.controls>.primary{background:linear-gradient(160deg,#f3dfb1 0%,#d4ab67 52%,#b78a46 100%);color:#24291f;border:1px solid #f1d99c;border-radius:12px;box-shadow:inset 0 2px 0 #fff6,inset 0 -3px 0 #7d5c3477,0 7px 22px #0004;text-shadow:0 1px 0 #f7e2b580;font-weight:800;transition:filter .18s,transform .18s}.play-big{min-height:76px;letter-spacing:1.5px;font-size:18px}.play-big:hover,.primary:hover{filter:brightness(1.08)}button:active:not(:disabled){transform:translateY(2px)}button:disabled{cursor:default;filter:saturate(.5);opacity:.58}.play-note{font-size:11px;color:#b6c6b6;line-height:1.5;margin-bottom:22px}.loadout-card{background:linear-gradient(125deg,#0e221f,#28382b);border:1px solid #ac915750;border-radius:13px}.loadout-card b{font-size:12px;color:#e5d9bf}.loadout-card small{font-size:9px;color:#b6a476}.loadout-card button{font-size:11px;color:#e9c485}.lobby-xp>b,.lobby-xp>span{font-size:9px;color:#dac9a4}.lobby-xp>div,.xp-track{background:#091b18}.lobby-xp i,.xp-track i{background:linear-gradient(90deg,#b08e52,#efce8b)}.journey-entry>button{background:linear-gradient(110deg,#294939,#1b302b);border-color:#ac945e6b;color:#f5e6c8}.journey-entry small{font-size:12px;color:#bacdb8}.journey-entry>button>span,.journey-entry i{color:#e6c17b}.progress-card,.collection-card{background:linear-gradient(140deg,#1d342c,#142420);border-color:#9c86534f;border-radius:18px}.stat-icon{color:#e5c48e;background:#d8b87718}.progress-card b{color:#e9d29e}.progress-card small{font-size:11px;color:#bbc7b6}.collection-card b{color:#e6d2aa}.collection-card>span{color:#b5c4af}.collection-card i{color:#d6b478}.bottom-nav{background:linear-gradient(180deg,#25382ef5,#101e1bf5);border-color:#ac915b88;box-shadow:0 10px 40px #0009,inset 0 1px 0 #e0d2ad11;backdrop-filter:blur(12px);padding:7px;max-width:540px}.bottom-nav button{font-size:11px;color:#b8bda8;border-radius:12px;min-height:56px;gap:5px}.bottom-nav button.active{background:linear-gradient(145deg,#6b5e3d77,#40503955);color:#f3d29c}.bottom-nav button>span{color:inherit}.avatar{border-color:#c5a35f88;background:linear-gradient(150deg,#71623e,#1b3a31)}dialog{background:linear-gradient(145deg,#22352e,#0f211f);color:#e8e3d1;border:1px solid #b2986488;box-shadow:0 24px 100px #000b,inset 0 0 0 5px #e8c47608}dialog h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.4px;font-weight:400;color:#f3dfb7}dialog p{color:#c4cbb9}dialog::backdrop{background:#030d0bd9}.eyebrow{color:#d4b478}.secondary{background:linear-gradient(145deg,#324838,#1a302a);color:#e4d5ad;border:1px solid #b49c5e77;box-shadow:inset 0 1px 0 #ffffff0c;min-height:48px}select,input,textarea{accent-color:#d6b678}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #94d8c4;outline-offset:3px}.menu-buttons button,.mobile-actions button,.camera-controls button{background:#20392f;border-color:#a88e5577;color:#e5d3ac}.camera-controls button.selected{color:#f9dfaa;background:#665a3c99;border-color:#d1b47c}.scoreboard{background:linear-gradient(180deg,#24372ef7,#132a24f5);border-color:#d5b46a55}.controls{background:linear-gradient(180deg,#243a30,#122a24);border-color:#b6985c66}.track{background:#0a1d17;border-color:#bca56b66}.track i{background:#e5c98b}.toast{background:#10271fed;border-color:#bea16b77;color:#ede3c9}.stage-label{color:#e4d3ab}.round{background:#10231edc;border-color:#a0895866}.round #turnClock{color:#f1d19a}.round-result{pointer-events:auto;background:linear-gradient(145deg,#314a3aef,#152a22f5);border-color:#c7a46688}.round-result>span{font-size:10px;color:#e5cfa5}.round-result>small{font-size:12px;color:#d9dfcd}.round-result button{display:block;margin:16px auto 0;font-size:11px}.round-result.hidden{display:none!important}.match-point{position:absolute;top:45px;left:50%;transform:translateX(-50%);z-index:2;padding:9px 14px;border:1px solid #e3b86599;background:#312513e8;color:#f8d79b;border-radius:8px;max-width:80%;font-size:10px;letter-spacing:1px;text-align:center;pointer-events:none}.replay-banner{position:absolute;top:16px;left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;z-index:5;background:#10231ff0;padding:12px 15px;border:1px solid #cdb17a88;border-radius:10px;color:#ecd5a6;font-size:10px;letter-spacing:1px}.replay-banner button{min-height:44px;padding:8px 15px;background:#37503d;color:#f8e2b2;border:1px solid #b49a6488;border-radius:8px}.replay-banner.hidden,.match-point.hidden{display:none}.team-weekly{margin:25px 0;padding:20px;border:1px solid #a88e5955;border-radius:16px;background:#1e382d66}.team-weekly p,.team-weekly>small{font-size:11px;line-height:1.7;color:#c0ccb7}.team-goals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.team-goals article{display:flex;flex-direction:column;gap:12px;padding:15px;background:#142b24;border:1px solid #9e8b5144;border-radius:12px;min-width:0}.team-goals article>span{font-size:30px;color:#dfc28a}.team-goals b{font-size:13px}.team-goals small{font-size:10px;line-height:1.5;color:#bcc9b3}.team-badges{display:flex;gap:8px;margin-bottom:15px;flex-wrap:wrap}.team-badges button{flex:1;min-width:115px;display:flex;flex-direction:column;align-items:center;gap:9px;padding:15px 8px;border:1px solid #a18b5755;border-radius:12px;background:#233a2d;color:#e5d2aa;font-size:11px}.team-badges button>span{font-size:27px}.team-badges button small{font-size:8px;color:#c2cbb5}.team-badges button.selected{border-color:#f1c982;background:#67563c44}.lodge-light{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse at 25% 45%,#ffc36b12,transparent 35%),radial-gradient(ellipse at 80% 15%,#6de4d00a,transparent 35%);animation:lantern-breathe 5s ease-in-out infinite alternate;pointer-events:none}.lodge-embers{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.lodge-embers i{position:absolute;width:3px;height:3px;border-radius:50%;background:#f8cf7f;box-shadow:0 0 8px #ffc15b88;bottom:5%;left:calc(var(--n)*8%);opacity:0;animation:lodge-drift 13s linear infinite;animation-delay:calc(var(--n)*-1.4s)}
.lodge-embers i:nth-child(1){--n:1;}.lodge-embers i:nth-child(2){--n:2;}.lodge-embers i:nth-child(3){--n:3;}.lodge-embers i:nth-child(4){--n:4;}.lodge-embers i:nth-child(5){--n:5;}.lodge-embers i:nth-child(6){--n:6;}.lodge-embers i:nth-child(7){--n:7;}.lodge-embers i:nth-child(8){--n:8;}.lodge-embers i:nth-child(9){--n:9;}.lodge-embers i:nth-child(10){--n:10;}.lodge-embers i:nth-child(11){--n:11;}.lodge-embers i:nth-child(12){--n:12;}
@keyframes lodge-drift{0%{transform:translate3d(0,0,0);opacity:0}15%{opacity:.6}80%{opacity:.25}100%{transform:translate3d(25px,-380px,0);opacity:0}}@keyframes lantern-breathe{from{opacity:.45}to{opacity:1}}.lodge-paused .lodge-embers i,.lodge-paused .lodge-light{animation-play-state:paused}.lodge-paused .lodge-embers{display:none}@media(max-width:800px){.lobby-grid{grid-template-columns:1fr}.hero-card.lodge-hero{min-height:480px;background-position:center 62%}.lobby-play{padding:22px}.lobby-heading h1{font-size:29px}.lodge-hero .hero-copy h2{font-size:38px}.hero-caption{font-size:8px}.section-title h3{font-size:22px}.mode-card{min-height:87px}.lobby-lower{grid-template-columns:1fr 1.2fr}.bottom-nav{max-width:500px}}@media(max-width:480px){#lobby{padding:20px 16px 112px}.lobby-heading{margin-bottom:19px}.lobby-heading h1{font-size:25px;max-width:270px}.mini-label{font-size:9px}.lobby-xp{min-width:0;gap:7px}.lobby-xp>b,.lobby-xp>span{font-size:8px}.lobby-xp>div{width:68px}.hero-card.lodge-hero{min-height:420px;border-radius:18px;background-position:50% 62%}.lodge-hero .hero-copy{padding:23px}.lodge-hero .hero-copy h2{font-size:30px;margin:22px 0 12px}.lodge-hero .hero-copy p{font-size:11px;line-height:1.7}.season-tag{font-size:7px;letter-spacing:1.4px;padding:7px 9px}.hero-caption{left:23px;right:23px;font-size:6px;gap:10px;bottom:20px}.lobby-play{padding:18px;border-radius:18px}.section-title h3{font-size:21px}.section-title>span{font-size:7px}.mode-card{padding:14px;min-height:86px;gap:13px}.mode-card b{font-size:14px}.mode-card small{font-size:10px}.mode-symbol{width:43px;height:48px}.play-big{min-height:70px;font-size:17px}.loadout-card small{font-size:8px}.loadout-card b{font-size:11px;line-height:1.6}.loadout-card button{min-height:44px}.bottom-nav{width:calc(100% - 24px);bottom:calc(10px + env(safe-area-inset-bottom));padding:5px;max-width:420px}.bottom-nav button{min-height:56px;font-size:9px}.bottom-nav svg{width:23px;height:23px}.progress-card{padding:18px}.progress-card small{font-size:10px}.collection-card b{font-size:26px}.collection-card>span{font-size:7px}.collection-card i{font-size:10px}.journey-entry small{font-size:11px}.team-goals{grid-template-columns:1fr}.team-weekly{padding:15px}.team-goals article{display:grid;grid-template-columns:34px 1fr}.team-goals article>span{grid-row:1/4}.team-goals .xp-track,.team-goals article>small{grid-column:2}.match-point{top:40px;font-size:8px;max-width:85%;padding:8px 10px}.round-result{max-width:calc(100% - 40px);box-sizing:border-box}.controls .turn small{font-size:10px}.mobile-actions button{font-size:10px;min-height:46px}.camera-controls button{font-size:10px;min-height:40px}}@media(prefers-reduced-motion:reduce){.lodge-embers{display:none}.lodge-light{animation:none}.mode-card,.primary,.play-big{transition:none}.mode-card:hover,button:active:not(:disabled){transform:none}}
@media(max-width:480px){header{padding-left:12px;padding-right:12px}.brand{font-size:15px;gap:5px}.brand .mark{width:28px;height:30px}.header-actions{gap:5px}.header-actions #sound,.header-actions #help{display:none}.header-actions .header-level{min-width:40px;padding:0 6px}.header-actions .shop-open{padding:0 10px}.header-actions #mobileMenu{width:44px;min-width:44px}body[data-screen=game] .brand{font-size:13px}.header-actions .back-lobby{min-width:34px;width:34px}}
/* v18: richer surfaces and a visible graphics recovery path. */
.compatible-canvas{position:absolute!important;inset:0;width:100%;height:100%;z-index:1;pointer-events:none!important}.stage-label,.camera-controls,.toast,.match-point{z-index:3}.round-result{z-index:4}.replay-banner{z-index:5}#graphicsStatus{font-size:12px;color:#e3c88e;line-height:1.6}.lodge-hero{box-shadow:0 24px 80px #0009,0 0 65px #82c8a511,inset 0 0 0 5px #dfb96911!important}.lodge-hero:after{border-color:#e5c48b55}.lobby-play{box-shadow:0 18px 55px #0006,inset 0 1px 0 #f8d78c44,inset 0 0 30px #bb9a4808}.lodge-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}.lodge-shortcuts button{display:grid;grid-template-columns:44px 1fr;align-items:center;column-gap:12px;padding:20px 18px;text-align:left;background:linear-gradient(135deg,#3a4e37,#182f29 70%);border:1px solid #b79c6177;border-radius:15px;color:#f0dfb8;box-shadow:inset 0 1px 0 #efdcaa29,0 5px 20px #0003;transition:border-color .2s,transform .2s}.lodge-shortcuts button:hover{border-color:#efd59c;transform:translateY(-3px)}.lodge-shortcuts span{font-size:29px;color:#ebc27e;grid-row:1/3;border:1px solid #c1a36555;border-radius:12px;background:#102c2433;text-align:center;line-height:46px}.lodge-shortcuts b{font:400 19px Georgia,serif}.lodge-shortcuts small{font-size:10px;line-height:1.6;color:#b9c9b1}.owner-max-note{padding:15px;border:1px solid #dfb76588;background:linear-gradient(130deg,#9d783d33,#29473344);border-radius:12px;font-size:11px!important;line-height:1.8;color:#efdbb3!important}.owner-max #headerLevel{background:linear-gradient(140deg,#ba9656,#70552f);color:#fff4d5;border-color:#f6d396}.owner-max #profileOpen{box-shadow:0 0 0 3px #c4a26833,0 0 25px #eacb7744}.owner-max .lobby-heading h1{color:#ffe4ac}.mode-card{box-shadow:inset 0 1px 0 #eed7a51c,inset 0 -2px 0 #0002}.primary,.play-big{box-shadow:inset 0 2px 0 #fff9,inset 0 -4px 0 #78542b88,0 6px 0 #543b22,0 11px 30px #0005}.primary:active,.play-big:active{box-shadow:inset 0 1px 0 #fff5,inset 0 -2px 0 #78542b88,0 3px 0 #543b22,0 5px 15px #0005}@media(max-width:600px){.lodge-shortcuts{gap:9px;margin:18px 0}.lodge-shortcuts button{grid-template-columns:1fr;gap:8px;text-align:center;padding:14px 7px;border-radius:12px}.lodge-shortcuts span{grid-row:auto;width:38px;line-height:38px;font-size:25px;margin:auto}.lodge-shortcuts b{font-size:15px}.lodge-shortcuts small{font-size:8px}}@media(prefers-reduced-motion:reduce){.lodge-shortcuts button{transition:none}.lodge-shortcuts button:hover{transform:none}}
/* v19: the Lodge showroom and photographic materials. */
#shop{max-width:1000px;background:radial-gradient(ellipse at top,#38544788,transparent 45%),linear-gradient(145deg,#20372d,#0d211d);border-color:#d5b47688}#shop>h2{font:400 38px/1.1 Georgia,serif;margin-bottom:25px;color:#f3dfb7}.showroom-feature{display:grid;grid-template-columns:1.2fr 1fr;align-items:stretch;border:1px solid #c6a77466;border-radius:18px;background:linear-gradient(130deg,#234337,#112c24);overflow:hidden;margin:23px 0 25px;box-shadow:0 14px 40px #0004,inset 0 1px 0 #fff1}.showroom-stage{position:relative;min-height:255px;overflow:hidden;background:#0f2b24;isolation:isolate}.showroom-stage canvas{display:block;width:100%;height:255px}.showroom-stage>span{position:absolute;bottom:15px;left:0;right:0;text-align:center;pointer-events:none;color:#c9b68c;font-size:8px;letter-spacing:2px}.showroom-stage:after{content:'';position:absolute;inset:-70% -40%;z-index:2;pointer-events:none;background:linear-gradient(110deg,transparent 43%,#fff1 49%,transparent 55%);transform:translateX(-35%) rotate(10deg);animation:showroom-light 12s ease-in-out infinite}.showroom-copy{padding:30px 25px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;border-left:1px solid #b89b5d33}.showroom-copy>small{font-size:8px;color:#bba478;letter-spacing:1.7px;line-height:1.8}.showroom-copy h3{font:400 33px Georgia,serif;color:#f1d59f;margin:16px 0 8px}.showroom-copy p{font-size:12px;line-height:1.7;color:#c5d0bc;margin:0 0 20px}.showroom-copy button{font-size:10px;padding:13px 17px;width:100%}.shop-tabs{padding:5px;border-radius:13px;background:#0b241e;border:1px solid #aa8a5455;gap:7px}.shop-tabs button{border:0;border-radius:9px;color:#b8c7b3;background:transparent;min-height:48px}.shop-tabs button.active{background:linear-gradient(145deg,#8c7046,#4b5134);color:#ffe4ad;box-shadow:inset 0 1px 0 #f0d39333}.shop-balance{background:linear-gradient(120deg,#6a533333,#233c2f);border-color:#bb9a5a66;color:#e7c98d}.shop-toolbar select{background:#142e25;border-color:#c0a36a55;color:#d9dfca;min-height:46px}.shop-grid{gap:18px}.shop-item{background:linear-gradient(150deg,#2c4838,#142f25);border:1px solid #9f895c66;border-radius:16px;box-shadow:inset 0 1px 0 #e9cb8d14,0 7px 22px #0003;padding:16px;transition:transform .2s,border-color .2s}.shop-item:hover{transform:translateY(-3px);border-color:#d9bf82}.shop-item.equipped{border-color:#ebcf90;box-shadow:0 0 0 1px #e7c98722,0 7px 28px #0004}.shop-item .inspect-preview{position:relative;padding-top:12px;padding-bottom:14px;isolation:isolate;overflow:hidden;border-radius:11px;background:radial-gradient(ellipse at 50% 30%,#d4f2d318,transparent 68%)}.shop-item .inspect-preview:before{content:'';position:absolute;z-index:-1;bottom:21px;left:15%;right:15%;height:22px;border:1px solid #b99a6655;border-radius:50%;background:linear-gradient(#35533c,#132d23);box-shadow:0 8px 12px #0005}.shop-item .shop-preview{height:175px;width:100%;object-fit:contain;filter:drop-shadow(0 8px 7px #0006);position:relative;z-index:1}.shop-item.table-item .shop-preview{height:150px}.shop-item .inspect-preview>span{font-size:7px;z-index:2;background:#11271fcf;color:#ddc18b;bottom:1px;padding:6px 8px}.shop-item>b{color:#f1e2bf;font:400 20px Georgia,serif}.shop-item>small{color:#c2cdb8!important;line-height:1.6}.item-label{font-size:8px;color:#d6ba85}.card-stats>span,.mastery-mini{background:#0d251e;color:#abc1aa}.card-stats b{color:#e5d6b0}.mastery-mini{color:#e1cd9f}.mastery-mini i{background:#d7bb80}.shop-item>button:last-child{border:1px solid #bb9b5e66;background:linear-gradient(145deg,#b59860,#77613e);color:#fff0d0;min-height:46px;border-radius:10px}.shop-item.equipped>button:disabled{background:#54744944;color:#e0d3a7}.inspect-stage{background:radial-gradient(ellipse,#36583e,#10251e);border:1px solid #baa16b55}.inspect-material{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.inspect-stage>span{z-index:2}.stat-row>div{background:#0a2018}.stat-row i{background:linear-gradient(90deg,#759c80,#e1c38c)}.balanced-badge{background:#78955b18;border-color:#b6a06b55;color:#dbd9af}.table-growth b{color:#e4c68c}#shopMessage{color:#dfcda5;line-height:1.7;font-size:12px}.inspect-material.hidden{display:none}@keyframes showroom-light{0%,30%{transform:translateX(-55%) rotate(10deg)}70%,100%{transform:translateX(55%) rotate(10deg)}}body[data-quality=low] .showroom-stage:after{animation:none;opacity:.3}@media(max-width:600px){#shop>h2{font-size:32px}.showroom-feature{grid-template-columns:1fr;margin:20px 0}.showroom-stage{min-height:235px}.showroom-stage canvas{height:235px}.showroom-copy{border-left:0;border-top:1px solid #b89b5d33;padding:20px}.showroom-copy h3{font-size:29px;margin-top:10px}.showroom-copy p{margin-bottom:15px}.showroom-copy button{min-height:46px}.shop-grid{gap:12px}.shop-item{padding:12px}.shop-item .shop-preview{height:155px}.shop-item.table-item .shop-preview{height:125px}.shop-item>b{font-size:17px}.item-label{font-size:7px}.card-stats b{font-size:10px}.mastery-mini{font-size:8px}.shop-item>small{font-size:10px!important}.shop-item .inspect-preview>span{font-size:6px}.shop-item>button:last-child{font-size:10px}}@media(prefers-reduced-motion:reduce){.showroom-stage:after{animation:none;opacity:.2}.shop-item{transition:none}.shop-item:hover{transform:none}}
/* The collector's lodge: enamel, engraved brass and warm light. */
.lobby-collection{margin:20px 0;padding:22px;border:1px solid #bfa47750;border-radius:22px;background:radial-gradient(ellipse at 50% 0,#c6a56818,transparent 75%),linear-gradient(140deg,#233d32,#101f1b);box-shadow:inset 0 1px #fff1bb13,0 16px 35px #0002}
.lobby-collection .section-title span{font-size:10px;letter-spacing:1px;color:#dbbe86}.lobby-display{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lobby-display article{position:relative;min-width:0;border:1px solid #bda06d30;border-radius:15px;background:radial-gradient(ellipse at 50% 90%,#9a80542b,transparent 65%),#091b17;overflow:hidden;box-shadow:inset 0 -8px 30px #0003}.lobby-display img{display:block;width:100%;height:180px;object-fit:contain;filter:drop-shadow(0 10px 8px #0008)}.lobby-display article:first-child img{padding:15px}.lobby-display span{display:block;padding:10px 8px;border-top:1px solid #d4b78026;text-align:center;color:#f0dfb7;font-size:12px}.lobby-collection p{margin:14px 0 0;font-size:12px;color:#b9c7bb;text-align:center}
.evolution-detail{color:#d8c18f!important;min-height:30px}.shop-item{background:radial-gradient(ellipse at 50% 22%,#66856a20,transparent 65%),linear-gradient(145deg,#21392e,#101f19)!important;box-shadow:inset 0 1px #e0c99c1c,0 10px 25px #0003}.shop-item .inspect-preview{background:radial-gradient(ellipse at 50% 80%,#d1b16d24,transparent 65%),linear-gradient(145deg,#284337,#0a1d17);border-bottom:1px solid #cfb47940}.shop-item.equipped{border-color:#d5ba80;box-shadow:inset 0 1px #ffe6a540,0 8px 30px #d4b46b12}.shop-item .shop-preview{filter:drop-shadow(0 9px 7px #0009)}.preview-levels{display:flex;flex-wrap:wrap;gap:7px}.preview-levels button{flex:1 0 18%;min-height:42px}.avatar-option img{filter:drop-shadow(0 5px 3px #0008);transition:transform .2s}.avatar-option:not(.locked):hover img{transform:translateY(-3px) scale(1.05)}
.tactics-panel{padding:12px 20px;background:linear-gradient(105deg,#20382c,#14271f);border-top:1px solid #c2a26b88;border-bottom:1px solid #c2a26b33}.tactics-panel>div{display:flex;justify-content:space-between;gap:12px;align-items:center}.tactics-panel b{color:#f1d7a0;font-size:13px}.tactics-panel span{font-size:11px;color:#e0e7d7}.tactics-panel small{display:inline-block;margin-top:6px;font-size:11px;color:#90cebf}.tactics-panel p{font-size:11px;line-height:1.4;margin:4px 0 0;color:#a9b9ad}.team-banner{padding:24px;border:1px solid #bba16d66;border-radius:18px;background:linear-gradient(100deg,#102019ee,#213e2bb0),url('art/lodge-v17.webp') center 15%/cover;box-shadow:inset 0 1px #ffe4a52b,0 15px 32px #0003}.team-emblem{display:grid;place-items:center;flex-shrink:0;background:radial-gradient(#a1804150,#0f251b);border-radius:50%;border:1px solid #c6a56888;box-shadow:0 5px 15px #0005,inset 0 0 15px #dec18015}.team-emblem img{width:55px;height:55px;filter:drop-shadow(0 3px 3px #0009)}.team-goals>article{background:radial-gradient(ellipse at 50% 0,#a68d5130,transparent 75%),#12291e!important;border-color:#a38d574a}.team-goals img,.team-badges img{width:52px;height:52px;display:block;margin:auto;filter:drop-shadow(0 4px 3px #0008)}.team-card{background:linear-gradient(125deg,#254131,#10261c)!important;border-color:#b99b6150!important;box-shadow:inset 0 1px #eedca51a,0 8px 20px #0003}.team-roster li{display:flex;gap:10px;align-items:center;padding:12px 8px;border-bottom:1px solid #bba16d22}.team-roster .roster-monogram{display:grid;place-items:center;width:34px;height:38px;flex:0 0 34px;border:1px solid #b99a60;border-radius:12px 12px 16px 16px;background:linear-gradient(135deg,#52654b,#1b3224);color:#f1d399;font-family:Georgia,serif;font-size:19px;box-shadow:inset 0 1px #f6e5b042}.team-roster li>span:nth-child(2){flex:1}.leader-row{background:linear-gradient(110deg,#203a2b,#152b20);border-bottom-color:#c3a56933}.leader-row:nth-child(-n+3){background:linear-gradient(110deg,#80683a35,#183325);border:1px solid #bca06955;border-radius:12px;margin-bottom:8px}.leader-row.is-self{box-shadow:inset 3px 0 #e5c580;background:linear-gradient(110deg,#685c323f,#193b2c)}
@media(max-width:600px){.lobby-collection{padding:14px;margin:14px 0}.lobby-display img{height:145px}.lobby-collection .section-title{align-items:flex-start;gap:8px}.lobby-collection .section-title span{max-width:50%;text-align:right;font-size:9px}.tactics-panel{padding:10px 15px}.tactics-panel p{font-size:10px}.team-banner{padding:16px}.team-roster strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){.avatar-option img{transition:none}}


.showroom-navigation{display:flex;align-items:center;justify-content:space-between;width:100%;gap:16px;margin:0 0 16px}.showroom-navigation button{width:48px;min-width:48px;min-height:48px;padding:0;border:1px solid #c5a56a88;border-radius:50%;background:linear-gradient(145deg,#516144,#162e24);color:#f6dfae;font-size:22px}.showroom-navigation span{font-size:11px;letter-spacing:3px;color:#d8c39b;font-variant-numeric:tabular-nums}#shopFeatureStatus{color:#dfc184;font-size:9px;letter-spacing:1.2px;margin:0 0 15px}.showroom-copy #shopFeatureInspect{margin-top:4px}.showroom-stage{box-shadow:inset 0 0 60px #0008}.showroom-copy{background:linear-gradient(115deg,#b5934510,transparent 50%)}.showroom-navigation button:focus-visible{outline:2px solid #ffe0a0;outline-offset:3px}

.preview-levels{flex-wrap:wrap}.preview-levels button{min-width:44px}.avatar-grid button{background:radial-gradient(ellipse at 35% 20%,#bfa36b33,#10251e 75%);border-color:#bd9a5c66;box-shadow:inset 0 1px 0 #ffe6a344,0 7px 18px #0004}.avatar-grid img{filter:drop-shadow(0 5px 4px #0009);transition:transform .3s,filter .3s}.avatar-grid button:hover img{transform:translateY(-3px) scale(1.06);filter:drop-shadow(0 7px 5px #0009) brightness(1.12)}.shop-item .shop-preview{transition:transform .4s,filter .4s}.shop-item:hover .shop-preview{transform:translateY(-4px) scale(1.045);filter:drop-shadow(0 12px 8px #0008) brightness(1.06)}@media(prefers-reduced-motion:reduce){.avatar-grid img,.shop-item .shop-preview{transition:none}.avatar-grid button:hover img,.shop-item:hover .shop-preview{transform:none}}

/* v22: focus on the table, readable choices and a rewarding match finish. */
body[data-screen=game] .intro{display:none}body[data-screen=game] .layout{margin-top:20px}.tactics{padding:14px 20px;border-top:1px solid #bba36c44;background:linear-gradient(120deg,#20382d,#10271f);display:flex;flex-wrap:wrap;gap:10px;align-items:center}.shot-options{display:flex;gap:6px;flex:1}.shot-options button{min-height:44px;flex:1;background:#10261e;border:1px solid #bfa36955;border-radius:9px;color:#d9d4b5;padding:9px 12px;white-space:nowrap}.shot-options button[aria-pressed=true]{color:#fff0c7;background:linear-gradient(#8c7047,#5c5135);border-color:#f0cc8c;box-shadow:inset 0 1px 0 #ffe2a755}.tactics>small{flex-basis:100%;font-size:10px;line-height:1.6;color:#bfd0b8}.tactics label{display:flex;align-items:center;gap:12px;font-size:10px;margin:0;color:#c9d5bf}.tactics select{margin:0;padding:8px;background:#142d23;border:1px solid #bfa36955;color:#e8ddbb;min-height:42px}.tactics #cupMatchLabel{color:#f3d08d;font-size:11px}.cup-entry{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 30px;margin:24px 0;border:1px solid #cfb27366;border-radius:18px;background:radial-gradient(ellipse at 95% 20%,#d8ac4930,transparent 60%),linear-gradient(125deg,#2a4030,#10271f);box-shadow:inset 0 1px 0 #f1cf8b33,0 12px 30px #0004}.cup-entry h3{font:30px Georgia,serif;margin:10px 0;color:#f2dcaf}.cup-entry p{font-size:12px;color:#bfcfb9;line-height:1.6}.cup-entry button{min-height:52px;white-space:nowrap}.cup-bracket{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.cup-bracket article{padding:20px 12px;display:flex;flex-direction:column;gap:14px;border:1px solid #c2a36a66;background:linear-gradient(140deg,#3c4d35,#112a20);border-radius:12px}.cup-bracket article span{font-size:9px;color:#dabc7f;letter-spacing:1px}.cup-bracket b{font:19px Georgia,serif}.cup-bracket small{font-size:10px;color:#bacab1;line-height:1.6}#cupDialog>small{display:block;line-height:1.6;margin:16px 0;color:#b7c8af}#cupStart,#cupLeave{width:100%;margin-top:12px}#cupStatus{color:#f5d59a;line-height:1.7}.match-analytics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0 4px}.match-analytics>div{display:flex;flex-direction:column;gap:6px}.match-analytics b{font:24px Georgia,serif!important;color:#f1d99e}.match-analytics span{font-size:8px!important;letter-spacing:0!important;color:#bdcbb1}.match-analytics>small{grid-column:1/-1;font-size:9px;line-height:1.5;color:#bcc7b0}.round-result{max-height:85%;overflow:auto;min-width:min(520px,90%)}.great-shot{color:#ffe9aa!important;text-shadow:0 0 18px #d4aa5988}.inspect-compare{margin:16px 0;padding:15px;background:#142d24;border:1px solid #ac925d66;border-radius:10px;font-size:11px;line-height:1.7}.inspect-compare>small{color:#d7bd85;font-size:9px}.inspect-compare>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.inspect-compare b{color:#f6dba0}.scoreboard{box-shadow:inset 0 1px 0 #e3cb8733;background:linear-gradient(110deg,#1c3930,#112820)}.player.active{background:linear-gradient(120deg,#d7b8731c,transparent);border-radius:12px}.stage-label{opacity:.8}.camera-controls button{backdrop-filter:blur(8px)}
@media(max-width:600px){.tactics{padding:12px;gap:8px}.shot-options button{padding:10px 5px;font-size:11px}.cup-entry{flex-direction:column;align-items:stretch;padding:22px}.cup-entry h3{font-size:26px}.cup-bracket{grid-template-columns:1fr}.cup-bracket article{padding:15px;gap:7px}.round-result{min-width:0;width:calc(100% - 28px);padding:16px;max-height:90%}.match-analytics{gap:8px;grid-template-columns:repeat(2,1fr)}.match-analytics b{font-size:21px!important}.stage-label span:last-child{display:none}body[data-screen=game] .layout{margin-top:8px}.scoreboard .player strong{font-size:30px}.tactics label{width:100%;justify-content:space-between}.tactics select{max-width:220px}}

.inspect-compare .compare-models{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 12px}.compare-models figure{margin:0;min-width:0}.compare-models img{width:100%;height:125px;object-fit:contain;border-radius:9px;background:#0d231b}.compare-models figcaption{font-size:8px;text-align:center;color:#d9c392;margin-top:7px}.tactics{flex-shrink:0}.controls .turn small{max-width:100%;overflow-wrap:anywhere}@media(max-height:650px) and (orientation:landscape){body[data-screen=game]{height:auto;min-height:100dvh;overflow:auto}body[data-screen=game] .stage{min-height:320px}.tactics{padding:9px 14px}.tactics>small{flex-basis:auto;flex:1}.tactics label{width:auto}.shot-options{flex:0 0 300px}.controls{padding:12px}.controls .mobile-actions{display:none}}

.lobby-play #cpuStyleLabel{display:flex;gap:12px;align-items:center;margin:14px 0 18px;font-size:11px;color:#d1c8a7}.lobby-play #cpuStyle{flex:1;min-width:0;min-height:46px;background:#142c23;color:#edddb6;border:1px solid #b99e6555;border-radius:9px;padding:10px}.tactics-panel{padding-top:8px;padding-bottom:8px}.tactics-panel p{margin-top:4px;margin-bottom:0}@media(max-height:850px) and (orientation:portrait){.tactics-panel #tacticsAim{display:none}.tactics-panel p{font-size:9px}.tactics{padding:8px 12px;gap:6px}.tactics>small{font-size:9px}.controls{padding-top:10px;padding-bottom:10px}}

/* Pop Rush Cup opening: finite motion, replayable and immediately skippable. */
.brand-intro{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:0;border:0;border-radius:0;overflow:auto;color:#fff4da;background:radial-gradient(ellipse at 80% 30%,#24465b66,transparent 55%),radial-gradient(ellipse at 15% 70%,#775b3f33,transparent 55%),#090f16;text-align:left}
.brand-intro::backdrop{background:#090f16}.intro-topline{position:absolute;inset:max(22px,env(safe-area-inset-top)) 5% auto;display:flex;align-items:center;justify-content:space-between;z-index:4}.intro-topline>span{font-size:9px;letter-spacing:.2em;color:#a7b3be}.intro-skip{background:#ffffff08;border:1px solid #ffffff25;padding:12px 18px;color:#e5d9bd;border-radius:30px;min-height:44px}.intro-content{min-height:100%;box-sizing:border-box;max-width:1140px;width:90%;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:3%;padding:100px 0 90px}.intro-copy{position:relative;z-index:2}.intro-kicker{font-size:9px;letter-spacing:.24em;color:#c2a977}.intro-copy h1{font-family:Arial,sans-serif;font-weight:900;font-style:italic;line-height:.88;font-size:clamp(66px,8vw,108px);letter-spacing:-.075em;margin:26px 0}.intro-copy h1>span,.intro-copy h1 em{display:block}.intro-copy h1 em{font-style:italic;color:#f0cf86}.intro-copy h1 strong{display:block;width:max-content;font-size:14px;line-height:1;letter-spacing:.5em;font-weight:500;font-style:normal;border-top:1px solid #bba06d99;border-bottom:1px solid #bba06d99;padding:12px 0 12px .5em;margin:20px 0 0;color:#e9dbba}.intro-copy p{font-size:16px;line-height:1.7;color:#afbdc6;margin:0 0 24px}.intro-copy button{display:inline-flex;align-items:center;gap:28px;padding:18px 24px;border-radius:8px;background:linear-gradient(115deg,#f2dc9e,#c39a54);color:#1b201f;border:1px solid #ffe9ad66;box-shadow:0 12px 35px #d5aa4520;font-size:12px;font-weight:800;letter-spacing:.06em;min-height:54px}.intro-copy button:hover{filter:brightness(1.08)}.intro-copy button:focus-visible,.intro-skip:focus-visible{outline:3px solid #8de3f6;outline-offset:5px}.intro-caption{display:block;margin-top:16px;font-size:8px;letter-spacing:.18em;color:#7b8b98}.intro-stage{position:relative;height:min(530px,65dvh);min-height:220px}.intro-halo{position:absolute;inset:10% 0 5%;border:1px solid #d9b97033;border-radius:50%;background:radial-gradient(ellipse,#c1a87112,transparent 65%);box-shadow:0 0 80px #7cc6ee0c}.intro-floor{position:absolute;bottom:0;left:-4%;right:-4%;height:18%;border-radius:50%;border:1px solid #cdb77a44;background:radial-gradient(ellipse,#b6965828,#0a121b 70%);box-shadow:0 24px 32px #0008}.intro-trophy{position:absolute;top:12%;left:34%;width:32%;height:46%;color:#e5c27e;opacity:.3}.intro-darts{position:absolute;inset:0}.intro-darts img{position:absolute;width:42%;height:92%;top:2%;object-fit:contain;filter:drop-shadow(0 20px 14px #0009)}.intro-darts img:first-child{left:8%;transform:rotate(-19deg)}.intro-darts img:last-child{right:8%;transform:rotate(19deg)}.intro-edition{position:absolute;bottom:-22px;left:8%;right:8%;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.18em;color:#8796a1}.intro-edition i{font-style:normal;color:#c0a676}.intro-footer{position:absolute;bottom:max(22px,env(safe-area-inset-bottom));left:5%;right:5%;display:flex;align-items:center;justify-content:center;gap:20px;font-size:8px;letter-spacing:.22em;color:#80909d}.intro-footer i{width:3px;height:3px;background:#d3b678;border-radius:50%}.intro-light{position:absolute;pointer-events:none;top:-20%;height:100%;width:25%;filter:blur(25px);transform:rotate(25deg);opacity:.17}.intro-light-blue{left:50%;background:linear-gradient(#5cbbd3,transparent)}.intro-light-gold{left:12%;transform:rotate(-25deg);background:linear-gradient(#f1c274,transparent)}
.brand-intro[open] .intro-copy{animation:cup-title .9s .3s both}.brand-intro[open] .intro-darts img:first-child{animation:cup-left 1.5s cubic-bezier(.16,1,.3,1) both}.brand-intro[open] .intro-darts img:last-child{animation:cup-right 1.5s .15s cubic-bezier(.16,1,.3,1) both}.brand-intro[open] .intro-halo{animation:cup-halo 2s both}.intro-replay{font-size:10px;padding:8px 12px;border:1px solid #cfb76a55;background:#101e1b80;color:#e0cf9b;border-radius:30px;margin-bottom:12px}.pop-mark{font-family:Georgia,serif;font-style:italic}
@keyframes cup-title{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}@keyframes cup-left{from{opacity:0;translate:-100px -35px;rotate:-16deg}to{opacity:1;translate:0 0;rotate:0deg}}@keyframes cup-right{from{opacity:0;translate:100px -35px;rotate:16deg}to{opacity:1;translate:0 0;rotate:0deg}}@keyframes cup-halo{from{opacity:0;scale:.8}to{opacity:1;scale:1}}
@media(max-width:650px){.intro-topline{inset:max(18px,env(safe-area-inset-top)) 5% auto}.intro-topline>span{font-size:7px}.intro-content{grid-template-columns:1fr;gap:24px;padding:86px 0 80px;align-content:center}.intro-stage{grid-row:1;height:clamp(190px,31dvh,290px);width:85%;margin:auto;min-height:0}.intro-copy{text-align:center}.intro-copy h1{font-size:clamp(52px,14vw,74px);margin:14px 0}.intro-copy h1>span,.intro-copy h1 em{display:inline}.intro-copy h1 strong{font-size:12px;margin:12px auto;padding:8px 0 8px .5em}.intro-copy p{font-size:13px;line-height:1.55;margin:12px 0 16px}.intro-kicker{font-size:7px;letter-spacing:.18em}.intro-caption{margin-top:12px;font-size:7px}.intro-edition{bottom:-16px;font-size:7px}.intro-darts img{width:40%}.intro-footer{gap:12px;font-size:6px}.intro-copy button{padding:15px 22px;min-height:50px}}
@media(max-height:650px){.intro-content{padding-top:75px;padding-bottom:65px}.intro-stage{height:230px}.intro-copy h1{font-size:60px}.intro-copy p{font-size:12px}.intro-caption{display:none}.intro-footer{position:relative;bottom:auto;padding:0 0 22px;left:0;right:0}}@media(max-height:650px) and (max-width:650px){.intro-stage{height:155px}.intro-content{gap:18px}.intro-copy h1{font-size:48px}}
@media(prefers-reduced-motion:reduce){.brand-intro[open] .intro-copy,.brand-intro[open] .intro-darts img,.brand-intro[open] .intro-halo{animation:none!important}}

.shop-item .shop-preview{height:220px}.shop-item.table-item .shop-preview{height:auto;aspect-ratio:384/260}.shop-item .inspect-preview{padding-top:0}.shop-item .inspect-preview:before{display:none}@media(max-width:600px){.shop-item .shop-preview{height:205px}.shop-item.table-item .shop-preview{height:auto;aspect-ratio:384/260}}

/* Lodge atmosphere is scoped to the opening only. */
.brand-intro{background:linear-gradient(90deg,#071a15ed,#102c23b8 55%,#071910d9),url('art/lodge-v17.webp') center/cover no-repeat;color:#fff0cd}.brand-intro::backdrop{background:#071a15}.brand-intro .intro-light-blue{background:linear-gradient(#d3b16d,transparent);opacity:.18}.brand-intro .intro-light-gold{background:linear-gradient(#f3c882,transparent);opacity:.22}.brand-intro .intro-kicker{display:block;max-width:390px;font:italic 22px/1.4 Georgia,serif;letter-spacing:0;color:#ecdbb1;text-wrap:balance}.brand-intro .intro-halo{border-color:#dfc28555;background:radial-gradient(ellipse,#d7b8701c,transparent 68%);box-shadow:0 0 90px #d1a85118}.brand-intro .intro-floor{background:radial-gradient(ellipse,#9a743d55,#0b211a 70%);border-color:#d7b87577}.brand-intro .intro-copy p{color:#c0cebc}.brand-intro .intro-topline>span,.brand-intro .intro-footer,.brand-intro .intro-caption{color:#b3b99e}.brand-intro .intro-edition{color:#c6bd9e}@media(max-width:650px){.brand-intro .intro-kicker{max-width:290px;margin:auto;font-size:19px}}@media(max-height:650px){.brand-intro .intro-kicker{font-size:16px}}

/* Modern engraved lettering and a slow entrance into the champions' lodge. */
.brand-intro{isolation:isolate;background:#091b15}.intro-room{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#061b15e8,#132b20a6 55%,#071911c9),url('art/lodge-v17.webp') center/cover;transform-origin:56% 40%;pointer-events:none}.brand-intro[open] .intro-room{animation:lodge-arrive 6s cubic-bezier(.15,.65,.25,1) both}.brand-intro .intro-copy h1{font-family:Arial,Helvetica,sans-serif;font-style:normal;font-weight:900;letter-spacing:-.065em;line-height:.94;filter:drop-shadow(0 6px 9px #0008)}.brand-intro .intro-copy h1>span,.brand-intro .intro-copy h1 em{font-style:normal;color:#e4c57f;background:linear-gradient(115deg,#b18a43 0%,#eddaa6 20%,#fff4cf 31%,#c59b4e 43%,#f1dda1 54%,#aa7d38 68%,#f5e7b7 83%,#d5b56f 100%);background-size:230% 100%;background-position:100% 50%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;-webkit-text-stroke:.45px #f9e7b044;filter:drop-shadow(0 1px 0 #fcebb880) drop-shadow(0 3px 0 #6b4e26) drop-shadow(0 7px 8px #0005)}.brand-intro[open] .intro-copy h1>span,.brand-intro[open] .intro-copy h1 em{animation:lodge-gold 3.4s .6s ease-out both}.brand-intro .intro-copy h1 strong{font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:700;letter-spacing:.52em;padding:11px 17px 11px 24px;border:1px solid #b89b5b99;border-radius:4px;background:linear-gradient(145deg,#b6934826,#112b2099);box-shadow:inset 0 1px 0 #f8eac933,0 5px 14px #0004;text-shadow:0 1px 2px #000;color:#f4e2b5}.brand-intro .intro-kicker{font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.5;font-style:normal;font-weight:500;letter-spacing:.025em;color:#e2e5d6;text-shadow:0 2px 8px #000b}.brand-intro[open] .intro-kicker{animation:lodge-welcome 1.6s .45s both}.brand-intro .intro-copy p{font-family:Arial,Helvetica,sans-serif;font-weight:400;letter-spacing:.01em;color:#cbd2bf;text-shadow:0 2px 6px #0009}.brand-intro .intro-copy button{font-family:Arial,Helvetica,sans-serif;background:linear-gradient(130deg,#e2c27b,#fae6ae 46%,#bb944c);border-color:#f8e7b58c;box-shadow:inset 0 1px 0 #fff6d9b3,inset 0 -2px 0 #83612f77,0 9px 25px #0006;transition:transform .18s,filter .18s}.brand-intro .intro-copy button:hover{transform:translateY(-2px)}.brand-intro .intro-copy button:active{transform:translateY(1px)}.brand-intro .intro-floor{height:16%;bottom:1%;border:2px solid #c4a46a99;background:radial-gradient(ellipse at 38% 25%,#51604b,#20392a 45%,#142a20 70%);box-shadow:0 8px 0 #655032,0 12px 0 #c1a16b,0 16px 0 #342a1e,0 30px 30px #0009,inset 0 0 24px #e9d19622}.brand-intro .intro-darts img{filter:drop-shadow(0 20px 9px #0008) drop-shadow(-3px -2px 6px #e5d29d26)}.brand-intro .intro-trophy{opacity:.2}.intro-dust{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1}.intro-dust i{position:absolute;width:3px;height:3px;border-radius:50%;background:#efd393;box-shadow:0 0 7px #e7bb5b88;opacity:.4;left:12%;top:75%}.intro-dust i:nth-child(2){left:24%;top:32%}.intro-dust i:nth-child(3){left:38%;top:82%}.intro-dust i:nth-child(4){left:48%;top:19%}.intro-dust i:nth-child(5){left:61%;top:67%}.intro-dust i:nth-child(6){left:73%;top:40%}.intro-dust i:nth-child(7){left:86%;top:77%}.intro-dust i:nth-child(8){left:92%;top:24%}.intro-dust i:nth-child(9){left:31%;top:57%}.brand-intro[open] .intro-dust i{animation:lodge-dust 7s ease-out both}.brand-intro[open] .intro-dust i:nth-child(even){animation-duration:9s}.brand-intro[open] .intro-copy{animation:cup-title 1.1s .2s both}
@keyframes lodge-arrive{from{transform:scale(1);filter:brightness(.65)}to{transform:scale(1.08);filter:brightness(1)}}@keyframes lodge-gold{from{background-position:0% 50%}to{background-position:100% 50%}}@keyframes lodge-welcome{from{opacity:0;translate:0 8px;filter:blur(3px)}to{opacity:1;translate:0 0;filter:blur(0)}}@keyframes lodge-dust{0%{opacity:0;translate:0 14px}25%{opacity:.6}100%{opacity:.12;translate:12px -50px}}
@media(max-width:650px){.brand-intro .intro-kicker{font-size:16px;max-width:300px;line-height:1.4}.brand-intro .intro-copy h1{font-size:clamp(48px,13vw,70px)}.brand-intro .intro-copy h1 strong{font-size:12px;padding:8px 12px 8px 18px}.brand-intro .intro-floor{left:0;right:0}.brand-intro .intro-edition{bottom:-27px}.brand-intro .intro-content{gap:32px}.brand-intro .intro-topline>span{letter-spacing:.12em}}
@media(max-height:650px){.brand-intro .intro-kicker{font-size:14px}.brand-intro .intro-content{gap:22px}}
@media(prefers-reduced-motion:reduce){.brand-intro[open] .intro-room,.brand-intro[open] .intro-kicker,.brand-intro[open] .intro-copy h1>span,.brand-intro[open] .intro-copy h1 em,.brand-intro[open] .intro-dust i{animation:none!important}.brand-intro .intro-copy button{transition:none}.intro-dust{display:none}}
/* Club progression, competitive boards and an isolated practice table. */
.muted{font-size:11px;line-height:1.6;color:#a9b9ad}.shop-toolbar{flex-wrap:wrap;gap:9px}.shop-toolbar select{flex:1 1 140px;max-width:100%}.league-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;margin:26px 0}.podium-place{display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px;padding:18px 8px;background:linear-gradient(145deg,#355344,#142b23);border:1px solid #b69d6b66;border-radius:12px;min-width:0;box-shadow:inset 0 1px #e3d4a326,0 7px 20px #0003}.podium-place>span{font-size:28px}.podium-place>b{font-size:13px;max-width:100%;overflow-wrap:anywhere}.podium-place>strong{font:700 25px Arial,sans-serif;color:#f1d391}.podium-place>small{font-size:8px;letter-spacing:.16em;color:#becab5}.place-1{min-height:170px;border-color:#e7c47d;background:linear-gradient(150deg,#6c6034,#163428)}.place-2{min-height:150px}.place-3{min-height:135px}#leaguePersonal{position:sticky;top:-1px;z-index:4;background:#153429;padding:14px;border:1px solid #c2ab70;border-radius:10px;color:#f4dfad;box-shadow:0 6px 14px #0004}.league-tabs{flex-wrap:wrap}.custom-crest{display:grid;place-items:center;width:56px;height:64px;clip-path:polygon(50% 0,95% 16%,87% 73%,50% 100%,13% 73%,5% 16%);background:linear-gradient(130deg,#fff4c0,var(--crest) 38%,#344538 85%);color:#15251f;text-shadow:0 1px #fff8;font-size:33px;filter:drop-shadow(0 4px 5px #0005)}.crest-editor{margin:25px 0;padding:18px;border:1px solid #b99c6255;border-radius:12px;background:#08251c55}.crest-editor label{display:inline-flex;flex-direction:column;gap:8px;margin:0 12px 12px 0;font-size:11px}.crest-editor select{min-height:44px;background:#17382b;color:#f4e1b5;border:1px solid #ac9466;border-radius:7px;padding:8px}.role-button{font-size:10px;padding:7px 10px;margin-top:6px;min-height:36px;background:#274b39;color:#ead5a4;border:1px solid #a88e5a66;border-radius:7px}.team-roster li{align-items:start}.team-roster small{display:block;line-height:1.6}.team-roster strong{font-size:12px;white-space:nowrap}.career-hero{display:flex;align-items:center;gap:22px;min-height:220px;padding:20px;margin:24px 0;border:1px solid #baa16b;border-radius:16px;background:radial-gradient(ellipse at 20% 30%,#5b705233,transparent 60%),#102a20;box-shadow:inset 0 0 25px #b7994920}.career-hero img{width:100px;height:200px;object-fit:contain;filter:drop-shadow(0 9px 8px #0008)}.career-hero h3{font:500 27px Georgia,serif;margin:12px 0}.career-hero b{font-size:12px;color:#e9cc8b}.career-hero small{font-size:8px;letter-spacing:.12em;color:#b5c6b1}.career-hero p{font-size:10px;line-height:1.6;color:#9eb29f}.career-hero.frame-ice{border:2px solid #9bd8ea;box-shadow:inset 0 0 30px #6fc6e31c}.career-hero.frame-royal{border:3px double #f3cc6e;box-shadow:inset 0 0 35px #c4915229}.career-choices{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 24px}.career-choices button{flex:1 1 120px;padding:13px 9px;border:1px solid #b79c6255;background:#1a3729;border-radius:9px;color:#d6d6bc;font-size:11px;min-height:54px}.career-choices button[aria-pressed=true]{border-color:#efd391;color:#ffe4ac;background:#4e5730}.career-choices small{display:block;margin-top:7px;font-size:9px;color:#a2b39e}.career-choices button:disabled{opacity:.5}.career-history{list-style:none;padding:0;margin:15px 0}.career-history li{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #a6955833;font-size:12px}.career-history small{display:block;color:#a5b99f;font-size:10px;margin-top:6px}.career-history strong{text-align:right;color:#ebd49b}.match-rewards{padding:12px;margin:10px 0;border:1px solid #d4b57666;border-radius:10px;background:#193a2dcc}.match-rewards>b{font:600 9px Arial,sans-serif!important;letter-spacing:.12em;color:#f0d99b}.match-rewards>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:11px;margin:10px 0;color:#f0dfb5}.match-rewards>small{font-size:10px;line-height:1.5;color:#bdcbb8}.round-result{overflow-y:auto;max-height:90%;scrollbar-width:thin}.practice-dialog{width:min(560px,96vw);max-width:96vw;background:linear-gradient(145deg,#254435,#0e231c);color:#e9debf}.practice-dialog>p{font-size:12px;line-height:1.6;color:#b9c7b4}#practiceStage{position:relative;height:300px;overflow:hidden;border:1px solid #bda06a66;border-radius:12px;background:#102920}#practiceInput{position:absolute;inset:0;z-index:2;width:100%;height:100%;touch-action:none}#practiceStage .compatible-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1}.practice-aim{display:flex;align-items:center;justify-content:space-between;font-size:10px;margin:10px 0;gap:12px}.practice-aim input{flex:1;accent-color:#d5b26d}#practicePower{width:100%;height:10px;accent-color:#d8ba75}.practice-buttons{display:flex;gap:10px;margin:12px 0}.practice-buttons button{min-height:48px;flex:1;font-size:10px}.reward-flash{animation:reward-flash .65s ease-out}.great-shot{box-shadow:0 0 28px #d5b76b55}@keyframes reward-flash{0%{scale:.97;filter:brightness(1)}40%{scale:1.02;filter:brightness(1.35)}100%{scale:1;filter:brightness(1)}}
@media(max-width:600px){.league-podium{gap:6px}.podium-place{padding:14px 6px}.podium-place>b{font-size:11px}.podium-place>strong{font-size:21px}.career-hero{gap:12px;padding:14px}.career-hero img{width:85px;height:180px}.career-hero h3{font-size:23px}.team-roster li{flex-wrap:wrap}.team-roster strong{margin-left:auto}.shop-toolbar select{font-size:11px;flex-basis:40%}.match-rewards{padding:9px}#tacticsAim{display:block!important;font-size:9px}.match-analytics{margin:8px 0}}
body[data-quality=low] .reward-flash{animation:none}body[data-quality=low] .great-shot{box-shadow:none}@media(prefers-reduced-motion:reduce){.reward-flash{animation:none}}
.replay-banner{overflow:hidden;border:1px solid #ddc17e77;background:linear-gradient(110deg,#112b24f2,#3f4128f2);box-shadow:0 6px 25px #0006;color:#f1dfb0;letter-spacing:.07em}.replay-banner>span{font-size:10px}.replay-banner>i{position:absolute;bottom:0;left:0;height:3px;width:0;background:linear-gradient(90deg,#82c6b5,#f3d58b);pointer-events:none}.replay-banner button{min-height:40px}#profileCareer h3{color:#eed8a5}.team-goals article{box-shadow:inset 0 1px #f8e1a51c,0 5px 16px #0002}.shop-item.equipped{box-shadow:inset 0 0 24px #ddbc7212,0 7px 28px #0004}

.xp-track i{transition:width .55s ease-out}.level-celebrate{animation:reward-flash 1s ease-out;box-shadow:0 0 24px #ebce7c77}body[data-quality=low] .level-celebrate{animation:none}@media(prefers-reduced-motion:reduce){.level-celebrate{animation:none}.xp-track i{transition:none}}

.team-emblem{position:relative}.team-emblem .earned-crest{position:absolute;right:-5px;bottom:-5px;width:25px;height:25px;border-radius:50%;background:#153025;border:1px solid #dfc17e}
/* Readable match HUD and precision tools. */
body[data-screen=game] .stage{border:1px solid #cbb27966;border-radius:18px;box-shadow:inset 0 0 45px #0003,0 12px 34px #0005}body[data-screen=game] .scoreboard{background:linear-gradient(125deg,#203c31,#101f1b);border-bottom:1px solid #bb9b5d66}body[data-screen=game] .scoreboard .player strong{font-family:Arial,Helvetica,sans-serif;font-weight:800;letter-spacing:-.04em;text-shadow:0 2px 3px #0009}body[data-screen=game] .player.active{box-shadow:inset 0 -2px #e0be7b;background:linear-gradient(180deg,#d6bc7e0b,#d6bc7e20)}body[data-screen=game] .controls .primary{border-radius:13px;box-shadow:inset 0 1px #fff0bb66,0 5px 12px #0005}body[data-screen=game] .power .track{height:14px;border:1px solid #c3ae6a66;background:#09241d}body[data-screen=game] .power .track>i{box-shadow:0 0 10px #a9e5af33}.aim-zoom{position:absolute;left:12px;bottom:14px;z-index:5;min-height:40px;padding:9px 12px;background:#112e26eb;color:#f2ddaa;border:1px solid #c4a76b99;border-radius:10px;font-size:9px;letter-spacing:.05em;box-shadow:0 4px 12px #0005}.aim-zoom[aria-pressed=true]{color:#13261c;background:#e2c78d}.aim-zoom:disabled{opacity:.4}.aim-loupe{position:absolute;top:68px;left:12px;width:150px;height:150px;z-index:5;pointer-events:none;border:2px solid #e7ca86;border-radius:50%;background:#0b211a;box-shadow:0 8px 30px #0009,0 0 0 5px #152d2499}.seat-markers{position:absolute;inset:0;pointer-events:none;z-index:3}.seat-symbol{position:absolute;translate:-50% 5px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#0b191de6;border:1px solid #fff7;font:bold 10px Arial,sans-serif;color:white;box-shadow:0 2px 5px #0008}.seat-1{border-radius:5px}.series-banner{position:absolute;top:67px;left:50%;translate:-50% 0;z-index:4;max-width:90%;padding:9px 12px;border-radius:8px;border:1px solid #ccb17077;background:#123025e8;color:#ffe1a0;font-size:9px;letter-spacing:.04em;text-align:center;box-shadow:0 5px 14px #0005}.series-entry{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px;margin:0 0 18px;border-radius:15px;background:linear-gradient(130deg,#345044,#142b22);border:1px solid #c0a46b66}.series-entry h3{font:26px Georgia,serif;color:#ecd7a7;margin:10px 0}.series-entry p{color:#b5c4b1;font-size:12px;line-height:1.6}.series-entry button{min-height:48px;white-space:nowrap}.play-settings{border:1px solid #b99b5b55;border-radius:11px;padding:15px;margin:20px 0}.play-settings legend{color:#edcf8a;font-size:12px;padding:0 7px}.play-settings label{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;margin:14px 0!important}.play-settings label input[type=range]{width:100%;accent-color:#d8bc7a}.play-settings input[type=checkbox]{width:18px;height:18px;accent-color:#c4a467}.play-settings output{margin-left:auto;color:#e2cd98}.play-settings small{font-size:10px;color:#b2c2b1;line-height:1.6}.backup-panel{margin:24px 0;padding:18px;border:1px solid #c0a46b66;background:#112c2299;border-radius:12px}.backup-panel p{font-size:11px;line-height:1.6;color:#bccab7}.backup-panel button{width:100%;margin:7px 0;min-height:44px;font-size:10px}.backup-file{display:block;padding:12px;border:1px dashed #a99260;border-radius:8px;margin:10px 0;color:#e0cfaa;font-size:12px}.backup-file input{display:block;width:100%;margin-top:10px;font-size:11px}.practice-coach{margin:14px 0;padding:12px;border-left:3px solid #cbb17b;border-radius:0 8px 8px 0;background:#254533;color:#e3d8b9;font-size:12px;line-height:1.7}
body.large-table-text[data-screen=game] #status{font-size:18px}body.large-table-text[data-screen=game] #hint,body.large-table-text[data-screen=game] #tacticsAim,body.large-table-text[data-screen=game] #tacticsLast{font-size:13px!important;line-height:1.5}body.large-table-text[data-screen=game] .stage-label{display:none}body.large-table-text[data-screen=game] .controls{flex-shrink:0}body.large-table-text[data-screen=game]{height:auto;min-height:100dvh;overflow:auto}body.large-table-text[data-screen=game] .stage{min-height:350px}body.left-handed .aim-zoom{left:auto;right:12px}body.left-handed .aim-loupe{left:auto;right:12px}
@media(max-width:600px){.series-entry{flex-direction:column;align-items:stretch;padding:20px}.series-entry button{white-space:normal}.aim-loupe{width:130px;height:130px;top:100px}.series-banner{font-size:8px;padding:8px;top:58px;white-space:nowrap}.seat-symbol{width:17px;height:17px;font-size:9px}body.left-handed[data-screen=game] .controls{grid-template-columns:125px minmax(0,1fr)}body.left-handed[data-screen=game] .controls #throw,body.left-handed[data-screen=game] .controls #next{grid-column:1;grid-row:1 / span 2}body.left-handed[data-screen=game] .controls .turn,body.left-handed[data-screen=game] .controls .power{grid-column:2}body.left-handed[data-screen=game] .controls .turn{grid-row:1}body.left-handed[data-screen=game] .controls .power{grid-row:2}body.left-handed[data-screen=game] .controls .mobile-actions{grid-column:1/-1}}
@media(max-height:650px) and (orientation:landscape){body.left-handed[data-screen=game] .controls{left:12px;right:auto}.aim-loupe{width:120px;height:120px;top:55px}.series-banner{top:8px}}@media(prefers-reduced-motion:reduce){.aim-loupe,.seat-symbol{transition:none}}
