/* Owner Desktop originals, 853px artboard => 390px layout. Player surface only.
   Art crops are original licensed artwork, never whole-page interactive screenshots. */
body[data-surface=player]{--bg:#04091e;--text:#f5f5ff;--muted:#b8b9e9;--radius:17px;--border:#a8a9f0b0;background:radial-gradient(ellipse at 76% 12%,#10183b 0,transparent 58%),#04091e}
body[data-surface=player] .ambient{background:radial-gradient(ellipse at 12% 65%,#5636a521,transparent 64%),radial-gradient(ellipse at 88% 24%,#28659d1c,transparent 56%)}
body[data-surface=player] .ambient:before,body[data-surface=player] .ambient:after{opacity:.28;background-repeat:no-repeat;background-position:center bottom;background-size:100% 100%;mask-image:linear-gradient(90deg,#000,transparent)}
body[data-surface=player] #app{background:none;padding-bottom:calc(104px + var(--safe-bottom))}
body[data-surface=player] #app>section{min-height:calc(100dvh - 125px - var(--safe-top) - var(--safe-bottom))}
body[data-surface=player] :is(.panel,.glass,.bubble,.nav,dialog){background-color:#141c456b;background-image:radial-gradient(ellipse at 12% -12%,#b9d5ff36,transparent 55%),linear-gradient(118deg,#435da52b,#16153c69 55%,#6b40ad2d);border-color:#999ce8b0;box-shadow:inset 0 1px 1px #e5eeff80,inset 0 -1px 1px #5de1ff40,0 2px 11px #3d2b9a36;backdrop-filter:blur(18px) saturate(155%);-webkit-backdrop-filter:blur(18px) saturate(155%)}
body[data-surface=player] :is(.panel,.nav,.game-card,.ticker,.bubble,dialog)::before{background:linear-gradient(125deg,#e3edffbd,#7ce5ff96 22%,#7a6dff44 52%,#be7cffb3 80%,#78e4ffb3)}
body[data-surface=player] :is(button.primary,.send){background-image:radial-gradient(ellipse at 10% 0,#eee6ff66,transparent 52%),linear-gradient(105deg,#9c5bff,#6248ff 54%,#419cfa 88%,#67ddf8);box-shadow:inset 0 1px 2px #f8eeffbf,inset 0 -1px 2px #5a46c6a6,0 3px 13px #6b4dfa66;border-color:#c3c8ff}
body[data-surface=player] :is(input:not([type=file]),textarea,select){font-size:16px;border-color:#929bdfb3;box-shadow:inset 0 1px 2px #cfdbff38;background-color:#2d396646;min-height:46px}
body[data-surface=player] .panel{border-radius:17px}
body[data-surface=player] .panel::after{background:radial-gradient(ellipse at 16% -18%,#a2dbff26,transparent 53%),linear-gradient(175deg,transparent 80%,#9f70ff0d)}
body[data-surface=player] .nav{min-height:82px;border-radius:27px 27px 0 0;background-color:#0c123ace;padding-top:9px;padding-bottom:calc(10px + var(--safe-bottom));box-shadow:inset 0 1px 2px #c0d7ff88,0 -4px 22px #5040ce33}
body[data-surface=player] .nav a{font-size:12px;min-height:59px;gap:5px}
body[data-surface=player] .nav-original-icon{width:29px;height:29px}
body[data-surface=player] .nav-bull{width:90px;height:69px;margin-top:-26px}
body[data-surface=player] .top :is(a.icon,button.icon){border-radius:12px}
body[data-surface=player] .lobby-top{min-height:42px;margin-bottom:7px}
body[data-surface=player] .lobby-top .icon{border:0;background:none;box-shadow:none;width:33px;min-width:33px}
body[data-surface=player] .brand-avatar{width:43px;height:43px}
body[data-surface=player] .brand b{font-size:25px}
body[data-surface=player] .lobby-profile{margin:6px 0 7px;min-height:65px;padding:7px 9px;gap:9px}
body[data-surface=player] .lobby-profile>.avatar{width:49px;height:49px}
body[data-surface=player] .lobby-person small{font-size:10px;line-height:1.5}
body[data-surface=player] .lobby-wallet>strong{font-size:15px}
body[data-surface=player] .wallet-link{min-height:40px;border-radius:12px}
body[data-surface=player] .ticker{min-height:32px;padding:6px 10px;margin-top:7px;gap:8px;font-size:13px;border-radius:18px}
body[data-surface=player] .ticker-chevron{font-size:25px;line-height:18px;flex:none;color:#e6eaff}
body[data-surface=player] .scene.lobby{margin-bottom:-1px}
body[data-surface=player] .game-grid{gap:11px 12px}
body[data-surface=player] .game-card{border-radius:20px;min-height:171px;border-color:#6fdcffb3;background-color:#101c49ad;box-shadow:inset 0 1px 2px #c8d6ff99,0 0 9px #6e6aff70}
body[data-surface=player] .game-card .copy{padding:7px 11px 10px;background:linear-gradient(110deg,#22397196,#243263a6);border-color:#8693e666}
body[data-surface=player] .game-card h2{font-size:23px;font-weight:750}
body[data-surface=player] .game-card small{font-size:11px}
body[data-surface=player] .game-card:nth-child(n+3) .game-art{height:102px}
body[data-surface=player] .game-card:nth-child(n+3){min-height:158px}
body[data-surface=player][data-page=profile] .scene.profile{height:244px}
body[data-surface=player][data-page=profile] .profile-title{width:52%;min-height:225px;margin-top:-233px;padding-top:34px;gap:7px}
body[data-surface=player][data-page=profile] .profile-title .avatar.large{width:105px;height:105px}
body[data-surface=player][data-page=profile] .profile-title h1{font-size:22px;line-height:1.3}
body[data-surface=player][data-page=profile] .profile-uid{line-height:1.5;font-size:11px}
body[data-surface=player][data-page=profile] .panel{padding:11px;margin-bottom:11px}
body[data-surface=player][data-page=profile] .panel>h2{display:flex;align-items:center;gap:9px;font-size:20px;margin-bottom:11px}
body[data-surface=player][data-page=profile] .section-links>a{position:relative;min-height:90px;padding:9px 9px;align-items:flex-start;gap:5px;border-radius:13px;background:linear-gradient(120deg,#4b639d3d,#38275942);border-color:#9cace0ad}
body[data-surface=player][data-page=profile] .section-links>a::after{content:'›';position:absolute;right:8px;top:43%;color:#e5e8ff;font-size:22px;line-height:1}
body[data-surface=player][data-page=profile] .section-links .feature-icon{width:43px;height:36px}
body[data-surface=player][data-page=profile] .section-links>a:not(:has(small)){min-height:65px;padding:9px;gap:4px}
body[data-surface=player][data-page=profile] .section-links>a:not(:has(small)) .feature-icon{height:28px;width:35px}
body[data-surface=player][data-page=profile] .section-links>#logout{min-height:43px;flex-direction:row;align-items:center;gap:10px}
body[data-surface=player][data-page=profile] .profile-invite-card{min-height:102px;overflow:hidden}
body[data-surface=player][data-page=profile] .profile-invite-art{opacity:1}
body[data-surface=player] .records-hero{height:210px;margin-bottom:4px}
body[data-surface=player] .records-hero h1{left:13px;bottom:23px;font-size:30px}
body[data-surface=player] .tabs{padding:3px;border-radius:14px;margin:8px 0 12px}
body[data-surface=player] .tabs :is(a,button){min-height:43px;font-size:14px}
body[data-surface=player] .record-summary>div{padding:11px 8px;min-height:70px;border-radius:13px}
body[data-surface=player] .record-summary b{font-size:18px}
body[data-surface=player] .record-summary small{font-size:11px}
body[data-surface=player] .record-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:11px}
body[data-surface=player] .record-filters label{font-size:11px;margin:0;min-width:0}
body[data-surface=player] .record-filters :is(select,input){min-width:0;width:100%;font-size:14px;padding:8px;min-height:40px}
body[data-surface=player] .record-filters button{min-height:40px;align-self:end}
body[data-surface=player] :is(.list>details,.list>article){margin-bottom:10px}
body[data-surface=player] .unavailable{padding:22px 15px;line-height:1.7;background:linear-gradient(120deg,#1f3b6633,#37245e38);border-color:#7c86ca66}
body[data-surface=player][data-page=packet] .scene.packet{margin-top:1px;margin-bottom:6px}
body[data-surface=player][data-page=packet] .packet-section-title{font-size:24px}
body[data-surface=player][data-page=packet] .packet-amount{font-size:44px}
body[data-surface=player][data-page=deposit] .scene-08-deposit{margin-top:2px;margin-bottom:5px}
body[data-surface=player][data-page=withdraw] .scene-09-withdraw{margin-bottom:8px}
body[data-surface=player] .payment-choice-panel .payment-methods>div{border-radius:12px;min-height:51px}
body[data-surface=player] .bank-grid{gap:8px}
body[data-surface=player] .deposit-amount-panel .amounts{gap:6px}
body[data-surface=player] .deposit-amount-panel .amounts button{border-radius:10px;font-size:20px;min-height:37px}
body[data-surface=player] .deposit-money-field input{font-size:16px}
body[data-surface=player] .beneficiary-card>summary>img{width:43px;height:43px}
body[data-surface=player] .activity-hero{height:266px}
body[data-surface=player] .activity-links{gap:0}
body[data-surface=player] .activity-links .list-row{min-height:100px;border-radius:18px;gap:12px}
body[data-surface=player] .activity-links .feature-icon{width:48px;height:48px}
body[data-surface=player] .notification-empty-category{min-height:94px;padding:13px}
body[data-surface=player] .notification-empty-category img{width:47px;height:47px}
body[data-surface=player] .notification-empty-category h2{font-size:20px}
body[data-surface=player] .security-top .brand-avatar{width:28px;height:28px}
body[data-surface=player] .security-top .brand b{font-size:23px}
body[data-surface=player] .security-top .icon{height:38px;min-height:38px;width:38px;min-width:38px}
body[data-surface=player] .security-page-title{font-size:28px}
body[data-surface=player][data-page=device] .scene-13-bind-device{margin-top:-2px;margin-bottom:6px}
body[data-surface=player][data-page=device] .page-title h1{font-size:26px}
body[data-surface=player][data-page=device] #device-list{padding:14px}
body[data-surface=player][data-page=device] .device-identity{gap:14px}
body[data-surface=player][data-page=inviter] .scene-14-inviter-uid{margin-bottom:4px}
body[data-surface=player][data-page=inviter] .page-title h1{font-size:28px}
body[data-surface=player][data-page=inviter] #skip-referral{margin-top:10px}
body[data-surface=player][data-page=pin] #app{padding-bottom:24px}
body[data-surface=player][data-page=pin] .scene-15-set-pin{height:178px;margin-top:-5px;margin-bottom:0}
body[data-surface=player][data-page=pin] .security-page-title{top:105px;font-size:28px}
body[data-surface=player][data-page=pin] .page-title{margin:0;position:absolute;top:147px;left:14px;max-width:48%}
body[data-surface=player][data-page=pin] .page-title h1{font-size:16px}
body[data-surface=player][data-page=pin] form.panel{padding:18px 16px 14px;border-radius:22px;margin-bottom:11px}
body[data-surface=player][data-page=pin] form label{font-size:14px;margin-bottom:16px}
body[data-surface=player][data-page=pin] input[type=password]{height:48px;min-height:48px;border-radius:12px;font-size:24px;letter-spacing:28px;text-indent:14px;padding:0;box-shadow:inset 0 1px 1px #e9efff42;background:repeating-linear-gradient(90deg,#7b91cf45 0,#52468142 calc(16.666% - 4px),transparent calc(16.666% - 4px),transparent 16.666%)}
body[data-surface=player][data-page=pin] .fields-note{margin:10px 0 14px;font-size:11px;line-height:1.6}
body[data-surface=player][data-page=pin] .keypad{gap:6px;margin:11px 0}
body[data-surface=player][data-page=pin] .keypad button{height:49px;min-height:49px;font-size:27px;border-radius:15px;background:linear-gradient(120deg,#5f80bf69,#47388688)}
body[data-surface=player][data-page=pin] #recover-pin{font-size:12px;min-height:38px;background:transparent;border:0;box-shadow:none}
body[data-surface=player][data-page=name] .security-page-title{font-size:36px}
body[data-surface=player][data-page=name] .scene-16-enter-name{margin-top:5px}
body[data-surface=player][data-page=name] .name-avatar .avatar.large{width:91px;height:91px}
body[data-surface=player][data-page=name] .name-chat-preview{padding:12px}
body[data-surface=player][data-page=identity] .scene-17-real-name{height:199px}
body[data-surface=player][data-page=identity] .security-page-title{top:110px;font-size:28px}
body[data-surface=player][data-page=identity] .page-title{margin-bottom:15px}
body[data-surface=player][data-page=identity] .page-title h1{font-size:22px}
body[data-surface=player] .room .top{min-height:42px;margin-bottom:0;gap:7px}
body[data-surface=player] .room .top>a{width:34px;min-width:34px;height:34px;min-height:34px}
body[data-surface=player] .room .top h1{font-size:21px}
body[data-surface=player] .hero-room{height:220px}
body[data-surface=player] .hero-room>img{width:59%;object-position:center}
body[data-surface=player] .hero-room .hero-data{right:8px;top:10px;width:43%;padding:10px 11px;font-size:12px;border-radius:12px}
body[data-surface=player] .hero-room.folded{height:0}
body[data-surface=player] .clock-group b{font-size:50px}
body[data-surface=player] .clock-group small{font-size:15px}
body[data-surface=player] .compact-balances{margin:5px 0;padding:14px 2px 8px;border-radius:13px}
body[data-surface=player] .compact-balances .stat-grid b{font-size:17px}
body[data-surface=player] .room .ticker{min-height:29px;font-size:12px;flex:none;margin:0 0 8px}
body[data-surface=player] .composer{padding:10px 7px calc(12px + var(--safe-bottom));border-radius:25px 25px 0 0;background:linear-gradient(120deg,#26325ce3,#292356dc);border-top:1px solid #a6b4fb99;box-shadow:inset 0 1px 2px #b7d6ff66,0 -3px 16px #394aa92e}
body[data-surface=player] .composer .send{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:50%}
body[data-surface=player] .composer .send svg{transform:none;stroke-width:2.6}
body[data-surface=player] .bubble{border-radius:14px;padding:10px 13px}
body[data-surface=player] .message.mine .bubble{background:linear-gradient(120deg,#6b51d2a6,#5c40bda1)}
body[data-surface=player] .support .top{padding:8px;border-radius:18px;min-height:58px}
body[data-surface=player] .support .top h1{font-size:21px}
body[data-surface=player] .support .support-symbol{height:42px;width:42px}
body[data-surface=player] .support::before{opacity:.7}
body[data-surface=player] dialog{border-radius:23px;border:1px solid #b4b7f0b3;background-color:#11173ce8}
@media(max-width:350px){body[data-surface=player] .brand b{font-size:21px}body[data-surface=player] .lobby-person small{font-size:9px}body[data-surface=player] .game-card h2{font-size:20px}body[data-surface=player] .profile-title h1{font-size:20px}body[data-surface=player][data-page=pin] input[type=password]{letter-spacing:22px}body[data-surface=player] .room .top h1{font-size:18px}}
@media(prefers-reduced-transparency:reduce){body[data-surface=player] :is(.panel,.glass,.bubble,.nav,dialog){background-color:#151d46;backdrop-filter:none;-webkit-backdrop-filter:none}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body[data-surface=player] :is(.panel,.glass,.bubble,.nav,dialog){background-color:#151d46}}
@media(prefers-reduced-motion:reduce){body[data-surface=player] :is(button,a,.panel,.glass){transition:none;animation:none}}

body[data-surface=player] .ambient:after{mask-image:linear-gradient(270deg,#000,transparent)}

/* Full-height chat keeps the composer attached to Telegram visible viewport. */
body[data-surface=player].exclusive #app{padding-bottom:0}
body[data-surface=player].exclusive #app>section{min-height:0}

/* Six visual cells wrap the original password inputs. No copied PIN value or new listener. */
body[data-surface=player] .pin-control{position:relative;display:block;height:49px;margin-top:8px;container-type:inline-size}
body[data-surface=player] .pin-cells{position:absolute;inset:0;display:grid;grid-template-columns:repeat(6,1fr);gap:5px;pointer-events:none}
body[data-surface=player] .pin-cells>i{border:1px solid #a4b5e3ad;border-radius:11px;background:linear-gradient(120deg,#6e89b65e,#51468f55);box-shadow:inset 0 1px 1px #d5e7ff38}
body[data-surface=player][data-page=pin] .pin-control input[type=password]{position:absolute;inset:0;width:100%;height:49px;min-height:49px;border:0;box-shadow:none;background:none;margin:0;padding:0;text-indent:18px;letter-spacing:40px;font:24px ui-monospace,monospace;color:#eff4ff;caret-color:#8cecff;border-radius:11px}
@supports (width:1cqw){body[data-surface=player][data-page=pin] .pin-control input[type=password]{letter-spacing:calc((100cqw + 5px)/6 - 1ch);text-indent:calc((100cqw - 25px)/12 - .5ch)}}
body[data-surface=player][data-page=pin] .pin-control:focus-within .pin-cells>i{border-color:#8ce8ffb3}
body[data-surface=player] .bank-choice-panel .unavailable{padding:9px;font-size:11px;min-height:45px}
body[data-surface=player] .deposit-amount-panel .amounts button{min-height:36px;font-size:18px}
body[data-surface=player] .deposit-amount-panel .fields-note{margin:6px 0 10px;font-size:10px}

body[data-surface=player] .scene.security{width:calc(100% + 28px)}

@media(max-width:350px){body[data-surface=player] .scene.security{width:calc(100% + 20px)}}

/* iPhone PIN uses one custom keypad; readonly inputs never summon a second keyboard. */
body[data-surface=player][data-page=pin] .pin-form input[readonly]{cursor:text;-webkit-user-select:none;user-select:none;scroll-margin-top:calc(70px + var(--safe-top))}
body[data-surface=player][data-page=pin] .pin-form #pin-feedback{min-height:18px;margin:3px 0 8px}
body[data-surface=player][data-page=pin] .pin-form .primary:disabled{opacity:.56}
body[data-surface=player][data-page=pin] .keypad button{touch-action:manipulation}
@media(max-height:760px){body[data-surface=player][data-page=pin] .scene-15-set-pin{height:120px}body[data-surface=player][data-page=pin] .security-page-title{top:78px;font-size:25px}body[data-surface=player][data-page=pin] .page-title{top:111px}body[data-surface=player][data-page=pin] .pin-form{padding:12px}body[data-surface=player][data-page=pin] .pin-form label{margin-bottom:9px}body[data-surface=player][data-page=pin] .fields-note{margin:6px 0;font-size:10px}body[data-surface=player][data-page=pin] .keypad{gap:5px;margin:8px 0}body[data-surface=player][data-page=pin] .keypad button{height:43px;min-height:43px}}
