@charset "UTF-8";
/* styles.css */
:root{color-scheme:dark;--bg:#08080a;--surface:#1c1c1f;--text:#f8f8fb;--secondary:#97979f;--tertiary:#64646d;--blue:#009aff;--blue-light:#65c6ff;--separator:rgba(255,255,255,.09);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:0px;--effects:.7;font-family:-apple-system,BlinkMacSystemFont,"SF Pro",sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#08080a;color:var(--text)}body{min-height:100dvh;overscroll-behavior:none}button,input{font:inherit}button{color:inherit;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:disabled{cursor:default;opacity:.43}button:focus-visible,input:focus-visible{outline:2px solid var(--blue-light);outline-offset:4px}button:active:not(:disabled){transform:scale(.96)}button{transition:background .2s,opacity .2s,transform .2s}a{color:var(--blue)}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.icon{width:24px;height:24px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon.star{fill:#f5c950;stroke:#ffd773;stroke-width:.65}
.desktop-aura{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 32%,rgba(29,53,77,.17),transparent 48%)}.mini-app{width:100%;max-width:460px;min-height:100dvh;margin:auto;position:relative;isolation:isolate;background:var(--bg);overflow-x:clip}.space-wallpaper{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden}.space-wallpaper:before{content:"";position:absolute;inset:0;background:url("assets/telegram-space.svg") top center/402px 692px repeat;filter:invert(1);opacity:.045;mix-blend-mode:screen}.space-wallpaper:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#08080a 0%,transparent 24%,#08080a 72%)}.glass{background:linear-gradient(150deg,rgba(255,255,255,.105),rgba(255,255,255,.035) 55%,rgba(255,255,255,.065));border:1px solid rgba(255,255,255,.105);box-shadow:inset 0 1px 0 rgba(255,255,255,.09),inset 0 -1px 0 rgba(255,255,255,.025),0 8px 28px rgba(0,0,0,.16);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%)}
.application{position:relative;opacity:0;transform:translateY(12px);transition:opacity .6s,transform .7s cubic-bezier(.2,.8,.2,1)}body.ready .application{opacity:1;transform:none}.app-header{height:calc(80px + var(--safe-top));padding:calc(20px + var(--safe-top)) 20px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;position:relative;z-index:5}.brand-button{display:flex;align-items:center;gap:10px;background:none;padding:0;font-size:17px;font-weight:650;letter-spacing:-.5px;white-space:nowrap}.brand-button b{font-weight:720}.brand-mark{width:37px;height:37px;display:grid;place-items:center;background:linear-gradient(140deg,#29aeff,#0083e6);border-radius:13px;box-shadow:inset 0 1px 1px #ffffff5c,0 3px 12px #009aff19}.brand-mark .icon{width:23px;height:23px;stroke-width:1.7}.header-actions{display:flex;gap:8px;align-items:center}.icon-button{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;padding:0}.icon-button .icon{width:20px;height:20px}.balance-pill{border-radius:30px;height:36px;display:flex;align-items:center;gap:6px;padding:4px 4px 4px 10px;font-size:15px;font-weight:600}.balance-pill>.icon{width:17px;height:17px}.tiny-plus{width:26px;height:26px;border-radius:50%;background:#ffffff10;display:grid;place-items:center;margin-left:3px}.tiny-plus .icon{width:16px;height:16px;stroke-width:2}.screen{padding:0 20px calc(114px + var(--safe-bottom));outline:none;min-height:calc(100dvh - 80px)}.page-enter{animation:page-enter .35s cubic-bezier(.2,.8,.2,1)}@keyframes page-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.home-intro{text-align:center;padding-top:28px}.eyebrow{margin:0 0 12px;font-size:11px;letter-spacing:2.2px;color:#8e929c;font-weight:600}.home-title{margin:0;font-size:35px;line-height:1.13;font-weight:740;letter-spacing:-1.5px}.home-title span{background:linear-gradient(105deg,#f6f9ff,#94b3cd);-webkit-background-clip:text;background-clip:text;color:transparent}.flight-stage{position:relative;height:268px;margin:8px -20px -8px;isolation:isolate}.flight-glow{position:absolute;left:50%;top:54%;width:230px;height:170px;transform:translate(-50%,-50%);background:radial-gradient(ellipse,#2b74ae26,transparent 70%);opacity:var(--effects)}.orbit{position:absolute;width:300px;height:106px;left:50%;top:54%;border:1px solid #ffffff0b;border-radius:50%;transform:translate(-50%,-50%) rotate(-22deg)}.orbit.two{width:330px;height:180px;transform:translate(-50%,-50%) rotate(33deg);border-color:#ffffff05}.hero-rocket{position:absolute;inset:0;width:260px;height:260px;margin:auto;z-index:2;filter:drop-shadow(0 24px 22px #0008);animation:float-rocket 5s ease-in-out infinite}.hero-rocket svg{overflow:hidden}.float-gift{position:absolute;z-index:3;width:76px;height:83px;border-radius:23px;background:linear-gradient(145deg,#2b343d92,#13151c8f);box-shadow:inset 0 1px 0 #ffffff2b,inset 0 0 0 1px #ffffff12,0 12px 25px #0005;backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;animation:float-gift 6s ease-in-out infinite;pointer-events:none}.float-gift .gift-art{width:76px;height:76px}.float-gift.left{left:18px;top:85px;transform:rotate(-13deg)}.float-gift.right{right:19px;top:147px;transform:rotate(12deg);animation-delay:-3s;width:67px;height:73px}.float-gift.right .gift-art{width:66px;height:66px}.twinkle{position:absolute;color:#b9dbf8;opacity:.5}.twinkle .icon{width:14px;height:14px;stroke-width:1.4}.twinkle.a{top:49px;right:62px}.twinkle.b{bottom:34px;left:105px;opacity:.26}.stage-caption{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-size:10px;font-weight:650;letter-spacing:2px;color:#666c76}.home-caption{color:var(--secondary);font-size:14px;line-height:1.45;text-align:center;max-width:315px;margin:19px auto 23px;letter-spacing:-.1px}.hero-actions{display:flex;align-items:center;gap:10px}.primary-button{border-radius:50px;min-height:52px;padding:13px 20px;display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(180deg,#16a5ff,#0091f3);box-shadow:inset 0 1px 0 #ffffff39,0 7px 22px #009aff15;color:#fff;font-size:17px;font-weight:600;letter-spacing:-.25px;width:100%}.primary-button .icon{width:21px;height:21px}.hero-actions>.icon-button{width:52px;height:52px;flex-shrink:0}.hero-actions>.icon-button .icon{width:23px;height:23px;color:#c4c5cb}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:30px 1px 15px;gap:12px}.section-heading h2{font-size:20px;letter-spacing:-.6px;font-weight:650;margin:0}.text-button{background:transparent;color:var(--blue);font-size:14px;padding:5px 0;display:flex;align-items:center;gap:2px}.text-button .icon{width:16px;height:16px}.gift-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gift-card{text-align:left;position:relative;isolation:isolate;overflow:hidden;border-radius:22px;padding:0;background:linear-gradient(150deg,var(--gift-bg,#1c232d),#141519 100%);border:1px solid #ffffff09;box-shadow:inset 0 1px 0 #ffffff04;min-width:0}.gift-card:before{content:"";position:absolute;inset:0;background:url("assets/telegram-space.svg") center/280px auto;opacity:.025;filter:invert(1);z-index:-1}.gift-art{display:block;width:100%;aspect-ratio:1;pointer-events:none}.gift-art svg{width:100%!important;height:100%!important}.gift-card .gift-art{margin:3px 0 -2px;min-height:95px}.gift-name{display:block;font-size:12px;font-weight:580;letter-spacing:-.2px;padding:0 10px 13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gift-card.selected{border-color:#009aff8a;box-shadow:inset 0 0 0 1px #009aff22}.gift-card .chosen-check{position:absolute;top:10px;right:9px;color:#fff;background:var(--blue);border-radius:100%;padding:3px;width:18px;height:18px}.selected-drop{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:21px;margin-top:16px}.selected-drop .gift-art{width:54px;height:54px;flex-shrink:0}.selected-drop p{margin:0 0 3px;color:var(--secondary);font-size:11px}.selected-drop strong{font-size:15px;font-weight:600}.selected-drop .text-button{margin-left:auto;font-size:12px}.collection-note{display:flex;justify-content:center;gap:5px;align-items:center;color:#66666f;font-size:11px;margin-top:20px}.collection-note .icon{width:13px;height:13px;stroke-width:1.5}
.nav-fade{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(460px,100%);height:118px;background:linear-gradient(transparent,#08080aeb 58%);z-index:9;pointer-events:none}.bottom-nav{position:fixed;bottom:calc(15px + var(--safe-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 40px);max-width:360px;height:68px;z-index:10;display:grid;grid-template-columns:repeat(3,1fr);padding:5px;border-radius:36px;background-color:#17171a9e;overflow:hidden}.nav-selection{position:absolute;left:5px;top:5px;width:calc((100% - 10px)/3);height:56px;border-radius:30px;background:linear-gradient(160deg,#ffffff13,#ffffff09);border:1px solid #ffffff09;box-shadow:inset 0 1px 0 #ffffff0d;transition:transform .4s cubic-bezier(.22,1,.36,1)}.nav-item{position:relative;background:none;border-radius:30px;display:flex;flex-direction:column;gap:3px;align-items:center;justify-content:center;color:#9a9aa2;font-size:10px;font-weight:550;padding:3px 4px}.nav-item .icon{width:23px;height:23px;stroke-width:1.8}.nav-item.active{color:#35b0ff}.nav-item.active .icon{filter:drop-shadow(0 0 8px #009aff22)}
.page-title{font-size:32px;font-weight:720;letter-spacing:-1.1px;margin:22px 0 7px}.page-subtitle{color:var(--secondary);font-size:14px;margin:0 0 24px;line-height:1.4}.segmented{display:flex;background:#2020239c;padding:3px;border-radius:28px;border:1px solid #ffffff05;margin-bottom:19px;position:relative}.segment{background:transparent;border-radius:25px;padding:10px 9px;flex:1;color:var(--secondary);font-size:14px;font-weight:550;white-space:nowrap}.segment.active{color:#fff;background:linear-gradient(150deg,#ffffff16,#ffffff0c);box-shadow:0 2px 5px #0003,inset 0 1px 0 #ffffff17}.catalog-search{display:flex;gap:9px;margin-bottom:19px}.search-field{background:#1b1b1fa6;border:1px solid #ffffff07;border-radius:15px;display:flex;align-items:center;gap:8px;padding:0 12px;flex:1;min-width:0}.search-field .icon{width:18px;height:18px;color:#797982}.search-field input{width:100%;min-width:0;background:none;color:white;border:0;outline:none;height:44px;font-size:15px}.search-field input::placeholder{color:#707078}.filter-button{width:44px;height:44px;border-radius:15px;flex-shrink:0}.catalog-meta{display:flex;justify-content:space-between;align-items:center;color:#72727c;font-size:11px;margin:0 2px 12px}.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalog-grid .gift-card{border-radius:25px}.catalog-grid .gift-art{margin:5px 0 0}.catalog-grid .gift-name{padding:3px 14px 4px;font-size:15px;font-weight:600}.gift-type{display:block;color:#92929b;font-size:11px;padding:0 14px 15px}.favorite-marker{position:absolute;right:10px;top:10px;width:25px;height:25px;border-radius:50%;background:#ffffff0c;display:grid;place-items:center;color:#ffffffbb}.favorite-marker .icon{width:13px;height:13px;fill:currentColor;stroke-width:1.4}.empty-state{text-align:center;padding:66px 10px 20px}.empty-icon{width:82px;height:82px;border-radius:26px;margin:auto auto 20px;display:grid;place-items:center;background:#1e1e22;color:#8e929b;box-shadow:inset 0 1px 0 #ffffff11}.empty-icon .icon{width:38px;height:38px;stroke-width:1.3}.empty-state h2{font-size:22px;letter-spacing:-.6px;margin:0 0 10px}.empty-state p{color:var(--secondary);font-size:14px;line-height:1.5;max-width:260px;margin:0 auto 24px}.empty-state .primary-button{max-width:280px;margin:auto}
.profile-heading{text-align:center;padding:18px 0 25px}.avatar{width:80px;height:80px;border-radius:50%;margin:0 auto 13px;background:linear-gradient(145deg,#78bde9,#2372b0);font-size:33px;display:grid;place-items:center;font-weight:600;box-shadow:inset 0 2px 0 #ffffff29;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.profile-heading h1{font-size:24px;font-weight:650;letter-spacing:-.6px;margin:0 0 5px}.profile-heading p{color:var(--secondary);font-size:13px;margin:0}.wallet-card{padding:23px 20px 19px;border-radius:27px;position:relative;overflow:hidden}.wallet-card:before{content:"";position:absolute;right:-55px;top:-60px;width:200px;height:200px;border-radius:100%;background:radial-gradient(circle,#ffffff06,transparent 65%);pointer-events:none}.wallet-label{margin:0;color:var(--secondary);font-size:13px}.wallet-amount{display:flex;align-items:center;gap:9px;font-size:40px;letter-spacing:-1.5px;font-weight:650;margin:7px 0 20px}.wallet-amount .icon{width:28px;height:28px}.wallet-card .primary-button{height:44px;min-height:44px;font-size:15px}.profile-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--separator);border:1px solid var(--separator);border-radius:21px;overflow:hidden;margin:14px 0 25px}.stat{padding:16px;background:#141417;display:flex;flex-direction:column;gap:4px;text-align:center}.stat strong{font-size:22px;font-weight:650;letter-spacing:-.7px}.stat span{font-size:12px;color:var(--secondary)}.group-label{font-size:11px;text-transform:uppercase;font-weight:500;letter-spacing:.75px;color:#797982;padding-left:15px;margin:24px 0 8px}.settings-group{border-radius:21px;background:#1b1b1ed6;overflow:hidden;border:1px solid #ffffff04}.setting-row{width:100%;display:flex;align-items:center;gap:11px;padding:13px 14px;min-height:57px;background:transparent;position:relative;text-align:left}.setting-row+.setting-row:before{content:"";position:absolute;left:56px;top:0;right:0;height:1px;background:#ffffff0b}.setting-icon{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:#2e3037;color:#d5d8e0;flex-shrink:0}.setting-icon .icon{width:17px;height:17px;stroke-width:1.8}.setting-icon.blue{color:#fff;background:#198ef3}.setting-icon.purple{color:#fff;background:#8e66de}.setting-icon.green{color:#fff;background:#2aaf65}.setting-label{font-size:15px;letter-spacing:-.2px;flex:1}.setting-arrow{color:#5f6068;width:16px;height:16px}.switch{width:45px;height:28px;flex-shrink:0;border-radius:20px;background:#343437;border:1px solid #ffffff08;padding:2px;position:relative;box-shadow:inset 0 1px 3px #0002;transition:background .25s}.switch:after{content:"";display:block;position:absolute;left:2px;top:2px;width:22px;height:22px;border-radius:100%;background:linear-gradient(#fff,#e6e6e7);box-shadow:0 2px 3px #0003;transition:transform .3s cubic-bezier(.3,1.5,.5,1)}.switch[aria-checked=true]{background:#31bf67}.switch[aria-checked=true]:after{transform:translateX(17px)}.range-section{padding:15px 16px 17px}.range-label{display:flex;justify-content:space-between;font-size:13px;color:#aaaab2;margin-bottom:15px}.range-value{font-variant-numeric:tabular-nums;color:#d6d6dd}.range{width:100%;height:5px;border-radius:20px;background:linear-gradient(to right,#eee 0%,#eee var(--range-value,70%),#414146 var(--range-value,70%),#414146 100%);appearance:none;-webkit-appearance:none;display:block;margin:8px 0 7px;cursor:pointer}.range::-webkit-slider-thumb{appearance:none;width:24px;height:24px;border-radius:50%;border:0;background:linear-gradient(#fff,#ededf0);box-shadow:0 1px 5px #0005}.range::-moz-range-thumb{width:24px;height:24px;border-radius:50%;border:0;background:white;box-shadow:0 1px 5px #0005}.profile-footer{text-align:center;color:#575760;font-size:11px;line-height:1.7;margin:25px 0 0;letter-spacing:.1px}
.sheet-backdrop{position:fixed;inset:0;background:#0008;z-index:30;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;transition:opacity .3s}.sheet-backdrop.visible{opacity:1}.bottom-sheet{position:fixed;bottom:0;left:50%;width:min(460px,100%);transform:translate(-50%,110%);z-index:31;border-radius:34px 34px 0 0;padding:32px 22px calc(26px + var(--safe-bottom));max-height:90dvh;overflow:auto;overscroll-behavior:contain;background-color:#202024e8;transition:transform .4s cubic-bezier(.22,1,.36,1)}.bottom-sheet.visible{transform:translate(-50%,0)}.sheet-grabber{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:35px;height:5px;border-radius:5px;background:#ffffff35;touch-action:none;cursor:grab}.sheet-close{position:absolute;top:20px;right:19px;background:#ffffff0c;color:#c2c2cb;width:30px;height:30px}.sheet-close .icon{width:16px;height:16px;stroke-width:2.1}.sheet-title{font-size:24px;line-height:1.2;letter-spacing:-.7px;font-weight:650;margin:7px 30px 10px 0}.sheet-copy{font-size:14px;line-height:1.55;color:#a6a6af;margin:0 0 24px}.sheet-art{width:210px;height:210px;margin:-3px auto 0}.sheet-gift-title{text-align:center;font-size:27px;letter-spacing:-.8px;margin:4px 0 6px}.sheet-gift-type{text-align:center;color:#a1a1ac;font-size:13px;margin:0 0 23px}.detail-info{display:flex;align-items:center;justify-content:space-between;font-size:13px;border-radius:16px;background:#ffffff06;padding:15px;margin:0 0 20px}.detail-info>span{color:#91919b}.detail-actions{display:flex;gap:10px}.detail-actions .icon-button{height:52px;width:52px;flex-shrink:0;border-radius:50%;background:#ffffff0a}.detail-actions .icon-button.favorite{color:#ff6c8b}.detail-actions .icon-button.favorite .icon{fill:currentColor}.balance-sheet{text-align:center}.balance-sheet>.icon{width:55px;height:55px;margin:16px auto 20px}.balance-sheet .sheet-title{margin-right:0}.balance-options{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:23px 0 20px}.balance-option{display:flex;align-items:center;justify-content:center;gap:5px;padding:16px 8px;border-radius:17px;background:#ffffff06;border:1px solid #ffffff0a;font-size:16px}.balance-option.active{border-color:#009aff8a;background:#009aff17}.balance-option .icon{width:17px;height:17px}.balance-note{text-align:center;font-size:12px;color:#81818c;margin:15px 0 0}.menu-list{margin:13px -5px 0}.menu-row{width:100%;background:transparent;text-align:left;padding:15px 9px;display:flex;align-items:center;gap:12px;border-radius:14px;font-size:16px}.menu-row+.menu-row{border-top:1px solid #ffffff08}.menu-row .icon{width:21px;height:21px;color:#bcbcc7}.about-mark{margin:10px auto 22px;width:62px;height:62px;border-radius:22px}.about-mark .icon{width:36px;height:36px}.about-title{text-align:center;font-size:27px;letter-spacing:-.7px;margin:0 0 16px}.about-copy{text-align:center;max-width:300px;margin:0 auto 25px;font-size:17px;line-height:1.5;color:#d1d1d9}.filter-options{margin:15px 0 24px}.toast{position:fixed;z-index:40;bottom:calc(100px + var(--safe-bottom));left:50%;transform:translate(-50%,15px);padding:13px 20px;border-radius:22px;background-color:#35353bdf;box-shadow:0 6px 25px #0004;font-size:13px;color:#e9e9ef;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;max-width:calc(100% - 50px);width:max-content;text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}
.splash{position:absolute;inset:0;min-height:100dvh;z-index:20;background:#08080a;overflow:hidden;transition:opacity .6s,visibility .6s;display:flex;justify-content:center;align-items:center}.splash:before{content:"";position:absolute;inset:0;background:url("assets/telegram-space.svg") center/402px 692px;filter:invert(1);opacity:.025}.splash-center{text-align:center;position:absolute;left:0;right:0;top:45%;transform:translateY(-50%)}.loading-rocket{width:228px;height:228px;margin:0 auto -3px;filter:drop-shadow(0 20px 30px #0008);transition:transform .9s cubic-bezier(.4,0,.7,.3),opacity .65s}.splash-title{font-size:31px;font-weight:720;letter-spacing:-1px;margin:0 0 10px}.splash-title span{color:#a9c9e5}.splash-center>p{font-size:13px;letter-spacing:.1px;color:#6e727e;margin:0}.splash-orbit{position:absolute;width:240px;height:240px;border-radius:100%;top:38%;left:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,#234c7133,transparent 70%)}.loading-bottom{position:absolute;bottom:calc(52px + var(--safe-bottom));left:36px;right:36px}.loading-label{display:flex;justify-content:space-between;font-size:11px;color:#95959f;margin-bottom:13px}.loading-label>span:last-child{color:#c0c0ca;font-variant-numeric:tabular-nums}.loading-track{height:5px;border-radius:10px;background:#29292e;overflow:visible;position:relative}.loading-fill{position:relative;width:0%;height:100%;border-radius:10px;background:linear-gradient(90deg,#87b5da,#eff7ff);transition:width .1s linear;box-shadow:0 0 12px #8cc9ff22}.loading-fill i{position:absolute;right:-4px;top:-3px;width:11px;height:11px;border-radius:100%;background:#fff;box-shadow:0 0 7px #c5e8ff39}.loading-brand{text-align:center;font-size:9px;letter-spacing:2.2px;color:#45454e;margin-top:26px}.retry-loading{margin:15px auto 0}body.ready .splash{opacity:0;visibility:hidden;pointer-events:none}body.liftoff .loading-rocket{transform:translateY(-65vh) scale(.8);opacity:0}.noscript{position:fixed;inset:0;z-index:100;background:#08080a;display:grid;place-items:center;color:white;padding:30px;text-align:center}
@keyframes float-rocket{0%,100%{transform:translateY(2px) rotate(-2deg)}50%{transform:translateY(-7px) rotate(1deg)}}@keyframes float-gift{0%,100%{translate:0 0}50%{translate:0 -8px}}
@media(min-width:600px){body{padding:28px 0;display:grid;place-items:center}.mini-app{min-height:860px;border:1px solid #ffffff0d;border-radius:36px;box-shadow:0 25px 100px #0008}.screen{min-height:780px;padding-bottom:116px}.splash{min-height:860px;border-radius:36px}.bottom-nav{bottom:30px}.nav-fade{bottom:0}.app-header{padding-top:24px;height:84px}.home-intro{padding-top:30px}.flight-stage{height:280px}.hero-rocket{width:280px;height:280px}.float-gift.left{left:34px}.float-gift.right{right:34px}.bottom-sheet{border-radius:34px 34px 0 0}.splash-center{top:44%}.loading-bottom{bottom:50px}}
@media(max-width:360px){.app-header{padding-left:16px;padding-right:16px}.brand-button{font-size:15px;gap:7px}.brand-mark{width:33px;height:33px;border-radius:11px}.header-actions{gap:6px}.screen{padding-left:16px;padding-right:16px}.home-title{font-size:31px}.home-intro{padding-top:23px}.flight-stage{height:235px}.hero-rocket{width:235px;height:235px}.float-gift.left{left:12px;top:82px;width:64px;height:70px}.float-gift.right{right:12px;top:135px;width:57px;height:64px}.home-caption{font-size:13px;max-width:285px}.gift-name{font-size:11px;padding-left:8px}.bottom-nav{width:calc(100% - 32px)}.icon-button{width:33px;height:33px}.balance-pill{height:33px;font-size:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}body.reduce-motion .hero-rocket,body.reduce-motion .float-gift{animation:none}body.low-effects .glass{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
body:not(.ready){overflow:hidden}

/* Match the mini-app reference viewport; pan gestures keep scrolling. */
html{font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%;touch-action:pan-x pan-y}
body{touch-action:pan-x pan-y}

/* crash.css */
.game-view .app-header{display:none}.game-view .screen{padding-top:0;min-height:100dvh;padding-bottom:calc(110px + var(--safe-bottom))}.game-view .space-wallpaper{opacity:.15}.game-view .application{transform:none!important}.game-view .mini-app{background:#07080b}.crash-layout{margin:0 -4px}.space-game{position:relative;height:372px;margin:0 -16px 14px;background:radial-gradient(ellipse at 52% 58%,#10121e 0%,#090a10 44%,#030406 83%);isolation:isolate;overflow:hidden}.space-game:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#07080b 0%,transparent 33%,transparent 78%,#08080a);z-index:1}.space-game>canvas{width:100%;height:100%;position:absolute;inset:0;pointer-events:none;z-index:1}.game-topbar{position:absolute;left:16px;right:16px;top:calc(76px + var(--safe-top));display:flex;justify-content:space-between;align-items:center;gap:12px;z-index:5}.game-topbar-left{display:flex;align-items:center;gap:9px}.online-pill{display:flex;gap:5px;align-items:center;background:#143620c7;color:#20ce70;border-radius:24px;height:36px;padding:0 12px;font-size:13px;font-weight:550;border:1px solid #2f763c20}.online-pill .icon{width:14px;height:14px;fill:currentColor;stroke-width:1.5}.game-settings{width:36px;height:36px;background-color:#282b31bb}.game-settings .icon{width:20px;height:20px;fill:#d4d6db;stroke:#282b31;stroke-width:.8}.game-wallet{height:36px;border-radius:23px;display:flex;align-items:center;gap:9px;padding:3px 4px 3px 5px;background-color:#25272bb3}.game-wallet strong{font-size:14px;font-weight:720;letter-spacing:-.25px}.ton-coin{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#00a8e8;color:white;flex-shrink:0;box-shadow:inset 0 1px 0 #ffffff2b}.ton-coin .icon{width:20px;height:20px;stroke-width:1.7}.wallet-add{width:25px;height:25px;background:#ffffff35;border-radius:50%;display:grid;place-items:center;color:white;margin-left:0}.wallet-add .icon{width:16px;height:16px;stroke-width:2.2}.game-countdown{position:absolute;left:0;right:0;top:186px;text-align:center;font-size:86px;font-weight:400;line-height:1;letter-spacing:-3px;z-index:3;color:#f6f7fb;font-variant-numeric:tabular-nums}.game-rocket{position:absolute;left:50%;top:142px;transform:translateX(-50%) scale(.86);width:258px;height:225px;z-index:3;opacity:0;transition:opacity .28s,transform .5s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 12px 25px #0005)}.game-rocket.flying{opacity:1;transform:translateX(-50%) scale(1);animation:flight-drift 4s ease-in-out infinite}.game-rocket svg,.game-explosion svg{width:100%!important;height:100%!important}.game-explosion{position:absolute;left:50%;top:118px;transform:translateX(-50%);width:280px;height:280px;z-index:4;pointer-events:none;opacity:.85}.crashed-label{position:absolute;left:0;right:0;top:200px;z-index:5;display:flex;flex-direction:column;align-items:center;gap:8px;text-shadow:0 2px 18px #0008}.crashed-label strong{font-size:48px;font-weight:650;letter-spacing:-1.7px;color:#ff768b}.crashed-label span{color:#c7b1bd;font-size:12px}.coefficient-strip{display:flex;align-items:center;gap:9px;margin:0 -16px 15px;padding-left:0;white-space:nowrap;min-width:0;height:28px}.current-coefficient,.past-coefficient{height:28px;border-radius:20px;display:inline-flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums;font-size:12px;font-weight:650;flex-shrink:0}.current-coefficient{background:#008fff;min-width:55px;padding:0 11px;color:white;transition:background .2s}.current-coefficient.waiting{font-size:11px;min-width:78px}.current-coefficient.crashed{background:#932643;color:#ffd5de}.coefficient-history{display:flex;gap:9px;min-width:0;overflow-x:auto;scrollbar-width:none;padding-right:5px;mask-image:linear-gradient(90deg,#000 0%,#000 91%,transparent)}.coefficient-history::-webkit-scrollbar{display:none}.past-coefficient{border:1px solid currentColor;padding:0 11px;min-width:46px;background:#182a3b80}.past-coefficient.blue{color:#59afff;border-color:#438edb}.past-coefficient.purple{color:#c37bff;border-color:#ab58dc;background:#40235755}.past-coefficient.gold{color:#ffe326;border-color:#e6d209;background:#544e0855}.past-coefficient.pink{color:#ff3cff;border-color:#c431d9;background:#4f165355}.bet-button{position:relative;isolation:isolate;overflow:hidden;min-height:52px;border-radius:29px;font-size:15px;font-weight:700;margin-bottom:16px;background:#0096ff;box-shadow:inset 0 1px 0 #ffffff24,0 5px 20px #009aff09}.bet-button:before{content:"";position:absolute;inset:0;background:url("assets/telegram-space.svg") center/230px auto;opacity:.075;filter:invert(1);z-index:-1}.bets-card{background:#1b1e23;border-radius:26px;min-height:306px;padding:17px 15px;border:1px solid #ffffff02}.round-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:78px}.round-empty-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:15px;background:#ffffff04;color:#636772;margin-bottom:15px}.round-empty-icon .icon{width:24px;height:24px;stroke-width:1.4}.round-empty strong{font-size:14px;font-weight:550;color:#959aa6}.round-empty p{font-size:12px;color:#656b77;margin:7px 0 17px}.demo-caption{font-size:10px;letter-spacing:.15px;color:#505966}.bet-participant{display:flex;align-items:center;gap:10px;min-width:0}.bet-avatar{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#72bbea,#346891);font-size:20px;font-weight:600;flex-shrink:0}.participant-info{min-width:0;flex:1}.participant-info>strong{font-size:15px;display:block;font-weight:650}.participant-info>strong>span{font-size:9px;color:#8a93a2;background:#ffffff07;border:1px solid #ffffff08;border-radius:6px;padding:2px 4px;margin-left:3px;font-weight:500;vertical-align:middle}.participant-info p{margin:3px 0 0;display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600}.mini-ton{width:14px;height:14px;display:inline-grid;place-items:center;background:#00a9e9;border-radius:50%;color:white}.mini-ton .icon{width:12px;height:12px;stroke-width:1.8}.bet-multiplier{color:#9aabc4;font-size:11px;font-weight:600;padding-left:3px}.participant-value{display:flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap}.participant-gift{width:37px;height:37px;flex-shrink:0}.bet-preview-note{font-size:11px;color:#626a77;padding:18px 0 0 54px;line-height:1.5}.large-ton{width:52px;height:52px;margin:12px auto 22px}.large-ton .icon{width:38px;height:38px}.ton-balance{font-size:36px;letter-spacing:-1.2px;font-weight:650;margin:16px 0 22px}.ton-balance span{font-size:17px;letter-spacing:0;color:#9097a5}.settings-done{margin-top:23px}.bet-gift-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0 24px}.bet-gift-option{border-radius:20px;overflow:hidden;padding:0;background:#ffffff04;border:1px solid #ffffff06}.bet-gift-option.active{border-color:#009aff;box-shadow:inset 0 0 0 1px #009aff35;background:#009aff0a}.bet-amount-label{font-size:12px;color:#9298a5;display:block;margin:0 0 10px}.bet-amount-row{display:flex;align-items:center;gap:11px;padding:12px;border-radius:23px;background:#ffffff05;border:1px solid #ffffff08}.bet-amount-row input{border:0;outline:0;color:white;background:none;min-width:0;flex:1;font-size:27px;font-weight:600;font-variant-numeric:tabular-nums;text-align:center;width:100%;appearance:textfield;-moz-appearance:textfield;letter-spacing:-.8px}.bet-amount-row input::-webkit-inner-spin-button,.bet-amount-row input::-webkit-outer-spin-button{appearance:none;margin:0}.bet-amount-row .icon-button{flex-shrink:0;font-size:23px}.bet-quick-amounts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:11px 0 24px}.bet-quick-amounts button{padding:10px 0;border-radius:14px;color:#aab3c2;background:#ffffff06;font-size:12px;font-variant-numeric:tabular-nums}.game-view.reduce-motion .game-rocket{animation:none}.application{transform:none!important;transition:opacity .6s}.game-view .bottom-nav{background-color:#1a1c22bb}.game-view .nav-fade{background:linear-gradient(transparent,#08080af5 60%)}
@keyframes flight-drift{0%,100%{translate:0 3px;rotate:-1deg}50%{translate:0 -4px;rotate:1deg}}
.header-ton{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:#00a8e8}.header-ton .icon{width:16px;height:16px;stroke-width:1.7}.wallet-unit{font-size:17px;letter-spacing:0;color:#9196a1;font-weight:500;margin-left:1px}
.game-rocket{transform:translateX(-50%) scale(.86) rotate(24deg)}.game-rocket.flying{transform:translateX(-50%) scale(1) rotate(24deg)}.coefficient-strip{margin-left:0}
@media(max-width:360px){.space-game{margin-left:-12px;margin-right:-12px;height:355px}.coefficient-strip{margin-left:-12px;margin-right:-12px}.game-topbar{left:12px;right:12px}.game-rocket{width:240px;height:220px;top:140px}.game-countdown{top:182px}.bets-card{min-height:280px}.game-topbar{top:68px}}
@media(max-width:360px){.coefficient-strip{margin-left:0}}
@media(min-width:600px){.space-game{height:375px}.game-topbar{top:75px}.bets-card{min-height:330px}.game-view .mini-app{min-height:900px}.game-view .screen{min-height:900px}}

/* Swap only the existing reward cover, without moving the participant row. */
.participant-gift{position:relative;overflow:hidden;isolation:isolate}
.rocket-gift-current,.rocket-gift-outgoing{position:absolute;inset:0;display:grid;place-items:center}
.rocket-gift-current>img,.rocket-gift-outgoing>img{width:80%;height:80%;object-fit:contain}
.rocket-gift-entering{animation:rocket-gift-in .28s cubic-bezier(.2,.8,.2,1) both}
.rocket-gift-outgoing{pointer-events:none;animation:rocket-gift-out .28s cubic-bezier(.2,.8,.2,1) both}
@keyframes rocket-gift-in{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}
@keyframes rocket-gift-out{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-100%);visibility:hidden}}
.reduce-motion .rocket-gift-entering{animation:none}.reduce-motion .rocket-gift-outgoing{display:none}
@media(prefers-reduced-motion:reduce){.rocket-gift-entering{animation:none}.rocket-gift-outgoing{display:none}}

/* realtime.css */
.currency-art{display:inline-block;width:24px;height:24px;vertical-align:middle;flex-shrink:0}.currency-art svg{width:100%!important;height:100%!important}.ton-coin,.mini-ton,.header-ton{background:transparent!important;box-shadow:none!important;border-radius:0}.ton-coin .currency-art{width:28px;height:28px}.mini-gram{display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center}.mini-gram .currency-art{width:22px;height:22px}.header-ton{display:flex}.header-ton .currency-art{width:25px;height:25px}.game-wallet>.ton-coin{width:28px;height:28px}.game-rocket{width:210px;height:184px;top:158px}.game-rocket.flying{animation-duration:2.7s}.game-explosion{width:230px;height:230px;top:133px;opacity:1}.crashed-label{top:207px;animation:result-appear .45s cubic-bezier(.2,.8,.2,1)}.crashed-label strong{color:#ff6477}.game-countdown{will-change:transform,opacity,filter}.online-pill.disconnected{color:#e1af69;background:#4835198c}.bet-button:disabled{opacity:.52}.cancel-bet-button,.result-button{width:100%;min-height:52px;border-radius:28px;margin-bottom:16px;background:#ffffff0b;border:1px solid #ffffff0a;font-size:14px;font-weight:650;color:#c9cbd1}.cancel-bet-button{color:#f0d5b3}.cashout-button{background:#1cb579;box-shadow:inset 0 1px 0 #ffffff28,0 6px 24px #1cb57917;display:flex;justify-content:center;gap:8px}.result-button.won{color:#4be6a2;background:#0d513528}.result-button.lost{color:#ff667e;background:#5f1a2a28}.bet-entry{padding:0 0 18px;margin-bottom:17px;border-bottom:1px solid #ffffff06;animation:result-appear .38s ease}.bet-entry:last-child{border-bottom:0}.bet-entry.won .participant-value,.bet-entry.won .bet-multiplier{color:#45dda0}.participant-value strong{font-variant-numeric:tabular-nums;min-width:42px;text-align:right}.bet-avatar,.avatar{overflow:hidden}.bet-avatar img,.avatar img{width:100%;height:100%;object-fit:cover}.participant-info .won-tag{background:#21c78015;border-color:#21c78019;color:#48e4a6;font-weight:650}.reward-description{padding:8px 1px 0 53px;color:#7c8493;font-size:10px;font-weight:500}.won .reward-description{color:#51c294}.bet-participant{gap:8px}.participant-gift{width:45px;height:45px}.bet-source{margin:16px 0 20px}.bet-source button{display:flex;align-items:center;justify-content:center;gap:4px}.bet-source .currency-art{width:21px;height:21px}.bet-gift-picker{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.bet-gift-option .gift-art{height:83px}.bet-gift-price{display:block;padding:0 0 10px;font-size:12px;color:#c1d7f5;font-variant-numeric:tabular-nums}.price-feed-note{font-size:11px;color:#7e8898;line-height:1.55;margin:0 0 19px;min-height:34px}.bet-amount-row{margin-bottom:18px}.large-currency{display:block;width:68px;height:68px;margin:10px auto 8px}.large-currency .currency-art{width:68px;height:68px}.inventory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:28px}.inventory-item{background:#ffffff05;border:1px solid #ffffff06;border-radius:18px;overflow:hidden;padding:5px 5px 11px;min-width:0}.inventory-item .gift-art{height:87px}.inventory-item strong{font-size:10px;white-space:nowrap;display:block;overflow:hidden;text-overflow:ellipsis}.inventory-item>span:last-child{display:flex;align-items:center;justify-content:center;color:#a8c7e5;font-size:11px;margin-top:5px}.inventory-item .currency-art{width:22px;height:22px}.inventory-empty{grid-column:1/-1;text-align:center;color:#7b8290;font-size:13px;padding:20px}.wallet-amount>[data-balance]{color:white;font-size:36px}.mode-card{display:block;position:relative;overflow:hidden;width:100%;border-radius:28px;text-align:left;color:white}.mode-rocket{height:325px;background:radial-gradient(ellipse at 50% 32%,#16345160,transparent 75%),#11131ad9;border:1px solid #ffffff0d}.mode-art{position:absolute;top:2px;left:calc(50% - 110px);width:220px;height:200px}.mode-copy{position:absolute;left:22px;right:22px;bottom:75px}.mode-copy strong{display:block;font-size:25px;letter-spacing:-.8px}.mode-copy>span{display:block;color:#858fa3;font-size:12px;margin-top:8px}.mode-open{position:absolute;left:22px;bottom:22px;display:flex;gap:10px;align-items:center;color:#5cb5ff;font-size:13px}.mode-open .icon{width:14px;height:14px}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:15px}.coming-mode{height:180px;padding:20px;background:#ffffff04;border:1px solid #ffffff06}.coming-mode .mode-symbol{height:67px;display:flex;align-items:center}.mode-symbol>.icon{width:37px;height:37px;color:#d3b3e9}.mode-symbol .currency-art{width:60px;height:60px;margin-left:-10px}.coming-mode strong{display:block;font-size:14px;margin-top:11px}.coming-mode>span:last-child{font-size:11px;color:#6e7786;display:block;margin-top:7px}.local-caption{text-align:center;font-size:10px;color:#525b6b;line-height:1.7;margin-top:27px}.modes-page .page-subtitle{margin-bottom:23px}@keyframes result-appear{from{opacity:0;transform:translateY(10px);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}.reduce-motion .bet-entry,.reduce-motion .crashed-label{animation:none}.wallet-unit{font-size:13px!important}@media(max-width:360px){.bet-avatar{width:35px;height:35px}.participant-info>strong{font-size:13px}.participant-value{gap:2px;font-size:11px}.participant-gift{width:38px;height:38px}.reward-description{padding-left:43px}.mode-grid{gap:10px}.coming-mode{padding:16px}.coming-mode strong{font-size:12px}}
button:active:not(:disabled){transform:none!important}button{transition:background .2s,opacity .2s}.result-button:disabled{opacity:1}.mode-art svg{width:100%!important;height:100%!important}
.game-explosion canvas{width:100%!important;height:100%!important;display:block}

/* orbit.css */
:root{--effects:1;--accent:#9d9bff}.game-view .screen{padding:calc(24px + var(--safe-top)) 20px calc(112px + var(--safe-bottom));min-height:100dvh}.game-view .space-wallpaper{opacity:.3}.crash-layout{margin:0}.game-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 20px;gap:14px}.game-title{display:flex;align-items:center;gap:9px}.game-title .brand-mark{width:34px;height:34px;border-radius:12px;background:linear-gradient(140deg,#8eabff,#7974e9);box-shadow:inset 0 1px 0 #ffffff39}.game-title .brand-mark .icon{width:21px;height:21px}.game-title h1{font-size:20px;font-weight:690;letter-spacing:-.7px;margin:0}.game-title h1 span{font-weight:450;color:#a6a5c0}.game-wallet{height:32px;gap:5px;padding-left:4px}.game-wallet strong{font-size:12px}.game-wallet>.ton-coin,.game-wallet>.ton-coin>.currency-art{width:23px;height:23px}.game-wallet .wallet-add{width:21px;height:21px}.wallet-add .icon{width:13px;height:13px}.space-game{height:350px;border-radius:31px;margin:0 0 18px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 77% 22%,#4d3b752b,transparent 55%),radial-gradient(ellipse at 25% 75%,#153c5929,transparent 65%),#0d0e16;border:1px solid #c2c4ff15;box-shadow:inset 0 1px 0 #ffffff06,0 20px 70px #0003}.space-game:after{background:linear-gradient(180deg,#0d0e1600,#0d0e1600 70%,#0d0e1680);z-index:1}.space-game>canvas{z-index:1}.orbit-glow{position:absolute;left:50%;top:44%;width:210px;height:210px;transform:translate(-50%,-50%);background:radial-gradient(circle,#7471cc24,#6563af08 47%,transparent 70%);pointer-events:none;z-index:0}.orbit-ring{position:absolute;left:50%;top:44%;width:255px;height:129px;transform:translate(-50%,-50%) rotate(-22deg);border:1px solid #9f9bdb12;border-radius:50%;z-index:0;pointer-events:none}.orbit-ring.two{width:206px;height:206px;transform:translate(-50%,-50%) rotate(25deg);border-color:#aaa7dc09}.orbit-planet{position:absolute;right:-56px;top:-78px;width:205px;height:205px;border-radius:50%;background:radial-gradient(circle at 33% 84%,#817bbc18,#45405b10 37%,#18192300 68%);border:1px solid #b9b5db0b;z-index:0;pointer-events:none}.stage-controls{position:absolute;left:17px;right:17px;top:17px;z-index:5;display:flex;justify-content:space-between;align-items:center}.online-pill{height:27px;padding:0 9px;font-size:10px;border-radius:10px;color:#a5c9ba;background:#283a323d;border-color:#68b98c13;gap:4px}.online-pill .icon{width:11px;height:11px}.game-settings{width:28px;height:28px;background:#ffffff05;border:1px solid #ffffff07}.game-settings .icon{width:16px;height:16px;fill:none;stroke:#9097ad;stroke-width:1.5}.stage-caption{position:absolute;left:0;right:0;top:70px;text-align:center;color:#76788e;font-size:9px;letter-spacing:2px;z-index:4}.game-countdown{font-size:68px;top:125px;letter-spacing:-2.5px;color:#e7e6f5;font-weight:400;line-height:1.15;text-shadow:0 5px 25px #b4b0ff0c}.game-rocket{width:162px;height:146px;top:91px;filter:drop-shadow(0 12px 24px #0006)}.game-explosion{width:220px;height:220px;top:61px}.game-explosion canvas{position:static!important;inset:auto!important;width:100%!important;height:100%!important;display:block}.coefficient-current-wrap{position:absolute;left:0;right:0;bottom:34px;z-index:5;display:flex;align-items:center;flex-direction:column;gap:7px}.coefficient-current-wrap>span{font-size:9px;letter-spacing:1.4px;color:#62677d}.coefficient-current-wrap .current-coefficient{height:auto;min-width:0;border:0;background:none;padding:0;font-size:28px;font-weight:600;letter-spacing:-.8px;color:#e3e4fa}.coefficient-current-wrap .current-coefficient.waiting{font-size:12px;letter-spacing:0;font-weight:450;color:#8d91aa}.coefficient-current-wrap .current-coefficient.crashed{color:#ff718a;background:none}.crashed-label{top:128px;gap:9px;animation:none}.crashed-label strong{font-size:45px;font-weight:650;color:#ff728b;letter-spacing:-1.8px}.crashed-label span{font-size:11px;color:#9993ab}.history-heading{display:flex;justify-content:space-between;font-size:10px;color:#666c7c;letter-spacing:.1px;margin:0 2px 9px}.coefficient-strip{margin:0 0 20px;padding:0;height:27px;gap:0}.coefficient-history{width:100%;gap:7px}.past-coefficient{height:26px;border-radius:9px;min-width:45px;font-size:11px;font-weight:550;letter-spacing:0;padding:0 9px;border-color:#8095bd32;background:#7a86a609;color:#a6b7d4}.past-coefficient.purple{color:#b7a9e2;background:#8880bd0d;border-color:#a498c42c}.past-coefficient.gold{color:#d1c082;background:#a095650c;border-color:#d4bd7b28}.past-coefficient.blue{color:#9eafd0;border-color:#8095bd2b;background:#7a86a609}.past-coefficient.pink{color:#d898be;border-color:#cf92bd32;background:#b579aa0c}.bet-button{min-height:49px;border-radius:18px;font-size:14px;background:linear-gradient(130deg,#8a9ef4,#767ee2);box-shadow:inset 0 1px 0 #ffffff34,0 7px 25px #747ee210;margin-bottom:17px}.bet-button:before{display:none}.cashout-button{background:linear-gradient(130deg,#46caa2,#36ad87)}.cancel-bet-button,.result-button{min-height:49px;border-radius:18px;font-size:13px;margin-bottom:17px}.bets-card{min-height:190px;background:linear-gradient(145deg,#171820c4,#111219db);border:1px solid #ffffff08;border-radius:25px;padding:19px 17px}.participants-title{font-size:12px;font-weight:550;color:#9c9dad;margin:0 0 19px;display:flex;justify-content:space-between}.participants-title>span{font-size:10px;font-weight:450;color:#5f6376}.round-empty{padding-top:6px}.round-empty-icon{width:33px;height:33px;border-radius:12px;margin:0 0 10px;color:#74798c;background:#ffffff04}.round-empty-icon .icon{width:19px;height:19px}.round-empty strong{font-size:12px;font-weight:500;color:#777e93}.round-empty p{font-size:10px;color:#575e73;margin:6px 0 0}.demo-caption{display:none}.mode-rocket{height:275px;border-radius:29px;background:radial-gradient(circle at 73% 26%,#6c60a02c,transparent 43%),radial-gradient(ellipse at 33% 55%,#3b557b20,transparent 63%),#101119;border-color:#aea7da1a}.mode-rocket:before{content:"";position:absolute;right:-45px;top:6px;width:270px;height:140px;border:1px solid #a59bdb12;transform:rotate(-28deg);border-radius:50%;pointer-events:none}.mode-rocket:after{content:"";position:absolute;right:12px;top:-85px;width:210px;height:210px;border:1px solid #9792c913;border-radius:50%;background:radial-gradient(circle at 33% 80%,#8b7dbd10,transparent 70%);pointer-events:none}.mode-art{width:147px;height:147px;left:auto;right:36px;top:19px;z-index:2;transform:rotate(12deg)}.mode-copy{bottom:66px;left:23px}.mode-copy strong{font-size:24px;font-weight:630;letter-spacing:-.7px}.mode-copy>span{font-size:11px;color:#898ba2}.mode-open{bottom:23px;left:23px;color:#b3baff;font-size:12px}.mode-grid{display:none}.wallet-card{border-radius:24px;padding:16px 17px 15px;margin:20px 0 20px;background:linear-gradient(145deg,#26263050,#13141a90);border-color:#ffffff0e;text-align:left}.wallet-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:10px}.wallet-card .wallet-label{margin:0;font-size:10px;color:#888a9b}.wallet-connect-link{background:transparent;color:#a3acdc;font-size:10px;display:flex;align-items:center;gap:4px;padding:1px 0}.wallet-connect-link .icon{width:12px;height:12px}.wallet-amount{display:flex;justify-content:flex-start;align-items:center;gap:7px;margin:0 0 15px;font-size:27px;letter-spacing:-.8px;line-height:1.2}.wallet-amount>[data-balance]{font-size:27px;font-weight:650}.wallet-amount .ton-coin,.wallet-amount .currency-art{width:23px;height:23px}.wallet-amount .wallet-unit{font-size:10px!important;color:#6e7486;letter-spacing:.3px;margin-left:0}.wallet-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.wallet-actions button{border-radius:14px;min-height:38px;padding:9px 12px;font-size:12px;font-weight:550;display:flex;justify-content:center;align-items:center;gap:6px;background:linear-gradient(145deg,#899af0,#707fd8);box-shadow:inset 0 1px 0 #ffffff25;color:#f5f5ff}.wallet-actions button .icon{width:15px;height:15px;stroke-width:1.6}.wallet-actions button.secondary-wallet{background:#ffffff06;color:#b9bfd5;border:1px solid #ffffff0a;box-shadow:inset 0 1px 0 #ffffff06}.wallet-actions .withdraw-icon{transform:rotate(180deg)}.profile-heading{padding-top:23px}.profile-heading .avatar{width:65px;height:65px;font-size:28px;border-radius:50%;margin-bottom:13px}.profile-heading h1{font-size:22px}.profile-heading p{font-size:11px}.profile-stats,.range-section{display:none}.group-label{font-size:10px;letter-spacing:.5px;color:#73798c;margin:23px 2px 9px}.inventory-grid{gap:8px}.inventory-item{background:#ffffff03;border-color:#ffffff07;border-radius:17px}.inventory-item .gift-art{height:78px}.setting-row{min-height:53px}.settings-group{border-radius:21px;background:#ffffff05}.profile-footer{font-size:10px;color:#4b5366}.wallet-sheet .sheet-title{margin:8px 0 10px;text-align:center}.wallet-sheet-amount{font-size:32px;font-weight:630;text-align:center;margin:0 0 12px;letter-spacing:-.9px}.wallet-sheet-amount small{font-size:12px;color:#858aa0;letter-spacing:0;font-weight:450}.wallet-sheet .sheet-copy{text-align:center;font-size:12px;margin:0 0 20px;color:#858a9e}.wallet-sheet .large-currency{width:49px;height:49px;margin:3px auto 17px}.wallet-sheet .large-currency .currency-art{width:49px;height:49px}.wallet-address{border-radius:15px;background:#ffffff05;border:1px solid #ffffff07;padding:14px;font-size:11px;color:#99a6c7;text-align:center;margin:0 0 17px;word-break:break-all}.wallet-sheet .primary-button{font-size:14px;min-height:46px;border-radius:17px;background:linear-gradient(130deg,#8c9ced,#7280dc)}.wallet-sheet .balance-note{font-size:10px;line-height:1.6;color:#606a80;margin-top:15px}.wallet-action-amount{display:flex;justify-content:center;gap:6px;align-items:center;margin:17px 0 22px}.wallet-action-amount input{background:none;border:0;outline:none;color:white;text-align:center;max-width:170px;font-size:32px;font-weight:600;letter-spacing:-1px}.wallet-action-amount>span{font-size:12px;color:#7f879c}.wallet-status-line{font-size:10px;color:#6f7f97;text-align:center;margin:10px 0 0}.game-view .bottom-nav{background-color:#171820bd;border-color:#d1d3ff13}.nav-item.active{color:#a9b4ff}.nav-selection{background:linear-gradient(145deg,#9eacff16,#9a9ce50c);border-color:#b5b7f511}.local-caption{margin:21px 0 0;font-size:9px;color:#4c5265}.stage-decor-star{position:absolute;right:32px;bottom:44px;width:3px;height:3px;border-radius:50%;background:#9f9cdb55;box-shadow:0 0 12px #b0a4ff44;z-index:0}@media(max-width:360px){.game-view .screen{padding-left:16px;padding-right:16px}.space-game{height:325px}.game-title h1{font-size:18px}.game-title .brand-mark{width:30px;height:30px}.game-wallet{gap:3px}.game-rocket{width:150px;height:135px;top:84px}.game-countdown{top:117px}.stage-caption{top:65px}.coefficient-current-wrap{bottom:28px}.game-explosion{top:48px}.mode-art{width:132px;height:132px;right:27px;top:22px}.mode-rocket{height:258px}.wallet-card{padding:14px}.wallet-actions{gap:7px}.wallet-actions button{font-size:11px}}
.space-game[data-phase=crashed] .coefficient-current-wrap{visibility:hidden}
.space-game[data-phase=exploding] .coefficient-current-wrap{visibility:hidden}.space-game[data-phase=exploding] .game-rocket{opacity:0!important;transition:none}.splash-title span{color:#aaaeea}.loading-fill{background:linear-gradient(90deg,#9ba9e6,#edf0ff)}
.wallet-card{padding:12px 15px;border-radius:23px}.wallet-topline{margin-bottom:6px}.wallet-connect-link>.currency-art{width:16px;height:16px}.wallet-amount{margin-bottom:10px;line-height:1.2;font-size:25px}.wallet-amount>[data-balance]{font-size:25px}.wallet-amount .ton-coin,.wallet-amount .currency-art{width:21px;height:21px}.wallet-actions button{min-height:35px;padding:8px 10px}.brand-mark{background:linear-gradient(140deg,#8eabff,#7974e9)}
.game-view .space-wallpaper{opacity:1}
.game-view .space-wallpaper:before{opacity:.085}
.game-view .space-wallpaper:after{background:linear-gradient(180deg,#0005,transparent 24%,#0003 75%,#0008)}

/* Black surfaces and Telegram blue accents. */
:root{--bg:#000;--accent:#009aff;--blue:#009aff}
html,body,.mini-app,.screen,.bottom-sheet{scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar,body::-webkit-scrollbar,.mini-app::-webkit-scrollbar,.screen::-webkit-scrollbar,.bottom-sheet::-webkit-scrollbar{display:none;width:0;height:0}
html,body,.mini-app,.game-view .mini-app{background:#000}
.desktop-aura{background:none}
.space-wallpaper:after{background:linear-gradient(180deg,#000,transparent 24%,#0009 72%)}
.space-game{background:#060606;border-color:#ffffff12}
.space-game:after{background:linear-gradient(180deg,transparent 70%,#0007)}
.orbit-glow{background:radial-gradient(circle,#ffffff09,transparent 70%)}
.orbit-ring,.orbit-ring.two{border-color:#ffffff09}
.orbit-planet{background:radial-gradient(circle at 33% 84%,#ffffff08,transparent 68%);border-color:#ffffff08}
.stage-decor-star{background:#ffffff55;box-shadow:0 0 12px #ffffff22}
.bets-card{background:#1b1b1b;border-color:#ffffff0a}
.wallet-card,.settings-group{background:#171717}
.inventory-item{background:#151515}
.inventory-item .currency-art{width:18px;height:18px}
.mode-rocket{background:#101010;border-color:#ffffff12}
.mode-rocket:before,.mode-rocket:after{border-color:#ffffff0a}
.mode-rocket:after{background:radial-gradient(circle at 33% 80%,#ffffff06,transparent 70%)}
.primary-button,.bet-button,.wallet-actions button,.wallet-sheet .primary-button{background:#009aff;color:#fff;box-shadow:inset 0 1px 0 #ffffff24}
.cashout-button{background:#1cb579}
.primary-button.cashout-receipt:disabled{background:#178a59;color:#fff;opacity:1;border:1px solid #299c6d;box-shadow:inset 0 1px 0 #ffffff20;cursor:default}
.setting-icon.amber{background:#d89921;color:#fff}
.wallet-actions button.secondary-wallet{background:#009aff;color:#fff;border-color:transparent;box-shadow:inset 0 1px 0 #ffffff24}
.brand-mark,.game-title .brand-mark{background:#009aff}
.nav-item.active,.mode-open,.wallet-connect-link{color:#40aaff}
.nav-selection{background:#ffffff0b;border-color:#ffffff0d}
.game-view .bottom-nav{background-color:#1b1b1be8;border-color:#ffffff16}
.game-view .nav-fade{background:linear-gradient(transparent,#000f 60%)}
.game-title h1 span,.participants-title{color:#a0a0a5}
.stage-caption,.coefficient-current-wrap>span,.history-heading{color:#777}
.game-countdown,.coefficient-current-wrap .current-coefficient{color:#f5f5f5;text-shadow:none}
.coefficient-current-wrap .current-coefficient.waiting{color:#999}
.coefficient-current-wrap .current-coefficient.crashed{color:#ff718a}
.round-empty strong{color:#999}.round-empty p{color:#707070}
.splash-title span{color:#40aaff}.loading-fill{background:#009aff}

/* Wide flight stage fills the app edges; controls live inside the scene. */
.game-view .screen{padding:var(--safe-top) 16px calc(112px + var(--safe-bottom))}
.game-view .mini-app{border:0;border-radius:0}
.game-view .space-game{height:auto;aspect-ratio:1.4;margin:0 -16px 8px;border:0;border-radius:0;box-shadow:none;background:#060606}
.stage-controls{top:16px;left:16px;right:16px;gap:12px}
.stage-controls-left{display:flex;align-items:center;gap:8px}
.stage-controls .online-pill{height:30px}
.stage-controls .game-settings{width:30px;height:30px}
.stage-controls .game-wallet{height:32px;gap:5px;flex-shrink:0}
.orbit-ring,.orbit-glow{top:51%}
.orbit-ring{width:220px;height:112px}
.orbit-ring.two{width:175px;height:175px}
.orbit-glow{width:175px;height:175px}
.game-view .game-rocket{width:148px;height:132px;top:calc(51% - 66px)}
.game-view .game-explosion{width:180px;height:180px;top:calc(51% - 90px)}
.game-view .game-countdown{top:calc(50% - 32px);font-size:58px;line-height:1.1}
.game-view .crashed-label{top:calc(51% - 32px);gap:6px}
.game-view .crashed-label strong{font-size:38px}
.game-view .crashed-label span{font-size:10px}
.game-view .stage-caption{top:58px;bottom:auto;font-size:8px;line-height:1.2;letter-spacing:1.6px}
.game-view .coefficient-current-wrap{bottom:15px;gap:4px}
.game-view .coefficient-current-wrap>span{font-size:8px;letter-spacing:1.2px}
.game-view .coefficient-current-wrap .current-coefficient{font-size:24px;line-height:1.1}
.game-view .coefficient-current-wrap .current-coefficient.waiting{font-size:11px}
@media(max-width:360px){.game-view .game-rocket{width:128px;height:114px;top:calc(51% - 57px)}.game-view .game-explosion{width:150px;height:150px;top:calc(51% - 75px)}.game-view .stage-caption{top:53px}.game-view .coefficient-current-wrap{bottom:12px}.stage-controls{left:12px;right:12px;top:12px}}
.mode-rocket{width:calc(100% + 16px);height:88px;margin:0 -8px;border-radius:20px}
.mode-art{width:100px;height:100px;left:0;right:auto;top:-6px}
.mode-copy{left:112px;right:16px;top:17px;bottom:auto}.mode-copy strong{font-size:20px;line-height:1.2}
.mode-copy>span{display:none}.mode-open{left:112px;bottom:17px;font-size:12px}
.next-round-button{width:100%;min-height:43px;border-radius:16px;border:1px solid #ffffff12;background:#191919;color:#b9dfff;font-size:12px;margin-bottom:17px}
.queued-bet{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;margin:0 0 17px;border-radius:17px;background:#111;border:1px solid #ffffff0c;color:#999;font-size:11px}
.queued-bet strong{display:block;color:#eee;font-size:13px;margin-top:5px;font-variant-numeric:tabular-nums}
.queued-bet button{background:#ef405a1a;color:#ff8291;border:1px solid #ef405a4d;border-radius:11px;padding:9px 12px;font-size:12px;font-weight:600}
.next-bet-note{font-size:12px;line-height:1.5;color:#999;margin:0 0 17px}
.history-heading{font-size:14px;font-weight:600;line-height:1.35;letter-spacing:-.15px;color:#e6e6e6;margin-bottom:11px}
.history-heading>span+span{font-size:12px;font-weight:500;color:#888}
.coefficient-strip{height:32px}
.coefficient-history{gap:8px;mask-image:none;-webkit-mask-image:none}
.past-coefficient{height:30px;min-width:50px;padding:0 10px;border-radius:9px;font-size:13px;font-weight:600;line-height:1;letter-spacing:.1px;filter:none;backdrop-filter:none;-webkit-backdrop-filter:none;text-shadow:none}
.past-coefficient.blue{background:#102333;border-color:#34698d;color:#79c7ff}
.past-coefficient.purple{background:#251b34;border-color:#735493;color:#d4b0ff}
.past-coefficient.gold{background:#2d2714;border-color:#8b7539;color:#ffe382}
.past-coefficient.pink{background:#31192c;border-color:#914b80;color:#ffa6e4}
@media(max-width:360px){.mode-rocket{height:84px}.mode-art{width:92px;height:92px;top:-2px}.mode-copy{left:104px;top:15px}.mode-open{left:104px;bottom:15px}}

.gift-with-traits{position:relative;background-position:center;background-size:cover;border-radius:12px;overflow:hidden}
.bet-gift-option{padding:7px;background:#17191c;border:1px solid #ffffff10;border-radius:17px;display:flex;flex-direction:column;align-items:stretch;gap:7px;text-align:center}
.bet-gift-option.active{background:#12212b;border-color:#32b0ff;box-shadow:inset 0 0 0 1px #32b0ff26}
.bet-gift-option .gift-art{width:100%;height:auto;aspect-ratio:1;border-radius:11px;margin:0}
.gift-art.gift-with-traits>svg{position:absolute;inset:7%;width:86%!important;height:86%!important}
.bet-gift-name{display:block;color:#eee;font-size:12px;font-weight:600;line-height:16px;margin:0;overflow-wrap:anywhere}
.bet-gift-price{color:#c4e5ff;font-size:13px;font-weight:650;line-height:18px;margin-top:auto;padding:0 0 3px;white-space:normal;overflow-wrap:anywhere}
.bet-gift-option:disabled{opacity:.5}.participant-gift.gift-with-traits{border-radius:9px}
.inventory-item .gift-art.gift-with-traits{border-radius:12px;margin-bottom:6px}

.cancel-bet-button{color:#fff;background:#d63850;border:1px solid #f46578;box-shadow:inset 0 1px 0 #ffffff1a;font-weight:650}
.cancel-bet-button:hover:not(:disabled){background:#e3425b}
.cancel-bet-button:active:not(:disabled){background:#c72f46}
.profile-view .brand-button>span:last-child{display:none}
.profile-heading .avatar{width:96px;height:96px;font-size:40px;margin-bottom:16px}
.profile-heading h1{font-size:26px;font-weight:700;line-height:1.2;overflow-wrap:anywhere}

/* Claimed drops have a clear green outline and a restrained tinted surface. */
.bet-entry.won{padding:11px 10px;margin-bottom:10px;border:1px solid #31c78199;border-radius:18px;background:linear-gradient(110deg,#1a392b,#1b2e25);box-shadow:inset 0 1px 0 #ffffff05}
.bet-entry.won:last-child{border-bottom:1px solid #31c78199;margin-bottom:0}
.bet-entry.won .participant-value{padding:6px 7px;border-radius:11px;background:#35d48b12;color:#64e5ab;gap:4px}
.bet-entry.won .bet-multiplier{color:#64e5ab}
.bet-entry.won .won-tag{color:#76edb8;background:#31c7811a;border-color:#31c78122}
@media(max-width:360px){.bet-entry.won{padding:10px 8px;border-radius:16px}.bet-entry.won .participant-value{padding:5px;gap:2px}}

/* The canvas trail and rocket share a coefficient-based position. */
.game-view .game-rocket,.game-view .game-rocket.flying{left:0;top:0;animation:none;transform:translate3d(var(--flight-x,0px),var(--flight-y,0px),0) translate(-50%,-50%) rotate(calc(var(--flight-angle,24deg) + var(--skin-angle,0deg)));transition:opacity .28s;will-change:transform}
.game-view .game-explosion{left:50%;top:51%;transform:translate(-50%,-50%)}
.game-rocket{overflow:hidden;contain:paint}
.bet-entry.lost{padding:11px 10px;margin-bottom:10px;border:1px solid #ef5b6f99;border-radius:18px;background:linear-gradient(110deg,#381f25,#2c1e22);box-shadow:inset 0 1px 0 #ffffff04}
.bet-entry.lost:last-child{border-bottom:1px solid #ef5b6f99;margin-bottom:0}
.bet-entry.lost .participant-value{padding:6px 7px;border-radius:11px;background:#ef5b6f12;color:#ff7b8c;gap:4px}
.bet-entry.lost .bet-multiplier{color:#ff7b8c}
@media(max-width:360px){.bet-entry.lost{padding:10px 8px;border-radius:16px}.bet-entry.lost .participant-value{padding:5px;gap:2px}}

/* A single cruising rocket and the name underneath, without a loading meter. */
.splash{background:#000}
.splash:before{opacity:.022}
.splash-center{top:50%;display:flex;flex-direction:column;align-items:center;gap:16px}
.loading-rocket{width:190px;height:190px;margin:0;overflow:hidden;contain:paint;filter:drop-shadow(0 10px 22px #009aff16);transform:rotate(24deg);transition:none;animation:loading-cruise 2.8s ease-in-out infinite}
.splash-title{font-size:29px;font-weight:700;letter-spacing:-.8px;line-height:1.15;margin:0}
.splash-center #loading-status{font-size:12px;color:#999;line-height:1.5;margin:2px 20px 0}
.splash-center .retry-loading{margin:0;font-size:13px}
@keyframes loading-cruise{0%,100%{transform:translate3d(-3px,3px,0) rotate(24deg)}50%{transform:translate3d(3px,-4px,0) rotate(24deg)}}
.reduce-motion .loading-rocket{animation:none}

/* Let the page wallpaper emerge gradually beneath the flight field. */
.game-view .space-game{background:transparent}
.game-view .space-game:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,#060606 0%,#060606 calc(100% - 84px),#060606c4 calc(100% - 52px),#06060600 100%)}
.game-view .space-game:after{background:none}

/* theme.css */
:root[data-theme="light"]{color-scheme:light;--bg:#f4f6f8;--surface:#fff;--text:#182433;--secondary:#657487;--tertiary:#8391a1;--separator:#172d4614;--blue:#087ac7;--blue-light:#168adb}
html[data-theme="light"],.light-theme,.light-theme .mini-app,.light-theme.game-view .mini-app{background:#f4f6f8;color:#182433}
.light-theme .space-wallpaper:before{filter:none;mix-blend-mode:multiply;opacity:.04}
.light-theme .space-wallpaper:after{background:linear-gradient(180deg,#f4f6f8,transparent 24%,#f4f6f8cc 72%)}
.light-theme .glass{background:#ffffffeb;border-color:#dbe3eb;box-shadow:0 3px 18px #233d5910,inset 0 1px 0 #fff}
.light-theme .app-header .balance-pill,.light-theme .game-wallet{background:#fff;color:#182433;border:1px solid #d9e2eb}
.light-theme .tiny-plus,.light-theme .wallet-add{background:#e8eef4;color:#566c81}
.light-theme .app-header .icon-button{background:#e7edf3;color:#52677e}
.light-theme.game-view .space-game{background:transparent}
.light-theme.game-view .space-game:before{background:linear-gradient(180deg,#edf3f9 0%,#edf3f9 calc(100% - 84px),#edf3f9c4 calc(100% - 52px),#edf3f900 100%)}
.light-theme.game-view .space-game:after{background:none}
.light-theme .orbit-glow{background:radial-gradient(circle,#bdd7ee42,transparent 70%)}
.light-theme .orbit-ring,.light-theme .orbit-ring.two{border-color:#416c9414}
.light-theme .orbit-planet{background:radial-gradient(circle at 33% 84%,#b9d5ed3d,transparent 68%);border-color:#678ebd12}
.light-theme .stage-decor-star{background:#56769766;box-shadow:none}
.light-theme .online-pill{background:#e2f2eb;color:#29684f;border-color:#cde7dc}
.light-theme .online-pill.disconnected{background:#fff1dc;color:#986422}
.light-theme .game-settings{background:#ffffffd9;border-color:#d5e0eb}
.light-theme .game-settings .icon{stroke:#5c7085}
.light-theme .stage-caption,.light-theme .coefficient-current-wrap>span{color:#687f95}
.light-theme .game-countdown,.light-theme .coefficient-current-wrap .current-coefficient{color:#21354a;text-shadow:none}
.light-theme .coefficient-current-wrap .current-coefficient.waiting{color:#6a7e92}
.light-theme .coefficient-current-wrap .current-coefficient.crashed,.light-theme .crashed-label strong{color:#c82d49}
.light-theme .crashed-label{ text-shadow:none}
.light-theme .crashed-label span{color:#806474}
.light-theme .history-heading{color:#263b51}
.light-theme .history-heading>span+span{color:#738499}
.light-theme .past-coefficient.blue{background:#e6f3fd;border-color:#8dbfe5;color:#236b9f}
.light-theme .past-coefficient.purple{background:#f1eafb;border-color:#b8a0d6;color:#7951a4}
.light-theme .past-coefficient.gold{background:#fff4d6;border-color:#d9bd71;color:#876610}
.light-theme .past-coefficient.pink{background:#fce7f4;border-color:#dda4c7;color:#a64783}
.light-theme .primary-button,.light-theme .bet-button,.light-theme .wallet-actions button,.light-theme .wallet-sheet .primary-button{background:#087ac7;color:#fff;box-shadow:inset 0 1px 0 #ffffff26}
.light-theme .cashout-button{background:#178a59}
.light-theme .primary-button.cashout-receipt:disabled{background:#178a59;color:#fff;opacity:1;border-color:#299c6d}
.light-theme .cancel-bet-button{background:#d63850;color:#fff;border-color:#e85b70}
.light-theme .result-button{color:#65788a;background:#e8edf3;border-color:#d5dee8}
.light-theme .next-round-button,.light-theme .queued-bet{background:#fff;color:#697c8f;border-color:#d9e2eb}
.light-theme .queued-bet strong{color:#20384e}
.light-theme .queued-bet button{background:#fff0f3;color:#b72e48;border-color:#edb7c1}
.light-theme .bets-card,.light-theme .wallet-card,.light-theme .settings-group{background:#fff;border:1px solid #dce4ec;box-shadow:0 3px 18px #29455f06}
.light-theme .participants-title{color:#5c7188}
.light-theme .participants-title>span{color:#8292a4}
.light-theme .round-empty strong{color:#657b90}
.light-theme .round-empty p{color:#8393a4}
.light-theme .round-empty-icon{background:#edf3f9;color:#6e8ba5}
.light-theme .bet-entry{border-bottom-color:#e6ecf2}
.light-theme .participant-info>strong,.light-theme .participant-value{color:#21374f}
.light-theme .bet-multiplier{color:#687f95}
.light-theme .bet-entry.won,.light-theme .bet-entry.won:last-child{background:#e6f5ed;border-color:#7ec5a4}
.light-theme .bet-entry.won .participant-value{color:#176b45;background:#d5eedf}
.light-theme .bet-entry.won .bet-multiplier,.light-theme .bet-entry.won .won-tag{color:#1c774d}
.light-theme .bet-entry.won .won-tag{background:#d4eddf;border-color:#badcc9}
.light-theme .bet-entry.lost,.light-theme .bet-entry.lost:last-child{background:#fff0f2;border-color:#df9dab}
.light-theme .bet-entry.lost .participant-value{color:#b72c47;background:#f9dce2}
.light-theme .bet-entry.lost .bet-multiplier{color:#b72c47}
.light-theme .profile-heading h1,.light-theme .page-title,.light-theme .wallet-amount>[data-balance]{color:#182c41}
.light-theme .avatar,.light-theme .bet-avatar{color:#fff}
.light-theme .wallet-card .wallet-label,.light-theme .wallet-amount .wallet-unit{color:#6d8094}
.light-theme .wallet-connect-link,.light-theme .mode-open,.light-theme .nav-item.active{color:#087ac7}
.light-theme .group-label,.light-theme .page-subtitle,.light-theme .profile-footer,.light-theme .local-caption{color:#72869a}
.light-theme .setting-row+.setting-row:before{background:#e7edf3}
.light-theme .setting-icon:not(.blue):not(.purple):not(.green):not(.amber){background:#e9eff5;color:#6c839a}
.light-theme .setting-arrow{color:#8394a5}
.light-theme .switch{background:#dce4ed;border-color:#cfdae5;box-shadow:inset 0 1px 2px #334c6812}
.light-theme .switch[aria-checked=true]{background:#24a36a;border-color:#21975f}
.light-theme .switch:after{background:#fff;box-shadow:0 1px 3px #3c536333}
.light-theme .inventory-item{background:#fff;border-color:#dce4ec}
.light-theme .inventory-item>span:last-child{color:#3677a8}
.light-theme .mode-rocket{background:#fff;border-color:#dce4ec}
.light-theme .mode-rocket:before,.light-theme .mode-rocket:after{border-color:#3974a412}
.light-theme .mode-rocket:after{background:radial-gradient(circle at 33% 80%,#c5e2f829,transparent 70%)}
.light-theme .mode-copy>span{color:#71849a}
.light-theme .mode-copy strong{color:#20374d}
.light-theme .bottom-nav,.light-theme.game-view .bottom-nav{background:#fffffff0;border-color:#d7e1eb;box-shadow:0 5px 24px #233d591a,inset 0 1px 0 #fff}
.light-theme .nav-fade,.light-theme.game-view .nav-fade{background:linear-gradient(transparent,#f4f6f8f5 60%)}
.light-theme .nav-selection{background:#e8f3fc;border-color:#d3e7f7;box-shadow:inset 0 1px 0 #fff}
.light-theme .nav-item{color:#74869a}
.light-theme .sheet-backdrop{background:#233d5952}
.light-theme .bottom-sheet{background:#f8fafc;border-color:#dce5ef;box-shadow:0 -8px 40px #233d5926}
.light-theme .sheet-grabber{background:#b8c8d7}
.light-theme .sheet-close{background:#e7edf4;color:#63798e}
.light-theme .sheet-copy,.light-theme .sheet-gift-type,.light-theme .wallet-sheet .sheet-copy{color:#687e94}
.light-theme .next-bet-note,.light-theme .balance-note,.light-theme .wallet-sheet .balance-note,.light-theme .inventory-empty{color:#73869a}
.light-theme .segmented{background:#e7edf3;border-color:#dbe4ec}
.light-theme .segment{color:#63798d}
.light-theme .segment.active{background:#fff;color:#1e3b56;border-color:#d8e2eb;box-shadow:0 1px 5px #344f6a12}
.light-theme .bet-gift-option{background:#fff;border-color:#dce4ed}
.light-theme .bet-gift-option.active{background:#edf7ff;border-color:#1599ed;box-shadow:inset 0 0 0 1px #1599ed26}
.light-theme .bet-gift-name{color:#22374d}
.light-theme .bet-gift-price{color:#276b9e}
.light-theme .bet-amount-row,.light-theme .wallet-address,.light-theme .detail-info{background:#edf2f7;border-color:#dce5ed;color:#436680}
.light-theme .bet-amount-row input,.light-theme .wallet-action-amount input{color:#182c41}
.light-theme .bet-amount-label{color:#687f95}
.light-theme .about-copy{color:#6a7f93}
.light-theme .toast{background:#253b50ef;color:#fff;box-shadow:0 5px 20px #1c354d26}
.light-theme .splash{background:#f4f6f8}
.light-theme .splash:before{filter:none;opacity:.025}
.light-theme .splash-title{color:#182c41}
.light-theme .splash-title span{color:#087ac7}
.light-theme .splash-center #loading-status{color:#657c92}

/* blackjack.css */
.blackjack-view .app-header{display:none}
.blackjack-view .screen{padding:calc(22px + var(--safe-top)) 16px calc(114px + var(--safe-bottom));min-height:100dvh}
.blackjack-view{background:#081e18}
.blackjack-view .mini-app{background:radial-gradient(ellipse at 50% 15%,#164b3666,transparent 68%),#081e18}
.blackjack-view .space-wallpaper{opacity:0}
.blackjack-view .desktop-aura{background:radial-gradient(ellipse at 50% 32%,#155d3a24,transparent 55%)}
.blackjack-view .nav-fade{background:linear-gradient(transparent,#081e18ed 58%)}
.light-theme.blackjack-view{background:#f4f6f8}
.light-theme.blackjack-view .mini-app{background:#f4f6f8}
.light-theme.blackjack-view .desktop-aura{background:none}
.light-theme.blackjack-view .nav-fade{background:linear-gradient(transparent,#f4f6f8ed 58%)}
.blackjack-page{--bj-gold:#e0c897;--bj-card-width:72px;--bj-card-height:87px}
.bj-heading{display:flex;align-items:center;gap:11px;margin-bottom:14px}
.bj-heading .icon-button{width:36px;height:36px;font-size:21px;color:#d3bdc4}
.bj-heading h1{font-size:23px;letter-spacing:-.7px;margin:0 0 3px;font-weight:720}
.bj-heading>div>span{font-size:8px;letter-spacing:1.7px;color:#a88b94}
.bj-heading .bj-rules-button{margin-left:0;font-size:16px;color:#b49ba4}
.bj-bankroll{display:flex;align-items:center;justify-content:space-between;padding:0 6px;margin-bottom:12px}
.bj-eyebrow{display:block;font-size:8px;letter-spacing:1.6px;color:#b29ba4;font-weight:600}
.bj-bankroll strong{display:flex;align-items:center;gap:5px;margin-top:5px;font-size:24px;letter-spacing:-.8px;font-variant-numeric:tabular-nums}
.bj-bankroll strong small{font-size:9px;color:#a18b94;font-weight:500;letter-spacing:.3px;align-self:end;margin:0 0 4px 2px}
.bj-bankroll .bj-gram-icon{display:inline-block;width:21px;height:21px;flex:0 0 21px;line-height:0;letter-spacing:0}
.bj-bankroll .bj-gram-icon svg{display:block;width:100%;height:100%}
.bj-current-stake .bj-gram-icon{width:19px;height:19px;flex-basis:19px}
.bj-current-stake{text-align:right}.bj-current-stake strong{justify-content:end;font-size:21px;color:var(--bj-gold)}
.bj-table{position:relative;isolation:isolate;overflow:hidden;height:420px;padding:18px 14px;display:grid;grid-template-rows:minmax(0,1fr) 70px minmax(0,1fr) 54px;gap:0;border-radius:42px;border:1px solid #c8a57991;background:radial-gradient(ellipse at 50% 12%,#b13f5652,transparent 72%),radial-gradient(ellipse at 50% 100%,#9a30442a,transparent 65%),repeating-linear-gradient(52deg,#ffffff02 0 1px,transparent 1px 4px),#4a1221;box-shadow:0 0 0 4px #221117,0 0 0 5px #b69f5a46,inset 0 0 0 6px #230d16b0,inset 0 0 0 7px #d9c48c59,0 16px 40px #0004}
.bj-felt-ring{position:absolute;inset:14px;border:1px solid #e0b99025;border-radius:30px;pointer-events:none}
.bj-felt-ring:after{content:"";position:absolute;inset:6px;border:1px dashed #d9a99a20;border-radius:24px}
.bj-table:before,.bj-table:after{content:'✦';position:absolute;top:calc(50% - 9px);font-size:13px;color:#d2b48d70;z-index:1}
.bj-table:before{left:23px}.bj-table:after{right:23px}
.bj-hand{position:relative;inset:auto;min-width:0;z-index:2;display:grid;gap:5px;align-content:center}
.bj-hand.dealer{grid-row:1;grid-template-rows:20px 106px}
.bj-hand.player{grid-row:3;grid-template-rows:106px 20px}
.bj-hand-label{height:20px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:8px;line-height:1;color:#ead1bf;letter-spacing:1.3px;font-weight:650}
.bj-score{min-width:25px;padding:2px 7px;border-radius:7px;background:#310c18;border:1px solid #e2b7ae48;font-size:12px;font-variant-numeric:tabular-nums;line-height:16px;letter-spacing:0;color:#fff0e0}
.bj-score.bust{color:#ffbfc9;border-color:#ff8e9e66;background:#6b263a7d}.bj-doubled{font-size:11px;color:#e6cd91;letter-spacing:0}
.bj-cards{height:106px;position:relative;margin:0;width:100%;perspective:900px}
.bj-card,.bj-card-slot{position:absolute;left:calc(50% - var(--bj-card-width)/2);top:2px;width:var(--bj-card-width);height:var(--bj-card-height);transform:translateX(var(--card-x)) rotate(var(--card-r));transform-origin:50% 50%;perspective:700px}
.bj-card-turn{position:relative;width:100%;height:100%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transform-origin:50% 50%}
.bj-card-turn.is-hidden{transform:rotateY(180deg)}
.bj-card-front,.bj-card-back{position:absolute;inset:0;border-radius:7px;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.bj-card-front{background:linear-gradient(120deg,#fffef7,#f1eddf);border:1px solid #e5dec9;color:#20262e;box-shadow:0 2px 0 #b4a99d,0 6px 12px #21020b59;transform:rotateY(0deg)}
.bj-card-front.red{color:#c33a4c}
.bj-card-face{display:block;width:100%;height:100%;fill:currentColor;overflow:hidden}
.bj-face-rank{font-family:Georgia,'Times New Roman',serif;font-size:14px;font-weight:700;letter-spacing:-.6px}
.bj-face-frame{fill:none;stroke:currentColor;stroke-width:.6;opacity:.2}
.bj-face-court{font-family:Georgia,'Times New Roman',serif;font-size:29px;font-weight:700;text-anchor:middle}
.bj-card-back{transform:rotateY(180deg);background:repeating-linear-gradient(45deg,transparent 0 9px,#e0c58d26 9px 10px),repeating-linear-gradient(-45deg,transparent 0 9px,#e0c58d26 9px 10px),#4a1829;border:4px solid #e2d5b1;box-shadow:inset 0 0 0 1px #c3a778,0 2px 0 #a18b77,0 6px 12px #21020b59}
.bj-back-emblem{position:absolute;inset:22px 12px;border-radius:50%;border:1px solid #d5c6878c;background:#4a1829;display:grid;place-items:center;color:#ead5a3;font-size:29px;line-height:1;box-shadow:0 0 0 4px #4a182980}
.bj-table-brand{position:relative;inset:auto;grid-row:2;align-self:stretch;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;text-align:center;pointer-events:none;z-index:3;min-width:0}
.bj-table-brand>strong{font-family:Georgia,serif;font-size:18px;line-height:22px;letter-spacing:3px;color:#e3c59a9e}
.bj-table-brand>span{font-size:7px;line-height:12px;letter-spacing:1.3px;color:#dfbba486}
.bj-result-badge{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;max-width:calc(100% - 50px);padding:7px 17px;border-radius:13px;background:#32111ddb;border:1px solid #e4ba9c33;box-shadow:0 3px 12px #24081033}
.bj-result-badge .bj-outcome{font-family:inherit;font-size:18px;line-height:22px;font-weight:720;letter-spacing:-.3px;color:#f4dcae}
.bj-result-badge>span{font-size:10px;line-height:13px;letter-spacing:.1px;color:#ebd6ca;font-variant-numeric:tabular-nums}
.bj-result-badge.win{background:#123d30ed;border-color:#7ae3b24d}.bj-result-badge.win .bj-outcome{color:#8af0c0}
.bj-result-badge.loss{background:#350c19ed;border-color:#ef889d44}.bj-result-badge.loss .bj-outcome{color:#ffb8c5}
.bj-status{display:flex;align-items:center;gap:7px;min-height:34px;font-size:11px;line-height:1.45;color:#b4a3aa;padding:5px 4px;margin:6px 0 4px}
.bj-status:before{content:'';flex:none;width:5px;height:5px;border-radius:50%;background:#ca8e9f;box-shadow:0 0 8px #cb719366}
.bj-bet-panel{padding:12px;background:linear-gradient(140deg,#241b20eb,#181216f5);border:1px solid #b0899926;border-radius:23px;box-shadow:inset 0 1px 0 #ffffff07}
.bj-bet-top{display:flex;align-items:center;justify-content:space-between}.bj-amount-field{display:flex;align-items:center;gap:5px}
.bj-amount-field input{background:transparent;border:0;border-bottom:1px solid #b49da93b;border-radius:0;width:75px;text-align:right;font-size:17px;font-weight:650;color:#e8d7a7;padding:3px 0 5px;outline-offset:4px;font-variant-numeric:tabular-nums}
.bj-amount-field>span{font-size:8px;color:#aa95a0;letter-spacing:.5px}
.bj-chips{display:flex;justify-content:space-around;align-items:center;gap:15px;padding:8px 4px 10px}
.bj-chip{--chip-color:#b4c3cf;position:relative;flex:none;width:43px;height:43px;border-radius:50%;padding:5px;background:conic-gradient(var(--chip-color) 0 8deg,#eef4ef 8deg 20deg,var(--chip-color) 20deg 68deg,#eef4ef 68deg 80deg,var(--chip-color) 80deg 128deg,#eef4ef 128deg 140deg,var(--chip-color) 140deg 188deg,#eef4ef 188deg 200deg,var(--chip-color) 200deg 248deg,#eef4ef 248deg 260deg,var(--chip-color) 260deg 308deg,#eef4ef 308deg 320deg,var(--chip-color) 320deg);box-shadow:0 3px 0 color-mix(in srgb,var(--chip-color),#000 50%),0 6px 12px #0005;border:1px solid #fff5;transition:transform .18s,box-shadow .18s}
.bj-chip span{height:100%;display:grid;place-items:center;border:1px dashed #ffffff8c;border-radius:50%;background:var(--chip-color);box-shadow:inset 0 0 8px #0003;color:#fff;text-shadow:0 1px 2px #0005;font-size:13px;font-weight:750}
.bj-chip.chip-0 span{color:#243b4a;text-shadow:none}.bj-chip.chip-1{--chip-color:#8761c8}.bj-chip.chip-2{--chip-color:#2a9a7a}.bj-chip.chip-3{--chip-color:#2a96d6}
.bj-chip.selected{transform:translateY(-3px);outline:1px solid #e1d19c;outline-offset:5px;box-shadow:0 3px 0 #173747,0 0 24px #e6d08926}
.bj-deal{height:49px;min-height:49px;border-radius:15px;display:flex;align-items:center;justify-content:center;padding:0 17px;font-size:13px;gap:6px;background:linear-gradient(120deg,#00a5ff,#008ce9);box-shadow:0 6px 20px #009aff12,inset 0 1px 0 #ffffff35}
.bj-deal:before{display:none}
.bj-play-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.bj-action{min-width:0;min-height:64px;padding:7px 2px;border-radius:15px;background:linear-gradient(145deg,#482331,#2e1922);color:#eed8e0;border:1px solid #c9a4b52b;font-size:10.5px;font-weight:650;white-space:nowrap;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;box-shadow:inset 0 1px 0 #ffffff06}
.bj-action>span{font-size:23px;line-height:25px;font-weight:450}.bj-action.bj-hit{color:#fff;background:linear-gradient(130deg,#00a4ff,#0088e6);border-color:#36b8ff55}.bj-action.bj-double>span{color:#e1ce9a}
.bj-action:disabled,.bj-chip:disabled{opacity:.4;cursor:default}
.bj-action.bj-split-button{background:linear-gradient(140deg,#1b5b60,#153e49);border-color:#69d4c66b;color:#b7f4e7;box-shadow:inset 0 1px 0 #a7f1e318,0 4px 14px #16787715}
.bj-action.bj-split-button>span{color:#87e6d4;font-family:Georgia,serif;font-size:24px}
.bj-action.bj-split-button:disabled{background:#182933;border-color:#7b9caa40;color:#9fafb9;opacity:.85;box-shadow:inset 0 1px 0 #ffffff05}
.bj-action.bj-split-button:disabled>span{color:#9fafb9}
.bj-action-hint{text-align:center;color:#a08a96;font-size:9px;line-height:1.5;margin:11px 0 0}.bj-test-note{color:#8a747f;font-size:9px;text-align:center;margin:14px 0 0}
.bj-rules-copy{font-size:13px;line-height:1.75;color:var(--secondary);margin:18px 0 24px}.bj-rules-copy p{margin:0 0 12px}.bj-rules-copy strong{color:var(--text)}
.mode-blackjack{position:relative;width:calc(100% + 16px);margin:15px -8px 0;height:88px;min-height:88px;border-radius:20px;text-align:left;overflow:hidden;border:1px solid #ca7d9733;background:radial-gradient(ellipse at 10% 50%,#9b3a5659,transparent 70%),#30121e;box-shadow:inset 0 1px 0 #e6bdce14}
.mode-blackjack .mode-copy{left:112px;top:17px;z-index:2}.mode-blackjack .mode-copy strong{font-size:20px;color:#f6e9ee}.mode-blackjack .mode-copy>span{display:none}
.mode-blackjack .mode-open{left:112px;bottom:17px;z-index:2;color:#e6a8bf;font-size:11px}.mode-blackjack .mode-open>span{font-size:20px;margin-left:8px;line-height:10px}
.bj-banner-cards{position:absolute;left:28px;top:17px;width:63px;height:60px;transform:rotate(-12deg)}
.bj-banner-cards>span{position:absolute;left:0;top:0;width:36px;height:51px;border-radius:5px;background:linear-gradient(120deg,#fffef4,#dfdbc5);border:1px solid #fff9;box-shadow:0 3px 5px #0005;color:#20262e;padding:5px 4px;font-family:Georgia,serif;font-size:18px;font-weight:bold;line-height:17px}
.bj-banner-cards small{display:block;font-size:19px}.bj-banner-cards>span+span{left:25px;top:5px;transform:rotate(23deg);color:#c44e50}.bj-banner-suit{position:absolute;right:13px;top:-19px;font-size:113px;color:#e7c0ce0b;transform:rotate(16deg)}
@keyframes bj-deal{0%{opacity:0;transform:translate(var(--deal-x,110px),var(--deal-y,-65px)) rotate(12deg) scale(var(--deal-scale,.48))}12%{opacity:1}85%{transform:translate(var(--card-x),2px) rotate(calc(var(--card-r) - 1deg)) scale(1.015)}100%{opacity:1;transform:translateX(var(--card-x)) rotate(var(--card-r))}}
/* One unambiguous half-turn. Avoid scale/translate at the 90deg edge: WebKit
   can otherwise composite the two faces as a second, stuttering rotation. */
@keyframes bj-reveal{0%{transform:rotateY(-179.9deg)}49.9%{transform:rotateY(-90.1deg)}50.1%{transform:rotateY(-89.9deg)}100%{transform:rotateY(0deg)}}
@keyframes bj-shift{from{transform:translateX(var(--old-x)) rotate(var(--old-r))}to{transform:translateX(var(--card-x)) rotate(var(--card-r))}}
@keyframes bj-after{from{opacity:0;visibility:hidden}to{opacity:1;visibility:visible}}
@keyframes bj-chips-in{0%{opacity:0;transform:translate(15px,90px) rotate(15deg)}75%{opacity:1;transform:translate(0,-3px) rotate(-3deg)}100%{opacity:1;transform:none}}
.player .bj-card{--deal-y:-230px}
.bj-card-deal{animation:bj-deal .5s cubic-bezier(.22,.7,.25,1) both;animation-delay:var(--deal-delay)}
.bj-card-reveal{isolation:isolate;will-change:transform;animation:bj-reveal .52s cubic-bezier(.32,.74,.24,1) both;animation-delay:var(--flip-delay)}
.bj-card-reveal :is(.bj-card-front,.bj-card-back){-webkit-backface-visibility:hidden;backface-visibility:hidden}
.bj-card-shift{animation:bj-shift .45s ease both}
.bj-after-deal{animation:bj-after .2s ease both;animation-delay:var(--sequence-duration)}
.bj-table-stake{grid-row:4;display:flex;align-items:center;justify-content:center;gap:12px;padding-top:7px;position:relative;z-index:4;pointer-events:none}
.bj-stacks{display:flex;gap:7px;align-items:center;min-height:39px}
.bj-chip-stack{position:relative;width:36px;height:28px;filter:drop-shadow(0 5px 3px #19030970)}
.bj-table-chip{position:absolute;left:0;bottom:calc(var(--chip-level)*2.5px);width:36px;height:36px;padding:4px;transform:rotateX(36deg) rotate(-12deg);box-shadow:0 2px 0 color-mix(in srgb,var(--chip-color),#000 55%),0 3px 0 #ffffff30;}
.bj-table-chip span{font-size:10px}.bj-table-chip.chip-0 span{color:#243b4a}
.bj-stack-enter{animation:bj-chips-in .36s cubic-bezier(.2,.75,.25,1) both;animation-delay:var(--stack-delay)}
.bj-chip-caption{color:#ead6af;font-size:12px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:.3px}
.bj-chip-caption small{display:block;font-size:6px;letter-spacing:1.3px;opacity:.65;margin-top:2px}
.bj-bet-spot{width:39px;height:25px;border-radius:50%;border:1px dashed #e0b99036;transform:rotate(-12deg)}
.reduce-motion .bj-card,.reduce-motion .bj-card-turn,.reduce-motion .bj-chip,.reduce-motion .bj-chip-stack,.reduce-motion .bj-after-deal{animation:none;transition:none}
@media(prefers-reduced-motion:reduce){.bj-card,.bj-card-turn,.bj-chip,.bj-chip-stack,.bj-after-deal{animation:none;transition:none}}
.light-theme .bj-heading h1{color:#422c35}.light-theme .bj-heading .icon-button{color:#805b6b}.light-theme .bj-heading>div>span,.light-theme .bj-eyebrow{color:#967584}
.light-theme .bj-bankroll strong{color:#422c35}.light-theme .bj-current-stake strong{color:#987a35}.light-theme .bj-bankroll strong small,.light-theme .bj-status,.light-theme .bj-test-note,.light-theme .bj-action-hint{color:#8d7180}
.light-theme .bj-bet-panel{background:linear-gradient(130deg,#fff,#faf3f6);border-color:#e4d3db;box-shadow:0 4px 16px #68394e09}.light-theme .bj-amount-field input{color:#694654;border-bottom-color:#dac4ce}.light-theme .bj-amount-field>span{color:#967d8b}
.light-theme .bj-action{background:#f4e8ed;color:#78495d;border-color:#dfc9d3}.light-theme .bj-action.bj-hit{background:linear-gradient(130deg,#168adb,#087ac7);color:#fff}.light-theme .bj-action.bj-double>span{color:#987a35}
.light-theme .bj-action.bj-split-button{background:linear-gradient(140deg,#d8f1ec,#e0f0f6);border-color:#94d3c7;color:#236e64;box-shadow:inset 0 1px 0 #ffffffb3,0 3px 10px #236d6410}
.light-theme .bj-action.bj-split-button>span{color:#248d80}
.light-theme .bj-action.bj-split-button:disabled{background:#edf1f4;border-color:#cfdae0;color:#81939f;opacity:1;box-shadow:inset 0 1px 0 #ffffff66}
.light-theme .bj-action.bj-split-button:disabled>span{color:#81939f}
.light-theme .mode-blackjack{background:radial-gradient(ellipse at 10% 50%,#ae47632b,transparent 70%),#f6e8ee;border-color:#dfbecb}.light-theme .mode-blackjack .mode-copy strong{color:#653747}.light-theme .mode-blackjack .mode-open{color:#a14b6a}.light-theme .bj-banner-suit{color:#6c344b0b}
@media(max-width:360px){.blackjack-view .screen{padding-left:13px;padding-right:13px;padding-top:calc(18px + var(--safe-top))}.blackjack-page{--bj-card-width:66px;--bj-card-height:80px}.bj-heading{margin-bottom:10px}.bj-heading h1{font-size:21px}.bj-bankroll{margin-bottom:9px}.bj-bankroll strong{font-size:22px}.bj-table{height:408px;padding-top:17px;padding-bottom:17px;border-radius:35px;grid-template-rows:minmax(0,1fr) 72px minmax(0,1fr) 54px}.bj-hand.dealer{grid-template-rows:20px 98px}.bj-hand.player{grid-template-rows:98px 20px}.bj-cards{height:98px}.bj-chips{gap:12px}.bj-status{font-size:10px}.mode-blackjack{height:84px;min-height:84px}.mode-blackjack .mode-copy,.mode-blackjack .mode-open{left:104px}.bj-banner-cards{left:24px;top:15px}}

.bj-resolving{height:96px;display:grid;place-items:center;color:#b4a3aa;font-size:12px}.light-theme .bj-resolving{color:#8d7180}

/* Table atmosphere and feedback share the card presentation timeline. */
.bj-heading .bj-sound-button{margin-left:auto;width:32px;height:32px;flex:none}
.bj-sound-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.bj-sound-button[aria-pressed=true]{color:#e8d5a7;border-color:#d9bb685e;background:#d5b35a12}
.bj-sound-button[aria-pressed=true] .bj-muted-mark{display:none}
.bj-table-light{position:absolute;inset:-25%;background:radial-gradient(ellipse at 45% 40%,#ffe6be15,transparent 55%);pointer-events:none;animation:bj-light-drift 12s ease-in-out infinite alternate;z-index:0}
.bj-felt-ring{box-shadow:0 -1px 0 #ffe8a515,inset 0 1px 10px #e7cb7309}
.bj-felt-ring:before{content:'';position:absolute;inset:-8px;border-radius:inherit;border-top:1px solid #ffeab36b;mask-image:linear-gradient(110deg,transparent 10%,#000 35%,transparent 65%);animation:bj-rim 9s ease-in-out infinite;opacity:.45}
.bj-deck{position:absolute;top:12px;right:18px;width:30px;height:42px;transform:rotate(12deg);z-index:1;pointer-events:none;filter:drop-shadow(2px 4px 3px #17010877)}
.bj-deck i{position:absolute;inset:0;display:grid;place-items:center;border:2px solid #d8c7a8;border-radius:4px;background:repeating-linear-gradient(45deg,transparent 0 5px,#d6b86c25 5px 6px),repeating-linear-gradient(-45deg,transparent 0 5px,#d6b86c25 5px 6px),#4a1829}
.bj-deck i:nth-child(1){transform:translate(3px,4px);border-bottom-width:4px}.bj-deck i:nth-child(2){transform:translate(1.5px,2px)}
.bj-deck span{font-family:Georgia,serif;font-size:16px;font-weight:bold;color:#e3cea1;border:1px solid #d8bb754d;border-radius:50%;width:19px;height:25px;display:grid;place-items:center;font-style:normal}
.bj-card-front:after{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,#ffffff60,transparent 40%,#907a4510);pointer-events:none}
.bj-hand:before{content:'';position:absolute;inset:-5px 15%;border-radius:50%;background:radial-gradient(ellipse,#f6dc9820,transparent 70%);opacity:0;transition:opacity .35s;pointer-events:none;z-index:-1}
.bj-table[data-turn=player] .player:before,.bj-table[data-turn=dealer] .dealer:before{opacity:1;animation:bj-turn-breathe 3s ease-in-out infinite}
.bj-table[data-turn=player] .player .bj-score,.bj-table[data-turn=dealer] .dealer .bj-score{border-color:#e9d095aa;box-shadow:0 0 13px #edc66322}
.bj-turn-hint{font-style:normal;font-size:9px;color:#e5cfac;letter-spacing:.4px;line-height:12px;margin-top:1px}
.bj-result-glow{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;z-index:0;background:radial-gradient(ellipse at 50% 50%,#f4ce6150,transparent 67%);box-shadow:inset 0 0 40px #f8da7750}
.bj-table[data-result=win] .bj-result-glow,.bj-table[data-result=blackjack] .bj-result-glow{animation:bj-victory-glow 1.65s ease-out both}
.bj-table[data-result=bust] .player .bj-score{animation:bj-bust-pulse .8s ease-out both}
.bj-twenty-one{display:inline-grid;place-items:center;vertical-align:middle;margin-right:7px;width:27px;height:27px;border-radius:50%;background:linear-gradient(145deg,#f5e2a7,#b78c3f);color:#3a2510;font-size:17px;font-family:Georgia,serif;box-shadow:0 0 15px #f4d77755}
.bj-table[data-result=blackjack] .bj-twenty-one{animation:bj-twenty-one .7s cubic-bezier(.16,.8,.28,1) both}
.bj-win-counter{font:inherit;font-variant-numeric:tabular-nums}
.bj-reward-stack{animation:bj-reward-in .45s cubic-bezier(.2,.75,.25,1) both;animation-delay:var(--result-delay)}
.bj-table-stake.is-settled:not(.bj-settle-chips) .bj-stacks{opacity:0}
.bj-settle-chips .bj-stacks{animation:bj-chips-player .8s cubic-bezier(.5,0,.6,1) forwards;animation-delay:calc(var(--result-delay) + 600ms)}
.bj-settle-chips.chips-lost .bj-stacks{animation-name:bj-chips-dealer}
.bj-table[data-result] .bj-chip-caption{animation:bj-caption .4s ease both}
@keyframes bj-light-drift{from{transform:translate(-4%,-2%);opacity:.45}to{transform:translate(6%,4%);opacity:.95}}
@keyframes bj-rim{0%,100%{opacity:.25}50%{opacity:.75}}
@keyframes bj-turn-breathe{0%,100%{opacity:.5}50%{opacity:1}}
@keyframes bj-victory-glow{0%{opacity:0}22%{opacity:.75}100%{opacity:0}}
@keyframes bj-bust-pulse{0%,100%{box-shadow:0 0 0 0 #ff576000}30%{box-shadow:0 0 0 5px #ff57602a,0 0 22px #ff576070}}
@keyframes bj-twenty-one{from{opacity:0;transform:scale(.45) rotate(-24deg)}65%{opacity:1;transform:scale(1.12) rotate(4deg)}to{opacity:1;transform:scale(1)}}
@keyframes bj-reward-in{from{opacity:0;transform:translate(25px,-180px) scale(.8)}to{opacity:1;transform:none}}
@keyframes bj-chips-player{0%{opacity:1;transform:none}70%{opacity:1}100%{opacity:0;transform:translate(0,95px) scale(1.08)}}
@keyframes bj-chips-dealer{0%{opacity:1;transform:none}75%{opacity:.6}100%{opacity:0;transform:translate(30px,-280px) scale(.65)}}
@keyframes bj-caption{from{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:none}}
.bj-motion-finished .bj-card,.bj-motion-finished .bj-card-turn,.bj-motion-finished .bj-after-deal,.bj-motion-finished .bj-chip-stack,.bj-motion-finished .bj-stacks{animation:none!important}
.bj-motion-finished .is-settled .bj-stacks{opacity:0}
.reduce-motion .bj-table *,.reduce-motion .bj-table *:before,.reduce-motion .bj-table *:after{animation:none!important;transition:none!important}
.reduce-motion .is-settled .bj-stacks{opacity:0}
.app-hidden .bj-table *,.app-hidden .bj-table *:before{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.bj-table *,.bj-table *:before,.bj-table *:after{animation:none!important;transition:none!important}.is-settled .bj-stacks{opacity:0}}
@media(max-width:360px){.bj-heading{gap:8px}.bj-heading .bj-rules-button{width:30px;height:30px}.bj-heading>div>span{font-size:7px}.bj-deck{width:26px;height:36px;right:15px;top:12px}.bj-deck span{font-size:13px;width:17px;height:21px}}

.bj-chip-caption>b{font:inherit}

/* Printed betting arcs and card positions sit beneath the actual game pieces. */
.bj-table-markings{position:absolute;inset:0;width:100%;height:100%;color:#e7cd9147;z-index:0;pointer-events:none}.bj-table-markings g{vector-effect:non-scaling-stroke}

/* Each outline shares the exact card geometry, including fan repositioning. */
.bj-card-slot{pointer-events:none}
.bj-card-slot:before{content:"";position:absolute;inset:-4px;border:1px solid #e7cd9161;border-radius:10px;box-shadow:inset 0 0 0 1px #2e0b172b}
.bj-motion-finished .bj-card-slot{animation:none!important}
.bj-card-separate{animation:bj-separate var(--split-duration,900ms) cubic-bezier(.45,0,.55,1) both;z-index:8!important}
@keyframes bj-separate{0%{transform:translate(calc(var(--card-x) + var(--split-dx,0px)),var(--split-dy,0px)) rotate(var(--split-r,0deg)) scale(var(--split-scale,1))}48%{filter:drop-shadow(0 8px 7px #0005)}100%{transform:translateX(var(--card-x)) rotate(var(--card-r));filter:none}}
.bj-lane-chips{padding:5px 0 0;gap:5px;min-height:38px;grid-row:auto}
.bj-lane-chips .bj-chip-stack{width:27px;height:22px}.bj-lane-chips .bj-table-chip{width:27px;height:27px;padding:3px}.bj-lane-chips .bj-table-chip span{font-size:8px}
.bj-lane-chips .bj-stacks{min-height:27px;gap:3px}.bj-lane-chips .bj-chip-caption{font-size:10px;letter-spacing:0}.bj-lane-chips .bj-chip-caption small{font-size:5px;letter-spacing:.5px}
.bj-table:has(.bj-split-hands){grid-template-rows:minmax(0,1fr) 60px 181px;height:450px}
.bj-table:has(.bj-split-hands) .bj-table-markings ellipse{display:none}
.bj-table:has(.bj-split-hands) .bj-split-hand{padding-bottom:6px}
.bj-spectator .bj-table-stake{visibility:hidden}.bj-spectator .player .bj-score{display:none}
.bj-seats{display:flex;justify-content:space-between;gap:5px;padding:7px 2px 12px;min-height:103px}
.bj-seat{position:relative;display:flex;flex-direction:column;align-items:center;flex:1;min-width:0;background:none;border:0;padding:0;color:var(--text)}
.bj-seat:nth-child(2),.bj-seat:nth-child(4){transform:translateY(-5px)}.bj-seat:nth-child(3){transform:translateY(-9px)}
.bj-seat-avatar{position:relative;width:38px;height:38px;border-radius:50%;border:1px solid #b8cba640;background:linear-gradient(140deg,#4d6b62,#203c35);display:grid;place-items:center;font-size:17px;color:#e7d5b1;box-shadow:0 0 0 3px #172a24}
.bj-seat-avatar img{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit;object-fit:cover}.bj-seat-avatar>i{position:absolute;right:-3px;bottom:-1px;display:grid;place-items:center;width:14px;height:14px;border:2px solid #0c281f;background:#46bc95;border-radius:50%;font-size:8px;font-style:normal;color:#fff}
.bj-seat.is-mine .bj-seat-avatar{border-color:#56b7ef;box-shadow:0 0 0 3px #1b557660}.bj-seat.is-playing .bj-seat-avatar{animation:bj-seat-turn 2.5s ease-in-out infinite;border-color:#8bd2f9}
.bj-seat>b{font-size:9px;font-weight:550;width:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:center;margin-top:7px}.bj-seat>small{font-size:7px;color:#a2bcb1;margin-top:3px;white-space:nowrap}
.bj-seat.is-empty{opacity:.43}.bj-seat.is-empty .bj-seat-avatar{border-style:dashed;background:#ffffff03;box-shadow:none;color:#d8dfd8;font-size:19px}
.bj-seat-mini{font-size:9px;letter-spacing:-2px;color:#dfd6b8;height:10px;margin-top:1px}.bj-seat.is-ready .bj-seat-mini{color:#6fd5b4}
@keyframes bj-seat-turn{50%{box-shadow:0 0 0 3px #40baff38,0 0 18px #46bfff28}}
.bj-table-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 2px 14px;margin-top:0}
.bj-tables-button{display:flex;align-items:center;gap:7px;border:1px solid #a9c8bb2e;background:#ffffff06;border-radius:12px;color:#d6e3dd;min-height:35px;padding:0 11px;font-size:11px}.bj-tables-button>span:first-child{font-size:19px;color:#66b9e9}.bj-tables-button>span:last-child{opacity:.6}
.bj-table-clock{font-size:9px;color:#a3b7ae;display:flex;gap:6px;align-items:center;font-variant-numeric:tabular-nums}.bj-table-clock i{width:5px;height:5px;border-radius:50%;background:#58caa5}.bj-table-clock.is-urgent{color:#f0a4a0}.bj-table-clock.is-urgent i{background:#f58f8e}
.bj-table-ready{display:flex;align-items:center;justify-content:center;gap:12px;min-height:90px;padding:15px;border:1px solid #75b6ab2b;background:linear-gradient(120deg,#315f4919,#ffffff03);border-radius:20px;text-align:left}
.bj-ready-chip{display:grid;place-items:center;width:33px;height:33px;flex:none;border:1px solid #81b4a151;border-radius:50%;color:#84d5b4;font-size:18px}.bj-table-ready b{display:block;font-size:12px;color:var(--text)}.bj-table-ready small{display:block;font-size:10px;line-height:1.6;color:var(--secondary);margin-top:5px}
.bj-table-cancel{display:block;margin:8px auto 0;padding:10px;border:0;background:none;color:#ee879b;font-size:11px}
.bj-table-list{display:grid;gap:10px;margin:18px 0}.bj-table-option{display:flex;align-items:center;gap:12px;width:100%;padding:17px 12px;background:#ffffff04;color:var(--text);border:1px solid #aab8c029;border-radius:20px;text-align:left}.bj-table-option.is-current{border-color:#4fbcf77a;background:#139bff0a}.bj-table-option:disabled:not(.is-current){opacity:.5}
.bj-table-option>span:nth-child(2){flex:1}.bj-table-option b{display:block;font-size:13px}.bj-table-option small{font-size:9px;color:var(--secondary);display:block;margin-top:5px;line-height:1.5}.bj-table-option>strong{font-size:20px;font-weight:550;color:#82c9f1}.bj-table-option>strong small{display:inline;font-size:12px}
.bj-table-preview{position:relative;display:block;width:45px;height:40px;border:2px solid #bda46b70;background:radial-gradient(ellipse,#25876860,#103a2f);border-radius:18px 18px 11px 11px;box-shadow:0 0 0 3px #101f19}.bj-table-preview i{position:absolute;bottom:-5px;width:5px;height:5px;background:#85b4a4;border-radius:50%}.bj-table-preview i:nth-child(1){left:-4px;bottom:9px}.bj-table-preview i:nth-child(2){left:4px}.bj-table-preview i:nth-child(3){left:18px}.bj-table-preview i:nth-child(4){right:4px}.bj-table-preview i:nth-child(5){right:-4px;bottom:9px}
.light-theme .bj-seat{color:#354b48}.light-theme .bj-seat>small{color:#718780}.light-theme .bj-seat-avatar{box-shadow:0 0 0 3px #dde8e2}.light-theme .bj-seat.is-empty .bj-seat-avatar{color:#677d73;border-color:#7b9a8e;background:#e4ece8}
.light-theme .bj-tables-button{color:#477084;border-color:#ccdae1;background:#fff}.light-theme .bj-table-clock{color:#6a828c}.light-theme .bj-table-ready{background:#fff;border-color:#d4e3dc}.light-theme .bj-ready-chip{color:#2b9877}.light-theme .bj-table-option{background:#fff;border-color:#d3e2e3}.light-theme .bj-table-option.is-current{background:#eaf6ff;border-color:#8dc5e6}
.reduce-motion .bj-seat-avatar{animation:none}
@media(prefers-reduced-motion:reduce){.bj-seat-avatar{animation:none}}
@media(max-width:360px){.bj-seat-avatar{width:32px;height:32px}.bj-seat>b{font-size:8px}.bj-seat>small{font-size:6px}.bj-seats{min-height:94px}.bj-table-clock{font-size:8px}.bj-tables-button{font-size:10px}.bj-table:has(.bj-split-hands){height:442px;grid-template-rows:minmax(0,1fr) 58px 174px}}

/* Personal table finishes retain the same lighting and engraved geometry. */
[data-felt=ruby]{--felt:#4a1221;--felt-glow:#b13f5652;--felt-edge:#221117}
[data-felt=emerald]{--felt:#0c4539;--felt-glow:#43bc9650;--felt-edge:#08251f}
[data-felt=midnight]{--felt:#122e50;--felt-glow:#498ed550;--felt-edge:#0a192d}
[data-felt] .bj-table,.bj-design-preview,.bj-felt-swatch{background:radial-gradient(ellipse at 50% 12%,var(--felt-glow),transparent 72%),repeating-linear-gradient(52deg,#ffffff03 0 1px,transparent 1px 4px),var(--felt);}
[data-felt] .bj-table{box-shadow:0 0 0 4px var(--felt-edge),0 0 0 5px #b69f5a46,inset 0 0 0 6px #0005,inset 0 0 0 7px #d9c48c59,0 16px 40px #0004;transition:background-color .3s}
[data-back=classic]{--back-color:#4a1829;--back-pattern:repeating-linear-gradient(45deg,transparent 0 9px,#e0c58d26 9px 10px),repeating-linear-gradient(-45deg,transparent 0 9px,#e0c58d26 9px 10px)}
[data-back=orbit]{--back-color:#123e65;--back-pattern:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 9px,#8aceff40 10px 11px,transparent 12px 19px)}
[data-back=diamond]{--back-color:#233d37;--back-pattern:repeating-conic-gradient(from 45deg,#e1d5a319 0 25%,transparent 0 50%)}
[data-back] .bj-card-back,[data-back] .bj-deck i{background-image:var(--back-pattern);background-color:var(--back-color)}
[data-back=diamond] .bj-card-back,[data-back=diamond] .bj-deck i{background-size:18px 18px}
[data-back] .bj-back-emblem{background:var(--back-color);box-shadow:0 0 0 4px color-mix(in srgb,var(--back-color),transparent 30%)}
[data-back=orbit] .bj-back-emblem{font-size:0;border-radius:50%;inset:25% 18%;transform:rotate(-25deg)}
[data-back=orbit] .bj-back-emblem:after{content:'✦';font-size:28px;transform:rotate(25deg);color:#ade1ff}
[data-back=diamond] .bj-back-emblem{font-size:0;inset:26% 18%;border-radius:4px;transform:rotate(45deg)}
[data-back=diamond] .bj-back-emblem:after{content:'R';font:italic bold 23px Georgia;transform:rotate(-45deg)}
.bj-tools{display:flex;gap:8px;margin:0 0 19px}
.bj-tools button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;border:1px solid #c9b39225;background:#ffffff06;color:#b9c8c3;border-radius:13px;min-height:36px;font-size:11px;font-weight:550}
.bj-tools button>span{color:#dfc695;font-size:18px;line-height:1}
.bj-split-hands{grid-row:3;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:6px;align-self:center;min-width:0}
.bj-split-hand{--bj-card-width:58px;--bj-card-height:70px;position:relative;border:1px solid #ddc79d26;border-radius:15px;padding:5px 0;background:#0000000c;transition:border-color .52s cubic-bezier(.4,0,.2,1),background-color .52s cubic-bezier(.4,0,.2,1),box-shadow .52s cubic-bezier(.4,0,.2,1);box-shadow:0 0 0 #55d6f200,inset 0 0 0 #55d6f200}
.bj-split-hand.is-focused{border-color:#81dff1cf;background-color:#45c8f01b;box-shadow:0 0 22px #56d1f23d,inset 0 0 18px #45c8f014}
.bj-split-hand:before{content:'';position:absolute;inset:-2px;border-radius:16px;border:1px solid #acf1ff;opacity:0;pointer-events:none;transition:opacity .52s cubic-bezier(.4,0,.2,1);box-shadow:0 0 9px #66dfff3b}
.bj-split-hand.is-focused:before{opacity:.7}
.bj-split-heading{display:flex;align-items:center;justify-content:space-between;padding:0 7px 5px;font-size:7px;letter-spacing:.8px;color:#e0caac}
.bj-split-heading>span{font-size:9px;letter-spacing:0;font-variant-numeric:tabular-nums}.bj-split-heading small{font-size:5px;opacity:.65}
.bj-split-hand .bj-cards{height:88px}.bj-split-hand .bj-hand-label{gap:4px;font-size:7px;letter-spacing:0}
.bj-split-hand .bj-score{font-size:11px;padding:1px 5px;min-width:21px;line-height:15px}
.bj-split-hand .bj-lane-state{font-size:8px;max-width:76px;line-height:10px;transition:color .52s}.bj-split-hand.is-focused .bj-lane-state{color:#b6f2ff}
.bj-split-hand .bj-table-stake{transition:filter .52s}.bj-split-hand.is-focused .bj-table-stake{filter:drop-shadow(0 0 6px #69d9f27d)}
.bj-hand-result{display:grid;justify-items:center;gap:2px;width:102px;box-sizing:border-box;padding:5px 7px;border:1px solid #e4c89488;border-radius:11px;background:linear-gradient(145deg,#49382aee,#16282bed);color:#ffe2a6;box-shadow:0 4px 14px #0004,inset 0 0 0 2px #f8dd9a0b;text-align:center;font-variant-numeric:tabular-nums;line-height:1.15}
.bj-hand-result[hidden]{display:none}.bj-hand-result>small{font-size:8px;letter-spacing:.2px;opacity:.72}.bj-hand-result>strong{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:650;white-space:nowrap}.bj-hand-result i{font:600 11px sans-serif;font-style:normal;opacity:.85}.bj-hand-result>b{font-size:13px;letter-spacing:-.1px;white-space:nowrap}.bj-hand-result b>span{font-size:6px;letter-spacing:.3px;font-weight:550;opacity:.7}.bj-hand-result>em{font-size:7px;font-style:normal;opacity:.75}
.bj-hand-result[data-tone=loss]{color:#ffc0c9;border-color:#f394a66e;background:linear-gradient(145deg,#53202eee,#241d27ee);box-shadow:0 4px 14px #0004,inset 0 0 0 2px #e599ad0b}
.bj-hand-result[data-tone=win]{color:#ffe2a6;border-color:#e4c89488;background:linear-gradient(145deg,#49382aee,#16282bed);box-shadow:0 4px 14px #0004,inset 0 0 0 2px #f8dd9a0b}
.bj-hand-result[data-tone=push]{color:#beeaff;border-color:#84c9f18c;background:linear-gradient(145deg,#1d4d67ee,#152d3dee);box-shadow:0 4px 14px #0004,inset 0 0 0 2px #a9e0ff0b}
.bj-split-hand .bj-hand-result{position:relative;margin:3px auto 0;width:calc(100% - 12px);max-width:118px}.bj-split-hand.has-hand-result .bj-hand-label,.bj-split-hand.has-hand-result .bj-table-stake{display:none}
.bj-motion-finished .bj-split-hand,.bj-motion-finished .bj-split-hand:before,.bj-motion-finished .bj-split-hand .bj-lane-state,.bj-motion-finished .bj-split-hand .bj-table-stake,.reduce-motion .bj-split-hand,.reduce-motion .bj-split-hand:before,.reduce-motion .bj-split-hand .bj-lane-state,.reduce-motion .bj-split-hand .bj-table-stake{transition:none}
@media(prefers-reduced-motion:reduce){.bj-split-hand,.bj-split-hand:before,.bj-split-hand .bj-lane-state,.bj-split-hand .bj-table-stake{transition:none}}
.bj-table:has(.bj-split-hands){grid-template-rows:minmax(0,1fr) 60px 181px;height:450px}
.bj-split-action{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid #60bdff66;border-radius:16px;background:linear-gradient(110deg,#1384bd25,#0a669615);color:#93d7ff;min-height:58px;margin-top:9px;text-align:left}
.bj-split-action small{display:block;font-size:10px;margin-top:3px;opacity:.72}.bj-split-action b{font-size:12px}.bj-split-symbol{font-size:28px;font-family:Georgia;transform:rotate(-10deg)}
.bj-split-action:disabled{opacity:.4}
.bj-sheet-intro{font-size:12px;color:var(--secondary);line-height:1.6;margin:8px 0 18px}
.bj-design-preview{position:relative;overflow:hidden;height:148px;border-radius:25px;border:1px solid #c3a57488;box-shadow:inset 0 0 0 5px #0003;margin-bottom:22px}
.bj-preview-ring{position:absolute;inset:13px;border:1px solid #e2cc8c40;border-radius:17px}
.bj-preview-word{position:absolute;left:22px;top:62px;color:#e3cfa38c;font:14px Georgia;letter-spacing:2px}
.bj-preview-card.bj-card-back{inset:auto;right:30px;top:26px;width:63px;height:90px;transform:rotate(12deg);z-index:2}
.bj-preview-face{position:absolute;right:77px;top:31px;width:63px;height:90px;transform:rotate(-12deg);background:linear-gradient(120deg,#fffef7,#e9e4d5);border-radius:7px;padding:8px;color:#c33a4c;font:bold 22px Georgia;box-shadow:0 4px 8px #0004}.bj-preview-face>span{display:block;font-size:24px}
.bj-section-title{font-size:12px;font-weight:600;margin:18px 0 12px;letter-spacing:.1px}
.bj-design-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.bj-design-option{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;min-width:0;padding:6px 5px 10px;background:#ffffff04;border:1px solid #9fa6ab25;border-radius:16px;color:var(--secondary);transition:border-color .2s,background .2s}
.bj-design-option[aria-pressed=true]{border-color:#35adffb0;background:#24a9ff0d;color:var(--text)}
.bj-design-option>b{font-size:10px;font-weight:550}.bj-felt-swatch{display:grid;place-items:center;width:100%;height:54px;border-radius:10px;box-shadow:inset 0 0 0 4px #0003,inset 0 0 0 5px #dfc99c40;color:#fff}
.bj-felt-swatch i{font-style:normal;font-size:17px}.bj-back-swatch.bj-card-back{position:relative;inset:auto;width:45px;height:64px;transform:none;margin:4px 0;backface-visibility:visible;border-width:3px;border-radius:5px}
.bj-back-swatch .bj-back-emblem{inset:13px 6px;font-size:19px}.bj-choice-check{position:absolute;right:8px;top:7px;font-size:13px;font-style:normal;color:#38adf9}
.bj-design-option[data-back=orbit] .bj-back-emblem,.bj-design-option[data-back=diamond] .bj-back-emblem{font-size:0}
.bj-back-swatch .bj-back-emblem:after{font-size:18px}

/* The same cream paper and foil R seal used by the 3D card collection. */
.bj-card-front{background:linear-gradient(135deg,#fffdf6,#fbf6e9 52%,#eee5d1);border-color:#c8baa0;box-shadow:inset 0 0 0 2px #fffef980,inset 0 0 0 3px #bb9f7220,0 2px 0 #b4a99d,0 6px 12px #21020b59;color:#213239}
.bj-card-front.red{color:#bc3046}
.bj-face-rank{font-size:14.5px;letter-spacing:-.55px}
.bj-face-frame{stroke:#b89152;stroke-width:.9;opacity:.5}
[data-back=classic]{--back-color:#0e3a32;--back-pattern:repeating-linear-gradient(45deg,transparent 0 9px,#d6ba7b24 9px 10px),repeating-linear-gradient(-45deg,transparent 0 9px,#d6ba7b24 9px 10px)}
[data-back=diamond]{--back-color:#4e1d31;--back-pattern:repeating-conic-gradient(from 45deg,#e2bb8320 0 25%,transparent 0 50%)}
[data-back=orbit]{--back-color:#103553}
.bj-card-back{border-color:#eee5d1;box-shadow:inset 0 0 0 1px #d6ba7ba8,inset 0 0 0 4px #00000015,inset 0 0 0 5px #d6ba7b4d,0 2px 0 #a18b77,0 6px 12px #21020b59}
.bj-back-emblem,.bj-back-swatch .bj-back-emblem{font-size:0}
.bj-back-emblem:after{content:'R';font:italic 700 29px Georgia,'Times New Roman',serif;color:#ecd198;text-shadow:0 1px 1px #0008}
[data-back=orbit] .bj-back-emblem{transform:none}
[data-back=orbit] .bj-back-emblem:after{content:'R';font:italic 700 29px Georgia,'Times New Roman',serif;transform:none;color:#ede4bc}
[data-back=diamond] .bj-back-emblem:after{font-weight:700;color:#ecd198}
.bj-back-swatch .bj-back-emblem:after{font-size:18px}
.bj-design-note{font-size:10px;line-height:1.6;color:var(--secondary);text-align:center;margin:18px 0}
.bj-history-list{display:flex;flex-direction:column;gap:9px}.bj-history-row{width:100%;display:flex;align-items:center;gap:10px;padding:13px 11px;background:#ffffff05;border:1px solid #9fa6ab20;border-radius:17px;text-align:left;color:var(--text)}
.bj-history-symbol{display:grid;place-items:center;flex:none;width:35px;height:39px;border:1px solid currentColor;border-radius:10px;background:#ffffff05;font:18px Georgia;opacity:.85}
.bj-history-copy{flex:1;min-width:0}.bj-history-copy>b{display:block;font-size:12px;font-weight:600}.bj-history-copy>small{display:block;font-size:9px;color:var(--secondary);margin-top:5px;line-height:1.4}
.bj-history-net{text-align:right;flex:none;font-variant-numeric:tabular-nums}.bj-history-net>b{font-size:13px}.bj-history-net>small{display:block;font-size:7px;margin-top:4px;opacity:.6;letter-spacing:.8px}
:is(.bj-history-symbol,.bj-history-net,.bj-history-total).positive{color:#5bd7aa}:is(.bj-history-symbol,.bj-history-net,.bj-history-total).negative{color:#ed8a9b}:is(.bj-history-symbol,.bj-history-net,.bj-history-total).neutral{color:#b3bdc9}
.bj-history-empty{padding:30px 20px 38px;text-align:center}.bj-history-empty>span{display:block;font:42px Georgia;color:#b7a688;margin-bottom:16px}.bj-history-empty>b{font-size:16px}.bj-history-empty p{font-size:12px;line-height:1.7;color:var(--secondary)}
.bj-history-message{padding:18px;text-align:center;font-size:12px;color:var(--secondary)}
.bj-sheet-secondary{width:100%;min-height:43px;border:1px solid #4ab8ff44;border-radius:13px;background:#219aff0d;color:#48b6ff;margin-top:14px;font-size:12px}
.bj-history-back{background:none;border:0;color:#3dafff;padding:0;margin:0 0 16px;font-size:12px}
.bj-history-total{padding:16px 0 22px;font-size:32px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.7px}.bj-history-total>small{font-size:12px;letter-spacing:.5px}.bj-history-total>span{display:block;font-size:10px;font-weight:400;color:var(--secondary);letter-spacing:0;margin-top:5px}
.bj-detail-hand{border:1px solid #9fa6ab25;border-radius:18px;background:#ffffff04;padding:14px;margin:0 0 12px}
.bj-detail-hand header{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--secondary)}.bj-detail-hand header>b{background:#7d9aa520;border-radius:6px;padding:3px 6px;color:var(--text)}.bj-detail-hand header>span{margin-left:auto;font-size:10px}
.bj-mini-cards{display:flex;flex-wrap:wrap;gap:5px;margin-top:13px}.bj-mini-cards>span{display:grid;place-items:center;width:35px;height:48px;border:1px solid #d9d3c1;border-radius:5px;background:linear-gradient(130deg,#fffdf5,#eae6d8);color:#253132;font:bold 12px Georgia;box-shadow:0 2px 3px #0002}.bj-mini-cards>span.red{color:#c33a4c}
.bj-detail-hand footer{display:flex;justify-content:space-between;margin-top:14px;padding-top:10px;border-top:1px solid #9fa6ab20;font-size:9px;color:var(--secondary)}.bj-detail-hand footer b{display:block;margin-top:4px;font-size:13px;color:var(--text);font-weight:550}
.light-theme .bj-tools button{background:#fff9;border-color:#cbd5df;color:#587080}.light-theme .bj-tools button>span{color:#4691b5}
.light-theme .bj-split-action{background:#e8f5ff;color:#1d7fb4;border-color:#89caff}
.light-theme :is(.bj-history-symbol,.bj-history-net,.bj-history-total).positive{color:#228066}.light-theme :is(.bj-history-symbol,.bj-history-net,.bj-history-total).negative{color:#bc5065}.light-theme :is(.bj-history-symbol,.bj-history-net,.bj-history-total).neutral{color:#687c8b}
.light-theme .bj-history-row,.light-theme .bj-detail-hand,.light-theme .bj-design-option{background:#fff;border-color:#dce3e8}.light-theme .bj-design-option[aria-pressed=true]{background:#edf7ff;border-color:#5bb9f5}
@media(max-width:360px){.bj-split-hand{--bj-card-width:51px;--bj-card-height:62px}.bj-split-hand .bj-cards{height:80px}.bj-split-heading{font-size:6px;padding-left:5px;padding-right:5px}.bj-split-heading>span{font-size:8px}.bj-table:has(.bj-split-hands){height:442px;grid-template-rows:minmax(0,1fr) 58px 174px}.bj-split-hands{gap:5px}.bj-split-hand .bj-lane-state{font-size:7px}.bj-tools button{font-size:10px}.bj-history-row{gap:8px;padding:12px 9px}}
.bj-result-badge .bj-model-prize{display:flex;align-items:center;justify-content:center;gap:6px;max-width:260px;font-size:11px;line-height:1.3;white-space:normal}.bj-model-prize img{flex:none;object-fit:contain;width:40px;height:40px}
.bj-prize-card{display:flex;align-items:center;gap:9px;padding:10px 12px;margin:0 0 10px;background:#142a25;border:1px solid #51bda354;border-radius:16px}.bj-prize-card img{flex:none;object-fit:contain}.bj-prize-card>span{min-width:0;flex:1}.bj-prize-card strong{display:block;font-size:12px;overflow-wrap:anywhere}.bj-prize-card small{display:block;font-size:10px;color:#a1c6bd;margin-top:3px}.bj-prize-card>b{font-size:13px;flex:none;text-align:right;color:#72e0bd}.light-theme .bj-prize-card{background:#ecfaf5;color:#174c3c}

/* blackjack-hall.css */
.blackjack-view .mini-app{background:radial-gradient(ellipse at 50% 0,#19334475,transparent 65%),#0d171e}
.blackjack-view{background:#0d171e}.blackjack-view .nav-fade{background:linear-gradient(transparent,#0d171ef0 65%)}
.blackjack-view .screen{padding:calc(10px + var(--safe-top)) 16px calc(104px + var(--safe-bottom))}.bj-heading{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,34px);gap:8px;margin-bottom:10px}.bj-heading>div{min-width:0}.bj-heading h1{margin:0;font-size:22px;line-height:1.15}.bj-heading .icon-button,.bj-heading .bj-sound-button,.bj-heading .bj-rules-button{width:34px;height:34px;margin:0}.bj-heading .bj-history-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.bj-bankroll{padding:0 2px;margin-bottom:9px}.bj-bankroll strong{margin-top:4px;font-size:22px}.bj-bankroll .bj-eyebrow{font-size:7px;letter-spacing:1.2px}.bj-bankroll .bj-gram-icon{width:18px;height:18px;flex-basis:18px}.bj-bankroll strong small{font-size:8px}
.bj-stage{position:relative;margin:0 -12px;isolation:isolate;border-radius:20px;overflow:hidden;box-shadow:0 12px 32px #0004;background:#101a21}
.bj-hall-canvas,.bj-hall-labels{display:none}.bj-stage:not([data-renderer="fallback"]):not([data-renderer="flat"]){height:370px;border:1px solid #9dbac725}
.bj-stage:not([data-renderer="fallback"]):not([data-renderer="flat"]) .bj-table{position:absolute;inset:0;margin:0!important;width:100%;height:100%!important;opacity:0;visibility:hidden;pointer-events:none;overflow:hidden}
.bj-stage:not([data-renderer="fallback"]):not([data-renderer="flat"]) .bj-table *{animation:none!important;transition:none!important}
.bj-stage:not([data-renderer])::before,.bj-stage[data-renderer="loading"]::before,.bj-stage[data-renderer="recovering"]::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 44%,#1c3949,#101a21 72%)}
.bj-stage:not([data-renderer])::after,.bj-stage[data-renderer="loading"]::after,.bj-stage[data-renderer="recovering"]::after{content:"Готовим стол…";position:absolute;inset:0;display:grid;place-items:center;color:#b4c9d2;font-size:12px;letter-spacing:.6px}
/* Keep the live WebGL surface out of a large blurred CSS shadow. */
.bj-stage[data-renderer="3d"]{box-shadow:none}
.bj-stage[data-renderer="3d"] .bj-hall-canvas{display:block;position:absolute;inset:0;touch-action:pan-y}.bj-hall-canvas canvas{width:100%;height:100%;display:block}
.bj-stage[data-renderer="3d"] .bj-hall-labels{display:block;position:absolute;inset:0;pointer-events:none;overflow:hidden}
.bj-hall-caption{display:none!important}
.bj-world-label{position:absolute;left:0;top:0;display:block;font-size:11px;white-space:nowrap;color:#e9e6d6;background:#0c1b24d9;border:1px solid #b8c9d42b;border-radius:8px;padding:4px 7px;box-shadow:0 3px 9px #0003;font-weight:650;max-width:145px;overflow:hidden;text-overflow:ellipsis;backdrop-filter:none;-webkit-backdrop-filter:none}
.bj-world-label.is-active{color:#95e2ff;border-color:#5db8d47a}.bj-world-label.is-dealer{color:#f2dba8;font-size:11px;letter-spacing:.6px}.bj-world-label.is-cash{font-variant-numeric:tabular-nums;font-size:10px;color:#e8c987;padding:3px 5px}.bj-world-label.is-message{left:50%;top:auto;bottom:18px;transform:translateX(-50%);color:#e5edf2;background:#0c1b24cf;border:1px solid #b8c9d42b;border-radius:12px;padding:7px 13px;font-size:13px;box-shadow:none;max-width:calc(100% - 32px)}
.bj-world-label.is-lane,.bj-world-label.is-cash[data-active]{color:color-mix(in srgb,#c0ced3,#ecfbff calc(var(--bj-hand-focus,0)*100%));border-color:rgb(135 231 252 / calc(.14 + var(--bj-hand-focus,0)*.65));background-color:#0b1f29ed;background-image:linear-gradient(135deg,rgb(30 112 139 / calc(var(--bj-hand-focus,0)*.83)),transparent);box-shadow:0 0 16px rgb(74 210 245 / calc(var(--bj-hand-focus,0)*.3)),0 3px 9px #0003}
.bj-world-label.is-lane:before{content:'';display:inline-block;width:4px;height:4px;margin-right:4px;vertical-align:2px;border-radius:50%;background:#b5f3ff;box-shadow:0 0 7px #75e0ff;opacity:var(--bj-hand-focus,0)}
.bj-world-label.bj-hand-result{display:grid;padding:5px 7px;max-width:none;overflow:visible;white-space:normal;backdrop-filter:none;-webkit-backdrop-filter:none}
.bj-world-label.bj-hand-result[data-duo=true]{width:60px;padding:4px 3px;border-radius:8px;gap:2px}.bj-world-label.bj-hand-result[data-duo=true]>small{font-size:7px}.bj-world-label.bj-hand-result[data-duo=true]>strong{font-size:8px;gap:3px}.bj-world-label.bj-hand-result[data-duo=true] i{font-size:9px}.bj-world-label.bj-hand-result[data-duo=true]>b{font-size:10px}.bj-world-label.bj-hand-result[data-duo=true] b>span{font-size:5px}.bj-world-label.bj-hand-result[data-duo=true]>em{font-size:6px}
.bj-world-label.bj-hand-result[hidden],.bj-world-label.is-lane[hidden],.bj-world-label.is-split-cash[hidden]{display:none}
.bj-world-label.is-result{left:50%;top:auto;bottom:12px;transform:translateX(-50%);font-size:14px;background:#122731ed;padding:8px 13px;color:#bfe7f6;max-width:200px;border-color:#a8cde04d}.bj-world-label.is-result:empty{display:none}.bj-world-label[data-outcome="win"],.bj-world-label[data-outcome="blackjack"]{color:#edd09a}.bj-world-label[data-outcome="bust"],.bj-world-label[data-outcome="loss"]{color:#ffb3b9}
.bj-world-label.is-player-summary{left:12px;top:auto;bottom:12px;transform:none!important;padding:9px 10px;font-size:10px;background:#0b1c24c9;border-color:#a8cde02b;color:#ccdde2;box-shadow:0 4px 16px #0002;max-width:130px}
.bj-world-label.is-result{left:auto;right:12px;bottom:12px;transform:none;display:flex;align-items:center;gap:8px;padding:9px 11px;max-width:190px;background:linear-gradient(135deg,#162c38ed,#0b1e2af5);border-color:#8bc1dc50;box-shadow:0 5px 18px #0004;border-radius:13px;white-space:normal}
.bj-world-label.is-result[hidden]{display:none}.bj-world-label.is-result i{display:grid;place-items:center;width:24px;height:24px;flex-shrink:0;border-radius:50%;font:600 17px sans-serif;color:inherit;background:#a0c7db14;border:1px solid #aac5d326;font-style:normal}
.bj-world-label.is-result strong{display:block;font-size:12px;line-height:1.25;font-weight:650}.bj-world-label.is-result small{display:block;font-size:8px;line-height:1.2;letter-spacing:.6px;font-variant-numeric:tabular-nums;opacity:.73;margin-top:4px}
.bj-world-label.is-result:is([data-outcome=loss],[data-outcome=bust]){background:linear-gradient(135deg,#472c39ed,#251c2bf5);border-color:#f09bb43d;color:#ffd0d4}
.bj-world-label.is-result:is([data-outcome=win],[data-outcome=blackjack]){background:linear-gradient(135deg,#3a3530ed,#202c32f5);border-color:#ecd5a35e;color:#f0d4a5}
.bj-world-label.is-result:not([hidden]){animation:bj-result-reveal .35s ease-out both}
@keyframes bj-result-reveal{from{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}
.reduce-motion .bj-world-label.is-result{animation:none}@media(prefers-reduced-motion:reduce){.bj-world-label.is-result{animation:none}}
.bj-seats:not(.is-duo){display:none}
.bj-seats{min-height:0!important;padding:0 2px 8px;gap:10px;justify-content:center}.bj-seats .bj-seat{display:flex;flex-direction:row;text-align:left;align-items:center;gap:8px;max-width:none;width:auto;min-width:0;flex:0 1 auto;transform:none!important;opacity:1;padding:0;background:none;border:0}.bj-seats.is-duo .bj-seat{flex:1}.bj-seat .bj-seat-avatar{width:28px;height:28px;margin:0;flex-shrink:0;font-size:11px}.bj-seat-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.bj-seat-copy b{font-size:11px;color:#e2e5e8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px}.bj-seat-copy small{font-size:8px;color:#99aab3;white-space:nowrap}.bj-seat.is-empty .bj-seat-copy b{color:#a3b4be}.bj-seat-mini{display:none}
.bj-room-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#07131a99;border:1px solid #9dbac721;padding:4px;border-radius:15px;margin:7px 0 8px}.bj-room-switch button{display:flex;align-items:center;gap:8px;text-align:left;border-radius:11px;padding:7px 9px;border:1px solid transparent;background:transparent;color:#b0bec6;min-width:0;min-height:42px}.bj-room-switch button[aria-pressed="true"]{background:linear-gradient(135deg,#18465b,#153143);border-color:#56b7df55;color:#e3f6ff;box-shadow:0 4px 14px #0003}.bj-room-number{font-size:17px;font-weight:400;color:#75b7d0;letter-spacing:-1px}.bj-room-switch b{display:block;font-size:11px;margin-bottom:3px}.bj-room-switch small{display:block;font-size:8px;color:#a2b6c2;white-space:nowrap}.bj-room-switch button:disabled{opacity:.5}.bj-room-switch button:focus-visible{outline:2px solid #54c3ef;outline-offset:2px}
.bj-table-feedback{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 2px 0;min-height:14px}.bj-table-bar{margin:0;padding:0;min-height:0;max-width:47%;flex:none}.bj-table-bar:empty{display:none}.bj-table-bar .bj-room-badge{display:none}.bj-table-clock{font-size:8px;line-height:1.4}.bj-table-clock i{flex:none}.bj-status{margin:0;padding:0;min-height:0;color:#adbdc5;font-size:10px;line-height:1.4;flex:1}.bj-bet-panel{padding:11px 13px 12px}.bj-bet-top{margin-bottom:8px}.bj-chips{padding:6px 4px 8px}.bj-play-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.bj-action{min-height:60px;border-radius:14px}.bj-action>span{font-size:22px;line-height:24px}.bj-action-hint{margin-top:7px}.bj-test-note{margin-top:10px}.bj-profile-design .setting-label{display:flex;flex-direction:column;gap:4px}.bj-profile-design .setting-label small{font-size:11px;font-weight:400;color:var(--secondary);letter-spacing:0}.bj-profile-design .setting-arrow{margin-left:auto}
.light-theme.blackjack-view .mini-app,.light-theme.blackjack-view{background:#f4f6f8}.light-theme.blackjack-view .nav-fade{background:linear-gradient(transparent,#f4f6f8ed 58%)}.light-theme .bj-room-switch{background:#e5edf2;border-color:#c8d8e2}.light-theme .bj-room-switch button{color:#465d6b}.light-theme .bj-room-switch button[aria-pressed="true"]{background:#fff;border-color:#9bc9df;box-shadow:0 3px 12px #32536b12}.light-theme .bj-room-switch small{color:#728896}.light-theme .bj-seat-copy b{color:#304652}.light-theme .bj-seat-copy small,.light-theme .bj-room-badge{color:#728896}.light-theme .bj-status{color:#667d89}
@media(max-width:360px){.blackjack-view .screen{padding-left:13px;padding-right:13px;padding-top:calc(10px + var(--safe-top))}.bj-heading{grid-template-columns:minmax(0,1fr) repeat(3,32px);gap:6px;margin-bottom:9px}.bj-heading h1{font-size:20px}.bj-heading .icon-button,.bj-heading .bj-sound-button,.bj-heading .bj-rules-button{width:32px;height:32px}.bj-bankroll strong{font-size:20px}.bj-stage{margin:0 -9px}.bj-stage:not([data-renderer="fallback"]):not([data-renderer="flat"]){height:350px}.bj-room-switch button{padding:6px;gap:6px}.bj-room-number{font-size:16px}.bj-room-switch b{font-size:11px}.bj-room-switch small{font-size:7px}.bj-world-label{font-size:9px;padding:3px 5px}.bj-world-label.is-dealer{font-size:10px}.bj-seat-copy b{max-width:88px}.bj-status{font-size:9px}.bj-table-clock{font-size:7px}.bj-bet-panel{padding:10px 11px}.bj-play-actions{gap:5px}.bj-action{min-height:56px;border-radius:12px;font-size:10px}.bj-action>span{font-size:21px;line-height:23px}.bj-action.bj-split-button>span{font-size:23px}}
@media(prefers-reduced-motion:reduce){.bj-seat-avatar{animation:none!important}}
@media(max-width:360px){.bj-world-label.is-lane{font-size:8px;padding:3px 4px}}
@media(max-width:360px){.bj-world-label.is-player-summary{left:9px;bottom:10px;padding:8px;font-size:9px;max-width:108px}.bj-world-label.is-result{right:9px;bottom:10px;padding:8px;gap:6px;max-width:145px}.bj-world-label.is-result strong{font-size:10px}.bj-world-label.is-result small{font-size:7px}.bj-world-label.is-result i{width:20px;height:20px;font-size:14px}}

.bj-stage[data-renderer="recovering"]::after{content:"Восстанавливаем 3D-стол…"}
.bj-renderer-notice{display:none}.bj-stage[data-renderer="fallback"] .bj-renderer-notice{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;background:#18252e;color:#bdcbd4;font-size:10px}.bj-renderer-notice button{border:1px solid #80b8d64d;background:#244455;color:#d8effa;border-radius:8px;padding:7px 10px;font:inherit;font-weight:650}.bj-renderer-notice button:focus-visible{outline:2px solid #90d4fc;outline-offset:2px}

/* blackjack-celebration.css */
.bj-celebration{position:absolute;inset:0;z-index:5;pointer-events:none;contain:layout paint;overflow:hidden}
.bj-celebration[hidden]{display:none}
.bj-celebration-halo{position:absolute;left:50%;top:51%;width:300px;height:240px;transform:translate(-50%,-50%);background:radial-gradient(ellipse,#ffe8a24d,transparent 68%);opacity:0}
.bj-celebration-prize{position:absolute;left:50%;top:51%;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:3px;min-width:172px;padding:12px 24px 11px;border:1px solid #eed29a99;border-radius:18px;background:linear-gradient(135deg,#3d302cf5,#17252bf5);box-shadow:0 7px 26px #0005,inset 0 0 0 4px #eed29a0b;overflow:hidden;color:#ffdfa1;text-align:center}
.bj-celebration-prize::after{content:"";position:absolute;inset:-80px;background:linear-gradient(115deg,transparent 40%,#ffe7b332 50%,transparent 59%);transform:translateX(-65%);pointer-events:none}
.bj-prize-title{font-size:12px;font-weight:800;letter-spacing:3px;color:#f5cd80}
.bj-celebration-prize strong{display:flex;align-items:baseline;gap:7px;line-height:1.12;font-size:28px;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.6px;text-shadow:0 2px 8px #f6c36122}
.bj-celebration-prize strong small{font-size:9px;letter-spacing:.9px;font-weight:600;color:#e6c491}
.bj-prize-caption{font-size:7px;letter-spacing:2px;color:#ccbda7}
.bj-celebration[data-split=true] .bj-celebration-prize{top:34%;min-width:144px;padding:6px 12px;border-radius:12px;gap:2px}.bj-celebration[data-split=true] .bj-prize-title{font-size:8px;letter-spacing:1.2px}.bj-celebration[data-split=true] .bj-celebration-prize strong{font-size:20px}.bj-celebration[data-split=true] .bj-prize-caption{font-size:6px;letter-spacing:1px}.bj-celebration[data-split=true] .bj-celebration-halo{top:34%;width:200px;height:140px}
.bj-prize-particle{position:absolute;left:50%;top:51%;width:4px;height:4px;background:#ffe2a5;opacity:0;border-radius:1px}
.bj-prize-particle.is-chip{width:14px;height:14px;margin:-7px;border-radius:50%;background:#2ca4da;border:2px dashed #f5e5b4;box-shadow:inset 0 0 0 2px #2172ac}
.bj-prize-particle.is-spark:nth-child(even){width:3px;height:8px;background:#fff2d7}
.bj-celebration[data-outcome="loss"] .bj-celebration-prize{background:linear-gradient(135deg,#4f1b2af5,#25151ef5);border-color:#ec99ad99;box-shadow:0 7px 26px #0005,inset 0 0 0 4px #f69bae0b;color:#ffb5c4}
.bj-celebration[data-outcome="loss"] .bj-celebration-halo{background:radial-gradient(ellipse,#fa72823d,transparent 68%)}
.bj-celebration[data-outcome="loss"] .bj-celebration-prize::after{background:linear-gradient(115deg,transparent 40%,#ffbbc832 50%,transparent 59%)}
.bj-celebration[data-outcome="loss"] .bj-prize-title{color:#ffa0b6}
.bj-celebration[data-outcome="loss"] .bj-celebration-prize strong{text-shadow:0 2px 8px #f7759822}
.bj-celebration[data-outcome="loss"] .bj-celebration-prize strong small{color:#e6aabb}
.bj-celebration[data-outcome="loss"] .bj-prize-caption{color:#cda4af}
.bj-celebration[data-outcome="loss"] .bj-celebration-particles{display:none}
.bj-celebration[data-outcome="push"] .bj-celebration-prize{background:linear-gradient(135deg,#193f5af5,#12252ff5);border-color:#90cce999;box-shadow:0 7px 26px #0005,inset 0 0 0 4px #9ddcff0b;color:#b3e4ff}
.bj-celebration[data-outcome="push"] .bj-celebration-halo{background:radial-gradient(ellipse,#71c9ff3d,transparent 68%)}
.bj-celebration[data-outcome="push"] .bj-celebration-prize::after{background:linear-gradient(115deg,transparent 40%,#b7e8ff32 50%,transparent 59%)}
.bj-celebration[data-outcome="push"] .bj-prize-title{color:#9ddcff}
.bj-celebration[data-outcome="push"] .bj-celebration-prize strong{text-shadow:0 2px 8px #75c7ff22}
.bj-celebration[data-outcome="push"] .bj-celebration-prize strong small{color:#a2cbe0}
.bj-celebration[data-outcome="push"] .bj-prize-caption{color:#aac5d4}
.bj-celebration[data-outcome="push"] .bj-celebration-particles{display:none}
.bj-celebration.is-playing .bj-celebration-prize{animation:bj-prize-reveal 2.3s cubic-bezier(.2,.75,.2,1) both}
.bj-celebration.is-playing .bj-celebration-prize::after{animation:bj-prize-shine 1.3s .18s ease-out both}
.bj-celebration.is-playing .bj-celebration-halo{animation:bj-prize-halo 2.3s ease-out both}
.bj-celebration.is-playing .bj-prize-particle{animation:bj-prize-burst 1.5s var(--burst-delay) cubic-bezier(.12,.67,.3,1) both}
@keyframes bj-prize-reveal{0%{opacity:0;transform:translate(-50%,-50%) scale(.76)}12%,78%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-54%) scale(.97)}}
@keyframes bj-prize-shine{0%{transform:translateX(-65%)}100%{transform:translateX(65%)}}
@keyframes bj-prize-halo{0%,100%{opacity:0;transform:translate(-50%,-50%) scale(.8)}18%,65%{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes bj-prize-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}12%{opacity:1}80%{opacity:.8}100%{opacity:0;transform:translate(var(--burst-x),var(--burst-y)) rotate(var(--burst-r)) scale(.75)}}
.bj-celebration.is-static .bj-celebration-prize::after,.reduce-motion .bj-celebration-prize::after{display:none}
.reduce-motion .bj-celebration *,.reduce-motion .bj-celebration *::after{animation:none!important}
@media(prefers-reduced-motion:reduce){.bj-celebration *,.bj-celebration *::after{animation:none!important}.bj-celebration-prize::after{display:none}}
@media(max-width:360px){.bj-celebration-prize{min-width:152px;padding:10px 18px}.bj-celebration-prize strong{font-size:25px}}

/* refresh.css */
/* Graphite surfaces keep the Telegram blue accents and the light theme. */
:root:not([data-theme="light"]){--bg:#1e2024;--surface:#2b2e34;--secondary:#a3a9b4;--tertiary:#7f8794}
html:not([data-theme="light"]),body:not(.light-theme),body:not(.light-theme) .mini-app{background:#1e2024}
body:not(.light-theme) .space-wallpaper:before{opacity:.055}
body:not(.light-theme) .space-wallpaper:after{background:linear-gradient(180deg,#1e2024,transparent 26%,#1e2024a8 76%)}
body:not(.light-theme) .wallet-card,body:not(.light-theme) .settings-group,body:not(.light-theme) .bets-card{background:#2b2e34;border-color:#ffffff0c;box-shadow:inset 0 1px 0 #ffffff04}
body:not(.light-theme) .inventory-item,body:not(.light-theme) .mode-card{background:#272a30;border-color:#ffffff0d}
body:not(.light-theme) .bottom-nav{background:#2b2e34f2;border-color:#ffffff12}
body:not(.light-theme) .nav-fade{background:linear-gradient(transparent,#1e2024f5 65%)}
body:not(.light-theme) .bottom-sheet{background:#2b2e34f5}
body:not(.light-theme) .next-round-button,body:not(.light-theme) .queued-bet{background:#292c32}
body:not(.light-theme) .splash{background:#1e2024}
body:not(.light-theme) .app-header .balance-pill,body:not(.light-theme) .game-wallet{background:#30343bd9;border-color:#ffffff12}
.app-header .balance-pill{height:32px;gap:4px;padding:3px 4px 3px 7px;font-size:13px;line-height:1;white-space:nowrap}
.app-header .balance-pill [data-balance]{font-variant-numeric:tabular-nums}
.app-header .balance-pill .header-ton .currency-art{width:20px;height:20px}
.app-header .balance-pill .tiny-plus{width:20px;height:20px;flex-shrink:0;margin-left:0}
.app-header .balance-pill .tiny-plus .icon{width:13px;height:13px}
body:not(.light-theme) .group-label,body:not(.light-theme) .stage-caption,body:not(.light-theme) .coefficient-current-wrap>span{color:#9aa3b1}
body:not(.light-theme) .profile-footer,body:not(.light-theme) .local-caption{color:#858e9c}
/* The whole trail is on solid sky. The dissolve starts below the canvas. */
.game-view .space-game:before{background:#202329}
.light-theme.game-view .space-game:before{background:#edf3f9}
.flight-sky-blend{height:38px;margin:-8px -16px 5px;pointer-events:none;background:linear-gradient(180deg,#202329 0%,#202329d4 20%,#20232966 58%,#20232900 100%)}
.light-theme .flight-sky-blend{background:linear-gradient(180deg,#edf3f9 0%,#edf3f9d4 20%,#edf3f966 58%,#edf3f900 100%)}

.referral-card{margin-top:14px;padding:18px 16px 14px;border:1px solid #ffffff10;border-radius:23px;background:radial-gradient(ellipse at 100% 0,#3ea9ff13,transparent 64%),#2b2e34;box-shadow:inset 0 1px 0 #ffffff04}
.referral-heading{display:flex;align-items:center;gap:11px;margin-bottom:17px}
.referral-heading h2{font-size:17px;line-height:1.3;font-weight:650;letter-spacing:-.35px;margin:0;color:#f4f7fb}
.referral-heading p{font-size:11px;line-height:1.5;margin:4px 0 0;color:#a2abba}
.referral-emblem{display:grid;place-items:center;position:relative;width:40px;height:40px;border-radius:14px;background:#42b2ff12;color:#64c2ff;border:1px solid #64c2ff22;flex-shrink:0}
.referral-emblem>.icon:first-child{width:21px;height:21px;translate:-2px 0}
.referral-emblem>.icon:last-child{position:absolute;right:4px;top:9px;width:11px;height:11px}
.referral-link-row{display:flex;min-width:0;align-items:center;gap:3px;padding:4px 4px 4px 12px;background:#22252b;border:1px solid #ffffff08;border-radius:13px}
.referral-link-row input{width:0;min-width:0;flex:1;border:0;background:none;color:#b9c9d8;font:inherit;font-size:11px;line-height:1.5;text-overflow:ellipsis;outline-offset:3px}
.referral-link-row input::placeholder{color:#8892a1}
.referral-link-row button{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#ffffff07;color:#8acbfa;flex-shrink:0}
.referral-link-row .icon{width:17px;height:17px}
.referral-share{margin-top:9px;width:100%;min-height:42px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:13px;background:#009aff;color:#fff;font-size:12px;font-weight:650;box-shadow:inset 0 1px 0 #ffffff25}
.referral-share .icon{width:17px;height:17px}
.referral-card button{transition:background .18s,transform .18s}
.referral-card button:active:not(:disabled){transform:scale(.98)}
.referral-card button:disabled{opacity:.42;cursor:default}
.referral-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid #ffffff0c}
.referral-stats>div+div{border-left:1px solid #ffffff0c;padding-left:17px}
.referral-stats strong{display:flex;align-items:center;gap:5px;font-size:23px;line-height:1.2;letter-spacing:-.5px;font-weight:650;font-variant-numeric:tabular-nums;color:#f1f6fb}
.referral-stats .currency-art{width:20px;height:20px}
.referral-stats>div>span{display:block;font-size:10px;line-height:1.5;color:#9aa5b5;margin-top:5px}
.referral-note{font-size:10px;line-height:1.6;color:#929dab;margin:14px 0 0}
.referral-retry{font-size:11px;padding:8px 0 0;background:none;color:#68beff}
.light-theme .referral-card{background:radial-gradient(ellipse at 100% 0,#3ea9ff0e,transparent 64%),#fff;border-color:#dce4ec;box-shadow:0 3px 18px #29455f06}
.light-theme .referral-heading h2,.light-theme .referral-stats strong{color:#20374d}
.light-theme .referral-heading p,.light-theme .referral-stats>div>span,.light-theme .referral-note{color:#6d8094}
.light-theme .referral-emblem{color:#087ac7;background:#eaf6ff;border-color:#cfe8fa}
.light-theme .referral-link-row{background:#f0f4f8;border-color:#e1e8f0}
.light-theme .referral-link-row input{color:#58758d}
.light-theme .referral-link-row button{background:#e0edf8;color:#087ac7}
.light-theme .referral-share{background:#087ac7}
.light-theme .referral-stats,.light-theme .referral-stats>div+div{border-color:#e4ebf2}
@media(max-width:360px){.referral-card{padding:16px 13px 13px}.referral-heading h2{font-size:16px}.referral-stats strong{font-size:21px}}

/* modes-lobby.css */
.modes-lobby{margin:0 -4px 22px}.lobby-hero{position:relative;isolation:isolate;display:block;width:100%;height:clamp(104px,28vw,132px);overflow:hidden;text-align:left;border:1px solid #aa6cff65;border-radius:22px;background:radial-gradient(ellipse at 90% 65%,#64499a88,transparent 70%),#180b2e;box-shadow:inset 0 1px 0 #ffffff0d;color:#fff}
.lobby-hero-art{position:absolute;inset:0;z-index:-2}.lobby-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:right center}.lobby-hero:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#10051c38,transparent 68%)}
.lobby-hero-copy{height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:63%;padding:10px 14px;gap:4px}.lobby-hero-eyebrow{font-size:7px;line-height:1;letter-spacing:1.3px;font-weight:750;color:#cdb9ef}.lobby-hero-copy>strong{font-size:clamp(18px,5.3vw,25px);line-height:1.04;letter-spacing:-.8px;font-weight:850;text-shadow:0 2px 10px #16052d}.lobby-hero-copy>strong b{font-weight:900;color:#72ffce}.lobby-hero-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;margin-top:2px;min-height:25px;padding:5px 11px;border-radius:30px;background:linear-gradient(110deg,#69f5a8,#65e3df);box-shadow:0 2px 12px #46ebbc20;color:#072e2c;font-size:10px;line-height:1;font-weight:800}.lobby-hero:active .lobby-hero-cta{transform:scale(.98)}
.live-drops{margin-top:15px}.live-drops-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 2px 9px}.live-drops-heading h2{display:flex;align-items:center;gap:8px;margin:0;font-size:17px;line-height:1.2;letter-spacing:-.3px;font-weight:750}.live-drops-heading h2 i{display:block;flex:none;width:7px;height:7px;border-radius:50%;background:#56efab;box-shadow:0 0 10px #56efab45}.live-drops-heading>[data-drops-state]{font-size:8px;font-weight:750;letter-spacing:1.1px;color:#64eab3}.live-drops-heading>[data-drops-state].is-offline{font-size:9px;letter-spacing:0;color:var(--tg-secondary,#a7aab3)}
.live-drops-rail{display:flex;align-items:stretch;gap:8px;height:64px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity;border-radius:14px}.live-drops-rail::-webkit-scrollbar{display:none}.live-drop{display:flex;align-items:center;gap:7px;flex:0 0 146px;min-width:0;height:64px;padding:8px;border:1px solid #b5a6d029;border-radius:14px;background:linear-gradient(135deg,#7763910d,#0000000b),var(--tg-bg,#191b1f);scroll-snap-align:start;box-shadow:inset 0 1px 0 #ffffff04}.live-drop-art{display:grid;place-items:center;flex:none;width:44px;height:44px}.live-drop-art>img,.live-drop-art>svg{display:block;max-width:100%;max-height:100%;object-fit:contain}.live-drop-copy{min-width:0}.live-drop-copy strong,.live-drop-copy>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-drop-copy strong{font-size:11px;font-weight:750;line-height:1.4}.live-drop-copy>span{font-size:10px;line-height:1.5;color:var(--tg-secondary,#9695a3)}
.live-drops-empty{display:flex;align-items:center;gap:10px;width:100%;padding:10px 13px;border:1px solid #a395bd20;border-radius:14px;background:#9e80c607}.live-drops-empty-art{width:33px;height:33px;flex:none;opacity:.6}.live-drops-empty-art svg{width:100%;height:100%}.live-drops-empty strong,.live-drops-empty div>span{display:block}.live-drops-empty strong{font-size:12px;line-height:1.5;color:var(--tg-text,#eff1f7)}.live-drops-empty div>span{font-size:10px;line-height:1.5;color:var(--tg-secondary,#9695a3)}
.live-drop-enter{animation:live-drop-arrive .38s cubic-bezier(.2,.7,.2,1) both}@keyframes live-drop-arrive{from{opacity:0;transform:translate3d(10px,0,0)}to{opacity:1;transform:none}}
.light-theme .live-drop,.light-theme .live-drops-empty{background:#fff;border-color:#e7dff1}.light-theme .live-drops-heading>[data-drops-state]{color:#1a946e}.light-theme .live-drops-heading h2 i{background:#25b786}
@media(max-width:360px){.modes-lobby{margin-bottom:19px}.lobby-hero{border-radius:19px}.lobby-hero-copy{padding:10px 12px;max-width:65%;gap:4px}.lobby-hero-eyebrow{font-size:7px;letter-spacing:1px}.lobby-hero-copy>strong{font-size:18px;letter-spacing:-.6px}.lobby-hero-cta{font-size:10px;min-height:25px;padding:6px 11px;gap:7px}.live-drops-heading h2{font-size:16px}.live-drop{flex-basis:136px}}
@media(prefers-reduced-motion:reduce){.live-drop-enter{animation:none}}.reduce-motion .live-drop-enter{animation:none}

.modes-page .game-mode-mines .mode-banner-fallback{background:radial-gradient(ellipse at 75% 90%,#7540b750,transparent 70%),#130b26}.modes-page .game-mode-mines .mode-banner-fallback img{width:54px;height:54px;object-fit:contain}

.live-drop{position:relative;isolation:isolate;overflow:hidden}
.live-drop-gift-flash:after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse at 22% 50%,#70ffadad,transparent 75%),linear-gradient(100deg,#23c86d8c,#25d87918);opacity:0;animation:live-gift-flash .7s ease-out both}
@keyframes live-gift-flash{0%{opacity:0}18%{opacity:.95}100%{opacity:0}}
.reduce-motion .live-drop-gift-flash:after,.app-hidden .live-drop-gift-flash:after{animation:none;opacity:0}
@media(prefers-reduced-motion:reduce){.live-drop-gift-flash:after{animation:none;opacity:0}}

/* Two supplied banners share one clipped, rounded carousel. */
.promo-carousel{position:relative;isolation:isolate;aspect-ratio:3;width:100%;overflow:hidden;border-radius:22px;touch-action:pan-y;background:transparent}
.promo-carousel>[data-promo-slide]{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;border-radius:inherit;overflow:hidden;isolation:isolate;background:transparent;color:inherit;text-align:left}
.promo-carousel>[data-promo-slide][hidden]{display:none!important}
.promo-carousel .lobby-hero{height:100%;box-shadow:none}
.promo-banner>.mode-banner-art{position:absolute;inset:0;display:block;width:100%;height:100%;border-radius:inherit}
.promo-banner .mode-banner-art>:is(img,video){position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit}
.promo-banner .mode-banner-art>[hidden]{display:none!important}
.promo-carousel[data-promo-sliding] [data-promo-slide]{pointer-events:none}
.promo-carousel>[data-promo-slide]:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:-3px}

/* mode-categories.css */
.mode-categories{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:4px;margin:16px -4px 12px;min-height:44px;border:1px solid var(--tg-control-border,#ffffff0d);border-radius:999px;background:var(--tg-field,#23262d)}
.mode-category-indicator{position:absolute;inset:4px auto 4px 4px;width:calc((100% - 8px)/2);z-index:0;border-radius:999px;background:var(--tg-accent,#009aff);box-shadow:inset 0 1px 0 #ffffff18;pointer-events:none;transform:translateX(0);transition:transform .42s cubic-bezier(.25,.1,.25,1),scale .25s ease-in-out}
.mode-categories[data-selected=pvp]>.mode-category-indicator{transform:translateX(100%)}
.mode-categories [role=tab]{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-width:0;min-height:34px;padding:8px 16px;border:0;border-radius:999px;background:transparent;color:var(--tg-secondary,#9ba4b3);font:inherit;font-size:12px;line-height:18px;letter-spacing:.4px;font-weight:750;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .2s}
.mode-categories [role=tab][aria-selected=true]{color:#fff}.mode-categories [role=tab]:focus-visible{outline:2px solid var(--tg-accent,#009aff);outline-offset:3px}
.modes-page [data-mode-panel][hidden]{display:none!important}.modes-page .game-modes-grid[data-mode-panel]{margin-top:12px}
.modes-page [data-mode-panel=pvp]>.game-mode-rolls{grid-column:1;justify-self:start;width:100%;min-height:0;aspect-ratio:1;max-height:none}
.light-theme .mode-categories{background:#e9edf2;border-color:#e0e6ed}
.reduce-motion .mode-category-indicator,.reduce-motion .mode-categories [role=tab]{transition:none;will-change:auto}
@media(prefers-reduced-motion:reduce){.mode-category-indicator,.mode-categories [role=tab]{transition:none;will-change:auto}}

/* loss-rewards.css */
/* Compact inset reward sections. Height grows before labels or touch targets
   shrink: the financial note and action always retain their own rows. */
.loss-rewards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 20px}
.loss-reward-card{min-width:0;min-height:204px;display:flex;flex-direction:column;padding:14px;border:1px solid var(--tg-control-border,#ffffff0c);border-radius:24px;background:var(--tg-surface,#1d2026);box-shadow:none;color:var(--tg-text,#f5f6f8)}
.loss-reward-top{display:flex;align-items:center;gap:8px;min-height:36px}
.loss-reward-icon{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:10px;background:#008bff15;color:#6dbdff}.loss-reward-icon svg{width:18px;height:18px}.friends .loss-reward-icon{background:#a378f51a;color:#bba0ef}
.loss-reward-card h2{margin:0;font-size:14px;font-weight:600;line-height:18px;letter-spacing:-.25px;overflow-wrap:normal}
.loss-reward-value-line{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px;margin-top:12px;min-height:34px}
.loss-reward-amount{display:flex;align-items:center;gap:4px;min-width:0;font-size:28px;font-weight:700;line-height:34px;letter-spacing:-.6px;font-variant-numeric:tabular-nums}
.loss-reward-amount>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.loss-reward-amount>svg,.loss-reward-amount>img{width:20px;height:20px;flex:none}
.loss-reward-amount[data-density="compact"]{font-size:20px;letter-spacing:-.35px}.loss-reward-amount[data-density="tight"]{font-size:16px;letter-spacing:-.15px}
.loss-reward-rate{flex:none;padding:3px 6px;border-radius:7px;font-size:10px;font-weight:600;line-height:14px;letter-spacing:0;color:#7bc3ff;background:#008bff12}.friends .loss-reward-rate{color:#c4adf3;background:#a378f514}
.loss-reward-card p{min-height:32px;margin:5px 0 12px;color:var(--tg-secondary,#a1a7b1);font-size:11px;font-weight:400;line-height:16px;letter-spacing:0;overflow-wrap:anywhere}
.loss-reward-card button{width:100%;min-height:44px;margin-top:auto;flex:none;border:0;border-radius:22px;background:var(--tg-accent,#008bff);color:#fff;font-size:14px;font-weight:600;line-height:20px}
.loss-reward-card.friends button{background:#8b55de}.loss-reward-card button:disabled{background:var(--tg-raised,#262930);color:var(--tg-secondary,#a1a7b1);opacity:1}
.tg-empty-action[data-action="inventory-home"]{background:#009aff!important;color:#fff!important;border-color:transparent!important}
.light-theme .loss-reward-icon{color:#087bc7;background:#008bff12}.light-theme .friends .loss-reward-icon{color:#8251c0;background:#a378f514}.light-theme .loss-reward-rate{color:#147cbd}.light-theme .friends .loss-reward-rate{color:#8054ba}
@media(max-width:360px){.loss-rewards{gap:10px}.loss-reward-card{padding:11px;border-radius:22px}.loss-reward-top{gap:6px}.loss-reward-icon{width:24px;height:24px;border-radius:9px}.loss-reward-icon svg{width:16px;height:16px}.loss-reward-card h2{font-size:13px;line-height:17px}.loss-reward-amount{font-size:26px;line-height:32px}.loss-reward-amount>svg,.loss-reward-amount>img{width:18px;height:18px}.loss-reward-value-line{margin-top:10px}.loss-reward-card p{font-size:11px;line-height:16px}}
@media(max-width:360px){.loss-reward-amount[data-density="compact"]{font-size:18px}.loss-reward-amount[data-density="tight"]{font-size:13px}}

/* friends-inventory.css */
.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr));max-width:390px}
.nav-selection{width:calc((100% - 10px)/4)}
.nav-item{font-size:10px;min-width:0;padding:3px 1px}
.nav-item .icon{width:22px;height:22px}
.referral-friends-trigger{display:block;position:relative;text-align:left;padding:0 10px 0 0;background:transparent;color:inherit;border-radius:10px}
.referral-friends-trigger>span{display:block;font-size:10px;line-height:1.5;color:#9aa5b5;margin-top:5px}
.referral-count-arrow{margin-left:auto;display:grid;place-items:center;width:24px;height:24px;font-size:21px;color:#71c5ff;background:#55b5ff12;border-radius:50%;font-weight:400}
.referral-stats>div:last-child{border-left:1px solid #ffffff0c;padding-left:17px}
.referral-friends-trigger:hover:not(:disabled){background:#ffffff04}
.referral-friends-trigger:focus-visible,.game-mode-card:focus-visible{outline:2px solid #61c0ff;outline-offset:4px}
.friends-sheet{padding:4px 0 0}
.friends-eyebrow,.inventory-eyebrow{font-size:9px;letter-spacing:1.6px;font-weight:600;color:#8cb7d7}
.friends-sheet .sheet-title{margin:9px 0 9px;letter-spacing:-.7px;font-size:25px}
.friends-intro{display:flex;align-items:center;gap:8px;margin:0 0 22px;font-size:12px;line-height:1.6;color:#9daabb}
.friends-intro>span:not(:empty){padding:1px 7px;border-radius:7px;background:#45b5ff15;color:#76caff;font-size:11px;font-weight:650}
.friends-list{list-style:none;padding:0;margin:0}
.friend-row{display:flex;align-items:center;gap:11px;padding:14px 0;border-bottom:1px solid #ffffff0a}
.friend-row:first-child{padding-top:0}
.friend-row:last-child{border-bottom:0}
.friend-avatar{position:relative;isolation:isolate;overflow:hidden;display:grid;place-items:center;width:43px;height:43px;flex-shrink:0;border-radius:15px;background:linear-gradient(145deg,#376383,#264354);border:1px solid #85cbff25;color:#d9efff;font-size:17px;font-weight:650}
.friend-row:nth-child(3n+2) .friend-avatar{background:linear-gradient(145deg,#62547d,#38344e);border-color:#c1a2f825;color:#eee3ff}
.friend-row:nth-child(3n+3) .friend-avatar{background:linear-gradient(145deg,#326967,#2b4749);border-color:#8fd7cb25;color:#d5fff3}
.friend-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.friend-copy{min-width:0;flex:1}
.friend-copy strong{display:block;overflow-wrap:anywhere;font-size:13px;line-height:1.4;color:#f0f5fb;font-weight:600}
.friend-copy>span{display:block;margin-top:3px;font-size:9px;color:#8fa0af}
.friend-row time{max-width:77px;text-align:right;font-size:10px;line-height:1.5;color:#9eadbd;flex-shrink:0}
.friends-footnote{font-size:10px;line-height:1.6;color:#8e9cab;margin:20px 0 0}
.friends-empty{text-align:center;padding:14px 5px 4px}
.friends-empty>span{margin:auto;display:grid;place-items:center;width:63px;height:63px;border-radius:22px;background:#49b4ff12;border:1px solid #66beff22;color:#79c9ff}
.friends-empty>span .icon{width:29px;height:29px}
.friends-empty h3{font-size:17px;font-weight:600;margin:17px 0 8px}
.friends-empty p{color:#99a9bb;font-size:12px;line-height:1.65;margin:0 auto 20px;max-width:270px}
.friends-empty .primary-button{display:flex;gap:8px;align-items:center;justify-content:center;min-height:44px;border-radius:15px;font-size:12px}
.friends-empty .icon{width:17px;height:17px}
.friends-loading{font-size:12px;color:#9eacbb}
.friend-skeleton{display:flex;gap:12px;align-items:center;height:64px;opacity:.65}
.friend-skeleton i{display:block;width:43px;height:43px;background:#ffffff0b;border-radius:15px}
.friend-skeleton b{display:block;width:55%;height:24px;border-radius:8px;background:linear-gradient(90deg,#ffffff0b,#ffffff04)}
.friends-error{font-size:12px;line-height:1.6;text-align:center;color:#daafae;padding:16px 0}
.friends-more{width:100%;min-height:41px;border-radius:13px;background:#68baff0d;color:#88ceff;border:1px solid #68baff20;font-size:12px;margin-top:14px}
.friends-more:disabled{opacity:.55}
.inventory-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:12px}
.inventory-heading .page-title{margin-top:8px;margin-bottom:0}
.inventory-page>.page-subtitle{margin-top:12px;margin-bottom:23px}
.inventory-count{min-width:38px;height:38px;display:grid;place-items:center;padding:0 10px;border-radius:13px;background:#79bfff12;color:#91d0ff;border:1px solid #79bfff24;font-size:16px;font-weight:600}
.inventory-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.inventory-collection .inventory-item{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:5px 5px 10px;border-radius:16px;background:#2b2e34;border:1px solid #ffffff0a;box-shadow:inset 0 1px 0 #ffffff05;text-align:left}
.inventory-collection .inventory-item .gift-art{width:100%;height:auto;aspect-ratio:1;border-radius:11px;margin:0 0 8px}
.inventory-collection .inventory-item>strong{font-size:10.5px;font-weight:600;line-height:1.4;padding:0 3px;color:#f3f6fa;overflow-wrap:anywhere}
.inventory-collection .inventory-item>span:last-child{display:flex;align-items:center;gap:3px;padding:0 3px;margin-top:5px;font-size:11px;color:#bed7eb;line-height:1.4;font-variant-numeric:tabular-nums}
.inventory-collection .currency-art{width:15px;height:15px}
.inventory-hint{text-align:center;font-size:11px;line-height:1.6;color:#93a0af;margin:21px 12px 0}
.inventory-empty-state{grid-column:1/-1;text-align:center;padding:35px 16px;border:1px dashed #ffffff18;border-radius:23px;background:#ffffff03}
.inventory-empty-state>span{display:block;margin:0 auto 15px;color:#91c9ef}
.inventory-empty-state .icon{width:39px;height:39px}
.inventory-empty-state strong{display:block;font-size:17px;color:#edf4fc}
.inventory-empty-state p{font-size:12px;line-height:1.6;color:#9aa9ba;margin:10px 0 20px}
.inventory-empty-state .primary-button{min-height:43px;font-size:13px;border-radius:14px}
.inventory-view .brand-button>span:last-child{display:none}

/* Small composited layers: no animated filters, shadows or layout properties. */
.game-modes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px -4px 0}
.game-mode-card{position:relative;isolation:isolate;contain:paint;display:block;width:100%;aspect-ratio:1.55;min-height:104px;max-height:138px;border-radius:20px;text-align:left;padding:0;overflow:hidden;background:radial-gradient(ellipse at 105% 70%,#468ed070,transparent 68%),linear-gradient(145deg,#244d77,#142a47);border:1px solid #77c2ff40;box-shadow:inset 0 1px 0 #bddeff21;color:#fff;transition:transform .2s}
.game-mode-blackjack{background:radial-gradient(ellipse at 110% 65%,#94556e60,transparent 67%),linear-gradient(145deg,#574355,#292539);border-color:#dcb1c534;box-shadow:inset 0 1px 0 #f9dae51a}
.game-mode-card:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#132b4938,transparent 75%);pointer-events:none}
.game-mode-title{position:absolute;left:13px;top:15px;z-index:3;display:block;font-size:20px;letter-spacing:-.55px;line-height:1.2;font-weight:700;margin:0;color:#fff;text-shadow:0 1px 5px #142a4940}
.game-mode-art{position:absolute;width:118px;height:118px;right:1px;bottom:-8px;z-index:2;pointer-events:none}
.mode-rocket-art,.mode-card-fan{display:block;position:absolute;inset:0}
.mode-rocket-body{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:2}
.mode-exhaust{position:absolute;left:37%;top:59.5%;width:37%;height:14%;transform-origin:0 50%;transform:rotate(133deg);z-index:1}
.mode-exhaust-plume{display:block;width:100%;height:100%;overflow:visible;transform-origin:0 50%;transform:scaleX(.9)}
.game-mode-blackjack .game-mode-art{width:88px;height:60px;right:8px;bottom:9px}
.mode-fan-card{position:absolute;left:24px;top:0;width:37px;height:52px;object-fit:fill;border-radius:11% / 8%;transform-origin:50% 90%;backface-visibility:hidden}
.mode-fan-ace{z-index:1;transform:translate(-8px,0) rotate(-14deg)}
.mode-fan-king{z-index:2;transform:translate(8px,-1px) rotate(12deg)}
.mode-fan-chips{position:absolute;right:0;bottom:0;width:51px;height:40px;object-fit:contain;z-index:3}
.game-mode-orbit{position:absolute;right:-48px;top:14px;width:166px;height:166px;border-radius:50%;border:1px solid #b0e2ff18;box-shadow:0 0 0 15px #9edaff05,0 0 0 30px #9edaff04;transform:rotate(-30deg) scaleY(.65);pointer-events:none}
.game-mode-play{position:absolute;z-index:3;left:13px;bottom:14px;display:flex;gap:6px;align-items:center;font-size:11px;font-weight:600;color:#f1f8ff;text-shadow:0 1px 4px #102239}
.game-mode-play>span{font-size:14px;font-weight:400}
.game-mode-card:active{transform:scale(.975)}
.mode-art-ready .mode-rocket-art{animation:mode-hover 4.8s ease-in-out infinite}
.mode-art-ready .mode-exhaust-plume{animation:mode-thrust .85s ease-in-out infinite alternate}
.mode-art-ready .mode-fan-ace{animation:mode-fan-left 7s cubic-bezier(.45,0,.25,1) infinite}
.mode-art-ready .mode-fan-king{animation:mode-fan-right 7s cubic-bezier(.45,0,.25,1) infinite}
.game-mode-card:not(.mode-in-view) .mode-motion,.app-hidden .mode-motion,#application[inert] .mode-motion{animation-play-state:paused}
@keyframes mode-hover{0%,100%{transform:translate3d(0,1px,0) rotate(-1deg)}50%{transform:translate3d(-2px,-4px,0) rotate(1deg)}}
@keyframes mode-thrust{from{transform:scaleX(.82) scaleY(.91);opacity:.8}to{transform:scaleX(1.07) scaleY(1.04);opacity:1}}
@keyframes mode-fan-left{0%,7%,100%{transform:translate(0,2px) rotate(-3deg)}24%,78%{transform:translate(-8px,0) rotate(-14deg)}}
@keyframes mode-fan-right{0%,7%,100%{transform:translate(3px,1px) rotate(2deg)}27%,78%{transform:translate(8px,-1px) rotate(12deg)}}
.reduce-motion .mode-motion,.low-effects .mode-motion{animation:none!important}
.reduce-motion .game-mode-card{transition:none}
@media(prefers-reduced-motion:reduce){.mode-motion{animation:none!important}.game-mode-card{transition:none}}
.light-theme .referral-friends-trigger>span{color:#6d8094}
.light-theme .referral-count-arrow{background:#e5f3ff;color:#087ac7}
.light-theme .referral-stats>div:last-child{border-color:#e4ebf2}
.light-theme .friends-sheet .sheet-title,.light-theme .friend-copy strong,.light-theme .friends-empty h3{color:#20374d}
.light-theme .friends-intro,.light-theme .friend-copy>span,.light-theme .friend-row time,.light-theme .friends-footnote,.light-theme .friends-empty p{color:#6d8094}
.light-theme .friends-intro>span:not(:empty){background:#e8f4ff;color:#087ac7}
.light-theme .friend-row{border-color:#dce5ee}
.light-theme .friends-more{background:#e8f4ff;color:#087ac7;border-color:#cee3f5}
.light-theme .friend-skeleton i,.light-theme .friend-skeleton b{background:#dfe7ee}
.light-theme .friends-error{color:#ae5260}
.light-theme .inventory-collection .inventory-item{background:#fff;border-color:#dce4ec;box-shadow:0 4px 14px #29455f07}
.light-theme .inventory-collection .inventory-item>strong,.light-theme .inventory-empty-state strong{color:#20374d}
.light-theme .inventory-collection .inventory-item>span:last-child{color:#326b93}
.light-theme .inventory-hint,.light-theme .inventory-empty-state p{color:#73869a}
.light-theme .inventory-eyebrow,.light-theme .friends-eyebrow{color:#6b8aa5}
.light-theme .inventory-count{background:#e8f4ff;color:#087ac7;border-color:#cbe4f7}
.light-theme .inventory-empty-state{background:#fff;border-color:#cfdae7}
@media(max-width:360px){.bottom-nav .nav-item{font-size:9px}.nav-item .icon{width:20px;height:20px}.game-modes-grid{gap:9px}.game-mode-card{border-radius:18px}.game-mode-title{left:11px;top:13px;font-size:17px}.game-mode-play{left:11px;bottom:12px;font-size:10px}.game-mode-rocket .game-mode-art{width:104px;height:104px;right:1px;bottom:-5px}.friend-row{gap:9px}.friend-row time{max-width:63px;font-size:9px}}

@media(max-width:360px){.inventory-collection{gap:7px}.inventory-collection .inventory-item>strong{font-size:9px}.inventory-collection .inventory-item>span:last-child{font-size:10px}.inventory-collection .currency-art{width:13px;height:13px}}

/* rocket-fairness.css */
.fairness-rules{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 12px}.fairness-rules>span{display:grid;gap:5px;padding:17px;border:1px solid var(--separator);border-radius:17px;background:var(--surface);font-size:11px;color:var(--secondary)}.fairness-rules b{font-size:25px;color:var(--text);letter-spacing:-.7px}.fairness-note{font-size:12px;line-height:1.6;color:var(--secondary);margin:0 0 20px}.fairness-rounds{display:grid;gap:10px}.fairness-round{padding:15px;border:1px solid var(--separator);border-radius:16px;background:var(--surface)}.fairness-round>div{display:flex;justify-content:space-between;gap:10px;font-size:13px}.fairness-status{display:block;margin-top:7px;color:var(--blue-light);font-size:12px}.fairness-round[data-status=verified] .fairness-status{color:#4fc9a5}.fairness-round[data-status=failed] .fairness-status{color:#fa8d9a}.fairness-round p{font-size:11px;line-height:1.55;color:var(--secondary);margin:10px 0}.fairness-round details{margin-top:12px;color:var(--secondary);font-size:11px}.fairness-round summary{cursor:pointer;padding:5px 0}.fairness-round dl{margin:10px 0 0}.fairness-round dt{font-size:10px;margin:10px 0 4px}.fairness-round dd{margin:0;overflow-wrap:anywhere;user-select:text;font-family:ui-monospace,monospace;line-height:1.5;color:var(--text)}.fairness-refresh{width:100%;margin-top:16px;padding:14px;border:1px solid var(--separator);border-radius:14px;background:var(--surface)}


/* mines.css */
:root{--effective-app-height:min(var(--app-height,100dvh),100dvh)}
/* Fullscreen games share Telegram's safe areas and leave room for touch controls. */
body.telegram-fullscreen{padding:0;display:block}
.telegram-fullscreen .mini-app{border:0;border-radius:0;box-shadow:none;min-height:var(--effective-app-height,100dvh)}
.telegram-fullscreen .splash{border-radius:0;min-height:var(--effective-app-height,100dvh)}
.telegram-fullscreen.game-view .screen,.telegram-fullscreen.game-view .mini-app{min-height:var(--effective-app-height,100dvh)}
.telegram-fullscreen .bottom-sheet{max-height:calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - 16px)}
body.blackjack-view,body.mines-view{padding:0;display:block}
.blackjack-view .bottom-nav,.blackjack-view .nav-fade,.mines-view .bottom-nav,.mines-view .nav-fade{display:none}
.blackjack-view .screen{padding-bottom:calc(18px + var(--safe-bottom,0px))}
.blackjack-view .mini-app,.mines-view .mini-app{border:0;border-radius:0;box-shadow:none;min-height:var(--effective-app-height,100dvh)}
.mines-view .app-header,.mines-view .space-wallpaper,.mines-view .desktop-aura{display:none}
.mines-view,.mines-view .mini-app{background:#1e222a}
.mines-view .screen{min-height:var(--effective-app-height,100dvh);padding:calc(8px + var(--safe-top,0px)) max(14px,var(--safe-right,0px)) calc(8px + var(--safe-bottom,0px)) max(14px,var(--safe-left,0px))}
.mines-page{--mines-height:calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - var(--safe-bottom,0px) - 16px);height:var(--mines-height);min-height:560px;display:flex;flex-direction:column;gap:9px;color:#f4f8ff;max-width:440px;margin:auto}
.mines-heading{display:flex;align-items:center;gap:10px;min-height:43px;flex:none}
.mines-heading h1{font-size:26px;line-height:1.1;letter-spacing:-.8px;font-weight:750;margin:2px 0 0}
.mines-eyebrow{font-size:8px;font-weight:700;letter-spacing:1.8px;color:#92b5de}
.mines-header-actions{margin-left:auto;display:flex;gap:6px}
.mines-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid #ffffff0e;border-radius:12px;background:#ffffff06;color:#d9eaff;font-size:18px;flex-shrink:0}
.mines-icon svg{width:19px;height:19px}
.mines-wallet{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:41px;flex:none}
.mines-wallet-label{color:#b5c2d5;font-size:10px;display:block;margin-bottom:3px}
.mines-wallet strong{display:flex;align-items:center;gap:6px;font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}
.mines-wallet strong small{font-size:9px;color:#99abc2;letter-spacing:.5px;font-weight:500}
.mines-small-gem{display:inline-flex;align-items:center;width:18px;height:18px;flex-shrink:0}
.mines-small-gem svg{width:100%;height:100%}
.mines-live-status{font-size:10px;color:#adbdcf;display:flex;align-items:center;gap:6px;background:#ffffff05;border:1px solid #ffffff08;padding:7px 9px;border-radius:9px}
.mines-live-status:before{content:'';width:5px;height:5px;border-radius:50%;background:#8796aa}
.mines-live-status.connected{color:#9ed4fc;background:#239dff0c}
.mines-live-status.connected:before{background:#47b8ff;box-shadow:0 0 8px #47b8ff60}
.mines-coefficients{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;min-height:37px;flex:none}
.mines-coefficients>span{padding:5px 2px;border:1px solid #ffffff08;border-radius:9px;text-align:center;background:#ffffff04;min-width:0}
.mines-coefficients small{display:block;font-size:7px;line-height:1.2;letter-spacing:.4px;text-transform:uppercase;color:#8fa4bf}
.mines-coefficients strong{display:block;font-size:12px;line-height:1.5;color:#b6c8dd;font-weight:600;font-variant-numeric:tabular-nums}
.mines-coefficients .next{background:#2a9fff14;border-color:#2a9fff35}
.mines-coefficients .next strong{color:#90d5ff}
.mines-board-wrap{position:relative;display:grid;place-items:center;flex:1;min-height:180px;isolation:isolate}
.mines-board-wrap:before{content:'';position:absolute;inset:0 -14px;z-index:-1;background:radial-gradient(ellipse at 40% 45%,#1876e626,transparent 72%);pointer-events:none}
.mines-board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));gap:8px;aspect-ratio:1;width:min(100%,max(180px,calc(var(--mines-height) - 353px)));max-width:420px}
.mines-cell{position:relative;min-width:0;min-height:0;border:1px solid #8fbef523;border-radius:clamp(10px,3vw,16px);background:linear-gradient(145deg,#354961,#27374c 65%);box-shadow:inset 0 1px 0 #d8ecff13,0 3px 5px #080d171a;display:grid;place-items:center;overflow:hidden;touch-action:manipulation;transition:transform .13s,opacity .18s;aspect-ratio:1;padding:0}
.mines-cell:active:not(:disabled){transform:scale(.94)}
.mines-cell:disabled{opacity:1;cursor:default}
.mines-cell-seal{display:grid;place-items:center;width:55%;aspect-ratio:1;border:1px solid #aecbf51c;border-radius:9px;transform:rotate(-22deg);color:#b7d4fa30;font-size:clamp(14px,4vw,22px);font-weight:750;letter-spacing:-1px;background:#cadfff03}
.mines-cell.gram,.mines-cell.gift{border-color:#50b9ff6b;background:linear-gradient(145deg,#287eb150,#16437280);box-shadow:inset 0 1px 0 #a9eaff2a,0 0 14px #268fff0e}
.mines-cell.mine{background:linear-gradient(145deg,#8e2c3d,#4d2030);border-color:#ff7185b3;color:#ffc0c9;box-shadow:inset 0 0 0 1px #ff9aaa24,0 0 14px #ff345c30}
.mines-cell.hazard{background:#332c39;border-color:#c27e9b25;color:#a98097;opacity:.55}
.mines-cell-art{display:grid;place-items:center;width:76%;height:76%;filter:drop-shadow(0 3px 5px #001b3040);pointer-events:none}
.mines-cell-art>svg,.mines-cell-art>img{width:100%;height:100%;object-fit:contain}
.mines-cell.mine .mines-cell-art,.mines-cell.hazard .mines-cell-art{width:60%;height:60%}
.mines-cell.is-new .mines-cell-art{animation:mines-reveal .48s cubic-bezier(.25,.65,.25,1)}
.mines-cell.gift .mines-cell-art{color:#b4e6ff}
.mines-cell.is-new.gift .mines-cell-art,.mines-cell.is-new.gram .mines-cell-art{animation-duration:.21s}
.mines-cell.safe .mines-cell-art{opacity:.45}
.mines-revealing [data-mines-outcome],.mines-revealing .mines-status{visibility:hidden}
@keyframes mines-reveal{from{opacity:0;transform:translateY(7px) scale(.6) rotate(-10deg)}to{opacity:1;transform:none}}
.mines-outcome{position:absolute;inset:auto 10px;top:50%;transform:translateY(-50%);padding:15px 13px;border-radius:17px;text-align:center;background:#0d3149f2;border:1px solid #5ecaff59;box-shadow:0 12px 35px #07111a70;pointer-events:none}
.mines-outcome strong{display:block;color:#b9eaff;font-size:19px;font-weight:750}
.mines-outcome span{display:block;color:#c2d9ea;font-size:11px;line-height:1.5;margin-top:5px;overflow-wrap:anywhere}
.mines-outcome.lost{background:#412333f5;border-color:#e784a354}
.mines-outcome.lost strong{color:#ffc0d0}
.mines-outcome.lost span{color:#eac4d3}
.mines-exploding .mines-outcome.lost{visibility:hidden}
.mines-impact{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:clip;border-radius:18px;contain:layout style}
.mines-impact-core,.mines-impact-ring,.mines-impact-spark{position:absolute;display:block;will-change:transform,opacity}
.mines-impact-core{border-radius:50%;background:radial-gradient(circle,#ffe3e8 0%,#ff8c9eb8 16%,#f7436578 35%,transparent 69%)}
.mines-impact-ring{border:2px solid #ff9daf;border-radius:50%;box-shadow:0 0 12px #ff45683d,inset 0 0 10px #ff456829}
.mines-impact-spark{width:6px;height:10px;border-radius:3px;background:#ff9aaa}
.mines-wallet .currency-art,.mines-amount-row .currency-art{width:18px;height:18px}
.mines-source-switch .currency-art{width:20px;height:20px}
.mines-status{min-height:25px;display:flex;align-items:center;justify-content:center;flex:none;font-size:10px;line-height:1.4;color:#b9c9dc;text-align:center;margin:0}
.mines-controls{flex:none;border:1px solid #ffffff10;padding:11px;border-radius:19px;background:linear-gradient(145deg,#29313c,#252b35);box-shadow:inset 0 1px 0 #ffffff05;display:flex;flex-direction:column;gap:9px}
.mines-action-row{display:flex;gap:10px;min-width:0}
.mines-source-switch{display:flex;border:1px solid #ffffff0c;border-radius:12px;padding:3px;background:#191f28;flex:none}
.mines-source-switch button{width:36px;height:36px;border-radius:9px;background:transparent;color:#91a6c0;display:grid;place-items:center}
.mines-source-switch button[aria-pressed=true]{background:#3576a443;box-shadow:inset 0 0 0 1px #65bfff3b;color:#a4dcff}
.mines-source-switch svg{width:20px;height:20px}
.mines-primary{flex:1;min-width:0;min-height:44px;background:#229ef2;border:1px solid #6dc7ff33;box-shadow:0 4px 15px #0780df20,inset 0 1px 0 #ffffff20;border-radius:12px;color:#fff;font-size:13px;font-weight:700;padding:9px;line-height:1.3;touch-action:manipulation}
.mines-primary:disabled{opacity:.55;cursor:default}
html[data-theme] body .mines-page .mines-primary[data-mines-waiting-cell=true]:disabled{opacity:1;background:var(--action-fill);color:var(--action-ink);border-color:transparent;box-shadow:inset 0 1px 1px #fff7;text-shadow:none}
.mines-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mines-counts button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border:1px solid #ffffff08;border-radius:10px;background:#ffffff04;color:#c4d2e4;font-size:14px;font-weight:650;touch-action:manipulation}
.mines-counts button[aria-pressed=true]{background:#2b9ef21b;border-color:#59b7ff50;color:#b1e1ff}
.mines-counts svg{width:17px;height:17px}
.mines-counts small{font-size:9px;font-weight:450}
.mines-counts button:disabled{opacity:.65}
.mines-amount-row{display:flex;gap:9px}
.mines-amount-row>button{width:43px;height:43px;flex:none;border:1px solid #ffffff0c;border-radius:11px;background:#ffffff06;font-size:25px;color:#cbd9ed;touch-action:manipulation}
.mines-amount-row>button:disabled{opacity:.4}
.mines-amount-row label{min-width:0;flex:1;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #ffffff0c;border-radius:11px;background:#141c262b;padding:0 9px}
.mines-amount-row input{min-width:0;width:74px;max-width:100%;text-align:center;background:none;border:0;color:#f2f7ff;font-size:16px;outline:none;font-variant-numeric:tabular-nums}
.mines-amount-row label>span:last-child{font-size:9px;color:#91a6c0}
.mines-footnote{font-size:8px;color:#8da2bc;text-align:center;line-height:1.3;margin:0}
.mines-gift-pick{width:100%;min-height:43px;display:flex;gap:9px;align-items:center;border:1px solid #61b8ff30;background:#229ef20b;border-radius:11px;color:#c4e5ff;padding:7px 10px;text-align:left;font-size:11px}
.mines-gift-pick svg{width:20px;height:20px;flex:none}
.mines-gift-pick>span:last-child{margin-left:auto}
.mines-sheet-copy,.mines-rules p{color:#bacce1;font-size:13px;line-height:1.7;margin:12px 0}
.mines-rules b{color:#e5f4ff}
.mines-rules small{display:block;color:#94aecb;font-size:11px;line-height:1.6;margin-top:18px}
.mines-gift-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mines-gift-list button{background:#268dd310;border:1px solid #5aa8e32b;border-radius:15px;padding:10px 6px;text-align:center;min-width:0;color:#e7f3ff}
.mines-gift-list button:disabled{opacity:.45}
.mines-gift-list button>span{display:grid;place-items:center;height:70px;margin-bottom:7px}
.mines-gift-list img,.mines-gift-list svg{width:100%;height:100%;object-fit:contain}
.mines-gift-list strong{display:block;font-size:10px;overflow-wrap:anywhere}
.mines-gift-list small{display:block;margin-top:5px;color:#acd8fd;font-size:10px}
.mines-history-list>button{width:100%;display:flex;align-items:center;gap:11px;padding:14px 0;border-bottom:1px solid #ffffff0c;text-align:left;color:#ecf5ff;min-width:0}
.mines-history-icon{width:36px;height:36px;padding:7px;display:grid;place-items:center;border-radius:11px;background:#219ef21c;flex:none}
.mines-history-icon svg{width:100%;height:100%}
.mines-history-icon.lost{color:#e69eb8;background:#cc577c15}
.mines-history-list>button>span:nth-child(2){flex:1;min-width:0}
.mines-history-list strong{display:block;font-size:13px}
.mines-history-list small{display:block;color:#99b2ce;font-size:10px;line-height:1.6;margin-top:3px}
.mines-history-list b{font-size:13px;text-align:right;color:#b7dfff}
.mines-history-list b small{font-size:8px}
.mines-history-back{color:#86caff;font-size:12px;margin:0 0 17px}
.mines-history-facts{font-size:13px;line-height:1.8;color:#bbd2e9}
.mines-history-facts b{color:#f0f7ff}
.mines-history-facts details{background:#2198e20b;padding:13px;border-radius:13px;border:1px solid #59b8ff1a}
.mines-history-facts code{display:block;overflow-wrap:anywhere;white-space:pre-wrap;color:#c4dff5;font-size:11px;line-height:1.6;user-select:all}
.game-mode-mines{grid-column:1/-1;background:linear-gradient(115deg,#1a3a5c,#1f507b);border-color:#64b8fc45}
.mode-mines-art{position:absolute;right:18px;bottom:12px;width:160px;height:85px;display:flex;align-items:center;justify-content:center;transform:rotate(-10deg);gap:6px}
.mode-mines-tile{display:grid;place-items:center;width:54px;height:62px;border:1px solid #89d1ff5c;background:linear-gradient(145deg,#5ba8dd73,#2d72a378);border-radius:12px;box-shadow:0 8px 16px #00152b40}
.mode-mines-tile svg{width:38px;height:38px;color:#90caff}
.mode-mines-tile:nth-child(2){transform:translateY(-12px)}
.light-theme.mines-view,.light-theme.mines-view .mini-app{background:#edf3fa}
.light-theme .mines-page{color:#172c44}
.light-theme .mines-cell{background:linear-gradient(145deg,#d4e4f6,#bacee5);border-color:#7ba3cb57}
.light-theme .mines-cell-seal{color:#5c82af70;border-color:#7299c640}
.light-theme .mines-cell.gram,.light-theme .mines-cell.gift{background:linear-gradient(145deg,#bde9ff,#90c6ed);border-color:#3896dc77}
.light-theme .mines-controls{background:#dce8f5;border-color:#9bb5d22e}
.light-theme .mines-wallet-label,.light-theme .mines-status,.light-theme .mines-eyebrow,.light-theme .mines-footnote{color:#587392}
.light-theme .mines-wallet strong small,.light-theme .mines-coefficients strong{color:#355a7d}
.light-theme .mines-source-switch{background:#c4d9eb}
.light-theme .mines-icon,.light-theme .mines-amount-row>button{color:#416487;background:#c4d9ed55;border-color:#8ca6c347}
.light-theme .mines-amount-row input{color:#163450}
.light-theme .mines-counts button{color:#395d80;background:#caddef70}
.light-theme .mines-counts button[aria-pressed=true]{color:#176bad;background:#9cccf15e}
.light-theme .mines-sheet-copy,.light-theme .mines-rules p,.light-theme .mines-history-facts{color:#486580}
.light-theme .mines-rules b,.light-theme .mines-history-facts b,.light-theme .mines-gift-list button,.light-theme .mines-history-list>button{color:#173955}
.light-theme .mines-history-facts code{color:#315b7f}
@media(max-height:720px){.mines-page{gap:6px}.mines-controls{padding:9px;gap:7px}.mines-heading h1{font-size:24px}.mines-board{gap:6px;width:min(100%,max(180px,calc(var(--mines-height) - 320px)))}.mines-status{font-size:9px;min-height:22px}}
@media(max-width:350px){.mines-view .screen{padding-left:10px;padding-right:10px}.mines-icon{width:33px;height:33px}.mines-header-actions{gap:4px}.mines-primary{font-size:12px}.mines-source-switch button{width:30px}.mines-board{gap:6px}.mines-coefficients{gap:4px}.mines-coefficients strong{font-size:11px}.mode-mines-art{right:8px}}
@media(prefers-reduced-motion:reduce){.mines-cell,.mines-cell-art{animation:none!important;transition:none!important}}
.reduce-motion .mines-cell-art{animation:none!important}
.mines-icon.mines-inventory-link{color:#91d9ff;background:#168bdb21;border-color:#53bbff4a}
.mines-page.mines-celebrating .mines-outcome,.mines-page.mines-celebrating .mines-status{visibility:hidden}
.mines-outcome.won{top:auto;bottom:8px;transform:none;padding:10px 12px}
.mines-win{position:fixed;inset:0;z-index:18;pointer-events:none;overflow:hidden;contain:layout style}
.mines-win-shade{position:absolute;inset:0;background:#07101f66}
.mines-win-halo{position:absolute;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,#43b5ff54,transparent 68%);will-change:transform,opacity}
.mines-win-gift{position:absolute;display:grid;place-items:center;border-radius:28px;background:linear-gradient(145deg,#226397,#12324d);border:1px solid #8cdcff80;box-shadow:0 18px 44px #050c1a66,inset 0 1px #e6f8ff26;will-change:transform,opacity}
.mines-win-gift img{display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit}
.mines-win-caption{position:absolute;width:280px;max-width:calc(100vw - 30px);text-align:center;color:#f5fbff;will-change:transform,opacity}
.mines-win-caption>span{display:block;font-size:9px;font-weight:750;letter-spacing:2px;color:#9edfff}
.mines-win-caption strong{display:block;margin:5px 0 4px;font-size:23px;line-height:1.1;font-weight:750;text-shadow:0 2px 15px #08111f}
.mines-win-caption small{font-size:11px;color:#d0e4f6}
.light-theme .mines-win-shade{background:#14284366}
.mines-page [hidden]{display:none!important}
.mines-page{min-height:520px}
.mines-round-meta{font-size:11px;text-align:center;color:#b6d3ed;line-height:1.4}
.mines-page.playing .mines-counts,.mines-page.playing .mines-amount-row,.mines-page.playing .mines-gift-pick,.mines-page.playing .mines-footnote,.mines-page.playing .mines-source-switch{display:none!important}
.mines-page.playing .mines-board{width:min(100%,max(180px,calc(var(--mines-height) - 275px)))}
@media(max-height:760px) and (max-width:500px){
  .mines-page{gap:6px;min-height:500px}
  .mines-heading{min-height:38px}
  .mines-heading h1{font-size:24px}
  .mines-eyebrow,.mines-wallet-label,.mines-footnote{display:none}
  .mines-wallet{min-height:30px}
  .mines-coefficients{min-height:32px}
  .mines-coefficients>span{padding:3px 2px}
  .mines-controls{padding:9px;gap:7px}
  .mines-status{min-height:20px;font-size:9px}
  .mines-board{width:min(100%,max(180px,calc(var(--mines-height) - 306px)))}
  .mines-page.playing .mines-board{width:min(100%,max(180px,calc(var(--mines-height) - 235px)))}
}

.mines-flip-cover{position:absolute;inset:0;z-index:2;display:grid;place-items:center;border-radius:inherit;background:linear-gradient(145deg,#354961,#27374c 65%);pointer-events:none}.light-theme .mines-flip-cover{background:linear-gradient(145deg,#dceafa,#bfd4eb)}

/* telegram-ui.css */
/* Telegram iOS control proportions, adapted to the existing game shell.
   Surfaces are static: no animated blur, filters, shadows or layout. */
:root{
  --tg-bg:#121418;
  --tg-surface:#1d2026;
  --tg-raised:#262930;
  --tg-field:#171a1f;
  --tg-text:#f5f6f8;
  --tg-secondary:#a1a7b1;
  --tg-separator:#ffffff0e;
  --tg-accent:#008bff;
  --tg-accent-text:#64bbff;
  --tg-selection:#ffffff10;
  --tg-control-border:#ffffff0c;
  --tg-sheet:#1d2026fc;
  --tg-nav:#1d2026f5;
  --tg-ease:cubic-bezier(.22,.8,.25,1);
  --bg:var(--tg-bg);
  --surface:var(--tg-surface);
  --text:var(--tg-text);
  --secondary:var(--tg-secondary);
  --separator:var(--tg-separator);
  --blue:var(--tg-accent);
  --blue-light:#69beff;
  --accent:var(--tg-accent);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",sans-serif;
}
:root[data-theme="light"]{
  --tg-bg:#f4f6f8;
  --tg-surface:#fff;
  --tg-raised:#e9edf2;
  --tg-field:#edf1f6;
  --tg-text:#182433;
  --tg-secondary:#657487;
  --tg-separator:#172d4614;
  --tg-accent-text:#087ac7;
  --tg-selection:#fff;
  --tg-control-border:#172d4612;
  --tg-sheet:#f8fafcfc;
  --tg-nav:#fffffff5;
  --bg:var(--tg-bg);
  --surface:var(--tg-surface);
  --text:var(--tg-text);
  --secondary:var(--tg-secondary);
  --separator:var(--tg-separator);
  --blue:var(--tg-accent);
}
html:not([data-theme="light"]),body:not(.light-theme),body:not(.light-theme) .mini-app,
body:not(.light-theme).mines-view,body:not(.light-theme).mines-view .mini-app{background:var(--tg-bg)}
body:not(.light-theme) .space-wallpaper:after{background:linear-gradient(180deg,#121418,transparent 26%,#121418b8 76%)}
body:not(.light-theme) .wallet-card,body:not(.light-theme) .settings-group,
body:not(.light-theme) .bets-card,body:not(.light-theme) .referral-card{
  background:var(--tg-surface);border-color:var(--tg-control-border);box-shadow:inset 0 1px 0 #ffffff03;
}
body:not(.light-theme) .inventory-collection .inventory-item,
body:not(.light-theme) .inventory-empty-state{background:var(--tg-surface);border-color:var(--tg-control-border)}
body:not(.light-theme) .referral-link-row,
body:not(.light-theme) .search-field,
body:not(.light-theme) .bet-amount-row,
body:not(.light-theme) .wallet-address,
body:not(.light-theme) .detail-info{background:var(--tg-field);border-color:var(--tg-control-border)}
body:not(.light-theme) .splash{background:var(--tg-bg)}
body:not(.light-theme) .next-round-button,
body:not(.light-theme) .queued-bet{background:var(--tg-surface)}

/* Native system fonts remain local; SF Pro is used when the OS supplies it. */
button,input{font-family:inherit}
button{touch-action:manipulation}
button:focus-visible,input:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:3px}
.glass{backdrop-filter:none;-webkit-backdrop-filter:none}
.app-header .balance-pill,.game-wallet{box-shadow:inset 0 1px 0 #ffffff05}
body:not(.light-theme) .app-header .balance-pill,
body:not(.light-theme) .game-wallet{background:var(--tg-raised);border-color:var(--tg-control-border)}
body:not(.light-theme) .app-header .icon-button,
body:not(.light-theme) .game-settings{background:var(--tg-raised);color:#bdc4cf;border-color:var(--tg-control-border)}

/* The primary capsule follows the kit's 48 / 20 / 17 proportions. */
.primary-button,.wallet-sheet .primary-button,.bet-button{
  min-height:48px;border-radius:24px;padding:12px 20px;
  background:var(--tg-accent);color:#fff;font-size:17px;font-weight:510;
  line-height:24px;letter-spacing:-.25px;
  box-shadow:inset 0 1px 0 #ffffff18;
  transition:opacity .16s ease,background-color .2s ease;
}
.light-theme .primary-button,.light-theme .bet-button,
.light-theme .wallet-sheet .primary-button{background:var(--tg-accent)}
.wallet-actions button,.light-theme .wallet-actions button{
  min-height:48px;border-radius:24px;padding:10px;
  background:var(--tg-accent);color:#fff;
  font-size:15px;font-weight:510;line-height:20px;letter-spacing:-.15px;
  border-color:transparent;box-shadow:inset 0 1px 0 #ffffff18;
  transition:opacity .16s ease;
}
.wallet-actions button .icon{width:16px;height:16px}
.referral-share,.light-theme .referral-share{
  min-height:48px;border-radius:24px;padding:10px 16px;background:var(--tg-accent);
  font-size:15px;font-weight:510;line-height:20px;letter-spacing:-.15px;
  box-shadow:inset 0 1px 0 #ffffff18;
}
.cashout-button,.light-theme .cashout-button{background:#22a675}
.cancel-bet-button,.result-button{min-height:48px;border-radius:24px}
.primary-button.cashout-receipt:disabled,.light-theme .primary-button.cashout-receipt:disabled{background:#178a59}
.primary-button:active:not(:disabled),.wallet-actions button:active:not(:disabled),
.referral-share:active:not(:disabled),.bet-button:active:not(:disabled),
.cancel-bet-button:active:not(:disabled),.mines-primary:active:not(:disabled){opacity:.8}

/* Tabs retain the four existing routes and the translated active indicator. */
body:not(.light-theme) .bottom-nav,body:not(.light-theme).game-view .bottom-nav{
  background:var(--tg-nav);border-color:var(--tg-control-border);
  box-shadow:0 8px 40px #0000001f,inset 0 1px 0 #ffffff05;
}
.light-theme .bottom-nav,.light-theme.game-view .bottom-nav{
  background:var(--tg-nav);border-color:var(--tg-control-border);
  box-shadow:0 8px 40px #00000014,inset 0 1px 0 #fff;
}
body:not(.light-theme) .nav-fade,body:not(.light-theme).game-view .nav-fade{background:linear-gradient(transparent,#121418f5 65%)}
.nav-selection,.light-theme .nav-selection{
  background:var(--tg-selection);border-color:var(--tg-control-border);
  box-shadow:inset 0 1px 0 #ffffff05;
  transition:transform .32s var(--tg-ease);
}
.nav-item{font-weight:510;transition:opacity .15s ease,color .2s ease}
.nav-item.active,.light-theme .nav-item.active{color:var(--tg-accent-text)}
.nav-item.active .icon{filter:none}
.nav-item:active:not(:disabled){opacity:.56}

/* Capsule selection follows the Figma tab bar: 3 px inset and a 35 px pill. */
.segmented,.light-theme .segmented{
  padding:3px;border-radius:24px;border:1px solid var(--tg-control-border);
  background:var(--tg-field);gap:2px;
}
.segment,.light-theme .segment{
  min-height:35px;min-width:0;padding:8px 18px;border-radius:20px;
  font-size:14px;font-weight:510;line-height:18px;letter-spacing:-.08px;
  color:var(--tg-secondary);background:transparent;
  transition:opacity .15s ease,color .18s ease,background-color .18s ease;
}
.segment.active,.light-theme .segment.active{
  background:var(--tg-selection);color:var(--tg-text);
  border-color:transparent;box-shadow:0 1px 3px #00000012,inset 0 1px 0 #ffffff04;
}
.segment:active:not(:disabled){opacity:.6}

/* Inset lists and a real 44 px switch hit area around the 51 x 31 track. */
.settings-group{border-radius:20px}
.setting-row{min-height:57px;padding:7px 14px;gap:12px}
.setting-label{font-size:17px;font-weight:400;line-height:22px;letter-spacing:-.3px}
.setting-row+.setting-row:before,.light-theme .setting-row+.setting-row:before{
  left:55px;background:var(--tg-separator);height:1px;transform:scaleY(.5);transform-origin:top;
}
.setting-arrow{color:var(--tg-secondary);opacity:.65}
.switch,.light-theme .switch,.switch[aria-checked=true],.light-theme .switch[aria-checked=true]{
  width:51px;height:44px;flex:none;padding:0;border:0;border-radius:22px;
  background:transparent;box-shadow:none;position:relative;overflow:visible;transition:opacity .15s ease;
}
.switch:before{
  content:"";position:absolute;left:0;right:0;top:6.5px;height:31px;border-radius:18px;
  background:var(--tg-raised);box-shadow:inset 0 0 0 1px var(--tg-control-border);
  transition:background-color .2s ease;
}
.switch:after,.light-theme .switch:after{
  left:2px;top:8.5px;width:27px;height:27px;border-radius:50%;background:#fff;
  box-shadow:0 1px 3px #00000033;transform:none;
  transition:transform .25s cubic-bezier(.3,1.25,.4,1);
}
.switch[aria-checked=true]:before{background:#31c56a}
.switch[aria-checked=true]:after{transform:translateX(20px)}
.switch:active:not(:disabled){opacity:.82}
.menu-row{min-height:48px;font-size:17px;font-weight:400;line-height:22px;letter-spacing:-.3px}
.menu-row+.menu-row{border-color:var(--tg-separator)}
.friend-row,.light-theme .friend-row,.mines-history-list>button{border-bottom-color:var(--tg-separator)}

/* A static translucent sheet avoids a per-frame backdrop render. */
.sheet-backdrop,.light-theme .sheet-backdrop{
  backdrop-filter:none;-webkit-backdrop-filter:none;background:#0007;
  transition:opacity .28s ease;
}
.bottom-sheet,.light-theme .bottom-sheet,body:not(.light-theme) .bottom-sheet{
  background:var(--tg-sheet);border:1px solid var(--tg-control-border);border-bottom:0;
  border-radius:28px 28px 0 0;box-shadow:0 8px 40px #0000001f;
  padding-top:34px;transition:transform .4s var(--tg-ease);
}
.sheet-grabber,.light-theme .sheet-grabber{top:9px;width:36px;height:5px;background:var(--tg-secondary);opacity:.45}
.sheet-close,.light-theme .sheet-close{
  top:14px;right:12px;width:44px;height:44px;background:transparent;color:var(--tg-secondary);
  box-shadow:none;border:0;isolation:isolate;transition:opacity .15s ease;
}
.sheet-close:before{
  content:"";position:absolute;inset:6px;border-radius:50%;background:var(--tg-raised);z-index:-1;
}
.sheet-close:active:not(:disabled){opacity:.6}
.sheet-title{font-size:23px;line-height:28px;letter-spacing:-.55px;font-weight:650;margin-right:36px}
.sheet-copy,.wallet-sheet .sheet-copy{color:var(--tg-secondary)}
.text-button,.wallet-connect-link,.mode-open,.referral-retry,.light-theme .wallet-connect-link{color:var(--tg-accent-text)}
.bet-amount-row{min-height:48px;border-radius:14px}
.bet-amount-row input{min-height:46px}
.wallet-action-amount input{min-height:48px}
.bj-tables-button,.bj-tools button,.bj-sheet-secondary{min-height:44px;border-radius:14px}
.bj-tables-button,.bj-tools button{transition:opacity .15s ease}
.bj-tables-button:active:not(:disabled),.bj-tools button:active:not(:disabled){opacity:.62}
body:not(.light-theme) .bj-bet-panel{background:var(--tg-surface);border-color:var(--tg-control-border);box-shadow:inset 0 1px 0 #ffffff03}
.bj-room-switch,.light-theme .bj-room-switch{background:var(--tg-field);border-color:var(--tg-control-border);border-radius:22px;padding:3px}
.bj-room-switch button{min-height:44px;border-radius:19px;transition:opacity .15s ease,background-color .18s ease}
.bj-room-switch button[aria-pressed="true"],.light-theme .bj-room-switch button[aria-pressed="true"]{background:var(--tg-selection);border-color:var(--tg-control-border);box-shadow:0 1px 3px #00000012}
.bj-room-switch button:active:not(:disabled){opacity:.6}
.bj-deal{height:48px;min-height:48px;border-radius:24px;background:var(--tg-accent);font-size:17px;font-weight:510;line-height:24px}

/* Effect slider: 6 px track, 38 x 24 thumb; the kit's optional ticks are omitted. */
.settings-effects{padding:18px 16px 12px;margin-top:14px;border-radius:20px;background:var(--tg-surface);border:1px solid var(--tg-control-border)}
.settings-effects-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px;font-weight:510}
.settings-effects-heading output{color:var(--tg-secondary);font-size:13px;font-variant-numeric:tabular-nums}
.settings-effects-track{display:flex;align-items:center;gap:12px;min-height:48px}
.settings-effects-track>span{display:grid;place-items:center;flex:none;width:22px;color:var(--tg-secondary)}
.settings-effects-track>span:first-child svg{width:15px;height:15px}
.settings-effects-track>span:last-child svg{width:22px;height:22px}
.settings-effects-track .range{flex:1;min-width:0;width:100%;margin:0;cursor:pointer;touch-action:pan-y}
.settings-effects p{font-size:12px;line-height:1.4;margin:0;color:var(--tg-secondary)}
.range{
  height:44px;border-top:19px solid transparent;border-bottom:19px solid transparent;
  background:linear-gradient(to right,var(--tg-accent) 0%,var(--tg-accent) var(--range-value,70%),var(--tg-raised) var(--range-value,70%),var(--tg-raised) 100%);
  background-clip:padding-box;border-radius:15px;
}
.range::-webkit-slider-thumb{
  width:38px;height:24px;border-radius:14px;background:#fff;
  box-shadow:0 .5px 4px #0000001f,0 6px 13px #00000014;
}
.range::-moz-range-thumb{
  width:38px;height:24px;border-radius:14px;background:#fff;
  box-shadow:0 .5px 4px #0000001f,0 6px 13px #00000014;
}

/* Mines' art, grid, result animation and payout palette stay game-specific. */
body:not(.light-theme) .mines-controls{background:var(--tg-surface);border-color:var(--tg-control-border);box-shadow:inset 0 1px 0 #ffffff03}
body:not(.light-theme) .mines-source-switch,
body:not(.light-theme) .mines-amount-row label{background:var(--tg-field);border-color:var(--tg-control-border)}
.mines-primary{min-height:48px;background:var(--tg-accent);font-weight:600;box-shadow:inset 0 1px 0 #ffffff18;transition:opacity .16s ease}
.mines-counts button{min-height:44px}
.mines-source-switch button{width:44px;height:44px}
.mines-amount-row>button{width:44px;height:44px}
.mines-counts button,.mines-amount-row>button,.mines-source-switch button,.mines-icon{transition:opacity .15s ease,background-color .18s ease}
.mines-counts button:active:not(:disabled),.mines-amount-row>button:active:not(:disabled),
.mines-source-switch button:active:not(:disabled),.mines-icon:active:not(:disabled){opacity:.65}
.mines-risk-note{color:var(--tg-secondary);font-size:11px;line-height:1.4;margin:6px 0}
.mines-page{min-height:min-content}
.mines-board-wrap{container-type:size;min-height:252px}
.mines-page .mines-board,.mines-page.playing .mines-board{width:min(100%,max(252px,calc(var(--mines-height) - 445px)))}
@supports(width:1cqh){.mines-page .mines-board,.mines-page.playing .mines-board{width:min(100%,100cqh)}}

.page-enter{animation:telegram-page-enter .24s var(--tg-ease)}
@keyframes telegram-page-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:360px){
  .setting-label{font-size:16px}
  .segment{padding-left:11px;padding-right:11px}
  .wallet-actions button{font-size:14px;gap:5px;padding-left:8px;padding-right:8px}
  .sheet-title{font-size:22px}
}
@media(prefers-reduced-motion:reduce){
  .page-enter{animation:none}
  .primary-button,.wallet-actions button,.referral-share,.nav-selection,.nav-item,.segment,
  .switch,.switch:before,.switch:after,.sheet-backdrop,.bottom-sheet,.sheet-close,.bj-room-switch button,
  .mines-primary,.mines-counts button,.mines-amount-row>button,.mines-source-switch button,.mines-icon{transition:none}
}
.reduce-motion .page-enter{animation:none}
.reduce-motion .primary-button,.reduce-motion .wallet-actions button,.reduce-motion .referral-share,
.reduce-motion .nav-selection,.reduce-motion .nav-item,.reduce-motion .segment,.reduce-motion .switch,
.reduce-motion .switch:before,.reduce-motion .switch:after,.reduce-motion .sheet-backdrop,
.reduce-motion .bottom-sheet,.reduce-motion .sheet-close,.reduce-motion .mines-primary,
.reduce-motion .bj-room-switch button,
.reduce-motion .mines-counts button,.reduce-motion .mines-amount-row>button,
.reduce-motion .mines-source-switch button,.reduce-motion .mines-icon{transition:none}

/* context-menu.css */
/* Anchored Telegram-style settings. context-menu.js owns opening/closing;
   bounded masks and opacity reveal the static material without backdrop blur. */
.context-menu-backdrop{position:fixed;inset:0;z-index:60;background:#00000045;touch-action:manipulation}
.context-menu-backdrop[hidden],.context-menu[hidden]{display:none!important}
/* A dismissed sheet already releases the app in JS. Its fading layer must not
   swallow a quick tap that reopens settings above it. */
.sheet-backdrop:not(.visible),.bottom-sheet:not(.visible){pointer-events:none}
.context-menu-backdrop[data-state=closing]{opacity:0}
.context-menu{
  --context-fill:#2d2f35fa;
  --context-highlight:#ffffff12;
  --context-divider:#ffffff12;
  position:fixed;z-index:61;box-sizing:border-box;width:300px;max-width:calc(100vw - 20px);
  padding:4px 0 10px;border:1px solid #ffffff18;border-radius:20px;
  color:var(--tg-text,#f5f6f8);background:var(--context-fill);
  box-shadow:0 18px 54px #00000052,0 3px 12px #00000024,inset 0 1px 0 #ffffff08;
  overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;
  transform-origin:var(--context-origin-x,100%) var(--context-origin-y,0px);
  scrollbar-width:thin;scrollbar-color:#ffffff2b transparent;
  -webkit-tap-highlight-color:transparent;isolation:isolate;
}
.light-theme .context-menu{
  --context-fill:#f4f4f8fc;--context-highlight:#172d460c;--context-divider:#172d4610;
  border-color:#ffffffd1;box-shadow:0 18px 54px #17253626,0 3px 12px #17253612,inset 0 1px 0 #fff;
  scrollbar-color:#172d462b transparent;
}
.context-menu:focus{outline:none}
/* Keep the terminal compositor frame if main-thread cleanup is delayed. */
.context-menu[data-state=closing]{opacity:0;transform:scale(.1)}
/* A bounded mask grows the material from the real button. Controls keep their
   final font/layout; no text stretching, blend, filters, 3D or backdrop blur. */
.context-menu[data-context-morph=true]{z-index:62;background:#2d2f35;box-shadow:inset 0 1px 0 #ffffff08;transform:none}
.light-theme .context-menu[data-context-morph=true]{background:#f4f4f8;box-shadow:inset 0 1px 0 #fff}
.context-menu[data-context-morph=true][data-state=closing]{opacity:1;transform:none;pointer-events:none;clip-path:var(--context-closed-clip)}
.context-menu-morph-content{position:relative}
.context-menu-morph-icon{position:fixed;z-index:63;display:block;pointer-events:none!important;opacity:0}
.context-menu-morph-icon[data-state=return]{opacity:1}
.context-menu-morph-icon>:is(svg,img){display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
body :is([data-action=menu],[data-action=game-settings])[aria-expanded=true]{opacity:1;transform:none;transition:none}
.context-menu button:focus-visible,.context-menu input:focus-visible{outline-offset:-3px;outline:2px solid var(--tg-accent-text,#64bbff)}
.context-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:42px;padding:0 2px 0 14px}
.context-menu-heading h2{margin:0;color:var(--tg-secondary,#a1a7b1);font-size:13px;font-weight:510;line-height:18px;letter-spacing:-.08px}
.context-menu-close{display:grid;place-items:center;flex:none;width:44px;height:44px;border:0;border-radius:14px;background:transparent;color:var(--tg-secondary,#a1a7b1);transition:background-color .3s ease,opacity .15s ease}
.context-menu-close .icon{width:17px;height:17px}
.context-menu .settings-group{border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.context-menu .setting-row{min-height:48px;padding:2px 14px;gap:12px;color:inherit;background:transparent;border:0;border-radius:0;transition:background-color .3s ease;text-align:left}
.context-menu .setting-row+.setting-row:before{display:none}
.context-menu .setting-icon{display:grid;place-items:center;flex:none;width:22px;height:26px;padding:0;border:0;border-radius:0;color:var(--tg-text,#f5f6f8);background:none;box-shadow:none}
.context-menu .setting-icon .icon{width:22px;height:22px;stroke-width:1.65}
.context-menu .setting-label{min-width:0;flex:1;font-size:17px;line-height:22px;letter-spacing:-.3px;font-weight:400}
.context-menu .setting-label small{display:block;font-size:11px;line-height:15px;color:var(--tg-secondary,#a1a7b1);margin-top:1px;font-weight:400;letter-spacing:0}
.context-menu .setting-arrow{width:17px;height:17px;flex:none;color:var(--tg-secondary,#a1a7b1);opacity:.8}
.context-menu .bj-profile-design{min-height:56px;margin-top:6px;border-top:6px solid var(--context-divider);padding-top:7px;padding-bottom:7px}
.context-menu .switch{display:block;width:51px;height:44px;flex:none;pointer-events:none}
.context-menu .switch:before{top:6.5px;height:31px;border-radius:100px}
.context-menu .switch:after{left:2px;top:8.5px;width:27px;height:27px;border-radius:100px;transition:transform .25s cubic-bezier(.22,1,.36,1)}
.context-menu .setting-row[role=switch][aria-checked=true] .switch:before{background:#34c759}
.context-menu .setting-row[role=switch][aria-checked=true] .switch:after{transform:translateX(20px)}
.context-menu .setting-row[role=switch]:active:not(:disabled) .switch:after{transform:scaleX(1.06)}
.context-menu .setting-row[role=switch][aria-checked=true]:active:not(:disabled) .switch:after{transform:translateX(20px) scaleX(1.06)}
.context-menu .setting-row:active:not(:disabled),.context-menu-close:active:not(:disabled){background:var(--context-highlight);transition-duration:0s}
.context-menu .settings-effects{padding:14px 14px 2px;margin:6px 0 0;border:0;border-top:6px solid var(--context-divider);border-radius:0;background:transparent}
.context-menu .settings-effects-heading{font-size:14px;line-height:19px;font-weight:400}
.context-menu .settings-effects-heading output{font-size:12px}
.context-menu .settings-effects-track{gap:9px;min-height:46px}
.context-menu .settings-effects-track>span{width:18px}
.context-menu .settings-effects-track>span:first-child .icon{width:14px;height:14px}
.context-menu .settings-effects-track>span:last-child .icon{width:19px;height:19px}
.context-menu .settings-effects p{font-size:11px;line-height:15px;margin:0}
@media(hover:hover) and (pointer:fine){.context-menu .setting-row:hover,.context-menu-close:hover{background:var(--context-highlight)}}
@media(max-width:350px){.context-menu .setting-row{padding-left:12px;padding-right:12px;gap:10px}.context-menu .setting-label{font-size:16px}.context-menu-heading{padding-left:12px}}
@media(prefers-reduced-motion:reduce){.context-menu .setting-row,.context-menu-close,.context-menu .switch:before,.context-menu .switch:after{transition:none}}
.reduce-motion .context-menu .setting-row,.reduce-motion .context-menu-close,.reduce-motion .context-menu .switch:before,.reduce-motion .context-menu .switch:after{transition:none}

/* navigation-controls.css */
/* Figma's three-tab capsule: 62 px, 4/3 px insets and a full-height pill.
   Application icons keep their existing meanings. Materials stay static;
   only the selection, content opacity and icon transform are animated. */
:root{
  --tg-control-release:200ms;
  --tg-control-ease:cubic-bezier(.22,1,.36,1);
  --tg-tab-material:#292c32f5;
  --tg-tab-selected:#ffffff12;
}
:root[data-theme="light"]{
  --tg-tab-material:#f0f2f6f7;
  --tg-tab-selected:#fff;
}
.bottom-nav,.game-view .bottom-nav,
body:not(.light-theme) .bottom-nav,body:not(.light-theme).game-view .bottom-nav,
.light-theme .bottom-nav,.light-theme.game-view .bottom-nav{
  width:calc(100% - 40px);max-width:390px;height:62px;padding:3px 4px;
  grid-template-columns:repeat(3,minmax(0,1fr));gap:0;
  border:0;border-radius:999px;background:var(--tg-tab-material);
  box-shadow:0 8px 30px #00000026,inset 0 0 0 1px var(--tg-control-border),inset 0 1px 0 #ffffff08;
  isolation:isolate;
}
.light-theme .bottom-nav,.light-theme.game-view .bottom-nav{
  box-shadow:0 5px 24px #172d4614,inset 0 0 0 1px #fff9;
}
.bottom-nav .nav-selection,.light-theme .bottom-nav .nav-selection{
  left:4px;top:3px;width:calc((100% - 8px)/3);height:56px;
  border:0;border-radius:999px;background:var(--tg-tab-selected);
  box-shadow:inset 0 1px 0 #ffffff08;
  transition:transform .36s var(--tg-control-ease);pointer-events:none;
}
.light-theme .bottom-nav .nav-selection{box-shadow:0 1px 5px #172d4614,inset 0 1px 0 #fff}
.bottom-nav[data-motion-ready="true"] .nav-selection{
  left:0;top:0;width:var(--nav-width);height:var(--nav-height);
  transform:translate(var(--nav-x),var(--nav-y));transition:none;
}
.bottom-nav .nav-item{
  min-width:0;min-height:44px;padding:5px 1px;gap:3px;border-radius:999px;
  background:transparent;color:var(--tg-secondary);font-size:11px;font-weight:510;
  line-height:14px;letter-spacing:-.1px;user-select:none;
  transition:opacity var(--tg-control-release) ease,color .16s ease;
}
.bottom-nav .nav-item .icon{width:24px;height:24px;stroke-width:1.75;filter:none}
.bottom-nav .nav-item.active,.light-theme .bottom-nav .nav-item.active{color:var(--tg-accent-text)}
.bottom-nav .nav-item>span{white-space:nowrap}
.bottom-nav .nav-item:active:not(:disabled):not([aria-disabled="true"]){opacity:.55;transition-duration:0s}
.screen[data-motion-ready="true"]>.page-enter{animation:none}

/* Both tinted and neutral kit buttons use a 48 px capsule with 20 px sides.
   Existing green cash-out and semantic error/disabled colors remain owned by
   their game components. The press feedback never transforms game art. */
.primary-button,.wallet-sheet .primary-button,.bet-button,
.referral-share,.mines-primary,.bj-deal,
.cancel-bet-button,.result-button{
  min-height:48px;border-radius:24px;
  font-size:17px;font-weight:600;line-height:24px;letter-spacing:-.25px;
}
.primary-button,.wallet-sheet .primary-button,.bet-button,.referral-share{padding:12px 20px}
.wallet-actions button,.light-theme .wallet-actions button{
  min-height:48px;border-radius:24px;padding:10px 14px;
  font-size:15px;font-weight:600;line-height:20px;letter-spacing:-.15px;
}
.wallet-actions button.secondary-wallet,.light-theme .wallet-actions button.secondary-wallet{
  color:var(--tg-accent-text);background:var(--tg-raised);
  border:1px solid var(--tg-control-border);box-shadow:inset 0 1px 0 #ffffff05;
}
.referral-share{font-size:15px;line-height:20px;font-weight:600}
.inventory-empty-state .primary-button,.friends-empty .primary-button{
  min-height:44px;border-radius:22px;padding:10px 18px;font-size:15px;line-height:20px;
}
.bj-sheet-secondary{min-height:44px;border-radius:22px}
.mines-counts button,.mines-source-switch,.bj-room-switch{border-radius:24px}
.mines-counts button{border-radius:22px}
.mines-amount-row>button,.mines-source-switch button{border-radius:16px}

/* Native Telegram solid buttons highlight immediately, then recover alpha in
   200 ms. Explicit groups avoid overriding menu rows, mine cells or BJ chips. */
:is(.primary-button,.bet-button,.wallet-actions button,.referral-share,.cancel-bet-button,
    .result-button,.mines-primary,.bj-deal,.bj-sheet-secondary,.icon-button,.text-button,
    .wallet-connect-link,.referral-retry,.mines-icon,.mines-counts button,
    .mines-amount-row>button,.mines-source-switch button,.bj-tools button,
    .bj-room-switch button,.bj-tables-button,.segment,.bet-quick-amounts button){
  transition:opacity var(--tg-control-release) ease,background-color .2s ease,color .16s ease;
  user-select:none;
}
:is(.primary-button,.bet-button,.wallet-actions button,.referral-share,.cancel-bet-button,
    .result-button,.mines-primary,.bj-deal,.bj-sheet-secondary):active:not(:disabled):not([aria-disabled="true"]){
  opacity:.55;transition-duration:0s;
}
:is(.icon-button,.text-button,.wallet-connect-link,.referral-retry,.mines-icon,
    .mines-counts button,.mines-amount-row>button,.mines-source-switch button,
    .bj-tools button,.bj-room-switch button,.bj-tables-button,.segment,
    .bet-quick-amounts button):active:not(:disabled):not([aria-disabled="true"]){
  opacity:.5;transition-duration:0s;
}
/* The context menu already owns row/highlight timing and switch animations. */
.context-menu .context-menu-close{transition:background-color .3s ease,opacity .2s ease}
.context-menu .context-menu-close:active:not(:disabled){opacity:.6}
:is(.game-mode-card,.inventory-item,.gift-card,.bet-gift-option,.balance-option,
    .inventory-action,.referral-copy,.mines-gift-pick,.mines-gift-list>button,
    .mines-history-list>button){transition:opacity var(--tg-control-release) ease,background-color .2s ease}
:is(.game-mode-card,.inventory-item,.gift-card,.bet-gift-option,.balance-option,
    .inventory-action,.referral-copy,.mines-gift-pick,.mines-gift-list>button,
    .mines-history-list>button):active:not(:disabled):not([aria-disabled="true"]){opacity:.7;transition-duration:0s}

@media(max-width:360px){
  body .bottom-nav.bottom-nav{width:calc(100% - 32px)}
  .bottom-nav .nav-item{font-size:10px;line-height:13px}
  .bottom-nav .nav-item .icon{width:23px;height:23px}
  .wallet-actions button{padding-left:10px;padding-right:10px;font-size:14px}
}
@media(prefers-reduced-motion:reduce){
  .bottom-nav .nav-item,.bottom-nav .nav-selection,
  :is(.primary-button,.bet-button,.wallet-actions button,.referral-share,.cancel-bet-button,
      .result-button,.mines-primary,.bj-deal,.bj-sheet-secondary,.icon-button,.text-button,
      .wallet-connect-link,.referral-retry,.mines-icon,.mines-counts button,
      .mines-amount-row>button,.mines-source-switch button,.bj-tools button,
      .bj-room-switch button,.bj-tables-button,.segment,.bet-quick-amounts button,
      .game-mode-card,.inventory-item,.gift-card,.bet-gift-option,.balance-option,
      .inventory-action,.referral-copy,.mines-gift-pick,.mines-gift-list>button,
      .mines-history-list>button){transition:none}
}
.reduce-motion .bottom-nav .nav-item,.reduce-motion .bottom-nav .nav-selection,
.reduce-motion :is(.primary-button,.bet-button,.wallet-actions button,.referral-share,.cancel-bet-button,
    .result-button,.mines-primary,.bj-deal,.bj-sheet-secondary,.icon-button,.text-button,
    .wallet-connect-link,.referral-retry,.mines-icon,.mines-counts button,
    .mines-amount-row>button,.mines-source-switch button,.bj-tools button,
    .bj-room-switch button,.bj-tables-button,.segment,.bet-quick-amounts button,
    .game-mode-card,.inventory-item,.gift-card,.bet-gift-option,.balance-option,
    .inventory-action,.referral-copy,.mines-gift-pick,.mines-gift-list>button,
    .mines-history-list>button){transition:none}

/* Keep the capsule edge clean: the material already separates it from the page. */
body .bottom-nav.bottom-nav.glass{border:0;outline:0;background:var(--glass-live-fill,var(--tg-tab-material));box-shadow:0 8px 28px #00000026}
body .bottom-nav .nav-selection{border:0;box-shadow:none}
.deferred-screen{min-height:45vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--secondary);text-align:center;padding:24px}.deferred-screen .primary-button{min-width:180px}.deferred-spinner{width:24px;height:24px;border:2px solid var(--separator);border-top-color:var(--blue);border-radius:50%;animation:deferred-spin .8s linear infinite}@keyframes deferred-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.deferred-spinner{animation:none}}

/* settings-icons.css */
/* Genuine iOSTelegram posters (128 px) are static in their source TGS too.
   No animation players, polling, icon fonts or external Telegram requests. */
.settings-emoji{display:inline-grid;position:relative;place-items:center;width:24px;height:24px;flex:none;vertical-align:middle;pointer-events:none;line-height:1}
.settings-emoji>img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;border:0}
.settings-emoji-fallback{display:grid;place-items:center;width:100%;height:100%}
.settings-emoji-fallback>.icon{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7}
.settings-emoji.is-ready>img{opacity:1}
.settings-emoji.is-ready>.settings-emoji-fallback{visibility:hidden}
.context-menu-heading h2{display:flex;align-items:center;gap:8px}
.context-menu-heading h2 .settings-emoji{width:22px;height:22px}
.context-menu .context-menu-close .settings-emoji,.sheet-close .settings-emoji{width:24px;height:24px}
.context-menu .setting-icon{width:28px;height:28px;border-radius:8px;color:#fff}
.context-menu .setting-icon.amber{background:#ffb32f}
.context-menu .setting-icon.blue{background:#168af4}
.context-menu .setting-icon.purple{background:#8d68da}
.context-menu .setting-icon .icon{width:19px;height:19px;stroke-width:1.75}
.context-menu .setting-icon.premium{background:transparent;box-shadow:none}
.context-menu .setting-icon .settings-emoji{width:28px;height:28px}
.context-menu .setting-icon .settings-emoji-fallback{border-radius:8px;background:var(--tg-raised)}
.game-settings .settings-emoji{width:25px;height:25px}
.game-settings .settings-emoji-fallback>.icon{fill:none;stroke:currentColor;stroke-width:1.7}
.primary-button>.settings-emoji{width:22px;height:22px}
.referral-emblem.premium{background:transparent;border-color:transparent;box-shadow:none}
.referral-emblem>.settings-emoji{width:36px;height:36px}
.referral-share>.settings-emoji{width:22px;height:22px}
.friends-empty>.premium-friends-emblem{background:transparent;border-color:transparent}
.premium-friends-emblem>.settings-emoji{width:48px;height:48px}
.friends-empty .primary-button>.settings-emoji{width:22px;height:22px}
.inventory-empty-emblem>.settings-emoji{display:grid;width:40px;height:40px}

/* bottom-sheet.css */
/* Sheet position is owned by the gesture controller. Only transform/opacity
   move; the material, rounding and shadow remain static. */
body .bottom-sheet.sheet-motion-ready{
  bottom:var(--sheet-keyboard-bottom,0px);
  max-height:calc(var(--sheet-viewport-height,100dvh) - max(0px,calc(var(--safe-top,0px) - var(--sheet-viewport-top,0px))) - 12px);
  padding:40px 22px calc(24px + max(0px,calc(var(--safe-bottom,0px) - var(--sheet-keyboard-bottom,0px))));
  transform:translate3d(-50%,110%,0);transition:none;
  border-radius:28px 28px 0 0;scrollbar-width:thin;
  background:var(--tg-sheet);color:var(--tg-text);overflow-x:hidden;
  -webkit-overflow-scrolling:touch;overscroll-behavior:contain;
}
body .bottom-sheet.sheet-motion-ready.visible{transform:translate3d(-50%,0,0)}
body.keyboard-open .bottom-sheet.sheet-motion-ready{--safe-bottom:0px}
body .bottom-sheet.sheet-motion-ready[data-sheet-state="closing"]{transform:translate3d(-50%,110%,0)}
/* Keep the blur on the backdrop alone. The controller animates its opacity;
   the filter stays fixed so the sheet contents remain sharp while moving. */
body .sheet-backdrop.sheet-motion-ready{
  transition:none;opacity:0;background:#0007;
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
}
body .sheet-backdrop.sheet-motion-ready.visible{opacity:1}
body .sheet-backdrop.sheet-motion-ready[data-sheet-state="closing"]{opacity:0}
body .bottom-sheet.sheet-motion-ready #sheet-grabber{
  top:0;left:50%;width:84px;height:44px;background:transparent;border-radius:0;
  opacity:1;touch-action:none;cursor:grab;z-index:2;
}
body .bottom-sheet.sheet-motion-ready #sheet-grabber:before{
  content:"";position:absolute;top:9px;left:50%;transform:translateX(-50%);
  width:36px;height:5px;border-radius:3px;background:var(--tg-secondary);opacity:.4;
}
.bottom-sheet[data-sheet-state="dragging"] #sheet-grabber{cursor:grabbing}
.bottom-sheet[data-sheet-state="dragging"]{user-select:none}
.bottom-sheet .sheet-close{z-index:3}
.bottom-sheet #sheet-title{scroll-margin-top:12px}
.bottom-sheet input{scroll-margin-block:22px}
@media(max-width:360px){body .bottom-sheet.sheet-motion-ready{padding-left:18px;padding-right:18px}}

/* Short action sheets can keep a caption and close button above their scrolling panel. */
html[data-theme] body .bottom-sheet.sheet-motion-ready.captioned-sheet{
  flex-direction:column;padding:0;border:0;border-radius:0;
  background:transparent;box-shadow:none;overflow:hidden;
}
.bottom-sheet.captioned-sheet:not([hidden]){display:flex}
html[data-theme] body .captioned-sheet .sheet-close{
  top:0;right:16px;width:44px;height:44px;border:0;
  background:var(--tg-sheet);color:var(--tg-text);
}
.captioned-sheet .sheet-close::before{display:none}
#sheet-caption:not([hidden]){
  display:flex;align-items:center;gap:6px;align-self:flex-start;flex:none;
  max-width:calc(100% - 80px);min-height:44px;margin:0 16px 10px;padding:5px 14px 5px 5px;
  border-radius:999px;background:var(--tg-sheet);font-size:14px;touch-action:none;cursor:grab;
}
#sheet-caption>span:first-child{
  display:grid;place-items:center;flex:none;width:32px;height:32px;
  border-radius:50%;background:var(--tg-field);
}
#sheet-caption .icon{width:18px;height:18px}
#sheet-caption>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.captioned-sheet #sheet-content{
  min-height:0;padding:24px 16px calc(16px + max(0px,calc(var(--safe-bottom,0px) - var(--sheet-keyboard-bottom,0px))));
  border-radius:34px 34px 0 0;background:var(--tg-sheet);
  overflow:auto;overscroll-behavior:contain;scrollbar-width:none;
}
body.keyboard-open .captioned-sheet #sheet-content{padding-block:12px}

/* form-feedback.css */
/* The native keyboard and focus state stay on the existing, immediate form.
   Validation is an inline message, with no shake or moving layout controls. */
.bet-amount-row,.bj-amount-field,.mines-amount-row label,.wallet-action-amount,
.referral-link-row{transition:background-color .18s ease,box-shadow .18s ease,border-color .18s ease}
.bet-amount-row:focus-within,.bj-amount-field:focus-within,.mines-amount-row label:focus-within,
.wallet-action-amount:focus-within,.referral-link-row:focus-within{
  box-shadow:0 0 0 2px var(--tg-accent-text);border-color:transparent;
}
.bet-amount-row input,.bj-amount-field input,.mines-amount-row input{
  caret-color:var(--tg-accent-text);font-variant-numeric:tabular-nums;
}
.bet-amount-row input:focus-visible,.bj-amount-field input:focus-visible,
.mines-amount-row input:focus-visible{outline:none}
[data-invalid="true"]{box-shadow:0 0 0 1.5px #ef6878!important}
.field-error{display:block;margin:7px 2px 0;color:#ff8795;font-size:12px;line-height:17px;letter-spacing:0;text-align:left}
.light-theme .field-error{color:#bd3448}
.field-error[hidden]{display:none}
button[data-feedback="success"]{color:var(--tg-accent-text)}
.action-feedback-check{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:none;color:#48c985}
.action-feedback-check>.settings-emoji,.action-feedback-check>.icon{width:22px;height:22px}
.action-feedback-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.mines-amount-row[data-invalid="true"]{box-shadow:none!important}
.mines-amount-row[data-invalid="true"] label{box-shadow:0 0 0 1.5px #ef6878}
.bj-design-note{min-height:24px;display:flex;align-items:center;justify-content:center;gap:6px}
.bj-design-note[data-feedback="success"]{color:var(--tg-accent-text)}
@media(prefers-reduced-motion:reduce){
  .bet-amount-row,.bj-amount-field,.mines-amount-row label,.wallet-action-amount,.referral-link-row{transition:none}
}
.reduce-motion .bet-amount-row,.reduce-motion .bj-amount-field,.reduce-motion .mines-amount-row label,
.reduce-motion .wallet-action-amount,.reduce-motion .referral-link-row{transition:none}

/* list-motion.css */
/* Three matching row placeholders reserve space while the first page loads. */
.history-content,#referral-friends-content{min-height:210px}
.history-content>.bj-history-list:empty,.history-content>.mines-history-list:empty{display:none}
.list-skeleton{position:relative;min-height:210px;padding-top:4px;color:var(--tg-secondary)}
.list-loading-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.list-skeleton-row{display:flex;align-items:center;gap:12px;min-height:68px;border-bottom:1px solid var(--tg-separator)}
.list-skeleton-row:last-child{border:0}
.list-skeleton-row>i{display:block;flex:none;width:42px;height:42px;border-radius:13px;background:var(--tg-raised)}
.list-skeleton-row>span{flex:1;min-width:0}
.list-skeleton-row b,.list-skeleton-row em,.list-skeleton-row>small{display:block;background:var(--tg-raised);border-radius:5px}
.list-skeleton-row b{width:67%;height:12px;margin-bottom:8px}
.list-skeleton-row em{width:45%;height:9px}
.list-skeleton-row>small{width:40px;height:12px}
.list-skeleton-row{animation:list-placeholder-pulse 1.25s ease-in-out infinite alternate}
.list-skeleton-row:nth-child(3){animation-delay:.1s}
.list-skeleton-row:nth-child(4){animation-delay:.2s}
@keyframes list-placeholder-pulse{from{opacity:.45}to{opacity:.85}}
.bj-history-row,.mines-history-list>button,.friend-row{border-bottom-color:var(--tg-separator)}
.friends-more{min-height:44px;border-radius:22px;color:var(--tg-accent-text);background:var(--tg-raised);font-weight:510}
@media(prefers-reduced-motion:reduce){.list-skeleton-row{animation:none;opacity:.65}}
.reduce-motion .list-skeleton-row{animation:none;opacity:.65}

/* rocket-mobile.css */
/* Paint the flight sky behind iOS/Telegram chrome while keeping every game
   control and trajectory point below the safe content edge. Desktop inset is0. */
.game-view .screen{padding-top:0}
.game-view .space-game{box-sizing:content-box;padding-top:var(--safe-top,0px)}
.game-view .game-rocket{filter:none}
.game-view .stage-controls{top:calc(16px + var(--safe-top,0px))}
.game-view .stage-coefficient .current-coefficient{
  height:40px;min-width:84px;padding:0 12px;border:1px solid #4aa9df80;border-radius:22px;
  background:#112330;color:#b4e0ff;font-size:18px;font-weight:750;line-height:1;
}
.game-view .stage-coefficient .current-coefficient.waiting{
  border-color:var(--tg-control-border);background:var(--tg-surface);color:var(--tg-text);
}
.game-view .stage-coefficient .current-coefficient.crashed{
  border-color:#ed667b80;background:#2d1d25;color:#ff9ba9;
}
.game-view .stage-caption{top:calc(58px + var(--safe-top,0px))}
.game-view .game-countdown{--count-color:#64aaff;position:absolute;z-index:4;top:calc(50% + var(--safe-top,0px)/2 - 60px);left:50%;transform:translateX(-50%);width:120px;height:120px;display:grid;place-items:center;border:0;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--count-color) 23%,transparent),transparent 71%);font-size:50px;font-weight:800;letter-spacing:-1px;color:#fff;line-height:1;pointer-events:none}
.game-countdown:before{content:none}
.countdown-ring{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform:rotate(-90deg);fill:none;stroke-width:4}
.countdown-track{stroke:#ffffff14}
.countdown-arc{stroke:var(--count-color);stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}
.countdown-value{position:relative;z-index:1}
.countdown-pulse{position:absolute;inset:6px;border:2px solid var(--count-color);border-radius:50%;opacity:0;will-change:transform,opacity}
.game-countdown[data-step="4"]{--count-color:#36d6a1}
.game-countdown[data-step="3"]{--count-color:#ffd04c}
.game-countdown[data-step="2"]{--count-color:#ff9238}
.game-countdown[data-step="1"]{--count-color:#ff525d}
.game-view .game-countdown[hidden]{display:none}
.game-view .game-explosion{top:calc(51% + var(--safe-top,0px)*.49)}
.game-view .crashed-label{top:calc(51% + var(--safe-top,0px)*.49 - 32px)}
@media(max-width:360px){
  .game-view .stage-controls{top:calc(12px + var(--safe-top,0px))}
  .game-view .stage-caption{top:calc(53px + var(--safe-top,0px))}
}

/* The coefficient strip belongs to the lower edge of the flight field. */
.game-view .space-game{width:auto;aspect-ratio:auto;height:clamp(220px,28svh,260px);margin-bottom:8px;contain:layout paint}
.game-view .space-game:before{background:linear-gradient(180deg,#202329 0%,#202329 86%,#202329e6 100%)}
.light-theme.game-view .space-game:before{background:linear-gradient(180deg,#edf3f9,#edf3f9e6)}
.game-view .rocket-history{position:absolute;z-index:5;left:16px;right:16px;bottom:4px;height:30px;margin:0;padding:0;gap:6px}
.game-view .rocket-history .past-coefficient{height:28px;min-width:50px;padding:0 8px;border-radius:9px;font-size:12px;line-height:1;letter-spacing:0}
.game-view .rocket-history .coefficient-history{gap:6px;padding:0}
.game-view #bet-actions .bet-button,.game-view #bet-actions .cancel-bet-button,.game-view #bet-actions .result-button{margin-bottom:14px;border-radius:17px}
.game-view .stage-caption{display:none}
.game-view .game-countdown{top:calc(50% + var(--safe-top,0px)/2 - 72px)}

/* avatar-images.css */
.avatar,.bet-avatar,.nav-profile-avatar{position:relative;isolation:isolate;overflow:hidden}
.avatar-initial{position:relative;z-index:0;pointer-events:none}
.avatar img.avatar-photo,.bet-avatar img.avatar-photo,.nav-profile-avatar img.avatar-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;opacity:0;pointer-events:none}
.avatar img.avatar-photo.is-ready,.bet-avatar img.avatar-photo.is-ready,.nav-profile-avatar img.avatar-photo.is-ready{opacity:1}

/* telegram-lists.css */
/* Inset lists share Telegram's existing theme tokens and system typography. */
.tg-history{padding-top:1px}
.tg-history-group{margin:17px 0 0}
.tg-history-day{margin:0 14px 7px;color:var(--tg-secondary);font-size:13px;line-height:18px;font-weight:500;letter-spacing:.05px}
.tg-history-rows{overflow:hidden;border-radius:16px;background:var(--tg-raised)}
.tg-history .tg-history-row{position:relative;display:flex;align-items:center;gap:11px;width:100%;min-height:74px;margin:0;padding:12px 14px;border:0;border-radius:0;background:transparent;text-align:left;color:var(--tg-text);box-shadow:none}
.tg-history-row+.tg-history-row:before{content:"";position:absolute;left:67px;right:0;top:0;height:1px;background:var(--tg-separator)}
.tg-history .tg-history-symbol{display:grid;place-items:center;flex:none;width:42px;height:42px;margin:0;border:0;border-radius:13px;background:color-mix(in srgb,var(--tg-accent-text) 12%,transparent);color:var(--tg-accent-text);font-family:inherit;font-size:22px;font-weight:580;line-height:1;opacity:1}
.tg-history .tg-history-symbol.negative,.tg-history .tg-history-symbol.lost{background:color-mix(in srgb,#ff617b 12%,transparent);color:#ff8597}
.tg-history .tg-history-symbol svg{width:24px;height:24px}
.tg-history .tg-history-copy{flex:1;min-width:0;display:block}
.tg-history .tg-history-copy>b,.tg-history .tg-history-copy>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:20px;font-weight:590;color:var(--tg-text)}
.tg-history .tg-history-copy>small{display:block;margin-top:3px;color:var(--tg-secondary);font-size:13px;line-height:18px;font-weight:400;white-space:normal}
.tg-history .tg-history-net{display:block;flex:none;max-width:40%;margin-left:auto;text-align:right;font-size:16px;line-height:21px;font-variant-numeric:tabular-nums}
.tg-history .tg-history-net>b{font-size:16px;font-weight:600}
.tg-history .tg-history-net>small{display:block;margin-top:3px;color:var(--tg-secondary);font-size:11px;line-height:16px;font-weight:450;letter-spacing:.2px}
.tg-history .tg-history-net.positive{color:var(--tg-accent-text)}
.tg-history .tg-history-net.negative{color:#ff8597}
.tg-history .tg-history-net.neutral{color:var(--tg-text)}
.tg-history-more{display:block;width:100%;min-height:46px;margin-top:14px;padding:12px 16px;border:0;border-radius:14px;background:var(--tg-raised);color:var(--tg-accent-text);font:inherit;font-size:15px;font-weight:540}
.tg-history-loading{margin:14px 0 0;color:var(--tg-secondary);text-align:center;font-size:13px;line-height:18px}
.tg-history-intro{margin:0 0 16px;color:var(--tg-secondary);font-size:13px;line-height:19px}
.tg-attributes{margin:16px 0 0;border-radius:16px;overflow:hidden;background:var(--tg-raised)}
.tg-attributes>div{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:16px;padding:12px 14px;min-height:44px;align-items:center}
.tg-attributes>div+div:before{content:"";position:absolute;top:0;left:14px;right:0;height:1px;background:var(--tg-separator)}
.tg-attributes dt{margin:0;color:var(--tg-secondary);font-size:14px;line-height:20px}
.tg-attributes dd{margin:0;text-align:right;color:var(--tg-text);font-size:14px;line-height:20px;font-weight:510;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.tg-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:210px;padding:26px 18px 22px;text-align:center;color:var(--tg-text)}
.tg-empty-icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:13px;border-radius:20px;color:var(--tg-accent-text);background:color-mix(in srgb,var(--tg-accent-text) 9%,transparent);font-size:34px}
.tg-empty-icon>.icon,.tg-empty-icon>svg,.tg-empty-icon>.settings-emoji,.tg-empty-icon>.settings-emoji img{width:38px;height:38px}
.tg-empty-icon{flex:none;position:relative;isolation:isolate;overflow:hidden}
.tg-empty-icon>.settings-emoji{display:grid;position:relative;inset:auto;flex:none}
.tg-empty-icon .settings-emoji-fallback{position:absolute;inset:0;display:grid;place-items:center}
.tg-empty-icon .settings-emoji-fallback>.icon{position:static;width:100%;height:100%}
.tg-empty h3{margin:0;font-size:18px;line-height:24px;font-weight:620;letter-spacing:-.3px}
.tg-empty p{max-width:300px;margin:7px 0 0;color:var(--tg-secondary);font-size:14px;line-height:20px}
.tg-empty-action{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin-top:18px;padding:11px 20px;border:0;border-radius:14px;background:var(--tg-raised);color:var(--tg-accent-text);font:inherit;font-size:15px;line-height:20px;font-weight:550}
.tg-empty-action>.icon,.tg-empty-action>svg,.tg-empty-action>.settings-emoji,.tg-empty-action>.settings-emoji img{width:22px;height:22px}
.tg-empty-compact{min-height:0;padding:22px 12px 14px}
.tg-empty-compact .tg-empty-icon{width:42px;height:42px;margin-bottom:10px;border-radius:14px;font-size:24px}
.tg-empty-compact h3{font-size:16px;line-height:22px}
.bets-card .tg-empty{min-height:210px}
.tg-history-back{display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:0 5px 0 0;margin-bottom:6px;border:0;background:transparent;color:var(--tg-accent-text);font:inherit;font-size:15px}
.tg-history-result{margin:22px 0;text-align:center;font-size:34px;line-height:40px;font-weight:660;letter-spacing:-1px;font-variant-numeric:tabular-nums;color:var(--tg-text)}
.tg-history-result.positive{color:var(--tg-accent-text)}
.tg-history-result.negative{color:#ff8597}
.tg-history-result small{font-size:14px;letter-spacing:0;font-weight:500}
.tg-history-result span{display:block;margin-top:3px;color:var(--tg-secondary);font-size:13px;line-height:18px;font-weight:400;letter-spacing:0}
.tg-history-proof{margin-top:18px;padding:14px;border-radius:16px;background:var(--tg-raised);font-size:13px;line-height:19px;color:var(--tg-secondary)}
.tg-history-proof summary{min-height:24px;color:var(--tg-accent-text);font-size:14px;font-weight:510;cursor:pointer}
.tg-history-proof p{margin:14px 0 5px}
.tg-history-proof code{display:block;max-width:100%;overflow-wrap:anywhere;white-space:normal;color:var(--tg-text);font-size:11px;line-height:17px}
.bj-detail-hand,.light-theme .bj-detail-hand{border:0;border-radius:16px;background:var(--tg-raised);padding:14px;margin:14px 0}
.bj-detail-hand header{font-size:14px;line-height:20px;color:var(--tg-secondary)}
.bj-detail-hand header>span{font-size:13px;line-height:18px}
.bj-detail-hand .tg-attributes{margin-top:14px;background:transparent;border-radius:0}
.bj-detail-hand .tg-attributes>div{padding-left:0;padding-right:0}
.bj-detail-hand .tg-attributes>div+div:before{left:0}
.tg-friends-list{overflow:hidden;border-radius:16px;background:var(--tg-raised)}
.tg-friends-list .friend-row{position:relative;border:0;padding:12px 14px}
.tg-friends-list .friend-row:first-child{padding-top:12px}
.tg-friends-list .friend-row+.friend-row:before{content:"";position:absolute;top:0;left:68px;right:0;height:1px;background:var(--tg-separator)}
.tg-friends-list .friend-avatar{border-radius:50%}
.tg-friends-list .friend-copy strong{color:var(--tg-text)}
.friends-sheet .friends-intro,.friends-sheet .friends-footnote{color:var(--tg-secondary);font-size:13px;line-height:19px}
.friends-list .friend-copy>span,.friends-list .friend-row>time{font-size:13px;line-height:18px;color:var(--tg-secondary)}
.friends-list .friend-row{min-height:72px}
.friends-list .friend-copy>strong{font-size:15px;line-height:20px}
@media(max-width:360px){.tg-history .tg-history-row{padding-left:11px;padding-right:11px;gap:9px}.tg-history .tg-history-net>b{font-size:15px}.tg-history .tg-history-copy>b,.tg-history .tg-history-copy>strong{font-size:14px}.tg-attributes>div{gap:12px;padding-left:12px;padding-right:12px}.friends-list .friend-row{flex-wrap:wrap}.friends-list .friend-row>time{margin-left:54px;margin-top:-6px;width:calc(100% - 54px)}}

/* gift-collection.css */
/* Gift cards use one cached poster each. Only an open gift owns a player. */
.inventory-collection>.gift-collection-card{position:relative;isolation:isolate;padding:5px 5px 11px;border-radius:17px;background:var(--tg-surface);border:1px solid var(--tg-control-border);box-shadow:none;overflow:hidden;text-align:left}
.gift-art-static{display:block;width:100%;aspect-ratio:1;border-radius:12px;overflow:hidden;background-color:var(--tg-raised);background-size:cover;background-position:center;pointer-events:none}
.gift-art-static>img,.gift-sheet-art>img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.gift-art-static>img{padding:12%;box-sizing:border-box}
.gift-art-missing{display:grid;place-items:center;color:var(--tg-accent-text)}
.gift-art-missing>.settings-emoji{width:42px;height:42px}
.inventory-collection>.gift-collection-card>strong{display:block;margin-top:10px;padding:0 4px;font-size:11px;line-height:1.3;font-weight:600;color:var(--tg-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.inventory-collection>.gift-collection-card>.gift-card-price{display:flex;justify-content:flex-start;align-items:center;gap:3px;padding:0 4px;margin-top:6px;font-size:11px;line-height:1.2;color:var(--tg-accent-text);font-variant-numeric:tabular-nums}
.inventory-collection .gift-card-price>.currency-art{width:15px;height:15px}
.gift-selection{position:absolute;right:9px;top:9px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1.5px solid #ffffffa6;background:#15273b38;opacity:0;transform:scale(.75);transition:opacity .18s ease,transform .22s var(--tg-ease);pointer-events:none}
.gift-selection>.settings-emoji{width:22px;height:22px;opacity:0;transition:opacity .16s ease}
.gift-selection.is-selected,.gift-picker-card.active>.gift-selection{opacity:1;transform:scale(1);border-color:var(--tg-accent);background:var(--tg-accent)}
.gift-selection.is-selected>.settings-emoji,.gift-picker-card.active>.gift-selection>.settings-emoji{opacity:1}
.gift-picker-card>.gift-selection{opacity:.6;transform:scale(1)}
.mines-gift-list>.gift-picker-card>.gift-selection{display:grid;width:22px;height:22px;margin:0}
.gift-picker-card{position:relative}
.bet-gift-picker>.gift-picker-card,.mines-gift-list>.gift-picker-card{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;padding:5px 5px 10px;border:1px solid var(--tg-control-border);border-radius:17px;background:var(--tg-field);box-shadow:none;text-align:center;color:var(--tg-text)}
.bet-gift-picker>.gift-picker-card.active,.mines-gift-list>.gift-picker-card.active{border-color:var(--tg-accent);box-shadow:inset 0 0 0 1px var(--tg-accent);background:var(--tg-field)}
.bet-gift-picker>.gift-picker-card>.gift-art-static,.mines-gift-list>.gift-picker-card>.gift-art-static{display:block;height:auto;aspect-ratio:1;margin:0 0 9px;border-radius:12px}
.gift-picker-card>.bet-gift-name{display:block;padding:0 2px;margin:0;font-size:10.5px;line-height:1.3;font-weight:600;color:var(--tg-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gift-picker-card>.bet-gift-price{display:block;padding:0;margin:6px 0 0;font-size:10.5px;line-height:1.3;font-variant-numeric:tabular-nums;color:var(--tg-accent-text)}
.gift-picker-card:disabled{opacity:.45}
.gift-picker-card:disabled>.gift-selection{opacity:0}
.gift-sheet{text-align:center;--gift-footer-safe:max(0px,calc(var(--safe-bottom,0px) - var(--sheet-keyboard-bottom,0px)));font-family:-apple-system,BlinkMacSystemFont,"SF Pro",sans-serif}
body .bottom-sheet.sheet-motion-ready.gift-native-sheet{padding:0}
.gift-native-cover{position:relative;padding:26px 16px 16px;border-radius:28px 28px 0 0;background-color:var(--gift-cover-edge);background-size:100% auto;background-position:center calc(104px - min(32.5vw,149.5px));background-repeat:no-repeat;color:#fff}
.gift-native-cover .gift-sheet-hero{position:relative;width:154px;height:154px;margin:0 auto 5px;aspect-ratio:1}
.gift-sheet-art{display:block;width:100%;height:100%;aspect-ratio:1;overflow:hidden}
.gift-native-art{background:none!important;border-radius:0}
.gift-combination-art{position:relative;isolation:isolate}
.gift-combination-backdrop{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none;z-index:0}
.gift-combination-art>img{position:relative;z-index:1}
.gift-native-cover{overflow:hidden;isolation:isolate}
.gift-native-cover>.gift-combination-backdrop{height:auto;aspect-ratio:1;top:calc(104px - min(32.5vw,149.5px))}
.gift-native-cover>.gift-sheet-title,.gift-native-cover>.gift-sheet-subtitle{position:relative}
.gift-native-art>svg{display:block;width:100%!important;height:100%!important}
.gift-sheet-title{margin:0;font-size:20px;line-height:24px;font-weight:650;letter-spacing:-.35px;color:#fff}
.gift-sheet-subtitle{margin:4px 0 16px;font-size:13px;line-height:18px;font-weight:400;color:var(--gift-cover-text)}
.gift-native-body{padding:16px}
.gift-sheet .gift-native-table{text-align:left;border:1px solid var(--tg-separator);border-radius:14px;overflow:hidden;margin:0;background:transparent}
.gift-sheet .gift-native-table>div{grid-template-columns:100px minmax(0,1fr);padding:0;min-height:44px;gap:0;align-items:stretch}
.gift-sheet .gift-native-table>div+div:before{left:0;right:0}
.gift-sheet .gift-native-table dt{display:flex;align-items:center;padding:10px 12px;border-right:1px solid var(--tg-separator);background:#ffffff06;font-size:16px;line-height:21px;font-weight:400;color:var(--tg-text)}
.gift-sheet .gift-native-table dd{display:flex;align-items:center;align-content:center;flex-wrap:wrap;gap:5px;padding:10px 12px;min-width:0;text-align:left;font-size:16px;font-weight:400;line-height:21px;color:var(--tg-text);overflow-wrap:anywhere;font-variant-numeric:normal}
:root[data-theme="light"] .gift-sheet .gift-native-table dt{background:#00000006}
.gift-trait-rarity{display:inline-flex;align-items:center;justify-content:center;min-height:18px;flex:none;padding:0 5px;border-radius:9px;font-size:12px;line-height:16px;font-weight:400;color:var(--tg-accent-text);background:#008bff16;white-space:nowrap}
.gift-detail-price{display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums}
.gift-detail-price>.currency-art{width:17px;height:17px}
.gift-sheet-note{margin:12px 8px 0;color:var(--tg-secondary);font-size:12px;line-height:16px;font-weight:400}
.gift-sheet-footer{position:sticky;z-index:2;bottom:0;margin:0;padding:10px 16px calc(16px + var(--gift-footer-safe));background:var(--tg-sheet);text-align:left}
.gift-owned-actions{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px}
.gift-sheet-primary.primary-button{min-height:52px;font-size:14px;line-height:19px;font-weight:600;border-radius:26px;background:var(--tg-accent);box-shadow:none;color:#fff}
.gift-sheet-primary.primary-button:disabled{opacity:.5}
.gift-owned-actions>.primary-button{display:flex;align-items:center;justify-content:center;min-width:0;min-height:52px;padding:8px 12px;border-radius:26px;font-size:14px;line-height:19px;white-space:normal;text-align:center}
.gift-owned-actions>.gift-sheet-withdraw{flex-direction:row;gap:7px;border:1px solid var(--tg-control-border);background:var(--tg-raised);color:var(--tg-accent-text);box-shadow:none}
.gift-sheet-withdraw>.icon{width:18px;height:18px;flex:none}
.gift-sheet-withdraw>span{white-space:nowrap}
.gift-sheet-withdraw:disabled{opacity:.5}
.gift-sheet-actions{display:grid;grid-template-columns:minmax(0,1fr) 52px;gap:10px}
.gift-sheet-favorite{display:grid;place-items:center;flex:none;width:52px;height:52px;border:1px solid var(--tg-control-border);border-radius:26px;background:var(--tg-raised);color:var(--tg-secondary)}
.gift-sheet-favorite>.icon{width:23px;height:23px}
.gift-sheet-favorite.favorite{color:#ff718d}
.gift-sheet-favorite.favorite>.icon{fill:currentColor}
.inventory-collection>.tg-empty{grid-column:1/-1}
.bet-gift-picker>.tg-empty,.mines-gift-list>.tg-empty{grid-column:1/-1}
@media(max-width:360px){.inventory-collection>.gift-collection-card>strong{font-size:10px}.gift-picker-card>.bet-gift-name,.gift-picker-card>.bet-gift-price{font-size:10px}.gift-native-body{padding-left:12px;padding-right:12px}.gift-sheet-footer{padding-left:12px;padding-right:12px}.gift-sheet .gift-native-table>div{grid-template-columns:90px minmax(0,1fr)}.gift-sheet .gift-native-table dt,.gift-sheet .gift-native-table dd{padding-left:10px;padding-right:10px}}
.reduce-motion .gift-selection,.reduce-motion .gift-selection>.settings-emoji{transition:none}
@media(prefers-reduced-motion:reduce){.gift-selection,.gift-selection>.settings-emoji{transition:none}}

/* earnings.css */
.earn-page{padding:0 0 10px;color:var(--tg-text)}.earn-heading{text-align:center;margin-bottom:23px}.earn-eyebrow{font-size:9px;letter-spacing:2px;color:var(--tg-secondary);font-weight:700}.earn-heading h2{font-size:28px;margin:8px 0}.earn-heading p,.earn-detail-hero p{font-size:13px;line-height:1.5;color:var(--tg-secondary);margin:8px 0 0}.earn-cards{display:grid;gap:12px}.earn-card{--earn-accent:#48b9ff;position:relative;display:flex;align-items:center;gap:11px;min-height:100px;width:100%;padding:17px 13px;border:1px solid color-mix(in srgb,var(--earn-accent) 35%,transparent);border-radius:22px;background:radial-gradient(ellipse at 0 100%,color-mix(in srgb,var(--earn-accent) 15%,transparent),transparent 70%),var(--tg-raised);text-align:left;color:var(--tg-text);cursor:pointer}.earn-tiktok{--earn-accent:#2fd8ce}.earn-boost{--earn-accent:#b295ff}.earn-subscription{--earn-accent:#40b9ff}.earn-icon{display:grid;place-items:center;flex:none;width:43px;height:43px;border-radius:15px;color:var(--earn-accent,#39aaff);background:color-mix(in srgb,var(--earn-accent,#39aaff) 15%,transparent)}.earn-tiktok>.earn-icon{background:#080c12;color:#fff;box-shadow:-2px 1px 0 #2fd8ce,2px -1px 0 #fb4480}.earn-icon svg{width:28px;height:28px}.earn-card-copy{min-width:0;flex:1}.earn-card-copy strong{display:block;font-size:15px;line-height:1.3}.earn-card-copy small{display:block;color:var(--tg-secondary);font-size:10px;line-height:1.5;margin-top:5px}.earn-reward{display:flex;align-items:center;gap:4px;flex:none;font-size:12px;font-weight:750;color:var(--earn-accent);white-space:nowrap}.earn-reward img,.earn-money img{width:15px;height:15px;object-fit:contain;vertical-align:middle}.earn-chevron{font-size:22px;opacity:.5}.earn-deposit-perk{display:flex;gap:14px;align-items:center;margin:22px 0 0;padding:18px;border-radius:20px;background:linear-gradient(110deg,#168fee18,#37c2b910);border:1px solid #2ea5db20}.earn-deposit-perk>span{font-size:28px;font-weight:800;letter-spacing:-1px;color:var(--tg-accent-text)}.earn-deposit-perk strong{font-size:12px}.earn-deposit-perk p{font-size:11px;line-height:1.5;color:var(--tg-secondary);margin:5px 0 0}.earn-back{color:var(--tg-accent-text);background:none;border:0;padding:0 0 17px;font-size:13px;cursor:pointer}.earn-detail-hero{text-align:center;padding:24px 16px;border:1px solid color-mix(in srgb,var(--earn-accent) 30%,transparent);border-radius:24px;background:radial-gradient(ellipse at 50% 0,color-mix(in srgb,var(--earn-accent) 16%,transparent),transparent 85%),var(--tg-raised);margin-bottom:16px}.earn-detail-hero .earn-icon{margin:0 auto 15px;width:54px;height:54px}.earn-detail-hero h2{font-size:23px;line-height:1.2;letter-spacing:-.5px;margin:0}.earn-money{display:inline-flex;align-items:center;gap:3px;color:var(--tg-text);font-size:18px;margin-left:5px}.earn-panel{background:var(--tg-raised);border:1px solid var(--tg-control-border,#ffffff0b);padding:18px 16px;border-radius:21px;margin:14px 0}.earn-panel h3{font-size:15px;margin:0 0 14px}.earn-panel p{font-size:11px;line-height:1.7;color:var(--tg-secondary);margin:10px 0 0}.earn-steps{counter-reset:earn;list-style:none;padding:0;margin:0;display:grid;gap:14px}.earn-steps li{position:relative;counter-increment:earn;padding-left:31px;font-size:12px;line-height:1.65}.earn-steps li:before{content:counter(earn);position:absolute;left:0;top:1px;display:grid;place-items:center;width:22px;height:22px;background:#2ca4fa1d;color:var(--tg-accent-text);border-radius:8px;font-size:11px;font-weight:750}.earn-resource{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:17px 16px;border:1px solid #2baff34d;border-radius:17px;background:#289af511;color:var(--tg-accent-text);text-decoration:none;font-size:12px;font-weight:650}.earn-primary{display:flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;min-height:49px;margin-top:17px;border-radius:17px;font-size:14px}.earn-status{font-size:12px;line-height:1.6;text-align:center;color:var(--tg-secondary);margin:17px 4px 0}.earn-table-scroll{overflow-x:auto}.earn-panel table{width:100%;border-collapse:collapse;font-size:11px;min-width:280px}.earn-panel th{text-align:left;font-size:10px;font-weight:600}.earn-panel td{text-align:right;font-weight:750;color:var(--tg-accent-text);white-space:nowrap}.earn-panel td,.earn-panel th{padding:12px 4px;border-bottom:1px solid var(--tg-separator,#ffffff0b)}.earn-panel thead th{color:var(--tg-secondary);font-size:9px;text-align:right}.earn-panel thead th:first-child{text-align:left}.earn-card:active{opacity:.8}.earn-card:focus-visible,.earn-back:focus-visible{outline:2px solid var(--tg-accent);outline-offset:3px}@media(max-width:360px){.earn-card{gap:9px;padding:15px 11px}.earn-icon{width:36px;height:36px;border-radius:12px}.earn-card-copy strong{font-size:13px}.earn-reward{font-size:11px}.earn-chevron{display:none}}

.earn-nickname{--earn-accent:#e6b454}.light-theme .earn-tiktok{--earn-accent:#078487}.light-theme .earn-subscription{--earn-accent:#087fbd}.light-theme .earn-boost{--earn-accent:#7950b3}.light-theme .earn-nickname{--earn-accent:#976622}

.earn-reward,.earn-money,.earn-panel td{font-weight:900}.earn-reward{font-size:14px;letter-spacing:-.2px}.earn-panel td{font-size:12px}.earn-money{font-size:22px}.earn-counter{display:inline-block;min-width:5ch;font-variant-numeric:tabular-nums;text-align:right;font-weight:900;letter-spacing:-.4px}.earn-heading>.earn-sticker{width:90px;height:90px;margin:0 auto 9px;border-radius:22px;overflow:hidden}.earn-heading h2{margin:7px 0}.earn-sticker{position:relative;display:block;width:100%;height:100%;flex:none;contain:layout paint}.earn-sticker-surface,.earn-sticker-fallback{position:absolute;inset:0}.earn-sticker-surface{pointer-events:none}.earn-sticker-surface canvas{display:block;width:100%!important;height:100%!important}.earn-sticker-fallback{display:grid;place-items:center;color:var(--tg-accent-text);font-size:32px;font-weight:800}.earn-sticker-fallback[hidden]{display:none}.earn-card .earn-icon{width:50px;height:50px}.earn-icon.earn-animated,.earn-icon.earn-brand{background:transparent;box-shadow:none}.earn-brand-icon{display:block;width:100%;height:100%;object-fit:contain}.earn-detail-hero .earn-icon.earn-animated{width:86px;height:86px;margin-bottom:9px}.earn-detail-hero .earn-icon.earn-brand{width:59px;height:59px}.earn-hero-amount{display:flex;align-items:baseline;justify-content:center;gap:8px;margin:17px 0 2px;line-height:1.1;color:var(--tg-text)}.earn-hero-amount>.earn-counter{font-size:48px;min-width:4.6ch;letter-spacing:-1.5px;text-align:center}.earn-hero-amount>span:not(.earn-counter){font-size:21px;font-weight:800;color:var(--tg-secondary)}.earn-hero-caption{display:block;color:var(--tg-secondary);font-size:11px;margin-top:7px}.earn-card-copy strong{font-weight:800}.earn-deposit-perk>span{font-weight:900}@media(max-width:360px){.earn-card .earn-icon{width:42px;height:42px}.earn-reward{font-size:12px}.earn-heading>.earn-sticker{width:80px;height:80px}.earn-hero-amount>.earn-counter{font-size:41px}}

/* wallet-sheets.css */
.wallet-surface{color:var(--tg-text);padding-top:2px}
.wallet-surface-header{text-align:center;margin:0 0 20px}
.wallet-surface-symbol{display:grid;place-items:center;width:64px;height:64px;margin:2px auto 15px;border-radius:20px;background:var(--tg-raised);color:var(--tg-accent-text)}
.wallet-surface-symbol>.currency-art{width:44px;height:44px}
.wallet-surface-symbol>.settings-emoji,.wallet-surface-symbol>.settings-emoji img{width:44px;height:44px}
.wallet-surface-header h2{font-size:22px;line-height:28px;letter-spacing:-.4px;margin:0;font-weight:700}
.wallet-surface-header p{color:var(--tg-secondary);font-size:14px;line-height:20px;margin:7px 0 0}
.wallet-surface-balance{display:flex;align-items:baseline;justify-content:center;gap:8px;margin:8px 0 25px;font-variant-numeric:tabular-nums}
.wallet-surface-balance strong{font-size:clamp(27px,8vw,36px);line-height:1.2;letter-spacing:-1px;overflow-wrap:anywhere}
.wallet-surface-balance>span{font-size:12px;font-weight:600;color:var(--tg-secondary)}
.wallet-surface-status{display:flex;align-items:center;justify-content:center;gap:7px;margin:0 0 18px;font-size:13px;color:var(--tg-secondary)}
.wallet-surface-status>span{width:6px;height:6px;background:var(--tg-secondary);border-radius:50%}
.wallet-surface-status.connected{color:var(--tg-accent-text)}
.wallet-surface-status.connected>span{background:var(--tg-accent-text)}
.wallet-surface-copy{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-height:30px;max-width:100%;padding:0;background:none;color:var(--tg-accent-text);font-size:14px;font-weight:500;text-align:right}
.wallet-surface-copy>span:first-child{overflow-wrap:anywhere;min-width:0}
.wallet-surface-copy>.icon{flex:none;width:18px;height:18px}
.wallet-surface-copy-full{font-variant-numeric:tabular-nums;line-height:20px}
.wallet-surface-message{font-size:13px;line-height:19px;color:var(--tg-secondary);margin:14px 10px 0;text-align:center}
.wallet-surface-footer{position:sticky;bottom:calc(-24px - max(0px,calc(var(--safe-bottom,0px) - var(--sheet-keyboard-bottom,0px))));z-index:2;margin:20px -22px calc(-24px - max(0px,calc(var(--safe-bottom,0px) - var(--sheet-keyboard-bottom,0px))));padding:12px 22px calc(24px + max(0px,calc(var(--safe-bottom,0px) - var(--sheet-keyboard-bottom,0px))));background:var(--tg-sheet)}
.wallet-surface-footer>.primary-button,.wallet-surface-actions>.primary-button{min-height:50px;border-radius:25px;font-size:16px;line-height:20px}
.wallet-surface-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wallet-surface-actions>.secondary-wallet{background:var(--tg-raised);color:var(--tg-accent-text);box-shadow:none}
.wallet-surface-footer>.wallet-surface-disconnect{background:var(--tg-raised);color:#ed6f7d;box-shadow:none}
.wallet-surface-note{color:var(--tg-secondary);font-size:12px;line-height:17px;text-align:center;margin:11px 4px 0}
.wallet-surface .tg-empty{padding:10px 12px 16px}
.payment-surface h2{text-align:center;margin:4px 0 24px}
.payment-field{display:flex;flex-direction:column;gap:8px;margin:16px 0;color:var(--tg-secondary);font-size:13px}
.payment-field input{width:100%;box-sizing:border-box;border:1px solid var(--tg-separator,rgba(150,150,160,.2));border-radius:16px;background:var(--tg-raised);padding:16px;color:var(--tg-text);font:inherit;font-size:16px;outline-offset:3px}
.payment-surface .primary-button{margin-top:14px;min-height:50px}
.payment-confirm{padding:16px;border-radius:18px;background:var(--tg-raised);margin-top:16px;overflow-wrap:anywhere;font-size:14px}
.payment-history{margin-top:24px}.payment-history h3{font-size:15px}.payment-history>div{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(150,150,160,.16);font-size:14px}.payment-history small{display:block;margin-top:5px;color:var(--tg-secondary);font-size:12px}.payment-history strong{font-variant-numeric:tabular-nums}
@media(max-width:360px){.wallet-surface-footer{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}.wallet-surface-header h2{font-size:21px}}
.payment-methods{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:4px;margin:2px 0 20px;border:1px solid var(--tg-control-border,#ffffff0d);border-radius:999px;background:var(--tg-field,#262a32)}
.payment-methods::before{content:"";position:absolute;z-index:0;left:4px;top:4px;bottom:4px;width:calc((100% - 8px)/2);box-sizing:border-box;border:1px solid var(--tg-control-border,#ffffff0b);border-radius:999px;background:var(--tg-raised,#383e49);box-shadow:0 1px 5px #00000012;transform:translateX(0);transition:transform .28s cubic-bezier(.22,.7,.22,1);pointer-events:none}
.payment-methods[data-payment-selected=crypto]::before{transform:translateX(100%)}
.payment-method{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:39px;margin:0;padding:7px 9px;border:0;border-radius:999px;background:transparent;color:var(--tg-secondary,#9ba4b3);font:inherit;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .2s}
.payment-method[aria-checked=true]{color:var(--tg-text,#f4f7fb)}.payment-method:disabled{opacity:.4;cursor:default}.payment-method:focus-visible{outline:2px solid var(--tg-accent,#0097ff);outline-offset:1px}
.payment-method-art{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:50%;overflow:hidden;background:#ffffff08}.payment-method-art img{display:block;width:100%;height:100%;object-fit:cover}.payment-method-wallet{color:var(--tg-accent-text,#70bcff);background:#278fd61c}.payment-method-wallet svg{display:block;width:15px;height:15px}.payment-method strong{font-size:12px;line-height:17px;font-weight:650;white-space:nowrap;letter-spacing:-.1px}
.payment-deposit h2{font-size:23px;line-height:29px;margin:2px 0 20px;letter-spacing:-.5px}.payment-deposit .payment-field{gap:7px;margin:0 0 15px;font-size:12px}.payment-deposit .payment-field input{min-height:48px;padding:13px 14px;border-radius:14px;font-size:16px}.payment-deposit .primary-button{min-height:46px;margin-top:5px}.payment-deposit>[data-payment-message]{margin:13px 0 0;font-size:12px;line-height:18px}
.light-theme .payment-methods{background:#e9edf2}.light-theme .payment-methods::before{background:#fff;border-color:#dbe3eb;box-shadow:0 1px 4px #233d5910}
.reduce-motion .payment-methods::before,.reduce-motion .payment-method{transition:none}@media(prefers-reduced-motion:reduce){.payment-methods::before,.payment-method{transition:none}}

.payment-assets{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;margin:0 0 16px;border:1px solid var(--tg-control-border,#ffffff0d);border-radius:999px;background:var(--tg-field,#262a32)}
.payment-assets[hidden]{display:none}.payment-assets::before{content:"";position:absolute;left:4px;top:4px;bottom:4px;width:calc((100% - 8px)/3);background:var(--tg-accent,#008bff);border-radius:999px;transition:transform .28s cubic-bezier(.22,.7,.22,1);pointer-events:none}.payment-assets[data-selected=USDT]::before{transform:translateX(100%)}.payment-assets[data-selected=TRX]::before{transform:translateX(200%)}
.payment-assets button{position:relative;min-height:34px;padding:6px;border:0;border-radius:999px;background:transparent;color:var(--tg-text);font-size:12px;font-weight:650;cursor:pointer}.payment-assets button[aria-checked=true]{color:#fff}.payment-assets button:disabled{cursor:default;opacity:.65}.payment-quote{color:var(--tg-secondary);font-size:12px;text-align:center;margin:2px 0 10px}.reduce-motion .payment-assets::before{transition:none}@media(prefers-reduced-motion:reduce){.payment-assets::before{transition:none}}

.payment-history-empty{text-align:center;padding:42px 12px;color:var(--tg-secondary);font-size:14px}.payment-history>div>strong{display:flex;align-items:center;gap:4px}.payment-history>div>strong>img{width:14px;height:14px;object-fit:contain}.payment-history>div>span{min-width:0;padding-right:12px}.payment-history{margin-top:8px}

.payment-methods{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-methods::before{width:calc((100% - 8px)/3)}.payment-methods[data-payment-selected=sbp]::before{transform:translateX(200%)}.payment-method{gap:6px;font-size:12px}.payment-sbp-icon{background:transparent;border-radius:0}.payment-sbp-icon img{width:20px;height:22px;object-fit:contain}
.payment-methods[data-payment-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.payment-methods[data-payment-count="2"]::before{width:calc((100% - 8px)/2)}

.top-up-methods .sheet-title{margin:0 12px 15px;font-size:19px;font-weight:750;line-height:1.2}
.top-up-list{display:grid;gap:9px}
.top-up-option{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:9px;min-height:56px;width:100%;padding:8px 16px 8px 9px;border:0;border-radius:999px;background:#202024;color:var(--tg-text);text-align:left;font:inherit;font-size:15px;font-weight:550;transition:background-color .18s}
.top-up-option:not(:disabled):active{background:#2a2a30}
.top-up-option:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:2px}
.top-up-option:disabled{cursor:default;opacity:1}
.top-up-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#29292f;color:#ffce00}
.top-up-icon .icon{width:21px;height:21px;stroke-width:2.2}
.top-up-stars .top-up-icon .icon{fill:currentColor;stroke-width:1}
.top-up-icon img{width:22px;height:22px;object-fit:contain}
.top-up-gram .top-up-icon{background:#30a1f5}
.top-up-gram .top-up-icon svg{width:34px;height:34px}
.top-up-arrow{grid-column:4}
.top-up-arrow svg{display:block;width:17px;height:17px}
.top-up-new{grid-column:3;padding:6px 10px;border-radius:999px;background:#ffce00;color:#171000;font-size:12px;font-weight:750;white-space:nowrap}
.top-up-unavailable{grid-column:3/5;color:var(--tg-secondary);font-size:12px;white-space:nowrap}
.top-up-guide .sheet-title{margin:5px 0 14px;font-size:21px;line-height:1.2}
.payment-flow-back{display:inline-flex;align-items:center;min-height:32px;margin:0 0 4px;padding:0;border:0;background:none;color:var(--tg-accent-text);font:inherit;font-size:13px;text-align:left}
body.keyboard-open .captioned-sheet .payment-deposit h2,
body.keyboard-open .captioned-sheet .payment-deposit .payment-methods{margin-bottom:10px}
body.keyboard-open .captioned-sheet .payment-deposit .payment-field,
body.keyboard-open .captioned-sheet .payment-deposit .payment-assets{margin-bottom:8px}
body.keyboard-open .captioned-sheet .payment-deposit .payment-quote{margin-bottom:6px}
.top-up-guide-hero{display:flex;gap:12px;align-items:center;min-width:0;padding:10px 12px;border-radius:20px;background:radial-gradient(ellipse at 10% 50%,#235f42,transparent 90%),var(--tg-field)}
.top-up-guide-hero>img{flex:none;object-fit:contain}
.top-up-guide-hero p,.top-up-guide li{font-size:14px;line-height:1.45;color:var(--tg-text)}
.top-up-guide ol{display:grid;gap:9px;margin:16px 0;padding-left:20px}
.top-up-relayer{display:flex;justify-content:center;align-items:center;gap:8px;text-decoration:none}
@media(prefers-reduced-motion:reduce){.top-up-option{transition:none}}
.reduce-motion .top-up-option{transition:none}
/* A prepared SBP invoice stays reachable if an automatic window is blocked. */
.payment-direct-link{display:block;margin:0 0 12px;padding:7px;text-align:center;font-size:13px;font-weight:600;color:var(--tg-accent-text,#46baff);text-decoration:none}

/* game-controls.css */
/* Telegram control surfaces. Game cells, cards, table chips and celebrations
   keep their own rendering. Only the selection background moves. */
.mines-page .mines-controls,.blackjack-page .bj-bet-panel{
  padding:13px;border:1px solid var(--tg-control-border);border-radius:24px;
  background:var(--tg-surface);box-shadow:inset 0 1px 0 #ffffff04;
}
.mines-page .mines-controls{gap:10px}
.mines-page .mines-action-row{gap:9px;align-items:stretch}
.mines-page .mines-primary,.blackjack-page .bj-deal{
  min-height:52px;height:auto;border:0;border-radius:26px;padding:12px 15px;
  color:#fff;background:var(--tg-accent);box-shadow:none;
  font-size:16px;line-height:22px;font-weight:600;letter-spacing:-.2px;
}
.mines-page .mines-primary:disabled,.blackjack-page .bj-deal:disabled{opacity:.45}
.mines-page .mines-source-switch,.mines-page .mines-counts,.blackjack-page .bj-room-switch,.blackjack-page .bj-bet-panel .bj-chips{
  position:relative;isolation:isolate;padding:3px;gap:3px;border:1px solid var(--tg-control-border);
  border-radius:25px;background:var(--tg-field);box-shadow:none;
}
.mines-page .mines-source-switch>button,.mines-page .mines-counts>button,.blackjack-page .bj-room-switch>button{
  position:relative;z-index:1;min-height:44px;border:0;border-radius:22px;
  color:var(--tg-secondary);background:transparent;box-shadow:none;font-weight:600;
}
.mines-page .mines-source-switch>button{width:44px;height:44px;flex:none}
.mines-page .mines-source-switch>button[aria-pressed="true"],.mines-page .mines-counts>button[aria-pressed="true"],.blackjack-page .bj-room-switch>button[aria-pressed="true"]{
  color:var(--tg-accent-text);border-color:transparent;background:var(--tg-selection);box-shadow:none;
}
.mines-page .mines-counts>button{font-size:15px;gap:6px}
.mines-page .mines-counts small{color:inherit;font-size:11px;font-weight:400}
.mines-page .mines-counts svg{width:18px;height:18px}
.mines-page .mines-amount-row{gap:9px;align-items:stretch}
.mines-page .mines-amount-row>button{
  width:48px;height:48px;border:1px solid var(--tg-control-border);border-radius:24px;
  color:var(--tg-accent-text);background:var(--tg-raised);font-size:27px;line-height:1;box-shadow:none;
}
.mines-page .mines-amount-row>label,.blackjack-page .bj-amount-field{
  min-height:48px;border:1px solid var(--tg-control-border);border-radius:16px;
  color:var(--tg-text);background:var(--tg-field);padding:0 12px;
}
.mines-page .mines-amount-row input,.blackjack-page .bj-amount-field input{
  height:46px;min-height:46px;min-width:0;padding:0;border:0;border-radius:0;
  color:var(--tg-text);background:transparent;font-size:18px;font-weight:600;line-height:24px;
}
.mines-page .mines-amount-row label>span:last-child,.blackjack-page .bj-amount-field>span{
  font-size:10px;line-height:14px;font-weight:500;letter-spacing:.3px;color:var(--tg-secondary);
}
.mines-page .mines-gift-pick{
  min-height:48px;padding:11px 14px;border:1px solid var(--tg-control-border);border-radius:16px;
  background:var(--tg-field);color:var(--tg-accent-text);font-size:13px;line-height:20px;
}
.mines-page .mines-gift-pick>span[data-mines-selected-gift]{min-width:0;overflow-wrap:anywhere}
.mines-page .mines-footnote{font-size:10px;line-height:15px;color:var(--tg-secondary)}
.mines-page .mines-risk-note{margin:2px 2px;font-size:11px;line-height:16px;color:var(--tg-secondary)}
.mines-page .mines-risk-note.increased{color:var(--tg-accent-text)}
.mines-page .mines-round-meta{font-size:12px;line-height:18px;color:var(--tg-secondary)}
.mines-page .mines-icon{width:44px;height:44px;border:1px solid var(--tg-control-border);border-radius:22px;background:var(--tg-surface);color:var(--tg-secondary)}
.mines-page .mines-header-actions{gap:4px}
.mines-page .mines-heading{gap:8px}
.mines-page .mines-heading h1{font-size:24px}

.blackjack-page .bj-bet-top{gap:12px;min-width:0}
.blackjack-page .bj-bet-top>.bj-eyebrow{font-size:10px;line-height:15px;color:var(--tg-secondary);letter-spacing:.5px}
.blackjack-page .bj-amount-field{width:156px;max-width:62%;gap:8px;flex:none}
.blackjack-page .bj-amount-field input{width:100%;text-align:right;flex:1}
.blackjack-page .bj-bet-panel .bj-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:12px 0;padding:3px}
.blackjack-page .bj-bet-panel .bj-chips>.bj-chip{
  z-index:1;width:auto;min-width:0;height:44px;min-height:44px;padding:0 7px;border:0;border-radius:22px;
  background:transparent;box-shadow:none;outline:0;transform:none;transition:opacity var(--tg-control-release,200ms) ease,color .16s ease;
}
.blackjack-page .bj-bet-panel .bj-chip>span{
  border:0;border-radius:0;color:var(--tg-secondary);background:transparent;box-shadow:none;text-shadow:none;
  font-size:16px;line-height:20px;font-weight:600;
}
.blackjack-page .bj-bet-panel .bj-chip[aria-pressed="true"]{background:var(--tg-selection)}
.blackjack-page .bj-bet-panel .bj-chip[aria-pressed="true"]>span{color:var(--tg-accent-text)}
.blackjack-page .bj-bet-panel .bj-chip:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:3px}
.blackjack-page .bj-play-actions{gap:7px}
.blackjack-page .bj-play-actions .bj-action{
  min-height:64px;padding:8px 3px;gap:4px;border:1px solid var(--tg-control-border);border-radius:19px;
  color:var(--tg-accent-text);background:var(--tg-raised);box-shadow:none;font-size:12px;line-height:17px;font-weight:600;
  transition:opacity var(--tg-control-release,200ms) ease,background-color .2s ease;
}
.blackjack-page .bj-play-actions .bj-action>span{font-size:23px;line-height:25px;color:inherit;font-family:inherit;font-weight:400}
.blackjack-page .bj-play-actions .bj-action.bj-hit{border-color:transparent;background:var(--tg-accent);color:#fff}
.blackjack-page .bj-play-actions .bj-action:disabled{
  color:var(--tg-secondary);border-color:var(--tg-control-border);background:var(--tg-raised);box-shadow:none;opacity:.4;
}
.blackjack-page .bj-play-actions .bj-action:disabled>span{color:inherit}
.blackjack-page .bj-action-hint{font-size:11px;line-height:16px;color:var(--tg-secondary);margin-top:9px}
.blackjack-page .bj-test-note{font-size:10px;line-height:15px;color:var(--tg-secondary)}
.blackjack-page .bj-room-switch{border-radius:23px;margin:8px 0 12px}
.blackjack-page .bj-room-switch>button{padding:8px 10px;gap:8px;min-height:52px;border-radius:19px}
.blackjack-page .bj-room-switch b{font-size:12px;line-height:16px;margin-bottom:2px}
.blackjack-page .bj-room-switch small{font-size:9px;line-height:13px;white-space:normal;color:var(--tg-secondary)}
.blackjack-page .bj-room-number{font-size:19px;letter-spacing:-.5px;color:var(--tg-accent-text)}
.blackjack-page .bj-tables-button,.blackjack-page .bj-tools button{
  min-height:44px;border:1px solid var(--tg-control-border);border-radius:22px;
  background:var(--tg-raised);color:var(--tg-accent-text);font-size:12px;line-height:17px;
}
.blackjack-page .bj-tools button>span,.blackjack-page .bj-tables-button>span:first-child{color:inherit}
.blackjack-page .bj-heading{grid-template-columns:minmax(0,1fr) repeat(3,44px);gap:6px}
.blackjack-page .bj-heading .icon-button{width:44px;height:44px;min-height:44px;border-radius:22px;background:var(--tg-surface);border-color:var(--tg-control-border);color:var(--tg-secondary)}

/* The fallback selected surface above remains usable without JavaScript. */
.game-control-selection{
  position:absolute;left:0;top:0;z-index:0;display:block;pointer-events:none;transform-origin:0 0;
  border-radius:22px;background:var(--tg-selection);box-shadow:inset 0 0 0 1px var(--tg-control-border);
}
.blackjack-page .bj-room-switch>.game-control-selection{border-radius:19px}
.mines-page [data-game-selection-ready="true"]>button[aria-pressed="true"],
.blackjack-page [data-game-selection-ready="true"]>button[aria-pressed="true"]{background:transparent;box-shadow:none}
.blackjack-page .bj-bet-panel [data-game-selection-ready="true"]>.bj-chip[aria-pressed="true"]{background:transparent}
.blackjack-page .bj-play-actions .bj-action:active:not(:disabled):not([aria-disabled="true"]),
.blackjack-page .bj-bet-panel .bj-chip:active:not(:disabled):not([aria-disabled="true"]){opacity:.55;transition-duration:0s}
@media(max-width:360px){
  .mines-page .mines-controls,.blackjack-page .bj-bet-panel{padding:10px}
  .mines-page .mines-primary{padding-left:8px;padding-right:8px;font-size:14px;line-height:20px}
  .mines-page .mines-action-row{gap:7px}
  .mines-page .mines-heading h1{font-size:21px}
  .mines-page .mines-eyebrow{font-size:7px;letter-spacing:1px}
  .blackjack-page .bj-play-actions{gap:5px}
  .blackjack-page .bj-play-actions .bj-action{font-size:11px;border-radius:17px}
  .blackjack-page .bj-room-switch>button{padding:7px;gap:6px}
  .blackjack-page .bj-room-switch small{font-size:8px}
  .blackjack-page .bj-heading{gap:4px}
  .blackjack-page .bj-heading h1{font-size:18px;letter-spacing:-.5px}
}
.reduce-motion .blackjack-page .bj-play-actions .bj-action,.reduce-motion .blackjack-page .bj-bet-panel .bj-chip{transition:none}
@media(prefers-reduced-motion:reduce){.blackjack-page .bj-play-actions .bj-action,.blackjack-page .bj-bet-panel .bj-chip{transition:none}}

/* telegram-alert.css */
/* Compact Telegram/iOS alert; the material stays static while only the card
   and shade opacity/transform animate. No looping or animated backdrop blur. */
dialog.telegram-alert{
  position:fixed;inset:0;z-index:100;box-sizing:border-box;display:grid;place-items:center;
  width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:20px;
  border:0;outline:0;background:transparent;color:var(--tg-text,#f5f6f8);
  font:inherit;isolation:isolate;overscroll-behavior:contain;-webkit-tap-highlight-color:transparent;
}
dialog.telegram-alert[hidden]{display:none!important}
dialog.telegram-alert::backdrop{background:transparent}
.telegram-alert-shade{position:absolute;inset:0;z-index:-1;background:#0006}
.telegram-alert-card{
  box-sizing:border-box;width:300px;max-width:100%;max-height:calc(100dvh - 40px);
  margin:auto;padding:19px 16px 16px;border:1px solid #ffffff18;border-radius:32px;
  background:var(--tg-alert-fill,#2b2d32fa);box-shadow:0 18px 60px #0005,inset 0 1px 0 #ffffff08;
  overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;text-align:left;
}
.telegram-alert-title{margin:0;font-family:inherit;font-size:17px;line-height:22px;font-weight:600;letter-spacing:-.3px;overflow-wrap:anywhere}
.telegram-alert-message{margin:7px 0 0;color:inherit;font-family:inherit;font-size:16px;line-height:21px;font-weight:400;letter-spacing:-.3px;white-space:pre-line;overflow-wrap:anywhere}
.telegram-alert-actions{display:flex;flex-direction:column;gap:8px;margin-top:17px}
.telegram-alert .telegram-alert-button{
  box-sizing:border-box;display:block;width:100%;min-height:44px;height:auto;margin:0;padding:11px 13px;
  border:0;border-radius:24px;color:var(--tg-text,#f5f6f8);background:var(--tg-alert-button,#ffffff12);
  font-family:inherit;font-size:17px;line-height:22px;font-weight:500;letter-spacing:-.3px;text-align:center;
  white-space:normal;overflow-wrap:anywhere;box-shadow:none;cursor:pointer;touch-action:manipulation;
  transform:scale(1);transition:opacity 180ms ease,transform 180ms cubic-bezier(.2,.9,.3,1);
}
.telegram-alert .telegram-alert-button[data-style=primary]{background:var(--tg-accent,#008cff);color:#fff;font-weight:600}
.telegram-alert .telegram-alert-button[data-style=destructive]{color:#ff453a}
.telegram-alert .telegram-alert-button:active{opacity:.7;transform:scale(.975);transition-duration:80ms}
.telegram-alert .telegram-alert-button:focus-visible{outline:2px solid var(--tg-accent-text,#64bbff);outline-offset:2px}
.telegram-alert[data-state=closing] .telegram-alert-card{opacity:0;transform:scale(.96)}
.telegram-alert[data-state=closing] .telegram-alert-shade{opacity:0}
.light-theme .telegram-alert{--tg-alert-fill:#f4f4f8fc;--tg-alert-button:#7676801f;color:var(--tg-text,#101114)}
.light-theme .telegram-alert-card{border-color:#ffffffd1;box-shadow:0 18px 60px #17253626,inset 0 1px 0 #fff}
.light-theme .telegram-alert .telegram-alert-button[data-style=destructive]{color:#ff3b30}
@media(max-width:350px){dialog.telegram-alert{padding:16px}.telegram-alert-card{padding:17px 16px 16px;max-height:calc(100dvh - 32px)}}
@media(prefers-reduced-motion:reduce){.telegram-alert .telegram-alert-button{transition:none}}
.reduce-motion .telegram-alert .telegram-alert-button{transition:none}

/* notification-banner.css */
/* Compact, non-modal feedback below Telegram's native controls and safe area. */
.notification-banner{position:fixed;z-index:70;top:calc(max(env(safe-area-inset-top,0px),var(--safe-top,0px)) + 10px);left:max(12px,var(--safe-left,0px));right:max(12px,var(--safe-right,0px));bottom:auto;box-sizing:border-box;display:flex;align-items:center;gap:11px;width:auto;max-width:424px;min-height:68px;margin:0 auto;padding:11px 44px 11px 13px;border-radius:20px;border:1px solid #ffffff19;background:#282b32;box-shadow:0 8px 28px #0005;color:#f6f8fc;text-align:left;touch-action:pan-y;user-select:none;-webkit-user-select:none;transform-origin:center top;isolation:isolate}
.notification-banner[hidden]{display:none!important}
.notification-banner-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}
.notification-banner-title{display:block;font-size:14px;line-height:1.3;letter-spacing:-.15px;font-weight:650;overflow-wrap:anywhere}
.notification-banner-detail{display:block;font-size:12px;line-height:1.35;color:#c5ccd6;overflow-wrap:anywhere}
.notification-banner-detail[hidden]{display:none}
.notification-banner-mark{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:12px;background:#219bff21;color:#75c7ff;font-size:20px;line-height:1;font-weight:650}
.notification-banner[data-kind=success] .notification-banner-mark{color:#85d4ff;background:#219bff28}
.notification-banner[data-kind=loss] .notification-banner-mark,.notification-banner[data-kind=warning] .notification-banner-mark{color:#ffb1bd;background:#ff6a8421}
/* Center through layout: generic button press transforms must not replace a
   translateY used for positioning, including while a long title wraps. */
.notification-banner-close{position:absolute;top:0;bottom:0;right:0;display:grid;place-items:center;box-sizing:border-box;width:44px;height:44px;margin:auto 0;padding:0;border:0;border-radius:50%;color:#bbc3ce;background:none;cursor:pointer;transform:none;transition:background-color .2s ease,color .16s ease;-webkit-tap-highlight-color:transparent}
.notification-banner-close svg{width:20px;height:20px}
.notification-banner-close:focus-visible{outline:2px solid #70c5ff;outline-offset:-6px}
.notification-banner .notification-banner-close:active:not(:disabled){background:#ffffff0d;transform:none;transition-duration:0s}
.notification-banner[data-dragging]{cursor:grabbing}
.notification-banner-announcer{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;pointer-events:none!important}
/* The server result stays available in the status line and history. */
.mines-page .mines-outcome{display:none}
.light-theme .notification-banner{background:#f4f6fa;color:#172331;border-color:#233d5b17;box-shadow:0 8px 28px #192b4326}
.light-theme .notification-banner-detail{color:#536174}
.light-theme .notification-banner-close{color:#647286}
.light-theme .notification-banner-mark{color:#1689d7}
.light-theme .notification-banner[data-kind=success] .notification-banner-mark{color:#0879c5}
.light-theme .notification-banner[data-kind=loss] .notification-banner-mark,.light-theme .notification-banner[data-kind=warning] .notification-banner-mark{color:#c83753}
@media(max-width:350px){.notification-banner{gap:9px;padding-left:11px;border-radius:18px}.notification-banner-title{font-size:13px}.notification-banner-detail{font-size:11px}.notification-banner-mark{width:30px;height:30px;border-radius:10px}}
@media(prefers-reduced-motion:reduce){.notification-banner{scroll-behavior:auto}}

/* liquid-glass.css */
/* Bounded web adaptation of the kit's Liquid Glass material. One backdrop per
   surface, fixed blur radius and static edge reflections. Only the existing
   selection/opacity/transform controllers animate; no shader or filter tween. */
:root{
  --glass-fill:#22262eee;
  --glass-live-fill:#22262eb8;
  --glass-edge:#ffffff38;
  --glass-inner:#ffffff10;
  --glass-shadow:#00000038;
  --glass-reflection:linear-gradient(125deg,#ffffff13,transparent 32%,transparent 68%,#a6d9ff0a);
}
:root[data-theme="light"]{
  --glass-fill:#f4f7faf2;
  --glass-live-fill:#eef3f9c7;
  --glass-edge:#ffffffd9;
  --glass-inner:#ffffff91;
  --glass-shadow:#18354d1c;
  --glass-reflection:linear-gradient(125deg,#ffffff78,transparent 34%,transparent 68%,#c7e4ff2b);
}
/* Older generic glass rules were filtering large game/wallet panels even when
   their paint was almost opaque. Keep optical work on navigation and menu. */
body .glass:not(.bottom-nav){backdrop-filter:none;-webkit-backdrop-filter:none}
body .bottom-nav.bottom-nav,body .context-menu{
  background:var(--glass-reflection),var(--glass-fill);
  box-shadow:0 6px 22px var(--glass-shadow),inset 0 1px 0 var(--glass-edge),inset 0 -1px 0 var(--glass-inner),inset 1px 0 0 var(--glass-inner),inset -1px 0 0 var(--glass-inner);
  -webkit-backdrop-filter:none;backdrop-filter:none;
}
body .context-menu{border-color:var(--glass-inner);border-radius:24px}
body .bottom-nav .nav-item{z-index:1}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  body .bottom-nav.bottom-nav,body .context-menu{
    background:var(--glass-reflection),var(--glass-live-fill);
    -webkit-backdrop-filter:blur(10px) saturate(125%);
    backdrop-filter:blur(10px) saturate(125%);
  }
}
/* Tiny world labels track a live WebGL canvas: translucent tinted fill is
   enough there; many nested backdrop passes add cost on every rendered frame. */
.bj-world-label,.bj-world-label.bj-hand-result{backdrop-filter:none;-webkit-backdrop-filter:none}
/* The existing effects control also provides an inexpensive opaque material.
   System transparency/contrast preferences get the same readable fallback. */
body.low-effects .bottom-nav.bottom-nav,body.low-effects .context-menu{
  background:var(--glass-reflection),var(--glass-fill);
  -webkit-backdrop-filter:none;backdrop-filter:none;
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
  body .bottom-nav.bottom-nav,body .context-menu{
    background:var(--tg-surface);-webkit-backdrop-filter:none;backdrop-filter:none;
    box-shadow:0 4px 14px var(--glass-shadow),inset 0 0 0 1px var(--tg-secondary);
  }
  body .bottom-nav .nav-selection{background:var(--tg-selection);box-shadow:inset 0 0 0 1px var(--tg-control-border)}
}
@media(forced-colors:active){
  body .bottom-nav.bottom-nav,body .context-menu{background:Canvas;border:1px solid CanvasText;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
  body .bottom-nav .nav-selection{background:Highlight;box-shadow:none}
  body .bottom-nav .nav-item.active{color:HighlightText}
}

/* case-roulette.css */
/* Static Telegram surfaces; only the reel track moves during a spin. */
.game-mode-card.game-mode-case{
  grid-column:auto;height:auto;min-height:0;max-height:none;aspect-ratio:1;
  background:radial-gradient(ellipse at 80% 75%,#30baf33a,transparent 65%),linear-gradient(115deg,#112b49,#15395d 52%,#26315c);
  border-color:#72c1ff48;box-shadow:inset 0 1px 0 #d9efff19;
}
.game-mode-case .game-mode-title{left:13px;top:14px;font-size:20px;max-width:120px;letter-spacing:-.55px}
.game-mode-case .game-mode-play{left:13px;bottom:12px;font-size:10px;gap:6px}
.game-mode-case .case-mode-art{position:absolute;z-index:2;width:100%;height:75%;right:-3%;bottom:12px;pointer-events:none}
.case-mode-art img{display:block;width:100%;height:100%;object-fit:contain}
.case-mode-tag{position:absolute;left:13px;top:41px;z-index:3;padding:2px 5px;border-radius:5px;color:#d1e9ff;background:#97c9ff1c;font-size:7px;font-weight:650;line-height:10px;letter-spacing:.25px;text-transform:uppercase}
.case-mode-caption{display:none}
.game-modes-grid .game-mode-mines{grid-column:auto;height:auto;min-height:0;max-height:none;aspect-ratio:1}
.game-mode-mines .mode-mines-art{width:88%;height:58%;right:3%;bottom:22px;gap:5px}
.game-mode-mines .mode-mines-tile{width:30%;height:64%;border-radius:10px}
.game-mode-mines .mode-mines-tile svg{width:80%;height:80%;max-width:40px;max-height:40px}

body .bottom-sheet.case-roulette-sheet{
  --case-tile-size:100px;--case-tile-gap:10px;--case-panel:var(--tg-surface,#24272d);--case-field:var(--tg-field,#1d2026);
  --case-border:var(--tg-control-border,#ffffff0c);--case-muted:var(--tg-secondary,#a1a7b1);
  width:min(460px,100%);max-height:calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - 12px);
  padding:34px 16px 0;border-radius:30px 30px 0 0;background:var(--case-panel);color:var(--tg-text,#f5f6f8);
  overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-padding-bottom:120px;
}
.case-roulette{min-width:0;max-width:100%;font-size:14px}
.case-roulette *, .case-roulette *:before, .case-roulette *:after{box-sizing:border-box}
.case-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.case-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-right:43px;margin:1px 0 15px}
.case-cost,.case-demo-badge{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border-radius:19px;padding:7px 13px;font-size:12px;line-height:18px;font-weight:600;background:var(--tg-raised,#2d3037);color:var(--tg-text,#f5f6f8);white-space:nowrap}
.case-demo-badge{background:#3399ff14;color:var(--tg-accent-text,#64bbff);font-weight:550}
.case-cost{gap:6px}
.case-unit-icon{display:block;flex:none;width:16px;height:16px;object-fit:contain;pointer-events:none}
.case-open-price{display:flex;align-items:center;justify-content:center;gap:5px}
.case-open-price .case-unit-icon{width:14px;height:14px}
.case-balance-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px;margin:-5px 0 5px}
.case-balance-amount{color:var(--case-muted);font-size:11px;line-height:16px;font-variant-numeric:tabular-nums}
.case-reels{position:relative;display:flex;flex-direction:column;gap:9px;min-width:0;margin:0 -5px 15px}
.case-reel{position:relative;isolation:isolate;overflow:hidden;flex:none;width:100%;height:calc(var(--case-tile-size) + 16px);padding:8px 0;border-radius:18px;background:var(--case-field);contain:layout paint}
.case-reel:before,.case-reel:after{content:"";position:absolute;z-index:3;left:50%;width:0;height:0;transform:translateX(-50%);border-left:7px solid transparent;border-right:7px solid transparent;pointer-events:none}
.case-reel:before{top:0;border-top:10px solid var(--tg-accent,#008bff)}
.case-reel:after{bottom:0;border-bottom:10px solid var(--tg-accent,#008bff)}
.case-track{display:flex;align-items:center;gap:var(--case-tile-gap);width:max-content;height:var(--case-tile-size);padding:0;transform:translateX(0);backface-visibility:hidden}
.case-reel.is-spinning .case-track,.case-reel.is-preview .case-track{will-change:transform}
.case-reel-enter,.case-reel-exit{will-change:transform,opacity}
.case-tile{position:relative;display:flex;flex:none;flex-direction:column;align-items:center;justify-content:center;width:var(--case-tile-size);height:var(--case-tile-size);padding:9px 5px 5px;border-radius:15px;background:var(--tg-raised,#2d3037);border:1px solid transparent;overflow:hidden}
.case-gift-image{display:block;object-fit:contain;width:72px;height:72px;max-width:85%;flex:none;pointer-events:none}
.case-tile-name{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;color:var(--tg-text,#f5f6f8);font-size:9px;line-height:14px;font-weight:550}
.case-gift-price{position:absolute;z-index:1;top:4px;left:5px;max-width:calc(100% - 10px);padding:2px 5px;border-radius:8px;background:#14171ed9;color:#e9f4ff;font-size:9px;line-height:12px;font-weight:650;white-space:nowrap;font-variant-numeric:tabular-nums;pointer-events:none}
.case-gift-price.is-rare{color:#b5d9ff}
.case-tile .case-gram-image{width:65px;height:65px;margin:3px 0 4px}
.case-tile.is-gram .case-tile-name{font-variant-numeric:tabular-nums}
.case-reel.is-settled .case-tile.is-result{border-color:var(--tg-accent,#008bff);box-shadow:inset 0 0 0 1px var(--tg-accent,#008bff);background:linear-gradient(#168cff0c,#168cff0c),var(--tg-raised,#2d3037)}
.case-segments{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:4px;margin-bottom:22px;border-radius:25px;background:var(--case-field);border:1px solid var(--case-border)}
.case-segments:before{content:"";position:absolute;z-index:0;top:4px;bottom:4px;left:4px;width:calc((100% - 8px)/3);border-radius:21px;background:var(--tg-accent,#008bff);box-shadow:inset 0 1px 0 #ffffff1a;transform:translateX(calc(var(--case-selected,0)*100%));transition:transform .38s cubic-bezier(.22,.8,.25,1);pointer-events:none}
.case-segments:has(button[data-count="2"][aria-pressed="true"]){--case-selected:1}
.case-segments:has(button[data-count="3"][aria-pressed="true"]){--case-selected:2}
.case-segments button{position:relative;z-index:1;min-width:0;min-height:44px;border:0;border-radius:21px;background:transparent;color:var(--tg-text,#f5f6f8);font-size:14px;line-height:20px;font-weight:550;transition:opacity .16s ease}
.case-segments button[aria-pressed="true"]{color:#fff}
.case-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}
.case-section-heading h3{margin:0;color:var(--case-muted);font-size:11px;font-weight:600;line-height:16px;letter-spacing:.55px;text-transform:uppercase}
.case-market-status{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-5px 0 10px;color:var(--case-muted);font-size:10px;line-height:15px}
.case-market-status[hidden]{display:none}
.case-market-status button{flex:none;padding:8px 2px;min-height:36px;background:transparent;color:var(--tg-accent-text,#64bbff);font:inherit;font-weight:600;border:0}
.case-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:17px;contain:layout paint}
.case-catalog-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:17px 5px 9px;border-radius:16px;background:var(--tg-raised,#2d3037);text-align:center}
.case-catalog-item img{width:72px;height:72px;object-fit:contain;max-width:100%;pointer-events:none}
.case-catalog-item strong{width:100%;margin:4px 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:15px;font-weight:550}
.case-footer{position:sticky;z-index:5;bottom:0;margin:0 -16px;padding:12px 16px calc(12px + var(--safe-bottom,0px));background:var(--case-panel);border-top:1px solid var(--case-border)}
.case-open-button{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:51px;gap:1px;padding:9px 18px;border:0;border-radius:25px;background:var(--tg-accent,#008bff);color:#fff;font-family:inherit;font-size:15px;font-weight:650;line-height:20px;letter-spacing:-.2px;box-shadow:inset 0 1px 0 #ffffff1a;transition:opacity .15s ease}
.case-open-button small{color:#e4f3ff;font-size:11px;font-weight:450;line-height:15px}
.case-daily-button{margin-top:8px;background:linear-gradient(120deg,#314760,#26394f);border:1px solid #85c6ff38;color:#c7e7ff}
.case-daily-button small{color:#9eb5cc;font-variant-numeric:tabular-nums}
.case-daily-button:not(:disabled){border-color:#83d8bd60;background:linear-gradient(120deg,#1c6656,#214d54);color:#e2fff6}
.case-daily-button:not(:disabled) small{color:#b9e4d8}
.case-roulette.is-daily .case-segments:before{opacity:0}
.case-roulette button:disabled{opacity:.45;cursor:default}
.case-roulette button:active:not(:disabled){opacity:.78}
.case-roulette button:focus-visible,.case-awards-ok:focus-visible{outline:2px solid var(--tg-accent-text,#64bbff);outline-offset:3px}

body .bottom-sheet.case-results-sheet{padding-top:54px;padding-bottom:calc(17px + var(--safe-bottom,0px));overflow:hidden auto}
.case-awards{position:relative;isolation:isolate;min-width:0;animation:case-awards-enter .46s cubic-bezier(.2,.75,.25,1) both}
.case-awards-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 18px;padding-right:2px}
.case-awards-header h2{margin:0;font-size:18px;line-height:24px;font-weight:650;letter-spacing:-.4px;color:var(--tg-text,#f5f6f8)}
.case-awards-header .case-demo-badge{min-height:31px;padding:5px 12px;font-size:11px}
.case-awards-list{padding:6px 15px;border:1px solid var(--case-border);border-radius:24px;background:var(--tg-raised,#2d3037)}
.case-award{display:flex;align-items:center;gap:13px;min-width:0;min-height:91px;padding:12px 0;animation:case-award-enter .5s cubic-bezier(.2,.75,.25,1) both;animation-delay:calc(var(--award-index,0)*80ms)}
.case-award+.case-award{border-top:1px solid var(--case-border)}
.case-award-image{display:grid;place-items:center;flex:none;width:64px;height:64px;border-radius:17px;background:var(--case-field)}
.case-award-image img{display:block;width:58px;height:58px;max-width:none;object-fit:contain}
.case-award-caption{display:flex;flex-direction:column;gap:4px;min-width:0}
.case-award-caption strong{color:var(--tg-text,#f5f6f8);font-size:15px;line-height:20px;font-weight:650;overflow-wrap:anywhere}
.case-award-caption small,.case-awards-gram-total{color:var(--case-muted);font-size:12px;line-height:17px}
.case-awards-gram-total{margin:12px 3px 0;font-variant-numeric:tabular-nums}
.case-award-image .case-gram-image{width:49px;height:49px}
.case-awards-ok{margin-top:20px;font-family:inherit}
.case-awards-ok:active{opacity:.78}
.case-confetti{position:absolute;z-index:2;inset:-35px -8px 0;overflow:hidden;pointer-events:none;border-radius:20px}
.case-confetti i{position:absolute;top:-15px;left:var(--x);width:7px;height:12px;border-radius:2px;background:var(--color);opacity:0;animation:case-confetti-drop 2100ms cubic-bezier(.12,.55,.45,1) both;animation-delay:var(--delay)}
.case-confetti i:nth-child(3n){width:9px;height:9px;border-radius:50%}
.case-confetti i:nth-child(4n){width:5px;height:15px}
@keyframes case-awards-enter{from{opacity:0;transform:translate3d(0,24px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes case-award-enter{from{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes case-confetti-drop{0%{opacity:0;transform:translate3d(0,-16px,0) rotate(0)}10%{opacity:1}78%{opacity:1}100%{opacity:0;transform:translate3d(var(--dx),360px,0) rotate(var(--turn))}}

@media(max-width:360px){
  body .bottom-sheet.case-roulette-sheet{--case-tile-size:84px;padding-left:13px;padding-right:13px}
  .case-topline{gap:7px;margin-bottom:12px}
  .case-cost,.case-demo-badge{padding:5px 8px;font-size:10px}
  .case-reels{gap:8px;margin-left:-3px;margin-right:-3px}
  .case-tile{padding-top:5px;border-radius:13px}
  .case-gift-image{width:59px;height:59px}
  .case-tile .case-gram-image{width:51px;height:51px;margin:3px 0 5px}
  .case-tile-name{font-size:8px;line-height:12px}
  .case-catalog{gap:7px}
  .case-catalog-item{padding:17px 4px 8px;border-radius:13px}
  .case-catalog-item img{width:62px;height:62px}
  .case-catalog-item strong{font-size:9px}
  .case-footer{margin-left:-13px;margin-right:-13px;padding-left:13px;padding-right:13px}
  .game-mode-case .game-mode-title{left:11px;top:13px;font-size:17px;max-width:100px}
  .case-mode-tag{left:11px;top:37px}
  .game-mode-case .game-mode-play{left:11px;font-size:10px}
}
@media(max-height:720px){
  .case-topline{margin-bottom:10px}
  .case-reels{gap:7px;margin-bottom:12px}.case-segments{margin-bottom:17px}
  .case-catalog-item img{height:64px;width:64px}.case-footer{padding-top:9px}
}
@media(max-height:720px){
  body .bottom-sheet.case-roulette-sheet:not(.case-results-sheet){--case-tile-size:84px;padding-top:28px}
  .case-reels{margin-bottom:10px}
  .case-tile{padding-top:5px;border-radius:13px}
  .case-gift-image{width:59px;height:59px}
  .case-tile .case-gram-image{width:51px;height:51px;margin:3px 0 5px}
  .case-tile-name{font-size:8px;line-height:12px}
}
@media(prefers-reduced-motion:reduce){
  .case-roulette button,.case-track,.case-segments:before,.game-mode-card.game-mode-case{transition:none!important;animation:none!important}
  .case-awards,.case-award{animation:none!important}.case-confetti{display:none}
}
.reduce-motion .case-roulette button,.reduce-motion .case-track,.reduce-motion .case-segments:before,.reduce-motion .game-mode-card.game-mode-case{transition:none!important;animation:none!important}
.reduce-motion .case-awards,.reduce-motion .case-award{animation:none!important}.reduce-motion .case-confetti{display:none}

/* A quiet lift marks the exact accepted cells before the result sheet opens. */
body .case-reel.is-settled .case-tile.is-result{background:linear-gradient(#ffffff18,#ffffff18),var(--tg-raised,#2d3037);box-shadow:inset 0 0 0 1px var(--tg-accent,#008bff),inset 0 0 22px #ffffff0c}
.case-reel.is-settled .case-tile.is-result .case-gift-image{filter:brightness(1.12)}

/* upgrade.css */
.game-mode-card.game-mode-upgrade{grid-column:auto;height:auto;min-height:0;max-height:none;aspect-ratio:1;background:linear-gradient(140deg,#172d4a,#244368 60%,#253653);border-color:#8fc9ff35}
.game-mode-upgrade .game-mode-title{left:13px;top:14px;font-size:20px;letter-spacing:-.5px}
.game-mode-upgrade .game-mode-play{left:13px;bottom:12px;font-size:10px;gap:6px}
.upgrade-mode-art{position:absolute;inset:18% -3% 10%;pointer-events:none}
.upgrade-mode-art img{display:block;width:100%;height:100%;object-fit:contain}
.game-modes-grid .game-mode-card.mode-wide-banner{grid-column:1/-1;aspect-ratio:3;min-height:112px;max-height:none;height:auto;border-radius:22px;border-color:#ffffff29}
.game-modes-grid .game-mode-blackjack{grid-column:1/-1;height:104px;aspect-ratio:auto;max-height:none}
.mode-wide-banner .mode-banner-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.mode-wide-banner .mode-banner-label{position:absolute;z-index:2;left:16px;top:14px;padding:4px 7px;border:1px solid #ffffff30;border-radius:6px;background:#ffffff1f;color:#fff;font-size:8px;font-weight:700;letter-spacing:1px}
.game-modes-grid .mode-wide-banner .game-mode-title{z-index:2;left:16px;top:auto;bottom:32px;font-size:25px;letter-spacing:-.7px;color:#fff;text-shadow:0 1px 9px #09304b25}
.game-modes-grid .mode-wide-banner .game-mode-play{z-index:2;left:16px;bottom:14px;font-size:10px;color:#fff;gap:7px}
.game-mode-upgrade.mode-wide-banner{background:#167b53}
.game-mode-upgrade.mode-wide-banner{background:radial-gradient(ellipse at 80% 35%,#9bfa8a88,transparent 68%),linear-gradient(110deg,#076e52,#1db566 72%,#85de73)}
.game-mode-rocket.mode-wide-banner{background:radial-gradient(ellipse at 85% 10%,#b6e7ff77,transparent 65%),linear-gradient(115deg,#2174bf,#367bdd 68%,#839ef5)}
.mode-gift-cutout{position:absolute;right:7%;top:1%;height:98%;width:38%;object-fit:contain;z-index:2;pointer-events:none}
.rocket-banner-gift{right:5%;transform:rotate(12deg);width:39%}
.rocket-banner-orbit{position:absolute;width:66%;height:100%;right:-5%;top:0;border:1px solid #ffffff25;border-radius:50%;transform:rotate(-25deg);box-shadow:0 0 0 16px #ffffff08,0 0 0 34px #ffffff05}
.upgrade-banner-dial{position:absolute;right:7%;top:6%;height:88%;aspect-ratio:1;border:8px solid #c7ffc84a;border-right-color:#e5ffc1;border-bottom-color:#a6f6a870;border-radius:50%;box-shadow:0 0 0 10px #e5ffdc13}
.upgrade-banner-dial:after{content:"";position:absolute;right:-13px;top:34%;border-top:8px solid transparent;border-bottom:8px solid transparent;border-right:12px solid #ffe596;transform:rotate(-8deg)}
.upgrade-banner-gift{right:10%;top:16%;height:69%;width:30%;transform:rotate(-9deg)}
.mines-banner-gifts{position:absolute;inset:25% 0 15%;pointer-events:none}
.mines-banner-gifts img{position:absolute;width:58%;height:90%;object-fit:contain}
.mines-banner-gifts img:nth-child(1){left:-3%;top:12%;transform:rotate(-17deg)}
.mines-banner-gifts img:nth-child(2){left:21%;top:-11%;z-index:2}
.mines-banner-gifts img:nth-child(3){right:-5%;top:14%;transform:rotate(18deg)}
.game-mode-card.game-mode-upgrade-shop{grid-column:auto;height:auto;min-height:0;max-height:none;aspect-ratio:1;background:linear-gradient(140deg,#183b47,#225767 65%,#273e5c);border-color:#8ccbe435}
.game-mode-upgrade-shop .game-mode-title{left:13px;top:14px;font-size:20px;letter-spacing:-.5px}
.game-mode-upgrade-shop .game-mode-play{left:13px;bottom:12px;font-size:10px;gap:6px}
.upgrade-shop-art{position:absolute;inset:28% 1% 17%;pointer-events:none}
.upgrade-shop-art img{position:absolute;width:53%;height:95%;object-fit:contain}
.upgrade-shop-art img:nth-child(1){left:0;bottom:0;transform:rotate(-13deg)}
.upgrade-shop-art img:nth-child(2){left:25%;bottom:13%;z-index:1}
.upgrade-shop-art img:nth-child(3){right:-2%;bottom:-2%;transform:rotate(12deg)}
.upgrade-app,.up-owned-section,.up-owned-detail{--up-panel:var(--tg-bg,#191b1f);--up-field:var(--tg-field,#1d2026);--up-raised:var(--tg-raised,#2d3037);--up-text:var(--tg-text,#f5f6f8);--up-muted:var(--tg-secondary,#a1a7b1);--up-border:var(--tg-control-border,#ffffff0d);--up-blue:var(--tg-accent,#008bff);min-width:0;color:var(--up-text);font-size:14px}
.upgrade-view .app-header{display:none}
.upgrade-view .screen{min-height:var(--effective-app-height,100dvh);padding-top:calc(var(--safe-top,0px) + 8px);background:var(--tg-bg,#191b1f)}
.upgrade-page{position:relative;display:flex;flex-direction:column;width:100%;max-width:460px;min-height:calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - 130px);margin:0 auto;padding:0 0 12px;background:var(--up-panel)}
body .bottom-sheet:has(.upgrade-shop-dialog){width:min(460px,100%);max-height:calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - 18px);padding:29px 15px calc(14px + var(--safe-bottom,0px));background:rgba(27,31,38,.88);border:1px solid #ffffff19;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overflow-y:auto}
.upgrade-shop-dialog{--up-panel:rgba(27,31,38,.96);--up-raised:rgba(255,255,255,.055);position:relative;min-height:0}
.upgrade-shop-dialog .up-header{margin-right:37px;grid-template-columns:32px 1fr;gap:7px}
.upgrade-shop-dialog .up-demo{display:none}
.upgrade-shop-dialog .up-title{font-size:17px;line-height:23px}
.upgrade-shop-dialog .up-gift{border-color:#ffffff0d;background:var(--up-raised)}
.upgrade-shop-dialog .up-gift.is-selected{border-color:#4caaff;background:#168fff20}
.upgrade-shop-dialog .up-footer{bottom:calc(-14px - var(--safe-bottom,0px));margin-top:0;padding-bottom:calc(1px + var(--safe-bottom,0px))}
.light-theme .bottom-sheet:has(.upgrade-shop-dialog){background:rgba(247,249,252,.9);border-color:#142d4b14}
.light-theme .upgrade-shop-dialog{--up-panel:rgba(247,249,252,.97);--up-raised:rgba(20,45,75,.045)}
.light-theme .upgrade-shop-dialog .up-gift{border-color:#142d4b0d}
.light-theme .upgrade-shop-dialog .up-sort-menu{background:rgba(249,251,255,.94);border-color:#142d4b14}
.upgrade-app *,.up-owned-section *{box-sizing:border-box}
.upgrade-app button,.up-owned-section button{font-family:inherit;cursor:pointer;color:inherit}
.upgrade-app button:disabled{opacity:.45;cursor:default}
.upgrade-app button:focus-visible,.up-owned-section button:focus-visible{outline:2px solid var(--tg-accent-text,#64bbff);outline-offset:3px}
.upgrade-app button:active:not(:disabled){opacity:.8}
.up-header{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:42px;margin:0 0 6px}
.up-header-spacer{width:1px}
.up-title{min-width:0;margin:0;font-size:19px;line-height:25px;font-weight:650;letter-spacing:-.45px}
.up-icon-button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:13px;background:var(--up-field);font-size:21px;line-height:1;letter-spacing:1px}
.up-demo{padding:5px 8px;border-radius:10px;background:#3399ff12;color:var(--tg-accent-text,#64bbff);font-size:10px;line-height:15px}
.up-wallet{display:flex;justify-content:space-between;align-items:center;min-height:30px;margin-bottom:9px;color:var(--up-muted);font-size:12px}
.up-wallet>span,.up-price{display:flex;align-items:center;justify-content:center;gap:4px;font-variant-numeric:tabular-nums}
.up-unit{display:inline-block;flex:none;width:14px;height:14px;object-fit:contain}
.up-sort-menu{position:absolute;z-index:6;top:43px;left:0;display:flex;flex-direction:column;min-width:215px;padding:5px;border:1px solid #ffffff1c;border-radius:15px;background:rgba(38,43,52,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.up-sort-menu button{display:flex;align-items:center;gap:10px;min-height:42px;padding:10px;text-align:left;border:0;border-radius:10px;background:transparent;font-size:13px}
.up-sort-menu svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.up-sort-check{width:14px;margin-left:auto;color:#64bbff;font-size:17px}
.up-sort-menu button[aria-checked=true]{background:var(--up-field);color:var(--tg-accent-text,#64bbff)}
.up-gift-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:15px;contain:layout paint}
.up-gift{display:flex;flex-direction:column;align-items:center;min-width:0;padding:10px 5px 9px;border:1px solid transparent;border-radius:16px;background:var(--up-raised,#2d3037);text-align:center}
.up-gift.is-selected{border-color:var(--up-blue,#008bff);background:#008bff12}
.up-gift img:not(.up-unit){width:74px;height:74px;max-width:100%;object-fit:contain;pointer-events:none}
.up-gift strong{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:5px 0 4px;font-size:10px;line-height:15px;font-weight:550}
.up-gift .up-price{max-width:100%;font-size:10px;line-height:15px;color:var(--up-muted,#a1a7b1);white-space:nowrap}
.up-gift .up-unit{width:12px;height:12px}
.up-primary{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:12px 16px;border:0;border-radius:24px;background:var(--up-blue,#008bff);color:#fff!important;font-size:14px;line-height:20px;font-weight:650}
.up-footer{position:sticky;z-index:4;bottom:calc(78px + var(--safe-bottom,0px));margin-top:auto;padding:11px 0 1px;background:var(--up-panel);border-top:1px solid var(--up-border)}
.up-text-button{display:block;width:100%;min-height:37px;padding:9px 7px;border:0;background:transparent;color:var(--tg-accent-text,#64bbff)!important;font-size:11px;line-height:16px;text-align:center}
.up-empty{padding:28px 10px;margin:0;color:var(--up-muted,#a1a7b1);text-align:center;font-size:13px;line-height:20px}
.up-owned-picker{display:flex;flex:1;flex-direction:column;min-width:0;gap:32px}
.up-owned-picker:not(.is-empty)>.up-gift-grid{flex:none;margin-bottom:0}
.up-owned-picker:not(.is-empty)>.up-primary{flex:none;margin-block:auto}
.up-owned-picker.is-empty{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:24px}
.up-owned-picker.is-empty>.up-empty{width:100%;padding-bottom:0}
.up-market-status{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:5px 0 12px;color:var(--up-muted);font-size:11px;line-height:16px}
.up-market-status button{min-height:36px;padding:7px;border:0;border-radius:9px;background:var(--up-field);color:var(--tg-accent-text,#64bbff);font-size:11px}
.up-selections{display:grid;grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);gap:8px;align-items:center}
.up-selection-arrow{display:grid;place-items:center;color:var(--up-muted);pointer-events:none}
.up-selection-arrow svg{display:block;width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.up-selection{--up-selection-ray:72 169 255;display:grid;grid-template-rows:14px minmax(52px,1fr) 16px 14px;justify-items:center;gap:2px;min-width:0;min-height:122px;aspect-ratio:1;padding:6px 4px;border:0;border-radius:17px;background:transparent;isolation:isolate}
.up-selection-target{--up-selection-ray:255 101 118}
.up-selection-label{color:var(--up-muted);font-size:10px;line-height:14px}
.up-selection-art{position:relative;display:grid;place-items:center;width:100%;height:100%;min-height:0;overflow:hidden;isolation:isolate}
.up-selection-art:before{content:"";position:absolute;inset:-22%;z-index:-1;background:repeating-conic-gradient(from -12deg,rgb(var(--up-selection-ray)/.26) 0deg 13deg,transparent 13deg 30deg);-webkit-mask-image:radial-gradient(ellipse,#000 7%,#0008 36%,transparent 68%);mask-image:radial-gradient(ellipse,#000 7%,#0008 36%,transparent 68%);pointer-events:none}
.up-selection img:not(.up-unit){position:relative;width:76px;height:76px;max-width:100%;max-height:100%;object-fit:contain;pointer-events:none}
.up-selection strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;font-weight:600}
.up-selection .up-price{color:var(--up-muted);font-size:10px;line-height:14px}
.up-selection-cost{height:14px}
.up-selection-placeholder{display:grid;place-items:center;width:60px;height:60px;color:rgb(var(--up-selection-ray))}
.up-selection-placeholder svg{display:block;width:50px;height:50px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.light-theme .up-selection-art:before{opacity:.8}
.up-gauge{position:relative;flex:none;width:min(300px,100%);aspect-ratio:1;margin:20px auto 21px;contain:layout}
.up-gauge svg{display:block;width:100%;height:100%;fill:none;stroke-width:7}
.up-gauge-track{stroke:var(--up-field)}
.up-gauge-chance{stroke:var(--up-blue);stroke-linecap:butt}
.up-gauge-caption{position:absolute;inset:20%;display:grid;grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);justify-items:center;text-align:center}
.up-gauge-caption strong{grid-row:2;transform:translateY(-11px);font-size:38px;line-height:44px;letter-spacing:-1px;font-weight:650;font-variant-numeric:tabular-nums}
.up-gauge-caption span{grid-row:3;align-self:start;transform:translateY(-5px);max-width:100%;color:var(--up-muted);font-size:11px;line-height:16px}
.up-gauge.is-loss .up-gauge-track,.up-gauge.is-loss .up-gauge-chance{stroke:#f05c65}
.up-gauge.is-loss .up-gauge-caption strong{color:#f77980}
.up-pointer{position:absolute;inset:0;transform-origin:50% 50%;pointer-events:none;will-change:auto}
.up-pointer:before{content:"";position:absolute;top:-1%;left:50%;transform:translateX(-50%);width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-top:13px solid var(--up-text)}
.up-result{display:flex;flex-direction:column;align-items:center;padding:18px 0 27px;text-align:center}
.up-result>img{width:160px;height:160px;object-fit:contain}
.up-win-screen{display:flex;flex-direction:column;justify-content:center;flex:1;width:100%;min-height:calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - 145px);gap:22px;padding:20px 0 26px}
.up-win-screen .up-result{padding:0;position:relative;isolation:isolate}
.up-win-screen h2{margin:0 0 16px;font-size:27px;line-height:34px;font-weight:750;letter-spacing:-.7px;text-align:center}
.up-win-art{position:relative;width:min(250px,74vw);aspect-ratio:1;display:grid;place-items:center;margin:0 auto;isolation:isolate}
.up-win-art>img,.up-tgs-surface{position:absolute;inset:8%;width:84%;height:84%;object-fit:contain;z-index:1}
.up-win-art>img[hidden]{display:none}
.up-tgs-surface canvas{display:block;width:100%!important;height:100%!important}
.up-sun-rays{position:absolute;inset:-18%;z-index:0;border-radius:50%;background:repeating-conic-gradient(from 6deg,#68aaff38 0deg 14deg,transparent 14deg 30deg);-webkit-mask-image:radial-gradient(circle,#000 8%,#0008 43%,transparent 71%);mask-image:radial-gradient(circle,#000 8%,#0008 43%,transparent 71%);animation:upgrade-win-rays 36s linear infinite;pointer-events:none}
@keyframes upgrade-win-rays{to{transform:rotate(360deg)}}
.up-win-screen .up-result h3{margin:10px 0 5px}
.up-win-screen .up-result p{margin:3px 0 12px}
.up-win-screen>.up-primary{max-width:370px;margin:0 auto}
.reduce-motion .up-sun-rays,.app-hidden .up-sun-rays{animation:none}
@media(prefers-reduced-motion:reduce){.up-sun-rays{animation:none}}
@media(max-height:650px){.up-win-screen{gap:16px;padding:10px 0}.up-win-art{width:190px}.up-win-screen h2{font-size:24px;margin-bottom:7px}}
.up-result h3{margin:17px 0 6px;font-size:20px;line-height:27px;letter-spacing:-.4px}
.up-result p{margin:0 0 10px;color:var(--up-muted);font-size:12px;line-height:18px}
.up-result .up-price{font-size:14px;line-height:20px}
.up-confirmation{padding:17px 0 24px;text-align:center}
.up-basket{display:grid;gap:10px;padding:14px 0 20px}
.up-basket-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 8px;border-radius:16px;background:var(--up-raised)}
.up-basket-row>img{width:56px;height:56px;object-fit:contain}
.up-basket-info{display:grid;gap:5px;min-width:0;text-align:left;justify-items:start}
.up-basket-info>strong{font-size:12px;overflow-wrap:anywhere}
.up-basket-info .up-price{font-size:12px}
.up-basket-info .up-detail-status{margin:0;font-size:10px;line-height:14px;text-align:left}
.up-basket-quantity{display:flex;align-items:center;gap:2px}
.up-basket-quantity button{display:grid;place-items:center;width:36px;min-height:44px;border:0;border-radius:10px;background:var(--up-panel);color:var(--up-text);font-size:22px}
.up-basket-quantity span{min-width:20px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums}
.up-basket-total{display:flex;justify-content:space-between;gap:12px;font-size:14px;margin:0 0 12px}
.up-confirmation>img{width:138px;height:138px;object-fit:contain}
.up-confirmation h3{margin:12px 0 7px;font-size:20px;line-height:26px}
.up-confirmation p{margin:0 auto 15px;max-width:250px;color:var(--up-muted);font-size:13px;line-height:20px}
.up-confirmation .up-price{font-size:17px;line-height:23px}
.up-owned-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:18px 0 12px}
.up-owned-heading h3{margin:0;font-size:16px;line-height:22px}
.up-owned-heading button{min-height:36px;padding:8px 11px;border:0;border-radius:12px;background:#008bff13;color:var(--tg-accent-text,#64bbff);font-size:12px}
.up-owned-section .up-gift{background:var(--tg-raised,#2d3037)}
.up-owned-detail{text-align:center}
.up-owned-detail h2{margin:3px 0 12px;font-size:22px;line-height:29px;letter-spacing:-.5px}
.up-owned-detail>img{display:block;width:156px;height:156px;object-fit:contain;margin:0 auto 10px}
.up-detail-status{margin:0 0 18px;color:var(--up-muted);font-size:12px;line-height:18px}
.up-owned-detail dl{display:flex;flex-direction:column;gap:0;padding:0 13px;margin:0 0 20px;border-radius:16px;background:var(--up-raised)}
.up-owned-detail dl>div{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:10px 0;border-bottom:1px solid var(--up-border)}
.up-owned-detail dl>div:last-child{border-bottom:0}
.up-owned-detail dt{color:var(--up-muted);font-size:11px;text-align:left}
.up-owned-detail dd{margin:0;font-size:12px;text-align:right}
.up-owned-detail .up-primary:disabled{opacity:.45;cursor:default}
@media(max-width:360px){.up-title{font-size:17px}.up-gift-grid{gap:7px}.up-gift img:not(.up-unit){height:66px;width:66px}.up-gift strong{font-size:9px}.up-gauge{width:min(280px,100%);margin:17px auto 18px}.up-selections{grid-template-columns:minmax(0,1fr) 23px minmax(0,1fr);gap:6px}.up-selection-arrow svg{width:23px;height:23px}.up-selection img:not(.up-unit){height:60px;width:60px}.up-selection-label{font-size:9px}.game-mode-upgrade .game-mode-title{font-size:18px}}
@media(max-height:650px){.up-gauge{width:min(270px,100%);margin:16px auto}.up-gauge-caption strong{font-size:35px;line-height:41px}.up-header{margin-bottom:4px}.up-wallet{margin-bottom:7px}}
@media(prefers-reduced-motion:reduce){.up-pointer{will-change:auto}}
.reduce-motion .up-pointer{will-change:auto}

/* Supplied artwork includes its own titles: preserve every edge and inscription. */
.game-mode-card.mode-provided-banner{padding:0;display:block;min-height:0;height:auto;aspect-ratio:auto;overflow:hidden;background:#0c1017;isolation:isolate}
.game-mode-card.mode-provided-banner::before,.game-mode-card.mode-provided-banner::after{display:none}
.game-mode-card.mode-provided-banner>img{position:relative;display:block;width:100%;height:auto;max-width:none;object-fit:contain;transform:none;filter:none;opacity:1}
.game-mode-card.mode-provided-banner.mode-wide-banner{grid-column:1/-1}
.game-modes-grid .game-mode-card.mode-provided-banner:is(.game-mode-rocket,.game-mode-blackjack){aspect-ratio:3;height:auto;min-height:0;contain:none}
.mode-provided-banner .mode-banner-art{position:absolute;inset:0;z-index:1;display:block;overflow:hidden;border-radius:inherit}
.mode-provided-banner .mode-banner-art>img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;transform:none;filter:none;opacity:1}
.mode-banner-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;color:#fff;background:linear-gradient(115deg,#343e54,#19283d)}
.game-mode-blackjack .mode-banner-fallback{background:linear-gradient(115deg,#164b3b,#12291f)}
.mode-banner-fallback strong{font-size:clamp(20px,6vw,30px);letter-spacing:-.7px}
.mode-banner-fallback svg{flex:none;width:54px;height:54px;color:#c9eaff}
.mode-provided-banner:not(.mode-art-ready) .mode-banner-art{visibility:hidden}
.mode-provided-banner.mode-art-ready .mode-banner-fallback{visibility:hidden}
.game-mode-mines .mode-banner-fallback{background:linear-gradient(130deg,#123659,#0d1525);flex-direction:column;justify-content:center}
.game-mode-upgrade .mode-banner-fallback{background:linear-gradient(115deg,#fc373e,#9b1925);padding:10px 20px}
.game-mode-upgrade .mode-banner-fallback strong{font-size:24px}
.game-mode-upgrade .mode-banner-fallback svg{width:34px;height:34px}
.case-mode-placeholder{position:absolute;inset:24% 15% 15%;display:grid;place-items:center;color:#90d6ff}
.case-mode-placeholder svg{width:76px;height:76px}
.game-mode-case:not(.mode-art-ready) .case-mode-art{visibility:hidden}
.game-mode-case.mode-art-ready .case-mode-placeholder{visibility:hidden}
.game-modes-grid .game-mode-card.game-mode-upgrade.mode-provided-banner{aspect-ratio:5;min-height:0;background:#ff373b}
.game-mode-card.game-mode-mines.mode-provided-banner{aspect-ratio:1}
/* The upgrade shares the application background; only the dial is animated. */
.upgrade-page[data-upgrade-cosmos="true"]{isolation:isolate;background:transparent}
[data-upgrade-cosmos="true"] .up-footer{position:static;bottom:auto;padding-top:16px;background:transparent;border-top:0}
[data-upgrade-cosmos="true"] .up-selection{height:auto;min-height:0;aspect-ratio:1}
[data-upgrade-cosmos="true"] .up-selection-art{width:auto;max-width:100%;height:100%;aspect-ratio:1}
[data-upgrade-cosmos="true"] .up-selection img:not(.up-unit){width:60px;height:60px}
[data-upgrade-cosmos="true"] .up-gauge{width:min(400px,100%)}
[data-upgrade-cosmos="true"] .up-gauge-track{stroke:#6c779629}
[data-upgrade-cosmos="true"] .up-gauge-chance{stroke:#ff6552;filter:drop-shadow(0 0 2px #ff8b5166)}
.up-gauge-ticks{stroke:#9cb8d23d;stroke-width:1}
.up-gauge-inner{stroke:#ff89731c;stroke-width:.3}
[data-upgrade-cosmos="true"] .up-gauge-caption strong{color:#f4f8ff;font-size:clamp(36px,12vw,52px);line-height:1.15}
[data-upgrade-cosmos="true"] .up-gauge-caption span{color:#a9b9d3}
.up-pointer:before{display:block;top:calc(7% - 4px);width:8px;height:8px;border:2px solid #fff;border-radius:50%;background:var(--up-blue);box-shadow:0 0 0 2px #1118;z-index:2}
[data-upgrade-landing="won"] .up-gauge-chance{stroke:#58dfaa;filter:drop-shadow(0 0 5px #58dfaa88)}
[data-upgrade-landing="won"] .up-gauge-caption strong{font-size:clamp(25px,7vw,34px);color:#58dfaa}
[data-upgrade-running="true"][data-upgrade-landing="won"] .up-pointer:after{opacity:0}
.up-orbit-rocket{position:absolute;display:block;width:24%;height:24%;left:50%;top:-5%;transform:translateX(-50%) rotate(45deg);pointer-events:none}
.up-orbit-rocket-fallback,.up-orbit-rocket-surface{position:absolute;inset:0;display:grid;place-items:center}
.up-orbit-rocket-fallback svg,.up-orbit-rocket-surface canvas{display:block;width:100%!important;height:100%!important}
.up-orbit-rocket [hidden]{display:none!important}
/* One compositor layer carries the rocket and its exhaust. */
[data-upgrade-running="true"] .up-pointer{will-change:transform,opacity}
.up-pointer:after{content:"";position:absolute;left:50%;top:7%;width:24%;height:5%;border-radius:50%;background:linear-gradient(90deg,transparent,#5fcfff66 45%,#c2f8ff);transform:translate(-100%,-50%);opacity:0;z-index:-1;pointer-events:none}
[data-upgrade-running="true"] .up-pointer:after{opacity:.75}
.up-pointer[data-upgrade-impact]:after{opacity:0}
.up-miss-explosion{position:absolute;z-index:6;width:34%;max-width:110px;aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none}
.up-impact-core,.up-impact-ring{position:absolute;inset:0;display:block;border-radius:50%;opacity:0;animation:up-impact-core 480ms 80ms ease-out both}
.up-impact-core{background:radial-gradient(circle,#fff8d6 0 8%,#ffc064d9 20%,#ff6f396e 42%,#ff4e1c00 70%)}
.up-impact-ring{border:2px solid #ffbd7c;animation-name:up-impact-ring}
.up-impact-spark{position:absolute;left:50%;top:50%;display:block;width:4px;height:4px;border-radius:50%;background:#ffd18d;opacity:0;animation:up-impact-spark 480ms 80ms cubic-bezier(.18,.65,.3,1) both}
@keyframes up-impact-core{0%{opacity:0;transform:scale(.15)}18%{opacity:1;transform:scale(.7)}65%{opacity:.55;transform:scale(1.15)}100%{opacity:0;transform:scale(1.35)}}
@keyframes up-impact-ring{0%{opacity:0;transform:scale(.2)}18%{opacity:.9;transform:scale(.45)}100%{opacity:0;transform:scale(1.5)}}
@keyframes up-impact-spark{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}20%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--impact-x)),calc(-50% + var(--impact-y))) scale(.25)}}
.reduce-motion .up-miss-explosion,.app-hidden .up-miss-explosion{display:none}
@media(prefers-reduced-motion:reduce){.up-miss-explosion{display:none}}

[data-upgrade-motion="off"] .up-pointer:after,.reduce-motion .up-pointer:after{display:none}
@media(prefers-reduced-motion:reduce){.up-pointer:after{display:none}}

/* Fit the choices, dial and action above mobile navigation, including Telegram insets. */
.upgrade-page[data-upgrade-view="upgrade"]{min-height:0;padding-bottom:0}
.up-main-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 16px}
.up-main-heading .up-header{display:block;margin:0;min-height:0}
.up-main-heading .up-header-spacer{display:none}
.up-main-heading .up-title{margin:0;font-size:24px;line-height:32px;text-align:left;letter-spacing:-.6px}
.up-main-heading .up-wallet{margin:0;padding:7px 11px;border-radius:14px;background:var(--tg-surface);font-size:13px}
[data-upgrade-cosmos="true"] .up-selections{grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:8px}
[data-upgrade-cosmos="true"] .up-selection{aspect-ratio:auto;height:clamp(126px,22vh,150px);padding:9px 6px;grid-template-rows:14px minmax(0,1fr) 16px 14px;border-radius:18px}
[data-upgrade-cosmos="true"] .up-selection-art{width:100%;aspect-ratio:auto}
[data-upgrade-cosmos="true"] .up-selection img:not(.up-unit){width:80px;height:80px}
[data-upgrade-cosmos="true"] .up-selection-arrow svg{width:20px;height:20px}
[data-upgrade-cosmos="true"] .up-gauge{width:min(292px,100%,max(180px,calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - var(--safe-bottom,0px) - 410px)));margin:20px auto 12px}
[data-upgrade-cosmos="true"] .up-gauge-caption strong{font-size:clamp(34px,10vw,46px);letter-spacing:-1.5px}
[data-upgrade-cosmos="true"] .up-footer{margin-top:0;padding:8px 0 0}
[data-upgrade-cosmos="true"] .up-footer .up-text-button{min-height:36px;padding:8px}
@media(max-width:360px){.up-main-heading{margin-bottom:12px}.up-main-heading .up-title{font-size:22px}[data-upgrade-cosmos="true"] .up-selections{gap:6px;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr)}[data-upgrade-cosmos="true"] .up-selection{height:126px}.up-selection strong{font-size:10px}}

/* Stable sizes survive cold/slow loads; gift choices keep their square frame. */
[data-upgrade-cosmos=true] .up-selection{border:1px solid #ffffff24;border-radius:20px;background:#ffffff03;overflow:hidden}
[data-upgrade-cosmos=true] .up-selection-source{border-color:#55bbff4d}
[data-upgrade-cosmos=true] .up-selection-target{border-color:#ff66884d}
.up-price-value{font-weight:750;font-variant-numeric:tabular-nums}
.up-price-value[data-rarity=common]{color:#70dca0}.up-price-value[data-rarity=rare]{color:#6ebaff}.up-price-value[data-rarity=epic]{color:#bb91ff}.up-price-value[data-rarity=legendary]{color:#f58cc8}.up-price-value[data-rarity=mythic]{color:#f5cc75}
.up-orbit-rocket-fallback img{display:block;width:100%;height:100%;object-fit:contain}
.up-skeleton{display:block;border-radius:10px;background:#91a4c21c}
.up-balance-skeleton{width:62px;height:18px}.up-initial-skeleton{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin:24px 0}.up-initial-skeleton>div{aspect-ratio:1;border-radius:20px}
.brand-mark{background:transparent!important;box-shadow:none!important;border:0!important}.brand-mark img{width:100%;height:100%;object-fit:contain}
.wallet-actions>button.secondary-wallet[data-action=earnings],.wallet-surface-actions>.secondary-wallet[data-action=earnings]{color:#fff;background:linear-gradient(120deg,#9661ed,#7449c9);border-color:#bb94ff50}


.up-owned-with-gram .gift-search-toolbar{position:relative}
.up-owned-with-gram .gift-search-field{width:calc(100% - 160px);box-sizing:border-box}
.up-owned-with-gram .gift-search-clear{right:164px}
.up-gram-stake{position:absolute;right:0;top:0;display:flex;align-items:center;justify-content:center;gap:5px;width:152px;height:46px;border:0;border-radius:14px;background:#008cff;color:#fff;font-size:12px;font-weight:650;white-space:nowrap}
.up-gram-stake .up-unit{width:17px;height:17px;flex:none}
.up-gram-dialog{display:flex;flex-direction:column;gap:10px}
.up-gram-dialog h2{font-size:22px;margin:0 36px 0 0}.up-gram-dialog p{color:var(--tg-secondary);line-height:1.4;margin:0}
.up-gram-dialog label,.up-gram-dialog p{font-size:14px}
.up-gram-dialog input{width:100%;box-sizing:border-box;min-width:0;padding:10px 14px;border:1px solid #ffffff20;border-radius:14px;background:var(--tg-raised,#202228);color:inherit;font-size:24px;outline:none}
.up-gram-dialog input:focus{border-color:var(--tg-accent)}
.up-gram-dialog input[aria-invalid=true]{border-color:#ff7684}.up-gram-dialog .up-gram-error{color:#ff9fa9}
.up-gram-actions{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;margin-top:2px}
.up-gram-actions .up-primary{min-height:46px;margin:0}
.up-gram-actions .up-text-button{min-height:44px;padding-inline:14px}
@media(max-width:360px){.up-gram-stake{width:138px;font-size:11px}.up-owned-with-gram .gift-search-field{width:calc(100% - 146px)}.up-owned-with-gram .gift-search-clear{right:150px}.up-owned-with-gram input{font-size:12px}}
.game-modes-grid .game-mode-card.rocket-banner19{border-radius:24px;overflow:hidden;isolation:isolate;aspect-ratio:3;border:1px solid #ffffff29;background:#722c3f}.rocket-banner19 .mode-banner-art{border-radius:inherit;overflow:hidden}

.mode-banner-art>.mode-banner-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;border-radius:inherit}.mode-banner-art>.mode-banner-video[hidden]{display:none}

.game-modes-grid .game-mode-card.blackjack-banner22{border-radius:24px;overflow:hidden;isolation:isolate;aspect-ratio:3;border:1px solid #ffffff29;background:#18584c}.blackjack-banner22 .mode-banner-art{border-radius:inherit;overflow:hidden}

.participant-gift.gift-preview-approximate:after{content:"≈";position:absolute;right:1px;bottom:1px;z-index:3;display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:#172431;color:#a8d8ff;font-size:13px;line-height:1;pointer-events:none}
.profile-level{width:min(100%,340px);margin:17px auto 0;padding:14px 15px;border:1px solid #47b8ff24;border-radius:17px;background:linear-gradient(125deg,#1086d512,#31c1ff08);text-align:left;box-sizing:border-box}
.profile-level-top,.profile-level-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
.profile-level-top strong{font-size:14px;font-weight:800;letter-spacing:.6px;color:#69caff;white-space:nowrap}
.profile-level-top>span{font-size:11px;color:var(--tg-hint,#919cab);font-variant-numeric:tabular-nums;text-align:right}
.profile-level-track{height:7px;margin:11px 0 9px;border-radius:10px;background:#70b6e319;overflow:hidden}
.profile-level-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#168aff,#65ddff);box-shadow:0 0 10px #27afff55;transition:width .45s ease}
.profile-level-bottom{font-size:10px;line-height:1.4;color:var(--tg-hint,#919cab)}
.profile-level-bottom>span:last-child{text-align:right}
@media(prefers-reduced-motion:reduce){.profile-level-track>span{transition:none}}
/* Compact profile identity: level sits with the nickname, progress below. */
.profile-heading h1{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px}
.profile-level-name-divider{font-size:19px;color:var(--tg-hint,#8996a8);font-weight:500}
.profile-level-badge{padding:5px 8px;border:1px solid #56baff25;border-radius:9px;background:#1e97e412;color:#73ceff;font-size:13px;line-height:1;letter-spacing:.4px;white-space:nowrap}
.profile-level{width:min(100%,260px);margin:11px auto 0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.profile-level-top{justify-content:center}
.profile-level-top>span{font-size:12px;color:var(--tg-text,#dae4ed);text-align:center}
.profile-level-top i{font-style:normal;color:var(--tg-hint,#919cab)}
.profile-level-track{height:5px;margin:9px 0 7px}
.profile-level-bottom{justify-content:center;font-size:9px}
.profile-level-bottom>span:last-child{text-align:center}

.game-modes-grid .game-mode-card.mode-provided-banner.provided-banner35{border-radius:24px;overflow:hidden;min-height:0;max-height:none;height:auto;aspect-ratio:1;contain:none}
.game-modes-grid .game-mode-card.game-mode-upgrade.provided-banner35{grid-column:1/-1;aspect-ratio:3;background:#875833}
.game-modes-grid .provided-banner35 .mode-banner-art{inset:0;border-radius:inherit}
.game-modes-grid .provided-banner35 .mode-banner-art img{width:100%;height:100%;object-fit:contain;border-radius:inherit}
.game-modes-grid .game-mode-coinflip.provided-banner35{background:#206d79}
.game-modes-grid .game-mode-case.provided-banner35{background:#70488b}
.game-modes-grid .provided-banner35 .mode-banner-fallback{background:transparent}

/* admin-test.css */
.admin-test-context{margin:0 20px 16px;padding:10px 14px;border:1px solid #f3b65a55;border-radius:14px;background:#60421855;color:#ffdb9c;text-align:center;font-size:12px;line-height:1.4}
.admin-test-card{margin-top:16px;padding:16px;border:1px solid #f3b65a33;border-radius:20px;background:#252b34}
.admin-test-card p{margin:0 0 12px;color:var(--secondary);font-size:13px;line-height:1.5}
.admin-test-card button{width:100%;min-height:44px;border-radius:13px;background:#343e4b;color:var(--text,#fff);font-weight:600}

/* arena.css */
/* Ice field/frame/frost adapted from the verified GiftGram source snapshot. */
.arena-mode-card{grid-column:1/-1!important;aspect-ratio:5/1!important;min-height:84px!important;max-height:144px!important}.arena-mode-card .mode-banner-art img{object-fit:contain!important;background:#244b96}.arena-page .rolls-heading h2 span{color:#72c8fa}.arena-page .rolls-wheel-host{padding:8px 0}
body.arena-view .screen{padding-left:10px;padding-right:10px}
.arena-page .rolls-heading{margin-bottom:8px}
.arena-page .rolls-wheel-host{padding:0;margin:4px 0 8px;max-width:none;aspect-ratio:auto}
.arena-page .rolls-status,.arena-page .rolls-pool{display:none}
.arena-page .rolls-toolbar{grid-template-columns:1fr 1fr;margin-bottom:0}
.arena-page .rolls-toolbar>button:last-child{justify-self:end}.arena-surface{border:1px solid var(--tg-separator);border-radius:22px;overflow:hidden;background:var(--tg-surface)}.arena-board-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 16px;font-size:14px;font-weight:600;color:var(--tg-secondary)}.arena-board-heading>span{display:flex;align-items:center;gap:6px}.arena-board-heading strong{color:#1689ff}.arena-board-heading [data-arena-live]{font-size:13px}.arena-board-heading .is-live{color:#49df64;font-weight:700}.arena-board-heading .is-live:before{content:'';width:7px;height:7px;border-radius:50%;background:#49df64;box-shadow:0 0 8px #49df64}.arena-board{position:relative;aspect-ratio:1;width:100%;overflow:hidden;isolation:isolate;border:7px solid transparent;background:var(--arena-ice-frame);background-clip:border-box;border-radius:18px;box-sizing:border-box;box-shadow:var(--arena-ice-rim);contain:layout paint}.arena-camera{position:absolute;inset:0;transform-origin:50% 50%}.arena-zones,.arena-field-sheen,.arena-zone-players{position:absolute;inset:0;width:100%;height:100%;display:block}.arena-zone-player{position:absolute;transform:translate(-50%,-50%);pointer-events:none;transition:opacity .3s ease}.arena-zone-player>span{position:relative;display:grid;place-items:center;width:var(--arena-avatar-size);height:var(--arena-avatar-size);border-radius:50%;overflow:hidden;background:var(--arena-avatar-color);color:white;font-size:var(--arena-avatar-font);font-weight:700}.arena-zone-player .avatar-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0}.arena-zone-player .avatar-photo.is-ready{opacity:1}.arena-board-wait{position:absolute;inset:0;background:var(--arena-ice-field);overflow:hidden;display:flex;align-items:center;justify-content:center}.arena-board-wait strong{position:relative;font-size:15px;font-weight:700;background-image:linear-gradient(90deg,#4fc3dc 0%,#4fc3dc 42%,#d8f6ff 50%,#4fc3dc 58%,#4fc3dc 100%);background-size:260% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:arena-wait-shimmer 2.4s linear infinite}@keyframes arena-wait-shimmer{from{background-position:160% 0}to{background-position:-60% 0}}.arena-puck{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.arena-puck-body{position:relative;transform:translate(-50%,-50%);width:34px;height:34px;border:9px solid white;border-radius:50%;background:#ffffff47;box-shadow:0 0 22px #ffffffd9,0 0 56px #ffffff73,inset 0 0 6px #ffffffcc;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.arena-puck-body>svg{flex:none}.arena-puck-name{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);font-size:13px;font-weight:800;color:white;white-space:nowrap;text-shadow:0 1px 8px #000b,0 0 2px #0008}.arena-puck-direction{position:absolute;left:50%;top:50%;width:0;height:0}.arena-puck-direction>svg{position:absolute;left:0;top:-12px;overflow:visible}.arena-board-proof{font-size:11px;color:var(--tg-secondary);text-align:center;padding:14px 12px}.arena-board-proof summary{list-style:none;cursor:pointer;display:flex;gap:5px;justify-content:center;flex-wrap:wrap}.arena-board-proof summary::-webkit-details-marker{display:none}.arena-board-proof summary>span:last-child{text-decoration:underline;font-weight:650}.arena-board-proof>div{padding-top:12px;text-align:left}.arena-board-proof code{display:block;overflow-wrap:anywhere;margin:6px 0 12px;font-size:11px}.arena-board-proof p{line-height:1.4}.arena-surface [hidden]{display:none!important}.arena-surface[data-paused=true] *{animation-play-state:paused!important}.arena-surface[data-reduced=true] *{animation:none!important;transition:none!important}.arena-surface[data-reduced=true] .arena-ice-frost{opacity:.38}.arena-surface[data-reduced=true] .arena-ice-sheen{opacity:0}
.arena-surface {
  /* Плита тёмная, почти чёрная, с еле заметной сеткой — как на присланном
     примере. Бирюза, что стояла здесь раньше, была слишком яркой: поле
     светилось само по себе и спорило с подарками, которые на него лягут.
     Холод теперь даёт не цвет плиты, а иней поверх неё. */
  --arena-ice-field:
    radial-gradient(120% 90% at 50% 40%, rgba(130,195,215,.06), transparent 66%),
    repeating-linear-gradient(0deg, transparent 0 33px, rgba(178,215,232,.042) 33px 34px),
    repeating-linear-gradient(90deg, transparent 0 33px, rgba(178,215,232,.042) 33px 34px),
    linear-gradient(150deg, #1a1e22 0%, #14171a 45%, #0e1114 74%, #181c20 100%);
  --arena-ice-frame:
    repeating-linear-gradient(64deg, transparent 0 16px, rgba(190,225,240,.06) 16px 17px, transparent 17px 38px),
    linear-gradient(150deg, #2b333a 0%, #1d2328 45%, #171b1f 72%, #272f35 100%);
  /* Свет по внутреннему краю рамы — скол льда. */
  --arena-ice-rim: inset 0 0 0 1px rgba(175,215,232,.16), inset 0 2px 16px rgba(140,200,225,.10);
}
.arena-ice-edge {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(214,238,248,.13), transparent 22%),
    linear-gradient(0deg,   rgba(214,238,248,.10), transparent 20%),
    linear-gradient(90deg,  rgba(214,238,248,.10), transparent 18%),
    linear-gradient(270deg, rgba(214,238,248,.10), transparent 18%);
}

@keyframes arena-ice-freeze {
  
  0%   { opacity: 0;   transform: scale(1.14); }
  30%  { opacity: .5;  transform: scale(1); }
  62%  { opacity: .5;  transform: scale(1); }
  100% { opacity: 0;   transform: scale(1.14); }
}

.arena-ice-frost {
  position: absolute;
  inset: -12%;
  pointer-events: none;
  opacity: 0;
  
  filter: blur(1.5px);
  will-change: opacity, transform;
  animation: arena-ice-freeze 7.5s ease-in-out infinite;

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='320'%3E%3Cfilter id='f' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.34' numOctaves='4' seed='11' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0.9 0.6 0.35 0 -0.78'/%3E%3C/filter%3E%3Crect width='320' height='320' filter='url(%23f)'/%3E%3C/svg%3E");
  background-size: 300px 300px;

  
  -webkit-mask-image:
    radial-gradient(38% 30% at 18% 22%, #000 0%, transparent 72%),
    radial-gradient(30% 24% at 80% 18%, #000 0%, transparent 74%),
    radial-gradient(26% 22% at 30% 80%, #000 0%, transparent 76%);
  mask-image:
    radial-gradient(38% 30% at 18% 22%, #000 0%, transparent 72%),
    radial-gradient(30% 24% at 80% 18%, #000 0%, transparent 74%),
    radial-gradient(26% 22% at 30% 80%, #000 0%, transparent 76%);
}

.arena-ice-frost-b {
  animation-delay: -2.6s;
  background-size: 460px 460px;
  background-position: 40% 60%;
  -webkit-mask-image:
    radial-gradient(42% 32% at 68% 70%, #000 0%, transparent 76%),
    radial-gradient(28% 24% at 46% 12%, #000 0%, transparent 74%),
    radial-gradient(32% 26% at 88% 58%, #000 0%, transparent 76%);
  mask-image:
    radial-gradient(42% 32% at 68% 70%, #000 0%, transparent 76%),
    radial-gradient(28% 24% at 46% 12%, #000 0%, transparent 74%),
    radial-gradient(32% 26% at 88% 58%, #000 0%, transparent 76%);
}


@keyframes arena-ice-sheen {
  from { transform: translate3d(-60%, 0, 0) rotate(14deg); }
  to   { transform: translate3d(160%, 0, 0) rotate(14deg); }
}
.arena-ice-sheen {
  position: absolute;
  top: -30%; bottom: -30%; left: 0;
  width: 42%;
  pointer-events: none;
  
  background: linear-gradient(90deg, transparent, rgba(206,238,250,.09) 45%, rgba(206,238,250,.03) 62%, transparent);
  filter: blur(7px);
  will-change: transform;
  animation: arena-ice-sheen 6.5s linear infinite;
}


.arena-highlights{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 18px}.arena-highlights>div{display:grid;gap:5px;padding:14px;border:1px solid var(--tg-separator,#ffffff12);background:var(--tg-surface,#1c1e22);border-radius:18px;min-width:0}.arena-highlights small,.arena-highlights span{font-size:12px;color:var(--tg-secondary,#a0a6b2)}.arena-highlights strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.arena-history-tabs{display:flex;background:var(--tg-surface,#1c1e22);padding:4px;border-radius:22px;margin-bottom:16px}.arena-history-tabs button{flex:1;border:0;background:transparent;color:var(--tg-secondary,#a0a6b2);border-radius:18px;min-height:36px;font:inherit;font-size:12px;transition:background-color .2s,color .2s}.arena-history-tabs button[aria-selected=true]{background:var(--tg-accent,#0088ff);color:white}.arena-history-card{width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer;gap:9px}.arena-history-card>span:nth-child(2){min-width:0;display:grid;gap:5px}.arena-history-card strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arena-history-card small{display:block;font-size:11px;color:var(--tg-secondary,#a0a6b2)}.arena-history-money{margin-left:auto;text-align:right;flex-shrink:0}.arena-replay-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}.arena-replay-controls{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:18px 0}.arena-replay-controls .rolls-primary{width:auto;flex:1;padding-inline:18px}.arena-replay-controls label{display:flex;gap:6px;align-items:center;font-size:12px}.arena-replay-controls select{background:var(--tg-surface,#1c1e22);color:inherit;border:1px solid var(--tg-separator,#ffffff20);border-radius:10px;padding:8px}.arena-replay-controls input{width:100%;accent-color:var(--tg-accent,#0088ff);min-height:36px}.arena-replay-result{font-size:14px;line-height:1.5}.arena-proof{border:1px solid var(--tg-separator,#ffffff20);padding:16px;border-radius:18px;margin:18px 0}.arena-proof summary{cursor:pointer;font-weight:600;min-height:28px}.arena-proof>span{display:block;font-size:12px;margin-top:12px;color:var(--tg-secondary,#a0a6b2)}.arena-proof code{display:block;overflow-wrap:anywhere;font-size:11px;margin:6px 0 16px;user-select:text}.arena-proof p{font-size:13px;line-height:1.4}.arena-page [hidden]{display:none!important}@media(prefers-reduced-motion:reduce){.arena-history-tabs button{transition:none}}@media(max-width:350px){.arena-history-card strong{font-size:12px}.arena-history-tabs button{font-size:11px}}
.arena-award-explanation{font-size:12px;color:var(--tg-secondary);line-height:1.5;overflow-wrap:anywhere}

/* Arena players follow the compact two-row reference; colors use the app theme. */
.arena-page .rolls-bet-controls{margin-bottom:20px}
.arena-page .rolls-section-heading{width:100%;max-width:380px;margin:0 auto 9px}
.arena-page .rolls-players{width:100%;max-width:380px;margin-inline:auto}
.arena-page .rolls-section-heading h3{font-size:17px;font-weight:700}
.arena-player-count{color:var(--tg-secondary);font-weight:600}
.arena-page [data-arena-round-number]{font-size:11px;font-weight:600}
.arena-player{min-width:0;overflow:hidden;border:1px solid var(--tg-separator,#ffffff12);border-radius:18px;background:var(--tg-surface,#1c1e22)}
.arena-player-main{display:flex;align-items:center;gap:10px;padding:8px 12px;min-height:52px}
.arena-player-avatar{position:relative;display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;overflow:hidden;background:var(--arena-player-color);color:#fff;font-size:15px;font-weight:700}
.arena-player-identity{flex:1;min-width:0;display:grid;gap:2px}
.arena-player-identity>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:18px}
.arena-player-identity small{display:inline-block;vertical-align:1px;margin-left:5px;padding:0 3px;border:1px solid var(--tg-separator);border-radius:3px;font-size:7px;line-height:10px;font-weight:600;color:var(--tg-secondary)}
.arena-player-chance{display:flex;align-items:center;gap:3px;color:var(--tg-secondary);font-size:11px;line-height:14px;font-variant-numeric:tabular-nums}
.arena-player-chance:before{content:'';width:5px;height:5px;flex:none;border-radius:50%;background:var(--arena-player-color)}
.arena-player-total{flex:none;max-width:46%;font-size:14px;line-height:18px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.arena-player-total>span{font-size:11px}
.arena-player-assets{display:flex;align-items:center;gap:5px;flex-wrap:wrap;min-height:44px;padding:7px 11px;background:color-mix(in srgb,var(--tg-text) 3%,transparent)}
.arena-stake-item{position:relative;display:grid;place-items:center;flex:none;width:30px;height:30px;overflow:hidden;border:1px solid var(--tg-separator);border-radius:7px;background:var(--tg-field,#242a35)}
.arena-stake-item>.gift-art-static,.arena-stake-item>.gift-art-static>img{display:block;width:100%;height:100%;min-height:0;object-fit:contain;border-radius:0}
.arena-stake-item .icon{width:18px;height:18px}
.arena-stake-cash{background:linear-gradient(145deg,#79bfff,#087ef2);border-color:#ffffff1f}
.arena-stake-cash>img{position:absolute;top:1px;width:25px;height:25px;object-fit:contain}
.arena-stake-cash>small{position:absolute;left:1px;right:1px;bottom:0;border-radius:4px;background:#0966bcbf;text-align:center;color:#fff;font-size:8px;font-weight:650;line-height:11px;white-space:nowrap}
.arena-round-footer{margin-top:10px}
.arena-camera{will-change:transform;backface-visibility:hidden}
.arena-puck [data-arena-puck-mark],.arena-puck-direction{transform-origin:50% 50%;will-change:transform}
.arena-surface[data-paused=true] .arena-camera,.arena-surface[data-paused=true] .arena-puck,.arena-surface[data-reduced=true] .arena-camera,.arena-surface[data-reduced=true] .arena-puck{will-change:auto}
.arena-round-footer .arena-board-proof{padding:10px 4px 4px;font-size:10px}
.arena-round-footer .arena-board-proof summary>span:last-child{font-weight:500}
.arena-round-footer .arena-board-proof[open]{margin-top:4px;padding:14px 12px;border:1px solid var(--tg-separator);border-radius:16px;background:var(--tg-surface)}

/* Compact GiftGram-style result, owned by the existing bottom-sheet controller. */
body .bottom-sheet.sheet-motion-ready.arena-winner-sheet{max-width:420px;padding-left:16px;padding-right:16px}
.arena-winner-window.rolls-winner-window{min-height:0;max-width:none}
.arena-winner-window .rolls-winner-heading{padding-bottom:12px;padding-right:48px}
.arena-winner-window .rolls-winner-heading h2{font-size:19px;line-height:25px}
.arena-winner-player{display:flex;align-items:center;gap:10px;padding:18px 0 16px}
.arena-winner-player .rolls-winner-avatar{width:60px;height:60px;font-size:24px;border:0;box-shadow:none}
.arena-winner-info{display:grid;gap:4px;min-width:0;flex:1}
.arena-winner-amount{display:flex;align-items:center;gap:6px;color:var(--tg-accent-text);font-size:22px;line-height:28px;font-weight:700;font-variant-numeric:tabular-nums;min-width:0}
.arena-winner-amount>img{width:20px;height:20px;object-fit:contain;flex:none}
.arena-winner-amount>span{overflow-wrap:anywhere;min-width:0}
.arena-winner-amount small{font-size:11px;white-space:nowrap}
.arena-winner-info>strong{min-width:0;overflow-wrap:anywhere;font-size:17px;line-height:22px;font-weight:750}
.arena-winner-chance{flex:none;padding:5px 7px;border-radius:8px;background:var(--tg-accent,#0088ff);color:#fff;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}
.arena-award-assets h3{margin:0 0 9px;color:var(--tg-secondary);font-size:10px;line-height:14px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}
.arena-award-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding-bottom:12px}
.arena-award-item{display:flex;align-items:center;flex-direction:column;gap:5px;min-width:0;padding:7px 3px 8px;border:1px solid var(--tg-separator);border-radius:14px;background:var(--tg-field,#242a35)}
.arena-award-art{width:100%;aspect-ratio:1;display:grid;place-items:center;overflow:hidden;border-radius:10px}
.arena-award-art>.gift-art-static,.arena-award-art>.gift-art-static>img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
.arena-award-art .icon{width:32px;height:32px}
.arena-award-cash{background:linear-gradient(145deg,#71b9ff,#087cf0);border-color:#ffffff18;color:#fff}
.arena-award-cash .arena-award-art>img{width:70%;height:70%;object-fit:contain}
.arena-award-item>strong{width:100%;font-size:11px;line-height:15px;font-weight:700;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}
.arena-award-item>strong>small{font-size:7px}
.arena-award-notice{margin:2px 0 10px;color:var(--tg-secondary);font-size:11px;line-height:16px}
.arena-award-details{margin:0 0 7px;color:var(--tg-secondary);font-size:11px;line-height:16px}
.arena-award-details>summary{display:flex;align-items:center;min-height:44px;cursor:pointer;color:var(--tg-accent-text);font-weight:600}
.arena-award-details>summary:after{content:'';width:6px;height:6px;margin-left:8px;transform:rotate(45deg);border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor}
.arena-award-details[open]>summary:after{transform:rotate(225deg)}
.arena-award-details>summary::-webkit-details-marker{display:none}
.arena-award-details p{margin:0 0 8px;overflow-wrap:anywhere}
.arena-winner-window .rolls-winner-footer{padding-top:10px}
@media(max-width:360px){
 .arena-player-main{min-height:48px;padding:6px 10px}
 .arena-player-avatar{width:32px;height:32px;font-size:14px}
 .arena-player-assets{min-height:40px;padding:5px 9px}
 .arena-stake-item{width:30px;height:30px}
 .arena-winner-info>strong{font-size:15px;line-height:20px}
 .arena-winner-player .rolls-winner-avatar{width:52px;height:52px;font-size:22px}
 .arena-winner-amount{font-size:19px;line-height:24px}
 .arena-award-grid{gap:6px}
 .arena-award-item{padding:6px 2px}
 .arena-award-item>strong{font-size:10px}
 .arena-award-item>strong>small{font-size:6px}
}

/* rolls.css */
.rolls-page{--rolls-bg:var(--tg-bg,#191c23);--rolls-panel:var(--tg-field,#242a35);--rolls-raised:var(--tg-raised,#2d3542);--rolls-line:#ffffff0d;--rolls-text:var(--tg-text,#f4f7ff);--rolls-muted:var(--tg-secondary,#9ca8bb);--rolls-blue:var(--tg-accent,#008bff);width:100%;max-width:460px;min-height:calc(var(--effective-app-height,100dvh) - 150px);margin:0 auto;padding:0 0 18px;color:var(--rolls-text);font-size:14px}
.rolls-page *{box-sizing:border-box}.rolls-page [hidden]{display:none!important}.rolls-view .app-header{display:none}.rolls-view .screen{padding-top:calc(var(--safe-top,0px) + 10px);background:var(--tg-bg,#191c23)}
.rolls-page button,.rolls-page input{font:inherit;color:inherit}.rolls-page button{cursor:pointer;-webkit-tap-highlight-color:transparent}.rolls-page button:disabled{opacity:.45;cursor:default}.rolls-page button:active:not(:disabled){opacity:.78}.rolls-page button:focus-visible,.rolls-page input:focus-visible{outline:2px solid #76d1ff;outline-offset:3px}
.rolls-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 21px;min-height:48px}.rolls-heading h2{margin:0;font-size:27px;font-weight:770;line-height:31px;letter-spacing:-1px}.rolls-heading h2>span{font-size:19px;color:#60bbff;letter-spacing:-.6px}.rolls-eyebrow{margin:0 0 5px;color:var(--rolls-muted);font-size:8px;letter-spacing:1.35px;font-weight:650}
.rolls-money{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-variant-numeric:tabular-nums;white-space:nowrap}.rolls-unit{display:block;flex:none;object-fit:contain;width:15px;height:15px}.rolls-wallet{display:flex;align-items:center;gap:8px;max-width:49%;min-height:36px;padding:6px 7px 6px 10px;border:1px solid var(--rolls-line);border-radius:23px;background:var(--rolls-panel);font-size:12px;font-weight:680}.rolls-wallet-add svg{display:block;width:15px;height:15px}.rolls-wallet>span:last-child{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#ffffff0b;font-size:21px;font-weight:400;color:#bcc9dc}
.rolls-toolbar{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:12px;margin:0 0 8px}.rolls-icon-button{display:grid;place-items:center;flex:none;width:39px;height:39px;padding:9px;border:1px solid var(--rolls-line);border-radius:14px;background:var(--rolls-panel);color:#b3c7e5}.rolls-icon-button svg{width:20px;height:20px}.rolls-pool{justify-self:center;display:flex;align-items:center;flex-direction:column;gap:4px;min-width:135px;padding:9px 19px;border:1px solid #6faaf416;border-radius:18px;background:linear-gradient(125deg,#2863a01a,#428bd50d)}.rolls-pool>span{color:var(--rolls-muted);font-size:7px;font-weight:700;letter-spacing:1.3px}.rolls-pool>strong{font-size:20px;letter-spacing:-.5px}.rolls-status{min-height:16px;margin:14px 0 1px;font-size:10px;line-height:16px;color:#a7c2e3;text-align:center}
.rolls-wheel-host{width:100%;max-width:428px;aspect-ratio:1;margin:0 auto 3px}.rolls-bet-controls{margin:5px 0 24px}.rolls-primary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;padding:13px 15px;border:1px solid #ffffff10;border-radius:16px;background:linear-gradient(110deg,#009ffa,#0079ef);box-shadow:inset 0 1px 0 #ffffff12;color:#fff!important;font-size:14px;font-weight:700;letter-spacing:-.15px}.rolls-own{display:flex;align-items:center;justify-content:space-around;gap:10px;margin:10px 0 0;padding:13px 10px;border:1px solid var(--rolls-line);border-radius:17px;background:var(--rolls-panel)}.rolls-own>div{display:flex;flex-direction:column;gap:5px;align-items:center;flex:1}.rolls-own>div>span{color:var(--rolls-muted);font-size:8px}.rolls-own>div>strong{font-size:12px}.rolls-own>.rolls-text-button{width:auto;min-height:35px;padding:5px 7px;margin:0;color:#a5caee!important;font-size:9px}
.rolls-section-heading{display:flex;justify-content:space-between;align-items:center;gap:9px;margin:0 2px 11px}.rolls-section-heading h3{margin:0;font-size:14px;font-weight:680;letter-spacing:-.2px}.rolls-section-heading>span{font-size:9px;color:var(--rolls-muted)}.rolls-players{display:flex;flex-direction:column;gap:8px}.rolls-player{display:flex;align-items:center;gap:10px;min-height:69px;padding:12px;border:1px solid var(--rolls-line);border-radius:18px;background:var(--rolls-panel)}.rolls-player.is-mine{border-color:#46a8ef42;background:linear-gradient(110deg,#1775bd1c,var(--rolls-panel))}.rolls-player-avatar,.rolls-history-avatar,.rolls-result-avatar{position:relative;display:grid;place-items:center;flex:none;width:39px;height:39px;overflow:hidden;border:2px solid var(--rolls-player-color,#70c1ff);border-radius:50%;background:#254777;color:#e5f4ff;font-size:16px;font-weight:700}.rolls-page .avatar-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0}.rolls-page .avatar-photo.is-ready{opacity:1}.rolls-player-name{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.rolls-player-name>strong{display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650}.rolls-player-name small{padding:1px 4px;border-radius:4px;background:#3b9fe624;color:#7fc7fc;font-size:8px;font-weight:600}.rolls-player-name>span{font-size:9px;color:var(--rolls-muted)}.rolls-player-stake{display:flex;align-items:flex-end;flex-direction:column;gap:6px;flex:none;font-size:12px}
.rolls-empty{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:8px;min-height:185px;padding:23px 18px;border:1px dashed #ffffff0e;border-radius:20px;text-align:center}.rolls-empty>span{margin-bottom:7px;font-size:36px;color:#6c96cc}.rolls-empty>strong{font-size:14px;font-weight:650;letter-spacing:-.2px}.rolls-empty>p{max-width:260px;margin:0;font-size:10px;line-height:17px;color:var(--rolls-muted)}.rolls-empty-players{min-height:105px}.rolls-footnote{margin:13px 3px 7px;color:var(--rolls-muted);font-size:9px;text-align:center;line-height:16px}.rolls-text-button{display:block;min-height:42px;margin:3px auto 0;padding:11px 9px;border:0;background:transparent;color:var(--tg-accent-text,#7cbfff)!important;font-size:11px;font-weight:600;text-align:center}
.rolls-connection{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 12px;padding:10px 12px;border:1px solid #d3a66e30;border-radius:14px;background:#b98f3510;color:#b0a89c;font-size:10px}.rolls-connection button{min-height:30px;padding:4px;border:0;background:transparent;color:#8cc8f8;font-size:10px}.rolls-loading{margin:22px;color:var(--rolls-muted);text-align:center;font-size:12px}.rolls-subheading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:43px;margin:8px 0 21px}.rolls-subheading h3{margin:0;font-size:21px;line-height:27px;letter-spacing:-.6px}.rolls-subheading .rolls-icon-button{width:32px;height:32px;padding:7px;border-radius:50%}.rolls-subheading .rolls-icon-button svg{width:16px;height:16px}
.rolls-tabs{display:flex;gap:4px;margin:0 0 24px;padding:4px;border:1px solid var(--rolls-line);border-radius:15px;background:var(--rolls-panel)}.rolls-tabs>button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;min-height:37px;padding:8px;border:0;border-radius:11px;background:transparent;color:var(--rolls-muted);font-size:12px;font-weight:600}.rolls-tabs>button[aria-selected=true]{background:var(--rolls-raised);color:var(--rolls-text);box-shadow:0 1px 3px #0001,inset 0 1px 0 #ffffff06}.rolls-amount-field{margin:0 0 25px}.rolls-amount-field>label{display:block;margin:0 0 10px;color:var(--rolls-muted);font-size:11px}.rolls-amount-field>div{display:flex;align-items:center;gap:10px;min-height:63px;padding:12px 13px;border:1px solid #ffffff12;border-radius:17px;background:var(--rolls-panel)}.rolls-amount-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;font-size:22px;font-weight:630;font-variant-numeric:tabular-nums}.rolls-amount-field input::placeholder{color:#707b8d;font-size:17px;font-weight:400}.rolls-amount-field>div>button{min-height:32px;padding:7px 10px;border:0;border-radius:10px;background:#ffffff08;font-size:10px;color:#8ac8fc}.rolls-amount-field>p{margin:10px 2px 0;color:var(--rolls-muted);font-size:9px;line-height:16px}.rolls-builder-hint{margin:9px 3px 20px;color:var(--rolls-muted);font-size:10px;line-height:17px;text-align:center}
.rolls-gift-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.rolls-select-gift{position:relative;display:flex;align-items:center;flex-direction:column;min-width:0;min-height:136px;padding:11px 5px 10px;border:1px solid var(--rolls-line);border-radius:17px;background:var(--rolls-panel);text-align:center}.rolls-select-gift.is-selected{border-color:#4eb7ffb3;background:linear-gradient(145deg,#1d8ce823,var(--rolls-panel))}.rolls-gift-image{display:block;width:76px;height:76px;max-width:100%;object-fit:contain}.rolls-select-gift>strong{display:block;max-width:100%;margin:6px 0;font-size:9px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rolls-select-gift>.rolls-money{font-size:9px;color:#b6c6d9}.rolls-select-gift .rolls-unit{width:11px;height:11px}.rolls-gift-check{position:absolute;right:7px;top:7px;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#ffffff0b;color:#8492a4;font-size:13px}.rolls-select-gift.is-selected .rolls-gift-check{background:#209fe8;color:#fff;font-size:10px}.rolls-select-gift:disabled{opacity:.36}
.rolls-result{display:flex;align-items:center;gap:12px;margin:2px 0 16px;padding:15px;border:1px solid #ffffff10;border-radius:20px;background:var(--rolls-panel)}.rolls-result.is-won{border-color:#54cdaa55;background:linear-gradient(125deg,#167e6530,var(--rolls-panel))}.rolls-result-avatar{width:45px;height:45px;border-color:#81c9ff}.rolls-result>div{flex:1;min-width:0}.rolls-result strong{display:block;font-size:16px;font-weight:700;letter-spacing:-.3px}.rolls-result p{margin:5px 0 0;color:var(--rolls-muted);font-size:10px;line-height:16px}.rolls-result .rolls-money{display:inline-flex;margin:9px 0 0;color:#8be4bd;font-size:18px}.rolls-result small{display:block;margin:6px 0 0;font-size:8px;color:var(--rolls-muted);line-height:15px}
.rolls-rules{margin:0 2px 24px}.rolls-rules h3{margin:25px 0 9px;font-size:14px;font-weight:670;letter-spacing:-.2px}.rolls-rules p{margin:0;color:var(--rolls-muted);font-size:12px;line-height:20px}.rolls-history-card{display:flex;align-items:center;gap:10px;margin:0 0 9px;padding:14px 11px;border:1px solid var(--rolls-line);border-radius:18px;background:var(--rolls-panel)}.rolls-history-card.is-won{border-color:#4bc59b30}.rolls-history-avatar{width:35px;height:35px;border-width:1px;font-size:15px}.rolls-history-card>div:nth-child(2){display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.rolls-history-card>div:nth-child(2)>strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.rolls-history-card>div:nth-child(2)>span{font-size:8px;color:var(--rolls-muted)}.rolls-history-amount{display:flex;align-items:flex-end;flex-direction:column;gap:5px;font-size:11px;flex:none}.rolls-history-amount>small{font-size:8px;color:var(--rolls-muted)}
.game-mode-rolls{position:relative;isolation:isolate;overflow:hidden;min-height:130px;padding:23px;background:radial-gradient(circle at 90% 20%,#49c0fc2b,transparent 55%),linear-gradient(115deg,#123d70,#0f2848);border-color:#76c8ff28}.game-mode-rolls .mode-banner-label{position:relative;display:block;margin-bottom:12px;color:#9fd9ff;font-size:8px;letter-spacing:1.1px;font-weight:750}.game-mode-rolls .game-mode-title{position:relative;font-size:29px;line-height:34px;letter-spacing:-1px}.game-mode-rolls .game-mode-play{position:relative;display:block;margin-top:10px;max-width:70%;font-size:10px;color:#cce5f9}.rolls-card-wheel{position:absolute;z-index:-1;right:-6px;top:-18px;width:187px;height:187px;border:9px solid #78caff22;border-radius:50%;background:conic-gradient(from 20deg,#2699e1 0 30%,#8873dc 30% 53%,#64c2ae 53% 73%,#e8b76d 73%);transform:rotate(-17deg);box-shadow:0 0 0 12px #85c7ff05,0 15px 30px #0004;opacity:.8}.rolls-card-wheel:before{content:"";position:absolute;top:-8px;left:calc(50% - 8px);border-top:16px solid #e5f4ff;border-left:8px solid transparent;border-right:8px solid transparent;filter:drop-shadow(0 2px 2px #0005)}.rolls-card-wheel>b{position:absolute;inset:56px;display:grid;place-items:center;border:3px solid #9edbff55;border-radius:50%;background:#15395d;color:#b8e7ff;font-size:30px;box-shadow:0 2px 7px #0004}.rolls-card-wheel>i{position:absolute;inset:0;border:1px solid #d7f4ff25;border-radius:50%}
@media(max-width:360px){.rolls-heading h2{font-size:24px}.rolls-heading h2>span{font-size:17px}.rolls-eyebrow{font-size:7px}.rolls-wallet{font-size:10px}.rolls-player{gap:8px;padding:10px}.rolls-player-name>strong{font-size:11px}.rolls-player-stake{font-size:11px}.rolls-page .rolls-wheel-host{margin-top:1px}.rolls-select-gift{min-height:122px}.rolls-gift-image{width:65px;height:65px}}
.rolls-prize{margin:0 0 17px;padding:18px 16px;border:1px solid #d8b65d40;border-radius:21px;background:linear-gradient(130deg,#aa7e1821,var(--rolls-panel));text-align:center}.rolls-prize-art{display:flex;align-items:center;justify-content:center;height:76px;margin:0 0 8px}.rolls-prize-art .rolls-gift-image{width:73px;height:73px;margin:0 -7px}.rolls-prize h3{margin:0 0 8px;font-size:16px;font-weight:700;letter-spacing:-.3px}.rolls-prize p{max-width:300px;margin:0 auto 17px;color:var(--rolls-muted);font-size:10px;line-height:17px}.rolls-prize .rolls-primary{min-height:44px;font-size:12px}
.rolls-gift-image>.gift-art-static{display:block;width:100%;height:100%}.rolls-gift-image img{display:block;width:100%;height:100%;object-fit:contain}.rolls-gift-image .icon{display:block;width:62%;height:62%;margin:19%;color:#8093ac;fill:none;stroke:currentColor}
.rolls-stake-buttons{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:8px}.rolls-stake-buttons>.rolls-primary{min-width:0;padding:12px 9px;font-size:12px}.rolls-cash-button{background:#2185d51a;border-color:#4eacff45;color:#c4e7ff!important;box-shadow:inset 0 1px 0 #ffffff06}.rolls-cash-button .rolls-unit{width:19px;height:19px}.rolls-stake-window{min-height:0;max-width:none;margin:0;padding:0;background:transparent}.rolls-stake-window .rolls-subheading{margin:0 0 20px;padding-right:32px;min-height:30px}.rolls-stake-window .rolls-subheading h3{font-size:23px;line-height:30px}.rolls-stake-window .rolls-gift-grid{max-height:min(48dvh,390px);overflow:auto;overscroll-behavior:contain;padding:1px 2px 5px;margin:0 -2px}.rolls-stake-window .rolls-amount-field{margin-top:27px}.rolls-stake-window .rolls-builder-error{margin:0 0 13px;padding:11px 12px;border:1px solid #e6a15c30;border-radius:12px;background:#aa6b1811;color:#efbf86;font-size:11px;line-height:17px}.rolls-stake-window .rolls-empty{min-height:155px}.rolls-stake-window .rolls-footnote{margin-bottom:0}

.rolls-total{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:23px 0 17px;padding:17px 14px;border:1px solid #599cec22;border-radius:18px;background:#286bb91a}.rolls-total>span{font-size:11px;color:var(--rolls-muted)}.rolls-total>strong{font-size:23px;letter-spacing:-.5px;color:#9dd5ff}

.game-mode-card.game-mode-rolls.mode-provided-banner{padding:0;aspect-ratio:1;min-height:0;max-height:none;height:auto;background:#080c13}.game-mode-rolls .mode-banner-art,.game-mode-rolls .mode-banner-art img{width:100%;height:100%;object-fit:contain}.game-mode-rolls.mode-provided-banner .mode-banner-art{inset:0}

/* Text entry uses its caret and containing field, without an inner focus rectangle. */
.rolls-page .rolls-amount-field input:focus-visible{outline:none;box-shadow:none}

/* coinflip.css */
.coinflip-page{--cf-panel:var(--tg-bg,#191b1f);--cf-field:var(--tg-field,#23262d);--cf-raised:var(--tg-raised,#2d3037);--cf-text:var(--tg-text,#f5f6f8);--cf-muted:var(--tg-secondary,#9ca3b0);--cf-line:var(--tg-control-border,#ffffff0d);--cf-blue:var(--tg-accent,#008bff);--cf-gold:#f4c675;position:relative;width:100%;max-width:460px;min-height:calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - 132px);margin:0 auto;padding:0 0 16px;color:var(--cf-text);background:transparent;font-size:14px}
.coinflip-page *{box-sizing:border-box}
.coinflip-view .app-header{display:none}
.coinflip-view .screen{padding-top:calc(var(--safe-top,0px) + 10px);background:transparent}
.coinflip-page button,.coinflip-page input{font:inherit;color:inherit}
.coinflip-page button{cursor:pointer;-webkit-tap-highlight-color:transparent}
.coinflip-page button:disabled{cursor:default;opacity:.42}
.coinflip-page button:focus-visible,.coinflip-page input:focus-visible{outline:2px solid #79c8ff;outline-offset:3px}
.coinflip-page button:active:not(:disabled){opacity:.8}
.cf-page-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;min-height:48px}
.cf-eyebrow{margin:0 0 4px;color:var(--cf-muted);font-size:8px;font-weight:700;line-height:13px;letter-spacing:1.5px}
.cf-page-heading h2{margin:0;font-size:23px;font-weight:750;letter-spacing:-.8px;line-height:29px}
.cf-wallet{display:flex;align-items:center;gap:7px;max-width:48%;min-height:36px;padding:6px 7px 6px 10px;border:1px solid var(--cf-line);border-radius:24px;background:var(--cf-field);font-size:11px;font-weight:650;white-space:nowrap}
.cf-wallet-plus{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:50%;background:#ffffff0b;color:var(--cf-muted);font-size:19px;font-weight:400}
.cf-money{display:inline-flex;justify-content:center;align-items:center;gap:4px;min-width:0;font-variant-numeric:tabular-nums}
.cf-unit{display:inline-block;flex:none;width:14px;height:14px;object-fit:contain}
.cf-primary{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;min-height:49px;padding:13px 16px;border:0;border-radius:16px;background:var(--cf-blue);color:#fff!important;font-size:14px;font-weight:700;letter-spacing:-.2px;box-shadow:inset 0 1px 0 #ffffff18;transition:opacity .15s,transform .15s}
.cf-create{margin:16px 0 21px}
.cf-create>span{font-size:23px;font-weight:400;line-height:18px}
.cf-text-button{display:block;min-height:42px;max-width:100%;margin:4px auto 0;padding:11px 8px;border:0;background:transparent;color:var(--tg-accent-text,#70bbff)!important;font-size:11px;font-weight:600;text-align:center}
.cf-text-button>span{padding-left:5px}
.cf-footnote{margin:0 0 8px;color:var(--cf-muted);font-size:9px;line-height:15px;text-align:center}
.cf-intro{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;min-height:150px;padding:21px 18px;border:1px solid #ffe5b31c;border-radius:23px;background:radial-gradient(ellipse at 92% 18%,#bd955921,transparent 60%),linear-gradient(116deg,#2f2d2d,#292b31 70%);overflow:hidden}
.cf-intro:after{content:"";position:absolute;z-index:-1;right:-25px;top:-57px;width:194px;height:194px;border:1px solid #f8d9a11c;border-radius:50%;box-shadow:0 0 0 24px #f8d9a107,0 0 0 54px #f8d9a105}
.cf-intro p{position:relative;z-index:1;margin:0 0 10px;font-size:29px;font-weight:760;line-height:1.03;letter-spacing:-1px}
.cf-intro p strong{color:#f4cc8b;font-weight:inherit}
.cf-intro>div>span{position:relative;z-index:1;display:block;max-width:190px;color:#b6b4b3;font-size:9px;line-height:14px}
.cf-intro-art{position:relative;flex:none;align-self:stretch;width:110px;margin:0 -3px 0 0;perspective:600px}
.cf-intro-art .cf-side-token{position:absolute!important;width:82px!important;height:82px!important;max-width:none!important;box-shadow:0 12px 20px #0004,inset 0 0 0 3px #fff3!important}
.cf-intro-art .cf-side-tails{top:-1px;left:29px;transform:rotate(-16deg) rotateY(-25deg)}
.cf-intro-art .cf-side-heads{bottom:-6px;left:-12px;transform:rotate(16deg) rotateY(-21deg)}
.cf-side-token{position:relative;display:inline-grid!important;place-items:center;flex:none;width:38px;height:38px;border:2px solid #e6af5b;border-radius:50%;background:radial-gradient(circle at 30% 18%,#ffedb6,#f3c975 55%,#bd7d33);color:#93662b;box-shadow:inset 0 0 0 2px #fff6,0 3px 0 #ad6d2e}
.cf-side-token:after{content:"";position:absolute;inset:5px;border:1px dashed #aa783b8a;border-radius:50%}
.cf-side-token svg{position:relative;width:76%;height:76%;fill:currentColor}
.cf-side-token.cf-side-tails{border-color:#84bce3;background:radial-gradient(circle at 25% 20%,#f4fbff,#a7d7f4 60%,#608eac);color:#4f7e9c;box-shadow:inset 0 0 0 2px #fffa,0 3px 0 #537c99}
.cf-side-token.cf-side-tails:after{border-color:#47789970}
.cf-section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:19px 1px 10px}
.cf-section-heading h3{margin:0;font-size:14px;font-weight:680;letter-spacing:-.2px}
.cf-section-heading>span{color:var(--cf-muted);font-size:9px;text-align:right}
.cf-tabs{display:flex;gap:3px;padding:4px;margin:0 0 13px;border:1px solid var(--cf-line);border-radius:14px;background:var(--cf-field)}
.cf-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;min-width:0;min-height:35px;padding:7px;border:0;border-radius:10px;background:transparent;color:var(--cf-muted);font-size:11px;font-weight:650;transition:background .18s,color .18s}
.cf-tabs button[aria-selected=true]{background:var(--cf-raised);color:var(--cf-text);box-shadow:0 1px 4px #0001,inset 0 1px 0 #ffffff08}
.cf-tabs button>span{display:inline-flex;justify-content:center;min-width:17px;padding:1px 4px;border-radius:5px;background:#ffffff09;font-size:9px}
.cf-mode-tabs{margin-bottom:16px}
.cf-mode-tabs button{min-height:38px;font-size:12px}
.cf-mode-tabs button>.cf-mode-symbol{min-width:auto;margin-right:5px;padding:0;background:transparent;font-size:16px;line-height:17px}
.cf-intro.is-solo{background:radial-gradient(ellipse at 92% 18%,#387ce226,transparent 62%),linear-gradient(116deg,#2f3039,#292c32 70%)}
.cf-solo-info{display:grid;grid-template-columns:1fr;gap:12px;margin:-6px 0 22px;padding:15px 12px;border:1px solid var(--cf-line);border-radius:17px;background:var(--cf-field)}
.cf-solo-info>span{display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--cf-muted);font-size:9px;text-align:center}
.cf-solo-info strong{color:var(--cf-gold);font-size:23px;font-weight:750;letter-spacing:-.6px}
.cf-match-list{display:flex;flex-direction:column;gap:8px}
.cf-match-card{display:flex;align-items:center;gap:10px;width:100%;min-height:78px;padding:13px 12px;border:1px solid var(--cf-line);border-radius:19px;background:var(--cf-field);text-align:left}
.cf-match-card.is-own{border-color:#6bbeff30;background:linear-gradient(110deg,#248cd512,var(--cf-field))}
.cf-match-avatar{display:grid;place-items:center;flex:none;width:42px;height:44px}
.cf-match-avatar .cf-side-token{width:35px;height:35px}
.cf-match-description{display:flex;flex-direction:column;justify-content:center;gap:6px;flex:1;min-width:0}
.cf-match-description strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:680;line-height:15px}
.cf-match-description>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--cf-muted);font-size:9px;line-height:13px}
.cf-match-description i{margin:0 3px;font-style:normal;color:var(--cf-muted)}
.cf-match-stake{display:flex;align-items:flex-end;flex-direction:column;gap:6px;flex:none;max-width:40%;font-size:12px;font-weight:700}
.cf-match-enter{color:var(--tg-accent-text,#70bbff);font-size:9px;font-weight:600}
.cf-match-enter>span{margin-left:4px}
.cf-live-dot{display:inline-flex;align-items:center;gap:5px;color:#81c9ff!important;font-size:9px!important}
.cf-live-dot:before{content:"";display:inline-block;width:5px;height:5px;flex:none;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px #60b8ff0d}
.cf-empty-state{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;min-height:193px;padding:27px 17px;border:1px dashed var(--cf-line);border-radius:20px;text-align:center}
.cf-empty-state>.cf-side-token{width:45px;height:45px;margin:0 0 7px;opacity:.7;transform:rotate(-14deg)}
.cf-empty-state h3{margin:0;font-size:14px;font-weight:650;letter-spacing:-.2px}
.cf-empty-state p{max-width:245px;margin:0;color:var(--cf-muted);font-size:10px;line-height:17px}
.cf-empty,.cf-empty-history{margin:25px 0;color:var(--cf-muted);text-align:center}
.cf-empty-history{font-size:38px;line-height:39px;margin:0 0 4px}
.cf-connection{display:flex;align-items:center;justify-content:space-between;gap:9px;margin:0 0 10px;padding:10px 12px;border:1px solid #e2ae4b25;border-radius:13px;background:#cda94b09;color:var(--cf-muted);font-size:10px}
.cf-connection button{min-height:30px;padding:5px;border:0;background:transparent;color:var(--tg-accent-text,#70bbff);font-size:10px;font-weight:650}
.cf-history-mark{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:13px;background:#8e9da311;color:#a1a7b1;font-size:21px}
.is-won .cf-history-mark{background:#38c88a14;color:#75dca9}
.is-lost .cf-history-mark{background:#ea6a7711;color:#ed8b95}
.cf-history-side{color:var(--cf-muted);font-size:9px;font-weight:500}
.cf-side-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 23px}
.cf-side-option{position:relative;display:flex;align-items:center;gap:11px;min-width:0;min-height:79px;padding:12px;border:1px solid var(--cf-line);border-radius:19px;background:var(--cf-field);text-align:left;transition:border-color .16s,background .16s}
.cf-side-option>.cf-side-token{width:43px;height:43px}
.cf-side-option strong{font-size:13px;font-weight:650}
.cf-side-option.is-selected{border-color:#e4bb6863;background:linear-gradient(120deg,#b18a3522,var(--cf-field))}
.cf-side-option[data-side=tails].is-selected{border-color:#7bbeef63;background:linear-gradient(120deg,#409ad222,var(--cf-field))}
.cf-selection-check{position:absolute;right:9px;top:8px;color:var(--cf-muted);font-size:11px}
.is-selected>.cf-selection-check{color:var(--cf-gold)}
.cf-side-option[data-side=tails]>.cf-selection-check{color:#87c8f0}
.cf-opponent-summary{display:flex;align-items:center;gap:11px;min-height:80px;margin-bottom:19px;padding:15px 12px;border:1px solid var(--cf-line);border-radius:20px;background:var(--cf-field)}
.cf-opponent-summary>span:not(.cf-side-token){display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0}
.cf-opponent-summary small{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--cf-muted);font-size:9px}
.cf-opponent-summary strong{font-size:14px}
.cf-opponent-summary>.cf-your-side{margin-left:auto;max-width:90px;font-size:11px;font-weight:600;line-height:17px;text-align:right;align-items:flex-end!important;color:var(--cf-gold)}
.cf-stake-tabs{margin-bottom:12px}
.cf-gift-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:15px;contain:layout paint}
.cf-select-gift{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:135px;padding:13px 5px 10px;border:1px solid transparent;border-radius:17px;background:var(--cf-field);text-align:center;transition:border-color .16s,background .16s}
.cf-select-gift .cf-gift-image{width:75px;height:75px;max-width:100%;object-fit:contain;margin-bottom:2px}
.cf-select-gift>strong{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:15px;font-weight:650}
.cf-select-gift>.cf-money{margin-top:4px;font-size:10px;color:var(--cf-muted);line-height:14px}
.cf-select-gift .cf-unit{width:11px;height:11px}
.cf-select-gift.is-selected{border-color:#5ab4ff98;background:#188ff51c}
.cf-gift-check{position:absolute;right:8px;top:7px;display:grid;place-items:center;width:16px;height:16px;border:1px solid #ffffff20;border-radius:50%;color:var(--cf-muted);font-size:11px;line-height:1}
.is-selected>.cf-gift-check{border-color:#6cc2ff;background:var(--cf-blue);color:#fff}
.cf-empty-inventory{min-height:140px;margin-bottom:15px}
.cf-empty-inventory .cf-text-button{margin:0;min-height:30px;padding:4px}
.cf-amount-field{padding:17px 15px 11px;margin:0 0 17px;border:1px solid var(--cf-line);border-radius:19px;background:var(--cf-field)}
.cf-amount-field label{display:block;margin-bottom:11px;color:var(--cf-muted);font-size:10px;font-weight:550}
.cf-amount-field>div{display:flex;align-items:center;gap:10px;min-height:39px}
.cf-amount-field .cf-unit{width:24px;height:24px}
.cf-amount-field input{width:0;min-width:0;flex:1;padding:3px 0;border:0;border-radius:0;background:transparent;font-size:28px;line-height:37px;font-weight:650;letter-spacing:-.8px;box-shadow:none;-webkit-appearance:none;appearance:none}
.cf-amount-field input::placeholder{color:#7c849170;font-size:24px;font-weight:500}
.cf-amount-field>div>button{padding:8px 9px;min-height:33px;border:0;border-radius:10px;background:#71bdff0e;color:var(--tg-accent-text,#70bbff);font-size:10px;font-weight:650}
.cf-amount-field p{margin:12px 0 0;padding-top:10px;border-top:1px solid var(--cf-line);color:var(--cf-muted);font-size:9px;line-height:14px}
.cf-stake-total{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:39px;margin:0 2px 4px}
.cf-stake-total>span{color:var(--cf-muted);font-size:12px}
.cf-stake-total strong{font-size:20px;font-weight:700;letter-spacing:-.5px}
.cf-stake-total .cf-unit{width:18px;height:18px}
.cf-solo-preview{display:grid;grid-template-columns:1fr;gap:12px;margin:10px 0 18px;padding:15px 13px;border:1px solid #f2ca7e23;border-radius:17px;background:linear-gradient(120deg,#c9993620,#c9993604)}
.cf-solo-preview>div{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0}
.cf-solo-preview>div>span{color:var(--cf-muted);font-size:10px}
.cf-solo-preview strong{font-size:21px;line-height:25px;color:var(--cf-gold);letter-spacing:-.4px}
.cf-solo-preview>p{grid-column:1/-1;margin:0;padding-top:10px;border-top:1px solid var(--cf-line);color:var(--cf-muted);font-size:9px;line-height:15px;text-align:center}
.cf-builder-footer{margin:15px 0 0;padding-top:13px;border-top:1px solid var(--cf-line)}
.cf-rule-summary{margin:0 1px 15px;color:var(--cf-muted);font-size:10px;line-height:17px}
.cf-reserve-note{max-width:320px;margin:10px auto 0;color:var(--cf-muted);font-size:9px;line-height:15px;text-align:center}
.cf-arena{position:relative;isolation:isolate;margin:1px 0 16px;border:1px solid var(--cf-line);border-radius:26px;background:radial-gradient(ellipse at 50% 38%,#93784b14,transparent 68%),linear-gradient(145deg,#25282d,var(--cf-panel));overflow:hidden}
.cf-stage-title{position:relative;z-index:2;padding:19px 12px 0;text-align:center}
.cf-stage-title .cf-eyebrow{font-size:7px;letter-spacing:1.6px}
.cf-stage-title h3{margin:6px 0 0;font-size:21px;line-height:27px;font-weight:700;letter-spacing:-.7px}
.cf-coin-stage{position:relative;isolation:isolate;height:234px;perspective:740px;perspective-origin:50% 45%}
.cf-stage-orbit{position:absolute;z-index:-1;width:204px;height:204px;left:calc(50% - 102px);top:4px;border:1px solid #eac88d0e;border-radius:50%;box-shadow:0 0 0 23px #eac88d04,0 0 0 47px #eac88d03}
.cf-stage-floor{position:absolute;z-index:-1;left:15%;right:15%;bottom:16px;height:41px;border:1px solid #b7c3d508;border-radius:50%;background:radial-gradient(ellipse,#d4ddf70b,transparent 65%);transform:rotateX(40deg)}
.cf-coin-rig{position:absolute;z-index:2;left:calc(50% - 67px);top:40px;width:134px;height:134px;transform:translateY(28px);transform-style:preserve-3d}
.cf-coin{position:relative;width:134px;height:134px;transform-style:preserve-3d;transform:rotateX(0deg) rotateY(-12deg)}
.cf-coin-face,.cf-coin-edge{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:50%;transform-style:preserve-3d}
.cf-coin-edge{border:1px solid #b47d34;background:repeating-conic-gradient(from 0deg,#dca652 0deg 2deg,#f6d587 2deg 4deg,#ac722a 4deg 5deg);transform:translateZ(var(--depth))}
.cf-coin-face{isolation:isolate;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:3px solid #e6af5b;background:radial-gradient(circle at 26% 14%,#fff4cb,#f9d78a 42%,#d49b45 84%);box-shadow:inset 0 0 0 3px #ffe4a7,inset 0 0 0 5px #a06b2a50;transform:translateZ(9px);color:#946528}
.cf-coin-face:after{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(130deg,transparent 8%,#ffffff55 28%,#ffffff08 44%,#fff2 58%,transparent 75%);border-radius:50%}
.cf-coin-rim{position:absolute;inset:10px;border:1px dashed #9b6c2f8a;border-radius:50%;box-shadow:inset 0 1px 1px #fff6}
.cf-coin-face>svg{width:87px;height:87px;margin-top:-8px;fill:currentColor;filter:drop-shadow(0 1px 0 #fff6)}
.cf-coin-engraving{position:absolute;left:0;right:0;bottom:15px;text-align:center;font-size:9px;font-weight:800;letter-spacing:2px;text-shadow:0 1px 0 #fff5}
.cf-coin-tails{border-color:#8eb9d4;background:radial-gradient(circle at 25% 15%,#f7fdff,#b6dcf2 45%,#709ebf 86%);color:#4f7994;box-shadow:inset 0 0 0 3px #d5eaf7,inset 0 0 0 5px #5c8aa350;transform:rotateX(180deg) translateZ(9px)}
.cf-coin-tails .cf-coin-rim{border-color:#4c7e9a7a}
.cf-coin-shadow{position:absolute;z-index:0;left:calc(50% - 62px);bottom:25px;width:124px;height:21px;border-radius:50%;background:#000;box-shadow:0 0 13px 7px #0002;opacity:.35;filter:blur(7px)}
.cf-stage-status{min-height:30px;max-width:270px;margin:-2px auto 17px;padding:0 8px;color:var(--cf-muted);font-size:9px;line-height:15px;text-align:center}
.cf-arena.is-win{border-color:#e3ba5345;background:radial-gradient(ellipse at 50% 38%,#dca53026,transparent 70%),linear-gradient(145deg,#292b2e,var(--cf-panel))}
.cf-arena.is-win .cf-stage-title h3{color:#f9d795}
.cf-arena.is-loss .cf-stage-title h3{color:#ed939b}
.cf-arena.is-closed{opacity:.75}
.cf-players{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:0 0 17px}
.cf-versus{position:absolute;z-index:2;left:calc(50% - 15px);top:calc(50% - 15px);display:grid;place-items:center;width:30px;height:30px;border:4px solid var(--cf-panel);border-radius:50%;background:var(--cf-field);color:var(--cf-muted);font-size:8px;font-weight:800;font-style:italic}
.cf-player{display:flex;align-items:center;flex-direction:column;min-width:0;min-height:179px;padding:12px 7px 13px;border:1px solid var(--cf-line);border-radius:21px;background:var(--cf-field)}
.cf-player.is-you{border-color:#efd09530}
.cf-player.is-winner{border-color:#ebbc5266;background:linear-gradient(150deg,#b0802420,var(--cf-field))}
.cf-player-title{display:flex;align-items:center;justify-content:center;gap:5px;min-height:25px;color:var(--cf-muted);font-size:10px;font-weight:600}
.cf-player-title>.cf-side-token{width:21px;height:21px;border-width:1px;box-shadow:inset 0 0 0 1px #fff4,0 2px 0 #ad6d2e}
.cf-player-title>.cf-side-token:after{inset:3px;border-width:.5px}
.cf-player-title .cf-crown{margin-left:1px;color:var(--cf-gold);font-size:14px}
.cf-player-name{max-width:100%;margin-top:7px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:16px;font-weight:650}
.cf-stake-gifts{display:flex;justify-content:center;align-items:center;position:relative;width:100%;min-height:59px;height:59px;margin-top:1px;isolation:isolate}
.cf-stake-gifts .cf-gift-image{position:relative;width:60px;height:60px;max-width:48%;object-fit:contain;flex-shrink:1}
.cf-stake-gifts .cf-gift-image+.cf-gift-image{margin-left:-12px}
.cf-stake-gifts .cf-gift-image:nth-child(2){z-index:1}
.cf-more-gifts{position:absolute;z-index:3;right:9px;bottom:4px;display:grid;place-items:center;width:21px;height:21px;border:1px solid var(--cf-line);border-radius:8px;background:var(--cf-raised);color:var(--cf-muted);font-size:8px;font-weight:700}
.cf-gram-stake{display:grid;place-items:center;height:59px}
.cf-gram-stake>.cf-unit{width:36px;height:36px;filter:drop-shadow(0 3px 7px #3c9eff35)}
.cf-player-value{margin-top:3px;font-size:13px;font-weight:700}
.cf-player-value .cf-unit{width:13px;height:13px}
.cf-prize-note{margin-top:6px;color:var(--cf-muted);font-size:8px;line-height:13px;text-align:center}
.cf-player-placeholder{display:grid;place-items:center;width:44px;height:44px;margin:20px 0 17px;border:1px dashed #8995a450;border-radius:16px;background:#ffffff03;color:#a4abb7;font-size:23px;font-weight:300}
.cf-player-empty>strong{font-size:11px;font-weight:550}
.cf-player-empty>span:last-child{margin-top:7px;color:var(--cf-muted);font-size:8px}
.cf-prize-panel{justify-content:center;background:radial-gradient(ellipse at 50% 30%,#d7ad4b13,transparent 80%),var(--cf-field);border-color:#e4bd7030}
.cf-prize-label{color:var(--cf-muted);font-size:10px;font-weight:600;text-align:center;line-height:15px}
.cf-prize-symbol{position:relative;display:grid;place-items:center;width:46px;height:48px;margin:9px 0 4px}
.cf-prize-symbol>.cf-unit{width:35px;height:35px;filter:drop-shadow(0 3px 8px #3c9eff30)}
.cf-prize-symbol>i{position:absolute;right:-2px;bottom:0;display:grid;place-items:center;width:19px;height:19px;border:2px solid var(--cf-field);border-radius:50%;background:#558a69;color:#e8ffe7;font-style:normal;font-size:14px;line-height:1}
.cf-prize-value{font-size:21px;color:var(--cf-gold);letter-spacing:-.4px}
.cf-prize-value>.cf-unit{width:17px;height:17px}
.cf-prize-panel>p{max-width:125px;margin:7px 0 0;color:var(--cf-muted);font-size:8px;line-height:13px;text-align:center}
.cf-waiting-note{display:flex;align-items:center;flex-direction:column;margin:2px 0 4px}
.cf-cancel-game{font-weight:500}
.cf-settlement{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;margin:0 0 16px;padding:16px 14px;border:1px solid var(--cf-line);border-radius:20px;background:var(--cf-field);text-align:center}
.cf-settlement>span{color:var(--cf-muted);font-size:10px}
.cf-settlement>strong{font-size:14px;font-weight:650}
.cf-settlement>.cf-money{font-size:25px;letter-spacing:-.6px}
.cf-settlement>.cf-money .cf-unit{width:22px;height:22px}
.cf-settlement>p{max-width:290px;margin:0;color:var(--cf-muted);font-size:9px;line-height:16px}
.cf-reward-gifts{display:flex;justify-content:center;align-items:center;width:100%;min-height:76px}
.cf-reward-gifts .cf-gift-image{width:78px;height:78px;object-fit:contain}
.cf-reward-gifts .cf-gift-image+.cf-gift-image{margin-left:4px}
.cf-rules-hero{display:flex;justify-content:center;gap:14px;padding:28px 0 33px}
.cf-rules-hero>.cf-side-token{width:76px;height:76px}
.cf-rules-hero>.cf-side-heads{transform:rotate(-12deg)}
.cf-rules-hero>.cf-side-tails{transform:rotate(12deg)}
.cf-rules-copy{padding:0 3px 13px}
.cf-rules-copy h3{margin:0 0 8px;font-size:14px;font-weight:650;letter-spacing:-.3px}
.cf-rules-copy p{margin:0 0 23px;color:var(--cf-muted);font-size:12px;line-height:20px}
.game-mode-card.game-mode-coinflip.mode-wide-banner{position:relative;grid-column:1/-1;min-height:123px;aspect-ratio:3.12;border-color:#f6d99535;background:radial-gradient(ellipse at 93% 29%,#ab987345,transparent 58%),linear-gradient(115deg,#483a2d,#263746 78%);isolation:isolate}
.game-mode-coinflip .mode-banner-label{border-color:#eed6a52b;color:#f8dfaf;background:#efd5a610;font-size:7px;letter-spacing:.9px}
.game-modes-grid .game-mode-coinflip .game-mode-title{max-width:70%;bottom:34px;font-size:24px;letter-spacing:-.8px}
.game-modes-grid .game-mode-coinflip .game-mode-play{font-size:9px;color:#e4ded4;bottom:15px}
.cf-banner-orbit{position:absolute;right:-28px;top:-48px;width:205px;height:205px;border:1px solid #f6d89024;border-radius:50%;transform:rotate(-20deg);box-shadow:0 0 0 19px #f6d89006,0 0 0 41px #f6d89004}
.cf-banner-coins{position:absolute;z-index:2;right:10px;top:9px;width:112px;height:110px;perspective:500px;pointer-events:none}
.cf-banner-coins>.cf-side-token{position:absolute;max-width:none;width:76px;height:76px;box-shadow:0 9px 15px #0003,inset 0 0 0 3px #fff5}
.cf-banner-coins>.cf-side-tails{top:-1px;right:0;transform:rotate(19deg) rotateY(-21deg)}
.cf-banner-coins>.cf-side-heads{bottom:-5px;left:-4px;transform:rotate(-17deg) rotateY(-18deg)}
.cf-inactive *,.app-hidden .coinflip-page *{animation-play-state:paused!important}
.light-theme .cf-intro{background:radial-gradient(ellipse at 92% 18%,#bd955921,transparent 60%),linear-gradient(116deg,#f4e9d8,#e9edf2);border-color:#916a281f}
.light-theme .cf-intro p strong{color:#916420}
.light-theme .cf-intro>div>span{color:#7f776b}
.light-theme .cf-intro.is-solo{background:radial-gradient(ellipse at 92% 18%,#387ce21b,transparent 62%),linear-gradient(116deg,#ebeaf3,#e9edf2)}
.light-theme .cf-solo-info strong,.light-theme .cf-solo-preview strong,.light-theme .cf-prize-value{color:#9e712d}
.light-theme .cf-arena{background:radial-gradient(ellipse at 50% 38%,#93784b13,transparent 68%),linear-gradient(145deg,#f1f0ec,var(--cf-panel))}
.light-theme .cf-arena.is-win{background:radial-gradient(ellipse at 50% 38%,#dca53022,transparent 70%),linear-gradient(145deg,#f7f2e7,var(--cf-panel))}
.light-theme .cf-arena.is-win .cf-stage-title h3{color:#9e6e13}
.light-theme .cf-arena.is-loss .cf-stage-title h3{color:#c15e6a}
.light-theme .cf-opponent-summary>.cf-your-side{color:#9e712d}
.light-theme .cf-stage-orbit{border-color:#94723d10;box-shadow:0 0 0 23px #94723d04,0 0 0 47px #94723d03}
.light-theme .cf-player-placeholder{background:#1b365003;color:#6d7b8b}
.light-theme .cf-gift-check{border-color:#1e3c5924}
@media(max-width:360px){.cf-page-heading h2{font-size:21px}.cf-wallet{gap:4px;padding-left:8px;font-size:10px}.cf-wallet-plus{width:20px;height:20px}.cf-intro{padding:18px 14px}.cf-intro p{font-size:26px}.cf-intro>div>span{max-width:150px;font-size:8px}.cf-intro-art{width:95px;margin-right:-6px}.cf-intro-art .cf-side-token{width:73px!important;height:73px!important}.cf-side-option{gap:7px;padding:10px}.cf-side-option>.cf-side-token{width:36px;height:36px}.cf-side-option strong{font-size:12px}.cf-match-card{padding:12px 9px;gap:7px}.cf-match-description strong{font-size:11px}.cf-match-stake{font-size:11px}.cf-select-gift .cf-gift-image{width:66px;height:66px}.cf-select-gift{min-height:124px}.cf-player{padding-left:5px;padding-right:5px}.game-modes-grid .game-mode-coinflip .game-mode-title{font-size:22px}.cf-banner-coins{right:4px;top:13px;transform:scale(.9);transform-origin:right center}.game-modes-grid .game-mode-coinflip .game-mode-play{font-size:8px}}
@media(prefers-reduced-motion:reduce){.coinflip-page *, .coinflip-page *:before,.coinflip-page *:after{animation:none!important;transition:none!important}}
.reduce-motion .coinflip-page *{animation:none!important;transition:none!important}
/* Two opponents share the same arena; their complete stakes stay underneath. */
.cf-duel-line{display:grid;grid-template-columns:minmax(0,1fr) minmax(96px,1.25fr) minmax(0,1fr);align-items:center;padding:24px 9px 0;gap:0}
.cf-duel-line .cf-player{padding:0 2px;min-height:130px;background:none;border:0;border-radius:0;position:relative;z-index:3}
.cf-duel-avatar{position:relative;display:grid;place-items:center;flex:none;width:58px;height:58px;border-radius:50%;background:linear-gradient(135deg,#fbc76d,#bc7e3c);border:2px solid #e7bd6b;color:white;font-size:25px;font-weight:700;box-shadow:0 0 0 5px #d4a14c0b}
.cf-duel-avatar>img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.cf-duel-avatar>.cf-side-token{position:absolute;right:-5px;bottom:-3px;width:22px;height:22px;border-width:1px}
.cf-player-tails .cf-duel-avatar{border-color:#81badf;background:linear-gradient(135deg,#87d5f7,#3e718e);box-shadow:0 0 0 5px #72b9e00b}
.cf-player.is-winner .cf-duel-avatar{box-shadow:0 0 0 5px #ffd46b20,0 0 28px #ffd46b45}
.cf-player.is-winner .cf-player-side{color:#ffdb8c;font-weight:750}
.cf-player-side,.cf-player-wait{margin-top:4px;font-size:9px;color:var(--cf-muted)}
.cf-duel-line .cf-player-name{font-size:12px;max-width:100%;margin-top:12px}
.cf-duel-line .cf-player-value{margin-top:7px;font-size:11px}
.cf-duel-line .cf-coin-stage{height:195px;overflow:visible;--cf-coin-size:clamp(88px,25vw,120px)}
.cf-duel-line .cf-coin-rig{width:var(--cf-coin-size);height:var(--cf-coin-size);left:calc(50% - var(--cf-coin-size)/2);top:14px}
.cf-duel-line .cf-coin{width:100%;height:100%}
.cf-duel-line .cf-coin-face>svg{width:66%;height:66%}
.cf-duel-line .cf-coin-engraving{font-size:7px;bottom:12px;letter-spacing:1px}
.cf-duel-line .cf-stage-orbit{width:150px;height:150px;left:calc(50% - 75px);top:7px;box-shadow:none}
.cf-duel-line .cf-coin-shadow{width:84px;left:calc(50% - 42px);bottom:25px}
.cf-duel-arena .cf-stage-title{padding-top:20px}
.cf-duel-arena .cf-stage-title h3{font-size:19px}
.cf-duel-arena .cf-stage-status{margin:-2px auto 15px}
.cf-duel-stakes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;background:var(--cf-line);border-top:1px solid var(--cf-line)}
.cf-stake-column{min-width:0;padding:13px 10px 15px;background:var(--cf-panel)}
.cf-stake-column>header{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-bottom:12px}
.cf-stake-column h4{font-size:10px;margin:0;color:var(--cf-muted);font-weight:550}
.cf-stake-column>header>.cf-money{font-size:13px;font-weight:700}
.cf-duel-gifts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.cf-duel-gift{min-width:0;padding:8px 3px;border-radius:12px;background:var(--cf-field);display:flex;align-items:center;flex-direction:column;text-align:center}
.cf-duel-gift .cf-gift-image{width:56px;height:56px;max-width:100%;object-fit:contain}
.cf-duel-gift>strong{width:100%;margin:6px 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:550}
.cf-duel-gift>.cf-money{font-size:9px}
.cf-duel-gift .cf-unit{width:11px;height:11px}
.cf-duel-gram{grid-column:1/-1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;min-height:110px;background:var(--cf-field);border-radius:14px}
.cf-duel-gram>.cf-unit{width:42px;height:42px}
.cf-duel-gram>strong{font-size:12px}
.cf-stake-column.is-empty>p{font-size:10px;line-height:1.5;color:var(--cf-muted);margin:20px 0;text-align:center}
.cf-solo-players .cf-duel-avatar{margin-top:5px}
@media(max-width:360px){.cf-duel-line{padding-left:5px;padding-right:5px}.cf-duel-avatar{width:49px;height:49px}.cf-duel-line .cf-player-name{font-size:10px}.cf-stake-column{padding-left:7px;padding-right:7px}.cf-duel-gifts{gap:5px}.cf-duel-gift .cf-gift-image{width:48px;height:48px}.cf-duel-line .cf-player-value{font-size:10px}}
/* One shared table; selection lives in an inventory sheet. */
.cf-table-heading{margin-bottom:15px}
.cf-table-tools{display:flex;gap:7px}
.cf-table-tools>button{width:33px;height:33px;border:1px solid var(--cf-line);border-radius:50%;background:var(--cf-field);color:var(--cf-muted);font-size:18px}
.cf-table-heading h2{font-size:24px}
.cf-portrait{position:relative;display:grid;place-items:center;width:100%;height:100%;overflow:hidden;border-radius:50%;font-weight:750;color:#fff;background:linear-gradient(140deg,#e4ae5b,#9a6536)}
.cf-player-tails .cf-portrait,.cf-coin-tails .cf-portrait{background:linear-gradient(140deg,#7dcde9,#3b6b8b)}
.cf-portrait>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.cf-portrait>img[hidden]{display:none}
.cf-coin-person .cf-portrait{position:absolute;inset:12%;width:76%;height:76%;font-size:38px;box-shadow:inset 0 0 0 1px #ffffff35}
.cf-coin-person .cf-portrait>img{width:100%;height:100%;object-fit:cover}
.cf-coin-person:after{opacity:.3}
.cf-coin-person .cf-coin-rim{inset:7px}
.cf-table-arena .cf-duel-line{align-items:start;min-height:218px;padding-top:25px}
.cf-table-arena .cf-player{min-height:170px}
.cf-add-gift{display:flex;justify-content:center;align-items:center;gap:4px;width:100%;max-width:117px;min-height:39px;margin-top:10px;padding:7px 5px;border:1px solid #36a9f65c;border-radius:11px;background:#118bee;color:#fff;font-size:9px;font-weight:650;line-height:1.3;white-space:normal}
.cf-add-gift>span{font-size:16px;font-weight:400}
.cf-add-gift:disabled{opacity:.45}
.cf-stake-placeholder{grid-column:1/-1;color:var(--cf-muted);font-size:10px;line-height:1.6;text-align:center;padding:20px 4px}
.cf-duel-avatar>.cf-portrait{font-size:25px}
.cf-picker-backdrop{position:fixed;inset:0;z-index:151;background:#0008;backdrop-filter:blur(5px)}
.cf-gift-sheet{position:fixed;z-index:152;left:50%;bottom:0;transform:translateX(-50%);display:flex;flex-direction:column;width:min(100%,480px);max-height:min(84dvh,calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - 12px));border:1px solid var(--cf-line);border-bottom:0;border-radius:25px 25px 0 0;background:var(--cf-panel);color:var(--cf-text);box-shadow:0 -15px 70px #0006;overflow:hidden;padding-bottom:var(--safe-bottom,env(safe-area-inset-bottom,0px))}
.cf-gift-sheet>header{display:flex;align-items:center;justify-content:space-between;padding:20px 18px 14px;gap:12px}
.cf-gift-sheet h3{font-size:19px;margin:0 0 6px}
.cf-gift-sheet>header span{font-size:11px;color:var(--cf-muted)}
.cf-gift-sheet>header button{width:34px;height:34px;border-radius:50%;background:var(--cf-field);color:var(--cf-muted);font-size:25px;border:1px solid var(--cf-line)}
.cf-picker-content{min-height:100px;overflow-y:auto;overscroll-behavior:contain;padding:0 16px 12px}
.cf-gift-sheet .cf-gift-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}
.cf-gift-sheet .cf-select-gift{min-height:130px}
.cf-gift-sheet>footer{padding:4px 16px 18px;border-top:1px solid var(--cf-line);flex-shrink:0}
.cf-gift-sheet>footer .cf-stake-total{padding:13px 0;margin:0}
.cf-gift-sheet .cf-gift-image{width:76px;height:76px;max-width:100%}
@media(max-width:360px){.cf-add-gift{font-size:8px;padding-left:3px;padding-right:3px}.cf-table-arena .cf-duel-line{min-height:210px}.cf-gift-sheet .cf-select-gift{min-height:120px}.cf-gift-sheet .cf-gift-image{width:65px;height:65px}}
.game-modes-grid .game-mode-mines.mines-banner31{border-radius:24px;overflow:hidden;aspect-ratio:1}
.game-modes-grid .game-mode-mines.mines-banner31 .mode-banner-art{inset:0;border-radius:inherit}
.game-modes-grid .game-mode-mines.mines-banner31 .mode-banner-art img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.cf-duel-avatar>.cf-add-gift{position:absolute;z-index:4;right:-9px;bottom:-6px;display:grid;place-items:center;width:30px;height:30px;min-height:30px;max-width:none;margin:0;padding:5px;border:2px solid var(--cf-panel);border-radius:50%;background:#168def;box-shadow:0 2px 7px #0004;color:#fff}
.cf-duel-avatar>.cf-add-gift svg{width:19px;height:19px;overflow:visible}
.cf-duel-avatar>.cf-add-gift:before{content:"";position:absolute;inset:-6px;border-radius:50%}
.cf-table-tools>button{display:grid;place-items:center;flex:none}
.cf-table-tools>button svg{width:18px;height:18px}
.cf-table-tools>button[data-cf-action="room-create"]{font-size:25px;line-height:1;color:var(--tg-accent-text,#79c7ff)}
.cf-table-tools>button:disabled{opacity:.35}
.cf-join-primary{background:linear-gradient(110deg,#995ce8,#7445cf);box-shadow:inset 0 1px 0 #ffffff22,0 5px 15px #6b34b51a;color:#fff!important}
.cf-join-primary:disabled{opacity:.4;box-shadow:none}
.cf-rooms-heading{margin-top:4px;margin-bottom:15px}
.cf-room-list{display:flex;flex-direction:column;gap:13px}
.cf-room-card{padding:15px;border:1px solid var(--cf-line);border-radius:22px;background:var(--cf-field);overflow:hidden}
.cf-room-card.is-own{border-color:#a778e548;background:linear-gradient(140deg,#8547c010,var(--cf-field))}
.cf-room-card>header{display:flex;align-items:center;gap:10px;margin-bottom:16px;min-width:0}
.cf-room-avatar{display:block;flex:none;width:47px;height:47px;border-radius:50%;box-shadow:0 0 0 3px #b491e612;font-size:20px}
.cf-room-card>header>div{flex:1;min-width:0}
.cf-room-number{font-size:9px;color:var(--cf-muted);white-space:nowrap}
.cf-room-card h3{margin:4px 0;font-size:14px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cf-room-state{font-size:9px;color:var(--cf-muted)}
.cf-room-card>header>.cf-money{font-size:14px;font-weight:750;flex:none}
.cf-room-gifts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:15px}
.cf-room-gift{display:flex;align-items:center;flex-direction:column;min-width:0;padding:9px 3px 7px;background:var(--cf-panel);border-radius:12px}
.cf-room-gift>.cf-gift-image{width:56px;height:56px;max-width:100%;object-fit:contain}
.cf-room-gift>span{max-width:100%;margin-top:5px;color:var(--cf-text);font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cf-room-gram{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:7px;min-height:75px;font-size:14px;background:var(--cf-panel);border-radius:13px}
.cf-room-gram>.cf-unit{width:27px;height:27px}
.cf-room-card>.cf-primary{min-height:46px;border-radius:14px;font-size:13px}
.cf-room-note{margin:10px 0 0;text-align:center;font-size:10px;line-height:1.4;color:var(--cf-muted)}
.cf-room-unavailable{padding:11px 12px;border-radius:12px;background:#ed899a12;color:#ef9fae;font-size:11px;line-height:1.5;margin:0 0 12px}
@media(max-width:360px){.cf-room-card{padding:12px}.cf-room-gifts{gap:5px}.cf-room-avatar{width:42px;height:42px}.cf-room-card>header>.cf-money{font-size:12px}.cf-room-gift>.cf-gift-image{width:49px;height:49px}.cf-table-tools{gap:5px}.cf-table-tools>button{width:30px;height:30px}}
/* Panels fill the phone width; heading controls retain a comfortable inset. */
.coinflip-layout .screen{padding-left:var(--safe-left,0px);padding-right:var(--safe-right,0px)}
.coinflip-layout .coinflip-page{max-width:none;width:100%}

.coinflip-layout .cf-page-heading,.coinflip-layout .coinflip-page>.cf-section-heading{padding-left:12px;padding-right:12px;background:transparent}

/* rolls-winner.css */
body .bottom-sheet.rolls-winner-sheet{padding-left:18px;padding-right:18px}
.rolls-winner-window{display:flex;flex-direction:column;min-height:min(66dvh,540px);max-width:none;margin:0;padding:0;background:transparent}
.rolls-winner-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 35px 18px 0;border-bottom:1px solid var(--tg-separator,#ffffff0d)}
.rolls-winner-heading h2{margin:0;font-size:23px;line-height:29px;font-weight:700;letter-spacing:-.5px}
.rolls-winner-heading>span{flex:none;padding:4px 7px;border:1px solid var(--tg-control-border,#ffffff12);border-radius:7px;color:var(--tg-secondary,#9ca8bb);font-size:10px;font-variant-numeric:tabular-nums}
.rolls-winner-player{display:flex;align-items:center;gap:11px;min-height:76px;padding:15px 0;border-bottom:1px solid var(--tg-separator,#ffffff0d)}
.rolls-winner-avatar{position:relative;flex:none;display:grid;place-items:center;overflow:hidden;width:42px;height:42px;border:1px solid #5fbaff55;border-radius:50%;background:#2481cc;color:#fff;font-size:18px;font-weight:750}
.rolls-winner-avatar .avatar-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0}.rolls-winner-avatar .avatar-photo.is-ready{opacity:1}
.rolls-winner-player>strong{min-width:0;flex:1;overflow-wrap:anywhere;font-size:14px;line-height:19px;font-weight:650}
.rolls-winner-stake{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.rolls-winner-stake>small{font-size:9px;color:var(--tg-secondary,#9ca8bb)}.rolls-winner-stake>.rolls-money{font-size:12px;font-weight:650}
.rolls-winner-bank{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 15px;color:var(--tg-secondary,#9ca8bb);font-size:12px}.rolls-winner-bank>strong{font-size:17px;color:var(--tg-text,#f4f7ff)}
.rolls-winner-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;align-content:start;flex:1;padding-bottom:14px}
.rolls-winner-item{min-width:0;display:flex;flex-direction:column;align-items:center;gap:5px;align-self:start;overflow:hidden;border:1px solid var(--tg-control-border,#ffffff0d);border-radius:14px;background:var(--tg-field,#242a35);padding:0 0 10px}
.rolls-winner-item-art{width:100%;aspect-ratio:1;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#149df522,#117ce008)}
.rolls-winner-item-art .gift-art-static,.rolls-winner-item-art .gift-art-static img{display:block;width:100%;height:100%;object-fit:contain}
.rolls-winner-cash>img{width:57%;height:57%;object-fit:contain;filter:drop-shadow(0 5px 9px #009aff22)}
.rolls-winner-item>strong{max-width:100%;padding:0 5px;font-size:10px;line-height:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rolls-winner-item>.rolls-money{font-size:12px;font-weight:700}.rolls-winner-item .rolls-unit{width:13px;height:13px}
.rolls-winner-fee{display:flex;align-items:center;justify-content:center;gap:6px;margin:8px 0 14px;color:var(--tg-secondary,#9ca8bb);font-size:10px}
.rolls-winner-footer{position:sticky;bottom:0;z-index:1;margin-top:auto;padding:10px 0 0;background:var(--tg-sheet,#23262d)}
.rolls-winner-ok.primary-button{width:100%;min-height:48px;margin:0;padding:13px 18px;border:0;border-radius:14px;background:var(--tg-accent,#009aff);box-shadow:none;color:#fff;font-size:15px;font-weight:650}
@media(max-width:360px){.rolls-winner-heading{gap:6px;padding-right:31px}.rolls-winner-heading h2{font-size:21px}.rolls-winner-heading>span{font-size:9px}.rolls-winner-player>strong{font-size:12px}.rolls-winner-items{gap:7px}.rolls-winner-stake>.rolls-money{font-size:11px}}

/* splash.css */
body .splash,body:not(.light-theme) .splash{position:fixed;inset:0;min-height:100dvh;border-radius:0;background:var(--tg-bg,#121418);transition:none}
.splash::before{display:none}
.splash .splash-center{top:50%;gap:24px}
.splash-logo{width:min(88%,380px);background:transparent}
.splash-logo img{display:block;width:100%;height:auto;filter:brightness(0) invert(1)}
.light-theme .splash{background:#f4f5f6}
.light-theme .splash-logo img{filter:brightness(0)}

/* native-motion.css */
/* Local system typography: iOS supplies SF; no network font swap on slow links.
   Font size/weight and layout stay static while text moves by a few pixels. */
:root{--ui-font-text:-apple-system,BlinkMacSystemFont,"SF Pro",sans-serif;--ui-text-ease:cubic-bezier(.22,1,.36,1)}
body,button,input,select,textarea{font-family:var(--ui-font-text);font-synthesis:none;font-kerning:normal;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font-optical-sizing:auto}
.page-title,.sheet-title,.wallet-surface h2,.rolls-heading h2{letter-spacing:-.5px}
.page-subtitle,.wallet-surface-message,.referral-note,.rolls-status{line-height:1.4}
[data-balance],[data-inventory-count],[data-referral-count],[data-referral-earned],
[data-loss-amount],.rolls-money,.up-price-value,.payment-quote,[data-amount-target],
.coefficient,.bet-amount,#bj-stake,[data-earn-counter]{font-variant-numeric:tabular-nums lining-nums}
.ui-number-digit{display:inline-block;white-space:pre;vertical-align:baseline}
/* Small cards respond without shrinking four percent or moving nearby labels. */
body :is(.game-mode-card,.gift-collection-card,.gift-picker-card,.up-gift){transition:transform .24s var(--ui-text-ease),opacity .2s ease,background-color .2s ease}
body :is(.game-mode-card,.gift-collection-card,.gift-picker-card,.up-gift):active:not(:disabled):not([aria-disabled="true"]){transform:scale(.985);opacity:.76;transition-duration:.09s}
.reduce-motion :is(.game-mode-card,.gift-collection-card,.gift-picker-card,.up-gift){transition:none!important;transform:none!important}
@media(prefers-reduced-motion:reduce){body :is(.game-mode-card,.gift-collection-card,.gift-picker-card,.up-gift){transition:none!important;transform:none!important}}

/* A stable placeholder while a feature downloads; no artificial wait. */
.deferred-preview{width:min(100%,360px);display:grid;gap:16px;text-align:left}
.deferred-preview>span{display:block;position:relative;overflow:hidden;background:var(--tg-raised,#292929);border-radius:20px}
.deferred-preview-title{width:42%;height:20px;border-radius:8px!important}
.deferred-preview-stage{height:clamp(160px,28vh,260px)}
.deferred-preview-action{height:50px;border-radius:25px!important}
.deferred-preview>span:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,#ffffff0c,transparent);animation:deferred-shimmer 1.6s ease-in-out infinite}
@keyframes deferred-shimmer{to{transform:translateX(100%)}}
.reduce-motion .deferred-preview>span:after,.app-hidden .deferred-preview>span:after{animation:none;opacity:0}
@media(prefers-reduced-motion:reduce){.deferred-preview>span:after{animation:none;opacity:0}}

/* telegram-buttons.css */
/* SolidRoundedButton: system semibold17 / 48h / radius24. Compact reward
   actions keep a full44px target. Gloss decorates the background, not text.
   Clip the complete capsule: WebKit can leak blended/transformed gloss layers
   past overflow+border-radius. Use normal alpha compositing and a 2D transform. */
body .tg-solid-button{
  position:relative;isolation:isolate;overflow:hidden;clip-path:inset(0 round 999px);display:flex;align-items:center;justify-content:center;gap:6px;
  min-width:0;min-height:var(--tg-button-height,48px);padding:var(--tg-button-padding,12px 20px);border:0;border-radius:999px;
  background:var(--tg-button-fill,var(--tg-accent,#008bff));color:#fff;
  font-family:var(--ui-font-text,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
  font-size:var(--tg-button-font,17px);font-weight:600;line-height:var(--tg-button-line,24px);letter-spacing:-.2px;
  text-align:center;text-decoration:none;text-shadow:none;box-shadow:none;opacity:1;
  transition:opacity .2s ease,background-color .2s ease,color .2s ease;touch-action:manipulation;
}
body .tg-solid-button::before{
  content:"";position:absolute;z-index:-1;left:0;top:0;bottom:0;width:70px;pointer-events:none;
  background:linear-gradient(90deg,#ffffff00,#ffffff3d 50%,#ffffff00);
  transform:translateX(var(--tg-gloss-from,-1000px));visibility:hidden;
}
body .tg-solid-button::after{content:"";position:absolute;inset:0;border:1px solid #ffffff12;border-radius:inherit;pointer-events:none}
body .tg-solid-button.tg-gloss-running::before{visibility:visible;animation:tg-solid-gloss 4s cubic-bezier(0,0,.58,1) infinite}
@keyframes tg-solid-gloss{from{transform:translateX(var(--tg-gloss-from,-1000px))}to{transform:translateX(var(--tg-gloss-to,1250px))}}
body .tg-solid-button:focus-visible::after{border:2px solid #fff}
body .tg-solid-button:active:not(:disabled):not([aria-disabled="true"]){transform:none!important;opacity:.55;transition-duration:0s}
body .tg-solid-button:disabled,body .tg-solid-button[aria-disabled="true"]{background:var(--tg-raised,#262930);color:var(--tg-secondary,#a1a7b1);opacity:1;cursor:default}
body .tg-solid-button:disabled::after,body .tg-solid-button[aria-disabled="true"]::after{border-color:var(--tg-control-border,#ffffff0c)}
body .tg-solid-button:disabled::before,body .tg-solid-button[aria-disabled="true"]::before,
body.app-hidden .tg-solid-button::before,.reduce-motion .tg-solid-button::before,
[inert] .tg-solid-button::before,[hidden] .tg-solid-button::before,[data-sheet-state="closing"] .tg-solid-button::before{animation:none!important;visibility:hidden!important}
.wallet-actions .tg-solid-button{--tg-button-font:15px;--tg-button-padding:10px 12px;--tg-button-line:20px}
.wallet-actions .tg-solid-button[data-action="earnings"]{--tg-button-fill:#8b55de}
.loss-reward-card .tg-solid-button{--tg-button-height:44px;--tg-button-font:14px;--tg-button-line:20px;--tg-button-padding:10px 8px}
.loss-reward-card.friends .tg-solid-button{--tg-button-fill:#8b55de}
@media(max-width:360px){.wallet-actions .tg-solid-button{--tg-button-font:14px}.loss-reward-card .tg-solid-button{--tg-button-font:13px}}
.reduce-motion .tg-solid-button{transition:none!important}
@media(prefers-reduced-motion:reduce){body .tg-solid-button{transition:none!important}body .tg-solid-button::before{animation:none!important;visibility:hidden!important}}

/* control-polish.css */
/* Keep moving selection paint inside its track. No blended layers, animated
   filters or permanent will-change allocations. Outer nav shadows stay intact. */
body :is(.mode-categories,.payment-methods,.payment-assets,.case-segments,.segmented){
  overflow:hidden;clip-path:inset(0 round 999px);
}
body :is(.mines-source-switch,.mines-counts,.bj-room-switch,.bj-bet-panel .bj-chips)[data-game-selection-ready]{
  overflow:hidden;clip-path:inset(0 round 25px);
}
body .nav-selection{clip-path:inset(0 round 999px)}
body .bet-button::before{border-radius:inherit;clip-path:inset(0 round 999px)}
/* The large orbit keeps its size. Scroll the page above the fixed navigation,
   so the shop action cannot sit underneath the Inventory tab. */
body.upgrade-view .screen{
  height:calc(var(--effective-app-height,100dvh) - 86px - var(--safe-bottom,0px));
  min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;
  padding-bottom:16px;scroll-padding-block:12px;scrollbar-width:none;
}
body.upgrade-view .screen::-webkit-scrollbar{display:none}
body :is(.mode-categories,.payment-methods,.payment-assets,.case-segments,.segmented,
  .mines-source-switch,.mines-counts,.bj-room-switch,.bj-bet-panel .bj-chips) button:focus-visible{
  outline:2px solid var(--tg-accent-text,#70bcff);outline-offset:-3px;
}

/* Native SegmentedControlNode gives the selected surface a small depression.
   Independent scale leaves the sliding transform owned by its controller. */
body :is(.payment-methods,.payment-assets,.case-segments)::before{
  transition:transform .28s cubic-bezier(.22,.7,.22,1),scale .25s ease-in-out;
}
@supports(scale:1){
  .mode-categories:has(>[aria-selected=true]:active:not(:disabled):not([aria-disabled=true]))>.mode-category-indicator,
  .payment-methods:has(>[aria-checked=true]:active:not(:disabled):not([aria-disabled=true]))::before,
  .payment-assets:has(>[aria-checked=true]:active:not(:disabled):not([aria-disabled=true]))::before,
  .case-segments:has(>[aria-pressed=true]:active:not(:disabled):not([aria-disabled=true]))::before{scale:.96}
}
body :is(.mode-categories [role=tab],.payment-method,.payment-assets button,.case-segments button){
  transition:opacity .2s ease,color .2s ease;
}
body :is(.mode-categories [role=tab],.payment-method,.payment-assets button,.case-segments button):active:not(:disabled):not([aria-disabled=true]){
  opacity:.65;transition-duration:0s;
}

/* The row owns the semantic value; the decorative span never becomes a
   second control. Context-menu sizing and press behavior remain local. */
.setting-row[role=switch][aria-checked=true] .switch::before{background:#34c759}
.setting-row[role=switch][aria-checked=true] .switch::after{transform:translateX(20px)}

/* Complete the existing press/release language on secondary game surfaces.
   No whole-button zoom, label cloning or new pointer/click handlers. */
body :is(.up-primary,.up-text-button,.up-icon-button,.rolls-primary,
  .rolls-text-button,.rolls-wallet,.rolls-icon-button,
  .case-open-button,
  .sheet-close,.tg-empty-action,.tg-history-more,.friends-more,.balance-option){
  transition:opacity .2s ease,background-color .18s ease,color .18s ease;
}
body :is(.up-primary,.up-text-button,.up-icon-button,.rolls-primary,
  .rolls-text-button,.rolls-wallet,.rolls-icon-button,
  .case-open-button,
  .sheet-close,.tg-empty-action,.tg-history-more,.friends-more,.balance-option):active:not(:disabled):not([aria-disabled=true]){
  opacity:.55;transition-duration:0s;
}

/* Stop finite transitions and loading decoration when the app is backgrounded
   or motion is disabled. Final selected/disabled states are still immediate. */
.app-hidden .list-skeleton-row{animation:none}
:is(.reduce-motion,.app-hidden) :is(.mode-category-indicator,.mode-categories [role=tab],
  .payment-methods,.payment-method,.payment-assets,.payment-assets button,.switch,
  .up-primary,.up-text-button,.up-icon-button,.rolls-primary,
  .rolls-text-button,.rolls-wallet,.rolls-icon-button,
  .case-open-button,.sheet-close,
  .tg-empty-action,.tg-history-more,.friends-more,.balance-option){transition:none!important}
:is(.reduce-motion,.app-hidden) :is(.payment-methods,.payment-assets,.case-segments,.switch)::before,
:is(.reduce-motion,.app-hidden) .switch::after{transition:none!important;scale:1!important}
:is(.reduce-motion,.app-hidden) .mode-category-indicator{scale:1!important}
@media(prefers-reduced-motion:reduce){
  body :is(.mode-category-indicator,.payment-methods,.payment-assets,.case-segments,.switch),
  body :is(.payment-methods,.payment-assets,.case-segments,.switch)::before,body .switch::after{transition:none!important;scale:1!important}
}

/* control-feedback.css */
/* Small static SVG checks; only an accepted change animates via WAAPI. */
.ui-gift-check{position:absolute;z-index:2;top:8px;right:8px;display:grid;place-items:center;width:22px;height:22px;box-sizing:border-box;flex:none;border:1.5px solid var(--tg-secondary,#a1a7b1);border-radius:50%;background:var(--tg-field,#171a1f);color:#fff;opacity:.65;pointer-events:none;transform:none;transition:none}
.ui-gift-check>svg{display:block;width:17px;height:17px;opacity:0}
.ui-gift-check path{stroke-dasharray:1;stroke-dashoffset:0}
body .ui-gift-check,body .ui-gift-check svg,body .ui-gift-check path{transition:none!important;animation:none!important}
body :is(.gift-picker-card,.up-gift,.rolls-select-gift)[aria-pressed=true]>.ui-gift-check,
body [data-gift-chosen=true]>.ui-gift-check,body .gift-selection.is-selected.ui-gift-check{background:var(--tg-accent,#008bff);border-color:var(--tg-accent,#008bff);opacity:1;transform:none}
body :is(.gift-picker-card,.up-gift,.rolls-select-gift)[aria-pressed=true]>.ui-gift-check>svg,
body [data-gift-chosen=true]>.ui-gift-check>svg,body .gift-selection.is-selected.ui-gift-check>svg{opacity:1}
body .gift-selection.ui-gift-check{transform:none;transition:none}
body .rolls-gift-check.ui-gift-check{width:22px;height:22px}
.mines-gift-pick>.ui-gift-check{position:static;margin-left:auto}
body :is(.up-gift,.up-selection){position:relative}

/* Embedded SolidRoundedButton progress: no width morph, fake percentage, DOM
   label clone or JS frame loop. Text still supplies the accessible name. */
:root{--ui-pending-ink:#b7dcff;--ui-pending-track:#79bfff45}
:root[data-theme=light]{--ui-pending-ink:#1689d7;--ui-pending-track:#1689d735}
body :is(.up-primary,.rolls-primary,.case-open-button,.bet-button,.mines-primary,.bj-deal,.bj-hit,.primary-button:not(.tg-solid-button))[data-button-pending=true]{--ui-pending-ink:#fff;--ui-pending-track:#ffffff55}
body button[data-button-pending=true]{position:relative;color:transparent!important;text-shadow:none!important;opacity:1!important;cursor:wait}
body button[data-button-pending=true]>*{opacity:0!important}
body button[data-button-pending=true]::before{animation:none!important;visibility:hidden!important}
body button[data-button-pending=true][aria-busy=true]::after{
  content:"";position:absolute;z-index:3;inset:0;display:block;width:22px;height:22px;box-sizing:border-box;margin:auto;
  border:2.5px solid var(--ui-pending-track,#79bfff45);border-top-color:var(--ui-pending-ink,#b7dcff);border-right-color:var(--ui-pending-ink,#b7dcff);border-radius:50%;
  background:none;box-shadow:none;pointer-events:none;opacity:1;visibility:visible;clip-path:inset(0 round 50%);
  animation:ui-button-progress 1s linear infinite;
}
@keyframes ui-button-progress{to{transform:rotate(360deg)}}
:is(.reduce-motion,.app-hidden) button[data-button-pending=true]::after{animation:none!important}
[inert] button[data-button-pending=true]::after,[data-sheet-state=closing] button[data-button-pending=true]::after{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){body button[data-button-pending=true]::after{animation:none!important}}

/* collection-transitions.css */
.ui-balance-exact{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.ui-balance-visual{display:inline-block;font-variant-numeric:tabular-nums lining-nums;white-space:pre}
.gift-flight{position:fixed;z-index:1300;left:0;top:0;display:block;pointer-events:none!important;transform-origin:0 0;contain:layout style;isolation:isolate}
.gift-flight>img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
img[data-artwork-state=loading],img[data-artwork-state=error]{opacity:0}

/* theme-palette.css */
/* One shared palette, loaded after component skins. Game artwork, rarity,
   table felt and player colours retain their meaning; app surfaces share tokens.
   Switching scheme is an atomic colour update, never a full-screen animation. */
:root{
  --tg-bg:#0e0e10;--tg-surface:#202024;--tg-raised:#2a2a30;--tg-field:#17171b;
  --tg-text:#f5f5f7;--tg-secondary:#a5a9b3;--tg-tertiary:#868d99;
  --tg-accent:#0878bd;--tg-accent-text:#45b5ff;--tg-purple:#8751db;
  --tg-separator:#ffffff12;--tg-control-border:#ffffff14;--tg-selection:#ffffff10;
  --tg-menu:#202024;--tg-sheet:var(--tg-surface);--tg-nav:#17171bf5;
  --tg-success:#6cd6a0;--tg-danger:#ff7c8e;--tg-warning:#e5be70;
  --tg-success-fill:#2397631c;--tg-danger-fill:#df44641c;
  --tg-shadow:#00000032;--tg-scrim:#00000073;--tg-menu-highlight:#ffffff0e;
  --tg-game-ground:#0e0e10;--tg-star:#b8c7e4;--tg-space-tint:#0e1220;
  --glass-fill:var(--tg-menu);--glass-live-fill:#202024;
  --glass-edge:#ffffff18;--glass-inner:#ffffff0a;--glass-shadow:var(--tg-shadow);
  --glass-reflection:linear-gradient(125deg,#ffffff05,transparent 50%);
  --bg:var(--tg-bg);--surface:var(--tg-surface);--text:var(--tg-text);
  --secondary:var(--tg-secondary);--tertiary:var(--tg-tertiary);--separator:var(--tg-separator);
  --blue:var(--tg-accent);--blue-light:var(--tg-accent-text);--accent:var(--tg-accent);
}
:root[data-theme="light"]{
  --tg-bg:#f2f2f7;--tg-surface:#fff;--tg-raised:#e7e9ef;--tg-field:#edeef3;
  --tg-text:#191b20;--tg-secondary:#626975;--tg-tertiary:#717987;
  --tg-accent:#0073e6;--tg-accent-text:#0067c8;--tg-purple:#7943cb;
  --tg-separator:#20293814;--tg-control-border:#2029381a;--tg-selection:#ffffffdc;
  --tg-menu:#fff;--tg-sheet:#fff;--tg-nav:#fffffff5;
  --tg-success:#157b47;--tg-danger:#bc2946;--tg-warning:#8a5d0d;
  --tg-success-fill:#2187540e;--tg-danger-fill:#cc34510d;
  --tg-shadow:#20293816;--tg-scrim:#171a2466;--tg-menu-highlight:#2029380a;
  --tg-game-ground:#edf0f7;--tg-star:#677b9f;--tg-space-tint:#eef0f9;
  --glass-fill:var(--tg-menu);--glass-live-fill:#ffffffec;
  --glass-edge:#ffffffb3;--glass-inner:#2029380a;--glass-shadow:var(--tg-shadow);
  --glass-reflection:linear-gradient(125deg,#ffffff18,transparent 50%);
}
html[data-theme],html[data-theme] body,html[data-theme] body .mini-app{background:var(--tg-bg);color:var(--tg-text)}
html[data-theme] body .screen{color:var(--tg-text)}
html[data-theme] body .screen{background:transparent}
html[data-theme] body .screen :is(.wallet-card,.settings-group,.referral-card,.bets-card,.inventory-empty-state){background:var(--tg-surface);border-color:var(--tg-control-border);box-shadow:none}
html[data-theme] body :is(.bet-amount-row,.wallet-address,.detail-info,.referral-link-row,.search-field){background:var(--tg-field);border-color:var(--tg-control-border);color:var(--tg-text)}
html[data-theme] body :is(.page-title,.profile-heading h1,.wallet-amount,.wallet-amount>[data-balance]){color:var(--tg-text)}
html[data-theme] body :is(.page-subtitle,.group-label,.profile-footer,.wallet-label,.wallet-unit,.sheet-copy,.sheet-gift-type,.about-copy,.inventory-empty,.local-caption){color:var(--tg-secondary)}
html[data-theme] body :is(.app-header .balance-pill,.game-wallet,.game-settings,.app-header .icon-button){background:var(--tg-raised);color:var(--tg-text);border-color:var(--tg-control-border)}
html[data-theme] body :is(.tiny-plus,.wallet-add){background:var(--tg-field);color:var(--tg-accent-text)}
html[data-theme] body .nav-fade{background:linear-gradient(transparent,var(--tg-bg) 80%)}
html[data-theme] body .bottom-nav .nav-item{color:var(--tg-secondary)}
html[data-theme] body .bottom-nav .nav-item.active{color:var(--tg-accent-text)}
html[data-theme] body .splash{background:var(--tg-bg)}
html[data-theme] body :is(.splash-title,.sheet-title){color:var(--tg-text)}
html[data-theme] body .splash-center #loading-status{color:var(--tg-secondary)}
html[data-theme] body .bottom-sheet.sheet-motion-ready{background:var(--tg-sheet);border-color:var(--tg-control-border);color:var(--tg-text)}
html[data-theme] body :is(.sheet-close,.inventory-sort){background:var(--tg-raised);color:var(--tg-secondary);border-color:var(--tg-control-border)}
html[data-theme] body .sheet-backdrop.sheet-motion-ready{background:var(--tg-scrim)}
html[data-theme] .context-menu{--context-fill:var(--tg-menu);--context-highlight:var(--tg-menu-highlight);--context-divider:var(--tg-separator);color:var(--tg-text);border-color:var(--tg-control-border)}
html[data-theme] .context-menu[data-context-morph=true]{background:var(--tg-menu);box-shadow:inset 0 1px 0 var(--glass-inner)}
html[data-theme] .context-menu-backdrop{background:var(--tg-scrim)}
html[data-theme] body .setting-row+.setting-row:before{background:var(--tg-separator)}
/* Retain the flat settings popover; its inner group is never a second card. */
html[data-theme] .context-menu .settings-group{background:transparent;border:0;box-shadow:none}
.theme-preference{padding:13px 14px 15px;border-bottom:1px solid var(--tg-separator)}
.theme-preference-heading{margin-bottom:10px;color:var(--tg-text);font-size:15px;line-height:20px;font-weight:500;letter-spacing:-.2px}
.theme-mode-picker{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:3px;border:1px solid var(--tg-control-border);border-radius:16px;background:var(--tg-field);overflow:hidden;clip-path:inset(0 round 16px)}
.theme-mode-picker:before{content:"";position:absolute;z-index:0;top:3px;bottom:3px;left:3px;width:calc((100% - 6px)/3);border-radius:12px;background:var(--tg-accent);pointer-events:none;transform:translateX(0);transition:transform .28s cubic-bezier(.22,1,.36,1)}
.theme-mode-picker[data-theme-selection=light]:before{transform:translateX(100%)}
.theme-mode-picker[data-theme-selection=dark]:before{transform:translateX(200%)}
body .theme-mode-picker>button{position:relative;z-index:1;display:grid;place-items:center;min-width:0;min-height:44px;padding:5px 7px;border:0;border-radius:12px;background:transparent;color:var(--tg-secondary);font:600 13px/16px var(--ui-font-text);letter-spacing:-.15px;text-align:center;white-space:normal;transition:opacity .2s ease;transform:none}
body .theme-mode-picker>button[aria-checked=true]{color:#fff}
body .theme-mode-picker>button:active{opacity:.65}
body .theme-mode-picker>button:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:-2px}
body .theme-mode-picker>button[aria-checked=true]:focus-visible{outline-color:#fff}
.reduce-motion .theme-mode-picker:before,.app-hidden .theme-mode-picker:before{transition:none}
@media(prefers-reduced-motion:reduce){.theme-mode-picker:before{transition:none}}
/* Neutral game chrome follows the same palette; table felt and gift artwork
   remain artwork. Bright stars are adapted to a pale sky in light mode. */
html[data-theme] body .space-game:before{background:var(--tg-game-ground)}
html[data-theme] body :is(.participants-title,.stage-caption,.coefficient-current-wrap>span,.history-heading>span+span,.bet-multiplier){color:var(--tg-secondary)}
html[data-theme] body :is(.participant-info>strong,.participant-value,.game-countdown,.current-coefficient.waiting){color:var(--tg-text)}
html[data-theme] body .bet-entry{border-color:var(--tg-separator)}
html[data-theme] body .bet-entry.won{background:var(--tg-success-fill);border-color:var(--tg-success)}
html[data-theme] body .bet-entry.won :is(.participant-value,.bet-multiplier){color:var(--tg-success)}
html[data-theme] body .bet-entry.lost{background:var(--tg-danger-fill);border-color:var(--tg-danger)}
html[data-theme] body .bet-entry.lost :is(.participant-value,.bet-multiplier){color:var(--tg-danger)}
body .upgrade-page[data-upgrade-cosmos=true]{--up-panel:var(--tg-bg);--up-text:var(--tg-text);--up-muted:var(--tg-secondary);--up-border:var(--tg-control-border);color:var(--up-text)}
body .upgrade-app.upgrade-shop-dialog{--up-panel:var(--tg-surface);--up-raised:var(--tg-raised)}
body.upgrade-view .screen:has([data-upgrade-cosmos=true]){background:var(--tg-bg)}
body [data-upgrade-cosmos=true] .up-selection{background:var(--tg-surface);border-color:var(--tg-control-border)}
body [data-upgrade-cosmos=true] .up-selection-source{border-color:var(--tg-accent)}
body [data-upgrade-cosmos=true] .up-selection-target{border-color:var(--tg-control-border)}
body [data-upgrade-cosmos=true] .up-gauge-caption strong{color:var(--tg-text)}
body [data-upgrade-cosmos=true] .up-gauge-caption span{color:var(--tg-secondary)}
body .up-gauge.is-win .up-gauge-caption strong{color:var(--tg-success)}
body .up-gauge.is-loss .up-gauge-caption strong{color:var(--tg-danger)}
body .up-skeleton{background:var(--tg-raised)}
.light-theme .up-price-value[data-rarity=common]{color:#167c48}.light-theme .up-price-value[data-rarity=rare]{color:#0068c9}.light-theme .up-price-value[data-rarity=epic]{color:#7543bf}.light-theme .up-price-value[data-rarity=legendary]{color:#b02072}.light-theme .up-price-value[data-rarity=mythic]{color:#946100}
.light-theme [data-upgrade-cosmos=true] .up-gauge-track{stroke:#445e8926}
.light-theme .up-gauge-ticks{stroke:#38547c50}
body .rolls-page{--rolls-panel:var(--tg-surface);--rolls-line:var(--tg-control-border);--rolls-raised:var(--tg-raised)}
body .rolls-heading h2>span{color:var(--tg-accent-text)}
html[data-theme] .rolls-primary:not(.rolls-cash-button):not(:disabled),html[data-theme] .case-open-button:not(:disabled){background:var(--tg-accent);border-color:transparent;box-shadow:none}
html[data-theme] .rolls-stake-buttons>.rolls-primary.rolls-cash-button{background:var(--tg-field);border-color:var(--tg-control-border);color:var(--tg-accent-text)!important}
html[data-theme] .rolls-stake-buttons>.rolls-primary:disabled{background:var(--tg-raised);border-color:var(--tg-control-border);color:var(--tg-secondary)!important;opacity:1}
body .rolls-wheel .rw-center{background:var(--tg-surface);color:var(--tg-text);border-color:var(--tg-control-border)}
body .rolls-wheel :is(.rw-brand,.rw-status){color:var(--tg-secondary)}
body .rolls-wheel .rw-countdown-track{stroke:var(--tg-control-border)}
body .rolls-wheel .rw-countdown-line{stroke:var(--tg-accent-text)}
.light-theme .rolls-wheel .rw-empty-sector{fill:#d5deef;stroke:#ffffff80}
.light-theme .rolls-wheel .rw-empty-sector:nth-child(even){fill:#e1e7f2}
html[data-theme] body .rolls-status{color:var(--tg-secondary)}
html[data-theme] body .rolls-pool{background:var(--tg-surface);border-color:var(--tg-control-border)}
html[data-theme] body .rolls-amount-field>div{background:var(--tg-field);border-color:var(--tg-control-border)}
html[data-theme] body .rolls-select-gift>.rolls-money{color:var(--tg-secondary)}
html[data-theme] body :is(.rolls-tabs,.payment-methods,.payment-assets){background:var(--tg-field);border-color:var(--tg-control-border)}
body .case-roulette{--case-panel:var(--tg-surface);--case-field:var(--tg-field);--case-border:var(--tg-control-border);--case-muted:var(--tg-secondary)}
/* These older controls explicitly force white text; disabled labels use the
   shared neutral treatment even before the button decorator mounts. */
body :is(.up-primary,.case-open-button,.rolls-primary):disabled{background:var(--tg-raised);color:var(--tg-secondary)!important;opacity:1;border-color:var(--tg-control-border);box-shadow:none}
html[data-theme] body.mines-view,html[data-theme] body.mines-view .mini-app{background:var(--tg-bg)}
html[data-theme] .mines-page{color:var(--tg-text)}
html[data-theme] .mines-cell:not(.gram,.gift,.mine,.hazard){background:var(--tg-raised);border-color:var(--tg-control-border);box-shadow:inset 0 1px 0 var(--glass-inner)}
html[data-theme] .mines-flip-cover{background:var(--tg-raised)}
html[data-theme] .mines-cell-seal{color:var(--tg-tertiary);border-color:var(--tg-control-border);opacity:.55}
html[data-theme] :is(.mines-wallet-label,.mines-status,.mines-eyebrow,.mines-footnote,.mines-sheet-copy,.mines-rules p,.mines-history-facts,.bj-eyebrow){color:var(--tg-secondary)}
html[data-theme] .mines-live-status{color:var(--tg-accent-text);background:var(--tg-field)}
html[data-theme] :is(.mines-wallet strong small,.mines-coefficients strong){color:var(--tg-secondary)}
html[data-theme] :is(.mines-icon,.mines-amount-row>button){color:var(--tg-accent-text);background:var(--tg-raised);border-color:var(--tg-control-border)}
html[data-theme] .mines-amount-row input{color:var(--tg-text)}
html[data-theme] .mines-counts button{color:var(--tg-secondary)}
html[data-theme] .mines-counts button[aria-pressed=true]{color:var(--tg-accent-text)}
.light-theme .coefficient-strip .current-coefficient{color:var(--tg-accent-text)}
.light-theme.game-view .rocket-history .current-coefficient.crashed{color:var(--tg-danger)}
body .wallet-actions .tg-solid-button[data-action=earnings],body .loss-reward-card.friends .tg-solid-button{--tg-button-fill:var(--tg-purple)}
@media(forced-colors:active){.theme-mode-picker{border-color:ButtonText}.theme-mode-picker:before{background:Highlight}.theme-mode-picker>button[aria-checked=true]{color:HighlightText}}

/* ios-elements.css */
/* Shared form/list geometry. Theme colours remain owned by theme-palette.css. */
body :is(.bet-amount-row,.blackjack-page .bj-amount-field,.mines-page .mines-amount-row>label,.referral-link-row){
  border:1px solid var(--tg-control-border);border-radius:14px;background:var(--tg-field);
  color:var(--tg-text);box-shadow:none;
  transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease;
}
body :is(.bet-amount-row,.blackjack-page .bj-amount-field,.mines-page .mines-amount-row>label){min-height:50px}
body :is(.bet-amount-row,.blackjack-page .bj-amount-field,.mines-page .mines-amount-row>label,.referral-link-row):focus-within{
  border-color:var(--tg-accent-text);box-shadow:0 0 0 2px color-mix(in srgb,var(--tg-accent-text) 15%,transparent);
}
body :is(#bet-amount,#bj-amount,#mines-amount),
body .payment-field input,body .payment-deposit .payment-field input{
  font-family:inherit;font-size:17px;line-height:24px;font-weight:400;letter-spacing:0;
  color:var(--tg-text);caret-color:var(--tg-accent-text);font-variant-numeric:tabular-nums;
}
body .payment-field{display:block;text-align:left}
body .payment-field>span{display:block;margin:0 2px 8px;font-size:13px;line-height:18px;font-weight:400;color:var(--tg-secondary)}
body .payment-field input,body .payment-deposit .payment-field input{
  width:100%;min-height:50px;padding:12px 14px;box-sizing:border-box;border:1px solid var(--tg-control-border);
  border-radius:14px;background:var(--tg-field);outline:none;
  transition:border-color .2s ease,box-shadow .2s ease;
}
body .payment-field input:focus,body .payment-deposit .payment-field input:focus{border-color:var(--tg-accent-text);box-shadow:0 0 0 2px color-mix(in srgb,var(--tg-accent-text) 15%,transparent)}
body :is(.payment-field input,.bet-amount-row input,.bj-amount-field input,.mines-amount-row input)::placeholder{color:var(--tg-secondary);opacity:.8}
body :is(.payment-field input,.bet-amount-row,.bj-amount-field,.mines-amount-row label)[data-invalid=true]{border-color:#df526b}
body .referral-link-row{min-height:48px}
body .referral-link-row input{font-family:inherit;font-size:14px;color:var(--tg-text)}

body :is(.tg-history-rows,.tg-friends-list,.tg-attributes){border:1px solid var(--tg-control-border);border-radius:18px;background:var(--tg-surface);box-shadow:none}
body .tg-history .tg-history-row{padding:13px 14px;min-height:74px}
body .tg-attributes>div{min-height:48px;padding:12px 14px;gap:16px}
body .tg-attributes dt{font-size:14px;line-height:20px;font-weight:400}
body .tg-attributes dd{font-size:14px;line-height:20px;font-weight:500}
body :is(.tg-history-row,.menu-row,.setting-row){-webkit-tap-highlight-color:transparent}
body :is(.tg-history-row,.menu-row):active{background:var(--tg-selection)}
body .tg-friends-list .friend-row{padding:13px 14px;min-height:74px}
body :is(.tg-history-row+.tg-history-row,.tg-attributes>div+div,.tg-friends-list .friend-row+.friend-row):before{height:1px;transform:scaleY(.5);transform-origin:top}
body .menu-list{overflow:hidden;border:1px solid var(--tg-control-border);border-radius:18px;background:var(--tg-surface);margin:16px 0 0}
body .menu-list .menu-row{min-height:52px;padding:12px 14px;border-radius:0;font-size:16px;line-height:22px}

[data-gift-search]{min-width:0}
[data-gift-search-name][hidden],[data-gift-search-section][hidden],.gift-search-empty[hidden],.gift-search-clear[hidden]{display:none!important}
.gift-search-toolbar{position:relative;min-width:0;width:100%;margin:0 0 16px}
.gift-search-field{display:flex;align-items:center;gap:10px;min-width:0;height:48px;padding:0 13px;box-sizing:border-box;border:1px solid var(--tg-control-border);border-radius:14px;background:var(--tg-field);color:var(--tg-secondary);transition:border-color .2s ease,box-shadow .2s ease}
.gift-search-field:focus-within{border-color:var(--tg-accent-text);box-shadow:0 0 0 2px color-mix(in srgb,var(--tg-accent-text) 15%,transparent)}
.gift-search-field>svg{width:20px;height:20px;flex:none}
.gift-search-field input{min-width:0;width:100%;height:46px;margin:0;padding:0;border:0;outline:none;background:none;color:var(--tg-text);caret-color:var(--tg-accent-text);font:400 16px/22px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:0;appearance:none;-webkit-appearance:none}
.gift-search-field input::-webkit-search-cancel-button{display:none;-webkit-appearance:none}
.gift-search-field input::placeholder{color:var(--tg-secondary);opacity:1}
.gift-search-clear-space{width:22px;flex:none}
.gift-search-clear{position:absolute;right:3px;top:2px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:12px;background:transparent;color:var(--tg-secondary)}
.gift-search-clear>svg{width:20px;height:20px;border-radius:50%;background:var(--tg-raised)}
.gift-search-clear:active{opacity:.55;transform:none}
.gift-search-meta{display:flex;justify-content:space-between;gap:12px;min-height:18px;margin:9px 2px 0;font-size:12px;line-height:18px;font-weight:400;color:var(--tg-secondary)}
[data-gift-search-count]{font-variant-numeric:tabular-nums;text-align:right}
.gift-search-ranges{display:flex;gap:6px;margin:8px 0 0;min-width:0}
.gift-search-ranges>button{flex:1;min-width:0;min-height:44px;padding:7px 5px;border:1px solid var(--tg-control-border);border-radius:12px;background:var(--tg-surface);color:var(--tg-secondary);font-family:inherit;font-size:13px;line-height:18px;font-weight:500;white-space:nowrap;letter-spacing:0;transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.gift-search-ranges>button[aria-pressed=true]{border-color:color-mix(in srgb,var(--tg-accent-text) 35%,transparent);background:color-mix(in srgb,var(--tg-accent-text) 13%,var(--tg-surface));color:var(--tg-accent-text)}
.gift-search-ranges>button:active{opacity:.7;transform:none}
.gift-search-toolbar button:focus-visible,.gift-search-empty button:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:-3px}
.gift-search-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:230px;padding:24px 16px;text-align:center;color:var(--tg-text)}
.gift-search-empty-symbol{display:grid;place-items:center;width:56px;height:56px;margin-bottom:5px;border-radius:18px;background:var(--tg-raised);color:var(--tg-secondary)}
.gift-search-empty-symbol svg{width:26px;height:26px}
.gift-search-empty h3{margin:0;font-size:18px;line-height:24px;font-weight:600;letter-spacing:-.2px}
.gift-search-empty p{max-width:245px;margin:0;font-size:14px;line-height:20px;color:var(--tg-secondary)}
.gift-search-empty button{min-height:44px;margin-top:2px;padding:8px 14px;border:0;border-radius:12px;background:transparent;color:var(--tg-accent-text);font-size:15px;font-weight:500}
.gift-search-empty button:active{opacity:.55;transform:none}
.up-search-collection{min-width:0;width:100%;margin:10px 0 0}
.up-owned-picker:not(.is-empty)>.up-search-collection{flex:none;margin:0}
.up-owned-picker:not(.is-empty){gap:20px}
.up-search-collection .up-gift-grid{margin-bottom:0}
.up-footer .up-selected-name{margin:0 0 7px;color:var(--tg-text);font-size:14px;line-height:20px;font-weight:500;text-align:center}
.inventory-page .gift-search-toolbar{margin-bottom:17px}
.inventory-page[data-search-empty=true] .inventory-hint{display:none}
@media(max-width:360px){.gift-search-field{padding-left:11px;gap:8px}.gift-search-ranges{gap:5px}.gift-search-ranges>button{font-size:12px}.gift-search-meta{font-size:11px}body .tg-attributes>div{gap:12px;padding-left:12px;padding-right:12px}}
@media(prefers-reduced-motion:reduce){body :is(.bet-amount-row,.bj-amount-field,.mines-amount-row label,.referral-link-row,.payment-field input,.gift-search-field,.gift-search-ranges>button){transition:none}}
body.reduce-motion :is(.bet-amount-row,.bj-amount-field,.mines-amount-row label,.referral-link-row,.payment-field input,.gift-search-field,.gift-search-ranges>button),body.app-hidden :is(.gift-search-field,.gift-search-ranges>button){transition:none}

/* Last shell rule: do not reveal controls after an empty or truncated stylesheet. */
:root{--raketka-shell-ready:1}

/* gift-rarity.css */
/* Shared, static price-band frames. No animation players or backdrop changes. */
[data-gift-rarity=green]{--gift-rarity-color:#48cb83;--gift-rarity-soft:#48cb830c;--gift-rarity-glow:#48cb8318}
[data-gift-rarity=blue]{--gift-rarity-color:#429bd6;--gift-rarity-soft:#429bd60c;--gift-rarity-glow:#429bd619}
[data-gift-rarity=purple]{--gift-rarity-color:#a578d4;--gift-rarity-soft:#a578d40e;--gift-rarity-glow:#a578d41b}
[data-gift-rarity=red]{--gift-rarity-color:#d65c70;--gift-rarity-soft:#d65c700e;--gift-rarity-glow:#d65c701b}
[data-gift-rarity=yellow]{--gift-rarity-color:#d6bf66;--gift-rarity-soft:#d6bf660e;--gift-rarity-glow:#d6bf661b}
[data-gift-rarity=platinum]{--gift-rarity-color:#cdd5e2;--gift-rarity-soft:#ffe4a313;--gift-rarity-glow:#d5bc8124}
body .gift-rarity-card[data-gift-rarity]:not([data-gift-rarity=unknown]),body .gift-rarity-art[data-gift-rarity]:not([data-gift-rarity=unknown]){border:1px solid var(--gift-rarity-color);box-shadow:inset 0 -1px 0 var(--gift-rarity-color),inset 0 0 15px var(--gift-rarity-soft),0 0 5px var(--gift-rarity-glow)}
.gift-rarity-art[data-gift-rarity]{border-radius:12px;box-sizing:border-box}
body .gift-rarity-card .gift-rarity-art[data-gift-rarity]{border:0;box-shadow:none}

/* mines-reward-choice.css */
.mines-reward{position:fixed;inset:0;z-index:1500;display:grid;place-items:center;padding:20px;overflow-y:auto;overscroll-behavior:contain;background:#070b14c9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.mines-reward-card{width:min(360px,100%);padding:24px 18px 18px;border:1px solid #ffffff14;border-radius:30px;background:var(--tg-surface,#1c1e24);text-align:center;box-shadow:0 20px 65px #0005}
.mines-reward-card h2{margin:0 0 22px;font-size:24px;letter-spacing:-.6px}
.mines-reward-art{width:192px;height:192px;max-width:70%;margin:0 auto 24px;overflow:hidden;border-radius:28px;transform:translate3d(0,0,0)}
.mines-reward-art .gift-art-static{width:100%;height:100%;aspect-ratio:auto;background:transparent;border-radius:inherit}
.mines-reward-name{display:block;min-width:0;font-size:17px;line-height:1.35;overflow-wrap:anywhere;margin-bottom:22px}
.mines-reward-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:10px}
.mines-reward-actions button{min-height:50px;padding:12px 8px;border-radius:16px;font-size:13px;font-weight:700;color:white}
.mines-reward-keep{background:var(--tg-accent,#008bff)}.mines-reward-sell{background:#168c66}
.mines-reward-actions button:disabled{opacity:.4}
.mines-reward.is-animated .mines-reward-art{animation:mines-reward-float 2.4s ease-in-out infinite}
@keyframes mines-reward-float{0%,100%{transform:translate3d(0,0,0) rotate(-2deg)}50%{transform:translate3d(0,-9px,0) rotate(2deg)}}
@media(prefers-reduced-motion:reduce){.mines-reward.is-animated .mines-reward-art{animation:none}}
.reduce-motion .mines-reward .mines-reward-art{animation:none}
@media(max-height:600px){.mines-reward-card{padding-top:18px}.mines-reward-card h2{margin-bottom:16px}.mines-reward-art{width:150px;height:150px;margin-bottom:18px}.mines-reward-name{margin-bottom:16px}}
.gift-owned-actions [data-inventory-sell]{width:100%;min-height:48px;margin-top:10px;border:1px solid #21a47b44;border-radius:18px;background:#168c66;color:#fff;font-size:14px;font-weight:700}
.up-owned-detail>[data-inventory-sell]{display:block;width:100%;min-height:48px;margin:10px 0;border-radius:16px;background:#168c66;color:#fff;font-size:14px;font-weight:700}

/* gift-actions.css */
body .gift-owned-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
body .gift-owned-actions>button{display:flex;align-items:center;justify-content:center;margin:0!important;min-width:0;min-height:48px!important;padding:12px 16px;border:0!important;border-radius:24px!important;font-family:inherit;font-size:15px!important;line-height:24px;font-weight:600!important;box-shadow:none;transition:opacity .2s;white-space:normal}
body .gift-owned-actions>[data-owned-gift-action]{background:var(--tg-accent,#0073e6);color:#fff}
body .gift-owned-actions>[data-owned-gift-withdraw],body .gift-owned-actions>[data-inventory-sell]{background:var(--tg-raised,#292c32);color:var(--tg-accent-text,#6cb6ff)}
body .gift-owned-actions>[data-inventory-sell]{grid-column:1/-1;width:100%!important;justify-self:stretch;font-variant-numeric:tabular-nums}
body .gift-owned-actions>button:active:not(:disabled){opacity:.55;transform:none;transition:none}
body .gift-owned-actions>button:disabled{background:var(--tg-raised,#292c32);color:var(--tg-secondary,#a5a9b3);opacity:1}
body .gift-owned-actions>button:focus-visible{outline:2px solid var(--tg-accent-text,#6cb6ff);outline-offset:2px}
.up-owned-detail .gift-owned-actions{margin-top:18px}
.stake-source-switch{align-items:center;min-height:46px;border-radius:999px;padding:4px;background:#14181d;gap:3px}
.stake-source-switch button{width:44px;height:40px;border-radius:999px;position:relative;z-index:1}
.stake-source-switch .currency-art{width:22px;height:22px}
.stake-source-switch svg{width:23px;height:23px}
.stake-choice-row,.bj-stake-choice,.up-source-controls{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.stake-choice-row>.stake-source-switch{margin-inline:auto}
.bj-gift-choice,.up-source-choice{flex:1;min-width:0;min-height:48px;border-radius:999px;padding:10px 15px;background:var(--tg-accent,#008bff);color:#fff;font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.up-source-controls{margin:0 0 16px}
.up-owned-with-gram .stake-source-switch{grid-column:2;grid-row:1;align-self:center;justify-self:end;margin:0}
.gift-withdraw-bank{display:grid;justify-items:center;gap:14px;padding:12px 0 20px;text-align:center}
.gift-withdraw-bank p{margin:0;color:var(--tg-secondary,#a7aab3);font-size:14px}
.gift-withdraw-bank a{display:flex;justify-content:center;align-items:center;min-height:48px;padding:12px 20px;border-radius:16px;background:#303a4c;color:#fff;font-weight:700;text-decoration:none}
.live-drop{flex-basis:182px;gap:7px;padding:8px 9px}
.live-drop-art{width:36px;height:36px}
.live-drop-copy{flex:1;min-width:0}
.live-drop-copy .live-drop-user{display:flex;align-items:center;gap:5px;min-width:0;line-height:20px}
.live-drop-user>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.live-drop-avatar{display:grid;place-items:center;position:relative;flex:none;width:18px;height:18px;overflow:hidden;border-radius:50%;background:linear-gradient(140deg,#ffce70,#ff9f52);color:#fff;font-size:10px}
.live-drop-avatar .avatar-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.live-drop-copy>.live-drop-meta{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:25px}
.live-drop-mode{min-width:0;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}
.live-drop-amount{display:flex;align-items:center;flex:none;gap:5px;color:var(--tg-text,#f3f6ff);font-size:11px;font-weight:700}
.live-drop-currency{display:grid;place-items:center;width:25px;height:25px;flex:none;border-radius:50%;padding:2px}
.live-drop-currency>svg,.live-drop-currency>img{width:100%;height:100%;object-fit:contain}
.live-drop-cash{flex-basis:160px}
.rolls-stake-buttons{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px}
.rolls-stake-buttons .stake-source-switch{margin:0}


/* gift-ui46.css */
/* Gift surfaces share the application wallpaper; cards keep their own hit targets. */
body.upgrade-view .screen,body .upgrade-page,body .upgrade-app .up-owned-picker,body .upgrade-app .up-search-collection,body .coinflip-page,body .cf-table-heading,body .cf-duel-arena,body .cf-duel-stakes,body .cf-stake-column{background:transparent;box-shadow:none}
body .upgrade-page{--up-panel:transparent}
.inventory-tabs{margin:14px 0 18px}
[data-inventory-shop] .upgrade-app{background:transparent}
[data-inventory-shop] .up-header{display:none}
.up-source-controls{justify-content:flex-start}
.mines-reward{background:#07101f66;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.mines-reward-card{background:transparent;border:0;box-shadow:none;padding:20px 0;width:min(360px,100%)}
.mines-reward-art{width:156px;height:156px;margin-bottom:18px;background:linear-gradient(145deg,#226397,#12324d);box-shadow:0 18px 44px #050c1a66}
.mines-reward-label{display:block;font-size:10px;letter-spacing:2px;color:#9edfff;font-weight:750}
.mines-reward-name{font-size:23px;margin:6px 0 22px;color:#f5fbff}
.mines-reward-actions{grid-template-columns:1fr;gap:10px;max-width:300px;margin:0 auto}
.mines-reward-actions button{border-radius:25px;font-size:15px;font-weight:600}
.mines-reward-actions .mines-reward-sell{background:transparent;border:1px solid #8ccfff80}
.mines-reward.is-animated .mines-reward-art{animation:mines-reward-arrive .48s cubic-bezier(.2,.8,.2,1) both,mines-reward-float 2.4s .48s ease-in-out infinite}
@keyframes mines-reward-arrive{from{opacity:0;transform:translateY(12px) scale(.55) rotate(-9deg)}70%{opacity:1;transform:scale(1.04) rotate(2deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@media(prefers-reduced-motion:reduce){.mines-reward.is-animated .mines-reward-art{animation:none}}

html[data-theme] body.upgrade-view .screen:has([data-upgrade-cosmos=true]),body.upgrade-view .screen:has([data-upgrade-cosmos=true]),body .upgrade-page[data-upgrade-cosmos=true]{background:transparent;--up-panel:transparent}

/* One icon beside search; direction and results change together. */
.up-search-collection{position:relative}
.up-search-collection>.gift-search-toolbar>.gift-search-field{margin-left:54px}
body .up-price-sort{position:absolute;left:0;top:0;display:grid;place-items:center;width:44px;height:48px;padding:10px;border:0;border-radius:14px;background:var(--tg-raised,#292c32);color:var(--tg-accent-text,#6cb6ff);cursor:pointer}
.up-price-sort svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.up-price-sort:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:2px}
.up-price-sort:active{opacity:.55}
.up-sort-arrow{transform-origin:5px 12px}
[data-sort=expensive] .up-sort-arrow{transform:rotate(180deg)}
[data-upgrade-motion=on] .up-sort-changing [data-sort=expensive] .up-sort-arrow{animation:up-sort-down .22s ease-out}
[data-upgrade-motion=on] .up-sort-changing [data-sort=cheap] .up-sort-arrow{animation:up-sort-up .22s ease-out}
[data-upgrade-motion=on] .up-sort-changing .up-gift-grid{animation:up-sort-results .18s ease-out}
@keyframes up-sort-down{from{transform:rotate(0deg)}to{transform:rotate(180deg)}}
@keyframes up-sort-up{from{transform:rotate(180deg)}to{transform:rotate(0deg)}}
@keyframes up-sort-results{from{opacity:.65;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.up-sort-changing .up-sort-arrow,.up-sort-changing .up-gift-grid{animation:none!important}}

.gift-sort-toolbar{position:relative;display:flex;align-items:center;min-height:44px;margin:10px 0 14px}
body .gift-sort-toolbar>.up-price-sort{position:relative;left:auto;top:auto;height:44px}
.inventory-page .up-sort-arrow{transition:transform .22s ease-out}
.reduce-motion .inventory-page .up-sort-arrow,.app-hidden .inventory-page .up-sort-arrow{transition:none}
@media(prefers-reduced-motion:reduce){.inventory-page .up-sort-arrow{transition:none}}

.vip-benefits{display:flex;justify-content:space-between;gap:8px;margin:14px 0;font-size:12px;color:var(--tg-secondary)}
.vip-benefits span{display:flex;flex-direction:column;gap:5px}.vip-benefits b{color:var(--tg-text);font-size:15px;font-weight:600}


/* Page groups and action footers sit directly on the wallpaper. */
html[data-theme] body :is(.application,.page-enter,.screen,.upgrade-app,.up-header,.up-main-heading,.up-search-collection,.up-owned-picker,.up-owned-section,.up-basket,.up-footer,.inventory-search-content,.wallet-surface,.wallet-surface-footer,.wallet-card,.referral-card,.loss-reward-card,.settings-group,.payment-confirm,.mines-controls,.bj-bet-panel,.cf-builder-footer,.cf-solo-preview,.cf-intro,.cf-solo-info,.cf-table-heading,.cf-duel-arena,.cf-duel-stakes,.cf-stake-column,.rolls-pool,.rolls-own,.rolls-total,.arena-surface,.arena-round-footer,.bets-card){background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body .upgrade-app{--up-panel:transparent}
body .upgrade-app .up-footer{position:static;bottom:auto}
html[data-theme] body .inventory-page .inventory-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:stretch;background:transparent}
html[data-theme] body .inventory-collection>.gift-collection-card{min-width:0;width:100%;grid-column:auto}
html[data-theme] body .inventory-collection>.gift-collection-card>.gift-art-static{width:100%;height:auto;aspect-ratio:1}

.vip-statuses{min-width:0;text-align:left}.vip-statuses>h2{text-align:center;margin:4px 0 16px}
.vip-status-row{padding:14px 0;border-bottom:1px solid var(--tg-control-border)}.vip-status-row header{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:15px}.vip-status-row header strong{font-weight:600}.vip-status-row header span{font-size:13px;color:var(--tg-secondary);font-variant-numeric:tabular-nums}.vip-status-row.current header strong{color:var(--tg-accent-text)}
.vip-status-row dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 0}.vip-status-row dl>div{min-width:0}.vip-status-row dt{font-size:11px;color:var(--tg-secondary);overflow-wrap:anywhere}.vip-status-row dd{margin:5px 0 0;font-size:14px;font-variant-numeric:tabular-nums}
.bottom-sheet:has(.vip-statuses){scrollbar-width:none}.bottom-sheet:has(.vip-statuses)::-webkit-scrollbar{display:none}
.cf-prize-claim{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0}.cf-prize-claim>div{min-width:0;font-size:13px}.cf-prize-claim .cf-primary{width:auto;min-width:120px;padding:10px 14px;font-size:13px}

/* Reward cards are distinct elements, not full-page backing panels. */
html[data-theme] body :is(.loss-reward-card,.referral-card){background:var(--tg-surface,#1d2026);border-color:var(--tg-control-border,#ffffff0c);box-shadow:none}
.up-chance-presets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:0 0 10px}
body .up-chance-presets>button{min-width:0;min-height:44px;padding:8px 4px;border:1px solid var(--tg-control-border);border-radius:24px;background:var(--tg-raised,#262930);color:var(--tg-text,#f5f5f7);font:600 14px/20px var(--ui-font-text);transition:background .18s,color .18s,opacity .18s}
body .up-chance-presets>button[aria-pressed=true]{background:#5d718e;color:#fff;border-color:transparent}
body .up-chance-presets>button:disabled{color:var(--tg-secondary);opacity:.5}
body .up-chance-presets>button:active:not(:disabled){opacity:.55;transform:none}
.up-chance-presets>button:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:2px}

/* Keep scrolling available without drawing scrollbar tracks over the wallpaper. */
html,body,body *{scrollbar-width:none!important}
html::-webkit-scrollbar,body::-webkit-scrollbar,body *::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}

/* A single balance control lives inside each game, in the same top row. */
.game-balance-row{display:flex;justify-content:flex-end;align-items:center;min-height:36px;margin:0 0 10px}
body .game-balance-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;min-width:0;min-height:36px;padding:6px 9px;border:1px solid var(--tg-control-border,#ffffff18);border-radius:20px;background:var(--tg-raised,#262930);box-shadow:none;color:var(--tg-text,#fff);font:600 14px/20px var(--ui-font-text);font-variant-numeric:tabular-nums;white-space:nowrap}
.game-balance-pill>img{display:block;flex:none;width:18px;height:18px;object-fit:contain}
.game-balance-add{display:grid;place-items:center;width:20px;height:20px;margin-left:2px;border-radius:50%;background:var(--tg-surface,#1d2026);color:var(--tg-accent-text,#6cb6ff);font-size:17px;font-weight:400}
.game-balance-pill:active{opacity:.55;transform:none}.game-balance-pill:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:2px}
body.game-section-view .app-header .balance-pill,body.game-section-view :is(.up-wallet,.cf-wallet,.rolls-wallet,.mines-wallet,.game-wallet),body.game-section-view .bj-bankroll>div:first-child{display:none!important}
body .bottom-sheet.case-roulette-sheet:not(.case-results-sheet){padding-top:18px}
body .case-roulette>.case-topline{padding-right:0;min-height:44px;margin:0 0 15px}
body .case-topline>.game-balance-row{min-height:44px;margin:0;flex:none}

/* Selection artwork fits within its own track; rays cover the whole card. */
body [data-upgrade-cosmos=true] .up-selection{position:relative;aspect-ratio:1;height:auto;min-height:140px;grid-template-rows:14px minmax(0,1fr) 16px 14px;padding:8px 6px;overflow:hidden}
.up-selection-rays{position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:repeating-conic-gradient(from -12deg at 50% 43%,rgb(var(--up-selection-ray)/.16) 0deg 13deg,transparent 13deg 30deg)}
body [data-upgrade-cosmos=true] .up-selection-art{width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;isolation:auto;contain:size layout}
body .up-selection-art:before{display:none}
body [data-upgrade-cosmos=true] .up-selection-art>img{width:100%;height:100%;max-width:90px;max-height:90px;min-height:0;object-fit:contain}
body [data-upgrade-cosmos=true] .up-gauge{width:min(340px,100%);margin:18px auto 12px}
.up-gauge-caption>span:empty{display:none}
.up-action-row{display:flex;align-items:center;gap:10px;width:100%}
.up-action-row>.up-primary{flex:1;min-width:0}
body .up-action-row>.up-source-controls{flex:none;margin:0;padding:0}
body .up-action-row .stake-source-switch{display:flex;width:88px;min-width:88px;height:44px;min-height:44px;padding:2px;border-radius:24px}
body .up-action-row .stake-source-switch>button{width:42px;min-width:0;height:40px;min-height:40px;padding:8px;border-radius:21px}
body .up-action-row .stake-source-switch :is(svg,.currency-art){width:20px;height:20px}
@media(max-width:360px){body [data-upgrade-cosmos=true] .up-selection{min-height:126px}body [data-upgrade-cosmos=true] .up-gauge{width:min(310px,100%)}}

/* Cases: real Telegram model artwork, with a new Raketka case silhouette. */
.case-box-art{position:relative;display:block;width:100%;aspect-ratio:240/210;isolation:isolate;pointer-events:none}
.case-box-back,.case-box-front{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.case-box-back{z-index:0}.case-box-front{z-index:3}
.case-box-gift{position:absolute;display:block;width:48%;height:55%;object-fit:contain;z-index:1;filter:drop-shadow(0 4px 5px #0005)}
.case-box-gift-0{left:5%;top:13%;transform:rotate(-17deg)}.case-box-gift-1{left:26%;top:0;z-index:2;transform:rotate(6deg)}.case-box-gift-2{left:52%;top:18%;transform:rotate(16deg)}
.case-art-spark{position:absolute;z-index:4;width:5px;height:15px;background:#fff;border-radius:50%;box-shadow:0 0 12px 3px #fff6}.case-art-spark:after{content:"";position:absolute;left:-5px;top:5px;width:15px;height:5px;border-radius:50%;background:inherit}.case-art-spark-a{left:16%;top:53%;transform:scale(.7) rotate(20deg)}.case-art-spark-b{right:12%;top:36%;transform:scale(.55) rotate(8deg)}
body .game-mode-card.case-lobby-cover{background:radial-gradient(ellipse at 50% 110%,#e3aa42aa,transparent 69%),var(--tg-surface,#202329);border-color:#d6b56535;overflow:hidden}
.case-lobby-cover>.case-box-art{position:absolute;width:91%;height:83%;right:1%;bottom:-1%}.case-lobby-cover>.game-mode-title{z-index:5;max-width:none}
.case-category-tabs{display:flex;gap:20px;margin:12px 0 20px;border-bottom:1px solid var(--tg-control-border)}
body .case-category-tabs>button{position:relative;min-height:44px;padding:9px 0 12px;border:0;background:transparent;color:var(--tg-secondary);font:600 16px/22px var(--ui-font-text)}
.case-category-tabs>button[aria-selected=true]{color:var(--tg-text)}.case-category-tabs>button[aria-selected=true]:after{content:"";position:absolute;height:3px;inset:auto 0 -1px;background:var(--tg-accent,#008bff);border-radius:3px}
.case-category-tabs>button:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:3px}
.case-selection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
body .case-selection-card{--case-glow:#e8b600;--case-ember:#ffe7a0;position:relative;isolation:isolate;display:block;min-width:0;width:100%;aspect-ratio:1;overflow:hidden;border:0;border-radius:22px;background:var(--tg-surface,#202329);color:var(--tg-text);text-align:center;box-shadow:none}
body .case-selection-daily{--case-glow:#ee3e64}
.case-selection-card:before{content:"";position:absolute;z-index:0;inset:42% -10% -16%;background:radial-gradient(ellipse at 50% 100%,var(--case-glow),color-mix(in srgb,var(--case-glow) 58%,transparent) 38%,transparent 72%);opacity:.82;animation:case-glow-breathe 3.8s ease-in-out infinite alternate paused;pointer-events:none}
.case-selection-card>.case-box-art{position:absolute;z-index:1;left:7%;top:25%;width:86%;height:72%}
.case-selection-card .case-art-spark{display:none}
.case-selection-price{position:absolute;top:10px;left:10px;z-index:5;display:flex;align-items:center;gap:5px;padding:3px 7px 3px 4px;border-radius:14px;background:var(--tg-field);color:var(--tg-text);font:600 13px/18px var(--ui-font-text);font-variant-numeric:tabular-nums}
.case-selection-price>img{width:17px;height:17px;object-fit:contain}
.case-card-sparks{position:absolute;z-index:4;inset:0;pointer-events:none;--spark-rise:clamp(90px,28vw,150px)}
.case-card-sparks>i{position:absolute;left:17%;bottom:8%;width:2px;height:2px;border-radius:50%;background:var(--case-ember);box-shadow:0 0 5px 1px color-mix(in srgb,var(--case-ember) 45%,transparent);opacity:0;animation:case-ember-rise 3.6s linear infinite paused;animation-delay:-.5s;--spark-drift:11px}
.case-card-sparks>i:nth-child(2){left:36%;bottom:12%;animation-duration:4.2s;animation-delay:-2.2s;--spark-drift:-8px}
.case-card-sparks>i:nth-child(3){left:58%;bottom:7%;width:3px;height:3px;animation-duration:3.1s;animation-delay:-1.4s;--spark-drift:6px}
.case-card-sparks>i:nth-child(4){left:78%;bottom:16%;animation-duration:4.4s;animation-delay:-3.4s;--spark-drift:-12px}
.case-card-sparks>i:nth-child(5){left:26%;bottom:21%;animation-duration:4.8s;animation-delay:-3s;--spark-drift:-4px}
.case-card-sparks>i:nth-child(6){left:87%;bottom:10%;animation-duration:3.9s;animation-delay:-1.8s;--spark-drift:4px}
.case-selection-card[data-case-motion=running]:before,.case-selection-card[data-case-motion=running] .case-card-sparks>i{animation-play-state:running}
@keyframes case-glow-breathe{from{opacity:.65;transform:scale(1)}to{opacity:1;transform:scale(1.04,1.12)}}
@keyframes case-ember-rise{0%{opacity:0;transform:translate(0,0) scale(.65)}15%{opacity:.9}72%{opacity:.7}100%{opacity:0;transform:translate(var(--spark-drift),calc(-1 * var(--spark-rise))) scale(.3)}}
html[data-theme=light] body .case-selection-card{--case-ember:#9c6409;box-shadow:inset 0 0 0 1px var(--tg-control-border)}
html[data-theme=light] .case-selection-card:before{inset:53% -10% -18%}
.reduce-motion .case-selection-card:before,.app-hidden .case-selection-card:before{animation:none;opacity:.75;transform:none}
.reduce-motion .case-card-sparks,.app-hidden .case-card-sparks{display:none}
@media(prefers-reduced-motion:reduce){.case-selection-card:before{animation:none;opacity:.75;transform:none}.case-card-sparks{display:none}}
.case-selection-card:active{opacity:.65;transform:none}.case-selection-card:focus-visible{outline:2px solid var(--tg-accent-text);outline-offset:3px}
.case-roulette[data-case-type=paid] .case-daily-button,.case-roulette[data-case-type=daily] :is(.case-segments,[data-case-action=spin],[data-case-market-status]){display:none!important}
.case-roulette[data-case-type=daily] .case-daily-button{display:flex}
.case-roulette[data-case-type=daily] .case-footer{padding-top:10px}
@media(max-width:360px){.case-selection-grid{gap:10px}}

/* The purchase action appears within reach after the first selected gift. */
body .upgrade-app[data-upgrade-view=shop][data-upgrade-basket=selected]{padding-bottom:120px}
html[data-theme] body .upgrade-app .up-shop-purchase{position:fixed;z-index:34;left:50%;bottom:var(--up-purchase-bottom,calc(86px + var(--safe-bottom,0px)));width:calc(100% - 40px);max-width:390px;margin:0;padding:0;transform:translateX(-50%);background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body .up-shop-purchase>.up-selected-name{margin:0 0 7px;text-align:center;font-size:13px;line-height:18px;color:var(--tg-text)}
body .up-shop-purchase>.up-primary{min-height:48px;font-size:15px;line-height:22px}
html[data-theme] body .bottom-sheet .upgrade-app .up-shop-purchase{bottom:calc(16px + var(--safe-bottom,0px))}
.up-shop-purchase.is-entering{animation:shop-purchase-appear .24s cubic-bezier(.22,1,.36,1) both}
@keyframes shop-purchase-appear{from{opacity:0;transform:translate(var(--up-purchase-x,-50%),12px)}to{opacity:1;transform:translate(var(--up-purchase-x,-50%),0)}}
.reduce-motion .up-shop-purchase.is-entering,.app-hidden .up-shop-purchase.is-entering{animation:none}
@media(prefers-reduced-motion:reduce){.up-shop-purchase.is-entering{animation:none}}

/* The heading and balance share one row; the dial uses remaining screen height. */
body .game-balance-heading{justify-content:space-between;gap:10px;margin-bottom:8px}
.game-section-title{min-width:0;margin:0;color:var(--tg-text);font:600 24px/32px var(--ui-font-text);letter-spacing:-.6px}
body .game-section .upgrade-page[data-upgrade-view=upgrade] .up-main-heading{display:none}
body [data-upgrade-cosmos=true] .up-selections{width:min(100%,calc(var(--up-choice-size,132px)*2 + 34px));grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);gap:8px;margin:0 auto}
body [data-upgrade-cosmos=true] .up-selection{height:auto;min-height:0;aspect-ratio:1;padding:6px 4px;grid-template-rows:12px minmax(0,1fr) 15px 14px;border-radius:17px}
body [data-upgrade-cosmos=true] .up-selection-label{font-size:9px;line-height:12px}
body [data-upgrade-cosmos=true] .up-selection strong{font-size:10px;line-height:15px}
body [data-upgrade-cosmos=true] .up-selection-art>img{max-width:76px;max-height:76px}
body [data-upgrade-cosmos=true] .up-selection-art>img:not(.up-unit){display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:76px;max-height:100%;object-fit:contain}
body [data-upgrade-cosmos=true] .up-gauge{width:min(var(--up-dial-size,260px),100%);margin:8px auto}
body [data-upgrade-cosmos=true] .up-footer{padding-top:4px;margin-top:0}
body [data-upgrade-cosmos=true] .up-chance-presets{margin-bottom:6px}
body [data-upgrade-cosmos=true] .up-footer .up-text-button{min-height:32px;padding:6px}
body [data-upgrade-cosmos=true] .up-action-row>.up-primary{min-height:48px;padding:12px;font-size:15px}
@media(max-width:360px){.game-section-title{font-size:22px;line-height:30px}}

/* Primary upgrade controls remain above navigation even in short windows. */
html[data-theme] body .game-section .upgrade-page[data-upgrade-view=upgrade] .up-footer{position:fixed;z-index:9;left:50%;bottom:var(--up-controls-bottom,calc(88px + var(--safe-bottom,0px)));width:calc(100% - 40px);max-width:390px;transform:translateX(-50%);padding:4px 0 0;background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body .game-section .upgrade-page[data-upgrade-view=upgrade][data-upgrade-fit=scroll]{padding-bottom:140px}

/* profile.css */
/* Account surfaces: neutral charcoal, quiet dividers and one blue action. */
html[data-theme] body .desktop-aura{background:none}
html[data-theme] body .space-wallpaper{display:none}
html[data-theme] body .profile-page{display:flex;flex-direction:column;gap:14px;padding-bottom:12px}
html[data-theme] body .profile-heading{padding:20px 0 9px}
html[data-theme] body .profile-heading .avatar{width:104px;height:104px;margin-bottom:16px;border:3px solid var(--tg-bg);outline:1px solid var(--tg-control-border);box-shadow:none}
html[data-theme] body .profile-heading h1{font-size:24px;line-height:30px;letter-spacing:-.5px;color:var(--tg-text)}
html[data-theme] body .profile-balance-card{padding:18px 18px 14px;border:0;border-radius:26px;background:var(--tg-surface);box-shadow:none;backdrop-filter:none}
html[data-theme] body .profile-balance-card:before{display:none}
html[data-theme] body .profile-balance-card{margin:0}
html[data-theme] body .profile-balance-card .wallet-amount{align-items:center;font-size:32px;line-height:40px;margin:8px 0 16px;color:var(--tg-accent-text)}
html[data-theme] body .profile-balance-card .wallet-amount [data-balance]{display:inline-flex;align-items:center;color:inherit;font-size:inherit;line-height:1.2;letter-spacing:-.7px}
html[data-theme] body .profile-balance-card .wallet-actions{gap:8px}
html[data-theme] body .profile-balance-card .wallet-actions button{min-height:46px;border-radius:24px;background:var(--tg-accent);color:#fff;border:0;box-shadow:none}
html[data-theme] body .profile-balance-card .wallet-actions .secondary-wallet{background:color-mix(in srgb,var(--tg-accent) 12%,var(--tg-surface));color:var(--tg-accent-text);--tg-button-fill:transparent}
html[data-theme] body .profile-page [data-admin-test-profile]:empty{display:none}
html[data-theme] body .profile-referrals{margin:0;padding:18px;border:0;border-radius:26px;background:var(--tg-surface);box-shadow:none}
html[data-theme] body .profile-referrals h2{font-size:17px;line-height:22px;font-weight:650;margin:0 0 6px}
html[data-theme] body .profile-referrals .referral-stats{display:flex;flex-direction:column;gap:0;margin:0;border:0;background:none;border-radius:0}
html[data-theme] body .profile-referrals .referral-stats>*{width:100%;min-height:72px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;padding:12px 0;border:0;border-bottom:1px solid var(--tg-separator);background:none;text-align:left}
html[data-theme] body .profile-referrals .referral-stats>*>span{font-size:14px;color:var(--tg-secondary)}
html[data-theme] body .profile-referrals .referral-stats strong{font-size:23px;font-weight:500;line-height:28px;color:var(--tg-accent-text)}
html[data-theme] body .profile-referrals .referral-friends-trigger{position:relative}
html[data-theme] body .profile-referrals .referral-count-arrow{position:absolute;right:0;top:28px;font-size:22px;color:var(--tg-accent-text)}
html[data-theme] body .profile-referrals .referral-note{margin:12px 0;color:var(--tg-secondary);line-height:19px;font-size:12px;text-align:left}
html[data-theme] body .profile-referrals .referral-link-row{margin:0 0 10px;background:var(--tg-field);border:0;border-radius:16px}
html[data-theme] body .profile-referrals .referral-link-row input{min-width:0;color:var(--tg-secondary)}
html[data-theme] body .profile-referrals .referral-link-row button{width:46px;min-height:46px;color:var(--tg-accent-text);background:none}
html[data-theme] body .profile-referrals .referral-share{min-height:46px;border:0;border-radius:24px;color:var(--tg-accent-text);background:color-mix(in srgb,var(--tg-accent) 12%,var(--tg-surface));box-shadow:none}
html[data-theme] body .profile-footer{margin:4px 0 0}
html[data-theme] body .profile-rewards{border-radius:26px;background:var(--tg-surface);padding:0 16px}
html[data-theme] body .profile-rewards>summary{min-height:56px;display:flex;align-items:center;justify-content:space-between;font-size:16px;font-weight:600;cursor:pointer;list-style:none}
html[data-theme] body .profile-rewards>summary:after{content:'›';font-size:24px;color:var(--tg-accent-text);transform:rotate(90deg)}
html[data-theme] body .profile-rewards[open]>summary:after{transform:rotate(-90deg)}
html[data-theme] body .profile-rewards .loss-rewards{margin:0 0 16px}
/* No wallpaper or blur in the wallet/settings material. The same gesture and
   focus controller still owns closing, Escape, native Back and inertness. */
html[data-theme] body .bottom-sheet.compact-account-sheet{bottom:calc(10px + var(--sheet-keyboard-bottom,0px));width:calc(100% - 20px);max-width:440px;border:0;border-radius:32px;padding:32px 10px 10px;background:var(--tg-sheet);box-shadow:none;max-height:calc(var(--sheet-viewport-height,100dvh) - 24px)}
html[data-theme] body:has(.compact-account-sheet.visible) .sheet-backdrop{backdrop-filter:none;-webkit-backdrop-filter:none;background:#0009}
html[data-theme] body .compact-account-sheet .wallet-surface-header{margin:0 0 18px}
html[data-theme] body .compact-account-sheet h2{margin:0;text-align:center;font-size:18px;line-height:24px;font-weight:650;letter-spacing:-.2px}
html[data-theme] body .compact-account-sheet .wallet-surface-symbol{display:none}
html[data-theme] body .wallet-details-group{padding:6px 18px;border-radius:22px;background:var(--tg-field)}
html[data-theme] body .wallet-details-group .tg-attributes{margin:0;border:0;background:none;box-shadow:none}
html[data-theme] body .wallet-details-group .tg-attributes>div{display:block;padding:14px 0;border:0;border-bottom:1px solid var(--tg-separator);background:none}
html[data-theme] body .wallet-details-group .tg-attributes>div:last-child{border-bottom:0}
html[data-theme] body .wallet-details-group dt{margin:0 0 4px;font-size:13px;line-height:18px;color:var(--tg-secondary)}
html[data-theme] body .wallet-details-group dd{margin:0;font-size:16px;line-height:22px;text-align:left;font-weight:500}
html[data-theme] body .wallet-details-group .wallet-surface-copy{justify-content:flex-start;text-align:left;line-height:22px;font-size:15px}
html[data-theme] body .wallet-details-amount{color:var(--tg-accent-text)}
html[data-theme] body .wallet-details-group .wallet-connect-link{padding:0;min-height:44px;color:var(--tg-accent-text);font-size:16px;text-align:left}
html[data-theme] body .wallet-details-group .wallet-surface-status{justify-content:flex-start;margin:0}
html[data-theme] body .compact-account-sheet .wallet-surface-footer{position:static;margin:12px 0 0;padding:0 0 max(0px,var(--safe-bottom,0px));background:none}
html[data-theme] body .compact-account-sheet .primary-button{width:100%;min-height:54px;border-radius:28px;background:var(--tg-accent);box-shadow:none;font-size:16px;color:#fff}
html[data-theme] body .settings-surface h2{margin:0}
html[data-theme] body .settings-surface .settings-group{background:var(--tg-field);border:0;border-radius:22px;padding:0 6px}
html[data-theme] body .settings-surface .setting-row{min-height:58px;padding:12px 14px}
html[data-theme] body .settings-surface .setting-row+.setting-row:before{left:14px;right:14px;background:var(--tg-separator)}
html[data-theme] body .settings-surface .setting-icon{display:none}
html[data-theme] body .settings-surface .theme-preference{padding:16px 14px}
html[data-theme] body .settings-surface .theme-mode-picker{display:flex;gap:6px;padding:0;border:0;border-radius:0;background:none;overflow:visible;clip-path:none}
html[data-theme] body .settings-surface .theme-mode-picker:before{display:none}
html[data-theme] body .settings-surface .settings-effects{margin:10px 0 12px;padding:16px 20px;background:var(--tg-field);border:0;border-radius:22px;box-shadow:none}
html[data-theme] body .settings-surface .settings-effects-heading{display:flex;justify-content:space-between;gap:12px;font-size:14px}
html[data-theme] body .settings-surface .settings-effects-track{display:flex;align-items:center;gap:12px;margin:14px 0}
html[data-theme] body .settings-surface .settings-effects-track .icon{width:18px;height:18px;color:var(--tg-secondary);flex:none}
html[data-theme] body .settings-surface .settings-effects p{font-size:12px;margin:0;color:var(--tg-secondary)}
html[data-theme] body .settings-surface .settings-done{position:static;margin:0;box-shadow:none;font-size:19px;font-weight:700;background:#2499e4}
@media(max-width:360px){html[data-theme] body .profile-referrals,html[data-theme] body .profile-balance-card{padding-left:16px;padding-right:16px}}

html[data-theme] body .profile-balance-card .wallet-amount>.ton-coin{display:flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;margin:0;padding:0;line-height:0;transform:none}
html[data-theme] body .profile-balance-card .wallet-amount>.ton-coin .currency-art{display:block;width:24px;height:24px;margin:0}
html[data-theme] body .profile-balance-card .wallet-unit{align-self:center;margin:0;font-size:11px;line-height:16px;letter-spacing:0}
html[data-theme] body .setting-row[role=switch] .switch{display:block;position:relative;width:54px;height:32px;flex:0 0 54px;padding:0;border:1px solid var(--tg-control-border);border-radius:999px;overflow:hidden;background:var(--tg-raised);box-shadow:none;transition:background-color .22s ease}
html[data-theme] body .setting-row[role=switch] .switch:before{display:none}
html[data-theme] body .setting-row[role=switch] .switch:after{content:"";position:absolute;left:2px;top:2px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0002;transform:translateX(0);transition:transform .22s cubic-bezier(.22,1,.36,1)}
html[data-theme] body .setting-row[role=switch][aria-checked=true] .switch{background:#299fe9;border-color:transparent}
html[data-theme] body .setting-row[role=switch][aria-checked=true] .switch:after{transform:translateX(22px)}
html[data-theme] body .settings-surface .theme-mode-picker>button{flex:1;min-width:0;min-height:40px;padding:8px 9px;border:1px solid color-mix(in srgb,var(--tg-accent-text) 45%,transparent);border-radius:22px;background:color-mix(in srgb,var(--tg-accent) 12%,var(--tg-field));font-size:14px;line-height:20px;white-space:nowrap;color:var(--tg-text);transition:background-color .2s ease,color .2s ease}
html[data-theme] body .settings-surface .theme-mode-picker>button[aria-checked=true]{background:var(--tg-accent);border-color:transparent;color:#fff}
html[data-theme] body .bottom-sheet.settings-sheet{display:flex;flex-direction:column;overflow:hidden;padding:0;height:min(620px,calc(var(--sheet-available-height,100dvh) - 12px));max-height:calc(var(--sheet-viewport-height,100dvh) - 24px)}
html[data-theme] body .settings-sheet #sheet-content{display:flex;flex:1;min-height:0;width:100%;overflow:hidden}
html[data-theme] body .settings-sheet .settings-surface{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;padding:0 10px}
html[data-theme] body .settings-sheet .settings-header{flex:none;padding:30px 10px 16px;text-align:center}
html[data-theme] body .settings-sheet .settings-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding-bottom:4px;-webkit-overflow-scrolling:touch}
html[data-theme] body .settings-sheet .settings-scroll::-webkit-scrollbar{display:none}
html[data-theme] body .settings-sheet .settings-footer{flex:none;padding:12px 0 calc(10px + max(0px,calc(var(--safe-bottom,0px) - var(--sheet-keyboard-bottom,0px))));background:var(--tg-sheet)}
@media(prefers-reduced-motion:reduce){html[data-theme] body .setting-row .switch,html[data-theme] body .setting-row .switch:after,html[data-theme] body .theme-mode-picker>button{transition:none}}
html[data-theme] body.reduce-motion .setting-row[role=switch] .switch,html[data-theme] body.reduce-motion .setting-row[role=switch] .switch:after,html[data-theme] body.reduce-motion .settings-surface .theme-mode-picker>button{transition:none}

/* Readable reference proportions at an unchanged 1x layout scale. */
html[data-theme] body .profile-balance-card .wallet-label{font-size:14px;line-height:20px}
html[data-theme] body .profile-balance-card .wallet-connect-link{font-size:14px;line-height:20px}
html[data-theme] body .profile-balance-card .wallet-unit{font-size:12px;line-height:18px}
html[data-theme] body .settings-surface .setting-label{font-size:16px;line-height:22px;font-weight:500}
html[data-theme] body .settings-surface .theme-preference-heading{font-size:14px;line-height:20px;font-weight:500}

/* game-surfaces.css */
/* Shared neutral game controls. Table felt, boards, gift rarity and outcome
   colours are independent artwork and retain their existing semantics. */
html[data-theme] body.game-section-view .app-header{display:none}
/* Hiding the header also removes its safe-area padding. Every ordinary game
   inherits the same inset; Rocket paints behind chrome and Blackjack owns a
   dedicated fullscreen shell, so those two apply their inset internally. */
html[data-theme] body.game-section-view:not(.game-view):not(.bj-fullscreen-active) .screen{
  padding-top:calc(var(--safe-top,0px) + 10px);
  padding-left:max(14px,var(--safe-left,0px));
  padding-right:max(14px,var(--safe-right,0px));
}
html[data-theme] body.telegram-fullscreen:not(.game-section-view) .app-header{
  height:calc(80px + var(--safe-top,0px));
  padding-top:calc(20px + var(--safe-top,0px));
}
html[data-theme] body.telegram-fullscreen :is(.app-header,.screen){
  padding-left:max(14px,var(--safe-left,0px));padding-right:max(14px,var(--safe-right,0px));
}
/* A specialized sheet must not override the safe viewport ceiling. This also
   covers system CSS insets arriving before Telegram's JavaScript event. */
html[data-theme] body #sheet.bottom-sheet.sheet-motion-ready{
  max-height:calc(var(--sheet-viewport-height,100dvh) - max(0px,calc(var(--safe-top,0px) - var(--sheet-viewport-top,0px))) - 12px);
}
html[data-theme] body .game-balance-pill{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 12px;border:1px solid var(--tg-control-border);border-radius:24px;background:var(--tg-surface);box-shadow:none;font-size:14px;font-weight:650;line-height:20px}
html[data-theme] body .game-balance-pill>img{flex:none;width:18px;height:18px}
html[data-theme] body .game-balance-add{display:none}
html[data-theme] body :is(.mines-page .mines-controls,.blackjack-page .bj-bet-panel,.cf-prize-panel,.rolls-bet-controls){background:var(--tg-surface);border-color:var(--tg-control-border);border-radius:26px;box-shadow:none}
html[data-theme] body .mines-page .mines-controls{padding:16px;gap:12px}
html[data-theme] body.mines-view .screen,html[data-theme] body.blackjack-view .screen{padding-bottom:calc(108px + var(--safe-bottom,0px))}
html[data-theme] body .mines-page{--mines-height:calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - var(--safe-bottom,0px) - 172px);height:auto;min-height:max(560px,var(--mines-height))}
/* The page can grow for its controls. Its board size must not depend on an
   auto-height size container, whose query height can resolve to zero. */
html[data-theme] body .mines-board-wrap{width:100%;grid-template-columns:minmax(0,1fr);container-type:normal;min-height:252px}
html[data-theme] body .mines-page .mines-board{width:min(100%,clamp(252px,calc(var(--mines-height) - 353px),420px))}
html[data-theme] body .mines-page.playing .mines-board{width:min(100%,clamp(252px,calc(var(--mines-height) - 275px),420px))}
html[data-theme] body :is(.mines-rules,.rolls-rules,.cf-rules-copy){color:var(--tg-text)}
html[data-theme] body :is(.mines-rules,.rolls-rules,.cf-rules-copy) p{font-size:14px;line-height:21px;color:var(--tg-secondary)}
html[data-theme] body :is(.up-primary,.rolls-primary,.cf-primary,.mines-primary,.bj-deal){border-radius:26px;min-height:50px;font-size:16px;font-weight:650;box-shadow:none}
html[data-theme] body :is(.up-selection,.cf-stake-column,.rolls-result){background-color:var(--tg-surface)}
html[data-theme] body .gift-sheet .gift-native-cover:not(:has(.gift-combination-backdrop)){background:var(--tg-sheet)}
html[data-theme] body .gift-sheet .gift-native-art{background:none;border:0;border-radius:0;box-shadow:none}
html[data-theme] body .gift-sheet .gift-native-art>img{padding:0}
html[data-theme] body .gift-sheet .gift-sheet-title{color:var(--tg-text)}
html[data-theme] body .gift-sheet .gift-sheet-subtitle{color:var(--tg-secondary)}
html[data-theme] body .gift-sheet .gift-native-table{padding:4px 16px;background:var(--tg-field);border:0;border-radius:20px}
html[data-theme] body .gift-sheet .gift-native-table>div{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:12px 0}
html[data-theme] body .gift-sheet .gift-native-table dt{display:block;padding:0;max-width:45%;border:0;background:none;color:var(--tg-secondary);font-size:14px;line-height:20px}
html[data-theme] body .gift-sheet .gift-native-table dd{display:block;padding:0;flex:1;text-align:right;font-size:15px;line-height:20px}
html[data-theme] body .gift-detail-price{align-items:center;justify-content:flex-end}
html[data-theme] body .gift-sheet-footer{background:var(--tg-sheet)}
html[data-theme] body .gift-owned-actions button{min-height:48px;border-radius:26px;font-size:16px}
/* Same silhouette as the reference: a three-item capsule plus a separate
   profile circle. Existing motion measures actual hit areas after layout. */
html[data-theme] body .bottom-nav.bottom-nav.glass{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 64px;gap:0;width:calc(100% - 24px);max-width:428px;height:68px;padding:3px 0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;overflow:visible;isolation:isolate}
html[data-theme] body .bottom-nav:before{content:"";position:absolute;z-index:-1;left:0;right:76px;top:0;bottom:0;border:1px solid var(--tg-control-border);border-radius:999px;background:var(--tg-nav);pointer-events:none}
html[data-theme] body .bottom-nav .nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:56px;padding:5px 1px;font-size:11px;line-height:14px;font-weight:600}
html[data-theme] body .bottom-nav .nav-item:nth-of-type(3){margin-right:12px}
html[data-theme] body .bottom-nav .nav-item>.icon{width:25px;height:25px;flex:none}
html[data-theme] body .bottom-nav .nav-selection{z-index:-1;border:0;background:color-mix(in srgb,var(--tg-accent-text) 9%,transparent);box-shadow:none;border-radius:30px;opacity:1;transition:opacity .18s ease}
html[data-theme] body .bottom-nav[data-active-route=profile] .nav-selection{opacity:0}
html[data-theme] body .bottom-nav .nav-profile{position:relative;align-self:center;width:64px;height:64px;min-height:64px;margin:0;padding:5px;border:1px solid var(--tg-control-border);border-radius:50%;background:var(--tg-nav);color:var(--tg-accent-text);transition:border-color .2s ease,opacity .15s ease}
html[data-theme] body .bottom-nav .nav-profile.active{border-color:var(--tg-accent-text)}
html[data-theme] body .nav-profile-avatar{position:relative;isolation:isolate;display:grid;place-items:center;flex:none;width:52px;height:52px;overflow:hidden;border:2px solid var(--tg-accent-text);border-radius:50%;background:var(--tg-field);font-size:22px;font-weight:650;color:var(--tg-accent-text)}
html[data-theme] body .nav-profile-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:360px){html[data-theme] body .bottom-nav .nav-item{font-size:10px}.bottom-nav .nav-item>.icon{width:23px;height:23px}}
@media(prefers-reduced-motion:reduce){html[data-theme] body .bottom-nav .nav-profile,html[data-theme] body .bottom-nav .nav-selection{transition:none}}
html[data-theme] body.reduce-motion .bottom-nav .nav-profile,html[data-theme] body.reduce-motion .bottom-nav .nav-selection{transition:none}

/* Rocket balance and settings share the same safe content row. */
html[data-theme] body.game-view .stage-controls{align-items:center;gap:10px}
html[data-theme] body.game-view .stage-controls>.game-balance-row{flex:none;min-width:0;margin:0}
html[data-theme] body.game-view .stage-controls-left{min-width:0;gap:8px}
html[data-theme] body.game-view .stage-controls-left :is(.online-pill,.game-settings){height:44px;min-height:44px}
html[data-theme] body.game-view .stage-controls-left .game-settings{width:44px;flex:none}

/* Only the gift list scrolls; primary actions are separate flex regions.
   A fixed descendant of the translated sheet would scroll out of view. */
html[data-theme] body .bottom-sheet:is(.upgrade-sheet,.rocket-bet-sheet){display:flex;flex-direction:column;height:min(680px,calc(var(--sheet-available-height,100dvh) - 12px));overflow:hidden;padding:36px 16px 0}
html[data-theme] body .bottom-sheet:is(.upgrade-sheet,.rocket-bet-sheet) #sheet-content{display:flex;flex:1;min-height:0;width:100%;overflow:hidden}
html[data-theme] body .upgrade-sheet .upgrade-shop-dialog,html[data-theme] body .rocket-bet-sheet .rocket-bet-surface{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;padding:0}
html[data-theme] body .upgrade-sheet .upgrade-shop-dialog>:is(.up-header,.up-market-status),html[data-theme] body .rocket-bet-header{flex:none}
html[data-theme] body .upgrade-sheet .upgrade-shop-dialog>:is(.up-search-collection,.up-basket),html[data-theme] body .rocket-bet-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:12px}
html[data-theme] body .upgrade-sheet .upgrade-shop-dialog>.up-basket{align-content:start}
html[data-theme] body .upgrade-sheet .upgrade-shop-dialog>.up-search-collection{margin-top:4px}
html[data-theme] body .upgrade-sheet .upgrade-shop-dialog>.up-search-collection::-webkit-scrollbar,html[data-theme] body .rocket-bet-scroll::-webkit-scrollbar{display:none}
html[data-theme] body .bottom-sheet.upgrade-sheet .upgrade-app :is(.up-shop-purchase,.up-footer),html[data-theme] body .rocket-bet-footer{--up-purchase-x:0%;position:static;flex:none;left:auto;bottom:auto;width:100%;max-width:none;margin:0;padding:12px 0 calc(12px + max(0px,calc(var(--safe-bottom,0px) - var(--sheet-keyboard-bottom,0px))));transform:none;background:var(--tg-sheet);border:0;box-shadow:none}
html[data-theme] body .rocket-bet-header .sheet-title{padding-right:30px}
html[data-theme] body .rocket-bet-footer>.primary-button{margin:0}
html[data-theme] body .rocket-bet-sheet:has(#bet-amount){height:auto}
html[data-theme] body .rocket-bet-sheet:has(#bet-amount) .rocket-bet-surface{flex:0 1 auto}

/* Search and headings are outside the scroller so the keyboard only takes
   space from the results. The sheet itself still follows the visual viewport. */
html[data-theme] body .bottom-sheet.mines-gift-sheet{display:flex;flex-direction:column;overflow:hidden;padding:36px 16px calc(14px + var(--safe-bottom,0px))}
.mines-gift-sheet #sheet-content,.mines-gift-panel{display:flex;flex-direction:column;flex:0 1 auto;min-height:0}
.mines-gift-panel>.sheet-title,.mines-gift-search{flex:none}
.mines-gift-results{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding-bottom:2px}
html[data-theme] body .upgrade-sheet .upgrade-shop-dialog>.up-search-collection:has(>.up-market-results){display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}
.upgrade-sheet .up-search-collection>.gift-search-toolbar{flex:none}
.upgrade-sheet .up-market-results{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding-bottom:12px}
html[data-theme] body.keyboard-open #sheet:is(.mines-gift-sheet,.upgrade-sheet){border-radius:28px}
html[data-theme] body.keyboard-open #sheet.upgrade-sheet .upgrade-shop-dialog:has(.gift-search-toolbar:focus-within)>:is(.up-shop-purchase,.up-market-status){display:none}
html[data-theme] body.keyboard-open #sheet.upgrade-sheet .gift-search-toolbar{margin-bottom:8px}
html[data-theme] body.keyboard-open #sheet.upgrade-sheet .gift-search-toolbar:has([data-gift-search-input]:focus) .gift-price-bounds{display:none}
html[data-theme] body.keyboard-open #sheet.upgrade-sheet .gift-search-toolbar:has(.gift-price-bounds:focus-within) .gift-search-meta{display:none}
html[data-theme] body #sheet:is(.mines-gift-sheet,.upgrade-sheet) .gift-search-toolbar input{font-size:16px}

/* One heading/balance row leaves room for PvP actions on short phones. */
html[data-theme] body.rolls-view .rolls-page:not(.rolls-stake-window)>.rolls-heading{display:none}
@media(max-width:599px){
  html[data-theme] body.rolls-view .rolls-page:not(.rolls-stake-window){--pvp-field-size:clamp(140px,calc(var(--effective-app-height,100dvh) - var(--safe-top,0px) - var(--safe-bottom,0px) - 306px),428px)}
  html[data-theme] body.rolls-view .rolls-page:not(.arena-page) .rolls-wheel-host{width:min(100%,var(--pvp-field-size))}
  html[data-theme] body.arena-view .arena-page .arena-board{width:min(100%,var(--pvp-field-size));margin-inline:auto}
}
html[data-theme] body .cf-gift-sheet>header{flex:none}
html[data-theme] body .cf-gift-sheet .cf-picker-content{min-height:0;flex:1}
/* Gift stake confirmation stays outside the scrolling list in both PvP games. */
html[data-theme] body .bottom-sheet.rolls-stake-sheet{display:flex;flex-direction:column;overflow:hidden;height:auto;padding:36px 16px 0}
html[data-theme] body .bottom-sheet.rolls-stake-sheet:has(.rolls-gift-grid){height:min(620px,calc(var(--sheet-available-height,100dvh) - 12px))}
html[data-theme] body .rolls-stake-sheet #sheet-content{display:flex;flex:0 1 auto;min-height:0;width:100%;overflow:hidden}
html[data-theme] body .rolls-stake-sheet:has(.rolls-gift-grid) #sheet-content{flex:1}
html[data-theme] body .rolls-stake-sheet .rolls-stake-window{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;padding:0}
html[data-theme] body .rolls-stake-window>.rolls-subheading{flex:none;margin-bottom:16px}
html[data-theme] body .rolls-stake-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding-bottom:12px}
html[data-theme] body .rolls-stake-body>.rolls-gift-grid{max-height:none;overflow:visible;margin-bottom:0}
html[data-theme] body .rolls-stake-window .rolls-stake-footer{flex:none;padding:12px 0 calc(12px + max(0px,calc(var(--safe-bottom,0px) - var(--sheet-keyboard-bottom,0px))));background:var(--tg-sheet)}
html[data-theme] body .rolls-stake-window .rolls-stake-footer>.rolls-text-button{margin-bottom:0}

/* blackjack-fullscreen.css */
/* The classic table owns the viewport; game rules and accepted actions stay in
   blackjack.js. All overrides are scoped so other game surfaces remain intact. */
body.bj-fullscreen-active .bj-loading{position:relative;height:calc(var(--app-height,100dvh) - var(--safe-top,0px) - var(--safe-bottom,0px) - 16px);min-height:360px;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;background:#050606;color:#fff9e8;gap:0;isolation:isolate}
html[data-theme]:has(body.bj-fullscreen-active .bj-loading) body.bj-fullscreen-active,html[data-theme]:has(body.bj-fullscreen-active .bj-loading) body.bj-fullscreen-active .mini-app,body.bj-fullscreen-active .screen:has(.bj-loading){background:#050606!important;background-image:none!important}
body.bj-fullscreen-active .bj-loading::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 50% 43%,#294d392b,transparent 36%),linear-gradient(180deg,#070909,#020303)}
body.bj-fullscreen-active .bj-loading::after{content:"";position:absolute;left:10%;right:10%;bottom:12%;height:1px;z-index:-1;background:linear-gradient(90deg,transparent,#bda66a55,transparent)}
.bj-loading-logo{width:clamp(148px,46vw,216px);height:auto;object-fit:contain;opacity:.93;filter:sepia(.18) saturate(.78) brightness(1.18)}
.bj-loading-kicker{margin:24px 0 8px;font:650 8px/1.2 -apple-system,BlinkMacSystemFont,"SF Pro",sans-serif;letter-spacing:4px;color:#b9aa85}
.bj-loading h1{margin:0;font:italic 760 clamp(34px,10vw,58px)/1 Georgia,"Times New Roman",serif;letter-spacing:1px;color:#f2ead8;text-shadow:0 3px 24px #d8c27a18}
.bj-loading-caption{margin:12px 0 0;font:550 10px/1.2 -apple-system,BlinkMacSystemFont,"SF Pro",sans-serif;letter-spacing:1.7px;color:#c6baa0a8}
.bj-loading-line{width:112px;height:1px;margin-top:25px;overflow:hidden;background:#ffffff12}.bj-loading-line i{display:block;width:45%;height:100%;background:#d8bf7f;box-shadow:0 0 10px #d8bf7f66;animation:bj-load-line 1.15s cubic-bezier(.44,.05,.55,.95) infinite}
.bj-loading-cards{position:absolute;left:50%;top:calc(50% - 178px);width:96px;height:78px;transform:translateX(-50%);opacity:.2}.bj-loading-cards i{position:absolute;left:29px;top:7px;width:38px;height:56px;border:1px solid #d9c58e;border-radius:5px;background:#0d1310}.bj-loading-cards i:first-child{transform:translateX(-25px) rotate(-16deg)}.bj-loading-cards i:last-child{transform:translateX(25px) rotate(16deg)}
@keyframes bj-load-line{0%{transform:translateX(-105%)}100%{transform:translateX(328%)}}
@media(prefers-reduced-motion:reduce){.bj-loading-line i{animation:none;transform:none;width:100%;opacity:.5}}
.reduce-motion .bj-loading-line i{animation:none;transform:none;width:100%;opacity:.5}
.bj-design-options:has([data-value=amethyst]){grid-template-columns:repeat(2,minmax(0,1fr))}
.bj-rules-link{display:block;width:100%;min-height:44px;margin:18px 0 0;border-radius:14px;background:var(--raised,#292929);color:var(--text);font-weight:650}
.bj-fullscreen .bj-felt-rule{font:11px/1.4 Georgia,serif;color:#e2d8b6b3;letter-spacing:.4px}
html[data-theme] body.bj-fullscreen-active,
html[data-theme] body.bj-fullscreen-active .mini-app {
  background-color:var(--bj-cloth-base,#35203f);
  background-image:radial-gradient(ellipse at 50% 42%,var(--bj-cloth-glow,#71457a80),transparent 68%),repeating-linear-gradient(117deg,#ffffff02 0 1px,transparent 1px 3px),repeating-linear-gradient(23deg,#10031909 0 1px,transparent 1px 4px);
  color:#fff4df;
}
html[data-theme] body.bj-fullscreen-active { display:block;padding:0; }
html[data-theme] body.bj-fullscreen-active .mini-app { min-height:100dvh;max-width:none;border:0;border-radius:0;box-shadow:none; }
html[data-theme] body.bj-fullscreen-active:has(.bj-fullscreen[data-felt=amethyst]) { --bj-cloth-base:#35203f;--bj-cloth-glow:#71457a80; }
html[data-theme] body.bj-fullscreen-active:has(.bj-fullscreen[data-felt=emerald]) { --bj-cloth-base:#123c22;--bj-cloth-glow:#3d8e3a80; }
html[data-theme] body.bj-fullscreen-active:has(.bj-fullscreen[data-felt=ruby]) { --bj-cloth-base:#481c2b;--bj-cloth-glow:#9b3d5766; }
html[data-theme] body.bj-fullscreen-active:has(.bj-fullscreen[data-felt=midnight]) { --bj-cloth-base:#162c49;--bj-cloth-glow:#376b9c70; }
html[data-theme] body.bj-fullscreen-active :is(.app-header,.bottom-nav,.nav-fade,.desktop-aura,.space-wallpaper) { display:none!important; }
html[data-theme] body.bj-fullscreen-active .screen {
  width:100%;max-width:none;margin:0;padding:calc(var(--safe-top,0px) + 12px) max(12px,var(--safe-right,0px)) calc(var(--safe-bottom,0px) + 12px) max(12px,var(--safe-left,0px))!important;min-height:100dvh;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen {
  --bj-view-height:calc(var(--app-height,100dvh) - var(--safe-top,0px) - var(--safe-bottom,0px) - 24px);
  --bj-gold:#ddc691;
  --bj-card-width:clamp(76px,calc(var(--bj-view-height) * .123),108px);
  --bj-card-height:calc(var(--bj-card-width) * 1.417);
  --bj-fs-line:#e4cb8e55;
  --bj-fs-ink:#fff2d7;
  position:relative;isolation:isolate;display:flex;flex-direction:column;gap:9px;
  width:100%;max-width:700px;height:auto;min-height:max(612px,var(--bj-view-height));margin:0 auto;
  color:var(--bj-fs-ink);font-variant-numeric:tabular-nums;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen::before {
  content:"";position:absolute;inset:-140px -30px -40px;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse at 50% 25%,#e7dfa70c,transparent 56%),linear-gradient(90deg,#10131924,transparent 22% 78%,#10131924);
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen::after {
  content:"";position:absolute;left:-30%;right:-30%;bottom:-34px;height:58px;pointer-events:none;
  border:2px solid #bba16b78;border-bottom:0;border-radius:50% 50% 0 0;
  box-shadow:0 -4px 0 #1e1522,inset 0 2px 0 #f5dda02b;z-index:-1;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading {
  display:flex;align-items:center;gap:7px;flex:none;min-height:44px;margin:0;padding:0;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading>div:has(h1) { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading :is(.icon-button,.bj-back-button,.bj-design-button) {
  display:grid;place-items:center;flex:0 0 40px;width:40px;height:44px;min-height:44px;margin:0;padding:8px;
  border:1px solid #e7d4a26b;border-radius:50%;background:linear-gradient(155deg,#514237,#211b26);
  box-shadow:inset 0 1px 0 #ffefd440,0 2px 4px #160d2055;color:#f4e8ce;font-size:20px;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading button svg { width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading .bj-sound-button[aria-pressed=true] { color:#f9e7ae;background:linear-gradient(155deg,#6a5539,#2e2430);border-color:#f0cf87; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance {
  flex:1;min-width:0;min-height:42px;display:flex;align-items:center;justify-content:center;gap:6px;
  border:1px solid #eed29a91;border-radius:24px;padding:7px 10px;color:#fff4d9;
  background:linear-gradient(180deg,#534035,#261e2c);box-shadow:inset 0 1px 0 #fff1bf2e,0 2px 5px #160d2033;
  font:700 18px/1.1 -apple-system,BlinkMacSystemFont,"SF Pro",sans-serif;letter-spacing:-.3px;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance [data-balance] { min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance small { font-size:8px;letter-spacing:.8px;color:#decba5; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance .currency-art { flex:0 0 18px;width:18px;height:18px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance .tiny-plus,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-balance-plus { display:grid;place-items:center;flex:0 0 23px;width:23px;height:23px;margin:0 0 0 auto;border-radius:50%;background:linear-gradient(155deg,#91aa4d,#4b762e);border:1px solid #efe0a16e;color:#fff8df;box-shadow:inset 0 1px 0 #ffffb657;font-size:21px;line-height:1;font-weight:500; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bankroll { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seats { margin:0;padding:0;min-height:0;flex:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seats:not(.is-duo) { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seats.is-duo { display:flex;gap:10px;padding:0 4px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seat { background:none;border:0;padding:0;min-width:0; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seat-copy b { color:#fff1d5; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seat-copy small { color:#cebacd; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seat-avatar { border:1px solid #d7bd7e8c;box-shadow:0 2px 6px #180c2555; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage:not([data-renderer=fallback]) {
  flex:1 1 auto;min-height:335px;height:auto;margin:0;padding:0;overflow:visible;border:0;border-radius:0;background:none;box-shadow:none;isolation:isolate;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage::before,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage::after { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen :is(.bj-hall-canvas,.bj-hall-labels,.bj-hall-caption,.bj-renderer-notice) { display:none!important; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage .bj-table {
  position:absolute;inset:0;display:grid;grid-template-rows:minmax(0,1fr) 54px minmax(0,1fr) 58px;
  width:100%;height:100%!important;min-height:0;margin:0!important;padding:4px 8px;gap:0;
  background:none;border:0;border-radius:0;box-shadow:none;overflow:visible;opacity:1;visibility:visible;pointer-events:auto;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table::before,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table::after,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen :is(.bj-felt-ring,.bj-table-markings,.bj-table-light) { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deck { top:2px;right:-6px;width:38px;height:54px;opacity:.58;transform:rotate(18deg); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen[data-back=classic] { --bj-fs-back-color:#285988;--bj-fs-back-pattern:repeating-linear-gradient(45deg,transparent 0 5px,#e9effabf 5px 6px),repeating-linear-gradient(-45deg,transparent 0 5px,#e9effabf 5px 6px); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen[data-back=orbit] { --bj-fs-back-color:#1c3762;--bj-fs-back-pattern:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 8px,#afd9ef70 9px 10px,transparent 11px 18px); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen[data-back=diamond] { --bj-fs-back-color:#24483d;--bj-fs-back-pattern:repeating-conic-gradient(from 45deg,#f4dfa84a 0 25%,transparent 0 50%); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deck i { border-color:#efdfbb;background-color:var(--bj-fs-back-color,#285988);background-image:var(--bj-fs-back-pattern); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand { gap:7px;align-content:center;min-height:0; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand.dealer { grid-row:1;grid-template-rows:30px var(--bj-card-height); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand.player { grid-row:3;grid-template-rows:var(--bj-card-height) 32px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-label { height:30px;color:#e6d5e7;font-size:8px;letter-spacing:1.6px;gap:8px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand.player .bj-hand-label { flex-direction:row-reverse; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-score {
  position:relative;display:inline-grid;place-items:center;min-width:36px;height:32px;padding:0 9px;
  border:1px solid #e5cf98b8;border-radius:18px;color:#fff7e8;background:linear-gradient(155deg,#5e443c,#2d2037);
  box-shadow:inset 0 1px 0 #fff4d124,0 3px 7px #1c10275c;font:650 20px/1 Georgia,"Times New Roman",serif;letter-spacing:0;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-score.bust { border-color:#ff9c9b;background:linear-gradient(155deg,#813947,#462439);color:#ffd6d1; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-cards { height:var(--bj-card-height);width:100%;min-width:0;overflow:visible; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen :is(.bj-card,.bj-card-slot) { top:0;width:var(--bj-card-width);height:var(--bj-card-height); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-card-slot { opacity:0; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-card-front {
  border:1px solid #fff5d0;border-radius:7px;background:linear-gradient(110deg,#fffdf0,#f3efda);color:#17221d;
  box-shadow:0 1px 0 #bba989,1px 5px 8px #1b10224d;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-card-front.red { color:#cc2636; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-card-front::after { background:linear-gradient(125deg,#fff8,transparent 35%,#b0953907); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-card-back {
  border:4px solid #f3ecd5;border-radius:7px;box-shadow:inset 0 0 0 1px #446b95,0 1px 0 #bba989,1px 5px 8px #1b10224d;
  background-color:var(--bj-fs-back-color,#285988);background-image:var(--bj-fs-back-pattern);
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-back-emblem { inset:27% 18%;border-color:#d1e5f7;background:var(--bj-fs-back-color,#285988);color:#fff3cf;box-shadow:0 0 0 4px var(--bj-fs-back-color,#285988); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand { grid-row:2;align-self:center;gap:4px;z-index:3; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand>strong { color:#efe3c4a3;font:700 clamp(17px,5vw,25px)/1.1 Georgia,"Times New Roman",serif;letter-spacing:2.4px;text-shadow:0 1px 0 #1e0e2b; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand>span { color:#e4d4b6ab;font-size:8px;letter-spacing:1.5px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-turn-hint { color:#cab1c9;font-size:9px;letter-spacing:.2px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand.has-result { max-width:100%; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table.is-idle { display:flex;align-items:center;justify-content:center;padding:18px 20px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table.is-idle :is(.bj-hand,.bj-table-stake,.bj-split-hands) { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table.is-idle .bj-table-brand { position:relative;width:100%;max-width:360px;gap:10px;margin:0 0 18px;align-self:auto; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table.is-idle .bj-table-brand::before { content:"♠  ♥  ♣  ♦";display:block;font:26px/1 Georgia,"Times New Roman",serif;letter-spacing:11px;color:#e3d2a864;margin-bottom:5px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table.is-idle .bj-table-brand>strong { font-size:clamp(25px,8vw,38px);letter-spacing:3px;color:#efe3c48a; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table.is-idle .bj-table-brand>span { color:#e4d4b687;letter-spacing:2px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-idle-invitation { margin:15px 0 0;padding:12px 24px 0;border-top:1px solid #e1ce9e36;color:#e3d5b8a6;font-size:11px;line-height:1.4;letter-spacing:1px;font-style:normal; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-result-badge { max-width:100%;padding:7px 13px;border-radius:14px;border:1px solid #e1c58966;background:#2a1c36dd;box-shadow:0 3px 12px #130b1e33; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-outcome { font-size:17px;color:#f4dfa9; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-result-badge.loss { border-color:#f3a8ad55;background:#48253bd9; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-result-badge.loss .bj-outcome { color:#ffc6ca; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-result-badge .bj-model-prize { font-size:10px;color:#eee1d4; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-model-prize img { width:28px;height:28px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-stake { grid-row:4;display:flex;flex-direction:row;gap:10px;padding-top:4px;align-items:center;justify-content:center; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stacks { min-height:39px;gap:6px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-chip-caption { font-size:20px;font-weight:700;color:#fff0d3;text-shadow:0 1px 3px #23122d;letter-spacing:-.4px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-chip-caption small { margin-top:3px;font:600 7px/1 sans-serif;letter-spacing:1.4px;color:#cdb7c7; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-chip { transform:rotate(-8deg);width:40px;height:40px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-chip-stack { width:40px;height:36px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-spot { width:46px;height:46px;transform:none;border-radius:50%;border:1px dashed #e6cd9870;box-shadow:0 0 0 5px #e7cf9422; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-feedback { flex:none;min-height:17px;gap:8px;margin:0;padding:0 4px;align-items:center; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-status { min-height:0;margin:0;padding:0;display:block;font-size:10px;line-height:1.4;color:#e0cadc;text-align:center; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-status::before { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-bar { max-width:48%; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-clock { color:#e0c8d7;font-size:9px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen #bj-controls { flex:none;min-width:0;position:relative;z-index:5; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions { display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"stand hit" "double split";gap:7px 10px;max-width:430px;margin:0 auto; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action {
  min-width:0;min-height:59px;height:auto;border-radius:14px;border:1px solid #e8cf937f;color:#fff4df;
  display:flex;flex-direction:row;align-items:center;justify-content:center;gap:9px;padding:9px 12px;
  background:linear-gradient(180deg,#73513c,#49342d);box-shadow:inset 0 1px 0 #fff4cf40,inset 0 0 0 3px #251b313b,0 3px 0 #1e142c75;
  font-size:15px;font-weight:700;line-height:1.2;white-space:nowrap;touch-action:manipulation;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action[data-action=bj-stand] { grid-area:stand;background:linear-gradient(180deg,#a94044,#742b3b);border-color:#e2b786; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action.bj-hit { grid-area:hit;background:linear-gradient(180deg,#6b9c35,#3c702f);border-color:#dccf8b;color:#fff8df; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action.bj-double { grid-area:double; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action.bj-split-button { grid-area:split; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions :is(.bj-double,.bj-split-button) {
  min-height:35px;background:#261b3333;border-color:#decb9c4d;box-shadow:inset 0 1px 0 #fff1cf10;color:#ead8c6;font-size:11px;border-radius:10px;padding:6px 10px;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action>span { font-size:25px;line-height:1;color:inherit;font-weight:500; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions :is(.bj-double,.bj-split-button)>span { font-size:16px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action:disabled { background:#3024395e;border-color:#9c87a143;color:#baa7bc;box-shadow:none;opacity:.5; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-action-hint { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-test-note { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel {
  display:grid;grid-template-columns:102px minmax(0,1fr);grid-template-areas:"source amount" "chips chips" "deal deal";gap:8px 10px;
  padding:10px 12px;border:1px solid #dfc69445;border-radius:22px;background:#24192c80;box-shadow:inset 0 1px 0 #fff1cf10;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stake-choice { grid-area:source;gap:7px;margin:0;min-width:0;display:flex; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stake-choice:has(.bj-gift-choice) { grid-column:1/-1; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .stake-source-switch { border-color:#dcc3924d;background:#271b34;min-height:39px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .stake-source-switch button { min-width:42px;color:#d9c6cf; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .stake-source-switch button[aria-pressed=true] { background:#74546d;color:#fff2d4;box-shadow:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-gift-choice { min-width:0;flex:1;background:#5a3e624d;border:1px solid #dcc39255;color:#ffeccd;border-radius:15px;padding:8px 10px;font-size:11px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-top { grid-area:amount;min-width:0;margin:0;display:flex;justify-content:flex-end;align-items:center;gap:5px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-top>.bj-eyebrow { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field { width:100%;max-width:100%;padding:8px 10px;min-height:39px;border:1px solid #dcc3923d;border-radius:13px;background:#21182c88;gap:5px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field input { width:100%;min-width:0;padding:0;border:0;background:none;color:#fff2d4;font-size:17px;line-height:1.2; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field>span { color:#cdb5c7;font-size:8px;letter-spacing:1px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chips { grid-area:chips;display:flex;justify-content:space-around;align-items:center;gap:10px;margin:0;padding:1px 0 4px;border:0;background:none;border-radius:0; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chips>.bj-chip { width:36px;height:36px;min-height:36px;min-width:36px;border:1px solid #fff7;padding:4px;border-radius:50%;background:conic-gradient(var(--chip-color) 0deg 8deg,#f7eedc 8deg 19deg,var(--chip-color) 19deg 69deg,#f7eedc 69deg 80deg,var(--chip-color) 80deg 129deg,#f7eedc 129deg 140deg,var(--chip-color) 140deg 189deg,#f7eedc 189deg 200deg,var(--chip-color) 200deg 249deg,#f7eedc 249deg 260deg,var(--chip-color) 260deg 309deg,#f7eedc 309deg 320deg,var(--chip-color) 320deg);box-shadow:0 2px 0 #1613278a,0 3px 5px #150d1f55; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip>span { width:100%;height:100%;display:grid;place-items:center;position:static;border:1px dashed #fff9;border-radius:50%;font-size:11px;color:#fff9e3;background:var(--chip-color); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip.chip-0>span { color:#27323b; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip[aria-pressed=true] { outline:1px solid #f6dca6;outline-offset:3px;transform:translateY(-1px); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .game-control-selection { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deal {
  grid-area:deal;min-height:47px;height:47px;border-radius:13px;border:1px solid #edcf91a8;padding:9px 13px;
  background:linear-gradient(180deg,#ae8749,#815a35);color:#fff8e5;font-size:14px;font-weight:750;
  box-shadow:inset 0 1px 0 #ffe9b17d,0 3px 0 #21162d70;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deal:disabled { opacity:.48; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen #bj-rooms { flex:none;order:10; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch { display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;margin:0;border:1px solid #dcc39226;border-radius:18px;background:#24182e44; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch>button { display:flex;min-height:34px;justify-content:center;gap:6px;padding:5px 8px;border-radius:14px;border:1px solid transparent;background:none;color:#d0bcd2;box-shadow:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch>button[aria-pressed=true] { color:#fff1d7;border-color:#ddc58e5c;background:#78516b69;box-shadow:inset 0 1px 0 #ffefc91a; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch b { font-size:11px;line-height:14px;margin:0;font-weight:600; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch small { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-number { color:inherit;font-size:10px;line-height:14px;letter-spacing:0;opacity:.68; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch>.game-control-selection { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-resolving { height:84px;color:#e2ced9;font-size:12px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-ready { border-color:#d8be8b4d;background:#24182e7a;color:#f5e5cc;padding:10px 12px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-ready small { color:#d2bbd0; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-ready b { color:#f5e5cc; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-ready-chip { background:#6d5266;color:#f1d9a5; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-cancel { color:#efca98;border-color:#d4b88955;background:#30203755;min-height:38px;margin-top:7px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table:has(.bj-split-hands) { grid-template-rows:minmax(0,1fr) 50px minmax(0,1.3fr);height:100%!important; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hands { grid-row:3;align-self:center;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;min-width:0; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand {
  --bj-card-width:clamp(61px,calc(var(--bj-view-height) * .105),89px);--bj-card-height:calc(var(--bj-card-width) * 1.417);
  position:relative;min-width:0;padding:7px 2px 5px;border:1px solid #dbc39829;background:#291c3530;border-radius:15px;box-shadow:none;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand.is-focused { border-color:#edd299aa;background:#835a682b;box-shadow:0 0 18px #ebca6120; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand::before { border-color:#f3dba2;box-shadow:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-heading { padding:0 5px 7px;font-size:7px;color:#dec9dc; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-cards { height:var(--bj-card-height); }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-hand-label { height:28px;gap:4px;margin-top:6px;letter-spacing:0; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-score { height:26px;min-width:27px;font-size:16px;padding:0 7px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-lane-state { font-size:8px;color:#dfc7db; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-table-stake { padding-top:5px;gap:5px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-chip-caption { font-size:12px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-stacks { display:none; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result { width:calc(100% - 10px);max-width:132px;margin:5px auto 0;background:#34243bd9;border-color:#e4c89477; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen button:focus-visible { outline:2px solid #f9db9e;outline-offset:3px; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field:focus-within { border-color:#f0d59b;box-shadow:0 0 0 2px #efce9130; }
body.bj-fullscreen-active .bj-felt-swatch[data-felt=amethyst],body.bj-fullscreen-active .bj-design-preview[data-felt=amethyst] { --felt:#35203f;--felt-glow:#71457a80;--felt-edge:#201529; }
@media (min-width:700px) {
  html[data-theme] body.bj-fullscreen-active .screen { padding-left:28px;padding-right:28px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen { max-width:650px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading { max-width:520px;width:100%;margin:0 auto; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen #bj-controls,
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen #bj-rooms { width:100%;max-width:460px;align-self:center; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deck { right:25px;width:48px;height:68px; }
}
@media (max-width:360px) {
  html[data-theme] body.bj-fullscreen-active .screen { padding-left:10px;padding-right:10px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen { --bj-card-width:clamp(74px,calc(var(--bj-view-height) * .12),94px);gap:7px;min-height:max(600px,var(--bj-view-height)); }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading { gap:4px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading :is(.icon-button,.bj-back-button,.bj-design-button) { flex-basis:38px;width:38px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance { font-size:16px;padding:7px 8px;gap:4px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance small { display:none; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand>strong { font-size:18px;letter-spacing:1.5px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-status { font-size:9px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel { padding:9px 10px;gap:7px 8px;grid-template-columns:94px minmax(0,1fr); }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions { gap:6px 8px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action { min-height:56px;font-size:14px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions :is(.bj-double,.bj-split-button) { min-height:34px;font-size:11px; }
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-score { font-size:18px;height:29px;min-width:33px; }
}
@media (prefers-reduced-motion:reduce) {
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen *,body.bj-fullscreen-active .blackjack-page.bj-fullscreen *::before,body.bj-fullscreen-active .blackjack-page.bj-fullscreen *::after { animation:none!important;transition:none!important; }
}

/* Felt grain is a tiny reusable texture, not a full-screen bitmap. */
html[data-theme] body.bj-fullscreen-active .mini-app {
  background-image:url('./blackjack-felt-grain.svg'),radial-gradient(ellipse at 50% 42%,var(--bj-cloth-glow,#71457a80),transparent 75%),linear-gradient(90deg,#0003,transparent 25% 75%,#0003);
  background-size:180px 180px,100% 100%,100% 100%;
}
html[data-theme] body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field input {
  color:#fff4df!important;-webkit-text-fill-color:#fff4df;caret-color:#fff4df;font:700 22px/1.2 -apple-system,BlinkMacSystemFont,sans-serif;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chips {gap:8px;padding:6px 0 9px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chips>.bj-chip {
  width:50px;height:50px;min-width:44px;min-height:44px;flex:0 1 50px;padding:7px;border:1px solid #fff2d5;
  box-shadow:inset 0 0 0 2px #ffffff60,0 3px 0 var(--chip-color),0 5px 0 #15191ae0,0 7px 9px #0006;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip>span {
  position:relative;display:flex;flex-direction:column;justify-content:center;gap:1px;background:#f8eed8;color:#25313b!important;border:1px solid #323b3966;outline:1px solid #ffffff60;outline-offset:2px;font:800 17px/1 Georgia,serif;text-shadow:0 1px #fff;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip>span::before {content:'RAKETKA';font:700 4px/1.2 sans-serif;letter-spacing:.45px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip>span::after {content:'GRAM';font:700 4px/1.2 sans-serif;letter-spacing:.8px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip[aria-pressed=true] {outline:2px solid #ffe3a1;outline-offset:4px;transform:translateY(-3px)}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand>strong {transform:rotate(-3deg);font-size:clamp(23px,6vw,32px);color:#f2e7cfbc;letter-spacing:1px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-felt-rule {padding:5px 15px;border:1px solid #ead9b778;border-radius:50%;font-weight:700}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen::after {background:repeating-linear-gradient(8deg,#65402b 0 2px,#50301f 3px 5px,#714932 6px 8px);height:30px;border-top:4px solid #c6a967;box-shadow:0 -3px 0 #31251a,0 -5px 0 #d9c18b70}
@media(max-width:360px){body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chips>.bj-chip{width:44px;height:44px;flex-basis:44px;padding:6px}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip>span{font-size:15px}}
/* Match the physical chip stack to the large denomination chips. */
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-chip {width:54px;height:54px;border:2px solid #f8edd2;box-shadow:inset 0 0 0 2px #fff6,0 3px 0 #161b24,0 5px 6px #0006}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-chip-stack {width:54px;height:50px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stacks {min-height:54px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-chip>span {font:800 15px/1 Georgia,serif;background:#f8eed8;color:#25313b;border:1px solid #fff8}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-chip.chip-4 {--chip-color:#b03a43}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-turn-hint {display:none}
/* Each hand reserves real card height: branding can never intrude into its row. */
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage[data-renderer=flat] {min-height:calc(var(--bj-card-height)*2 + 256px)}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage .bj-table {grid-template-rows:minmax(calc(var(--bj-card-height) + 40px),1fr) 80px minmax(calc(var(--bj-card-height) + 40px),1fr) 64px;row-gap:8px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand {z-index:0}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand>strong {transform:none;font-size:24px;letter-spacing:2px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand {position:relative;z-index:1}
/* Keep the flip only while moving. Resting SVG cards do not sit on transformed 3D textures. */
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table[data-busy=false] .bj-cards {perspective:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table[data-busy=false] .bj-card {left:calc(50% - var(--bj-card-width)/2 + var(--card-x));transform:none;perspective:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table[data-busy=false] .bj-card-turn {transform:none;transform-style:flat}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table[data-busy=false] .bj-card-front {transform:none;backface-visibility:visible;-webkit-backface-visibility:visible}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table[data-busy=false] .bj-card-back {display:none;transform:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table[data-busy=false] .is-hidden .bj-card-front {display:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table[data-busy=false] .is-hidden .bj-card-back {display:block}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-card-front {background:#fffef7;border-color:#fffefa;box-shadow:0 1px 0 #bdad86,0 3px 5px #0004}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-card-front::after {display:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-card-face {text-rendering:geometricPrecision;shape-rendering:geometricPrecision}
/* Stake controls sit directly on the felt, with no enclosing panel. */
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel {position:relative;grid-template-columns:1fr;grid-template-areas:'source' 'amount' 'chips' 'deal';gap:12px;padding:8px 6px 12px;border:0;border-radius:0;background:none;box-shadow:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stake-choice {justify-content:center;width:100%;align-items:center}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stake-choice .stake-source-switch {background:none;border:0;box-shadow:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-top {position:relative;justify-content:center}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-top>.bj-eyebrow {display:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field {display:grid;grid-template-columns:44px minmax(0,1fr) auto 44px;gap:7px;align-items:center;padding:4px;border:0;border-radius:0;background:none;min-height:52px;box-shadow:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field input {text-align:right;font-size:30px!important;font-weight:750;letter-spacing:-.7px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field>span {font-size:10px;color:#cbbd9b;margin-right:10px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-step {display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid #d6c29855;background:#ffffff08;color:#f4e8ce;font:400 25px/1 -apple-system,sans-serif}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-step:active {background:#d6c29830;transform:scale(.95)}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chips {padding:4px 0 6px;justify-content:space-between}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip[aria-pressed=true] {outline:2px solid #ffe6aa;outline-offset:3px;box-shadow:inset 0 0 0 2px #fff6,0 3px 0 var(--chip-color),0 5px 0 #15191a,0 0 15px #f9d68d45}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deal {height:54px;min-height:54px;display:flex;align-items:center;justify-content:center;gap:12px;border-radius:16px;border:1px solid #f8d99e;background:linear-gradient(180deg,#f0d498,#c6a15f);box-shadow:inset 0 1px #fff9,0 3px 0 #725331,0 6px 12px #0004;color:#302817;font:750 15px/1.2 -apple-system,BlinkMacSystemFont,sans-serif;text-shadow:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deal-icon {font:26px/1 Georgia,serif;color:#5d4928}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-gift-choice {background:#ffffff0a;border:1px solid #d6c29840;color:#f4e8ce}
@media(max-width:360px){body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel{padding:6px 2px 10px;gap:10px}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-top>.bj-eyebrow{top:-39px;font-size:7px}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field{gap:4px}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field input{font-size:27px!important}}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage[data-renderer=flat]:has(.bj-table.is-idle) {min-height:220px}

body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel:has(.bj-gift-choice) {grid-template-areas:'source' 'deal';gap:14px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table[data-busy=false] .bj-card,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table[data-busy=false] .bj-card-turn {animation:none!important}

body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stake-choice .stake-source-switch button {background:none;box-shadow:none;border:1px solid transparent;color:#ebdec4}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stake-choice .stake-source-switch button[aria-pressed=true] {background:#e0c69218;border-color:#e7cd91a6;box-shadow:inset 0 0 0 1px #fff1}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field:focus-within {border:0;box-shadow:none}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel::before,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel::after {display:none}

/* A viewport-sized table: only sheets scroll; the game controls stay in reach. */
html:has(body.bj-fullscreen-active) { overflow:hidden; }
html[data-theme] body.bj-fullscreen-active { height:var(--app-height,100dvh);min-height:0;overflow:hidden; }
html[data-theme] body.bj-fullscreen-active .mini-app { height:var(--app-height,100dvh);min-height:0;overflow:hidden; }
html[data-theme] body.bj-fullscreen-active .screen { height:var(--app-height,100dvh);min-height:0;padding:calc(var(--safe-top,0px) + 8px) max(14px,var(--safe-right,0px)) calc(var(--safe-bottom,0px) + 8px) max(14px,var(--safe-left,0px))!important;overflow:hidden; }
body.bj-fullscreen-active .blackjack-page.bj-fullscreen {
  --bj-view-height:calc(var(--app-height,100dvh) - var(--safe-top,0px) - var(--safe-bottom,0px) - 16px);
  height:var(--bj-view-height);min-height:0;max-width:560px;gap:6px;
  --bj-gold:#dac79b;--bj-fs-ink:#f6f0de;
}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen::before {inset:-20px -25px; background:radial-gradient(ellipse at 50% 35%,#e7edc410,transparent 60%);}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen::after {left:-30vw;right:-30vw;bottom:-12px;height:12px;border-radius:48% 48% 0 0;border-top:2px solid #b8a16f;background:linear-gradient(#6b4a31,#30251c);box-shadow:0 -2px #151e1b,0 -3px #dfcb8b40;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading {min-height:44px;gap:5px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading :is(.icon-button,.bj-back-button,.bj-design-button) {flex-basis:40px;width:40px;height:44px;border:0;border-radius:14px;background:none;box-shadow:none;color:#f2edda;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading :is(.icon-button,.bj-back-button,.bj-design-button):active {background:#ffffff16;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading .bj-sound-button[aria-pressed=true] {background:#ffffff0c;border:0;color:#e6d6ab;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance {justify-content:flex-start;min-height:40px;padding:7px 10px;gap:7px;border:1px solid #d3c49a42;border-radius:14px;background:#10291f70;box-shadow:inset 0 1px #fff1;font-size:17px;letter-spacing:-.3px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-balance-plus {background:#ffffff15;border:0;box-shadow:none;color:#f4e7bf;width:24px;height:24px;flex-basis:24px;font-size:19px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage[data-renderer=flat],
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage[data-renderer=flat]:has(.bj-table.is-idle) {flex:1 1 0;min-height:0;container-type:size;overflow:visible;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage::before {display:block;content:'';position:absolute;inset:4% -22% 0;border:1px solid #e1d5aa25;border-radius:50% 50% 40% 40%;box-shadow:inset 0 0 0 6px #142b2010,inset 0 0 0 7px #e1d5aa10;pointer-events:none;z-index:-1;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage::after {display:block;content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 30%,#f2df9d12,transparent 70%);opacity:.4;z-index:-1;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage:has([data-busy=true])::after {animation:bj-table-breathe 2.6s ease-out both;}
@keyframes bj-table-breathe {0%,100%{opacity:.4;transform:translateY(0)}45%{opacity:1;transform:translateY(5px)}}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage .bj-table {
  --bj-card-width:clamp(46px,calc((var(--bj-view-height) - 390px)*.353),110px);
  --bj-card-height:calc(var(--bj-card-width)*1.417);
  grid-template-rows:minmax(0,1fr) 40px minmax(0,1fr) 42px;row-gap:4px;padding:0 4px;overflow:visible;
}
@supports(width:1cqh) {body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage .bj-table {--bj-card-width:clamp(46px,calc((100cqh - 150px)*.353),110px);}}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand {gap:4px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand.dealer {grid-template-rows:24px var(--bj-card-height);align-content:start;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand.player {grid-template-rows:var(--bj-card-height) 24px;align-content:end;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-label {height:24px;min-height:0;font:650 8px/1.2 -apple-system,sans-serif;letter-spacing:1.3px;color:#ece5d1b8;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-score {height:25px;min-width:30px;padding:0 7px;border:1px solid #d2c29d55;background:#0c271c80;box-shadow:0 2px 4px #0002;font:700 17px/1 -apple-system,sans-serif;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deck {width:34px;height:48px;right:4px;top:30px;opacity:.85;transform:rotate(12deg);}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table[data-busy=true] .bj-deck {animation:bj-shoe-nudge .8s ease-out;}
@keyframes bj-shoe-nudge {0%,100%{transform:rotate(12deg)}40%{transform:translateY(-3px) rotate(10deg)}}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand {gap:3px;min-width:0;max-height:100%;align-self:center;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand>strong {font:italic 700 20px/1 Georgia,serif;letter-spacing:2px;color:#e7dbb678;text-shadow:none;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand>span {font-size:7px;letter-spacing:1.8px;color:#e7dbb680;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-felt-rule {display:none;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table.is-idle .bj-table-brand {gap:10px;margin:0;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table.is-idle .bj-table-brand>strong {font-size:clamp(30px,9vw,46px);letter-spacing:3px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table.is-idle .bj-table-brand::before {font-size:23px;margin:0 0 8px;letter-spacing:12px;color:#e3d2a850;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-result-badge {border:0;padding:4px 10px;border-radius:0;background:none!important;box-shadow:none;display:flex;align-items:center;gap:7px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-outcome {font:700 16px/1.2 -apple-system,sans-serif;color:#e3edc7;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-result-badge.loss .bj-outcome {color:#f1c9bd;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-model-prize {display:inline-flex;align-items:center;gap:4px;max-width:100%;font-size:10px;line-height:1.2;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-model-prize img {width:25px;height:25px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-stake {gap:8px;padding:0;min-height:0;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stacks {min-height:35px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-chip-stack {width:36px;height:34px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-chip {width:36px;height:36px;border-width:1px;box-shadow:inset 0 0 0 1px #fff7,0 2px 0 #13241b,0 4px 4px #0003;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-chip>span {font-size:12px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-chip-caption {display:grid;grid-template-columns:17px auto;gap:2px 5px;text-align:left;font:700 19px/1 -apple-system,sans-serif;letter-spacing:-.4px;text-shadow:none;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-chip-caption small {grid-column:2;font:600 7px/1 -apple-system,sans-serif;letter-spacing:1px;margin:0;color:#e2d8be9c;}
.bj-gram-icon {display:inline-block;vertical-align:middle;width:16px;height:16px;flex:0 0 16px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-feedback {min-height:0;height:16px;justify-content:center;overflow:hidden;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-feedback:has(.bj-status:empty):has(.bj-table-bar:empty) {display:none;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-status {font-size:10px;color:#eee4d2b0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-status:empty {display:none;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel {grid-template-columns:94px minmax(0,1fr);grid-template-areas:'source amount' 'chips chips' 'deal deal';gap:8px 12px;padding:0 4px 3px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stake-choice {width:auto;justify-content:flex-start;gap:5px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stake-choice .stake-source-switch {gap:0;padding:2px;border:1px solid #d3c49a3d;background:#0c211c30;border-radius:24px;min-height:44px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stake-choice .stake-source-switch button {min-width:42px;min-height:38px;border-radius:50%;border:0;color:#e8dfc9;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stake-choice .stake-source-switch button[aria-pressed=true] {background:#e8ddbd20;border:0;box-shadow:inset 0 0 0 1px #e5d8b540;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field {grid-template-columns:36px minmax(0,1fr) 17px 36px;min-height:44px;padding:0;gap:6px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field input {font-size:26px!important;font-weight:650!important;letter-spacing:-.7px;color:#fff6dc!important;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field>.bj-gram-icon {width:17px;height:17px;margin:0;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-step {width:36px;height:44px;border:0;border-radius:10px;background:#0c211c25;box-shadow:inset 0 0 0 1px #e6d5a829;font:400 22px/1 -apple-system,sans-serif;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chips {padding:0 3px 3px;gap:10px;min-height:48px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chips>.bj-chip {width:44px;height:44px;min-width:44px;min-height:44px;flex:0 0 44px;padding:6px;border-color:#f5e6c4c2;box-shadow:inset 0 0 0 1px #ffffff70,0 2px 0 var(--chip-color),0 4px 0 #17251d,0 5px 6px #0004;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip>span {font:800 16px/1 Georgia,serif;gap:2px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip>span::before {font-size:3.5px;letter-spacing:.3px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip>span::after {content:'• • •';font-size:4px;letter-spacing:1px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel .bj-chip[aria-pressed=true] {outline-width:1px;outline-offset:3px;transform:translateY(-2px);}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deal {height:48px;min-height:48px;border-radius:13px;border:1px solid #f1dfb2;background:linear-gradient(180deg,#e8d6aa,#c5ad77);box-shadow:inset 0 1px #fff9,0 2px 0 #695936,0 4px 8px #0003;color:#283428;font:750 15px/1 -apple-system,sans-serif;gap:9px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deal>span:last-child {display:flex;align-items:center;gap:5px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deal-icon {font-size:20px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel:has(.bj-gift-choice) {grid-template-columns:1fr;grid-template-areas:'source' 'deal';gap:8px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-gift-choice {min-height:44px;border-radius:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions {max-width:none;gap:8px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action {min-height:52px;height:52px;border:1px solid #f0dcaf5e;border-radius:13px;background:linear-gradient(180deg,#235d49,#194737);box-shadow:inset 0 1px #fff2,0 2px #10251e;color:#fcf8ea;font:700 15px/1 -apple-system,sans-serif;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action[data-action=bj-stand] {background:linear-gradient(180deg,#79483f,#61392f);border-color:#e6baa77a;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action.bj-hit {background:linear-gradient(180deg,#d9cf9b,#b5af7c);color:#1e3628;border-color:#f3e5ba;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions :is(.bj-double,.bj-split-button) {height:44px;min-height:44px;background:#102c2038;box-shadow:none;border-color:#e6d8b62e;color:#e8dec6;font-size:12px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-play-actions .bj-action:disabled {background:#17302650;color:#d2c6b280;opacity:.55;box-shadow:none;border-color:#d6c8b029;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-resolving {height:104px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch {height:30px;min-height:30px;padding:0;gap:0;background:none;border:0;border-radius:0;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch>button {height:30px;min-height:30px;border-radius:0;padding:0 8px;border:0;border-bottom:1px solid #e4d4aa20;opacity:.7;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch>button[aria-pressed=true] {background:none;color:#e9dab6;border:0;border-bottom:1px solid #e9d5a4;box-shadow:none;opacity:1;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch b {font-size:10px;font-weight:500;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-number {font-size:9px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seats.is-duo {height:30px;gap:8px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seat-avatar {width:26px;height:26px;min-width:26px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seat-copy b {font-size:10px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-seat-copy small {font-size:8px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table:has(.bj-split-hands) {grid-template-rows:minmax(0,1fr) 36px minmax(0,1fr);}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hands {align-self:stretch;align-items:start;gap:6px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand {--bj-card-width:clamp(39px,calc((100cqh - 230px)*.30),80px);--bj-card-height:calc(var(--bj-card-width)*1.417);padding:3px 0;border-radius:12px;background:none;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-heading {padding:0 4px 4px;font-size:7px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-heading>span {display:inline-flex;align-items:center;gap:3px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-heading .bj-gram-icon {width:10px;height:10px;flex-basis:10px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-hand-label {margin-top:3px;height:22px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-table-stake {padding:3px 0 0;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-chip-caption {font-size:12px;grid-template-columns:12px auto;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-chip-caption .bj-gram-icon {width:12px;height:12px;flex-basis:12px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result {margin-top:3px;padding:4px;max-width:100%;font-size:8px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result strong {font-size:10px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result b {display:inline-flex;align-items:center;gap:4px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result .bj-gram-icon {width:12px;height:12px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-card-front {border-radius:5px;box-shadow:0 1px #b7aa88,0 3px 5px #001c1059;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-card-back {border-width:3px;border-radius:5px;}
@media(max-width:360px) {
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading {gap:2px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading :is(.icon-button,.bj-back-button,.bj-design-button) {flex-basis:36px;width:36px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance {font-size:15px;padding:6px 7px;gap:5px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel {gap:7px 8px;grid-template-columns:90px minmax(0,1fr);}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field {grid-template-columns:30px minmax(0,1fr) 15px 30px;gap:3px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field input {font-size:23px!important;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-step {width:30px;}
}
@media(max-height:620px) {
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen {gap:3px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel {gap:5px 8px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand>strong {font-size:16px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand>span {font-size:6px;}
}
@media(prefers-reduced-motion:reduce) {body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage::after,body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-deck {animation:none!important;}}
.reduce-motion .bj-fullscreen .bj-stage::after,.reduce-motion .bj-fullscreen .bj-deck {animation:none!important;}

/* Compact casino ledger: one premium surface for balance and the live table stake. */
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading{display:grid;grid-template-columns:40px minmax(126px,1fr) auto;gap:5px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-back-button{grid-column:1}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-ledger{grid-column:2;min-width:0;height:44px;display:grid;grid-template-columns:minmax(74px,1.34fr) minmax(52px,.9fr);overflow:hidden;border:1px solid #dcc79768;border-radius:15px;background:#0b211a99;box-shadow:inset 0 1px #fff2,0 2px 8px #05100b40}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance,body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-stake{position:relative;min-width:0;min-height:0;height:44px;margin:0;padding:5px 7px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;border:0;border-radius:0;background:none;box-shadow:none;color:#f7efd9;text-align:left}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance{padding-right:25px;border-right:1px solid #d7c28c30}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-ledger-label{display:block;font:650 6px/1 -apple-system,BlinkMacSystemFont,"SF Pro",sans-serif;letter-spacing:1.15px;text-transform:uppercase;color:#c8b994a8;white-space:nowrap}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-ledger-value{min-width:0;max-width:100%;display:flex;align-items:center;gap:4px;font:750 14px/1 -apple-system,BlinkMacSystemFont,"SF Pro",sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.35px;white-space:nowrap}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-ledger-value b{min-width:0;overflow:hidden;text-overflow:ellipsis;font:inherit}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-ledger-value .bj-gram-icon{width:13px;height:13px;flex-basis:13px}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance .bj-balance-plus{position:absolute;right:5px;bottom:7px;width:18px;height:18px;min-width:18px;flex-basis:18px;background:#9ba957;border:1px solid #f1dfa27a;color:#fff9e9;font-size:16px;font-style:normal}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-tools{grid-column:3;display:flex;align-items:center;gap:0}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-tools :is(.icon-button,.bj-design-button){width:38px;flex-basis:38px;padding:9px}
@media(max-width:360px){body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-heading{grid-template-columns:36px minmax(122px,1fr) auto;gap:2px}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-ledger{grid-template-columns:minmax(70px,1.32fr) minmax(50px,.88fr)}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-tools :is(.icon-button,.bj-design-button){width:36px;flex-basis:36px;padding:9px}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance,body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-stake{padding-left:5px;padding-right:5px}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance{padding-right:22px}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-ledger-value{font-size:12px;gap:3px}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-ledger-value .bj-gram-icon{width:11px;height:11px;flex-basis:11px}body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-top-balance .bj-balance-plus{right:4px;width:16px;height:16px;min-width:16px;font-size:14px}}

/* Keep the two hands near the centre rather than pinning them to opposite ends. */
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand.dealer {align-content:end;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand.player {align-content:start;}
/* Scores sit beside the hands, leaving vertical space for full-size card faces. */
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage .bj-table {--bj-card-width:clamp(36px,calc((100cqh - 94px)*.353),110px);}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand.dealer,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand.player {grid-template-rows:var(--bj-card-height);align-content:center;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand>.bj-hand-label {position:absolute;left:0;top:50%;transform:translateY(-50%);width:42px;height:auto;display:flex;flex-direction:column;gap:5px;text-align:center;font-size:6px;line-height:1.4;letter-spacing:.7px;z-index:12;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand.player>.bj-hand-label {flex-direction:column-reverse;}
@container(max-height:240px) {
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stage .bj-table {--bj-card-width:clamp(34px,calc((100cqh - 69px)*.353),90px);grid-template-rows:minmax(0,1fr) 28px minmax(0,1fr) 32px;row-gap:3px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-brand>strong {font-size:15px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-outcome {font-size:14px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-chip-caption {font-size:16px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-chip {width:28px;height:28px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-chip-stack {height:28px;width:28px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-stacks {min-height:28px;}
}
/* Reserve one dock height through dealing, play and result to avoid table jumps. */
/* Letterpress decoration remains inside the reserved branding row. */
body.bj-fullscreen-active .bj-fullscreen .bj-table.is-idle .bj-felt-rule{display:block;border-top:1px solid #e7d5a244;border-bottom:1px solid #e7d5a244;border-radius:50%;padding:9px 22px;font:italic 11px/1.4 Georgia,serif;color:#e7dbb68c;letter-spacing:.7px}
body.bj-fullscreen-active .bj-fullscreen .bj-table.is-idle .bj-turn-hint{display:none}
.bj-victory{position:absolute;inset:0;z-index:8;pointer-events:none;overflow:hidden;contain:layout paint}
.bj-victory-aura{position:absolute;left:50%;top:48%;width:280px;height:220px;border-radius:50%;background:radial-gradient(ellipse,#ffe9b24d,transparent 68%);animation:bj-victory-aura 2.2s ease-out both}
.bj-victory i{position:absolute;left:50%;top:48%;width:var(--vs);height:var(--vs);border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff5d4,#e6af49);box-shadow:0 0 9px #ffdb8060;opacity:0;animation:bj-victory-spark 2.2s var(--vd) cubic-bezier(.16,.65,.3,1) both}
@keyframes bj-victory-aura{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}18%,65%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.1)}}
@keyframes bj-victory-spark{0%{opacity:0;transform:translate(0,16px) scale(.4)}20%{opacity:.9}76%{opacity:.6}100%{opacity:0;transform:translate(var(--vx),var(--vy)) scale(.8)}}
body.bj-fullscreen-active .bj-fullscreen .bj-table[data-result=blackjack] .bj-outcome{font:italic 800 clamp(21px,6vw,30px)/1 Georgia,serif;color:#ffe5a1;text-shadow:0 2px 0 #614022,0 0 18px #d6a14b55}
body.bj-fullscreen-active .bj-fullscreen .bj-table[data-result=win] .bj-outcome{color:#ffe5a1;text-shadow:0 0 18px #d6a14b55}
.reduce-motion .bj-victory{display:none}
@media(prefers-reduced-motion:reduce){.bj-victory{display:none}}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen #bj-controls {flex:0 0 160px;display:flex;flex-direction:column;justify-content:flex-end;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen #bj-controls>.bj-play-actions {width:100%;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-feedback,
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-table-feedback:has(.bj-status:empty):has(.bj-table-bar:empty) {display:flex;flex:0 0 16px;height:16px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-resolving {height:160px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-result-badge {gap:2px;padding:0 4px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-result-badge:has(.bj-model-prize) .bj-outcome {font-size:13px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-model-prize {height:20px;min-height:20px;white-space:nowrap;overflow:hidden;max-width:100%;font-size:9px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-model-prize img {width:20px;height:20px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-model-prize .bj-gram-icon {width:12px;height:12px;flex-basis:12px;}
/* Split outcomes remain inside each lane, including a 320px Telegram viewport. */
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand.has-hand-result .bj-hand-label {display:none;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result {display:grid;grid-template-columns:1fr 1fr;gap:1px;padding:2px 0;min-height:0;height:auto;border:0!important;border-radius:0;background:none!important;box-shadow:none!important;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result[hidden] {display:none;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result small {grid-column:1/-1;font-size:7px;line-height:1.2;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result strong {font-size:10px;line-height:14px;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result b {font-size:11px;line-height:14px;justify-content:center;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-hand-result em {grid-column:1/-1;font-size:7px;line-height:1.2;}
body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand .bj-chip-caption small {font-size:6px;}
@media(max-height:620px) {
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen:has(.bj-split-hands) #bj-controls {flex-basis:104px;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen:has(.bj-split-hands) .bj-bet-panel .bj-chips {display:none;}
  body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-split-hand {--bj-card-width:clamp(34px,calc((100cqh - 230px)*.30),80px);}
}

/* classic-lobby.css */
/* Original artwork and two-column layout; current catalogue and live presence retained. */
.classic-mode-tile{min-width:0;margin:0}
.classic-mode-wide{grid-column:1/-1}
.classic-mode-tile>.game-mode-card{width:100%;display:block}
.modes-page .game-modes-grid[data-mode-panel]{margin-left:0;margin-right:0;row-gap:16px}
.mode-online{display:flex;align-items:center;gap:4px;min-width:0;margin-top:7px;min-height:16px;font:400 10px/16px -apple-system,BlinkMacSystemFont,"SF Pro",sans-serif;color:var(--tg-secondary);white-space:nowrap;font-variant-numeric:tabular-nums}
.mode-online i{width:5px;height:5px;flex:none;border-radius:50%;background:var(--tg-tertiary)}
.mode-online[data-available=true] i{background:#57e62c}.mode-online strong{font-weight:700;color:var(--tg-text)}
.light-theme .mode-online[data-available=true] i{background:#238c0b}
@media(min-width:390px){.mode-online{font-size:11px;gap:5px}.mode-online i{width:6px;height:6px}}
.mode-section{margin-top:24px;min-width:0}
.mode-section+.mode-section{margin-top:30px}
.mode-section-heading{display:flex;align-items:center;gap:12px;margin:0;color:var(--tg-secondary);font-size:12px;line-height:20px;font-weight:750;letter-spacing:1.2px}
.mode-section-heading:after{content:"";height:1px;flex:1;background:var(--tg-control-border)}

/* soft-casino.css */
/* Shared graphite surfaces and gift cards. Model artwork keeps its own traits. */
html[data-theme] body{--soft-panel:var(--tg-surface);--soft-inset:var(--tg-field);--soft-muted:var(--tg-secondary)}
html[data-theme] body .bottom-sheet{border-radius:36px 36px 0 0}
html[data-theme] body :is(.primary-button,.up-primary,.case-open-button){border-radius:999px;min-height:50px;font-weight:700}
html[data-theme=dark] body :is(.primary-button,.up-primary,.case-open-button):not(:disabled){background:linear-gradient(180deg,#168fe2,#0878bd);color:#fff;box-shadow:inset 0 1px 0 #ffffff20}
html[data-theme] body :is(.gift-owned-actions,.gift-native-table,.up-owned-detail dl){border-radius:24px;overflow:hidden}
html[data-theme] body :is(.up-gift,.gift-collection-card,.gift-picker-card,.case-catalog-item){position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;min-height:0;aspect-ratio:3/4;padding:25px 0 0;border:0;border-radius:23px;overflow:hidden;background:radial-gradient(ellipse at 50% 20%,#ffffff18,transparent 70%),linear-gradient(155deg,var(--gift-cover-top,#788ab0),var(--gift-cover-bottom,#435278));box-shadow:none;isolation:isolate}
html[data-theme] body :is(.up-gift,.gift-collection-card,.gift-picker-card,.case-catalog-item)>img:not(.up-unit){position:relative;inset:auto;z-index:1;width:85%;height:auto;min-height:0;flex:1;object-fit:contain;max-height:calc(100% - 42px);margin:0;filter:drop-shadow(0 6px 9px #00000018)}
html[data-theme] body :is(.gift-collection-card,.gift-picker-card)>.gift-art-static{position:relative;inset:auto;display:block;width:100%;height:auto;flex:1;min-height:0;margin:0;max-height:calc(100% - 42px)}
html[data-theme] body :is(.gift-collection-card,.gift-picker-card)>.gift-art-static img{width:100%;height:100%;object-fit:contain}
html[data-theme] body :is(.up-gift,.gift-collection-card,.gift-picker-card,.case-catalog-item)>strong{position:relative;z-index:2;inset:auto;display:block;flex:none;width:100%;min-height:42px;margin:0;padding:10px 9px 9px;border-radius:19px 19px 0 0;background:var(--soft-panel);color:var(--tg-text);font-size:12px;font-weight:600;line-height:1.25;text-align:left;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
html[data-theme] body :is(.up-gift>.up-price,.gift-collection-card>.gift-card-price,.gift-picker-card>.bet-gift-price,.case-catalog-item>.case-gift-price){position:absolute;z-index:3;left:8px;top:8px;bottom:auto;right:auto;display:flex;align-items:center;gap:3px;width:auto;max-width:calc(100% - 16px);height:21px;margin:0;padding:2px 6px;border:0;border-radius:999px;background:#15151b99;color:#fff;font-size:10px;font-weight:650;line-height:17px;white-space:nowrap;box-sizing:border-box}
html[data-theme] body .up-gift .up-price-value{color:#fff}
html[data-theme] body .up-gift .up-price .up-unit{width:13px;height:13px}
html[data-theme] body :is(.up-gift.is-selected,.gift-collection-card.selected,.gift-picker-card.active){outline:2px solid #39b9ff;outline-offset:2px;box-shadow:none}
html[data-theme] body :is(.up-gift,.gift-collection-card,.gift-picker-card) .gift-selection{top:8px;right:7px;bottom:auto}
html[data-theme] body :is(.up-gift,.gift-collection-card,.gift-picker-card):disabled{opacity:.5}
html[data-theme] body .up-gift-grid{gap:12px 9px;padding:3px}
/* Upgrade: one readable vertical flow; controls never overlay its catalogue. */
html[data-theme] body .game-section .upgrade-page[data-upgrade-view=upgrade]{display:flex;flex-direction:column;gap:0;height:auto;min-height:0;overflow:visible;padding-bottom:22px}
html[data-theme] body .game-section .upgrade-page[data-upgrade-view=upgrade] .up-main-heading{display:none}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge{width:min(var(--up-dial-size,244px),244px,78vw);margin:10px auto 18px}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge-track{stroke:var(--tg-surface);stroke-width:9;stroke-dasharray:none}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge-inner{stroke:var(--tg-control-border);stroke-width:.5}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge-ticks{stroke:var(--tg-control-border);stroke-width:.65}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge-chance{stroke:#39b9ff;stroke-width:9;filter:none;stroke-linecap:round}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge-caption strong{font-size:clamp(28px,9vw,40px);font-weight:750;letter-spacing:-1px}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge-caption span{color:var(--soft-muted);font-size:11px}
html[data-theme] body [data-upgrade-cosmos=true] .up-selections{width:100%;grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr);gap:5px}
html[data-theme] body [data-upgrade-cosmos=true] .up-selection{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:clamp(128px,37vw,156px);min-height:0;aspect-ratio:auto;padding:9px 8px 35px;border:1px solid var(--tg-control-border);border-radius:28px;background:radial-gradient(ellipse at 50% 50%,#249ce412,transparent 68%),var(--tg-field);box-shadow:none;overflow:hidden}
html[data-theme] body [data-upgrade-cosmos=true] .up-selection-label{position:static;order:-1;margin:0;color:var(--soft-muted);font-size:10px;line-height:16px;font-weight:500}
html[data-theme] body [data-upgrade-cosmos=true] .up-selection-art{position:relative;inset:auto;width:84px;height:84px;min-height:0;margin:0}
html[data-theme] body [data-upgrade-cosmos=true] .up-selection-art img{width:100%;height:100%;object-fit:contain}
html[data-theme] body [data-upgrade-cosmos=true] .up-selection-placeholder{width:48px;height:48px;margin:8px auto;color:#6b7180}
html[data-theme] body [data-upgrade-cosmos=true] .up-selection>strong{position:absolute;left:0;right:0;bottom:0;min-height:32px;display:flex;align-items:center;justify-content:center;padding:8px 5px;background:var(--tg-surface);border-radius:20px 20px 0 0;font-size:11px;line-height:15px;color:var(--tg-text);margin:0}
html[data-theme] body [data-upgrade-cosmos=true] .up-selection>.up-price{position:absolute;top:27px;left:8px;margin:0;font-size:10px;padding:3px 5px;border-radius:99px;background:var(--tg-surface);color:var(--tg-text)}
html[data-theme] body [data-upgrade-cosmos=true] .up-selection-rays{display:none}
html[data-theme] body [data-upgrade-cosmos=true] .up-selection[data-gift-chosen=true]{border-color:#39b9ff66}
html[data-theme] body .game-section .upgrade-page[data-upgrade-view=upgrade] .up-footer{position:static;left:auto;bottom:auto;transform:none;width:100%;max-width:none;padding:14px 0 0;margin:0;background:none;border:0;box-shadow:none}
html[data-theme] body .up-action-row{gap:10px;margin:0 0 12px}
html[data-theme] body .up-action-row>.up-primary{min-height:48px;font-size:17px}
html[data-theme] body .up-chance-presets{gap:7px;margin:0 0 8px}
html[data-theme] body :is(.up-chance-presets,.up-chance-limits)>button{border:1px solid transparent;border-radius:999px;background:var(--tg-surface);color:var(--tg-secondary);min-height:36px;font-size:12px;font-weight:650}
.up-chance-limits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
html[data-theme] body :is(.up-chance-presets,.up-chance-limits)>button[aria-pressed=true]{color:var(--tg-text);background:#158bd329;border-color:#39b9ff}
html[data-theme] body :is(.up-chance-presets,.up-chance-limits)>button:disabled{opacity:.42}
.up-presets-note{color:var(--tg-tertiary);font-size:10px;text-align:center;margin:8px 0 0;line-height:15px}
.up-inline-catalog{margin-top:22px;min-width:0;padding-top:14px;border-top:1px solid var(--tg-control-border)}
.up-catalog-tabs{display:flex;padding:4px;gap:4px;border-radius:999px;background:var(--tg-field)}
.up-catalog-tabs button{flex:1;border:0;border-radius:999px;background:transparent;color:var(--tg-secondary);min-height:42px;font:600 13px/18px inherit}
.up-catalog-tabs button[aria-pressed=true]{background:var(--tg-surface);color:var(--tg-text)}
.up-catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:20px 2px 10px}
.up-catalog-heading h3{margin:0;font-size:16px;letter-spacing:-.3px}
.up-catalog-shop{border:0;background:transparent;color:var(--tg-accent-text);padding:8px;font:600 12px/18px inherit}
html[data-theme] body .up-inline-catalog .up-search-collection{max-height:none;overflow:visible;padding:0;flex:none}
.up-catalog-empty{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:26px 12px;border-radius:24px;background:var(--tg-field)}
.up-catalog-empty>svg{width:40px;height:40px;fill:none;stroke:var(--tg-tertiary);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.up-catalog-empty strong{font-size:14px}.up-catalog-empty p{max-width:260px;font-size:12px;line-height:18px;color:var(--tg-secondary);margin:0}
html[data-theme] body [data-upgrade-landing=won] .up-gauge-chance{stroke:var(--tg-success)}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge.is-loss .up-gauge-chance{stroke:var(--tg-danger)}
@media(max-width:360px){html[data-theme] body :is(.up-gift,.gift-collection-card,.gift-picker-card,.case-catalog-item){border-radius:19px;padding-top:23px}html[data-theme] body :is(.up-gift,.gift-collection-card,.gift-picker-card,.case-catalog-item)>strong{font-size:10px;padding:8px 7px;min-height:38px}html[data-theme] body .up-gift-grid{gap:10px 7px}}
html[data-theme] body :is(.upgrade-app .up-gift,.gift-collection-card,.gift-picker-card,.case-catalog-item).gift-rarity-card[data-gift-rarity]{border:0;box-shadow:none}
html[data-theme] body :is(.up-gift:not(.is-selected),.gift-collection-card:not(.selected),.gift-picker-card:not(.active))>.ui-gift-check{display:none}
html[data-theme] body .up-inline-catalog .gift-search-field{border-radius:999px;background:var(--tg-surface);border:0}
html[data-theme] body .up-inline-catalog .gift-sort-toolbar{margin:0 0 10px}
html[data-theme] body .up-inline-catalog .gift-search-toolbar{margin-bottom:8px}
html[data-theme] body :is(.up-gift,.gift-collection-card,.gift-picker-card,.case-catalog-item)>strong{margin-top:auto}
:root[data-theme=dark]{--tg-sheet:#151519}
.up-catalog-tabs button{font-family:inherit;font-size:13px;font-weight:600;line-height:18px}
.up-catalog-shop{font-family:inherit;font-size:12px;font-weight:600;line-height:18px}
/* Older inventory skins used important backgrounds; replace only the tile surface. */
html[data-theme] body :is(.up-gift,.gift-collection-card,.gift-picker-card,.case-catalog-item){background:radial-gradient(ellipse at 50% 20%,#ffffff18,transparent 70%),linear-gradient(155deg,var(--gift-cover-top,#788ab0),var(--gift-cover-bottom,#435278))!important}
html[data-theme] body :is(.gift-collection-card,.gift-picker-card)>.gift-art-static{background-color:transparent!important;border-radius:0}
html[data-theme] body :is(.gift-collection-card,.gift-picker-card)>.gift-art-static img{padding:0}
/* The genuine backdrop belongs to the entire card, not its smaller art slot. */
html[data-theme] body :is(.gift-collection-card,.gift-picker-card)>.gift-combination-art{position:static;isolation:auto;overflow:visible}
html[data-theme] body :is(.gift-collection-card,.gift-picker-card)>.gift-combination-art>.gift-combination-backdrop{inset:0 auto auto 50%;width:auto;height:100%;aspect-ratio:1;min-width:100%;max-width:none;max-height:none;border-radius:0;transform:translateX(-50%)}
html[data-theme] body :is(.gift-card-price,.bet-gift-price,.case-gift-price),html[data-theme] body .gift-card-price>span{color:#fff!important}
html[data-theme] body :is(.up-gift,.gift-collection-card,.gift-picker-card,.case-catalog-item)>strong{color:var(--tg-text)!important}
html[data-theme] body .case-gift-price .case-unit-icon{width:12px;height:12px;flex:none;margin:0}
html[data-theme] body .case-gift-price .case-unit-icon{position:static!important;width:12px!important;height:12px!important;min-width:12px;max-width:12px;max-height:12px;object-fit:contain;padding:0!important;margin:0;flex:0 0 12px}

/* shop-profile.css */
/* Rounded shop controls and profile surfaces share the existing graphite palette. */
html[data-theme] body :is(.up-primary,.up-buy-button,.profile-page button,.up-catalog-tabs button,.up-catalog-sources button){font-family:inherit;line-height:1.2;text-align:center}
.gift-price-bounds{display:flex;align-items:center;gap:7px;background:var(--tg-field);border:1px solid var(--tg-control-border);border-radius:999px;padding:5px 10px;margin:10px 0 0;min-width:0}
.gift-price-bounds>span{flex:none;color:var(--tg-secondary);font-size:12px}
.gift-price-bounds input{min-width:0;width:0;flex:1;height:34px;border:0;outline:none;background:transparent;color:var(--tg-text);font:400 16px/22px inherit;text-align:center;border-radius:999px}
.gift-price-bounds input:focus{background:var(--tg-surface)}
.gift-price-bounds input[aria-invalid=true]{outline:1px solid var(--tg-danger)}
.up-catalog-sources{display:flex;align-items:center;gap:5px;padding:5px;border-radius:999px;background:var(--tg-field);margin:12px 0 0}
.up-catalog-sources button{flex:1;min-height:38px;border:0;border-radius:999px;background:none;color:var(--tg-secondary);font-size:13px;font-weight:600}
.up-catalog-sources button[aria-pressed=true]{background:var(--tg-accent);color:#fff}
html[data-theme] body .up-gift.is-selected{outline:none;border:2px solid #3bbcff!important;box-shadow:inset 0 0 0 200px #148dd840!important}
html[data-theme] body .up-gift.is-selected:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#198bce12,#168fda55);z-index:2;pointer-events:none}
html[data-theme] body .up-gift.is-selected>.ui-gift-check{position:absolute;display:grid;place-items:center;width:32px;height:32px;left:50%;top:38%;right:auto;bottom:auto;transform:translate(-50%,-50%);border-radius:50%;z-index:5;background:#38baff;color:#092030;border:0;box-shadow:0 3px 12px #0003}
html[data-theme] body .up-gift.is-selected>.ui-gift-check svg{width:19px;height:19px}
html[data-theme] body .up-shop-purchase{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:72px;border-radius:26px;background:var(--tg-sheet);padding:10px 12px;box-shadow:0 -8px 24px #0002}
html[data-theme] body .up-shop-purchase .up-buy-button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:108px;min-height:48px;padding:12px 16px;margin:0;font-size:15px;white-space:nowrap}
.up-buy-button svg,.up-basket-clear svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.up-basket-clear{display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:var(--tg-surface);color:var(--tg-secondary)}
.up-basket-clear:disabled{opacity:.35}
.up-basket-summary{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0}
.up-basket-summary>span{font-size:10px;color:var(--tg-secondary);text-align:center}
.up-basket-summary>strong{font-size:15px;line-height:20px;display:flex;align-items:center;justify-content:center;gap:4px;max-width:100%;white-space:nowrap}
html[data-theme] body .up-inline-catalog>.up-shop-purchase{position:fixed;z-index:10;left:50%;transform:translateX(-50%);bottom:var(--up-purchase-bottom,calc(88px + var(--safe-bottom,0px)));width:calc(100% - 28px);max-width:410px;margin:0}
html[data-theme] body .up-inline-catalog:has(>.up-shop-purchase){padding-bottom:95px}
html[data-theme] body .bottom-sheet.upgrade-sheet .upgrade-app .up-shop-purchase{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:8px;padding:10px 0 calc(12px + max(0px,calc(var(--safe-bottom,0px) - var(--sheet-keyboard-bottom,0px))))}
html[data-theme] body .profile-page{position:relative;gap:16px;padding:4px 0 20px}
html[data-theme] body .profile-heading{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;text-align:left;gap:6px 13px;padding:14px 4px 8px}
html[data-theme] body .profile-heading .avatar{grid-row:1/3;width:56px;height:56px;margin:0;outline:none;border:0}
html[data-theme] body .profile-heading h1{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px;margin:0;font-size:17px;line-height:23px;overflow-wrap:anywhere;text-align:left}
html[data-theme] body .profile-heading [data-profile-level]{min-width:0}
html[data-theme] body .profile-heading .profile-level{margin:0;max-width:230px;width:100%;text-align:left}
html[data-theme] body .profile-heading .profile-level-top{justify-content:flex-start}
html[data-theme] body .profile-balance-card{padding:18px 14px 12px;background:radial-gradient(ellipse at 50% 0%,#168fce12,transparent 68%);border:0;border-radius:28px}
html[data-theme] body .profile-balance-card .wallet-topline{display:flex;flex-direction:column-reverse;align-items:center;gap:18px}
html[data-theme] body .profile-balance-card .wallet-connect-link{display:flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;padding:10px 16px;background:var(--tg-field);font-size:12px;line-height:18px}
html[data-theme] body .profile-balance-card .wallet-label{margin:0;color:var(--tg-secondary);font-size:13px;text-align:center}
html[data-theme] body .profile-balance-card .wallet-amount{display:flex;justify-content:center;align-items:center;gap:7px;font-size:clamp(32px,10vw,44px);line-height:1.15;color:var(--tg-text);margin:10px 0 22px;min-width:0;flex-wrap:wrap}
html[data-theme] body .profile-balance-card .wallet-unit{font-size:11px;align-self:center;line-height:16px}
html[data-theme] body .profile-balance-card .wallet-actions button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:48px;font-size:14px;font-weight:650}
.profile-quick-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.profile-quick-links button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;padding:16px;border:0;border-radius:26px;background:var(--tg-field);color:var(--tg-text)}
.profile-quick-links strong{font-size:15px;font-weight:650;line-height:20px}.profile-quick-links button>span:last-child{font-size:11px;color:var(--tg-secondary)}
.profile-action-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--tg-surface);color:var(--tg-accent-text)}
.profile-action-icon .icon{width:18px;height:18px}
html[data-theme] body .profile-referrals{border-radius:28px;padding:18px;background:var(--tg-field)}
html[data-theme] body .profile-referrals h2{font-size:18px;line-height:25px;font-weight:650;margin-bottom:14px;text-align:left}
html[data-theme] body .profile-referrals .referral-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
html[data-theme] body .profile-referrals .referral-stats>*{display:flex;flex-direction:column-reverse;justify-content:center;align-items:flex-start;gap:7px;padding:15px 12px;border:0;border-radius:23px;background:var(--tg-surface);min-width:0;min-height:90px}
html[data-theme] body .profile-referrals .referral-stats strong{display:flex;align-items:center;gap:5px;font-size:23px;color:var(--tg-text);line-height:28px;max-width:100%}
html[data-theme] body .profile-referrals .referral-stats>*>span{font-size:11px;line-height:16px}
html[data-theme] body .profile-referrals .referral-count-arrow{top:18px;right:10px}
html[data-theme] body .profile-referrals .referral-link-row{border:0;border-radius:999px;background:var(--tg-surface);padding:5px}
html[data-theme] body .profile-referrals .referral-link-row input{min-width:0;font-size:12px}
html[data-theme] body .profile-referrals .referral-link-row button{width:40px;height:40px;flex:none;border-radius:50%;background:var(--tg-raised)}
html[data-theme] body .profile-referrals .referral-share{min-height:48px;border-radius:999px;font-weight:650}
html[data-theme] body .profile-rewards{padding:16px 18px;border:0;border-radius:26px;background:var(--tg-field)}
/* Keyboard shrinks the visible viewport; navigation yields space to editing. */
html[data-theme] body.keyboard-open :is(.bottom-nav,.nav-fade){display:none!important}
html[data-theme] body.keyboard-open .up-inline-catalog>.up-shop-purchase{bottom:calc(var(--keyboard-inset,0px) + 8px)}
html[data-theme] body.keyboard-open .up-inline-catalog .up-search-collection{padding-bottom:95px}
html[data-theme] body :is(input,textarea){scroll-margin-block:24px;scroll-padding-block:24px}
html[data-theme] body.keyboard-open .game-section{min-height:0}
html[data-theme] body.keyboard-open .up-shop-purchase{animation:none!important}
html[data-theme] body.keyboard-open .up-inline-catalog{scroll-padding-bottom:100px}
@media(max-width:360px){.up-basket-summary>strong{font-size:13px}html[data-theme] body .up-shop-purchase .up-buy-button{min-width:88px;padding:10px 12px;font-size:13px}.profile-quick-links button{padding:14px}.profile-quick-links strong{font-size:13px}html[data-theme] body .profile-referrals{padding:15px}}
html[data-theme] body .game-section .upgrade-page[data-upgrade-view=upgrade] .up-inline-catalog>.up-shop-purchase{position:fixed;z-index:10;left:50%;transform:translateX(-50%);bottom:var(--up-purchase-bottom,calc(88px + var(--safe-bottom,0px)));width:calc(100% - 28px);max-width:410px;background:var(--tg-sheet);padding:10px 12px;border-radius:26px;box-shadow:0 -8px 24px #0002}
html[data-theme] body.keyboard-open .game-section .upgrade-page[data-upgrade-view=upgrade] .up-inline-catalog>.up-shop-purchase{bottom:calc(var(--keyboard-inset,0px) + 8px)}
html[data-theme] body .upgrade-app .up-search-collection:has(.gift-search-toolbar){position:relative}
html[data-theme] body .upgrade-app .up-search-collection:has(.gift-search-toolbar)>.gift-sort-toolbar{position:absolute;top:0;left:0;z-index:3;margin:0}
html[data-theme] body .upgrade-app .up-search-collection .gift-search-field{width:calc(100% - 52px);margin-left:52px}
.gift-price-bounds input{font-family:inherit;font-size:16px;line-height:22px}
html[data-theme] body .up-basket-summary>.up-price .up-unit{width:16px;height:16px;flex:none}
html[data-theme] body .profile-balance-card{background:radial-gradient(ellipse at 50% 0%,#168fce12,transparent 68%),var(--tg-field)!important}
html[data-theme] body .profile-referrals{background:var(--tg-field)!important}
html[data-theme] body .profile-referrals .referral-stats>*{background:var(--tg-surface)!important;border-radius:23px!important}
html[data-theme] body .profile-referrals .referral-friends-trigger:disabled{opacity:1}
html[data-theme] body .profile-referrals .referral-stats strong{color:var(--tg-text)!important;font-weight:700}
html[data-theme] body .profile-balance-card .ton-coin{width:28px;height:28px;flex:none}
html[data-theme] body .profile-balance-card .ton-coin :is(svg,img){width:28px;height:28px}
html[data-theme] body .up-basket-summary .up-price-value{color:var(--tg-text)}
html[data-theme] body .inventory-page .upgrade-app .up-shop-purchase{width:calc(100% - 28px);max-width:410px;padding:10px 12px;background:var(--tg-sheet);box-shadow:0 -8px 24px #0002}
html[data-theme] body.keyboard-open .inventory-page .upgrade-app .up-shop-purchase{bottom:calc(var(--keyboard-inset,0px) + 8px)}

/* game-polish.css */
/* Shared game chrome. Artwork, felt, odds and outcome colours remain independent. */
html[data-theme] body :is(.gift-picker-card,.gift-collection-card,.up-gift,.rolls-select-gift,.cf-select-gift){isolation:isolate;overflow:hidden;box-sizing:border-box}
/* An inset pseudo-element does not resize the selected card or escape its clip. */
html[data-theme] body :is(.gift-picker-card.active,.gift-collection-card.selected,.up-gift.is-selected,.rolls-select-gift.is-selected,.cf-select-gift.is-selected){outline:none!important;border:0!important;box-shadow:none!important}
html[data-theme] body :is(.gift-picker-card.active,.gift-collection-card.selected,.up-gift.is-selected,.rolls-select-gift.is-selected,.cf-select-gift.is-selected)::after{content:"";position:absolute;inset:0;z-index:6;border:2px solid #39b9ff;border-radius:inherit;box-sizing:border-box;background:linear-gradient(180deg,#159cdc08,#159cdc22);pointer-events:none}
html[data-theme] body :is(.gift-picker-card,.gift-collection-card,.up-gift,.rolls-select-gift,.cf-select-gift):focus-visible{outline:2px solid var(--tg-accent-text)!important;outline-offset:-5px}
html[data-theme] body :is(.gift-picker-card.active,.gift-collection-card.selected,.up-gift.is-selected,.rolls-select-gift.is-selected,.cf-select-gift.is-selected)>:is(.ui-gift-check,.cf-gift-check){position:absolute;display:grid;place-items:center;left:50%;top:40%;right:auto;bottom:auto;width:30px;height:30px;z-index:7;transform:translate(-50%,-50%);border:0;border-radius:50%;background:#38baff;color:#092030;box-shadow:none;font-size:18px;font-weight:700;opacity:1}
html[data-theme] body :is(.gift-picker-card,.rolls-select-gift)>.ui-gift-check svg{width:18px;height:18px}
html[data-theme] body :is(.rolls-select-gift,.cf-select-gift):not(.is-selected)>:is(.ui-gift-check,.cf-gift-check){display:none}
/* PvP pickers use the same price / artwork / title composition as inventory. */
html[data-theme] body :is(.rolls-gift-grid,.cf-gift-grid){grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-content:start}
html[data-theme] body :is(.rolls-select-gift,.cf-select-gift){position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;min-height:0;aspect-ratio:3/4;padding:26px 0 0;border:0;border-radius:23px;background:radial-gradient(ellipse at 50% 20%,#ffffff18,transparent 70%),linear-gradient(155deg,var(--gift-cover-top,#788ab0),var(--gift-cover-bottom,#435278))!important;box-shadow:none}
html[data-theme] body :is(.rolls-select-gift,.cf-select-gift)>:is(.rolls-gift-image,.cf-gift-image){position:relative;display:block;inset:auto;width:100%;height:auto;min-height:0;max-height:calc(100% - 42px);flex:1;object-fit:contain;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
html[data-theme] body .rolls-select-gift .gift-art-static{display:block;width:100%;height:100%;aspect-ratio:auto;background:transparent;border:0;border-radius:0;box-shadow:none}
html[data-theme] body .rolls-select-gift .gift-art-static>img{width:100%;height:100%;object-fit:contain;padding:0}
/* Genuine NFT backgrounds cover the card, independently of its art slot.
   A square SVG also covers correctly when an older cached module uses meet. */
html[data-theme] body .rolls-select-gift>.rolls-gift-image:has(.gift-combination-art),html[data-theme] body .rolls-select-gift .gift-combination-art{position:static;isolation:auto;overflow:visible}
html[data-theme] body :is(.up-gift,.up-selection,.cf-select-gift)>.gift-combination-backdrop,html[data-theme] body .rolls-select-gift .gift-combination-backdrop{inset:0 auto auto 50%;width:auto;height:100%;aspect-ratio:1;min-width:100%;max-width:none;max-height:none;border-radius:0;transform:translateX(-50%);z-index:0}
html[data-theme] body .cf-select-gift>.cf-gift-image{z-index:1}
html[data-theme] body .rolls-select-gift .gift-combination-art>img{position:relative;z-index:1}
html[data-theme] body .up-selection:has(>.gift-combination-backdrop)>.up-selection-rays{display:none}
html[data-theme] body .up-selection:has(>.gift-combination-backdrop)>:is(.up-selection-label,.up-selection-art,strong,.up-price){z-index:1}
html[data-theme] body .up-selection:has(>.gift-combination-backdrop)>.up-selection-label{padding:2px 7px;border-radius:999px;background:#15151bbd;color:#fff}
html[data-theme] body :is(.rolls-select-gift,.cf-select-gift)>strong{position:relative;z-index:2;display:flex;align-items:center;flex:none;width:100%;min-height:42px;margin:auto 0 0;padding:9px 8px;border-radius:19px 19px 0 0;background:var(--tg-surface);color:var(--tg-text);font-size:12px;font-weight:600;line-height:1.25;text-align:left;white-space:normal;overflow-wrap:anywhere}
html[data-theme] body :is(.rolls-select-gift>.rolls-money,.cf-select-gift>.cf-money){position:absolute;z-index:3;top:8px;left:8px;display:flex;align-items:center;justify-content:flex-start;gap:3px;max-width:calc(100% - 16px);height:21px;padding:2px 6px;margin:0;border-radius:999px;background:#15151b99;color:#fff;font-size:10px;font-weight:650;line-height:17px;white-space:nowrap}
html[data-theme] body :is(.rolls-select-gift,.cf-select-gift) :is(.rolls-unit,.cf-unit){width:12px;height:12px;flex:none}
html[data-theme] body :is(.rolls-select-gift,.cf-select-gift):disabled{opacity:.5}
/* Short, consistent controls with readable numbers and comfortable touch targets. */
html[data-theme] body :is(.mines-primary,.rolls-primary,.cf-primary,.bj-deal){display:flex;align-items:center;justify-content:center;gap:7px;border-radius:999px;font-family:inherit;line-height:1.25;text-align:center;min-height:50px}
html[data-theme=dark] body :is(.mines-primary,.rolls-primary,.cf-primary,.bj-deal):not(:disabled){background:linear-gradient(180deg,#168fe2,#0878bd);color:#fff;border-color:transparent;box-shadow:inset 0 1px 0 #ffffff20}
html[data-theme] body :is(.mines-icon,.rolls-icon-button,.rolls-wallet-add,.cf-wallet-plus){display:grid;place-items:center;border:1px solid var(--tg-control-border);border-radius:50%;background:var(--tg-field);color:var(--tg-text)}
html[data-theme] body :is(.mines-icon,.rolls-icon-button){width:40px;height:40px;min-width:40px}
html[data-theme] body .mines-page .mines-controls{background:var(--tg-field);border:1px solid var(--tg-control-border);border-radius:26px;padding:12px;gap:10px}
html[data-theme] body .mines-page .mines-counts{gap:8px}
html[data-theme] body .mines-page .mines-counts button{min-height:40px;border-radius:999px;background:var(--tg-surface);border:1px solid transparent;color:var(--tg-secondary);font-family:inherit}
html[data-theme] body .mines-page .mines-counts button[aria-pressed=true]{background:var(--tg-accent-soft,#158bd329);border-color:var(--tg-accent-text);color:var(--tg-accent-text)}
html[data-theme] body .mines-page .mines-amount-row>button{border-radius:50%;background:var(--tg-surface);border:0;color:var(--tg-text)}
html[data-theme] body .mines-page .mines-amount-row label{border-radius:999px;background:var(--tg-surface);border:1px solid var(--tg-control-border)}
html[data-theme] body .mines-page .mines-amount-row input{color:var(--tg-text);font-family:inherit}
html[data-theme] body .mines-page .mines-gift-pick{border-radius:20px;background:var(--tg-surface);border:1px solid var(--tg-control-border);color:var(--tg-text);min-height:48px}
html[data-theme] body .mines-page .mines-coefficients>span{border-radius:14px;background:var(--tg-field);border:1px solid var(--tg-control-border)}
html[data-theme] body .mines-page .mines-coefficients strong{color:var(--tg-text)}
html[data-theme] body .mines-page .mines-coefficients small{color:var(--tg-secondary)}
html[data-theme] body .mines-page .mines-coefficients .active{border-color:var(--tg-accent-text)}
/* Blackjack retains its table and chips; only its surrounding controls change. */
html[data-theme] body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-bet-panel{padding:12px;border:1px solid var(--tg-control-border);border-radius:26px;background:var(--tg-field);box-shadow:none}
html[data-theme] body.bj-fullscreen-active .blackjack-page.bj-fullscreen :is(.bj-amount-field,.bj-gift-choice){border:1px solid var(--tg-control-border);border-radius:22px;background:var(--tg-surface);color:var(--tg-text)}
html[data-theme] body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field input{color:var(--tg-text)!important;-webkit-text-fill-color:var(--tg-text);caret-color:var(--tg-accent-text)}
html[data-theme] body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-field>span{color:var(--tg-secondary)}
html[data-theme] body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-amount-step{background:var(--tg-field);border:0;color:var(--tg-text)}
html[data-theme] body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch{padding:4px;border:1px solid var(--tg-control-border);border-radius:999px;background:var(--tg-field)}
html[data-theme] body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch>button{border-radius:999px;color:var(--tg-secondary)}
html[data-theme] body.bj-fullscreen-active .blackjack-page.bj-fullscreen .bj-room-switch>button[aria-pressed=true]{background:var(--tg-surface);border-color:var(--tg-control-border);box-shadow:none;color:var(--tg-text)}
html[data-theme] body :is(.cf-side-option,.cf-match,.cf-room){border-radius:24px}
html[data-theme] body .cf-gift-sheet{border-radius:36px 36px 0 0;background:var(--tg-sheet)}
html[data-theme] body :is(.cf-tabs,.arena-history-tabs){border-radius:999px;padding:4px;background:var(--tg-field)}
html[data-theme] body :is(.cf-tabs,.arena-history-tabs)>button{border-radius:999px;font-family:inherit;line-height:1.25}
html[data-theme] body :is(.rolls-amount-field,.cf-amount-field)>div{border-radius:999px;background:var(--tg-field)}
html[data-theme] body :is(.rolls-amount-field,.cf-amount-field) input{font-family:inherit;font-size:16px}
html[data-theme] body :is(.mines-reward-actions button,.rolls-text-button,.cf-text-button){border-radius:999px;font-family:inherit}
html[data-theme] body :is(.mines-amount-row label,.bj-amount-field,.rolls-amount-field>div,.cf-amount-field>div):focus-within{border-color:var(--tg-accent-text);box-shadow:inset 0 0 0 1px var(--tg-accent-text)}
@media(max-width:360px){html[data-theme] body :is(.rolls-gift-grid,.cf-gift-grid){gap:8px}html[data-theme] body :is(.rolls-select-gift,.cf-select-gift){border-radius:19px}html[data-theme] body :is(.rolls-select-gift,.cf-select-gift)>strong{font-size:10px;min-height:38px;padding:8px 7px}html[data-theme] body .mines-page .mines-controls{padding:10px;gap:8px}}

/* community.css */
/* Community screens: graphite panels, blue actions, quiet coloured light. */
html[data-theme] body:not(.game-section-view):not(.mines-view):not(.bj-fullscreen-active) .app-header[data-community-header]{display:block;height:auto;min-height:112px;padding:calc(14px + var(--safe-top,0px)) max(14px,var(--safe-right,0px)) 12px max(14px,var(--safe-left,0px))}
.community-bar{display:flex;align-items:center;gap:9px;width:100%;min-width:0}
.community-avatar{flex:none;width:42px;height:42px;padding:0;border:0;border-radius:50%;overflow:hidden;background:var(--tg-raised);color:var(--tg-accent-text);font:700 20px/1 inherit}
.community-avatar>span{display:grid;place-items:center;width:100%;height:100%;font-family:inherit;font-size:20px;line-height:1}.community-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.community-wallet{display:flex;align-items:center;justify-content:space-between;gap:5px;min-width:0;flex:1;padding:4px;border-radius:999px;background:var(--tg-field)}
.community-balance{display:flex;align-items:center;justify-content:center;gap:5px;padding:6px;min-width:0;max-width:55%;border:0;background:none;color:var(--tg-text);font-family:inherit}
.community-balance strong{min-width:0;font-size:13px;line-height:18px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}
.community-balance img{flex:none;width:19px;height:19px}
.community-deposit{display:flex;align-items:center;justify-content:center;gap:3px;min-height:38px;padding:8px 11px;border:0;border-radius:999px;background:var(--tg-accent);color:#fff;font-family:inherit;font-size:13px;font-weight:700;line-height:18px}
.community-deposit .icon{width:15px;height:15px}
.community-settings{flex:none;display:grid;place-items:center;width:32px;height:38px;border:0;border-radius:999px;background:var(--tg-field);color:var(--tg-text)}.community-settings .icon{width:23px;height:23px}
.community-stats{display:flex;align-items:center;justify-content:center;gap:16px;margin:12px 0 0;min-height:20px;color:var(--tg-secondary)}
.community-stats>span{display:flex;align-items:center;gap:5px;min-width:0}.community-stats .icon{width:15px;height:15px;flex:none;color:var(--tg-accent-text)}
.community-stats strong{font-size:12px;line-height:17px;font-weight:650;color:var(--tg-text);font-variant-numeric:tabular-nums}.community-stats small{font-size:10px;line-height:14px}
html[data-theme] body .bottom-sheet.earnings-sheet{background:radial-gradient(ellipse at 85% 0%,#2776cf22,transparent 360px),var(--tg-sheet);padding:52px 16px 20px;border-radius:36px 36px 0 0}
.earn-page>.community-stats{margin-bottom:22px}
.earn-page>.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.earn-section-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:5px;background:var(--tg-field);border-radius:999px;margin:8px 0 24px}
.earn-section-tabs button{min-height:42px;border:0;border-radius:999px;background:transparent;color:var(--tg-secondary);font-family:inherit;font-size:14px;font-weight:600}
.earn-section-tabs button[aria-selected=true]{background:var(--tg-surface);color:var(--tg-text)}
html[data-theme] body .earn-heading{text-align:left;margin:24px 2px}.earn-heading>.earn-sticker{display:none!important}
html[data-theme] body :is(.earn-heading h2,.earn-detail-hero h2,.giveaway-heading h2){font-size:29px;line-height:1.12;letter-spacing:-.6px;font-weight:750;margin:0 0 12px}
html[data-theme] body :is(.earn-heading p,.earn-detail-hero p,.giveaway-heading p){font-size:14px;line-height:21px;color:var(--tg-secondary);margin:0}
html[data-theme] body .earn-card{padding:18px 15px;min-height:112px;border:1px solid var(--tg-control-border);border-radius:28px;background:radial-gradient(ellipse at 0 100%,color-mix(in srgb,var(--earn-accent) 10%,transparent),transparent 70%),var(--tg-field);display:grid;grid-template-columns:48px minmax(0,1fr) 16px;gap:8px 12px}
html[data-theme] body .earn-card>.earn-icon{grid-row:1/3;width:48px;height:48px}.earn-card>.earn-card-copy{grid-column:2}.earn-card>.earn-reward{grid-column:2;grid-row:2;font-size:13px;justify-self:start;padding:5px 10px;border-radius:999px;background:var(--tg-surface)}.earn-card>.earn-chevron{grid-column:3;grid-row:1/3}
html[data-theme] body .earn-card-copy strong{font-size:16px;line-height:21px;font-weight:650}html[data-theme] body .earn-card-copy small{font-size:12px;line-height:18px}
html[data-theme] body .earn-detail-hero{text-align:left;padding:22px 18px;border:0;border-radius:28px;background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--earn-accent) 20%,transparent),transparent 70%),var(--tg-field)}
html[data-theme] body .earn-detail-hero>.earn-icon{margin:0 0 16px;width:48px;height:48px}.earn-detail-hero .earn-hero-amount{justify-content:flex-start}.earn-detail-hero .earn-hero-amount>.earn-counter{text-align:left;min-width:0;font-size:42px}
html[data-theme] body .earn-detail-hero.earn-tiktok{background:radial-gradient(ellipse at 100% 0%,#2fd8ce15,transparent 75%);padding:10px 4px 18px;border-radius:24px}html[data-theme] body .earn-detail-hero.earn-tiktok>.earn-icon{width:36px;height:36px;margin-bottom:10px}html[data-theme] body .earn-detail-hero.earn-tiktok h2{font-size:26px}.earn-detail-hero.earn-tiktok .earn-hero-amount{margin-top:12px}.earn-detail-hero.earn-tiktok .earn-hero-amount>.earn-counter{font-size:36px}
html[data-theme] body .earn-panel{padding:20px 16px;border:0;border-radius:28px;background:var(--tg-field);margin:16px 0}html[data-theme] body .earn-panel h3{font-size:17px;line-height:23px;font-weight:650;margin-bottom:18px}html[data-theme] body .earn-panel p{font-size:12px;line-height:19px}
.earn-rate-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.earn-rate-tabs button{border:1px solid transparent;background:var(--tg-surface);border-radius:999px;color:var(--tg-secondary);font-family:inherit;font-size:11px;line-height:17px;padding:7px 10px}.earn-rate-tabs button[aria-pressed=true]{border-color:var(--tg-accent-text);color:var(--tg-accent-text)}
.earn-rate-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.earn-rate-card{display:flex;flex-direction:column;align-items:center;gap:5px;padding:18px 5px 8px;min-width:0;background:var(--tg-surface);border-radius:23px;text-align:center}.earn-rate-card>strong{font-size:17px;font-weight:750;letter-spacing:-.5px;line-height:23px;white-space:nowrap}.earn-rate-card>span{font-size:10px;color:var(--tg-secondary)}.earn-rate-card>b{width:100%;padding:9px 3px;margin-top:20px;border-radius:999px;background:var(--tg-raised);color:var(--tg-accent-text);font-size:13px}.earn-rate-card:last-child{box-shadow:inset 0 0 0 1px var(--tg-accent-text)}.earn-rate-card:last-child>b{background:var(--tg-accent);color:#fff}
html[data-theme] body .earn-steps{gap:0;background:var(--tg-surface);border-radius:23px;padding:6px 14px}.earn-steps li{padding:14px 0 14px 36px;line-height:20px;font-size:13px;color:var(--tg-text)}.earn-steps li+li{border-top:1px solid var(--tg-control-border)}html[data-theme] body .earn-steps li:before{top:14px;border-radius:50%;width:24px;height:24px;background:var(--tg-accent);color:#fff}
html[data-theme] body :is(.earn-primary,.earn-resource){border-radius:999px;min-height:50px;font-size:14px;font-family:inherit;line-height:20px;text-align:center}.earn-back{min-height:40px;font-family:inherit;font-size:14px}
/* Background light is contained behind the profile, never above its controls. */
html[data-theme] body .profile-page{isolation:isolate}html[data-theme] body .profile-page::before{content:"";position:absolute;z-index:-1;pointer-events:none;top:-140px;left:-14px;right:-14px;height:370px;background:radial-gradient(ellipse at 20% 0%,#1498e855,transparent 65%),radial-gradient(ellipse at 95% 0%,#805be52b,transparent 65%);border-radius:0 0 44px 44px}
html[data-theme=light] body .profile-page::before{opacity:.4}
.giveaway-heading{margin:24px 2px}.giveaway-toolbar{display:flex;align-items:center;gap:9px;margin:20px 0}.giveaway-toolbar>span{flex:1;min-width:0;font-size:13px;color:var(--tg-secondary)}.giveaway-toolbar button,.giveaway-info{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:50%;border:0;background:var(--tg-surface);color:var(--tg-text);font-size:24px;line-height:1}.giveaway-toolbar .giveaway-add{background:var(--tg-accent);color:#fff;font-size:28px}
.giveaway-toolbar button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html[data-theme] body .bottom-sheet.earnings-sheet{padding-top:68px}
.giveaway-banner{position:relative;isolation:isolate;overflow:hidden;padding:17px 14px 14px;margin:14px 0;border-radius:30px;background:radial-gradient(ellipse at 100% 35%,color-mix(in srgb,var(--gift-cover-top) 40%,transparent),transparent 72%),var(--tg-field);border:1px solid var(--tg-control-border)}
.giveaway-creator{display:flex;align-items:center;gap:9px;margin-bottom:19px;min-height:36px}.giveaway-avatar{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;background:var(--tg-raised);color:var(--tg-accent-text);font-size:16px;font-weight:650}.giveaway-creator>span:nth-child(2){min-width:0;flex:1}.giveaway-creator small{display:block;color:var(--tg-secondary);font-size:10px;margin-bottom:4px}.giveaway-creator strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650}.giveaway-info{width:30px;height:30px;font:600 16px/1 Georgia,serif;border:1px solid var(--tg-control-border)}
.giveaway-prize{position:relative;min-height:180px}.giveaway-copy h3{max-width:53%;font-size:18px;line-height:24px;margin:0 0 8px;font-weight:650;overflow-wrap:anywhere}.giveaway-price{display:flex;align-items:center;gap:5px;color:var(--tg-text);font-size:13px;font-weight:650}.giveaway-price img{width:15px;height:15px;flex:none}
.giveaway-avatar{overflow:hidden}.giveaway-avatar img{width:100%;height:100%;object-fit:cover}
.giveaway-art{position:absolute;right:0;top:0;width:43%;aspect-ratio:1;transform:rotate(8deg);border-radius:26px;overflow:hidden;background:linear-gradient(145deg,var(--gift-cover-top),var(--gift-cover-bottom));box-shadow:0 8px 25px #0002}.giveaway-art .gift-art-static{width:100%;height:100%;background:transparent!important;border:0;border-radius:0}.giveaway-art img{width:100%;height:100%;object-fit:contain;padding:0!important}
.giveaway-clock{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;width:65%;max-width:195px;margin-top:35px}.giveaway-clock>span{display:flex;flex-direction:column;align-items:center;gap:3px;background:color-mix(in srgb,var(--tg-field) 86%,transparent);border-radius:13px;padding:9px 2px}.giveaway-clock b{font-size:20px;line-height:24px;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.giveaway-clock small{font-size:9px;line-height:13px;color:var(--tg-secondary)}
.giveaway-participants{font-size:11px;color:var(--tg-secondary);text-align:right;margin:0 2px 14px}.giveaway-join{width:100%;margin:0!important}.giveaway-winner{font-size:13px;line-height:19px;text-align:center;margin:12px 4px 0;color:var(--tg-accent-text);overflow-wrap:anywhere}
.giveaway-empty{padding:32px 20px;background:var(--tg-field);border-radius:28px;text-align:center;font-size:14px;line-height:22px}.giveaway-empty p{color:var(--tg-secondary);font-size:13px}.giveaway-step-heading{display:flex;align-items:center;gap:12px;justify-content:space-between}.giveaway-step-heading h2{font-size:24px;line-height:30px;letter-spacing:-.5px}.giveaway-step-heading>span{white-space:nowrap;font-size:13px;color:var(--tg-secondary)}.giveaway-progress{display:flex;gap:6px;margin-bottom:20px}.giveaway-progress i{height:4px;flex:1;border-radius:4px;background:var(--tg-surface)}.giveaway-progress i:first-child,.giveaway-progress.is-second i{background:var(--tg-accent)}
.giveaway-note{font-size:13px;line-height:21px;color:var(--tg-secondary);margin:18px 2px}.giveaway-gift-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.giveaway-gift-grid .bet-gift-price img{width:12px;height:12px;flex:none}.giveaway-create>.primary-button{width:100%;margin:20px 0 0}.giveaway-duration{display:flex;gap:7px;margin:18px 0}.giveaway-duration button{flex:1;min-height:42px;border:1px solid transparent;border-radius:999px;background:var(--tg-surface);color:var(--tg-secondary);font-family:inherit;font-size:13px}.giveaway-duration button[aria-pressed=true]{border-color:var(--tg-accent-text);color:var(--tg-accent-text)}
@media(max-width:360px){.community-bar{gap:6px}.community-avatar{width:36px;height:36px}.community-deposit{font-size:11px;padding:7px 9px}.community-balance{padding:5px 3px}.community-balance strong{font-size:11px}.community-settings{width:28px}.community-stats{gap:10px}.community-stats small{font-size:9px}.earn-rate-card>strong{font-size:13px;letter-spacing:-.2px}.earn-rate-card>b{font-size:11px}.giveaway-banner{padding:15px 12px 12px}.giveaway-clock{gap:4px}.giveaway-clock b{font-size:18px}.giveaway-copy h3{font-size:16px;line-height:22px}.giveaway-art{border-radius:23px}.giveaway-gift-grid{gap:8px}}
/* One compact row follows the supplied reference; profile has one balance only. */
html[data-theme] body:not(.game-section-view):not(.mines-view):not(.bj-fullscreen-active) .app-header[data-community-header]{min-height:70px;padding-bottom:12px}
.community-bar{gap:8px}
.community-stats{margin:0;gap:10px;justify-content:flex-start;flex:1;min-width:0}
.community-stats>span{gap:4px}
.community-stats small{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.community-stats strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.community-wallet{flex:0 1 auto;justify-content:flex-start;gap:3px;max-width:66%}
.community-balance{padding:6px 4px;max-width:none;flex:0 1 auto}
.community-deposit{flex:none;padding:8px 10px;font-size:12px}
.community-avatar{width:38px;height:38px}
.community-settings{display:none}
html[data-theme] body.profile-view .app-header .community-wallet,html[data-theme] body.profile-view .app-header .community-avatar{display:none}
html[data-theme] body.profile-view .app-header .community-settings{display:grid}
html[data-theme] body.profile-view .app-header .community-stats small{position:static;width:auto;height:auto;clip:auto;margin:0;overflow:visible}
html[data-theme] body .profile-balance-card .wallet-amount{margin:8px 0 10px}
html[data-theme] body .profile-balance-card .wallet-actions{margin-top:0;gap:8px}
.earn-page>.community-bar{margin-bottom:22px}
@media(max-width:360px){.community-bar{gap:5px}.community-stats{gap:6px}.community-stats .icon{width:13px;height:13px}.community-stats strong{font-size:10px}.community-avatar{width:32px;height:32px}.community-deposit{font-size:11px;padding:7px 8px;min-height:34px}.community-balance{gap:3px;padding:5px 2px}.community-balance img{width:16px;height:16px}.community-balance strong{font-size:10px}}
html[data-theme] body .earn-detail-hero.earn-tiktok{padding:8px 0 10px;background:none}
html[data-theme] body .earn-detail-hero.earn-tiktok>.earn-icon{display:none}
html[data-theme] body .earn-detail-hero.earn-tiktok h2{font-size:29px;line-height:1.12;margin-bottom:10px}
.earn-tiktok-word{color:#19c8d1;text-shadow:2px 0 #ee337988}
.earn-terms summary{font-size:14px;cursor:pointer;color:var(--tg-secondary)}
.earn-terms[open] summary{margin-bottom:16px;color:var(--tg-text)}
html[data-theme] body .earn-panel.earn-terms{padding:16px;margin:12px 0}
html[data-theme] body .earn-tiktok-steps li{padding-top:12px;padding-bottom:12px}
html[data-theme] body .earn-tiktok-steps li:before{top:12px}
.earn-detail-page>.earn-section-tabs{display:none}
.earn-detail-page>.community-bar{margin-bottom:12px}
html[data-theme] body .earn-detail-page>.earn-back{margin:0 0 8px;min-height:30px;padding:3px 0}
.earn-rate-tabs{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:2px}
.earn-rate-tabs button{flex:none}
html[data-theme] body .earn-detail-page .earn-panel{margin:12px 0;padding:18px 14px}
html[data-theme] body .earn-detail-page .earn-panel h3{margin:0 0 14px}
html[data-theme] body .earn-detail-page .earn-steps{padding:5px 12px}
html[data-theme] body .earn-detail-page .earn-steps li{font-size:12px;line-height:18px}
html[data-theme] body .earn-detail-page>.earn-back{position:absolute;top:19px;left:20px;margin:0;max-width:70%;line-height:30px}
html[data-theme] body .earn-detail-page .earn-panel{padding:14px}
html[data-theme] body .earn-detail-page .earn-panel h3{margin-bottom:10px}
.earn-detail-page .earn-rate-tabs{margin-bottom:10px}
.earn-detail-page .earn-rate-card{padding-top:12px}.earn-detail-page .earn-rate-card>b{margin-top:16px}
html[data-theme] body .earn-detail-page .earn-tiktok-steps li{padding-top:10px;padding-bottom:10px}
html[data-theme] body .earn-detail-page .earn-tiktok-steps li:before{top:9px}
/* Design87: compact lobby wallet; Earnings has no account toolbar. */
html[data-theme] body .app-header[data-community-header] .community-wallet{padding:3px;gap:2px;flex:0 1 auto}
html[data-theme] body .app-header[data-community-header] .community-deposit{height:30px;min-height:30px;padding:5px 8px;font-size:11px;line-height:18px;gap:2px}
html[data-theme] body .app-header[data-community-header] .community-deposit .icon{width:12px;height:12px}
html[data-theme] body .app-header[data-community-header] .community-balance{padding:4px 3px;gap:4px}
html[data-theme] body .app-header[data-community-header] .community-balance strong{font-size:11px;line-height:18px}
html[data-theme] body .app-header[data-community-header] .community-balance img{width:16px;height:16px}
html[data-theme] body .app-header[data-community-header] .community-avatar{width:32px;height:32px}
.community-avatar>span{position:relative}.community-avatar .avatar-initial{grid-area:1/1}
.community-avatar .avatar-photo{position:absolute;inset:0;opacity:0}.community-avatar .avatar-photo.is-ready{opacity:1}
html[data-theme] body:not(.game-section-view):not(.mines-view):not(.bj-fullscreen-active) .app-header[data-community-header]{min-height:60px;padding-top:calc(12px + var(--safe-top,0px));padding-bottom:10px}
/* Design88: Earnings is a full page, with reference-scale content and no sheet chrome. */
html[data-theme] body.earnings-view .app-header[data-community-header]{display:none}
html[data-theme] body.earnings-view .screen{padding:calc(var(--safe-top,0px) + 12px) max(16px,var(--safe-right,0px)) calc(110px + var(--safe-bottom,0px)) max(16px,var(--safe-left,0px));min-height:100dvh}
.earnings-screen{position:relative;isolation:isolate}
.earnings-screen:before{content:"";position:absolute;z-index:-1;pointer-events:none;left:-16px;right:-16px;top:0;height:340px;background:radial-gradient(ellipse at 100% 30%,#168fce28,transparent 68%)}
.earn-page-back{display:inline-flex;align-items:center;min-height:32px;padding:4px 12px;margin:0 0 14px;border:0;border-radius:999px;background:var(--tg-field);color:var(--tg-text);font:600 13px/20px -apple-system,BlinkMacSystemFont,sans-serif}
body.telegram-fullscreen .earn-page-back{display:none}
.bottom-nav[data-active-route=earnings] .nav-selection{opacity:0}
html[data-theme] body.earnings-view :is(.earn-heading h2,.earn-detail-hero h2,.giveaway-heading h2){font-size:24px;line-height:1.14;letter-spacing:-.4px;margin-bottom:9px}
html[data-theme] body.earnings-view :is(.earn-heading p,.earn-detail-hero p,.giveaway-heading p){font-size:13px;line-height:19px}
html[data-theme] body.earnings-view .earn-section-tabs{margin:0 0 20px;padding:4px;gap:4px}
html[data-theme] body.earnings-view .earn-section-tabs button{min-height:38px;font-size:13px}
html[data-theme] body.earnings-view .giveaway-heading{margin:18px 0 20px;max-width:330px}
html[data-theme] body.earnings-view .giveaway-toolbar{margin:14px 0;gap:8px}
html[data-theme] body.earnings-view .giveaway-toolbar>span{font-size:12px}
html[data-theme] body.earnings-view .giveaway-toolbar button{width:40px;height:40px}
html[data-theme] body.earnings-view .giveaway-banner{padding:16px 14px 12px;margin:12px 0;border-radius:28px}
html[data-theme] body.earnings-view .giveaway-creator{min-height:32px;margin-bottom:12px;gap:8px}
html[data-theme] body.earnings-view .giveaway-avatar{width:32px;height:32px;position:relative}
.giveaway-avatar .avatar-initial{grid-area:1/1}.giveaway-avatar .avatar-photo{position:absolute;inset:0;opacity:0}.giveaway-avatar .avatar-photo.is-ready{opacity:1}
html[data-theme] body.earnings-view .giveaway-creator strong{font-size:13px}
html[data-theme] body.earnings-view .giveaway-copy h3{font-size:16px;line-height:21px;margin:0 0 7px}
html[data-theme] body.earnings-view .giveaway-price{font-size:12px}
html[data-theme] body.earnings-view .giveaway-prize{min-height:132px}
html[data-theme] body.earnings-view .giveaway-art{width:40%;border-radius:24px}
html[data-theme] body.earnings-view .giveaway-clock{width:58%;margin-top:22px;gap:4px}
html[data-theme] body.earnings-view .giveaway-clock>span{padding:7px 2px;border-radius:12px}
html[data-theme] body.earnings-view .giveaway-clock b{font-size:19px;line-height:23px}
html[data-theme] body.earnings-view .giveaway-clock small{font-size:9px;line-height:12px}
html[data-theme] body.earnings-view .giveaway-participants{font-size:11px;line-height:16px;margin:0 2px 8px}
html[data-theme] body.earnings-view .giveaway-join{min-height:46px;padding:10px 12px;font-size:16px;line-height:22px}
html[data-theme] body.earnings-view .earn-detail-page>.earn-back{position:static;margin:0 0 10px;padding:4px 0;min-height:30px;line-height:22px}
@media(max-width:360px){html[data-theme] body.earnings-view .giveaway-clock b{font-size:17px}html[data-theme] body.earnings-view .giveaway-copy h3{font-size:14px}}
html[data-theme] body.earnings-view .app-header[data-community-header]{display:none!important}
.earnings-screen:before{mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 65%,transparent)}

/* yellow-controls.css */
/* Yellow controls; gift art, currencies and semantic outcomes retain their colours. */
:root,:root[data-theme=dark]{--tg-accent:#ffce00;--tg-accent-text:#ffd633;--tg-accent-soft:#ffce001c;--action-ink:#111111;--action-fill:linear-gradient(180deg,#ffdc16 0%,#ffca00 65%,#ffb900 100%)}
:root[data-theme=light]{--tg-accent:#ffce00;--tg-accent-text:#826100;--tg-accent-soft:#d6a40018;--action-ink:#111111;--action-fill:linear-gradient(180deg,#ffdc16,#ffc000)}
html[data-theme] body .upgrade-app{--up-blue:var(--tg-accent);--up-accent:var(--tg-accent)}
html[data-theme] body :is(.primary-button,.up-primary,.mines-primary,.rolls-primary,.cf-primary,.bj-deal,.case-open-button,.case-daily-button,.earn-primary,.earn-cta,.giveaway-join,.community-deposit,.wallet-topup,.profile-topup):not(:disabled){background:var(--action-fill)!important;color:var(--action-ink)!important;border-color:transparent;box-shadow:inset 0 1px 1px #fff7;border-radius:999px;text-shadow:none}
html[data-theme] body :is(.primary-button,.up-primary,.mines-primary,.rolls-primary,.cf-primary,.bj-deal,.case-open-button,.earn-primary,.community-deposit):not(:disabled) :is(span,strong,svg){color:inherit}
html[data-theme] body :is(.up-catalog-sources,.up-catalog-tabs,.earn-rate-tabs,.earn-tabs,.inventory-tabs,.payment-methods,.rolls-tabs) :is(button[aria-pressed=true],button.active),html[data-theme] body .theme-mode-picker>button[aria-checked=true]{background:var(--tg-accent);color:var(--action-ink)!important}
html[data-theme] body :is(.gift-picker-card.active,.gift-collection-card.selected,.up-gift.is-selected,.rolls-select-gift.is-selected,.cf-select-gift.is-selected)::after{border-color:#ffce00;background:linear-gradient(180deg,#ffce0008,#ffce0024)}
html[data-theme] body :is(.gift-picker-card.active,.gift-collection-card.selected,.up-gift.is-selected,.rolls-select-gift.is-selected,.cf-select-gift.is-selected)>:is(.ui-gift-check,.cf-gift-check){background:#ffce00;color:#191700}
html[data-theme] body .up-gauge>.up-pointer:before,html[data-theme] body .up-gauge>.up-pointer:after{display:none}
html[data-theme] body .up-gauge>svg{transform:rotate(180deg)}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge{width:clamp(180px,var(--up-dial-size,244px),244px);max-width:78vw}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge-chance{stroke:#ffce00;filter:none}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge-chance[stroke-dasharray="0 100"]{visibility:hidden}
html[data-theme] body .up-gauge-track{stroke:var(--tg-field)}
html[data-theme] body .up-gauge-inner{stroke:var(--tg-control-border)}
html[data-theme] body .up-orbit-arrow{position:absolute;left:50%;bottom:0;width:20px;height:15%;transform:translateX(-50%);color:#ffce00}
html[data-theme] body .up-orbit-arrow svg{width:100%;height:100%;stroke:none;overflow:visible}
html[data-theme] body [data-upgrade-cosmos=true] .up-gauge.is-loss .up-gauge-chance{stroke:var(--tg-danger)}
html[data-theme] body [data-upgrade-cosmos=true][data-upgrade-landing=won] .up-gauge-chance{stroke:var(--tg-success)}
/* Compact prize-only history. No identity/avatar or estimated odds. */
html[data-theme] body .live-drops-rail{height:88px;gap:8px;padding:4px 0 6px;align-items:flex-start}
html[data-theme] body .live-drop{position:relative;flex:0 0 64px;width:64px;min-width:64px;height:78px;box-sizing:border-box;display:block;padding:0;border:0;border-radius:16px;background:linear-gradient(145deg,var(--gift-cover-top),var(--gift-cover-bottom));box-shadow:none;overflow:hidden}
html[data-theme] body .live-drop::before,html[data-theme] body .live-drop::after{display:none}
html[data-theme] body .live-drop-price{position:absolute;z-index:2;top:4px;left:4px;right:4px;display:flex;align-items:center;justify-content:center;gap:2px;max-width:70px;min-height:15px;padding:1px 3px;border-radius:99px;background:#12121999;color:#fff;font:650 9px/12px var(--ui-font-text);font-variant-numeric:tabular-nums;white-space:nowrap}
html[data-theme] body .live-drop-price img{flex:none;width:10px;height:10px;object-fit:contain}
html[data-theme] body .live-drop-art{position:absolute;inset:19px 6px 18px;width:auto;height:auto;display:grid;place-items:center;border:0;box-shadow:none;background:none;transform:none}
html[data-theme] body .live-drop-art>img,html[data-theme] body .live-drop-art>svg{width:100%;height:100%;object-fit:contain}
html[data-theme] body .live-drop-chance{position:absolute;z-index:2;bottom:4px;left:8px;right:8px;border-radius:99px;display:block;background:#101216a6;color:#75ed7c;text-align:center;font:750 10px/15px var(--ui-font-text);font-variant-numeric:tabular-nums}
html[data-theme] body .live-drop-chance.is-unknown{color:#c4c8cd}
.upgrade-live-drops{margin:0 0 4px;min-width:0}
.upgrade-live-drops>.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.upgrade-live-drops .live-drops-empty{min-height:36px;font-size:12px;color:var(--tg-secondary)}
@media(max-width:360px){html[data-theme] body .live-drop{flex-basis:60px;width:60px;min-width:60px;height:74px;border-radius:15px}html[data-theme] body .live-drop-price{font-size:8px;left:4px;right:4px}html[data-theme] body .live-drops-rail{height:84px;gap:7px}}

/* Explicit selected-tab semantics and nested labels must match yellow fills. */
html[data-theme] body :is(.inventory-tabs,.up-catalog-tabs,.up-catalog-sources) button:is([aria-selected=true],[aria-pressed=true]),
html[data-theme] body :is(.wallet-actions>button:not(.secondary-wallet),.giveaway-add,.earn-steps li::before){color:var(--action-ink)!important;-webkit-text-fill-color:var(--action-ink)}
html[data-theme] body :is(.primary-button,.community-deposit,.wallet-actions>button:not(.secondary-wallet),.wallet-topup,.profile-topup,.up-primary,.up-buy-button,.giveaway-join,.earn-cta):not(:disabled),
html[data-theme] body :is(.primary-button,.community-deposit,.wallet-actions>button:not(.secondary-wallet),.wallet-topup,.profile-topup,.up-primary,.up-buy-button,.giveaway-join,.earn-cta):not(:disabled) :is(span,strong,b,svg){color:var(--action-ink)!important;-webkit-text-fill-color:var(--action-ink)}
/* Paint from the viewport origin, including Telegram safe-area padding. */
html[data-theme] body.profile-view{background:linear-gradient(180deg,#f59a16 0px,#b85b09 42px,#66300e 100px,#291b14 190px,var(--tg-bg) 320px);background-repeat:no-repeat;background-color:var(--tg-bg)}
html[data-theme=light] body.profile-view{background-image:linear-gradient(180deg,#ffe2ad 0px,#fff0d8 100px,var(--tg-bg) 320px)}
html[data-theme] body.profile-view .mini-app{background:transparent;border-top-color:transparent}
html[data-theme] body.profile-view .profile-page::before{display:none}
@media(min-width:600px){html[data-theme] body.profile-view{padding-top:0}}
/* Design93: shared primary capsule and ink across every accent-filled control. */
html[data-theme] body :is(.tg-solid-button,.wallet-actions>button,.bet-button,.gift-owned-actions>[data-owned-gift-action],.bj-gift-choice,.up-source-choice,.loss-reward-card button,.mines-reward-keep,.telegram-alert-button[data-style=primary],.bj-play-actions .bj-action.bj-hit):not(:disabled):not([aria-disabled=true]){
  --tg-button-fill:var(--action-fill);background:var(--action-fill)!important;color:var(--action-ink)!important;-webkit-text-fill-color:var(--action-ink);border-color:transparent;border-radius:999px;box-shadow:inset 0 1px 1px #fff7;text-shadow:none;
}
html[data-theme] body :is(.tg-solid-button,.wallet-actions>button,.bet-button,.gift-owned-actions>[data-owned-gift-action],.bj-gift-choice,.up-source-choice,.loss-reward-card button,.mines-reward-keep,.telegram-alert-button[data-style=primary],.bj-play-actions .bj-action.bj-hit):not(:disabled):not([aria-disabled=true]) :is(span,strong,b,svg,path){color:var(--action-ink)!important;-webkit-text-fill-color:var(--action-ink)}
html[data-theme] body :is(.payment-assets button[aria-checked=true],.case-roulette:not(.is-daily) .case-segments button[aria-pressed=true],.arena-history-tabs button[aria-selected=true],.arena-winner-chance,.earn-rate-card:last-child>b,.giveaway-add,.theme-mode-picker>button[aria-checked=true],.inventory-tabs button[aria-selected=true],.up-catalog-sources button[aria-pressed=true],.up-catalog-tabs button[aria-pressed=true]){
 color:var(--action-ink)!important;-webkit-text-fill-color:var(--action-ink);text-shadow:none;
}
html[data-theme] body :is(.payment-assets button[aria-checked=true],.case-roulette:not(.is-daily) .case-segments button[aria-pressed=true],.arena-history-tabs button[aria-selected=true],.theme-mode-picker>button[aria-checked=true],.giveaway-add) :is(span,strong,b,svg,path){color:var(--action-ink)!important;-webkit-text-fill-color:var(--action-ink)}
html[data-theme] body .earn-steps li::before{color:var(--action-ink)!important;-webkit-text-fill-color:var(--action-ink)}
html[data-theme] body :is([aria-pressed=true],[data-gift-chosen=true])>.ui-gift-check,html[data-theme] body .gift-selection.is-selected{color:var(--action-ink)!important}
html[data-theme] body .profile-balance-card .wallet-actions>button{font-weight:700;line-height:20px;min-height:48px}

/* Warm reflected light on the profile balance; keep labels fully opaque. */
html[data-theme] body.profile-view .profile-balance-card{background:radial-gradient(ellipse at 50% 0%,#f59a1614,transparent 68%),var(--tg-field)!important}
html[data-theme] body.profile-view .community-stats{background:#14141473;border-radius:999px;padding:6px 8px;color:#fff}
html[data-theme] body.profile-view .community-stats small{color:#fff}
html[data-theme=light] body.profile-view .community-stats{background:#ffffffa6;color:var(--tg-text)}
html[data-theme=light] body.profile-view .community-stats small{color:var(--tg-text)}

/* Profile counters fit their content; settings remains at the right edge. */
html[data-theme] body.profile-view .community-stats{flex:0 1 auto;width:max-content;max-width:calc(100% - 40px)}
html[data-theme] body.profile-view .community-settings{margin-left:auto;flex:none}

/* Shared warm ambient accents; artwork and semantic outcome colours stay intact. */
html[data-theme] body{--ambient-gold:#ffce0028;--ambient-gold-soft:#ffce0012}
html[data-theme] body .earnings-screen:before{background:radial-gradient(ellipse at 100% 30%,var(--ambient-gold),transparent 68%)}
html[data-theme] body .bottom-sheet.earnings-sheet{background:radial-gradient(ellipse at 85% 0%,var(--ambient-gold),transparent 360px),var(--tg-sheet)}
html[data-theme] body :is(.earn-card,.earn-detail-hero){--earn-accent:#ffd633}
html[data-theme] body .earn-deposit-perk{background:linear-gradient(110deg,#ffce0018,#efae0910);border-color:#ffce0026}
html[data-theme] body .earn-resource{background:var(--ambient-gold-soft);border-color:#ffce004d}
html[data-theme] body [data-upgrade-cosmos=true] .up-selection{background:radial-gradient(ellipse at 50% 50%,var(--ambient-gold-soft),transparent 68%),var(--tg-field)}
html[data-theme] body :is(.up-chance-presets,.up-chance-limits)>button[aria-pressed=true]{background:#ffce0029;border-color:#ffce0066;color:var(--tg-accent-text)}
html[data-theme] body :is(.referral-emblem,.referral-count-arrow,.friends-intro>span:not(:empty),.friends-empty>span,.up-owned-heading button){background:var(--ambient-gold-soft);color:var(--tg-accent-text)}
html[data-theme] body .friends-more{background:#ffce000d}

/* Opaque task rows with compact reward capsules, matching the dark account row. */
html[data-theme] body .earn-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto 8px;align-items:center;gap:10px;min-height:96px;padding:14px;border:0;border-radius:30px;background:#161618;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;opacity:1}
html[data-theme] body .earn-card>.earn-icon{grid-column:1;grid-row:1;width:44px;height:44px;align-self:center}
html[data-theme] body .earn-card>.earn-card-copy{grid-column:2;grid-row:1;min-width:0}
html[data-theme] body .earn-card-copy strong{font-size:15px;line-height:20px;font-weight:650}
html[data-theme] body .earn-card-copy small{font-size:12px;line-height:17px;margin-top:4px;color:#a1a1aa}
html[data-theme] body .earn-card>.earn-reward{grid-column:3;grid-row:1;justify-self:end;align-self:center;justify-content:center;gap:3px;min-height:30px;padding:6px 9px;border-radius:999px;background:#222226;color:#ffd400;font-size:12px;line-height:18px;font-weight:750;box-shadow:none}
html[data-theme] body .earn-card>.earn-chevron{grid-column:4;grid-row:1;color:#85858e;opacity:1;font-size:18px}
html[data-theme] body .earn-card:active{opacity:1;background:#202024}
html[data-theme] body .earn-deposit-perk{background:#161618;border:0;border-radius:30px;box-shadow:none}
@media(max-width:360px){html[data-theme] body .earn-card{grid-template-columns:40px minmax(0,1fr) auto;gap:8px;padding:12px;border-radius:26px}html[data-theme] body .earn-card>.earn-icon{width:40px;height:40px}html[data-theme] body .earn-card-copy strong{font-size:14px;line-height:19px}html[data-theme] body .earn-card>.earn-reward{padding:6px 8px}html[data-theme] body .earn-card>.earn-chevron{display:none}}

/* A single, short crystal burst after the confirmed winning landing. */
.up-win-shards{position:absolute;inset:0;z-index:4;pointer-events:none}
.up-win-shards::before{content:"";position:absolute;inset:6%;border:1px solid #b9ffe4;border-radius:50%;opacity:0;box-shadow:0 0 12px #79edb944;animation:up-win-halo 700ms ease-out both}
.up-win-shard{position:absolute;display:block;width:var(--shard-size);height:calc(var(--shard-size)*1.6);opacity:0;background:linear-gradient(135deg,#fff 0 25%,#d6ffef 26% 50%,#65e5ae 51%);clip-path:polygon(50% 0,100% 36%,73% 100%,0 64%);filter:drop-shadow(0 0 3px #afffdfaa);animation:up-win-shatter 780ms var(--shard-delay) cubic-bezier(.16,.65,.24,1) both}
.up-win-shard:nth-child(3n){background:linear-gradient(135deg,#fff9ce 0 30%,#ffe06b 31% 60%,#e5a92e 61%)}
.up-win-shard:nth-child(4n){clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%)}
@keyframes up-win-shatter{0%{opacity:0;transform:translate(-50%,-50%) rotate(0deg) scale(.25)}12%{opacity:1;transform:translate(-50%,-50%) rotate(0deg) scale(1)}65%{opacity:.85}100%{opacity:0;transform:translate(calc(-50% + var(--shard-x)),calc(-50% + var(--shard-y))) rotate(var(--shard-turn)) scale(.3)}}
@keyframes up-win-halo{0%{opacity:0;transform:scale(.98)}18%{opacity:.7}100%{opacity:0;transform:scale(1.13)}}
.reduce-motion .up-win-shards,.app-hidden .up-win-shards,[data-upgrade-motion=off] .up-win-shards{display:none}
@media(prefers-reduced-motion:reduce){.up-win-shards{display:none}}

/* Compact floating dock: two circles and a three-section central capsule. */
html[data-theme] body .bottom-nav.bottom-nav.glass{width:calc(100% - 32px);max-width:390px;height:60px;grid-template-columns:60px repeat(3,minmax(0,1fr)) 60px;gap:4px;padding:0;background:none;border:0;box-shadow:none}
html[data-theme] body .bottom-nav:before{left:64px;right:64px;border:0;background:#202026e6;box-shadow:0 6px 24px #0003;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
html[data-theme] body .bottom-nav .nav-selection{display:none}
html[data-theme] body .bottom-nav .nav-item{min-width:0;min-height:44px;height:52px;align-self:center;margin:0;padding:0;border:0;border-radius:999px;background:transparent;color:#888890;transition:background-color .18s ease,color .18s ease;box-shadow:none}
html[data-theme] body .bottom-nav .nav-item[data-nav=gifts]{margin-left:4px}
html[data-theme] body .bottom-nav .nav-item[data-nav=profile]{margin-right:4px}
html[data-theme] body .bottom-nav .nav-item:nth-of-type(3){margin-right:0}
html[data-theme] body .bottom-nav .nav-item.nav-orb{width:60px;height:60px;background:#202026e6;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 6px 24px #0003}
html[data-theme] body .bottom-nav .nav-item.active{color:#ffd400;background:#36363ee6}
html[data-theme] body .bottom-nav .nav-item>.icon{width:24px;height:24px;stroke-width:1.7;filter:none}
html[data-theme] body .bottom-nav .nav-item.active .nav-person{fill:currentColor;stroke-width:0}
html[data-theme] body .bottom-nav .nav-item:focus-visible{outline:2px solid #ffd400;outline-offset:2px}
@media(prefers-reduced-motion:reduce){html[data-theme] body .bottom-nav .nav-item{transition:none}}
html[data-theme] body.reduce-motion .bottom-nav .nav-item{transition:none}

