[hidden]{display:none!important}
:root{color-scheme:dark;--gold:#d8b76d;--muted:#a8a7b9;font-family:Inter,system-ui,sans-serif;background:#0b0c13;color:#f3f0e8}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 10% 0,#32213c55,transparent 55%),radial-gradient(ellipse at 100% 30%,#0a385633,transparent 50%),#0b0c13;min-height:100vh}a{color:inherit;text-decoration:none}header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px max(20px,calc((100vw - 1150px)/2));border-bottom:1px solid #ffffff12;background:#0b0c13ed;position:sticky;top:0;z-index:5}.identity{display:flex;gap:15px;align-items:center}.identity span{max-width:230px;font-size:11px;letter-spacing:2px;line-height:1.6}.logo{font-size:42px;letter-spacing:-7px;padding-right:7px;background:linear-gradient(135deg,#fff0bc,#bd8e36 40%,#fff 55%,#8b97ac);background-clip:text;color:transparent;text-shadow:0 8px 28px #d7b76822}nav{display:flex;gap:6px}nav a{font-size:13px;padding:10px;border-radius:10px}nav a:hover,nav a.current{color:var(--gold);background:#ffffff08}main{max-width:1150px;margin:auto;padding:35px 22px;min-height:75vh}h1{font-size:clamp(32px,5vw,60px);line-height:1.08;letter-spacing:-1.8px;margin:15px 0 24px}h2{font-size:25px;letter-spacing:-.5px}h3{margin-top:0}p{color:var(--muted);line-height:1.7}.eyebrow{text-transform:uppercase;letter-spacing:3px;color:var(--gold);font-size:11px;font-weight:700}.hero{padding:25px 0 40px;max-width:730px}.hero p{font-size:18px;max-width:590px}.two,.grid{display:grid;gap:20px}.two{grid-template-columns:1fr 1fr}.grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.panel,.card{border:1px solid #ffffff15;border-radius:22px;background:linear-gradient(135deg,#20202c,#12141f);padding:25px}.portal{min-height:280px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.portal::before{content:'PN';font-size:160px;font-weight:950;position:absolute;right:16px;top:5px;opacity:.035;letter-spacing:-20px;transform:rotate(-10deg)}.store{background:linear-gradient(135deg,#42231e,#1c1720 70%);border-color:#b5603833}.play{background:linear-gradient(135deg,#252045,#112433);border-color:#7870c333}.portal h2{font-size:32px;margin:14px 0 4px}.portal p{max-width:350px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.between{justify-content:space-between}.space{margin-top:22px}.muted,small{color:var(--muted);font-size:13px}.pill{display:inline-block;background:#ffffff0b;border:1px solid #ffffff10;border-radius:30px;padding:6px 12px;font-size:11px;color:#d7d2e5}.price{font-size:28px;color:var(--gold);font-weight:750}button,.button{font:inherit;font-weight:700;font-size:13px;background:var(--gold);color:#18140b;border:1px solid transparent;border-radius:11px;padding:12px 17px;cursor:pointer;display:inline-block}button:hover,.button:hover{filter:brightness(1.1)}button:disabled{opacity:.4;cursor:default}.secondary{background:#ffffff07;border-color:#ffffff20;color:#e9e2d3}.danger{background:#622830;color:white}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.chips button{font-size:12px}.chips button.active{background:var(--gold);color:#18140b}.product-image{width:100%;height:170px;object-fit:cover;border-radius:13px;margin-bottom:18px}.product-icon{height:100px;display:grid;place-items:center;font-size:40px;background:radial-gradient(ellipse,#5b3f6833,transparent);margin-bottom:16px}.notice{background:#ffffff07;border-left:3px solid var(--gold);padding:16px;border-radius:9px;color:#d6d0dd;line-height:1.6}.empty{padding:30px;color:var(--muted);border:1px dashed #ffffff20;border-radius:15px}label{display:block;font-size:12px;color:#cbc5d3;margin:15px 0 6px}input,textarea,select{width:100%;padding:12px;background:#0c0e18;color:#f1edf7;border:1px solid #ffffff24;border-radius:10px;font:inherit}textarea{min-height:80px}input[type=checkbox]{width:auto}.check{display:flex;gap:8px;align-items:center}.check input{width:auto}form button{margin-top:18px}dialog{border:1px solid #77708055;background:#151722;color:inherit;border-radius:20px;width:min(600px,94vw);padding:28px;max-height:90dvh}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.close{float:right;font-size:22px;padding:2px 10px}#toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background:#e8d4a3;color:#20190c;padding:16px 24px;border-radius:12px;max-width:90vw;z-index:20;box-shadow:0 12px 40px #0008}footer{text-align:center;padding:25px;color:#767589;font-size:11px}.bingo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.cell{aspect-ratio:1;display:grid;place-items:center;border-radius:8px;background:#ffffff08;font-weight:700;font-size:16px}.cell.hit{background:var(--gold);color:#19140b}.cell.heading{background:none;color:var(--gold)}.globe{border:2px solid #b6a8e23a;border-radius:50%;width:160px;height:160px;display:grid;place-items:center;font-size:62px;margin:15px auto;background:radial-gradient(circle at 30% 25%,#605179,#191726 70%);box-shadow:inset -10px -10px 20px #0005,0 0 50px #8570ba22}.globe.spinning{animation:pulse 1.8s infinite}.numbers{display:flex;gap:5px;flex-wrap:wrap;margin-top:15px;max-height:150px;overflow:auto}.numbers span{border-radius:50%;background:#ffffff0a;padding:7px;font-size:12px;min-width:29px;text-align:center}.winner{border:1px solid var(--gold);padding:20px;border-radius:16px;background:#3c3023}.memory{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-width:450px}.memory button{aspect-ratio:1;font-size:29px;background:#24253a;color:#e7d3a1}.memory button.revealed{background:#4f4160}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}td,th{text-align:left;padding:12px;border-bottom:1px solid #ffffff13;white-space:nowrap}canvas{width:100%;max-width:850px;aspect-ratio:2/1;background:#145548;border:12px solid #4e3022;border-radius:24px;touch-action:none}.admin-layout{display:grid;grid-template-columns:190px 1fr;gap:25px}.side{display:flex;flex-direction:column;gap:7px}.side button{text-align:left}.count{font-size:32px;color:var(--gold)}.stack>*+*{margin-top:12px}.round-row{display:grid;grid-template-columns:140px 1fr auto;gap:8px;margin-top:12px}.record{padding:16px 0;border-bottom:1px solid #ffffff15}.stop-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@keyframes pulse{50%{box-shadow:inset -10px -10px 20px #0005,0 0 60px #8570ba66;transform:rotate(4deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}@media(max-width:700px){header{padding:12px 18px}.identity span{font-size:9px}nav{position:fixed;bottom:0;left:0;right:0;background:#11131ff5;border-top:1px solid #ffffff18;justify-content:space-around;padding:8px 4px;padding-bottom:max(8px,env(safe-area-inset-bottom));z-index:10}nav a{padding:12px 8px;font-size:12px}main{padding:24px 16px}.two{grid-template-columns:1fr}.portal{min-height:245px}.hero{padding:15px 0 25px}.hero p{font-size:16px}.admin-layout{grid-template-columns:1fr}.side{flex-direction:row;overflow:auto}.side button{flex-shrink:0}footer{padding-bottom:100px}.round-row{grid-template-columns:1fr}.panel,.card{padding:20px}h1{letter-spacing:-1px}.stop-fields{grid-template-columns:1fr}}
figure{margin:0}figcaption{font-size:12px;color:var(--muted);line-height:1.5;margin:7px 0 16px}.page-banner{margin-bottom:28px}.page-banner img{width:100%;max-height:420px;object-fit:cover;border-radius:18px}.preview-image{max-height:160px;max-width:100%;border-radius:12px;margin:14px 0}.page-intro{max-width:740px}.uploadPreview{min-height:1px}#roomGame{overflow:hidden}#roomGame td{white-space:normal;min-width:140px}#roomGame input{min-width:0}.side{max-width:100%}main>p,main>div{min-width:0}@media(max-width:700px){.page-banner img{max-height:230px}.admin-layout>section{min-width:0}.stop-fields input{width:100%}}
.page-banner img{object-fit:contain;background:#0b0c13}
/* PN · atualização móvel, bingo e NP */
.service-icons{display:flex;gap:16px;margin-top:20px;flex-wrap:wrap;color:#cbb47d}.service-icons span{display:flex;align-items:center;gap:5px;font-size:11px}.service-icons svg{width:20px;height:20px}.delivery-text{white-space:pre-wrap;overflow-wrap:anywhere;background:#0c1019;border:1px solid #dbc08022;border-radius:14px;padding:18px;font:inherit;line-height:1.7}.pix-qr{display:block;width:240px;max-width:90%;margin:20px auto;border:12px solid #fff;border-radius:14px;background:#fff}.bingo-lounge{background:radial-gradient(ellipse at 50% 15%,#59417b77,transparent 60%),linear-gradient(145deg,#161924,#100d19);border-color:#ccb27c55;box-shadow:0 18px 65px #0008,inset 0 1px #e9c89044;position:relative;overflow:hidden}.bingo-lounge h2{color:#f3dba2}.bingo-orbit{height:290px;position:relative;display:grid;place-items:center;margin:20px auto;width:280px;max-width:100%}.bingo-orbit:before{content:'';position:absolute;width:230px;height:230px;border:2px solid #d6ad6588;border-radius:50%;box-shadow:0 0 45px #b7955722,inset 0 0 25px #9b80df22}.bingo-orbit i{position:absolute;width:140px;height:250px;border:1px solid #efc57e77;border-radius:50%;transform:rotate(43deg);pointer-events:none}.bingo-orbit i+i{transform:rotate(-43deg)}.bingo-orbit .globe{position:relative;z-index:1;width:175px;height:175px;margin:0;background:radial-gradient(circle at 32% 25%,#f5dfa7,#c49a4d 48%,#76502e 95%);border:1px solid #ffe2a1;color:#291c0e;box-shadow:inset -14px -20px 25px #0006,0 0 40px #e3b46933;display:flex;flex-direction:column;gap:4px}.globe small{font-size:9px;letter-spacing:1px;color:#4d361d;font-weight:800}.globe strong{font-size:65px;line-height:1}.bingo-history span{background:radial-gradient(circle at 30% 20%,#dfbb76,#916329);color:#17110b;font-weight:800;box-shadow:inset -2px -3px 3px #0004;min-width:34px;text-align:center}.number-board{display:grid;grid-template-columns:repeat(15,1fr);gap:5px;margin:18px 0}.number-board span{background:#ffffff06;border:1px solid #ffffff0e;border-radius:8px;padding:7px 2px;text-align:center;font-size:11px;color:#767384}.number-board span.hit{color:#19130b;background:#dfbb76;font-weight:800;box-shadow:0 0 12px #dfbb7622}.bingo-grid .cell{border:1px solid #dab57720;box-shadow:inset 0 0 20px #dab57705}.bingo-grid .hit{box-shadow:0 0 14px #dab57733}.table-stage{background:radial-gradient(ellipse at center,#33253b,#0c0a12);border:1px solid #bb965d77;border-radius:26px;box-shadow:0 16px 60px #0009,0 0 35px #9e60c622;overflow:auto;max-width:100%;padding:4px}.table-stage canvas{display:block;width:100%;max-width:none;aspect-ratio:1000/580;border:0;border-radius:20px;background:transparent;touch-action:none}.table-stage:fullscreen{width:100vw;height:100vh;display:grid;place-items:center;background:#080b12;border:0;border-radius:0;padding:0}.table-stage:fullscreen canvas{width:min(100vw,172.4vh);min-width:0;max-height:100vh}details{margin:20px 0;color:#b5b2c2}summary{color:#e6c98d;cursor:pointer}.number-board+small{display:block}html{scroll-padding-top:100px}@media(max-width:700px){.number-board{grid-template-columns:repeat(10,1fr)}.table-stage canvas{min-width:640px}.table-stage:fullscreen canvas{min-width:0}header .identity span{font-size:9px;letter-spacing:1px;max-width:240px}nav a{white-space:nowrap;font-size:11px;padding:10px 7px}nav{min-height:58px}.bingo-orbit{height:260px}.bingo-orbit:before{width:220px;height:220px}.bingo-orbit i{height:235px}.bingo-grid .cell{font-size:19px}}
/* PlayOn NP: scoreboard remains visible with the fullscreen table. */
.np-scoreboard{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px;background:linear-gradient(125deg,#21182e,#10101d);border-bottom:1px solid #d8b97455}.np-player{min-width:0;padding:10px 12px;border:1px solid #ffffff22;border-radius:14px;background:#11101c}.np-player.is-turn{border-color:var(--player-color);box-shadow:inset 0 0 20px #ffffff08,0 0 14px #d8b97422}.np-player-heading{display:flex;justify-content:space-between;gap:8px;align-items:center}.np-player-heading strong{color:var(--player-color);overflow-wrap:anywhere}.np-player-heading span{font-size:12px;white-space:nowrap}.np-player.is-turn .np-player-heading span{color:#ffe6a1;font-weight:800}.np-group{font-size:12px;color:#c4bed2;margin:4px 0 7px}.np-balls{display:flex;gap:5px;min-height:27px;flex-wrap:wrap;align-items:center}.np-balls small{font-size:11px;color:#bdb5ca}.np-ball{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffffff66,transparent 50%),var(--ball);box-shadow:inset -3px -4px 5px #0008,0 2px 3px #0007;flex:none}.np-ball.striped{background:linear-gradient(#eee9d8 0 24%,var(--ball) 24% 76%,#eee9d8 76%)}.np-ball b{display:grid;place-items:center;background:#fff4dc;color:#171322;border-radius:50%;width:15px;height:15px;font:800 10px system-ui}.np-table-level{grid-column:1/-1;text-align:right;font-size:10px;letter-spacing:1.5px;color:#d8b974}.table-stage.np-match:fullscreen{display:flex;flex-direction:column;justify-content:center;overflow:hidden}.np-match:fullscreen .np-scoreboard{width:100%;box-sizing:border-box;flex:none}.table-stage.np-match:fullscreen canvas{min-width:0;width:auto;max-width:100%;max-height:calc(100dvh - 135px);height:auto;object-fit:contain;aspect-ratio:1000/580;flex:0 1 auto}.np-match canvas{cursor:crosshair}
@media(max-width:700px){.np-scoreboard{gap:6px;padding:8px}.np-player{padding:7px}.np-player-heading{display:block}.np-player-heading strong{font-size:14px}.np-player-heading span{display:block;font-size:11px}.np-balls{gap:3px}.np-ball{width:22px;height:22px}.table-stage.np-match canvas{min-width:0;width:100%}}
@media(orientation:landscape) and (max-height:600px){.np-scoreboard{padding:5px 12px;gap:4px 12px}.np-player{padding:4px 9px}.np-player-heading{display:flex}.np-group{margin:2px 0}.np-table-level{font-size:9px}.table-stage.np-match:fullscreen canvas{max-height:calc(100dvh - 113px)}.np-match:fullscreen .np-player-heading strong{font-size:14px}}
/* Fit the whole table; portrait uses a rotated drawing and matching touch coordinates. */
.table-stage{overflow:hidden!important;min-width:0;max-width:100%;padding:4px}.np-viewport{position:relative;width:100%;aspect-ratio:1000/580;min-width:0;overflow:hidden}.table-stage .np-viewport canvas{display:block!important;width:100%!important;height:100%!important;min-width:0!important;max-width:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:fill}.np-practice-label{padding:10px 12px;background:#171223;display:flex;gap:8px;flex-wrap:wrap}.np-practice-label strong{color:#f1cc7a}.np-practice-label span{font-size:12px;color:#c5bfd4}.table-stage:fullscreen,.table-stage.np-match:fullscreen{display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;padding:0;width:100vw;height:100dvh}.table-stage:fullscreen .np-viewport{width:min(100vw,calc((100dvh - 145px)*1.7241379));flex:none}.table-stage:fullscreen .np-practice-label,.table-stage:fullscreen .np-scoreboard{width:100%;flex:none}.np-scoreboard{flex:none}
@media(max-width:700px) and (orientation:portrait){header{position:relative}main{padding:18px 12px}.np-viewport{aspect-ratio:580/1000}.table-stage:fullscreen .np-viewport{width:min(100vw,calc((100dvh - 170px)*.58))}.np-player-heading strong{font-size:13px}.np-scoreboard{gap:4px;padding:6px}.np-player{padding:6px}.np-ball{width:21px;height:21px}.np-balls{gap:2px}.np-table-level{letter-spacing:1px}}
@media(orientation:landscape) and (max-height:600px){.table-stage:fullscreen .np-viewport{width:min(100vw,calc((100dvh - 120px)*1.7241379))}.np-practice:fullscreen .np-viewport{width:min(100vw,calc((100dvh - 52px)*1.7241379))}}

.np-victory{grid-column:1/-1;text-align:center;padding:10px;border:1px solid #f1cc7a;border-radius:12px;background:linear-gradient(120deg,#49325b,#262139);color:#ffe6a1;font-weight:800;font-size:clamp(13px,3vw,20px)}.np-match:fullscreen:has(.np-victory) .np-viewport{width:min(100vw,calc((100dvh - 205px)*1.7241379))}@media(max-width:700px) and (orientation:portrait){.np-match:fullscreen:has(.np-victory) .np-viewport{width:min(100vw,calc((100dvh - 225px)*.58))}}

.np-clock{display:inline-block;white-space:nowrap;font-size:14px;font-weight:850;font-variant-numeric:tabular-nums;color:#ffe6a1;padding:3px 6px;border-radius:6px;background:#ffffff10}.np-clock.urgent{color:#ff7c85;background:#8d132b55;outline:1px solid #ff7c85}

.np-viewport{margin-left:auto;margin-right:auto;flex:none}.np-player-heading{flex-wrap:wrap}.np-clock{max-width:100%;font-size:12px}.np-match{scroll-margin-top:8px;scroll-margin-bottom:calc(80px + env(safe-area-inset-bottom))}

.np-table-picker{margin:18px 0 22px}.np-table-picker h3{font-size:16px;margin:0 0 12px;color:#eee7d8}.np-table-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:660px}.np-table-option{min-width:0;background:#131720;border:1px solid #ffffff25;color:#eee7d8;padding:10px;border-radius:14px;text-align:left;display:flex;flex-direction:column;gap:8px}.np-table-option[aria-pressed=true]{border-color:#e8cc87;box-shadow:0 0 0 1px #e8cc8755;background:#24231e}.np-table-option>span:not(.np-table-mini){font-size:13px}.np-table-selected{font-size:10px;color:#b5b9c2}.np-table-option[aria-pressed=true] small{color:#f1d697}.np-table-mini{display:grid;place-items:center;position:relative;width:100%;aspect-ratio:1.85;border:10px solid var(--rail);border-radius:13px;background:radial-gradient(ellipse at 40% 30%,#ffffff12,transparent),var(--felt);box-shadow:inset 0 0 0 2px #0006,0 3px 8px #0005;overflow:hidden}.np-table-mini:before,.np-table-mini:after{content:'';position:absolute;top:-4px;bottom:-4px;width:12px;background:radial-gradient(circle at center,#080a0c 0 5px,transparent 6px);background-size:12px 100%}.np-table-mini:before{left:-4px}.np-table-mini:after{right:-4px}.np-table-mini i{position:absolute;left:24%;top:46%;width:7px;height:7px;border-radius:50%;background:#fff8dc;box-shadow:0 2px 2px #0008}.np-table-mini b{font:700 20px serif;color:#ffffff25}@media(max-width:700px){.np-table-options{gap:6px}.np-table-option{padding:6px;gap:6px}.np-table-option>span:not(.np-table-mini){font-size:11px}.np-table-selected{font-size:9px}.np-table-mini{border-width:7px;border-radius:9px}.np-table-mini b{font-size:16px}}

.stop-outcome{margin:16px 0;padding:18px}.stop-outcome h2{font-size:clamp(20px,5vw,28px);overflow-wrap:anywhere}.stop-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.stop-totals>div{display:flex;flex-direction:column;gap:8px;padding:14px;background:#ffffff09;border:1px solid #d8b76d55;border-radius:12px;overflow-wrap:anywhere}.stop-totals b{font-size:24px;color:#f1d28a}
/* New friend games: scoped styles only. */
.friend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:28px}.friend-card{display:flex;flex-direction:column;gap:10px;padding:20px;border:1px solid #a584504d;border-radius:18px;background:linear-gradient(135deg,#30213c,#15121c);text-decoration:none}.friend-card>span{font-size:32px}.friend-card small{color:#c9b995}.fg-score{display:flex;flex-wrap:wrap;gap:8px}.fg-score>div{display:flex;flex:1;min-width:120px;flex-direction:column;padding:12px;border:1px solid #ffffff24;border-radius:12px}.fg-score b{font-size:14px}.fg-active{border-color:var(--gold)!important;background:#bfa56815}.fg-domino-chain{display:flex;flex-wrap:wrap;gap:4px;min-height:70px;padding:16px;background:#173e35;border-radius:12px}.fg-tile{display:inline-flex;align-items:center;background:#f1e9d6!important;color:#252028!important;border:1px solid #bca77e!important;border-radius:6px;padding:10px;font-weight:800;font-size:20px}.fg-hand{display:flex;flex-wrap:wrap;gap:8px}.fg-hand button{width:65px;height:95px;font-size:25px;color:white;border:3px solid #ffffff90;border-radius:12px}.fg-card-top{width:105px;min-height:130px;margin:auto;text-align:center;padding:20px;border:3px solid white;border-radius:14px;font-size:36px;font-weight:bold}.fg-card-top small{display:block;font-size:13px}.fg-checkers{display:grid;grid-template-columns:repeat(8,1fr);width:min(100%,520px);margin:auto;border:8px solid #68472e}.fg-checkers button{padding:0;border:0;border-radius:0;aspect-ratio:1;min-width:0;display:grid;place-items:center}.fg-checkers .dark{background:#72513a}.fg-checkers .light{background:#e3cfa3}.fg-checkers button.selected{outline:4px solid gold;outline-offset:-4px}.fg-piece{display:grid;place-items:center;width:76%;height:76%;border-radius:50%;box-shadow:inset 0 0 0 3px #ffffff35,0 3px 3px #0008;font-size:24px}.fg-piece.white{background:#f5ecd8;color:#594126}.fg-piece.black{background:#252535;color:#f6db99}.fg-naval{display:grid;grid-template-columns:repeat(10,1fr);max-width:440px;border:1px solid #4b7fba;margin-top:12px}.fg-naval>*{aspect-ratio:1;display:grid;place-items:center;border:1px solid #46709a;border-radius:0;padding:0;background:#142d4b;font-size:18px;min-width:0}.fg-naval .ship{background:#6d7b88}.fg-naval .hit,.fg-naval .ship.shot{background:#9a3947}.fg-ludo{display:grid;grid-template:repeat(14,1fr)/repeat(14,1fr);aspect-ratio:1;max-width:550px;margin:auto;background:#29243c;gap:1px;border:4px solid #bba065;border-radius:8px}.fg-ludo-cell{position:relative;background:#e6d9b9;color:#292332;font-size:9px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center}.fg-ludo-cell.safe{background:#c3ac6d}.fg-ludo-cell i{font-size:9px;font-style:normal;border-radius:30%;padding:1px;color:#10222c}.fg-ludo-center{grid-area:3/3/13/13;display:flex;flex-direction:column;justify-content:center;text-align:center;gap:12px;background:radial-gradient(#573d72,#211b30)}.fg-ludo-center strong{font-size:38px}.fg-ludo-center span{font-size:12px}#friendBoard button:disabled{opacity:.65;cursor:default}@media(max-width:500px){#friendBoard{padding:12px}.fg-hand button{width:52px;height:76px;font-size:21px}.fg-score>div{min-width:100px}.friend-grid{grid-template-columns:repeat(2,1fr)}}
.fg-ludo{grid-template:repeat(15,1fr)/repeat(15,1fr);background:#e2d3b2}.fg-ludo-center{grid-area:7/7/10/10;gap:0;color:white}.fg-ludo-center b{font-size:10px}.fg-ludo-center strong{font-size:20px}.fg-ludo-base{background:var(--base);border:6px solid #0002;margin:2px;border-radius:12px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;overflow:hidden;color:#14202e}.fg-ludo-base b{font-size:clamp(9px,2vw,14px);max-width:90%;overflow:hidden;text-overflow:ellipsis}.fg-ludo-base span{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.fg-ludo-base i{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#fff9;font-style:normal;font-weight:bold}.fg-ludo-cell i{background:#fff9;border:1px solid #314153}.fg-ludo-cell{font-size:8px}

/* Modos visíveis e corrente contínua de dominó no celular. */
.game-modes{display:flex;flex-wrap:wrap;gap:12px;border:1px solid #a5845055;border-radius:12px;padding:14px;margin:12px 0}.game-modes label{display:flex;align-items:center;gap:8px;flex:1;min-width:180px;cursor:pointer}.game-modes input{width:auto;accent-color:var(--gold)}.fg-domino-chain{flex-wrap:nowrap;gap:0;align-items:center;overflow-x:auto;max-width:100%;box-sizing:border-box}.fg-domino-chain .fg-tile{flex:0 0 auto;white-space:nowrap;margin:0;border-radius:3px;box-shadow:inset 0 0 0 1px #fff7}.fg-domino-chain:focus-visible{outline:2px solid var(--gold)}

.domino-outside-score{display:none}.domino-arena{position:relative;isolation:isolate;border:14px solid #64402c;border-radius:80px;background:radial-gradient(ellipse at 45% 38%,#188a60,#07533c 75%);box-shadow:0 0 0 3px #261c23,0 0 0 6px #936341,inset 0 0 0 3px #d4a66a55,inset 0 8px 22px #001e18b0,0 14px 28px #0006;margin:20px 6px 14px;overflow:hidden}.domino-surface{display:block;width:100%;height:auto;filter:drop-shadow(0 2px 1px #0006)}.domino-seats{position:absolute;inset:12px 18px;display:grid;grid-template-columns:1fr 1fr;align-content:space-between;gap:8px;pointer-events:none;z-index:1}.domino-seat{display:flex;align-items:center;gap:6px;max-width:140px;padding:4px 7px;background:#102b34e8;border:1px solid #b7a47766;border-radius:22px;color:#fff}.domino-seat:nth-child(even){justify-self:end}.domino-seat strong,.domino-seat small{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:90px}.domino-seat small{font-size:10px;color:#d5d9cb}.domino-avatar{display:grid;place-items:center;flex:0 0 26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#d9bc7c,#695033);font-weight:800;color:#182629}.domino-seat.on-turn{border-color:#f6ce6c;box-shadow:0 0 9px #efc55c66}.domino-stock{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);font-size:11px;color:#ead5a2}.domino-tip{text-align:center;font-size:13px}.domino-hand{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;padding:8px;background:#18151d;border-radius:12px}.domino-hand .domino-piece{padding:0!important;width:34px;height:66px;min-width:34px;background:#f4edd5;border:1px solid #b7a67d;border-radius:5px;box-shadow:0 3px 0 #8d8062;display:grid;place-items:center}.domino-piece svg{width:62px;height:34px;transform:rotate(90deg);pointer-events:none}.domino-piece:not(:disabled):hover{transform:translateY(-4px);outline:2px solid #efcb79}@media(max-width:500px){.domino-arena{border-width:10px;border-radius:52px;margin:14px 3px}.domino-seats{inset:8px 9px}.domino-seat{padding:3px 5px;gap:4px;max-width:120px}.domino-avatar{flex-basis:22px;height:22px}.domino-seat strong{max-width:74px;font-size:10px}.domino-seat small{font-size:9px}.domino-hand{gap:5px}.domino-hand .domino-piece{width:30px;min-width:30px;height:58px}.domino-piece svg{width:56px;height:30px}}
.domino-hand .domino-piece{position:relative;overflow:hidden}.domino-piece svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}

.domino-hand .domino-piece{width:40px;min-width:40px;height:76px}.domino-piece svg{width:72px;height:40px}@media(max-width:500px){.domino-hand .domino-piece{width:36px;min-width:36px;height:68px}.domino-piece svg{width:64px;height:36px}}

.domino-game-icon{display:inline-block;width:64px;height:64px;object-fit:contain;vertical-align:middle}.friend-card>span:has(.domino-game-icon){height:64px}h1 .domino-game-icon{width:52px;height:52px;margin-right:6px}

.domino-hand .domino-piece.domino-playable{border-color:#ffe38a!important;outline:2px solid #ffdb67;outline-offset:1px;box-shadow:0 0 9px 3px #ffd35e99,0 3px 0 #aa7e32!important;transform:translateY(-3px)}

.fg-hand button.color-playable{border-color:#ffe38a;outline:2px solid #ffdb67;outline-offset:1px;box-shadow:0 0 9px 3px #ffd35e99;transform:translateY(-3px)}
/* Ludo clássico: tabuleiro e peões interativos */
#friendBoard.ludo-panel{padding:clamp(8px,2.5vw,24px);border:1px solid #3971bd;background:radial-gradient(circle at 30% 10%,#3b62a4,#142b62);box-shadow:inset 0 0 65px #07153780;border-radius:22px;max-width:710px;margin:18px auto}.ludo-arena{max-width:620px;margin:auto;background-image:radial-gradient(#071c4938 2px,transparent 2px);background-size:19px 19px;padding:4px}.ludo-room>.fg-score{display:none}.ludo-seats{display:flex;justify-content:space-between;gap:10px;margin:10px 0 14px}.ludo-seats:nth-of-type(3){margin:14px 0 8px}.ludo-seat{display:flex;align-items:center;gap:8px;min-width:0;max-width:48%;padding:6px;border:2px solid transparent;border-radius:12px;color:white}.ludo-seat.ludo-turn{border-color:#ffe97b;background:#0a1c4e66;box-shadow:0 0 12px #ffdf583d}.ludo-avatar{width:38px;height:38px;border:2px solid #fff;border-radius:10px;background:linear-gradient(145deg,#fff8,transparent),var(--pawn);box-shadow:0 3px 0 #0007;display:grid;place-items:center;font-weight:900;flex-shrink:0}.ludo-seat strong,.ludo-seat small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ludo-seat>span:last-child{min-width:0}.ludo-seat strong{font-size:14px}.ludo-seat small{font-size:10px;color:#d5e1ff;margin-top:3px}.fg-ludo{isolation:isolate;grid-template:repeat(15,minmax(0,1fr))/repeat(15,minmax(0,1fr));width:100%;max-width:none;gap:0;background:#fff;border:2px solid #0f2445;border-radius:18px;overflow:hidden;box-shadow:0 7px 0 #07152b99,0 12px 22px #0005}.fg-ludo-base{margin:0;border:0;border-radius:0;gap:0;background:var(--base);box-shadow:inset 0 0 0 2px #0002}.ludo-nest{width:70%;height:70%;background:#fff;border:2px solid #0004;border-radius:12%;box-shadow:0 2px 5px #0004;display:grid;grid-template:repeat(2,1fr)/repeat(2,1fr);gap:15%;padding:13%}.ludo-slot{position:relative;background:#d4d6d7;box-shadow:inset 0 2px 2px #0002;border-radius:50%;display:grid;place-items:center;min-width:0;min-height:0}.fg-ludo-cell{position:relative;overflow:visible;border:1px solid #b6bdc8;background:#fff;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;gap:0}.fg-ludo-cell.safe{color:#fff}.ludo-star{position:absolute;font-size:clamp(12px,3.5vw,25px);line-height:1;pointer-events:none}.fg-ludo-center{grid-area:7/7/10/10;background:conic-gradient(from -45deg,#12af45 0 90deg,#ffcf00 90deg 180deg,#078ff0 180deg 270deg,#f12635 270deg);box-shadow:inset 0 0 0 1px #0003;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0;position:relative}.ludo-pawn{position:relative;display:block;flex-shrink:1;width:75%;height:95%;min-width:0;min-height:0;margin:0;padding:0!important;background:transparent!important;border:0!important;border-radius:40%;box-shadow:none!important;z-index:2;overflow:visible;cursor:pointer;filter:drop-shadow(1px 3px 1px #0007)}.ludo-pawn span{position:absolute;left:20%;bottom:9%;width:60%;height:65%;border-radius:45% 45% 42% 42%;background:radial-gradient(ellipse at 27% 27%,#ffffffb8,transparent 45%),linear-gradient(90deg,#0006,var(--pawn) 38%,var(--pawn) 62%,#0007);box-shadow:inset 0 -2px 1px #0005;pointer-events:none}.ludo-pawn span:before{content:'';position:absolute;top:-29%;left:17%;width:66%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 32% 25%,#fff,var(--pawn) 42%,#0009 100%);box-shadow:0 1px 1px #0005}.ludo-pawn span:after{content:'';position:absolute;bottom:-3%;left:-10%;width:120%;height:20%;border-radius:50%;background:var(--pawn);box-shadow:inset 0 -2px 1px #0005}.ludo-slot .ludo-pawn{width:100%;height:125%;transform:translateY(-10%)}#friendBoard .ludo-pawn:disabled{opacity:1;cursor:default}.fg-ludo-cell:has(.ludo-pawn:nth-of-type(2)) .ludo-pawn{width:42%}.fg-ludo-center .ludo-pawn{width:22%;height:42%}.ludo-playable:after{content:'';position:absolute;inset:-8%;border:2px solid #ffed75;border-radius:45%;background:#ffffaa20;box-shadow:0 0 10px #ffdf68;pointer-events:none}.ludo-pawn:focus-visible{outline:3px solid #fff;outline-offset:1px}.ludo-controls{display:flex;justify-content:center;align-items:center;gap:18px;padding:15px 0 7px;color:white}.ludo-controls strong,.ludo-controls small{display:block}.ludo-controls strong{font-size:15px}.ludo-controls small{font-size:12px;color:#d6e2ff;margin-top:5px}.ludo-dice{display:grid;grid-template:repeat(3,1fr)/repeat(3,1fr);gap:4px;width:66px;height:66px;border:3px solid #c9cfda!important;padding:9px!important;border-radius:14px;background:linear-gradient(145deg,#fff,#dbe1ea)!important;box-shadow:0 5px 0 #7a879f,0 7px 12px #0005;color:#15212e}.ludo-dice i{border-radius:50%;background:transparent;min-width:0}.ludo-dice i.pip{background:#15212e;box-shadow:inset 0 1px 1px #0009}#friendBoard .ludo-dice:disabled{opacity:1}.ludo-roll-ready{outline:2px solid #ffdf68;outline-offset:4px}.ludo-dice:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px 0 #7a879f}@media(max-width:500px){#friendBoard.ludo-panel{padding:8px;margin-left:-5px;margin-right:-5px}.ludo-seat strong{font-size:12px}.ludo-seat small{font-size:9px}.ludo-avatar{width:30px;height:32px}.ludo-seats{margin:5px 0 10px}.ludo-controls{gap:14px}.ludo-controls strong{font-size:13px}.ludo-nest{border-radius:12%;border-width:1px}.fg-ludo{border-radius:12px}.ludo-dice{width:58px;height:58px;gap:3px}}

/* Mais contraste, peões e controles maiores no celular. */
.ludo-profile-entry{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:18px 0}.ludo-personalize{display:flex;justify-content:flex-end;margin:3px 0 10px}.ludo-personalize .button{font-size:13px;min-height:42px;background:#0a2058;border-color:#789cde;color:#fff}.ludo-seat{max-width:49%;gap:9px}.ludo-avatar{width:47px;height:47px;font-size:23px;border-radius:12px;box-shadow:0 3px 0 #0007,0 0 12px color-mix(in srgb,var(--pawn),transparent 50%)}.ludo-seat strong{font-size:16px}.ludo-seat small{font-size:11px}.fg-ludo-base{background:linear-gradient(140deg,#fff2,transparent 55%,#0002),var(--base)}.ludo-nest{width:70%;height:70%;padding:13%;gap:15%;box-shadow:0 3px 7px #0005,inset 0 0 0 2px #fff}.ludo-slot .ludo-pawn{width:100%;height:125%;transform:translateY(-10%)}.fg-ludo-cell>.ludo-pawn{width:108%;height:140%;flex-shrink:0}.fg-ludo-cell:has(.ludo-pawn:nth-of-type(2))>.ludo-pawn{width:48%;flex-shrink:1}.fg-ludo-cell>.ludo-pawn span{left:14%;width:72%;height:70%}.ludo-playable:after{inset:-3%;border-width:2px;box-shadow:0 0 10px #ffe15a,0 0 4px #fff}.ludo-star{font-size:clamp(16px,4vw,29px);font-weight:900}.ludo-dice{width:58px;height:58px;padding:8px!important;gap:3px}.ludo-seat.ludo-turn{border-color:#fff29e;box-shadow:0 0 16px #ffe75f70;background:#10244f}.ludo-controls strong{font-size:16px}.ludo-controls small{font-size:13px}@media(max-width:500px){.ludo-avatar{width:40px;height:42px;font-size:21px}.ludo-seat{padding:4px;gap:6px}.ludo-seat strong{font-size:14px}.ludo-seat small{font-size:10px}.ludo-dice{width:50px;height:50px;padding:7px!important;gap:3px}.ludo-controls strong{font-size:14px}.ludo-controls small{font-size:12px}.ludo-personalize .button{font-size:12px}.ludo-seats{gap:4px}}

/* Peões no percurso maiores; bases e dado com proporção mais discreta. */
.ludo-slot .ludo-pawn{width:94%;height:117%;transform:translateY(-8%)}.fg-ludo-cell>.ludo-pawn{width:100%;height:132%;z-index:3}.fg-ludo-cell:has(.ludo-pawn:nth-of-type(2))>.ludo-pawn{width:50%;height:125%}.ludo-dice{width:58px;height:58px;padding:8px!important;gap:3px}@media(max-width:500px){.ludo-dice{width:54px;height:54px;padding:7px!important;gap:3px}}
.voice-dock{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:30;width:min(560px,calc(100% - 24px));padding:12px 16px;background:#101d35f5;border:1px solid #6788b9;border-radius:17px;box-shadow:0 6px 25px #0008;display:flex;gap:14px;align-items:center;justify-content:space-between}.voice-dock[hidden]{display:none}.voice-dock>div{min-width:0;flex:1}.voice-dock strong{display:block;color:#fff;font-size:15px}.voice-dock small{display:block;font-size:12px;line-height:1.4;color:#c7d8f5;margin-top:3px}.voice-dock button{min-width:67px;min-height:44px;border:1px solid #91a3c1;background:#35425a;color:#fff;font-weight:800}.voice-dock button.voice-on{background:#187846;border-color:#6fe1a5;box-shadow:0 0 12px #38c17e33}.voice-dock #voiceUnlock{font-size:11px;min-width:0;max-width:90px}.has-voice-dock{padding-bottom:110px}.guest-entry{max-width:580px}.guest-entry input{font-size:17px;min-height:48px}@media(max-width:700px){.voice-dock{bottom:76px;padding:10px 12px;gap:10px}.voice-dock strong{font-size:13px}.voice-dock small{font-size:11px}.has-voice-dock{padding-bottom:180px}}

.voice-dock{flex-wrap:wrap;gap:8px;width:min(600px,calc(100% - 24px))}.voice-dock>div{flex:1 1 190px}.voice-dock button{padding:10px 12px;font-size:12px}.voice-dock button[hidden]{display:none}.voice-dock #voiceMode{font-weight:800}.voice-dock .voice-mode-on{color:#83efb5}.voice-dock .voice-mode-muted{color:#ffcf75}.voice-dock .voice-mode-off{color:#c7d8f5}.voice-dock button.voice-muted{background:#654818;border-color:#ffcf75}.has-voice-dock{padding-bottom:160px}@media(max-width:700px){.voice-dock>div{flex-basis:100%}.voice-dock button{flex:1}.has-voice-dock{padding-bottom:240px}}

/* O painel ocupa espaço depois do jogo, sem cobrir dado, peças ou navegação. */
.voice-dock{position:static;inset:auto;left:auto;bottom:auto;transform:none;z-index:auto;width:100%;max-width:710px;margin:18px auto 12px;background:#101d35;box-shadow:0 4px 16px #0003}.has-voice-dock{padding-bottom:0}.ludo-controls{min-height:82px;margin:10px 0 6px;scroll-margin-bottom:90px}.voice-dock>div{flex:1 1 190px}.voice-dock button{flex:0 1 auto}@media(max-width:700px){.voice-dock{position:static;bottom:auto;width:100%;padding:10px 12px;gap:8px;margin:16px 0 12px}.voice-dock>div{flex-basis:100%}.voice-dock button{flex:1;min-height:44px}.has-voice-dock{padding-bottom:0}}

/* Cartas: mesa, mão e ações próximas, sem exigir reduzir a exibição do aparelho. */
#friendBoard.colors-board{padding:16px;max-width:710px;margin:12px auto;border-radius:18px}.colors-table{display:flex;justify-content:center;align-items:center;gap:22px}.colors-board .fg-card-top{width:76px;min-height:100px;height:100px;margin:0;padding:10px 6px;border-width:3px;font-size:32px;flex:0 0 76px;display:flex;flex-direction:column;justify-content:center;align-items:center}.colors-board .fg-card-top small{font-size:12px;line-height:1.3;margin-top:4px;color:#fff}.colors-picker{width:min(220px,60%);margin:0;font-size:13px}.colors-picker select{margin-top:6px;min-height:44px;padding:8px 10px;font-size:16px}.colors-hand-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:12px 0 3px}.colors-hand-title h3{font-size:15px;line-height:1.3;margin:0}.colors-hand-title span{font-size:10px;color:#b7b8c9}.colors-board .fg-hand{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;min-width:0;width:100%;gap:10px;padding:7px 4px 8px;scroll-padding:4px;overscroll-behavior-x:contain;scrollbar-width:thin;scroll-snap-type:x proximity}.colors-board .fg-hand button{flex:0 0 54px;width:54px;height:78px;border-width:2px;border-radius:10px;font-size:25px;scroll-snap-align:start}.colors-tip{display:block;font-size:12px;line-height:1.3;color:#c9cbd9;margin:3px 0 8px}.colors-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;margin:0}.colors-actions button{font-size:13px;line-height:1.2;min-height:44px;padding:8px;white-space:normal}.colors-board .fg-hand:focus-visible{outline:2px solid #ffdf83;outline-offset:1px}
@media(max-width:700px){
.playing-room header{padding:6px 12px;min-height:40px;position:relative}.playing-room .identity .logo{font-size:29px;line-height:1}.playing-room .identity span{font-size:8px;line-height:1.3}.playing-room main{padding:6px 12px 80px;min-height:0}.playing-room footer{display:none}.playing-room #roomView{max-width:100%;min-width:0}.playing-room #roomView>.eyebrow{display:none}.playing-room #roomView>h1{font-size:20px;line-height:1.2;letter-spacing:0;margin:0 0 6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.playing-room #roomView>.row{gap:6px;flex-wrap:wrap}.playing-room #roomView>.row button,.playing-room #roomView>.row .button{min-height:34px;padding:7px 9px;font-size:11px;line-height:1.2}.playing-room #roomView>.fg-score{gap:6px;margin:7px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.playing-room #roomView>.fg-score>div{min-width:0;padding:6px 8px;gap:0;border-radius:9px;position:relative}.playing-room .fg-score strong{font-size:12px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playing-room .fg-score b{font-size:11px;line-height:1.3}.playing-room .fg-score small{position:absolute;bottom:6px;right:7px;font-size:9px}.playing-room #roomView>p.notice,.playing-room #roomView>div.notice{margin:7px 0;padding:8px 10px;font-size:13px;line-height:1.25;border-radius:10px}.playing-room #roomView>.space{margin-top:8px}.playing-room #roomView>.ludo-panel{margin-top:8px}.playing-room #roomView>.fg-score.domino-outside-score,.playing-room #roomView.ludo-room>.fg-score{display:none}.playing-room #roomView>details{padding:10px 12px;margin:8px 0;font-size:12px}.playing-room #roomView>p:last-child{font-size:12px;margin:8px 0}.playing-room .voice-dock{padding:8px 10px;margin:8px auto;gap:6px;border-radius:12px;display:flex;flex-wrap:wrap}.playing-room .voice-dock>div{flex:1 1 125px}.playing-room .voice-dock strong{display:none}.playing-room .voice-dock small{font-size:10px;line-height:1.25;margin-top:2px}.playing-room .voice-dock button{flex:0 1 auto;min-width:50px;min-height:40px;font-size:11px;padding:8px}.playing-room nav{min-height:54px}.playing-room nav a{min-height:38px;display:grid;place-items:center;padding:7px;font-size:11px}
#friendBoard.colors-board{padding:10px 12px;margin:8px auto}.colors-table{gap:18px}.colors-board .fg-card-top{width:64px;flex-basis:64px;min-height:84px;height:84px;font-size:29px}.colors-picker{font-size:12px}.colors-hand-title{margin-top:8px}.colors-hand-title h3{font-size:14px}.colors-hand-title span{font-size:9px}.colors-board .fg-hand{gap:9px}.colors-board .fg-hand button{flex-basis:50px;width:50px;height:72px;font-size:24px}.colors-tip{font-size:11px;margin:2px 0 6px}.colors-actions button{font-size:12px}.playing-room [data-game="colors"]>.fg-score small{position:static;font-size:9px;line-height:1.15}.playing-room [data-game="colors"]>.fg-score small:empty{display:none}
}
@media(max-width:700px) and (max-height:680px){.playing-room [data-game="colors"]>.fg-score>div{padding:5px 7px}.colors-board .fg-card-top{height:72px;min-height:72px;width:58px;flex-basis:58px;font-size:26px}.colors-board .fg-card-top small{font-size:10px}.colors-board .fg-hand button{height:66px;flex-basis:46px;width:46px}.colors-hand-title{margin-top:6px}.playing-room .identity span{display:none}}

@media(max-width:700px){.playing-room [data-game="colors"]>p.notice{display:none}.playing-room [data-game="colors"]>.fg-score small{position:absolute;bottom:5px;right:6px}.playing-room [data-game="colors"]>.fg-score>div{min-height:40px}.playing-room [data-game="colors"]>.fg-score{margin:6px 0}.playing-room .voice-dock{flex-wrap:nowrap}.playing-room .voice-dock>div{flex:1 1 105px}.playing-room .voice-dock button{font-size:10px;padding:7px;min-width:42px}.playing-room .voice-dock #voiceUnlock{flex:0 1 65px}.playing-room .voice-dock:has(#voiceUnlock:not([hidden])){flex-wrap:wrap}}
@media(max-width:700px) and (max-height:760px){.playing-room [data-game="colors"]>h1{font-size:16px;margin-bottom:4px}.playing-room .identity span{display:none}.colors-board .fg-card-top{height:70px;min-height:70px;width:56px;flex-basis:56px;font-size:26px}.colors-board .fg-card-top small{font-size:10px}.colors-board .fg-hand button{height:66px;width:46px;flex-basis:46px}.colors-hand-title{margin-top:6px}}

/* PlayOn · acabamento luminoso em elementos vetoriais e superfícies de jogo. */
.friend-card{background:radial-gradient(ellipse at 20% 0,#ab72ff26,transparent 65%),linear-gradient(145deg,#22253c,#111322);border-color:#b3a4df55;box-shadow:inset 0 1px 0 #ffffff20,0 8px 24px #0004;transition:border-color .18s,box-shadow .18s}.friend-card:hover{border-color:#e1c57a;box-shadow:inset 0 1px 0 #fff3,0 6px 26px #b6944930}.friend-card>span{filter:drop-shadow(0 3px 5px #6b7eff55)}
#friendBoard,#roomGame{--game-rim:#88a9ef44}#friendBoard.panel{background:radial-gradient(ellipse at 15% 0,#51477b24,transparent 70%),linear-gradient(145deg,#1c2030,#101321);border-color:var(--game-rim);box-shadow:inset 0 1px 0 #ffffff14,0 8px 24px #0004}.fg-score>div{background:linear-gradient(145deg,#262b3f,#141827);box-shadow:inset 0 1px 0 #ffffff14}.fg-score>div.fg-active{border-color:#f7da82!important;box-shadow:inset 0 1px 0 #fff3,0 0 14px #e9c46126}
/* Cartas com reflexo de luz e números de alto contraste. */
.colors-board .fg-card-top,.colors-board .fg-hand button{position:relative;isolation:isolate;background-image:radial-gradient(ellipse at 22% 5%,#ffffff55,transparent 60%),linear-gradient(150deg,#ffffff0d 25%,transparent 26%,#0002 100%)!important;border-color:#f7fbff;box-shadow:inset 0 1px 0 #fff9,inset 0 -3px 0 #0003,0 4px 8px #0006;text-shadow:0 1px 2px #0009;color:#fff}.colors-board .fg-card-top{box-shadow:inset 0 1px 0 #fffc,inset 0 -4px 0 #0003,0 6px 14px #0007}.colors-board .fg-hand button.color-playable{border-color:#ffe591;outline:2px solid #ffdc70;box-shadow:inset 0 1px 0 #fffc,0 0 8px 2px #ffdb7755,0 4px 8px #0005}.colors-board .fg-hand button:disabled{opacity:.85!important}.colors-board .fg-card-top small{color:#fff;text-shadow:0 1px 2px #0008;font-weight:700}
/* Ludo: verniz colorido, casas claras e peões polidos. */
#friendBoard.ludo-panel{background:radial-gradient(ellipse at 35% 0,#477ce3,#173668 65%,#0d2148);border-color:#7aa9ff8c;box-shadow:inset 0 1px 0 #d7eaff66,inset 0 0 32px #2879ff15,0 8px 24px #0005}.fg-ludo{border-color:#0b1d3b;box-shadow:0 5px 0 #07152b,0 9px 16px #0007,inset 0 0 0 1px #fff7}.fg-ludo-base{background:radial-gradient(ellipse at 25% 0,#fff4,transparent 60%),linear-gradient(145deg,#fff1,transparent 50%,#0002),var(--base);box-shadow:inset 0 1px 0 #fffa,inset 0 -3px 0 #0003}.ludo-nest{background:linear-gradient(140deg,#fff,#eef2fa);box-shadow:inset 0 1px 0 #fff,0 4px 7px #0005}.fg-ludo-cell:not(.ludo-home):not(.safe){background:linear-gradient(140deg,#fff,#edf2fa);border-color:#a4b0c3}.ludo-pawn span{background:radial-gradient(ellipse at 25% 18%,#fff,transparent 40%),linear-gradient(90deg,#0006,var(--pawn) 35%,var(--pawn) 65%,#0008);box-shadow:inset 1px 0 1px #fff8,inset 0 -2px 2px #0006}.ludo-pawn span:before{background:radial-gradient(circle at 30% 22%,#fff 5%,var(--pawn) 38%,#000a 100%)}.ludo-avatar{border-color:#f7fcff;box-shadow:inset 0 1px 0 #fff7,0 3px 0 #0007,0 0 10px color-mix(in srgb,var(--pawn),transparent 65%)}.ludo-dice{background:linear-gradient(140deg,#fff,#e4ebf5)!important;box-shadow:inset 0 1px 0 #fff,0 4px 0 #7a879f,0 7px 11px #0005}
/* Dominó: peças de marfim e mesa com luz central. */
.domino-arena{background:radial-gradient(ellipse at 45% 35%,#247461,#113f37 65%,#092c28);border-color:#e1c37d88;box-shadow:inset 0 1px 0 #f8e1a34d,inset 0 0 40px #0004,0 8px 20px #0005}.domino-surface{filter:drop-shadow(0 2px 1px #0007)}.domino-piece{background:linear-gradient(145deg,#fffef5,#dfd6b9)!important;box-shadow:inset 0 1px 0 #fff,0 3px 0 #928569,0 5px 7px #0005!important}.domino-piece svg{filter:drop-shadow(0 1px 0 #fff9)}
/* Damas, memória e batalha naval. */
.fg-checkers{border-color:#b08a50;box-shadow:inset 0 0 0 1px #eacb87,0 7px 20px #0005}.fg-checkers .dark{background:linear-gradient(140deg,#95714d,#543e2b)}.fg-checkers .light{background:linear-gradient(140deg,#fff1ce,#d5b780)}.fg-piece.white{background:radial-gradient(circle at 30% 22%,#fff,#e9d7ac 60%,#a78c58);box-shadow:inset 0 0 0 3px #fff5,0 3px 0 #9b855e,0 5px 6px #0007}.fg-piece.black{background:radial-gradient(circle at 30% 20%,#727a99,#252a40 55%,#0a0e1a);box-shadow:inset 0 0 0 3px #a3acc444,0 3px 0 #080c16,0 5px 6px #0008}.memory button{background:radial-gradient(ellipse at 25% 0,#655e9e,#242641 65%,#171b31);border-color:#9b9cd36b;box-shadow:inset 0 1px 0 #fff3,0 4px 9px #0004;text-shadow:0 2px 4px #0005}.memory button.revealed{background:radial-gradient(ellipse at 25% 0,#f6e4aa,#caa65b);color:#15233b;box-shadow:inset 0 1px 0 #fff9,0 0 12px #e9c36b33}.fg-naval{border-color:#83bfff;box-shadow:0 0 16px #338aff22}.fg-naval>*{background:linear-gradient(145deg,#1c4e79,#0c294c);border-color:#679bd766}.fg-naval .ship{background:linear-gradient(145deg,#b6c6d8,#4c607a)}.fg-naval .hit,.fg-naval .ship.shot{background:radial-gradient(circle,#f1a551,#be3f40);box-shadow:inset 0 0 8px #ffdd6b77}.table-stage{border-color:#e2bf7680;box-shadow:inset 0 1px 0 #fff3,0 8px 28px #0007}.np-scoreboard .np-player.is-turn{border-color:#ffe29a;box-shadow:inset 0 1px 0 #fff2,0 0 12px #e8bd6d22}#friendBoard button:focus-visible,#roomGame button:focus-visible{outline:3px solid #ffe8a2;outline-offset:2px}
.bingo-lounge{border-color:#e1c17d88;box-shadow:inset 0 1px 0 #fff4,0 8px 30px #0005}.bingo-orbit .globe{background:radial-gradient(circle at 28% 20%,#fff2bf,#e2b85f 45%,#8d5e29 90%);box-shadow:inset 0 2px 3px #fff8,inset -12px -16px 24px #0005,0 0 24px #f4c77740}.bingo-grid .cell{border-color:#e3c17744}.bingo-grid .cell.hit{background:linear-gradient(145deg,#ffe4a2,#c49448);color:#1b160e;box-shadow:inset 0 1px 0 #fff8,0 0 7px #e9bd6a33}.stop-fields input:focus{border-color:#f2d89a;box-shadow:0 0 0 2px #d2b37022;outline:0}
/* Batalha Naval: mar aberto e frota metálica vista de cima. */
#roomView[data-game="naval"]{max-width:1120px;margin:auto}#roomView[data-game="naval"] #friendBoard.naval-panel{padding:0;overflow:hidden;border:1px solid #78cde366;background:#052d43;border-radius:22px;box-shadow:0 15px 48px #0007,inset 0 1px #c0f6ff44}.naval-arena{padding:24px;background:radial-gradient(ellipse at 0 45%,#19bfc733,transparent 50%),radial-gradient(ellipse at 100% 80%,#1c91c74d,transparent 55%),linear-gradient(150deg,#09384d,#075472 55%,#092e49);color:#e4f7ff}.naval-header{display:flex;align-items:center;justify-content:space-between;gap:14px}.naval-header small{font-size:10px;letter-spacing:.17em;color:#a9dce8}.naval-header h2{margin:4px 0;font-size:clamp(23px,4vw,34px);color:#fff;text-shadow:0 2px 6px #001b2b}.naval-phase{font-size:12px;padding:9px 13px;border:1px solid #9eeaf477;border-radius:30px;background:#022d49;color:#c5f6ff;white-space:nowrap}.naval-status{font-size:13px;color:#d2e9f0;line-height:1.5;margin:14px 0 22px}.naval-battle-layout{max-width:620px;margin:auto}.naval-section-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.naval-section-title h3{font-size:17px;margin:0;color:#f0fcff}.naval-section-title>span{font-size:12px;color:#b6e9ed}.naval-chart{position:relative;padding:20px 0 0 21px;width:100%;box-sizing:border-box}.naval-letters{position:absolute;display:grid;grid-template-columns:repeat(10,1fr);left:21px;right:0;top:0;height:20px}.naval-numbers{position:absolute;left:0;top:20px;bottom:0;width:21px;display:grid;grid-template-rows:repeat(10,1fr)}.naval-letters span,.naval-numbers span{display:grid;place-items:center;font-size:10px;font-weight:700;color:#c5eaf3}.naval-ocean{position:relative;aspect-ratio:1;border:1px solid #c2f6ff9c;isolation:isolate;background:radial-gradient(ellipse at 20% 30%,#4ad1db55,transparent 30%),radial-gradient(ellipse at 75% 65%,#48c5d333,transparent 40%),repeating-radial-gradient(ellipse at 0 0,#a0f4f409 0 2px,transparent 4px 16px),linear-gradient(140deg,#187597,#126080 55%,#158fa1);box-shadow:inset 0 0 40px #021f4166,0 8px 20px #001b3066}.naval-cells{position:absolute;inset:0;display:grid;grid-template-columns:repeat(10,1fr);grid-template-rows:repeat(10,1fr)}#friendBoard .naval-cell{position:relative;min-width:0;min-height:0;margin:0;padding:0;border:0;border-right:1px solid #b1e8f044;border-bottom:1px solid #b1e8f044;border-radius:0;background:transparent;display:grid;place-items:center;box-shadow:none;touch-action:manipulation}#friendBoard .naval-cell:disabled{opacity:1;cursor:default}#friendBoard button.naval-cell:not(:disabled):hover{background:#b2f5ff33;box-shadow:inset 0 0 0 2px #c2faff}#friendBoard button.naval-cell:not(:disabled):focus-visible{outline:2px solid #fff6aa;outline-offset:-3px}.naval-fleet{position:absolute;inset:0;pointer-events:none}.naval-vessel{position:absolute;box-sizing:border-box;padding:2px;filter:drop-shadow(2px 4px 2px #00131bbd)}.naval-vessel svg{width:100%;height:100%;display:block}.naval-vessel.sunk{filter:grayscale(1) brightness(.45)}.naval-impact{font-style:normal;color:#ffe697;font-size:clamp(17px,4vw,31px);text-shadow:0 0 5px #ff4f00,0 0 10px #ffad00;z-index:3;pointer-events:none}.naval-miss{font-style:normal;color:#b8f3ff;text-shadow:0 1px 4px #002e4e;font-size:24px;z-index:3;pointer-events:none}.naval-hit{background:radial-gradient(#ffb74566,transparent 72%)!important}.naval-cells:has(.naval-impact){z-index:2}.naval-fleet-label{margin:17px 0;color:#c0e4eb;font-size:11px;letter-spacing:.1em;display:flex;justify-content:space-between;gap:8px}.naval-fleet-label span{letter-spacing:0}.naval-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.naval-actions button{padding:14px 8px;font-size:13px;border:1px solid #b4ecff66;border-radius:10px}.naval-actions button.secondary{background:linear-gradient(#17485b,#0a3046);color:#e2f9ff}.naval-actions button[data-fg="ready"]{background:linear-gradient(#bde36a,#82b73e);color:#152d11;border-color:#def4a5;box-shadow:0 3px 0 #456d28,inset 0 1px #fff8;font-weight:800}.naval-own{margin-top:24px;padding:15px;background:#00263866;border:1px solid #a9e1e333;border-radius:12px}.naval-own>summary{color:#d0f0f6;font-size:13px;cursor:pointer;margin-bottom:8px}.naval-key{display:flex;justify-content:space-between;font-size:11px;color:#c0e4eb;margin:14px 0}.naval-log{margin-top:20px;padding:13px;border-top:1px solid #9cdfea33;font-size:13px;color:#d2eef2;text-align:center}@media(min-width:960px){.naval-battle-layout:has(.enemy-chart){display:grid;grid-template-columns:1.2fr 1fr;gap:24px;max-width:none;align-items:start}.naval-own{margin-top:0}.naval-own:not([open]){align-self:start}}@media(max-width:500px){#roomView[data-game="naval"] #friendBoard.naval-panel{padding:0;border-radius:15px}.naval-arena{padding:16px 10px}.naval-status{font-size:12px;margin-bottom:17px}.naval-phase{font-size:10px;padding:8px}.naval-header small{font-size:8px}.naval-section-title h3{font-size:15px}}
/* Catálogo PlayOn: cartões uniformes e acabamento discreto. */
.friend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:22px 0 30px}.friend-grid .friend-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px;min-width:0;min-height:186px;padding:20px 18px 18px;border:1px solid #b9a47738;border-radius:18px;background:radial-gradient(ellipse at 10% 0,#71618718,transparent 70%),linear-gradient(145deg,#242031,#151722);box-shadow:inset 0 1px 0 #ffffff09,0 7px 18px #00000025;color:#f4f1e9;text-align:left;text-decoration:none;font:inherit;transition:border-color .18s,background .18s,transform .18s}.friend-grid .friend-card:hover{border-color:#d7bd826e;background:linear-gradient(145deg,#2d273b,#1b1d29);transform:translateY(-2px)}.friend-grid .friend-card:focus-visible{outline:2px solid #e4c98c;outline-offset:3px}.friend-grid .friend-card>.game-card-icon{height:56px;width:56px;display:flex;align-items:center;justify-content:center;font-size:40px;line-height:1;filter:drop-shadow(0 3px 4px #0005);margin-bottom:3px}.friend-grid .game-card-icon .domino-game-icon{width:56px;height:56px}.friend-grid .friend-card>strong{font-size:17px;font-weight:650;line-height:1.3;letter-spacing:-.015em}.friend-grid .friend-card>small{font-size:12px;line-height:1.5;color:#bcb6c7;margin-top:auto;padding-right:12px}.friend-grid .friend-card>.game-card-arrow{position:absolute;right:15px;bottom:17px;font-size:15px;color:#c4b48d}.bingo-lounge{scroll-margin-top:90px}@media(max-width:500px){.friend-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.friend-grid .friend-card{padding:17px 14px;min-height:175px;border-radius:16px}.friend-grid .friend-card>strong{font-size:16px}.friend-grid .friend-card>small{font-size:11px}.friend-grid .friend-card>.game-card-icon{width:50px;height:50px;font-size:37px}.friend-grid .game-card-icon .domino-game-icon{width:50px;height:50px}}@media(prefers-reduced-motion:reduce){.friend-grid .friend-card{transition:none}.friend-grid .friend-card:hover{transform:none}}

/* Batalha Naval: tabuleiro inteiro na área útil do celular. */
.naval-header{position:static;padding:0;border:0;background:transparent;z-index:auto}
@media(max-width:700px){
  main:has(#roomView[data-game="naval"]){padding:10px 12px calc(90px + env(safe-area-inset-bottom))}
  #roomView[data-game="naval"]{scroll-margin-top:90px}
  #roomView[data-game="naval"]>.eyebrow,
  #roomView[data-game="naval"]>h1,
  #roomView[data-game="naval"]>.notice{display:none}
  #roomView[data-game="naval"]>.row{gap:6px;justify-content:flex-end}
  #roomView[data-game="naval"]>.row .pill{margin-right:auto;font-size:10px;padding:5px 8px}
  #roomView[data-game="naval"]>.row button,
  #roomView[data-game="naval"]>.row .button{font-size:11px;padding:8px 10px;min-height:36px}
  #roomView[data-game="naval"]>.fg-score{margin-top:8px;gap:6px}
  #roomView[data-game="naval"]>.fg-score>div{padding:8px 10px;min-width:0}
  #roomView[data-game="naval"]>.fg-score strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  #roomView[data-game="naval"]>.fg-score b,
  #roomView[data-game="naval"]>.fg-score small{font-size:10px}
  #roomView[data-game="naval"] #friendBoard{margin-top:8px}
  .naval-arena{padding:10px}
  .naval-header{gap:8px}
  .naval-header small{display:none}
  .naval-header h2{font-size:20px;margin:0}
  .naval-phase{font-size:10px;padding:5px 8px}
  .naval-status{font-size:11px;line-height:1.3;margin:6px 0 9px}
  .naval-section-title{margin-bottom:5px}
  .naval-section-title h3{font-size:13px}
  .naval-section-title>span{font-size:10px}
  .naval-battle-layout{width:min(100%,max(220px,calc(100svh - 370px)));margin-inline:auto}
  .naval-chart{max-width:100%;padding-left:18px;padding-top:17px}
  .naval-letters{left:18px;height:17px}
  .naval-numbers{top:17px;width:18px}
  .naval-letters span,.naval-numbers span{font-size:9px}
  .naval-key{font-size:10px;margin:7px 0}
  .naval-own{margin-top:8px;padding:8px}
  .naval-own>summary{font-size:11px;margin-bottom:0;min-height:28px;align-content:center}
  .naval-own[open]>.naval-section-title{margin-top:7px}
  .naval-log{font-size:10px;margin-top:7px;padding:6px}
  .naval-fleet-label{margin:8px 0;font-size:9px}
  .naval-actions{margin-top:9px;gap:8px}
  .naval-actions button{padding:10px 6px;font-size:12px;min-height:40px}
  #roomView[data-game="naval"]>details.panel{margin-top:10px;padding:12px;font-size:12px}
  #roomView[data-game="naval"] .naval-impact{font-size:clamp(13px,3.5vw,23px)}
  #roomView[data-game="naval"] .naval-miss{font-size:18px}
}

/* Premium illustrations only within the games cards. Original page framing is preserved. */
.central-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:820px;margin:0 auto}.central-card{position:relative;display:block;aspect-ratio:1.04;min-width:0;overflow:hidden;border:1.5px solid #e0bc71;border-radius:15px;padding:0;background:#09283d;color:#fff6e1;box-shadow:inset 0 0 0 2px #fff2,0 6px 20px #0006;text-align:left;text-decoration:none;font:inherit;isolation:isolate;transition:transform .18s,box-shadow .18s}.central-card[data-game-name="batalha naval"]{border-color:#79d5f4}.central-art{position:absolute;inset:0;background-image:url('/pn/central-game-atlas.webp');background-size:300% 300%;background-position:var(--atlas-x) var(--atlas-y);background-repeat:no-repeat;z-index:-2;transition:transform .3s}.central-card:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#000d,transparent 43%)}.central-card-label{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:5px;padding:15px 13px;color:#fff6e6}.central-card-label strong{font:700 clamp(18px,3.6vw,30px)/1.1 Georgia,serif;text-shadow:0 2px 4px #000;overflow-wrap:normal}.central-card-label>span:last-child{font:400 38px/1 Georgia,serif;color:#ffe09c;flex:none}.central-card-label small{display:block;color:#eee8da;font:400 clamp(12px,2.5vw,18px)/1.4 Georgia,serif;margin-top:4px}.central-card:hover{filter:none;transform:translateY(-2px);box-shadow:0 0 18px #29bcf54a,0 7px 25px #0008}.central-card:hover .central-art{transform:scale(1.025)}.central-card:focus-visible{outline:3px solid #a1eaff;outline-offset:4px}.central-bingo{grid-column:1/-1;aspect-ratio:2.3}.central-bingo-art{position:absolute;inset:0;z-index:-2;background:url('/pn/central-bingo.webp') 50% 50% / cover no-repeat}.central-more{max-width:820px;margin:30px auto 15px;font:700 26px/1.3 Georgia,serif;color:#ebd19a}.central-extra .central-card{aspect-ratio:1.35}.central-extra .central-card-label strong{font-size:clamp(19px,3vw,26px)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.central-games{margin:22px 0 30px}.central-grid{max-width:none}.central-more{max-width:none}
@media(min-width:701px){.central-games .central-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.central-games .central-bingo{aspect-ratio:3.5;grid-column:1/-1}.central-games .central-extra{grid-template-columns:repeat(3,minmax(0,1fr))}.central-games .central-card-label strong{font-size:23px}.central-games .central-card-label{padding:12px}}
@media(max-width:700px){.central-grid{gap:12px}.central-card{border-radius:12px;aspect-ratio:.95}.central-card-label{padding:12px 10px}.central-card-label strong{font-size:clamp(17px,4.8vw,27px)}.central-card-label>span:last-child{font-size:32px}.central-bingo{aspect-ratio:2.1}.central-extra .central-card{aspect-ratio:1.15}}
@media(max-width:350px){.central-grid{gap:9px}.central-card-label{padding:10px 7px}.central-card-label strong{font-size:17px}.central-extra .central-card-label strong{font-size:18px}}
@media(prefers-reduced-motion:reduce){.central-card,.central-art{transition:none}.central-card:hover,.central-card:hover .central-art{transform:none}}

/* Classic numeric card faces: only the color-matching game is affected. */
.central-card[data-game-name="uno"] .central-art{background-image:url('/pn/colors-classic.webp');background-size:cover;background-position:center}
#friendBoard.colors-board .fg-card-top,#friendBoard.colors-board .fg-hand button{padding:0;border:0;border-radius:9px;background:#15161b!important;background-image:none!important;text-shadow:none;box-shadow:0 3px 7px #0009;overflow:visible}
.colors-board .uno-face{display:block;width:100%;height:100%;filter:drop-shadow(0 1px 1px #0005);pointer-events:none;overflow:visible}
#friendBoard.colors-board .fg-hand button.color-playable{outline:3px solid #ffe078;outline-offset:2px;box-shadow:0 0 12px 3px #ffcd5488,0 4px 7px #0008;transform:translateY(-3px)}
#friendBoard.colors-board .fg-hand button:focus-visible{outline:3px solid #8ce8ff;outline-offset:3px}
#friendBoard.colors-board .fg-hand button:disabled{opacity:.85!important}
.colors-board .fg-card-top{aspect-ratio:2/3}.colors-current-color{display:block;color:#eee2b7;font-size:12px;margin-bottom:10px}.colors-board .fg-hand{padding-top:9px;padding-bottom:10px}

/* Color cards: classic purple/blue table, concealed opponent fans and own hand. */
#roomView[data-game="colors"]>.fg-score{display:none}
#friendBoard.colors-board.uno-classic-board{padding:0;border:1px solid #8f81ef;border-radius:20px;background:#161035;max-width:820px;overflow:hidden;box-shadow:0 0 30px #4020ba44,0 12px 35px #0008}
.uno-arena{position:relative;isolation:isolate;overflow:hidden;padding:16px 12px 12px;background:radial-gradient(ellipse at 50% 43%,#077aff99 0,transparent 39%),repeating-conic-gradient(from 18deg at 50% 48%,#3912a7 0deg 32deg,#242299 32deg 68deg,#4a1493 68deg 90deg);color:#fff;min-height:390px}
.uno-arena:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(120deg,transparent 0 58px,#ffffff09 59px,transparent 60px 119px),radial-gradient(ellipse at 50% 100%,#101071,transparent 65%)}
.uno-opponents{display:grid;grid-template-columns:repeat(var(--opponents),minmax(0,1fr));justify-content:center;gap:8px;max-width:670px;margin:auto;min-height:120px}.uno-seat{text-align:center;min-width:0;position:relative;display:flex;align-items:center;flex-direction:column;gap:3px}.uno-opponent-hand{position:relative;height:64px;width:100px;flex:none}.uno-opponent-hand>i{display:block;position:absolute;width:34px;height:51px;left:33px;top:0;transform:rotate(var(--back-angle));transform-origin:50% 120%;font-style:normal;filter:drop-shadow(0 2px 2px #0008)}
.uno-back-face{position:relative;display:block;width:100%;height:100%;border:3px solid #fff9e9;border-radius:7px;background:#151619;box-shadow:0 2px 3px #0008;overflow:hidden}.uno-back-face:before{content:'';position:absolute;inset:13% 4%;border-radius:50%;background:#e51923;transform:rotate(-28deg)}.uno-back-face b{position:absolute;inset:0;display:grid;place-items:center;color:#ffe449;font:900 italic 20px/1 Arial,sans-serif;letter-spacing:-1.5px;transform:rotate(-25deg);text-shadow:1px 2px #000,-1px -1px #fff}.uno-opponent-hand .uno-back-face{border-width:2px;border-radius:4px}.uno-opponent-hand .uno-back-face b{font-size:11px;letter-spacing:-.8px}
.uno-avatar{width:33px;height:33px;border:2px solid #bcd5ff;border-radius:8px;display:grid;place-items:center;background:conic-gradient(#f5cf19 0 25%,#0c9f4e 25% 50%,#176cdf 50% 75%,#e42c32 75%);color:#fff;font:bold 19px Arial;text-shadow:0 1px 4px #000;box-shadow:0 2px 6px #0006;flex:none}.uno-seat strong{font-size:12px;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff}.uno-seat small{font-size:10px;color:#d5d8ff}.uno-seat-active .uno-avatar{border-color:#ffe06b;box-shadow:0 0 15px #fff16c99}.uno-seat-active strong{color:#fff093}
.uno-table-center{height:145px;position:relative;display:flex;gap:32px;align-items:center;justify-content:center;isolation:isolate}.uno-orbit{position:absolute;inset:-36px 0;display:grid;place-items:center;font:230px/1 Arial,sans-serif;color:#42b8ff66;z-index:-1;text-shadow:0 0 32px #2eabff;pointer-events:none}.uno-orbit.uno-reverse{transform:scaleX(-1)}
#friendBoard .uno-draw-pile{position:relative;width:65px;height:94px;flex:none;background:none;border:0;padding:0;transform:rotate(-8deg);box-shadow:-3px 2px #f0ebd1,-6px 4px #1d1d2b,-8px 5px #e9e6cf;border-radius:8px}.uno-draw-pile small{position:absolute;top:100%;left:-7px;right:-7px;margin-top:10px;color:#e5eaff;font-size:11px;text-align:center;transform:rotate(8deg)}#friendBoard .uno-draw-pile:disabled{opacity:.85}.uno-discard{position:relative;transform:rotate(6deg)}#friendBoard.colors-board .uno-discard .fg-card-top{width:70px;min-height:105px;height:105px;flex-basis:70px}.uno-color-badge{position:absolute;top:100%;left:-10px;right:-10px;text-align:center;font-size:10px;margin-top:8px;padding:3px;border-radius:15px;background:var(--active-color);color:#fff;text-shadow:0 1px 3px #000;transform:rotate(-6deg)}
.uno-turn-status{position:relative;margin:10px 0 8px;text-align:center;font-size:12px;line-height:1.4;color:#f1edff;text-shadow:0 1px 3px #000}.uno-self-name{display:flex;justify-content:center;align-items:center;gap:7px;margin:8px 0 -3px;min-width:0}.uno-self-name strong{font-size:12px;max-width:48%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uno-self-name small{font-size:10px;color:#d7d0ff}.uno-self-name .uno-avatar{height:26px;width:26px;font-size:16px}.uno-self-active .uno-avatar{border-color:#ffe078;box-shadow:0 0 9px #ffe07899}
#friendBoard.colors-board .fg-hand.uno-fan{justify-content:flex-start;flex-wrap:nowrap;gap:0;padding:22px 22px 20px;min-height:145px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;margin:0;scroll-padding:22px}
#friendBoard.colors-board .uno-fan button{position:relative;width:66px;height:99px;flex:0 0 66px;margin-left:-16px;border-radius:8px;transform:translateY(var(--fan-rise)) rotate(var(--fan-angle));transform-origin:50% 140%;transition:transform .15s;box-shadow:0 3px 8px #0008;scroll-snap-align:center}#friendBoard.colors-board .uno-fan button:first-child{margin-left:0}#friendBoard.colors-board .uno-fan button.color-playable{transform:translateY(calc(var(--fan-rise) - 7px)) rotate(var(--fan-angle));z-index:1}#friendBoard.colors-board .uno-fan button:hover:not(:disabled){transform:translateY(-12px) rotate(0);z-index:2}.uno-swipe-hint{display:block;text-align:center;font-size:10px;color:#c7c5f4;margin:0 0 4px}.uno-controls{padding:12px 14px;background:linear-gradient(135deg,#231b45,#11192b);display:grid;gap:10px;grid-template-columns:1fr 2fr;align-items:end}.uno-controls .colors-picker{width:100%;font-size:11px;min-width:0}.uno-controls .colors-picker select{font-size:14px;margin-top:5px}.uno-controls .colors-actions{align-self:end;gap:7px}.uno-controls .colors-actions button{min-height:44px;font-size:11px;padding:9px 6px}
@media(min-width:701px){.uno-arena{padding:24px 24px 16px}.uno-table-center{height:175px;gap:50px}.uno-opponents{min-height:130px}.uno-opponent-hand{transform:scale(1.15);margin-bottom:8px}#friendBoard.colors-board .fg-hand.uno-fan{justify-content:center;min-height:165px}#friendBoard.colors-board .uno-fan button{width:78px;height:117px;flex-basis:78px;margin-left:-18px}.uno-controls{grid-template-columns:1fr 2fr}}
@media(max-width:380px){.uno-arena{padding:12px 7px 10px}.uno-controls{grid-template-columns:1fr;padding:10px}.uno-controls .colors-picker{display:flex;align-items:center;gap:10px}.uno-controls .colors-picker select{flex:1;width:0;margin:0;min-height:38px}.uno-table-center{height:135px}.uno-seat strong{font-size:10px}.uno-self-name strong{max-width:43%}}
@media(prefers-reduced-motion:reduce){#friendBoard.colors-board .uno-fan button{transition:none}}
form[data-form="roomCreate"] label[hidden]{display:none!important}

.bingo-waiting{max-width:660px;margin:22px auto;text-align:center;padding:30px 18px}.bingo-waiting h1{font-size:clamp(25px,5vw,38px);letter-spacing:-.5px;margin:18px 0 12px}.bingo-waiting p{color:#d8d2e5;font-size:16px}.bingo-waiting .globe strong{font-size:58px}

/* Larger homepage artwork, retaining the entire composition on phones. */
.home-banner-premium{position:relative;margin:0 0 28px;padding:3px;border-radius:25px;background:linear-gradient(135deg,#fcdf9a,#926521 28%,#f7d58b 52%,#664686 80%,#cea251);box-shadow:0 16px 45px #0008,0 0 30px #d8ad4820}
.home-banner-premium img{display:block;width:100%;height:auto;max-height:660px;object-fit:contain;border-radius:22px;background:#0c0b12}
.home-banner-premium figcaption{padding:5px 14px;margin-bottom:8px}
@media(max-width:700px){.home-banner-premium{margin:0 -6px 24px;border-radius:20px;padding:2px}.home-banner-premium img{width:100%;height:auto;max-height:none;border-radius:18px}.home-banner-premium+.hero{padding-top:5px}}

#siteSupport{position:static;box-shadow:none;background:transparent;border:0;flex-direction:column;gap:0}#siteSupport .nav-label{position:static;width:auto;height:auto;padding:0;overflow:visible;clip-path:none;white-space:nowrap;font-size:10px;color:#a8ecc9;line-height:1.2}body>header>nav a[hidden]{display:none!important}@media(max-width:700px){body>header>nav{gap:2px;justify-content:space-around}body>header>nav a{flex:1;min-width:0;padding:3px 4px}#siteSupport .nav-icon{width:38px;height:40px}}

.bingo-orbit .globe.globe-machine{background:transparent;box-shadow:none;border:0;width:220px;height:240px}.bingo-machine{display:block;width:100%;height:100%;filter:drop-shadow(0 8px 18px #0008)}

.bingo-ball{animation:none;transform-box:view-box;transform-origin:0 0;filter:drop-shadow(1px 2px 1px #0006)}

.ludo-arena{border:3px solid var(--turn-color,#d8b76d);background:linear-gradient(145deg,color-mix(in srgb,var(--turn-color) 18%,#101622),#101622 75%);transition:background .3s,border-color .3s;box-shadow:0 0 22px color-mix(in srgb,var(--turn-color) 30%,transparent)}.ludo-arena.ludo-my-turn{background:linear-gradient(145deg,color-mix(in srgb,var(--turn-color) 32%,#101622),#16232c);outline:2px solid #fff4;outline-offset:3px}.ludo-seat.ludo-turn{background:color-mix(in srgb,var(--pawn) 40%,#111927);border:2px solid var(--pawn);box-shadow:0 0 18px var(--pawn)}.ludo-turn small{color:#fff;font-weight:800}.ludo-controls{border-left:6px solid var(--turn-color);padding-left:12px}.ludo-controls strong{font-size:20px;color:#fff}.ludo-dice.ludo-rolling{animation:ludo-dice-spin .4s linear infinite!important;opacity:1!important;will-change:transform}@keyframes ludo-dice-spin{0%{transform:rotate(0) scale(.95)}50%{transform:rotate(180deg) scale(1.12)}100%{transform:rotate(360deg) scale(.95)}}@media(prefers-reduced-motion:reduce){.ludo-dice.ludo-rolling{animation:none!important;outline:4px solid var(--turn-color)}}

.bingo-card-notice{text-align:left;padding:22px!important}.bingo-card-notice h2{font-size:22px;margin:0 0 18px;color:#ffe3a1}.bingo-card-notice h3{margin:0 0 12px}.bingo-card-notice p{margin:12px 0;line-height:1.7}.bingo-whatsapp-callout{margin-top:24px;padding:22px 18px;border-radius:16px;border:1px solid #63ceaa88;background:linear-gradient(135deg,#153e38,#162b32);box-shadow:inset 0 1px 0 #ffffff14}.bingo-whatsapp-callout h3{color:#e0fff0;font-size:21px}.bingo-whatsapp-callout p{color:#d7e8e1}.bingo-whatsapp-callout .button{margin-top:8px;white-space:normal;text-align:center}

.naval-fleet-counts{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.naval-fleet-counts span{padding:6px 9px;border-radius:8px;background:#12374a;color:#e1f7ff;font-size:13px}.naval-remaining{font-size:12px;margin:6px 0 12px}.naval-own{display:block!important}

/* Keep both Naval boards framed on portrait phones. */
@media(max-width:700px){
 body:has(#roomView[data-game="naval"]) main{padding:8px 8px calc(82px + env(safe-area-inset-bottom))}
 #roomView[data-game="naval"] .naval-arena{padding:10px 7px}
 #roomView[data-game="naval"] .naval-battle-layout{width:100%;max-width:100%;min-width:0}
 #roomView[data-game="naval"] .naval-battle-layout:has(.enemy-chart){display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:8px;align-items:start}
 #roomView[data-game="naval"] .naval-battle-layout>section{min-width:0}
 #roomView[data-game="naval"] .naval-own{margin:0;padding:0;border:0;background:transparent}
 #roomView[data-game="naval"] .naval-section-title{display:block;margin-bottom:5px;min-height:34px}
 #roomView[data-game="naval"] .naval-section-title h3{font-size:12px;line-height:1.3;margin:0 0 3px}
 #roomView[data-game="naval"] .naval-section-title>span{display:block;font-size:10px}
 #roomView[data-game="naval"] .naval-chart{padding-left:13px;padding-top:15px;min-width:0}
 #roomView[data-game="naval"] .naval-letters{left:13px;height:15px}
 #roomView[data-game="naval"] .naval-numbers{top:15px;width:13px}
 #roomView[data-game="naval"] .naval-letters span,#roomView[data-game="naval"] .naval-numbers span{font-size:8px}
 #roomView[data-game="naval"] .naval-own .naval-chart{margin-top:5px}
 #roomView[data-game="naval"] .naval-fleet-counts{gap:3px;margin:4px 0}
 #roomView[data-game="naval"] .naval-fleet-counts span{padding:4px;font-size:10px;border-radius:5px}
 #roomView[data-game="naval"] .naval-remaining{font-size:9px;line-height:1.3;margin:4px 0}
 #roomView[data-game="naval"] .naval-key{flex-wrap:wrap;gap:4px;font-size:9px;margin:6px 0}
 #roomView[data-game="naval"] .naval-impact{font-size:clamp(9px,2.8vw,16px)}
 #roomView[data-game="naval"] .naval-miss{font-size:12px}
 #roomView[data-game="naval"] .naval-vessel{padding:0}
 #roomView[data-game="naval"] .naval-log{margin-top:8px;padding:6px;position:static}
 #roomView[data-game="naval"] #friendBoard{max-width:100%;box-sizing:border-box}
}

/* Large touch targets for attacks; compact own fleet remains open below. */
@media(max-width:700px){
 #roomView[data-game="naval"] .naval-battle-layout:has(.enemy-chart){display:flex;flex-direction:column;gap:10px;width:100%;max-width:460px}
 #roomView[data-game="naval"] .naval-battle-layout>section{width:100%}
 #roomView[data-game="naval"] .naval-battle-layout>section:first-child .naval-chart{width:100%;padding-left:20px;padding-top:20px}
 #roomView[data-game="naval"] .enemy-chart .naval-letters{left:20px;height:20px}
 #roomView[data-game="naval"] .enemy-chart .naval-numbers{top:20px;width:20px}
 #roomView[data-game="naval"] .enemy-chart .naval-letters span,#roomView[data-game="naval"] .enemy-chart .naval-numbers span{font-size:11px}
 #roomView[data-game="naval"] .naval-section-title{min-height:0;display:flex;flex-wrap:wrap;align-items:center}
 #roomView[data-game="naval"] .naval-section-title h3{font-size:15px}
 #roomView[data-game="naval"] .naval-section-title>span{font-size:11px}
 #roomView[data-game="naval"] .naval-own{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(120px,43%);grid-template-rows:auto auto 1fr;column-gap:10px;padding:9px;border:1px solid #a9e1e355;background:#00263888;border-radius:12px;box-sizing:border-box}
 #roomView[data-game="naval"] .naval-own>.naval-section-title{grid-column:1;display:block}
 #roomView[data-game="naval"] .naval-own>.naval-fleet-counts{grid-column:1;display:grid;gap:4px}
 #roomView[data-game="naval"] .naval-own>.naval-remaining{grid-column:1;font-size:10px}
 #roomView[data-game="naval"] .naval-own>.naval-chart{grid-column:2;grid-row:1/4;margin:0;align-self:center}
 #roomView[data-game="naval"] .naval-fleet-counts span{font-size:11px;padding:5px}
 #roomView[data-game="naval"] .enemy-chart .naval-impact{font-size:clamp(16px,4vw,23px)}
 #roomView[data-game="naval"] .enemy-chart .naval-miss{font-size:20px}
 #roomView[data-game="naval"] .naval-key{font-size:10px}
}

/* Reserve navigation and fleet space instead of using width alone. */
@media(max-width:700px){
 #roomView[data-game="naval"] .naval-arena{padding:8px}
 #roomView[data-game="naval"] .naval-header{padding:4px 0 7px;gap:8px}
 #roomView[data-game="naval"] .naval-header h2{font-size:19px;margin:0}
 #roomView[data-game="naval"] .naval-header small{display:none}
 #roomView[data-game="naval"] .naval-status{font-size:11px;line-height:1.4;margin:3px 0 7px}
 #roomView[data-game="naval"] .naval-battle-layout{gap:7px}
 #roomView[data-game="naval"] .naval-battle-layout>section:first-child .enemy-chart{width:min(100%,var(--naval-attack-width,calc(100svh - 420px)));margin:0 auto}
 #roomView[data-game="naval"] .naval-own{grid-template-columns:minmax(0,1fr) 112px;padding:7px;gap:3px 8px}
 #roomView[data-game="naval"] .naval-own .naval-section-title h3{font-size:14px}
 #roomView[data-game="naval"] .naval-own .naval-fleet-counts{display:flex;flex-wrap:wrap;gap:4px}
 #roomView[data-game="naval"] .naval-own .naval-fleet-counts span{font-size:10px;padding:3px 5px}
 #roomView[data-game="naval"] .naval-own .naval-remaining{margin:2px 0;font-size:9px}
 #roomView[data-game="naval"] .naval-log{font-size:10px;margin-top:5px;padding:4px}
 #roomView[data-game="naval"] .naval-key{margin:4px 0;font-size:9px}
 #roomView[data-game="naval"] .fg-score>div{padding:7px;min-width:100px}
 #roomView[data-game="naval"] .fg-score strong{font-size:12px}
 #roomView[data-game="naval"] .fg-score b{font-size:11px}
 #roomView[data-game="naval"] #friendBoard{padding:7px;margin-top:8px}
}

/* Independent storefront destinations; no fixed bottom menu styles. */
nav.store-areas{position:static;display:flex;justify-content:flex-start;gap:10px;flex-wrap:wrap;background:none;border:0;padding:0;margin:24px 0;z-index:auto}
.store-areas a{padding:12px 20px;font-size:14px}
.store-areas a[aria-current]{background:var(--gold);color:#18140b;border-color:transparent}
.store-offer-card{display:flex;flex-direction:column}.store-offer-card>.row{margin-top:auto}.offer-description{white-space:pre-line}
@media(max-width:700px){nav.store-areas{position:static;padding:0;gap:8px;justify-content:flex-start}.store-areas a{flex:1;text-align:center;padding:12px 10px}}

@media(max-width:700px){header nav>a{line-height:1.2;text-align:center}.nav-detail{display:block;font-size:10px;letter-spacing:.2px;margin-top:3px}}

/* Reversible ambient artwork. Existing background remains underneath. */
body.pn-soft-background{isolation:isolate}
body.pn-soft-background::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#0b0c13a6 0%,#0b0c13b8 58%,#0b0c13f5 100%),url('/pn/pn-soft-background.webp?v=dark-empty-center') center 48%/cover no-repeat;opacity:.48}
body.pn-soft-background .hero{background:linear-gradient(110deg,#0b0c13d9,#0b0c1399 75%,transparent);border-radius:18px;padding:24px}
body.pn-soft-background .page-intro{color:#e0dce7}
body.pn-soft-background header{background:#0b0c13f2}
@media(max-width:700px){body.pn-soft-background::before{background-position:center,center 42%;opacity:.4}body.pn-soft-background .hero{padding:18px 14px}}

/* Playful service and game tiles replace the portal name headings. */
.portal::before{content:none}
.portal-app-icons{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 8px;padding:5px 0;align-items:center}
.portal-app-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;border:1px solid #ffffff35;background:linear-gradient(145deg,#fff2,#ffffff05);box-shadow:inset 0 1px 2px #fff3,0 5px 12px #0005;transform:rotate(-5deg);flex:0 0 auto}
.portal-app-icon:nth-child(even){transform:rotate(6deg) translateY(-4px)}
.portal-app-icon>span{font-size:27px;line-height:1;display:grid;place-items:center}
.portal-app-icon img{display:block;width:34px;height:34px}
.portal-app-icon.app-tint-0{background:linear-gradient(145deg,#b84965,#5a294e)}
.portal-app-icon.app-tint-1{background:linear-gradient(145deg,#6966ca,#303469)}
.portal-app-icon.app-tint-2{background:linear-gradient(145deg,#328aab,#1d465e)}
.portal-app-icon.app-tint-3{background:linear-gradient(145deg,#9c7335,#594323)}
.portal-app-icon.app-tint-4{background:linear-gradient(145deg,#62867c,#2b494d)}
.portal.store{background:linear-gradient(135deg,#492a39e8,#1c1720ed 72%)}
.portal.play{background:linear-gradient(135deg,#302951ed,#142c3aeb 80%)}
@media(max-width:380px){.portal-app-icons{gap:8px}.portal-app-icon{width:41px;height:41px;border-radius:12px}.portal-app-icon>span{font-size:24px}}

.pn-home-portals{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pn-entry{--accent:#31cfff;--tone:#0065fb;position:relative;min-width:0;overflow:hidden;border:1.5px solid var(--accent);border-radius:24px;background:radial-gradient(ellipse at 50% 0,#0a4b8f88,transparent 75%),#031020;box-shadow:0 0 18px #009aff35,inset 0 0 20px #009aff15}
.pn-entry-store{--accent:#ff475b;--tone:#e40026;background:radial-gradient(ellipse at 50% 0,#87162f77,transparent 75%),#17060e;box-shadow:0 0 18px #ff003735,inset 0 0 20px #ff003715}
.pn-entry-art{position:relative;aspect-ratio:3.8;overflow:hidden;mask-image:linear-gradient(#000 72%,transparent)}
.pn-entry-art img{position:absolute;display:block;width:150%;max-width:none;height:auto;left:-25%;top:0;transform:translateY(-6.2%)}
.pn-entry-store .pn-entry-art img{transform:translateY(-49%)}
.pn-entry-content{text-align:center;padding:0 24px 26px}
.pn-entry-content .eyebrow{color:var(--accent);font-size:13px;letter-spacing:3px}
.pn-entry h2{font-size:clamp(25px,3vw,38px);line-height:1.15;margin:14px 0;letter-spacing:-.7px;color:#f4f7ff}
.pn-entry em{font-style:normal;color:var(--accent)}.pn-entry p{font-size:15px;color:#d3d9e8;line-height:1.6;margin:0 0 22px}
:is(.pn-entry .pn-entry-button,.admin-quick-links .central-link){display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:15px 22px;border-radius:40px;color:#fff;font-size:15px;background:linear-gradient(180deg,var(--tone),color-mix(in srgb,var(--tone) 55%,#020719));border:1px solid var(--accent);box-shadow:0 0 14px color-mix(in srgb,var(--accent) 45%,transparent),inset 0 1px 5px #fff5}
.pn-entry-button span{font-size:26px;line-height:1}.pn-offer-shortcuts{display:flex;gap:10px;margin-top:16px}.pn-offer-shortcuts a{flex:1;padding:10px 7px;border:1px solid #e7445977;border-radius:24px;font-size:13px;background:#19060e}
.pn-home-caption{text-align:center;font-size:12px;margin:22px 0;color:#c4c6d4}
@media(max-width:700px){.pn-home-portals{grid-template-columns:1fr;gap:16px}.pn-entry{border-radius:22px}.pn-entry-content{padding:0 20px 22px}.pn-entry h2{font-size:28px}.pn-entry-art{aspect-ratio:3.8}}

/* Balance homepage artwork against readable content. */
.home-banner-premium{max-width:960px;margin:0 auto 24px}
.home-banner-premium img{width:100%;height:clamp(230px,32vw,410px);max-height:410px;object-fit:cover;object-position:50% 18%}
.home-banner-premium+.hero{padding-top:18px;padding-bottom:24px}
.pn-home-portals .pn-entry p{min-height:3.2em}
@media(max-width:700px){
 .home-banner-premium{margin:0 0 20px}
 .home-banner-premium img{height:auto;aspect-ratio:16/10;max-height:300px;object-fit:cover;object-position:50% 12%}
 .home-banner-premium+.hero h1{font-size:clamp(30px,8vw,40px);line-height:1.15}
 .home-banner-premium+.hero p{font-size:16px;line-height:1.65}
 .pn-home-portals .pn-entry h2{font-size:27px;line-height:1.2}
 .pn-home-portals .pn-entry p{font-size:16px;line-height:1.6}
 .pn-home-portals .pn-entry-button{min-height:48px}
}
/* Also protect the home layout on portrait touchscreens reporting a wide viewport. */
@media (min-width:701px) and (max-width:1100px) and (hover:none) and (pointer:coarse) and (orientation:portrait){
 body:has(.pn-home-portals) main{max-width:760px}
 .pn-home-portals{grid-template-columns:1fr}
 body:has(.pn-home-portals) .grid{grid-template-columns:1fr}
 .pn-entry p{font-size:18px}
 .pn-entry h2{font-size:32px}
 .home-banner-premium img{height:340px}
}

.app-catalog{margin:28px 0}.app-catalog>h2{font-size:30px;margin:10px 0}.app-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.app-catalog-card{border:1px solid #ffffff25;border-radius:20px;overflow:hidden;background:#12121e}.app-catalog-banner{height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:radial-gradient(ellipse at 50% 110%,var(--app-color),transparent 75%),#07090f;border-bottom:2px solid var(--app-color)}.app-catalog-banner>span{font-size:32px;font-weight:850;color:white;letter-spacing:-1px;text-shadow:0 3px 16px #000}.app-catalog-banner>small{font-size:9px;letter-spacing:3px;color:#eee}.app-catalog-content{padding:20px}.app-catalog-content h3{margin:0 0 10px;font-size:21px}.app-catalog-content p{font-size:16px;line-height:1.6;min-height:3.2em}.app-catalog-content .price{display:block;color:#f3cc68;font-size:28px;margin:18px 0 8px}.app-catalog-content>small{display:block;color:#aaaabd;font-size:12px}@media(max-width:900px){.app-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.app-catalog-grid{grid-template-columns:1fr}.app-catalog-banner{height:132px}.app-catalog-content p{min-height:0}}

.annual-promotion{position:relative;overflow:hidden;isolation:isolate;text-align:center;margin:24px 0;padding:40px 24px;border:1px solid #e6b955;border-radius:24px;background:radial-gradient(ellipse at 50% 115%,#b67a2266,transparent 62%),linear-gradient(135deg,#26090f,#090a10 55%,#25200f);box-shadow:inset 0 0 35px #e4ac4012,0 12px 40px #0005}.annual-promotion:before{content:'';position:absolute;inset:12px;border:1px solid #dbab4433;border-radius:15px;z-index:-1}.annual-promotion .eyebrow{display:block;color:#e8c269}.annual-badge{display:inline-block;margin:20px 0 8px;padding:7px 20px;border-radius:30px;background:#e4b95a;color:#1a1110;font-size:13px;font-weight:800;letter-spacing:2px}.annual-promotion h2{font-size:clamp(26px,6vw,44px);margin:12px 0;color:#fff;letter-spacing:2px}.annual-promotion>strong{display:block;color:#ffd76f;font-size:26px;line-height:1.1;text-shadow:0 4px 22px #d99b2f30}.annual-promotion strong b{font-size:clamp(80px,18vw,126px);letter-spacing:-5px}.annual-promotion strong span{font-size:40px}.annual-promotion p{font-size:20px;margin:20px 0 12px;color:#f5ecd6}.annual-promotion>small{display:block;max-width:460px;margin:auto;color:#c9c2b6;font-size:14px;line-height:1.6}

/* Remove the top brand strip while preserving navigation. */
body>header .identity{display:none}body>header{justify-content:center}@media(max-width:700px){body>header{padding:0;border:0;min-height:0;height:0;background:transparent}}

.annual-offer{margin:24px 0;border:1px solid #e342434f;border-radius:24px;overflow:hidden;background:#11111b}.annual-offer-art{display:block;width:100%;max-width:640px;height:auto;margin:auto}.annual-offer-copy{padding:24px;text-align:center}.annual-offer-copy h2{font-size:clamp(25px,5vw,36px);margin:12px 0}.annual-offer-copy p{font-size:17px;line-height:1.7}.annual-offer-copy strong{color:#f5cc70}

/* Neon titles on the two homepage entry cards. */
.pn-home-portals .pn-entry-content .eyebrow,.pn-home-portals .pn-entry-content h2{color:#fff4f5;text-shadow:0 0 2px #fff,0 0 8px var(--accent),0 0 18px var(--accent);animation:pn-title-neon 3.6s ease-in-out infinite}.pn-home-portals .pn-entry-content h2 em{color:inherit;text-shadow:inherit}.pn-home-portals .pn-entry-play .pn-entry-content .eyebrow,.pn-home-portals .pn-entry-play .pn-entry-content h2{color:#effcff;animation-delay:1.2s}@keyframes pn-title-neon{0%,32%,52%,100%{opacity:1;text-shadow:0 0 2px #fff,0 0 8px var(--accent),0 0 18px var(--accent)}42%{opacity:.72;text-shadow:0 0 2px var(--accent),0 0 5px var(--accent)}}@media(prefers-reduced-motion:reduce){.pn-home-portals .pn-entry-content .eyebrow,.pn-home-portals .pn-entry-content h2{animation:none}}

.home-banner-premium+.hero>.eyebrow{display:block;font-size:clamp(20px,4.8vw,28px);line-height:1.35;letter-spacing:2px;font-weight:800}

/* Larger entry artwork and dimensional navigation icons. */
.pn-home-portals .pn-entry-art{aspect-ratio:3}.pn-home-portals .pn-entry-art img{width:185%;left:-42.5%}body>header>nav a{display:flex;align-items:center;justify-content:center;gap:7px}.nav-icon{display:block;flex-shrink:0;filter:drop-shadow(0 0 5px #68cfff25)}body>header>nav a.current .nav-icon{transform:translateY(-2px);filter:drop-shadow(0 0 8px #6ccfff77)}@media(max-width:700px){body>header>nav{align-items:center;padding:8px 10px max(8px,env(safe-area-inset-bottom));min-height:68px}body>header>nav a{min-width:44px;min-height:48px;padding:5px 10px}body>header>nav .nav-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}body>header>nav .nav-icon{width:40px;height:43px}}

body>header>nav a[hidden]{display:none}

/* Netplay store: red and black navigation, softer streaming surfaces. */
.store-areas a.button{color:#f5e9ec;background:linear-gradient(145deg,#34121a,#100c11);border:1px solid #8b2d405e;box-shadow:inset 0 1px 0 #ffffff08}.store-areas a.button[aria-current]{color:#fff;background:linear-gradient(145deg,#bc1835,#570c20 70%,#180b11);border-color:#ef4965;box-shadow:0 3px 16px #9c173b30,inset 0 1px 0 #ffffff20}.store-areas a.button:hover{background:linear-gradient(145deg,#87182e,#210d15)}#app:has(.store-areas)>.chips button{background:linear-gradient(140deg,#28161c,#121016);border-color:#71334270;color:#e9dce1}#app:has(.store-areas)>.chips button.active{background:linear-gradient(140deg,#813246,#391722);color:#fff;border-color:#af586d}.streaming-card{background:linear-gradient(145deg,#241a20,#121116 75%);border-color:#74404d55;box-shadow:0 5px 18px #0002}.streaming-card .app-catalog-banner{background:radial-gradient(ellipse at 50% 110%,#73344266,transparent 80%),linear-gradient(145deg,#302029,#121015);border-color:#8b485c88}.streaming-card .app-catalog-banner>span{color:#f4e9ed;text-shadow:0 2px 10px #0006}.streaming-card .app-catalog-banner>small{color:#bc9fa9}.streaming-card>.eyebrow{color:#d59aa9}.streaming-card .offer-description{color:#c4b8c1}.streaming-card .price{color:#f0b8c7}.streaming-card>.row>button,.annual-offer-copy>button{background:linear-gradient(145deg,#a1324c,#64192f);border-color:#be526b;color:#fff;box-shadow:inset 0 1px 0 #ffffff14}.streaming-card h2{color:#f4edf0}

/* Faster neon pulse and premium metallic navigation medallions. */
.pn-home-portals .pn-entry-content .eyebrow,.pn-home-portals .pn-entry-content h2{animation-duration:1.3s}.pn-home-portals .pn-entry-play .pn-entry-content .eyebrow,.pn-home-portals .pn-entry-play .pn-entry-content h2{animation-delay:.35s}body>header>nav .nav-icon{width:46px;height:49px;filter:drop-shadow(0 3px 3px #0008);transition:transform .2s ease,filter .2s ease}body>header>nav a.current{background:linear-gradient(160deg,#382e1d70,#15131d);box-shadow:inset 0 1px 0 #e7c67544}body>header>nav a.current .nav-icon{transform:translateY(-2px);filter:drop-shadow(0 0 5px #d7b56777)}@media(max-width:700px){body>header>nav{background:linear-gradient(180deg,#17151fee,#090a12fa);border-top:1px solid #bc965d55}body>header>nav a{padding:3px 8px}body>header>nav .nav-icon{width:46px;height:49px}}@media(prefers-reduced-motion:reduce){.pn-home-portals .pn-entry-content .eyebrow,.pn-home-portals .pn-entry-content h2{animation:none}body>header>nav .nav-icon{transition:none}}

/* Individual cinematic app artwork and coordinated premium surfaces. */
.streaming-card{--stream-accent:#a92d49;overflow:hidden;background:radial-gradient(ellipse at 100% 0,color-mix(in srgb,var(--stream-accent) 13%,transparent),transparent 70%),linear-gradient(150deg,#191c27,#0b0d14 85%);border-color:color-mix(in srgb,var(--stream-accent) 35%,#393b45);box-shadow:0 8px 24px #0004,inset 0 1px 0 #ffffff0b}.streaming-card .streaming-artwork{margin:-25px -25px 22px;line-height:0;position:relative}.streaming-card .streaming-artwork .product-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:0}.streaming-card .streaming-artwork figcaption{line-height:1.5;padding:8px 20px}.streaming-card>.eyebrow{color:color-mix(in srgb,var(--stream-accent) 55%,#fff)}.streaming-card .price{color:#f6dfaa}.streaming-card .offer-description{color:#c4c7d1}.streaming-card>.row>button{background:linear-gradient(145deg,color-mix(in srgb,var(--stream-accent) 80%,#263042),color-mix(in srgb,var(--stream-accent) 40%,#11121c));border-color:color-mix(in srgb,var(--stream-accent) 65%,#aaa);color:#fff;box-shadow:inset 0 1px 0 #ffffff20,0 4px 12px #0003}

.streaming-art-title{position:absolute;top:6%;left:8%;right:8%;text-align:center;line-height:1.1;font-size:clamp(27px,4vw,45px);font-weight:850;letter-spacing:-1px;color:#fff;text-shadow:0 2px 3px #000,0 0 18px #0009}.streaming-art-title small{display:block;font-size:clamp(11px,1.5vw,17px);line-height:1.4;letter-spacing:2px;color:#fff;margin-top:7px}.max-title{font-size:clamp(40px,5vw,64px);color:#eaf6ff;text-shadow:0 2px 3px #000,0 0 14px #43aaffaa}

/* Clearer product titles within the two code-lettered banners. */
.streaming-art-title.globo-title{top:5%;font-size:clamp(37px,5.5vw,54px);letter-spacing:-1.2px}.streaming-art-title.globo-title small{font-size:clamp(15px,2vw,20px);font-weight:800;letter-spacing:1.2px;line-height:1.3;margin-top:8px}.streaming-art-title.max-title{top:7%;font-size:clamp(78px,11vw,110px);font-weight:900;letter-spacing:-4px;text-shadow:0 3px 2px #000,0 0 12px #4092d877}

.streaming-art-title.unitv-title{font-size:clamp(45px,7vw,65px);color:#eef2f6;top:6%;text-shadow:0 2px 2px #000,0 0 12px #7a9dcb44}

/* Compact Netplay product catalog. */
.store-product-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.store-product-grid .store-offer-card{padding:14px;border-radius:16px}.store-product-grid .streaming-artwork{margin:-14px -14px 12px}.store-product-grid .product-image{height:auto;aspect-ratio:3/2;object-fit:cover}.store-product-grid .store-offer-card>.eyebrow{font-size:9px;letter-spacing:1.3px}.store-product-grid .store-offer-card h2{font-size:19px;line-height:1.2;letter-spacing:-.3px;margin:8px 0}.store-product-grid .offer-description{font-size:13px;line-height:1.45;margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.store-product-grid .price{font-size:21px}.store-product-grid .store-offer-card>.row{gap:8px}.store-product-grid .store-offer-card>.row>button{padding:10px 12px;font-size:12px;min-height:40px}.store-product-grid .streaming-art-title.globo-title{font-size:25px;letter-spacing:-.8px}.store-product-grid .streaming-art-title.globo-title small{font-size:10px;letter-spacing:.4px;margin-top:4px}.store-product-grid .streaming-art-title.max-title{font-size:60px;letter-spacing:-2px}.store-product-grid .streaming-art-title.unitv-title{font-size:38px}.purchase-description{white-space:pre-line}@media(max-width:700px){.store-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.store-product-grid .store-offer-card{padding:12px}.store-product-grid .streaming-artwork{margin:-12px -12px 10px}.store-product-grid .store-offer-card h2{font-size:17px}.store-product-grid .offer-description{font-size:12px}.store-product-grid .price{font-size:20px}.store-product-grid .store-offer-card>.row{align-items:stretch;flex-direction:column;gap:8px}.store-product-grid .store-offer-card>.row>button{width:100%;min-height:42px}.store-product-grid .streaming-art-title.globo-title{font-size:20px}.store-product-grid .streaming-art-title.globo-title small{font-size:8px;letter-spacing:.1px}.store-product-grid .streaming-art-title.max-title{font-size:46px}.store-product-grid .streaming-art-title.unitv-title{font-size:29px}}@media(max-width:359px){.store-product-grid{grid-template-columns:1fr}}

/* Compact navigation with readable labels on mobile. */
body>header>nav a{flex-direction:column;gap:2px}body>header>nav .nav-label,#siteSupport .nav-label{position:static;width:auto;height:auto;padding:0;overflow:visible;clip-path:none;white-space:normal;text-align:center;font-size:10px;line-height:1.15;max-width:76px}body>header>nav #siteSupport .nav-label{color:#a8ecc9}@media(max-width:700px){body>header>nav{min-height:74px;padding-top:5px;gap:1px}body>header>nav a{padding:2px;min-height:58px}body>header>nav .nav-icon,#siteSupport .nav-icon{width:38px;height:40px}body>header>nav .nav-label{font-size:9px;max-width:65px}}

.streaming-sky-addons .streaming-artwork .product-image{object-fit:contain;background:#080a0e}

.install-app-button{margin:12px 0 0;background:linear-gradient(145deg,#f0d58d,#bd8e36);color:#17130a;box-shadow:0 5px 20px #d6b35b30}

/* Compact home entry cards to sit closer to the height of the top brand banner. */
.pn-home-portals{max-width:960px;margin:0 auto;gap:14px}
.pn-home-portals .pn-entry{border-radius:18px}
.pn-home-portals .pn-entry-art{aspect-ratio:5.4}
.pn-home-portals .pn-entry-art img{width:165%;left:-32.5%;transform:translateY(-7%)}
.pn-home-portals .pn-entry-store .pn-entry-art img{transform:translateY(-47%)}
.pn-home-portals .pn-entry-content{padding:0 16px 15px}
.pn-home-portals .pn-entry-content .eyebrow{font-size:11px;letter-spacing:2px}
.pn-home-portals .pn-entry h2{font-size:clamp(20px,2.2vw,26px);margin:8px 0}
.pn-home-portals .pn-entry p{font-size:13px;line-height:1.4;min-height:0;margin:0 0 12px}
.pn-home-portals .pn-entry .pn-entry-button{min-height:40px;padding:10px 16px;font-size:13px}
.pn-home-portals .pn-offer-shortcuts{gap:8px;margin-top:10px}
.pn-home-portals .pn-offer-shortcuts a{padding:7px 6px;font-size:11px}
@media(max-width:700px){
 .pn-home-portals{grid-template-columns:1fr;gap:12px}
 .pn-home-portals .pn-entry{border-radius:17px}
 .pn-home-portals .pn-entry-art{aspect-ratio:6.2}
 .pn-home-portals .pn-entry-content{padding:0 15px 14px}
 .pn-home-portals .pn-entry h2{font-size:22px;margin:6px 0}
 .pn-home-portals .pn-entry p{font-size:13px;line-height:1.4;margin-bottom:10px}
 .pn-home-portals .pn-entry .pn-entry-button{min-height:38px;padding:9px 14px;font-size:12px}
 .pn-home-portals .pn-offer-shortcuts{margin-top:8px}
}

/* Zigzag entry cards with circular content carousels for games and store services. */
.pn-home-portals{display:flex;flex-direction:column;max-width:880px;margin:0 auto;gap:16px}
.pn-home-portals .pn-entry{width:min(90%,700px);align-self:flex-start}
.pn-home-portals .pn-entry:nth-child(2){align-self:flex-end;margin-top:0}
.pn-wheel-showcase{max-width:900px;margin:30px auto 8px;padding:25px 20px 28px;border:1px solid #d8b76d3b;border-radius:24px;background:radial-gradient(ellipse at 50% 0,#d8b76d12,transparent 68%),linear-gradient(145deg,#17151b,#0d0e16);box-shadow:inset 0 1px 0 #ffffff0a,0 14px 36px #0004;overflow:hidden}
.pn-wheel-intro{text-align:center;margin-bottom:14px}.pn-wheel-intro h2{margin:7px 0;color:#f4e8c8;font-size:clamp(22px,3vw,30px)}.pn-wheel-intro p{margin:0;font-size:14px}
.pn-wheel-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:520px;margin:auto}
.pn-wheel-unit{--wheel-accent:#43bdfb;position:relative;min-width:0;height:245px;display:grid;place-items:center;padding-bottom:24px}
.pn-wheel-unit-store{--wheel-accent:#ff5365}
.pn-wheel-ring{position:absolute;top:12px;width:194px;height:194px;border:1px solid color-mix(in srgb,var(--wheel-accent) 55%,transparent);border-radius:50%;box-shadow:0 0 28px color-mix(in srgb,var(--wheel-accent) 18%,transparent),inset 0 0 22px color-mix(in srgb,var(--wheel-accent) 12%,transparent)}
.pn-wheel-ring:before,.pn-wheel-ring:after{content:'';position:absolute;inset:11px;border:1px dashed color-mix(in srgb,var(--wheel-accent) 35%,transparent);border-radius:50%;transform:rotate(28deg)}.pn-wheel-ring:after{inset:22px;transform:rotate(-35deg);opacity:.7}
.pn-wheel-window{position:relative;z-index:1;top:-5px;width:148px;height:148px;border:1px solid color-mix(in srgb,var(--wheel-accent) 65%,transparent);border-radius:50%;overflow:hidden;background:radial-gradient(circle at 50% 35%,#252938,#0c0e15 75%);box-shadow:0 0 20px color-mix(in srgb,var(--wheel-accent) 18%,transparent),inset 0 0 18px #0008}
.pn-wheel-track{display:flex;width:600%;height:100%;animation:pn-showcase-pass 25s steps(5,end) infinite}
.pn-wheel-unit-store .pn-wheel-track{animation-direction:reverse}
.pn-wheel-slide{flex:0 0 16.6666667%;height:100%;padding:15px 11px 12px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-width:0}
.pn-wheel-thumb{display:block;width:100%;height:82px;border:1px solid #ffffff32;border-radius:10px;overflow:hidden;object-fit:cover;background:#111722;box-shadow:0 4px 12px #0007}
.pn-wheel-game{background-image:url('/pn/central-game-atlas.webp');background-size:300% 300%;background-position:var(--atlas-x) var(--atlas-y);background-repeat:no-repeat}
.pn-wheel-slide>span:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:11px;font-weight:800;letter-spacing:.4px;text-shadow:0 1px 7px #000}
.pn-wheel-company{position:absolute;bottom:6px;left:4px;right:4px;text-align:center;color:var(--wheel-accent);font-size:10px;font-weight:850;letter-spacing:1.5px;text-shadow:0 0 10px color-mix(in srgb,var(--wheel-accent) 45%,transparent)}
@keyframes pn-showcase-pass{to{transform:translateX(-83.3333333%)}}
@media(max-width:700px){.pn-home-portals{gap:12px}.pn-home-portals .pn-entry{width:92%}.pn-wheel-showcase{margin:24px -2px 6px;padding:22px 8px 20px;border-radius:20px}.pn-wheel-pair{gap:4px}.pn-wheel-unit{height:210px;padding-bottom:22px}.pn-wheel-ring{top:8px;width:166px;height:166px}.pn-wheel-ring:before{inset:9px}.pn-wheel-ring:after{inset:18px}.pn-wheel-window{width:128px;height:128px;top:-3px}.pn-wheel-slide{padding:14px 9px 10px;gap:6px}.pn-wheel-thumb{height:68px}.pn-wheel-slide>span:last-child{font-size:10px}.pn-wheel-company{font-size:9px;letter-spacing:1px}.pn-wheel-intro p{font-size:12px}}
@media(max-width:360px){.pn-wheel-unit{height:190px}.pn-wheel-ring{width:148px;height:148px}.pn-wheel-window{width:114px;height:114px}.pn-wheel-slide{padding:12px 7px 8px}.pn-wheel-thumb{height:58px}.pn-wheel-slide>span:last-child{font-size:9px}}
@media(prefers-reduced-motion:reduce){.pn-wheel-track{animation:none!important}}

/* Mobile home carousels: square service and game cards move in horizontal rows. */
.pn-home-carousel-stack{position:relative;left:50%;transform:translateX(-50%);width:100vw;max-width:100vw;margin:74px 0 30px;display:grid;gap:40px;overflow:hidden}
.pn-home-carousel{min-width:0;width:100%;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent)}
.pn-home-carousel-track{display:flex;width:max-content;animation:pn-home-carousel-scroll var(--pn-carousel-duration,22s) linear infinite;will-change:transform}
.pn-home-carousel-store .pn-home-carousel-track{animation-direction:reverse}
@media(hover:hover) and (pointer:fine){.pn-home-carousel:hover .pn-home-carousel-track{animation-play-state:paused}}
.pn-home-carousel:focus-within .pn-home-carousel-track,.pn-home-carousel.is-touch-paused .pn-home-carousel-track{animation-play-state:paused}
.pn-home-carousel-card{flex:0 0 190px;aspect-ratio:1;margin-right:18px;padding:0;display:block;border:1px solid #ffffff1c;border-radius:23px;background:#10111b;box-shadow:inset 0 1px 0 #ffffff0a,0 8px 22px #0007;color:#fff;text-align:center;overflow:hidden}
.pn-home-carousel-card:focus-visible{outline:3px solid #56d4ff;outline-offset:3px}
.pn-home-carousel-art{display:block;width:100%;height:100%;border:0;border-radius:inherit;object-fit:cover;background:#0c1420;box-shadow:none}
.pn-home-carousel-art-contain{object-fit:contain;background:#090a10}
.pn-home-carousel-game{background-image:url('/pn/central-game-atlas.webp');background-size:300% 300%;background-position:var(--atlas-x) var(--atlas-y);background-repeat:no-repeat}
.pn-home-carousel-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:800;line-height:1.2;text-shadow:0 1px 5px #000}
.pn-home-carousel-card{position:relative}.pn-home-carousel-caption{position:absolute;inset:auto 0 0;padding:20px 8px 11px;background:linear-gradient(180deg,transparent,#05060be8 48%);color:#fff;font-size:17px;font-weight:850;line-height:1.15;letter-spacing:.15px;text-align:center;text-shadow:0 2px 5px #000;pointer-events:none}.pn-home-carousel-service{transition:filter .2s ease}.pn-home-carousel-service-netflix,.pn-home-carousel-service-clarotv,.pn-home-carousel-service-prime,.pn-home-carousel-service-youcine{filter:brightness(.88) saturate(.88)}
@keyframes pn-home-carousel-scroll{to{transform:translateX(-50%)}}
@media(max-width:700px){.pn-home-carousel-stack{margin-top:70px;gap:38px}.pn-home-carousel-card{flex-basis:180px;margin-right:18px}}
@media(max-width:380px){.pn-home-carousel-card{flex-basis:164px;margin-right:14px}}
@media(prefers-reduced-motion:reduce){.pn-home-carousel-track{animation:none!important}}

/* Keep the two entry cards together and expose more of each banner artwork. */
.pn-home-portals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:960px;margin:0 auto;gap:14px;align-items:stretch}
.pn-home-portals .pn-entry,.pn-home-portals .pn-entry:nth-child(2){width:100%;min-width:0;align-self:stretch;margin:0;border-width:2px}
.pn-home-portals .pn-entry-art{aspect-ratio:2.1;mask-image:none}
.pn-home-portals .pn-entry-art img{width:100%;height:100%;max-width:100%;left:0;top:0;transform:none;object-fit:cover;object-position:center 6%}
.pn-home-portals .pn-entry-store .pn-entry-art img{object-position:center 63%}
.pn-home-portals .pn-entry-play .pn-entry-art img{object-position:center 8%}
.pn-home-portals .pn-entry-store{border-color:#ff405b;box-shadow:0 0 18px #ff003735,inset 0 0 20px #ff003715}
.pn-home-portals .pn-entry-play{border-color:#36ccff;box-shadow:0 0 18px #00aaff35,inset 0 0 20px #00aaff15}
@media(max-width:700px){.pn-home-portals{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pn-home-portals .pn-entry{border-radius:17px}.pn-home-portals .pn-entry-art{aspect-ratio:1.2}.pn-home-portals .pn-entry-play .pn-entry-art img{object-position:center 12%}.pn-home-portals .pn-entry-content{padding:0 11px 13px}.pn-home-portals .pn-entry-content .eyebrow{font-size:9px;letter-spacing:1.5px}.pn-home-portals .pn-entry h2{font-size:19px;line-height:1.15;margin:6px 0}.pn-home-portals .pn-entry p{font-size:11px;line-height:1.35;margin:0 0 9px;min-height:0}.pn-home-portals .pn-entry .pn-entry-button{min-height:36px;padding:8px 10px;font-size:10px}.pn-home-portals .pn-offer-shortcuts{gap:5px;margin-top:7px}.pn-home-portals .pn-offer-shortcuts a{padding:6px 4px;font-size:9px;white-space:nowrap}}
@media(max-width:360px){.pn-home-portals{gap:8px}.pn-home-portals .pn-entry-content{padding:0 9px 11px}.pn-home-portals .pn-entry h2{font-size:17px}.pn-home-portals .pn-entry p{font-size:10px}.pn-home-portals .pn-entry .pn-entry-button{font-size:9px;padding-inline:7px}.pn-home-portals .pn-offer-shortcuts a{font-size:8px}}

/* Keep the full PN hero composition visible, including the single center pedestal. */
.home-banner-premium img{height:auto;aspect-ratio:4/3;max-height:none;object-fit:contain;object-position:center}
@media(max-width:700px){.home-banner-premium img{height:auto;aspect-ratio:4/3;max-height:none;object-fit:contain;object-position:center}}

/* Slightly narrower home banner with the complete artwork centered. */
.home-banner-premium{position:relative;left:50%;transform:translateX(-50%);width:min(94vw,1280px);max-width:1280px;margin:0 0 28px;padding:0;border:0;border-radius:18px;background:#090a10;box-shadow:0 1px 0 #d8b76d66,0 16px 36px #0007;overflow:hidden}
.home-banner-premium img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;border-radius:inherit;background:#090a10}
@media(max-width:700px){.home-banner-premium{margin-bottom:20px;border-radius:16px}.home-banner-premium img{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;border-radius:inherit}}

/* Enlarge the branded banner art so the service and game icons are easier to see. */
.pn-home-portals .pn-entry-art{aspect-ratio:2.7}
.pn-home-portals .pn-entry-content>.eyebrow{display:none}
@media(max-width:700px){.pn-home-portals .pn-entry-art{aspect-ratio:1.5}}
.pn-home-portals .pn-entry-play .pn-entry-art{aspect-ratio:2}
.pn-home-portals .pn-entry-play .pn-entry-content{padding-top:8px}
.pn-entry-play-button-label{animation:pn-entry-play-button-blink 1.2s steps(2,end) infinite}
@keyframes pn-entry-play-button-blink{50%{opacity:.3}}
@media(max-width:700px){.pn-home-portals .pn-entry-play .pn-entry-art{aspect-ratio:2}}
@media(prefers-reduced-motion:reduce){.pn-entry-play-button-label{animation:none}}

/* Home vitrine: one circle below the other, with square app/game art passing in opposite directions. */
.pn-wheel-pair{display:flex;flex-direction:column;gap:10px;max-width:520px;margin:auto}
.pn-wheel-track{width:700%;animation:pn-showcase-pass 30s steps(6,end) infinite}
.pn-wheel-slide{flex:0 0 14.2857143%}
.pn-wheel-thumb{width:82px;height:82px;flex:none;object-fit:cover;border-radius:10px}
@keyframes pn-showcase-pass{to{transform:translateX(-85.7142857%)}}
@media(max-width:700px){.pn-wheel-pair{gap:8px}.pn-wheel-thumb{width:68px;height:68px}}
@media(max-width:360px){.pn-wheel-thumb{width:58px;height:58px}}
.pn-home-portals .pn-entry-play .pn-entry-content p{font-size:15px}
/* PlayOn banner crop hides the artwork's embedded CTA while exposing more of the blue panel. */
.pn-home-portals .pn-entry-play .pn-entry-art{aspect-ratio:1.8;background:#04172b}
.pn-home-portals .pn-entry-play .pn-entry-art img{object-position:center top;clip-path:inset(5% 0 0 0)}
.pn-home-portals .pn-entry-play .pn-entry-button{min-height:36px;padding:8px 13px;font-size:12px}
@media(max-width:700px){.pn-home-portals .pn-entry-play .pn-entry-art{aspect-ratio:1.8}.pn-home-portals .pn-entry-play .pn-entry-button{min-height:32px;padding:7px 10px;font-size:10px}}
/* Match the PlayOn treatment on the Netplay banner and button. */
.pn-home-portals .pn-entry-store .pn-entry-art{aspect-ratio:2;background:#17060e}
.pn-home-portals .pn-entry-store .pn-entry-art img{object-position:center 74%;clip-path:inset(0 0 8% 0)}
.pn-entry-store-button-label{animation:pn-entry-play-button-blink 1.2s steps(2,end) infinite}
@media(max-width:700px){.pn-home-portals .pn-entry-store .pn-entry-art{aspect-ratio:2}}
@media(prefers-reduced-motion:reduce){.pn-entry-store-button-label{animation:none}}

/* Keep the two portal actions compact and identical in size. */
.pn-home-portals .pn-entry-store .pn-entry-button,.pn-home-portals .pn-entry-play .pn-entry-button{min-height:34px;padding:7px 12px;font-size:11px}
@media(max-width:700px){.pn-home-portals .pn-entry-store .pn-entry-button,.pn-home-portals .pn-entry-play .pn-entry-button{min-height:34px;padding:7px 12px;font-size:11px}}

/* Responsive homepage cards: clean standalone art, with equal compact CTAs below. */
.pn-home-portals{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.pn-home-portals .pn-entry-art{aspect-ratio:1;mask-image:none;background:#050914}
.pn-home-portals .pn-entry-art img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;left:0;top:0;transform:none;object-fit:cover;object-position:center}
.pn-home-portals .pn-entry-store .pn-entry-art img,.pn-home-portals .pn-entry-play .pn-entry-art img{object-position:center}
.pn-home-portals .pn-entry-content{padding:14px 16px 18px}
.pn-home-portals .pn-entry .pn-entry-button{width:170px;min-height:36px;margin:0 auto;justify-content:center;padding:8px 12px;font-size:12px}
.pn-home-portals .pn-entry-button>span[aria-hidden="true"]{display:none}
@media(max-width:700px){.pn-home-portals{grid-template-columns:minmax(0,1fr);gap:14px}.pn-home-portals .pn-entry{width:100%;max-width:430px;margin:0 auto}.pn-home-portals .pn-entry-art{aspect-ratio:1}.pn-home-portals .pn-entry-content{padding:12px 14px 16px}.pn-home-portals .pn-entry .pn-entry-button{width:170px;min-height:36px;font-size:12px}}

/* Render each square banner at its natural ratio so no text is cropped. */
.pn-home-portals .pn-entry-art{height:auto;aspect-ratio:1}
.pn-home-portals .pn-entry-store .pn-entry-art img,.pn-home-portals .pn-entry-play .pn-entry-art img{position:static!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;max-width:100%!important;left:auto!important;top:auto!important;transform:none!important;object-fit:contain!important;object-position:center!important;clip-path:none!important}
.pn-home-portals .pn-entry .pn-entry-button{width:150px;min-height:34px;white-space:nowrap;padding:7px 10px;font-size:11px}


/* Show each supplied banner at full square size; its built-in brand name stays visible. */
.pn-home-portals .pn-entry-store .pn-entry-art,.pn-home-portals .pn-entry-play .pn-entry-art{height:auto;aspect-ratio:1!important}

/* Keep the PlayOn call-to-action text comfortably inside its button. */
.pn-home-portals .pn-entry-play .pn-entry-button .pn-entry-play-button-label{font-size:16px;line-height:1.1;white-space:nowrap}

/* Compact paired homepage cards on mobile while keeping each complete square banner visible. */
.pn-home-portals{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px;gap:12px}
.pn-home-portals .pn-entry{min-width:0}
.pn-home-portals .pn-entry-art{aspect-ratio:1!important;height:auto}
.pn-home-portals .pn-entry .pn-entry-button{width:min(100%,150px);min-width:0}
@media(max-width:700px){.pn-home-portals{grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px;gap:8px}.pn-home-portals .pn-entry{border-radius:14px}.pn-home-portals .pn-entry-art{aspect-ratio:1!important}.pn-home-portals .pn-entry-content{padding:8px 7px 10px}.pn-home-portals .pn-entry .pn-entry-button{width:100%;max-width:150px;min-height:32px;padding:6px 5px;font-size:clamp(9px,3vw,11px)}.pn-home-portals .pn-entry-play .pn-entry-button .pn-entry-play-button-label{font-size:clamp(9px,3vw,11px)}}
@media(max-width:340px){.pn-home-portals{gap:6px}.pn-home-portals .pn-entry-content{padding-inline:5px}.pn-home-portals .pn-entry .pn-entry-button{padding-inline:3px}}

/* Keep the updated Netplay and PlayOn artwork fully visible in paired square cards. */
.pn-home-portals .pn-entry-art{position:relative;aspect-ratio:1!important;height:auto;overflow:hidden;background:#080914}
.pn-home-portals .pn-entry-store .pn-entry-art{background:#12070d}
.pn-home-portals .pn-entry-play .pn-entry-art{background:#03091c}
.pn-home-portals .pn-entry-art img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important}
/* Stack the two home cards on phones; keep them side by side on wider screens. */
@media(max-width:700px){.pn-home-portals{grid-template-columns:minmax(0,1fr)!important;max-width:430px!important;gap:14px!important}}
/* Use the artwork's own large frame without adding a second frame around it. */
.pn-home-portals .pn-entry{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
/* Match the size and typography of both homepage actions. */
.pn-home-portals .pn-entry .pn-entry-button{box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;width:min(100%,170px)!important;height:42px!important;min-height:42px!important;margin:0 auto!important;padding:0 12px!important;font-size:13px!important;line-height:1!important;white-space:nowrap!important}
.pn-home-portals .pn-entry-play .pn-entry-button .pn-entry-play-button-label{font-size:16px!important;font-weight:800!important;line-height:1!important}
/* Give the homepage title a restrained warm glow. */
.hero h1{text-shadow:0 0 3px #fff4,0 0 14px #f4c86a99,0 0 28px #d99b2f55}
/* Slightly soften the Netplay art glow while retaining clear red details. */
.pn-home-portals .pn-entry-store .pn-entry-art img{filter:brightness(.95) saturate(1.05)}
/* Menu polish: subtle label glow and a slightly larger PlayOn gamepad without its circular badge. */
body>header>nav a[href="#store"] .nav-label,
body>header>nav a[href="#play"] .nav-label,
body>header>nav #accountLink .nav-label,
body>header>nav #adminLink .nav-label{text-shadow:0 0 5px #d7b56766,0 0 10px #d7b56733}
body>header>nav .nav-icon{width:42px;height:44px}
@media(max-width:700px){body>header>nav .nav-icon{width:40px;height:42px}}

@media(max-width:700px){.store-product-grid .streaming-prime-video h2{font-size:19px}}

.gran-course-card{border-color:#c59b4740;background:linear-gradient(145deg,#1a1b29,#10121d);box-shadow:0 8px 24px #0004,inset 0 1px 0 #ffffff0b}.store-product-grid .gran-course-card .streaming-artwork{margin:-12px -12px 10px;line-height:0}.store-product-grid .gran-course-card .product-image{height:auto;aspect-ratio:3/2;object-fit:cover;margin:0;border-radius:0}.store-product-grid .gran-course-card .streaming-artwork figcaption{padding:8px 12px 4px;color:#cdd3df;font-size:12px;line-height:1.5}.gran-course-plans{border:0;padding:0;margin:16px 0}.gran-course-plans legend{margin-bottom:10px;color:#f1d08a;font-size:13px;font-weight:800}.gran-course-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.gran-course-plan{display:flex;align-items:center;gap:9px;margin:0;padding:12px;background:#0d101a;border:1px solid #ffffff20;border-radius:12px;cursor:pointer}.gran-course-plan:has(input:checked){border-color:#d7b25b;background:linear-gradient(145deg,#30281a,#171620);box-shadow:0 0 0 1px #d7b25b33}.gran-course-plan input{width:auto;accent-color:#d7b25b;flex:0 0 auto}.gran-course-plan span{display:flex;flex-direction:column;gap:4px}.gran-course-plan strong{font-size:13px;color:#f4f0e8}.gran-course-plan small{font-size:12px;color:#f1d08a}
.annual-mini-grid{grid-template-columns:repeat(auto-fit,minmax(205px,1fr));align-items:stretch}.annual-mini-card{overflow:hidden;padding:12px;border:1px solid color-mix(in srgb,var(--annual-accent,#9c70d8) 42%,transparent);border-radius:18px;background:linear-gradient(145deg,#1c1d29,#10111a 75%);box-shadow:0 8px 24px #0004}.annual-mini-art{height:126px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;overflow:hidden;border:1px solid color-mix(in srgb,var(--annual-accent,#9c70d8) 65%,transparent);border-radius:12px;background:radial-gradient(ellipse at 50% 115%,color-mix(in srgb,var(--annual-accent,#9c70d8) 55%,transparent),transparent 68%),linear-gradient(145deg,#171b28,#090b12);box-shadow:inset 0 0 28px color-mix(in srgb,var(--annual-accent,#9c70d8) 22%,transparent),0 0 16px color-mix(in srgb,var(--annual-accent,#9c70d8) 18%,transparent)}.annual-mini-art img{width:100%;height:100%;object-fit:cover}.annual-mini-art span{max-width:100%;padding:0 10px;color:#fff;font-size:clamp(18px,2.4vw,27px);font-weight:900;letter-spacing:-.5px;text-align:center;text-shadow:0 2px 14px var(--annual-accent,#9c70d8)}.annual-mini-art small{color:#d5d2df;font-size:9px;letter-spacing:2.5px}.annual-mini-copy h2{margin:13px 0 5px;font-size:18px;line-height:1.2}.annual-mini-copy>p{min-height:38px;margin:0;color:#bcbac8;font-size:12px;line-height:1.45}.annual-mini-card .annual-price-comparison{align-items:flex-start;min-height:42px;margin:10px 0 12px;text-align:left}.annual-mini-card .annual-price-comparison>strong{font-size:18px}.annual-mini-card .annual-price-comparison>small{max-width:100%;text-align:left}.annual-mini-card .annual-price-comparison>del{font-size:12px}.annual-mini-card .button{width:100%;text-align:center}
.price-comparison{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin:12px 0 14px;min-height:46px}.price-comparison del{color:#a9a5ae;font-size:13px;text-decoration:line-through;text-decoration-thickness:2px}.price-comparison>strong{color:#f2d18b;font-size:22px;line-height:1.15}.price-comparison>small{color:#bcb6c2;font-size:11px;line-height:1.35}.annual-offer{border-color:#b39456;background:linear-gradient(145deg,#171923,#0d1420 58%,#15151c);box-shadow:0 12px 35px #0007}.annual-offer-copy .eyebrow{display:block;color:#d9bd7d;letter-spacing:2px}.annual-offer-copy h2{font-size:clamp(24px,6vw,38px);letter-spacing:2px;color:#f2e6c3}.annual-offer-copy p{max-width:640px;margin:12px auto 20px}.annual-offer-copy p strong{color:#f4cf72}.annual-offer-copy>button{background:linear-gradient(135deg,#144e91,#0c2864);border-color:#45b7ed;box-shadow:0 0 20px #148bdc45}.annual-price-list{max-height:min(54vh,520px);overflow:auto;margin:18px 0;padding:0 2px}.annual-price-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 8px;border-bottom:1px solid #ffffff18}.annual-price-row>strong{min-width:0;font-size:14px;color:#fff}.annual-price-comparison{align-items:flex-end;flex:0 0 auto;margin:0;text-align:right;min-height:0}.annual-price-comparison>del{font-size:11px}.annual-price-comparison>strong{font-size:15px;white-space:nowrap}.annual-price-comparison>small{max-width:165px;font-size:10px}.annual-price-list+form{margin-top:16px}.annual-price-list+form button{width:100%}

/* Readable game controls on mobile and desktop. */
.memory button{background:linear-gradient(145deg,#8c83ce,#514c91);color:#fff7d5;border:2px solid #c4c0ff;text-shadow:none}
.memory button:disabled{opacity:1}
.memory button.revealed{background:linear-gradient(145deg,#fff7d8,#f1d58c);color:#182133;border-color:#fff1b8;text-shadow:none}
.fg-checkers .can-move .fg-piece{outline:3px solid #7bffcf;box-shadow:0 0 12px #6fffc8}
.fg-checkers .selected{outline:3px solid #ffe872;outline-offset:-3px}
.fg-checkers .legal-target{box-shadow:inset 0 0 0 4px #8bffd3;color:#9dffe4;font-size:24px}
.np-power{padding:8px 14px;background:#141d32;color:#fff;border:1px solid #788eae;border-radius:10px;width:min(440px,94%);margin:6px auto;display:grid;gap:5px}
.np-power output{color:#ffda7f}.np-power progress{width:100%;height:16px;accent-color:#f3bd4e}
.stop-comparison{margin:16px 0;padding:16px;border:1px solid #86bff8;border-radius:14px;background:#16243b}.stop-comparison p{color:#e5efff}

.recharge-options,.recharge-tracking{padding:16px;border:1px solid #b0c4ec55;border-radius:14px;background:#192239;margin:12px 0}.recharge-options p{color:#edf2ff;font-size:14px;margin:8px 0}.recharge-options strong{color:#8ff4b9}.recharge-tracking small{display:block;margin-top:10px}.recharge-tracking p{color:#e3eaff}

.recharge-form-card{padding:24px;align-self:start;background:#171923;border:1px solid #343644}.recharge-form-card h2{margin:0 0 18px}.recharge-form-card>p{margin:0 0 20px}.recharge-form-card label{font-size:14px;margin-top:18px}.recharge-form-card input,.recharge-form-card select{margin-top:6px;background:#0c0e17;min-height:50px}.recharge-form-card form>button{width:100%;min-height:50px;margin-top:26px}.recharge-form-card .muted{font-size:14px;line-height:1.7}.recharge-form-card select{max-width:100%;font-size:14px}#modalContent>.recharge-form-card{padding:0;border:0;background:transparent}

.recharge-section{grid-column:1/-1;width:100%;max-width:760px;margin:0 auto}.recharge-section .recharge-full-banner{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:18px}.recharge-operators{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.recharge-operators button{min-height:50px;font-size:16px}.recharge-operators button[aria-pressed=true]{box-shadow:0 0 0 2px #eed18b55}.recharge-selected{width:100%}

.esim-qr{margin:20px auto;max-width:340px;padding:16px;border-radius:14px;background:white;color:#151723}.esim-qr img{display:block;width:100%;height:auto;object-fit:contain}.esim-qr figcaption{text-align:center;margin-top:10px;color:#151723}#esimActivationCode{word-break:break-all}

.homologation-notice{text-align:center;padding:8px 16px;background:#30291c;color:#ffe2a3;border-bottom:1px solid #886d31;font:600 12px system-ui;letter-spacing:.05em}
/* Keep carousels inside the content box, including scrollbar gutters. */
.pn-home-carousel-stack{left:auto;transform:none;width:100%;max-width:100%;min-width:0}

/* Smaller homepage banners, with complete artwork and comfortable touch targets. */
.pn-home-portals{max-width:600px;margin-inline:auto}
@media(max-width:700px){.pn-home-portals{max-width:300px!important;gap:10px!important}.pn-home-portals .pn-entry{max-width:300px}.pn-home-portals .pn-entry-content{padding:8px 7px 10px}}

/* Reference number stands out in the mobile admin order list. */
.order-reference-highlight{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;padding:16px;border:1px solid #343541;border-radius:14px;background:transparent;color:inherit}
.order-reference-label{display:block;flex-basis:100%;color:inherit;font-weight:700;font-size:14px}
.order-reference-number{display:block;flex:1 1 100%;min-width:0;color:inherit;font-size:clamp(22px,6vw,30px);font-weight:800;line-height:1.35;letter-spacing:.04em;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.order-reference-highlight button{min-height:44px;margin:0}

.order-reference-highlight.is-approved{border:2px solid #65d9ff;background:#102b3b;color:#a6edff}

.playon-draw-ball{font-size:4rem;text-align:center;animation:playon-draw-roll .6s ease-in-out infinite alternate}@keyframes playon-draw-roll{from{transform:rotate(-25deg) scale(.9)}to{transform:rotate(25deg) scale(1.1)}}@media(prefers-reduced-motion:reduce){.playon-draw-ball{animation:none}}

.store-product-grid .unlimited-internet-card .streaming-artwork .product-image{height:auto;aspect-ratio:16/9;object-fit:contain}

.store-product-grid .daily-internet-card .streaming-artwork .product-image{height:auto;aspect-ratio:1;object-fit:contain}

.esim-section{grid-column:1/-1;min-width:0}
.esim-plan-banner{margin:16px 0;padding:20px;border-radius:16px;background:linear-gradient(120deg,#10254b,#28123d);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.esim-plan-banner>strong{font-size:1.4rem}
.esim-carriers{display:flex;flex-wrap:wrap;gap:8px}
.esim-carriers button{border-radius:10px;padding:8px 12px;color:white;font-weight:800}
.esim-tim{background:#064fa8}.esim-claro{background:#a91829}.esim-vivo{background:#69229b}

.esim-carriers button[aria-pressed=true]{outline:2px solid #fff;outline-offset:2px}

.esim-product-card .streaming-artwork .product-image{height:auto;aspect-ratio:1;object-fit:contain}

.internet-bot-guide h3 { color: #fff; }
.internet-bot-guide li { margin-block: .65rem; }
.internet-bot-menu { display: block; max-width: 100%; height: auto; margin-block: .75rem; }


@media(max-width:700px){
 .admin-layout{gap:18px;min-width:0}
 .admin-layout>.side{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding:12px;
  border:1px solid #d8b76d33;
  border-radius:16px;
  background:#13131de6;
  overflow:visible;
  width:100%;
  min-width:0;
 }
 .admin-layout>.side button{
  width:100%;
  min-width:0;
  min-height:52px;
  padding:12px 8px;
  font-size:14px;
  line-height:1.3;
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:center;
 }
}


#roomView[data-game="memory"]>.notice{min-height:110px}#roomView[data-game="memory"] .memory button{touch-action:manipulation;transform:none;transition:background .1s;min-width:0}

.internet-bot-guide .row { flex-direction: column; align-items: stretch; }
.internet-bot-guide .pfinternet-banner { display:block; width:100%; max-width:100%; height:auto; aspect-ratio:2/1; object-fit:contain; border-radius:14px; }
.internet-bot-guide .row .button { align-self:flex-start; }

/* Approved compact homepage. Reuse the original artwork and navigation icons. */
body.pn-home-view .home-banner-premium{width:min(96vw,1280px);margin-bottom:14px}
body.pn-home-view .home-banner-premium img{height:auto;aspect-ratio:2/1;object-fit:contain;object-position:center;max-height:none}
body.pn-home-view .home-banner-premium+.hero{padding:8px 12px 18px;text-align:center;background:transparent}
body.pn-home-view .hero h1{font-size:clamp(28px,5vw,50px);line-height:1.12;margin:0 0 8px}
body.pn-home-view .hero p{font-size:clamp(14px,2.4vw,17px);line-height:1.5;margin:0 auto;max-width:760px}
body.pn-home-view .pn-home-portals{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%;max-width:800px!important;gap:20px!important;margin:0 auto;align-items:start}
body.pn-home-view .pn-home-portals .pn-entry{width:100%;max-width:none;min-width:0;margin:0}
body.pn-home-view .pn-home-portals .pn-entry-art{width:100%;height:auto;aspect-ratio:1!important;overflow:hidden;border-radius:18px;background:transparent}
body.pn-home-view .pn-home-portals .pn-entry-art img{object-fit:contain!important;clip-path:none!important;filter:none}
body.pn-home-view .pn-home-portals .pn-entry-content{padding:10px 5px 0}
body.pn-home-view .pn-home-portals .pn-entry .pn-entry-button{width:min(100%,220px)!important;min-height:44px!important;height:44px!important;padding:0 10px!important;font-size:16px!important}
body.pn-home-view .pn-entry-button-label,body.pn-home-view .pn-entry-store-button-label,body.pn-home-view .pn-entry-play-button-label{animation:none!important;opacity:1}
body.pn-home-view .pn-home-portals .pn-entry-play .pn-entry-button .pn-entry-play-button-label{font-size:inherit!important}
body.pn-home-view .pn-home-carousel-stack{margin:26px 0 20px;gap:16px}
body.pn-home-view .pn-home-carousel-card{flex-basis:clamp(102px,23.8vw,162px);margin-right:12px;border-radius:16px}
body.pn-home-view .pn-home-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
body.pn-home-view .pn-home-info .card{padding:20px;min-width:0}
body.pn-home-view .pn-home-info h3{font-size:clamp(17px,2vw,22px);line-height:1.3;margin:12px 0}
body.pn-home-view .pn-home-info p{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:700px){
 body.pn-home-view .home-banner-premium{margin-bottom:12px;border-radius:16px}
 body.pn-home-view .home-banner-premium+.hero{padding:6px 0 18px}
 body.pn-home-view .hero h1{font-size:clamp(26px,6.5vw,38px)}
 body.pn-home-view .pn-home-portals{max-width:100%!important;gap:12px!important}
 body.pn-home-view .pn-home-portals .pn-entry-art{border-radius:12px}
 body.pn-home-view .pn-home-portals .pn-entry-content{padding:8px 0 0}
 body.pn-home-view .pn-home-portals .pn-entry .pn-entry-button{font-size:clamp(12px,3.5vw,16px)!important;padding:0 6px!important}
 body.pn-home-view .pn-home-info{gap:10px}
 body.pn-home-view .pn-home-info .card{padding:14px 12px}
 body.pn-home-view .pn-home-info .eyebrow{font-size:9px;letter-spacing:1.5px}
 body.pn-home-view .pn-home-info p{font-size:12px;line-height:1.6}
}
@media(max-width:360px){body.pn-home-view .pn-home-info{grid-template-columns:1fr}}

/* Match both home entry labels, overriding the legacy generic span size. */
body.pn-home-view .pn-home-portals .pn-entry .pn-entry-button .pn-entry-store-button-label,
body.pn-home-view .pn-home-portals .pn-entry .pn-entry-button .pn-entry-play-button-label{font-size:inherit!important;font-weight:800!important;line-height:1.1!important;letter-spacing:normal;white-space:nowrap}

/* Gold neon highlights for the home service headings. */
body.pn-home-view .pn-home-info .pn-info-gold-title{color:#ffdf85;text-shadow:0 0 3px #fff0bb99,0 0 9px #ffca4580,0 0 18px #f5a62355;font-weight:800}

body.pn-home-view .pn-home-info .pn-info-gold-title{display:block;font-size:clamp(17px,2vw,22px);line-height:1.3;letter-spacing:normal;margin:12px 0;text-transform:none}
body.pn-home-view .pn-home-info .pn-bingo-subtitle{font-size:clamp(14px,1.6vw,17px);line-height:1.35;margin:10px 0;color:#eee5ce;font-weight:600}

/* Gentle blinking for the home heading and entry labels. */
@keyframes pn-home-soft-blink{0%,100%{opacity:1;filter:brightness(1.15)}50%{opacity:.65;filter:brightness(.9)}}
body.pn-home-view .hero h1,
body.pn-home-view .pn-home-portals .pn-entry .pn-entry-button .pn-entry-store-button-label,
body.pn-home-view .pn-home-portals .pn-entry .pn-entry-button .pn-entry-play-button-label{animation:pn-home-soft-blink 2.4s ease-in-out infinite!important}
@media(prefers-reduced-motion:reduce){body.pn-home-view .hero h1,body.pn-home-view .pn-home-portals .pn-entry .pn-entry-button .pn-entry-store-button-label,body.pn-home-view .pn-home-portals .pn-entry .pn-entry-button .pn-entry-play-button-label{animation:none!important}}

/* Sharper gold lettering and a visible, slow neon pulse. */
body.pn-home-view .pn-home-info .pn-info-gold-title{color:#e9be59;text-shadow:0 1px 2px #000;animation:pn-gold-readable-pulse 2.6s ease-in-out infinite}
@keyframes pn-gold-readable-pulse{0%,100%{color:#e9be59;text-shadow:0 1px 2px #000}50%{color:#f4cf74;text-shadow:0 1px 2px #000,0 0 5px #d79b3266}}
@keyframes pn-home-soft-blink{0%,40%,100%{filter:brightness(1);opacity:1}50%,75%{filter:brightness(.5);opacity:.75}}
body.pn-home-view .pn-home-portals .pn-entry-store .pn-entry-art{outline:2px solid #ff3652;outline-offset:-3px;box-shadow:0 0 5px #ff4565aa,0 0 12px #f3214980,inset 0 0 7px #ff365277}
@media(prefers-reduced-motion:reduce){body.pn-home-view .pn-home-info .pn-info-gold-title{animation:none}}

/* Room between home sections on mobile. */
@media(max-width:700px){
 body.pn-home-view .home-banner-premium{margin-bottom:24px}
 body.pn-home-view .home-banner-premium+.hero{padding-bottom:34px}
 body.pn-home-view .hero h1{margin-bottom:16px}
 body.pn-home-view .pn-home-info{margin-top:36px;row-gap:20px}
 body.pn-home-view .pn-home-info .card{padding-top:20px;padding-bottom:20px}
 body.pn-home-view .pn-home-carousel-stack{margin-top:36px;margin-bottom:28px;gap:24px}
}

/* More breathing room between the main mobile home sections. */
@media(max-width:700px){
 body.pn-home-view .home-banner-premium{margin-bottom:36px}
 body.pn-home-view .home-banner-premium+.hero{padding-bottom:52px}
 body.pn-home-view .hero h1{margin-bottom:22px}
 body.pn-home-view .pn-home-info{margin-top:56px;column-gap:16px;row-gap:28px}
 body.pn-home-view .pn-home-info .card{padding-top:24px;padding-bottom:24px}
 body.pn-home-view .pn-home-carousel-stack{margin-top:52px;margin-bottom:36px;gap:32px}
}

body.pn-home-view .pn-home-about{max-width:960px;margin:40px auto 0;padding:26px;background:linear-gradient(145deg,#191820,#101119);border:1px solid #b99b5840;border-radius:18px}body.pn-home-view .pn-home-about h2{font-size:clamp(22px,4vw,30px);line-height:1.3;margin:10px 0 18px;color:#ead6a2}body.pn-home-view .pn-home-about p{font-size:15px;line-height:1.7;color:#c9c6d2;margin:0 0 16px}body.pn-home-view .pn-home-about .pn-about-benefit{padding:14px;border-radius:12px;background:#c8a04a0d}body.pn-home-view .pn-home-about .button{margin-top:6px}@media(max-width:700px){body.pn-home-view .pn-home-about{margin-top:48px;padding:22px 18px}}

.pn-home-about .pn-about-perks{margin-top:24px;padding-top:20px;border-top:1px solid #b99b5833}.pn-home-about .pn-about-perks h3{color:#ead6a2;font-size:20px;margin:0 0 18px}.pn-home-about .pn-about-perks strong{color:#f0e5cf}

/* Account: soft category colors and concise disclosure. */
.account-page .panel{--account-accent:160,185,220;background:linear-gradient(125deg,rgba(var(--account-accent),.12),rgba(13,16,25,.96));border:1px solid rgba(var(--account-accent),.3);border-left:3px solid rgba(var(--account-accent),.65);box-shadow:none}
.account-page .account-profile{--account-accent:145,185,235}.account-page .account-bingo{--account-accent:215,187,120}.account-page .account-shopping{--account-accent:145,205,180}.account-page .account-benefits{--account-accent:206,181,229}.account-page .account-challenges{--account-accent:144,202,211}
.account-page .panel h2{font-size:clamp(1.2rem,3vw,1.55rem);line-height:1.3;margin-bottom:12px;text-shadow:none;color:#f4f1eb}.account-page .panel h3{font-size:1.1rem;line-height:1.4}.account-page .panel p{line-height:1.6;color:#d3d5df}.account-page details{margin:16px 0}.account-page summary{cursor:pointer;color:#e5d5ae;font-weight:600;padding:10px 0;min-height:44px}.account-page details[open]>summary{margin-bottom:10px}.account-page .panel.space{margin-top:24px}.account-page .two{gap:24px}.account-page .panel{padding:24px}.account-page .hero h1{font-size:clamp(1.6rem,5vw,2.5rem)}
@media(max-width:600px){.account-page .panel{padding:20px}.account-page .panel.space{margin-top:24px}.account-page .hero{margin-bottom:24px}.account-page .panel h2{font-size:1.3rem}}

/* Compact layout scoped to the Pix checkout. */
#modal:has(.pix-checkout){width:min(480px,94vw);padding:18px;max-height:90dvh;overflow-y:auto}
#modal:has(.pix-checkout) h2{font-size:22px;margin:0 0 8px}
#modal:has(.pix-checkout) #modalContent>p{font-size:13px;line-height:1.4;margin:8px 0}
.pix-checkout label{font-size:13px;margin:8px 0 0}
.pix-checkout input:not([type=checkbox]):not([type=hidden]){display:block;font-size:16px;min-height:44px;padding:9px 10px;margin-top:4px}
.pix-checkout fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;min-width:0;border:1px solid #ffffff20;border-radius:12px;padding:10px;margin:12px 0}
.pix-checkout legend{font-size:13px;padding:0 4px}
.pix-checkout fieldset p{grid-column:1/-1;font-size:12px;line-height:1.4;margin:0}
.pix-checkout fieldset label{min-width:0;margin:0;font-size:12px}
.pix-checkout fieldset .check,.pix-checkout fieldset button{grid-column:1/-1}
.pix-checkout button{min-height:44px;margin-top:8px;padding:9px 14px;font-size:14px}
.pix-checkout fieldset button{margin:0;justify-self:start}
.pix-checkout>button{width:100%}
@media(max-width:340px){.pix-checkout fieldset{grid-template-columns:1fr}}

.store-product-grid .robot-bot-card .product-image{height:auto;aspect-ratio:2/1;object-fit:contain}

.store-product-grid .google-activation-card .product-image{height:auto;aspect-ratio:3/2;object-fit:contain}

/* Store navigation: compact main areas and deliberate subcategory selection. */
#app nav.store-areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0;position:static;background:none;border:0;padding:0}
#app nav.store-areas a.button{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:12px 10px;border-radius:13px;border:1px solid #b496535e;background:linear-gradient(145deg,#242027,#10121b);color:#f3e6c7;font-size:14px;line-height:1.25;font-weight:700;text-align:center;box-shadow:inset 0 1px 0 #ffffff0c,0 3px 12px #0003}
#app nav.store-areas a.button[aria-current]{background:linear-gradient(135deg,#f0d18a,#c6a052);color:#1d170b;border-color:#f0d18a;box-shadow:0 3px 14px #b9923833}
#app nav.store-areas a.button:hover{border-color:#e4c27a;filter:brightness(1.06)}
#app:has(.store-areas)>.chips.store-subnav{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 22px}
#app:has(.store-areas)>.chips.store-subnav button{min-height:44px;padding:10px 14px;font-size:13px;line-height:1.3;border-radius:11px;background:linear-gradient(145deg,#20212d,#11131c);color:#e9e2d4;border-color:#b398554d;box-shadow:none}
#app:has(.store-areas)>.chips.store-subnav button.active{background:linear-gradient(135deg,#b28d42,#765921);border-color:#e1bd6e;color:#fff7e5}
#app .store-section-title{font-size:20px;letter-spacing:.06em;margin:24px 0 18px;color:#e5c584}
@media(max-width:700px){#app nav.store-areas{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}#app nav.store-areas a.button{min-height:48px;font-size:14px;padding:12px 10px}}

/* Keep the return control in the same compact rectangular style. */
#app .store-back{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:10px 14px;font-size:13px;border-radius:11px;border-color:#b3985566;color:#e5c584;background:#171923;margin-top:16px}

/* Store drill-down: selected area only, with return at the opposite edge. */
#app .store-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;position:static;padding:0;border:0;background:transparent;z-index:auto}
#app .store-heading .eyebrow{margin:0}
#app .store-heading .store-back{margin:0 0 0 auto;flex-shrink:0}
#app nav.store-areas.store-area-selected{grid-template-columns:minmax(0,1fr);max-width:340px}

/* Compact product, internet and eSIM cards preserve each artwork’s natural proportions. */
#app .compact-square-grid{grid-template-columns:repeat(auto-fit,minmax(240px,340px));align-items:start;justify-content:start;gap:18px}
#app .compact-square-grid>.store-offer-card{min-width:0;height:auto;min-height:0;align-self:start;gap:8px;padding:14px;overflow:hidden}
#app .compact-square-grid .store-offer-card .streaming-artwork{margin:0 0 4px;line-height:0}
#app .compact-square-grid .store-offer-card .streaming-artwork .product-image{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:#0b0c13;border-radius:12px;margin:0}
#app .compact-square-grid .store-offer-card p{margin:0;font-size:14px;line-height:1.45}
#app .compact-square-grid .store-offer-card .offer-description{display:block;overflow:visible;-webkit-line-clamp:unset}
#app .compact-square-grid .store-offer-card h2{margin:0;font-size:20px}
#app .compact-square-grid .store-offer-card .price-comparison{margin:0}
#app .compact-square-grid .store-offer-card>button{margin-top:4px}
#app .compact-square-grid>.esim-section{width:100%}
@media(max-width:700px){#app .compact-square-grid{grid-template-columns:minmax(0,340px);justify-content:center;gap:18px}}

/* Compact PlayOn-only challenge summary. */
#app .playon-fun{font-size:14px;line-height:1.4;margin:12px 0 8px}
#app .playon-challenges{margin:8px 0 14px;padding:10px 12px;border:1px solid #d8b76d33;border-radius:11px;background:#151722}
#app .playon-challenges>summary{font-size:13px;font-weight:700;line-height:1.4;cursor:pointer;color:#e5c584}
#app .playon-challenges p{font-size:12px;line-height:1.4;margin:8px 0}
#app .playon-challenge-history{max-height:150px;overflow-y:auto}

/* Compact customer account folders. */
.account-page .account-session{margin-bottom:20px;gap:12px;flex-wrap:wrap}
.account-page .account-folder{border:1px solid #d7b96d55;border-radius:18px;margin:14px 0;background:#151923dd;color:inherit;overflow:hidden}
.account-page .account-folder>summary{padding:18px 20px;min-height:58px;box-sizing:border-box;font-size:17px;font-weight:700;color:#efddb0}
.account-page .account-folder[open]>summary{border-bottom:1px solid #d7b96d33}
.account-page .account-folder-content{padding:16px;min-width:0;overflow-wrap:anywhere}
.account-page .account-folder-content>.panel{margin:0 0 14px}
.account-page .account-folder-content>.panel:last-child{margin-bottom:0}
.account-page .account-folder-content .record{max-width:100%;box-sizing:border-box}
@media(max-width:600px){.account-page .account-folder>summary{font-size:16px;padding:17px 16px}.account-page .account-folder-content{padding:12px}}

.admin-notification-actions .row{gap:10px;flex-wrap:wrap}
.admin-notification-actions .notification-enable{background:#77e2d2;color:#062d2a;border:1px solid #a5fff1}
.admin-notification-actions .notification-test{background:#c6b5ff;color:#251746;border:1px solid #e5d9ff}
.admin-notification-actions .notification-logout{min-height:44px;padding:8px 10px;font-size:11px;color:#e6dfef;background:#222031;border-color:#625a73}
@media(max-width:480px){.admin-notification-actions .row{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr) auto;gap:6px;align-items:stretch}.admin-notification-actions button{min-height:44px;padding:6px 5px;font-size:clamp(11px,3.2vw,13px);line-height:1.2}.admin-notification-actions .notification-logout{padding:6px 7px;font-size:11px;white-space:nowrap}}
.admin-notification-actions button:hover{filter:brightness(1.08)}
.admin-notification-actions button:focus-visible{outline:3px solid #fff;outline-offset:3px}
.admin-notification-actions [role=status]:empty{display:none}
.admin-notification-actions [role=status]{margin:8px 0 0}

/* Central administrativa: atalhos diários e grupos recolhíveis. */
.admin-quick-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:min(100%,690px);margin:22px auto 0}
.admin-quick-links .central-link{justify-content:center;text-align:center;min-height:48px;margin:0;padding:9px 12px;font-weight:800;line-height:1.2;white-space:normal}
.central-link-overview{--accent:#ffd572;--tone:#805006}
.central-link-store{--accent:#ff475b;--tone:#e40026}
.central-link-play{--accent:#31cfff;--tone:#0065fb}
.tone-store{--central-accent:#ff8392;--central-bg:#521329}
.tone-play{--central-accent:#8ccaff;--central-bg:#143856}
.tone-gold{--central-accent:#f5d684;--central-bg:#48391b}
.admin-group{border:1px solid var(--central-accent);border-radius:16px;background:#14141ee8;overflow:hidden}
.admin-group summary{padding:18px;color:var(--central-accent);background:var(--central-bg);cursor:pointer;font-size:18px;font-weight:800;min-height:56px;box-sizing:border-box}
.admin-group-items{display:flex;flex-direction:column;gap:8px;padding:12px}
.admin-group-items .button{white-space:normal;text-align:left;margin:0;min-height:44px}
.admin-group-items .selected{border-color:var(--central-accent);color:var(--central-accent);background:var(--central-bg)}
.central-link:focus-visible,.admin-group summary:focus-visible,.admin-group-items a:focus-visible{outline:3px solid white;outline-offset:3px}
.admin-layout.admin-layout-single{grid-template-columns:minmax(0,1fr)}
@media(max-width:700px){.admin-quick-links{grid-template-columns:minmax(0,1fr);max-width:320px}.admin-layout>.side:has(.admin-group){display:block}#accountLink .nav-label{font-size:11px}}

/* Conectividade acompanha os serviços da Conexão Móvel. */
.store-connectivity{margin:20px 0;padding:20px}
.store-connectivity h3{margin:0 0 10px;color:#e9be59;font-size:clamp(17px,2vw,22px)}
.store-connectivity p{margin:0;line-height:1.6}
body.pn-home-view .pn-home-info{grid-template-columns:minmax(0,1fr)}

.bingo-schedule-notice .pn-info-gold-title{color:#e9be59;text-shadow:0 1px 2px #000;font-size:clamp(17px,2vw,22px);line-height:1.3;margin:0 0 12px;font-weight:800}
.bingo-schedule-notice .pn-bingo-subtitle{font-size:clamp(14px,1.6vw,17px);line-height:1.35;margin:10px 0;color:#eee5ce;font-weight:600}

body.pn-home-view .pn-home-about>.eyebrow{display:block;font-size:clamp(24px,5vw,34px);line-height:1.2;letter-spacing:1px;font-weight:800;margin:0 0 16px}

.management-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.management-metrics article{display:flex;flex-direction:column;gap:8px;min-width:0}.management-metrics strong{font-size:2rem;color:var(--gold)}.management-search{display:block;font-weight:700}.management-options{margin-block:8px 12px}.management-options summary{cursor:pointer;min-height:44px;align-content:center}.management-filters{display:grid;gap:12px;margin-block:0 12px}.management-order{overflow-wrap:anywhere}.management-unverified{border-left:4px solid #e4ba5b;padding-left:14px}.management-search input,.management-filters select{width:100%;min-width:0}@media(min-width:800px){.management-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.management-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}

#app nav.admin-top-actions{position:relative;inset:auto;z-index:auto;background:none;border:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;align-items:start;max-width:630px;margin-block:16px}
.admin-top-actions>.button,.admin-top-actions summary.button{display:inline-flex;align-items:center;width:100%;box-sizing:border-box;min-height:44px;justify-content:center;text-align:center;padding:7px 3px;font-size:clamp(11px,3.4vw,15px);white-space:normal;overflow-wrap:anywhere}
.admin-top-actions>[aria-current=page]{box-shadow:inset 0 0 0 2px currentColor}
.admin-system-shortcut{position:relative;max-width:100%;min-width:0;margin:0}
.admin-system-shortcut summary.button{display:inline-flex;align-items:center;gap:8px;margin:0;list-style:none;cursor:pointer;background:#f0d68e;color:#332709;border:1px solid #ffe9ab}
.admin-system-shortcut summary::-webkit-details-marker{display:none}
.admin-system-shortcut summary.button::after{content:'▾';font-size:.85em}
.admin-system-shortcut[open] summary.button::after{content:'▴'}
.admin-system-shortcut .admin-group-items{position:absolute;z-index:5;min-width:180px;max-width:80vw;margin-top:6px;border:1px solid var(--central-accent);border-radius:14px;background:#14141e}
.admin-system-shortcut summary:focus-visible{outline:3px solid white;outline-offset:3px}

.admin-top-actions .admin-finance-shortcut{margin:0;background:#a7e3c4;color:#102f21;border:1px solid #d2f7e4}
.admin-top-actions .admin-finance-shortcut:focus-visible{outline:3px solid white;outline-offset:3px}
