/* Bright arcade enamel. Selection has one rim; focus has a separate ring. */
#ui>.learn-card{position:fixed;left:24px;bottom:24px;z-index:12;width:min(360px,calc(100vw - 32px));padding:20px;border:2px solid #61d8e2;border-radius:18px;background:linear-gradient(145deg,#123e78f5,#352967f5);box-shadow:0 5px 0 #111c44;color:#effaff;pointer-events:auto}
#ui>.learn-card[hidden],#ui>.match-buddy[hidden]{display:none}
.learn-card .btn{-webkit-text-stroke:0;-webkit-text-fill-color:currentColor;text-shadow:none;filter:none;clip-path:none}
.learn-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font:800 10px/1 var(--ui);letter-spacing:.07em;color:#78f5df}.learn-top button{background:transparent;border:1px solid #6899b6;border-radius:8px;color:#d6ecff;font:800 10px var(--ui);padding:10px;min-height:36px;cursor:pointer}.learn-card h3{font:800 27px/1.1 var(--display);margin:12px 0 8px;color:#ffde69}.learn-card p{font:600 13px/1.55 var(--ui);margin:0;color:#e1effa}.learn-progress{display:flex;gap:5px;margin:15px 0}.learn-progress i{height:4px;flex:1;border-radius:3px;background:#49638c}.learn-progress .done{background:#6effd6}.learn-card .btn{width:100%;font:800 14px var(--display);border-radius:10px;min-height:44px;border:2px solid #b28135;background:#ffda5e;color:#362800;cursor:pointer}
#ui>.match-buddy{position:fixed;right:20px;bottom:22px;z-index:4;pointer-events:none;display:flex;align-items:center;gap:2px;color:#bfefff}.match-buddy img{width:84px;height:84px;object-fit:contain;transform-origin:50% 80%}.match-buddy span{font:800 11px/1 var(--display);max-width:74px;text-shadow:0 2px 2px #071122}.match-buddy.react-hit img,.match-buddy.react-place img{animation:buddy-bounce .42s ease-out}.match-buddy.react-hurt img,.match-buddy.react-out img{animation:buddy-flinch .45s ease-out}.match-buddy.react-win img{animation:buddy-cheer .85s ease-in-out 2}
@keyframes buddy-bounce{0%{transform:scale(1.13,.86)}40%{transform:translateY(-12px) rotate(-8deg) scale(.95,1.08)}100%{transform:none}}
@keyframes buddy-flinch{20%{transform:rotate(10deg) scale(.9)}45%{transform:rotate(-8deg)}75%{transform:rotate(4deg)}100%{transform:none}}
@keyframes buddy-cheer{25%{transform:translateY(-18px) rotate(-12deg)}70%{transform:translateY(-8px) rotate(10deg)}100%{transform:none}}
@media(max-width:760px){#ui>.learn-card{left:16px;bottom:16px;padding:14px;max-height:34vh;overflow:auto}.learn-card h3{font-size:22px}.learn-card p{font-size:12px}#ui>.match-buddy{right:8px;bottom:8px}.match-buddy img{width:50px;height:50px}.match-buddy span{display:none}}
@media(prefers-reduced-motion:reduce){.match-buddy img{animation:none!important}}
html.op-a11y-still .match-buddy img{animation:none!important}
.screen.screen .scr-title,.screen.screen .scr-title *{-webkit-text-stroke:0;-webkit-text-fill-color:currentColor;background:none;text-shadow:0 3px 0 #071337;font-family:var(--display)}
.screen.menu .mn-scrim{background:linear-gradient(90deg,#060c3355,transparent 56%),linear-gradient(0deg,#07143a66,transparent 35%)}
.screen.menu .mn-top,.screen.menu .mn-foot{background:linear-gradient(110deg,#15216af7,#0c4670f2);border-color:#2cafcc}
.screen.menu .mn-btn,.screen.menu .mn-btn:nth-child(n+6),.screen.screen :is(.btn,.pill){background:linear-gradient(160deg,#167dc1,#2451b6);border-color:#142665;box-shadow:inset 0 2px 0 #7eddff77,0 4px 0 #101b53;color:#f3fcff}
.screen.menu .mn-btn.is-hero,.screen.screen :is(.btn.primary,.btn.play){background:linear-gradient(165deg,#ffe771,#ffbd22);color:#382500;border-color:#89521b;box-shadow:inset 0 3px 0 #fff4b2,0 4px 0 #a25d16}
.screen.screen .btn:disabled{cursor:not-allowed;opacity:.6;transform:none}
.screen.menu .mn-card{background:linear-gradient(145deg,#164886f5,#252667f5);border-color:#60b7de}
.screen.menu .mn-season{background:linear-gradient(0deg,#33256b 15%,#33256bdd 54%,transparent),url('../../assets/ui/arena/reef.jpg') center/cover;border-color:#f8d55c}
.screen.sel .sel-panel{background:linear-gradient(145deg,#0a526eea,#222865f5);border-color:#2d97b4}
.screen.sel .sel-hero{background:radial-gradient(ellipse at 50% 22%,#92399577,transparent 65%),linear-gradient(145deg,#154b7f,#3e2368);border-color:#9c70bb}
.screen.sel .sel-chip,.screen.sel .sel-chip.on,.screen.sel .sel-chip.on:hover{border:2px solid #317796;border-radius:14px;clip-path:none;filter:none;transform:none;box-shadow:0 3px 0 #091944;background:radial-gradient(ellipse at 50% 27%,color-mix(in srgb,var(--chip) 30%,#16487c),#162d67 82%)}
.screen.sel .sel-chip.on{border-color:#ffe36a;box-shadow:inset 0 0 0 1px #ffe36a,0 3px 0 #091944;background:radial-gradient(ellipse at 50% 27%,color-mix(in srgb,var(--chip) 50%,#184a86),#382877 85%)}
.screen.sel .sel-chip::before{display:none}
.screen.sel .sel-chip b{padding:4px 4px 8px;color:#f5faff;letter-spacing:.035em}
.screen.sel .sel-chip.on .sel-tick{display:grid;place-items:center;right:6px;top:6px;bottom:auto;width:21px;height:21px;border-radius:50%;background:#ffe36a;border:2px solid #26305c;color:#27304d}
.screen.sel .sel-chip.on .sel-tick::after{content:'✓';font:900 13px/1 var(--ui)}
.screen.sel .sel-chip:focus:not(:focus-visible){outline:none}
.screen.sel .sel-chip:focus-visible{outline:3px solid white;outline-offset:3px}
.screen.sel .sel-chip.on:focus-visible{outline:none;border-color:white;box-shadow:0 3px 0 #091944}
.screen.sel .sel-grid{max-width:min(100%,calc(78vh - 148px))}
.screen.boards.storefront::before{display:none}
@media(max-width:760px){.screen.sel .sel-grid{max-width:100%}}
.screen.modes .modecard{background:linear-gradient(145deg,#164d83,#22275f);border-color:#378aaf}
.screen.modes .modecard.on{background:linear-gradient(145deg,#365aaa,#66379c);border-color:#ffe16b}
.screen.modes .mode-detail{background:linear-gradient(145deg,#174d7d,#262968)}
.screen.boards.storefront{display:flex;flex-direction:column;padding:0;background:radial-gradient(ellipse at 85% 20%,#3c2679,transparent 60%),linear-gradient(135deg,#07476b,#101b52 65%);color:#edfaff}
.shop-head{display:flex;align-items:center;gap:24px;padding:18px 3vw;border-bottom:1px solid #699ac344;background:#102955d9}
.shop-head h2{font:800 clamp(23px,3vw,36px)/1 var(--display);margin:0;color:#70ffdc}
.shop-head h2 span{color:#ffda59}
.shop-tag{margin-left:auto;color:#b1d8f7;font:800 11px var(--ui);letter-spacing:.14em}
.shop-scroll{flex:1;min-height:0;overflow:auto;padding:26px max(20px,calc((100vw - 1280px)/2)) 36px;scrollbar-color:#5398c6 #152453}
.shop-intro{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(240px,1fr);gap:22px}
.shop-feature{position:relative;isolation:isolate;display:flex;align-items:center;min-height:280px;padding:28px 32px;overflow:hidden;border:2px solid #b577d9;border-radius:24px;background:radial-gradient(ellipse at 80% 25%,#bd3e9e,#522584 60%,#242d73);box-shadow:0 5px 0 #111541}
.shop-feature>div{position:relative;z-index:1;width:62%}.shop-feature>img{position:absolute;width:42%;height:110%;right:0;bottom:-18%;object-fit:contain;transform:rotate(8deg)}
.shop-eyebrow{display:block;font:800 10px/1.4 var(--ui);letter-spacing:.12em;color:#beefff}
.shop-feature h3{font:800 clamp(32px,4vw,53px)/1 var(--display);margin:14px 0 10px;text-shadow:0 3px 0 #371853}.shop-feature h3 em{font-style:normal;color:#ffe05e}
.shop-feature p{font:700 13px/1.5 var(--ui);max-width:300px;margin:0 0 18px;color:#eadfff}
.shop-wallet{padding:22px;border:1px solid #4da7c1;border-radius:20px;background:linear-gradient(145deg,#095d7c,#193965);box-shadow:0 4px 0 #111c47}
.shop-wallet h3,.shop-section h3{font:800 26px/1.2 var(--display);margin:0;color:#f2faff}.shop-wallet p{font:600 12px/1.5 var(--ui);color:#bfe4f3;margin:15px 0 0}
.shop-balance{display:flex;align-items:center;gap:14px;margin-top:15px}.shop-balance i{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#153d69;color:#ffcf5d}.shop-balance span{font:800 10px/1.3 var(--ui);letter-spacing:.08em;color:#bde1f5}.shop-balance b{display:block;font:800 28px/1 var(--display);color:white;letter-spacing:0}
.shop-section{margin-top:30px}.shop-section-head{display:flex;gap:12px;align-items:baseline;justify-content:space-between;margin-bottom:14px}.shop-section-head p,.shop-note{font:600 12px/1.5 var(--ui);color:#bcddee;margin:0}.shop-note{margin-top:16px}
.shop-exchanges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.shop-exchange{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:18px;border:2px solid #498bd5;border-radius:17px;background:linear-gradient(140deg,#224b9b,#32307c);box-shadow:inset 0 2px 0 #a2c3ff22,0 4px 0 #0e1846;color:white;cursor:pointer;text-align:left}
.shop-exchange:disabled{cursor:not-allowed;border-color:#3b72a3}.shop-pearl{width:56px;display:grid;place-items:center;color:#a3edff}.shop-exchange b{display:block;font:800 24px/1.2 var(--display)}.shop-exchange small{font:700 12px var(--ui);color:#d3dff9}.shop-trade{flex-basis:100%;border-top:1px solid #7da7e544;padding-top:10px;text-align:center;font:800 10px/1 var(--ui);letter-spacing:.07em;color:#ffdc73}
.shop-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.shop-character{cursor:pointer;min-width:0;padding:12px;border:2px solid color-mix(in srgb,var(--character),#3c6998);border-radius:18px;background:radial-gradient(ellipse at 50% 30%,color-mix(in srgb,var(--character) 36%,#22295e),#182d64 85%);box-shadow:0 4px 0 #0c1847;color:white}.shop-character img{display:block;width:100%;height:150px;object-fit:contain}.shop-character b{display:block;font:800 20px/1.4 var(--display)}.shop-character span,.shop-owned{font:800 10px/1.4 var(--ui);letter-spacing:.09em;color:#83ffd5}
.shop-product{padding:18px;border:1px solid #598eca;background:#1d356c;border-radius:18px;display:flex;flex-direction:column;gap:8px;min-width:0}.shop-product-art{display:grid;place-items:center;height:180px;background:radial-gradient(ellipse,#7350a366,transparent);color:#ffcf5f}.shop-product-art img{width:100%;height:100%;object-fit:contain}.shop-product-art img.shop-arena{object-fit:cover;border-radius:10px}.shop-product h4{font:800 23px/1.2 var(--display);margin:0}.shop-product p{font:600 12px/1.5 var(--ui);margin:0;color:#c7e0f6}.shop-product-actions{margin-top:auto;padding-top:10px;display:flex;gap:8px;flex-wrap:wrap}
.shop-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:48px;padding:10px 3vw;background:#111e50;border-top:1px solid #3b689b}.shop-foot p{margin:0;color:#91ffcf;font:800 12px var(--ui)}.shop-foot>span{font:600 10px var(--ui);color:#b9d5ed}
@media(hover:hover){.shop-character:hover{border-color:#ffe377;background:radial-gradient(ellipse at 50% 30%,color-mix(in srgb,var(--character) 55%,#22295e),#243c7d 85%)}.shop-exchange:not(:disabled):hover{border-color:#ffe377}.screen.sel .sel-chip:hover{border-color:#a1dbea}.screen.sel .sel-chip.on:hover{border-color:#ffe36a}}
@media(max-width:760px){.screen.menu .mn-scrim{background:linear-gradient(0deg,#111d6388,#111d631a)}.shop-head{padding:14px;gap:12px}.shop-head h2{font-size:22px}.shop-tag{display:none}.shop-scroll{padding:18px 14px 24px}.shop-intro{grid-template-columns:1fr;gap:14px}.shop-feature{padding:22px;min-height:250px}.shop-feature>div{width:68%}.shop-feature>img{width:45%;right:-4%}.shop-wallet{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}.shop-wallet h3,.shop-wallet p{grid-column:1/-1}.shop-wallet p,.shop-balance{margin:0}.shop-exchanges{grid-template-columns:1fr;gap:10px}.shop-exchange{padding:13px}.shop-trade{flex-basis:auto;margin-left:auto;border:0;max-width:80px;line-height:1.4;padding:0}.shop-section-head{display:block}.shop-section-head p{margin-top:4px}.shop-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.shop-character img{height:130px}.shop-character b{font-size:17px}.shop-foot{align-items:flex-start;flex-direction:column;padding:8px 14px}.shop-product{padding:12px}.shop-product-art{height:130px}}
.shop-pearl svg{width:70px;height:70px;max-width:none;filter:drop-shadow(0 3px 0 #121e48)}
.screen.screen :is(.panel,.pause-panel,.res-panel){background:linear-gradient(150deg,#153963f2,#212957f5);border-color:#467f9e}
.screen.screen .panel-head,.screen.screen .panel-head.aqua.aqua,.screen.screen .panel-head.gold.gold{background:#174d6f;color:#e6f9ff}
.screen.screen .panel-head .hd-r{color:#a4e7ed}
@media(hover:hover){.screen.modes .modecard:hover{background:linear-gradient(145deg,#1d629b,#333482)}.screen.modes .modecard.on:hover{background:linear-gradient(145deg,#3d69b5,#7043a5)}}
/* Loadout workshop: quiet blue controls, gold reserved for the primary action. */
.screen.modes .modes-foot [data-start]{position:relative;display:flex;align-items:center;justify-content:center;padding:14px 50px;text-align:center;gap:0}
.screen.modes [data-start] .play-tri{position:absolute;left:20px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:20px;height:24px;margin:0}
.screen.modes [data-start-label]{flex:0 1 auto;margin:0;text-align:center;line-height:1.2}
.mode-arena-nav{position:absolute;bottom:0;left:0;right:0;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;padding:8px;background:linear-gradient(0deg,#0b2155fa,#0b2155c9)}
.mode-arena-nav button{height:44px;border:1px solid #6dbae5;border-radius:10px;background:#195995;color:#fff;font:700 32px/1 var(--ui);cursor:pointer}
.mode-arena-nav button:disabled{opacity:.4;cursor:default}
.mode-arena-nav>span{font:800 15px/1.1 var(--display);text-align:center;color:#fff1ad}
.screen.sel .sel-roster{display:flex;flex-direction:column;min-height:0}
.sel-loadout-tabs{display:flex;gap:8px;flex:none;margin-bottom:12px;border-bottom:1px solid #6099ba55;padding-bottom:12px}
.sel-loadout-tabs button{flex:1;min-height:44px;border:1px solid #468cbb;border-radius:10px;background:#153d78;color:#bedef4;font:800 17px/1 var(--display);cursor:pointer}
.sel-loadout-tabs button[aria-pressed=true]{background:#2468a6;border-color:#82e7e5;color:#fff;box-shadow:inset 0 -3px 0 #67e4d7}
.sel-loadout-tabs small{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:6px;background:#10315a;color:#8fffe0;font:800 11px var(--ui);margin-left:7px}
.screen.sel [hidden]{display:none!important}
.sel-paddle-pane{flex:1;min-height:0;overflow:auto;scrollbar-color:#3c8fab #142251;padding:2px 4px 8px}
.sel-paddle-stage{position:relative;text-align:center;padding:16px 12px 18px;border:1px solid #559bb3;border-radius:16px;background:radial-gradient(ellipse at 50% 40%,#238aaf55,transparent 70%),linear-gradient(140deg,#20487e,#2c2963)}
.sel-paddle-stage>span{font:800 10px var(--ui);letter-spacing:.14em;color:#85f5df}
.sel-paddle-stage svg{display:block;width:min(100%,430px);height:140px;margin:auto;filter:drop-shadow(0 10px 10px #090d3033)}
.sel-paddle-stage h3{font:800 28px/1 var(--display);color:#ffdf79;margin:0 0 8px}
.sel-paddle-stage p{font:600 12px/1.5 var(--ui);color:#d1e8f9;margin:0}
.sel-paddle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.sel-paddle{position:relative;min-width:0;padding:6px 8px 12px;border:2px solid #427ab0;border-radius:13px;background:linear-gradient(150deg,#224f86,#293366);color:#e9faff;cursor:pointer;box-shadow:0 3px 0 #101c46}
.sel-paddle svg{display:block;width:100%;height:66px}.sel-paddle b{display:block;font:800 17px/1.1 var(--display)}
.sel-paddle.on{border-color:#ffe178;background:linear-gradient(145deg,#32649b,#3f427b)}
.sel-paddle-tick{display:none;position:absolute;right:7px;top:7px;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#ffe178;color:#32270d;font:900 12px var(--ui)}.sel-paddle.on .sel-paddle-tick{display:flex}
.sel-paddle-fair{margin:16px 0 0;font:800 10px/1.4 var(--ui);color:#9fdedb;text-align:center;letter-spacing:.05em}
.sel-loadout-tabs button:focus-visible,.sel-paddle:focus-visible,.mode-arena-nav button:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(hover:hover){.sel-paddle:hover{border-color:#b0f5ef}.sel-loadout-tabs button:hover,.mode-arena-nav button:not(:disabled):hover{background:#2e7ab3}}
@media(max-height:800px) and (min-width:761px){.sel-paddle-stage{padding:10px}.sel-paddle-stage svg{height:95px}.sel-paddle-stage h3{font-size:23px}.sel-paddle svg{height:50px}.sel-paddle{padding-bottom:8px}.sel-paddle-grid{gap:8px}.sel-paddle-fair{margin-top:10px}}
@media(max-width:760px){.sel-paddle-pane{overflow:visible}.sel-paddle-stage svg{height:115px}.sel-paddle-stage h3{font-size:25px}.sel-paddle b{font-size:16px}.screen.sel .sel-roster{min-height:0}.mode-arena-nav>span{font-size:14px}}
.screen.menu .mn-sc[data-act]{background:#153f71;border-color:#3c7bac;box-shadow:inset 0 1px 0 #91d6f633}
@media(min-width:761px){.screen.sel .sel-grid{max-width:min(100%,calc(78vh - 212px))}}
/* Collection and rule workshop. Keep the playful type and a consistent blue shell. */
.screen.modes .mode-arena-nav{grid-template-columns:36px 1fr 36px;padding:4px 8px 2px;gap:6px;background:linear-gradient(0deg,#103769d9,#10376966)}
.mode-arena-nav button{height:36px;min-width:36px;font-size:25px;border-radius:8px;background:#185885c9}.mode-arena-nav>span{padding-top:6px;font-size:14px}
.mode-series-options{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:0}.mode-series-options p{font:600 11px/1.35 var(--ui);color:#c9e6f6;margin:0;text-align:right}.mode-series-options [hidden]{display:none!important}
.screen.lobby .lb-p-create>.lb-selwrap{margin-bottom:18px}.screen.lobby .lb-p-create>[data-lb=create]{margin-top:0}
.shop-brand{display:grid;place-items:center;width:54px;height:54px;border:1px solid #64d7eb;border-radius:14px;background:#08789c;flex:none}.shop-head{gap:16px}
.shop-categories{display:flex;gap:8px;position:sticky;top:-26px;z-index:2;background:#102b59f7;border:1px solid #477cab;border-radius:14px;padding:10px;margin-top:22px;overflow:auto;scrollbar-width:thin}
.shop-categories button{display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;min-height:44px;padding:10px 13px;background:#174478;border:1px solid #3d7aaa;border-radius:8px;font:800 12px var(--ui);color:#d6eafa;cursor:pointer}.shop-categories button[aria-pressed=true]{background:#2c70a6;color:white;border-color:#8af8da;box-shadow:inset 0 -3px 0 #8af8da}.shop-categories small{font:800 10px var(--ui);padding:3px 5px;border-radius:5px;background:#091e46;color:#aceddc}
.shop-collection{margin-top:20px}.shop-product{border-width:2px;background:radial-gradient(ellipse at 50% 22%,#3f618f,#1e386f 75%)}.shop-product.is-equipped{border-color:#ffe080}.shop-product-art>svg{width:100%;height:100%;max-width:260px}.shop-product-actions{align-items:center;justify-content:space-between;gap:8px}.shop-product-actions .btn{min-height:42px}.shop-owned{font-size:9px}
.shop-charm{display:flex;align-items:center;justify-content:center;position:relative;width:116px;height:116px;border-radius:50%;background:radial-gradient(ellipse,#4b769b88,transparent 70%);filter:drop-shadow(0 4px 0 #0a163b)}.shop-charm-loop{position:absolute;top:0;left:50%;transform:translateX(-50%);width:17px;height:21px;border:4px solid #d6f4ff;border-radius:50%;z-index:-1}.shop-charm>svg{filter:drop-shadow(0 2px 0 #183967)}
.shop-categories button:focus-visible{outline:3px solid #fff;outline-offset:2px}.shop-collection .shop-section-head .btn{font-size:11px;min-height:40px}
.screen.custom{background:radial-gradient(ellipse at 90% 5%,#244777,#102453 70%)}
.screen.custom .cst-head{padding:18px 22px;border-bottom:1px solid #467e9d;background:#102e5c}
.screen.custom .cst-crumb,.screen.custom .cst-crumb *{-webkit-text-stroke:0;filter:none;text-shadow:0 2px 0 #0b1637;color:#eafaff}.screen.custom .cst-crumb b{color:#ffdf70}.screen.custom .cst-statechip{border-radius:8px;letter-spacing:.035em;font-size:10px}
.screen.custom .cst-body{padding-top:18px;gap:18px;grid-template-columns:minmax(205px,19vw) minmax(0,1fr) minmax(250px,23vw)}
.screen.custom .cst-pre{border:1px solid #4284a4;border-radius:12px;clip-path:none;filter:none;background:linear-gradient(145deg,#204f81,#24366b);box-shadow:0 3px 0 #0e1c47;margin-bottom:9px;padding:12px}.screen.custom .cst-pre.on{border-color:#ffdf77;background:linear-gradient(145deg,#356799,#4a3f78)}.screen.custom .cst-pre.on::after{display:none}
.screen.custom .cst-tab{border:1px solid #487fa6;border-radius:10px;clip-path:none;filter:none;background:#193f73;color:#d8edff;min-height:44px}.screen.custom .cst-tab.on{background:#277ca1;border-color:#8cffe4;color:white}.screen.custom .cst-tab.on .cst-tab-ico{color:#91ffe9}
.screen.custom .cst-list,.screen.custom .cst-prev{border:1px solid #5388ae;border-radius:16px;overflow:auto;clip-path:none;filter:none;background:#17335f}
.screen.custom .cst-row{background:#1c416f;border-bottom:1px solid #487ba255;padding-block:17px}.screen.custom .cst-row:nth-of-type(2n){background:#203b6b}.screen.custom .cst-row:hover{background:#254c7d}.screen.custom .cst-facts{padding:12px 16px}.screen.custom .cst-facts>div{padding-block:9px;border-bottom:1px solid #4b769544}.screen.custom .cst-prev .panel-head{padding-block:15px;background:#206082;color:#a7ffeb}
.screen.custom .cst-start{display:flex;align-items:center;justify-content:center;gap:12px;min-height:58px;font-size:22px;letter-spacing:.02em;padding-inline:15px}.screen.custom .cst-start .play-tri{width:18px;height:20px;flex:none}
.screen.custom .cst-foot{background:#102750;border-top:1px solid #50809b;padding-block:12px}.screen.custom .cst-random{white-space:nowrap;border-color:#65cfca;min-height:44px}.screen.custom .cst-fam-tag{border-radius:6px;clip-path:none}
@media(max-width:1100px){.screen.custom .cst-body{grid-template-columns:190px minmax(0,1fr)}.screen.custom .cst-side{grid-column:1/-1;display:grid;grid-template-columns:1fr 230px;align-items:start}.screen.custom .cst-prev{display:none}.screen.custom .cst-side .cst-start{grid-column:2}.screen.custom .cst-head{padding:12px;gap:10px}.screen.custom .cst-statechip{display:none}}
@media(max-width:760px){.shop-head{gap:9px}.shop-brand{width:35px;height:39px;border-radius:9px}.shop-brand svg{width:29px;height:29px}.shop-head h2{font-size:17px}.shop-categories{top:-18px;border-radius:9px;padding:7px;gap:6px}.shop-categories button{font-size:11px;padding:8px 10px}.shop-product h4{font-size:19px}.shop-product .shop-eyebrow{font-size:8px}.shop-product-actions{align-items:flex-start;flex-direction:column}.shop-product-actions .btn{width:100%;padding-inline:8px;font-size:11px}.screen.custom .cst-head{justify-content:space-between}.screen.custom .cst-crumb{order:3;width:100%;justify-content:center;font-size:20px}.screen.custom .cst-head>.grow{display:none}.screen.custom .cst-random{font-size:11px;padding-inline:12px}.screen.custom .cst-body{display:flex;flex-direction:column;padding:14px;overflow:auto;gap:14px}.screen.custom .cst-rail{max-height:190px;flex:none}.screen.custom .cst-mid{max-height:none;min-height:450px;flex:none}.screen.custom .cst-list{overflow:visible}.screen.custom .cst-side{display:block}.screen.custom .cst-side .cst-start{width:100%}.screen.custom .cst-foot{flex-wrap:wrap;padding:10px}.screen.custom .cst-foot-btns{width:100%;justify-content:flex-end}.screen.custom .cst-foot .btn{font-size:11px;min-height:40px}.screen.custom .cst-say{font-size:10px}.screen.custom .cst-tab{padding:8px;font-size:11px}}
.screen.custom .cst-side{min-height:0;overflow:hidden}.screen.custom .cst-prev{flex:1;min-height:0;max-height:100%;overflow:auto}
.screen.custom .cst-foot .btn.play.cst-start{width:auto;min-width:180px;min-height:48px;padding:10px 24px;font-size:20px;flex:none;margin:0}
.screen.custom .cst-foot-btns{align-items:center}.screen.custom .cst-row{clip-path:none;border-radius:10px}.screen.custom .cst-statechip{clip-path:none}
@media(max-width:1100px){.screen.custom .cst-side{display:none}.screen.custom .cst-body{grid-template-rows:minmax(0,1fr)}}
@media(max-width:760px){.screen.custom .cst-foot-btns{gap:7px;justify-content:flex-end}.screen.custom .cst-foot .btn{padding:10px;font-size:10px}.screen.custom .cst-foot .btn.play.cst-start{min-width:135px;font-size:15px;padding:10px 15px}.screen.custom .cst-foot .cst-undo{margin-right:auto}}

/* Intrinsic square portraits must stay inside the fixed artwork row. */
.shop-product-art{min-height:0;overflow:hidden}.shop-product-art img{min-height:0;max-height:180px;max-width:100%}
@media(max-width:760px){.shop-product-art img{max-height:130px}}

/* Store order and level requirements. */
.shop-wallet{position:relative}.shop-level{display:inline-block;padding:5px 10px;border:1px solid #76d9dd;border-radius:8px;background:#163e68;color:#b6fff0;font:900 11px var(--ui);margin-bottom:8px}
.shop-level-lock{gap:7px}.sel-paddle.is-locked{border-color:#607b9f}.sel-paddle-lock{display:block;color:#ffdf87;font:800 10px var(--ui);padding:3px}.shop-section-head p,.shop-feature p,.shop-wallet p{ text-transform:capitalize }
/* Outcome stage: clean lettering, a medal and the player's own character. */
.screen.res{background:radial-gradient(ellipse at 18% 35%,#1d64796b,transparent 58%),#0b1c3bed;padding:0;gap:0}
.screen.res::before{background:none;backdrop-filter:blur(8px);opacity:.7}
.screen.res .res-top{padding:16px 28px;background:#112e56;border-bottom:1px solid #5784a455}
.screen.res .res-brand b{font-size:20px;-webkit-text-stroke:0;color:#c2fff0}.screen.res .res-brand .mk{filter:none}
.screen.res .res-body{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:28px;padding:24px 28px;align-items:stretch}
.screen.res .res-stage{justify-content:center;gap:4px;border:1px solid #5cbac376;border-radius:28px;background:radial-gradient(ellipse at 50% 42%,#227f9155,transparent 65%),linear-gradient(155deg,#153e63,#132551);padding:24px 16px;min-height:540px;overflow:hidden}
.screen.res.lost .res-stage{border-color:#b87ca875;background:radial-gradient(ellipse at 50% 42%,#873f7b55,transparent 65%),linear-gradient(155deg,#342b66,#182751)}
.screen.res .res-stage::after,.screen.res .res-rays{display:none}
.res-verdict-medal{position:relative;z-index:2;display:grid;place-items:center;width:64px;height:64px;border-radius:20px;border:1px solid #ffedab;background:linear-gradient(145deg,#ffe687,#efae38);color:#5c3917;box-shadow:inset 0 2px 0 #fff3c3,0 5px 0 #8b531d}
.res-kicker{position:relative;z-index:2;font:800 10px var(--ui);letter-spacing:.18em;color:#b9e4ef;margin-top:16px}
.screen.res .res-banner{padding:0;margin:0;transform:none;isolation:isolate}
.screen.res .res-word{font:800 clamp(56px,6vw,92px)/1.05 var(--display);letter-spacing:.01em;color:#ffdc69;-webkit-text-fill-color:currentColor;-webkit-text-stroke:0;background:none;filter:none;text-shadow:0 4px 0 #89541f;transform:none}
.screen.res.lost .res-word{color:#ffafd1;text-shadow:0 4px 0 #753b70}
.screen.res .res-sub{font:800 12px/1.4 var(--ui);letter-spacing:.1em;color:#ddf8ff;-webkit-text-stroke:0;margin:3px 0 8px}
.screen.res .res-cast{width:100%;grid-template-columns:minmax(90px,1fr) minmax(150px,1.5fr) minmax(90px,1fr);gap:8px;align-items:end;margin-top:6px}
.screen.res .res-figure{grid-column:auto;grid-row:auto;margin:0;min-width:0}.screen.res .res-mascot .res-art{height:clamp(190px,26vh,280px);max-width:100%;object-fit:contain}
.screen.res .res-card{clip-path:none;border:1px solid #5279a7;border-radius:16px;background:#102848;filter:none;padding:13px 8px;box-shadow:0 4px 0 #091a35;animation:none}
.screen.res .res-card.gold{border-color:#dfb84b;background:#3b341e}.screen.res .res-card.silver{border-color:#9abed4}.screen.res .res-card.bronze{border-color:#be8b65}
.screen.res .res-card .ord{font:800 42px/1 var(--display);-webkit-text-stroke:0;filter:none;color:var(--edge)}.screen.res .res-card .nm{font:800 17px var(--display);-webkit-text-stroke:0;letter-spacing:0}.screen.res .res-card .lbl,.screen.res .res-card .sub{font-size:9px;letter-spacing:.08em}
.screen.res .res-earned{position:relative;z-index:2;margin:8px 0;justify-content:center}.screen.res .res-earn{border-radius:8px;clip-path:none;background:#102e4a;border:1px solid #467d8b}
.screen.res .res-grid{display:flex;flex-direction:column;gap:16px;min-width:0}.screen.res .res-grid>.res-col:first-child{display:grid;grid-template-columns:1fr 1fr;gap:16px}.screen.res .res-grid>.res-col:last-child{flex:1}.screen.res .res-col{gap:16px}
.screen.res .panel{clip-path:none;border:1px solid #43698d;border-radius:16px;filter:none;background:#142e51;overflow:hidden}.screen.res .panel-head{background:#1c4c71;color:#d2fff0;border-bottom:1px solid #5fa0b54d;letter-spacing:.05em;font:800 14px var(--display);padding:13px 16px}.screen.res .panel-head.gold{color:#ffdf82}
.screen.res .hi,.screen.res .stats{font-size:13px}.screen.res .hi dt,.screen.res .hi small,.screen.res .stat span{text-transform:capitalize}
.screen.res .res-foot{padding:14px 28px;background:#102949;border-top:1px solid #54849d66}.screen.res .res-acts{gap:10px;justify-content:center}.screen.res .res-foot .btn{padding:12px 17px;min-height:44px;font-size:12px}.screen.res .res-foot .btn.play{font-size:19px;min-width:190px}.screen.res .res-seed{display:none}.screen.res .res-say:empty{display:none}
@media(max-width:1100px){.screen.res .res-body{grid-template-columns:1fr;gap:18px;padding:18px}.screen.res .res-stage{min-height:470px}.screen.res .res-cast{max-width:540px}.screen.res .res-grid{width:100%}.screen.res .res-acts{display:flex;flex-wrap:wrap}.screen.res .res-foot .btn{flex:1;white-space:nowrap}.screen.res .res-tags{display:none}}
@media(max-width:600px){.screen.res .res-top{padding:12px 16px}.screen.res .res-body{padding:12px}.screen.res .res-stage{min-height:450px;padding:20px 10px}.screen.res .res-word{font-size:60px}.screen.res .res-cast{display:grid;grid-template-columns:1fr 1fr;gap:10px}.screen.res .res-figure{grid-row:1;grid-column:1/-1;justify-self:center}.screen.res .res-mascot .res-art{height:180px}.screen.res .res-card{grid-row:2;width:auto;display:flex}.screen.res .res-grid>.res-col:first-child{grid-template-columns:1fr}.screen.res .res-foot{padding:10px}.screen.res .res-foot .btn{font-size:10px;padding:9px;min-height:40px}.screen.res .res-foot .btn.play{font-size:16px;flex-basis:100%;min-height:44px}}
@media(prefers-reduced-motion:reduce){.screen.res .res-mascot,.screen.res .res-pool{animation:none!important}}

.screen :is(h1,h2,h3,h4,p,label,.panel-head){text-transform:capitalize}
.screen.res .res-word,.screen.res .res-kicker,.screen.res .res-sub{text-transform:uppercase}
@media(max-width:600px){.screen.res .res-card{flex-direction:column}.screen.res .res-card .sub{display:block}}

.screen.res{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
.screen.res .res-top,.screen.res .res-foot{position:relative;top:auto;bottom:auto}
.screen.res .res-body{overflow:auto;min-height:0}.screen.res .res-grid,.screen.res .res-col{min-height:0}
@media(min-width:1101px){.screen.res .res-body{grid-template-rows:minmax(0,1fr);overflow:hidden}.screen.res .res-stage{min-height:0}.screen.res .res-grid{display:grid;grid-template-rows:auto minmax(0,1fr)}.screen.res .res-grid>.res-col:last-child>.panel{min-height:0}.screen.res .res-table-wrap{min-height:0;max-height:none;overflow:auto;flex:1}.screen.res .res-mascot .res-art{height:clamp(170px,24vh,240px)}.screen.res .res-stage{padding-block:16px}.screen.res .res-word{font-size:clamp(58px,5.6vw,88px)}}
@media(max-width:600px){.screen.res .res-stage{min-height:0;padding:15px 10px;gap:2px}.res-verdict-medal{width:48px;height:48px;border-radius:15px}.res-verdict-medal svg{width:28px}.res-kicker{margin-top:12px;font-size:9px}.screen.res .res-word{font-size:56px}.screen.res .res-mascot .res-art{height:150px}.screen.res .res-card .ord{font-size:32px}.screen.res .res-card{padding:8px;gap:1px}.screen.res .res-card .who{margin:0}.screen.res .res-card .lbl{font-size:8px}.screen.res .res-stage .res-sub{font-size:10px}.screen.res .res-stage .res-earned{margin:4px 0}.screen.res .res-figure{padding-bottom:6px}.screen.res .res-cast{margin-top:0}}

.screen.res .res-grid{grid-template-columns:minmax(0,1fr)}
@media(max-width:1100px){.screen.res .res-body{grid-auto-rows:max-content;align-content:start}.screen.res .res-stage{min-height:480px}.screen.res .res-grid,.screen.res .res-col{min-height:auto}}

/* Pearl rewards: one prominent treasure card, quiet surrounding controls. */
.shop-ad{display:grid;grid-template-columns:118px minmax(0,1fr) auto;align-items:center;gap:24px;margin-top:24px;padding:22px 26px;border:1px solid #69bed4;border-radius:22px;background:radial-gradient(ellipse at 8% 45%,#387b9844,transparent 52%),linear-gradient(115deg,#153f67,#252e67);box-shadow:inset 0 1px 0 #b0edff33,0 6px 0 #091b3b88}
.shop-ad-art{position:relative;display:grid;place-items:center;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle,#89f0f155,#369ab822 55%,transparent 70%)}
.shop-ad-art>svg{width:96px;height:96px;filter:drop-shadow(0 8px 7px #07142c)}.shop-ad-art>span{position:absolute;right:0;bottom:0;color:#153149;background:#ffe080;border:2px solid #fff0b7;border-radius:12px;padding:3px 9px;font:900 22px var(--display)}
.shop-ad-copy h3{font:800 clamp(24px,2.6vw,32px)/1.1 var(--display);color:#efffff;margin:6px 0 8px}.shop-ad-copy p{font:700 15px/1.4 var(--ui);color:#d8f8ff;margin:0 0 7px}.shop-ad-copy small{font:600 12px/1.5 var(--ui);color:#acd7eb;display:block}
.shop-ad-watch{min-height:66px;min-width:174px;justify-content:center;gap:12px!important;flex-shrink:0}.shop-ad-watch>span{display:grid;gap:4px;text-align:center;line-height:1.2}.shop-ad-watch small{font:900 11px/1.2 var(--ui);letter-spacing:.04em}.shop-ad-watch:disabled{filter:none;opacity:.65}.shop-ad-watch:focus-visible{outline:3px solid #fff;outline-offset:5px}
@media(max-width:760px){.shop-ad{grid-template-columns:76px minmax(0,1fr);gap:14px;padding:20px 16px}.shop-ad-art{width:76px;height:84px}.shop-ad-art>svg{width:76px;height:76px}.shop-ad-art>span{font-size:18px}.shop-ad-copy h3{font-size:24px}.shop-ad-copy p{font-size:13px}.shop-ad-watch{grid-column:1/-1;width:100%;min-height:56px}}

/* A deliberate review step before replacing the player's treasure. */
.settings .save-review { margin: 18px; padding: 22px; border: 1px solid #59cab8; border-radius: 18px; background: linear-gradient(145deg,#124d65,#0b283e); }
.settings .save-review h3 { color: #ffda7b; margin: 0 0 12px; }
.settings .save-review p { color: #d5f6f1; line-height: 1.6; overflow-wrap: anywhere; }
.settings .save-review > div { display: flex; flex-wrap: wrap; gap: 12px; }
.settings [hidden] { display: none !important; }
@media(max-width:600px) { .settings .save-review { margin: 10px; padding: 16px; } .settings .save-review .btn { width: 100%; } }

/* Keep section headings consistent without uppercasing player names or input. */
.screen :is(h1,h2,h3,h4,.scr-title,.panel-head,.section-title,.ttl-picker label){text-transform:uppercase}

/* The four match actions share the same height and edge treatment. */
.screen.menu .mn-stack .mn-btn:is([data-act="quick"],[data-act="create"],[data-act="join"],[data-act="tournament"]) { min-height:68px; height:68px; padding-block:10px; border-width:1px; }
@media(max-height:800px) and (min-width:761px) { .screen.menu .mn-stack .mn-btn:is([data-act="quick"],[data-act="create"],[data-act="join"],[data-act="tournament"]) { min-height:55px; height:55px; } }

/* Season-specific surfaces supersede the common blue menu panels. */
.screen.boards.seasonpage .season-voyage { background:radial-gradient(ellipse at 93% 0%,#18c9ad60,transparent 62%),linear-gradient(120deg,#123b72,#12566d);border:1px solid #66e5df80; }
.screen.boards.seasonpage .season-voyage .panel-head { background:#0c405770;color:#d6fff1; }
.screen.boards.seasonpage .season-voyage .panel-head .hd-r { color:#c0ffde; }
.screen.boards.seasonpage .season-rewards { background:linear-gradient(145deg,#163f63,#172e51); }
.screen.boards.seasonpage .season-rewards .panel-head { background:#194c62;color:#beffea; }
.screen.boards.seasonpage .panel-head .hd-r { color:#cbefea; }
.screen.boards.seasonpage .title-spotlight { background:linear-gradient(145deg,#363163,#193b5b); }
.screen.boards.seasonpage .title-spotlight h3 { color:#ffe2a3;font:800 26px/1.15 var(--display);margin:10px 0; }
.screen.boards.seasonpage .title-spotlight p { color:#d3daed;font:600 12px/1.6 var(--ui); }
.screen.boards.seasonpage .title-medal { display:grid;place-items:center;width:80px;height:80px;border-radius:50%;margin:18px auto;background:radial-gradient(circle,#776040,#292543);border:2px solid #ecca72;box-shadow:inset 0 0 0 5px #282d50; }
@media(max-width:860px) {
 .screen.boards.seasonpage .bd-rail { flex-wrap:nowrap;overflow-x:auto;gap:8px;max-width:100%;padding-bottom:8px; }
 .screen.boards.seasonpage .bd-rail .bd-tab { flex:0 0 auto;min-height:44px;padding:9px 12px;font-size:11px; }
 .screen.boards.seasonpage .bd-rail .bt-ico { width:17px;height:17px; }
 .screen.boards.seasonpage .bd-head { gap:9px; }
 .screen.boards.seasonpage .bd-head .chip { font-size:9px;padding:6px; }
 .screen.boards.seasonpage .bd-head .scr-title { font-size:25px; }
 .screen.boards.seasonpage .season-voyage .bh-row { align-items:flex-start; }
 .screen.boards.seasonpage .season-voyage .bh-art { width:64px;flex-basis:64px;height:80px;min-height:80px; }
 .screen.boards.seasonpage .season-voyage .bh-row > div { min-width:0; }
 .screen.boards.seasonpage .season-voyage .bh-row h3 { font-size:26px; }
 .screen.boards.seasonpage .season-voyage .bh-chips { display:none; }
 .screen.boards.seasonpage .bd-status .st:first-child { display:none; }
 .screen.boards.seasonpage .bd-side { display:none; }
}

.screen.boards.seasonpage .sp-tier { flex-shrink:0; }
@media(max-width:860px) {
 .screen.boards.seasonpage .bd-body { display:flex;flex-direction:column;align-items:stretch;gap:12px; }
 .screen.boards.seasonpage .bd-rail,.screen.boards.seasonpage .bd-main { flex:0 0 auto;max-height:none; }
}
@media(max-width:640px) { .screen.boards.seasonpage .sp-tier { min-height:118px; } }
/* Action-based placement survives changes to the menu order. */
.screen.menu .mn-stack .mn-btn[data-act]{grid-column:auto}
.screen.menu .mn-stack .mn-btn:is([data-act="play"],[data-act="tournament"],[data-act="season"]){grid-column:1/-1}
.screen.menu .mn-stack .mn-btn:is([data-act="tournament"],[data-act="season"]){height:68px;min-height:68px;padding:10px 16px;gap:12px;border-width:1px}
.screen.menu .mn-stack .mn-btn:is([data-act="tournament"],[data-act="season"]) .mn-action-copy strong{font-size:22px}
.screen.menu .mn-stack .mn-btn:is([data-act="tournament"],[data-act="season"]) .mn-action-copy small{display:block;font-size:11px}
.screen.menu .mn-stack .mn-btn:is([data-act="tournament"],[data-act="season"]) .mn-action-icon{flex-basis:28px;color:#ffe08a}
.screen.menu .mn-stack .mn-btn:is([data-act="tournament"],[data-act="season"]) .mn-action-arrow{display:block}
.screen.menu .mn-stack .mn-btn:is([data-act="create"],[data-act="join"]){gap:7px;padding:10px;min-width:0}
.screen.menu .mn-stack .mn-btn:is([data-act="create"],[data-act="join"]) .mn-action-copy strong{font-size:15px}
.screen.menu .mn-stack .mn-btn:is([data-act="create"],[data-act="join"]) .mn-action-copy small,.screen.menu .mn-stack .mn-btn:is([data-act="create"],[data-act="join"]) .mn-action-arrow{display:none}
@media(max-height:800px) and (min-width:761px){.screen.menu .mn-stack .mn-btn:is([data-act="tournament"],[data-act="season"]){height:55px;min-height:55px}}
