:root{--sidebar-width:238px;--joker-blue:#388bff;color-scheme:dark}*{box-sizing:border-box}body{margin:0;font-size:16px}.app-shell{width:auto;max-width:none;margin:0;padding:0 26px 36px;margin-left:var(--sidebar-width);min-width:0}.topbar{position:sticky;top:0;z-index:20;background:#07111ff2;backdrop-filter:blur(16px);min-height:76px;gap:14px;border-bottom:1px solid #20314c}.topbar .brand{margin-right:auto}.topbar .demo-pill{font-size:12px}.balance span{font-size:12px}.balance strong{font-size:16px}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);z-index:40;background:linear-gradient(170deg,#0c1a2f,#070e19);border-right:1px solid #1d304e;padding:20px 12px;overflow-y:auto;transition:width .2s,transform .2s}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:0 12px 22px;font-size:20px;letter-spacing:2px}.sidebar-brand .brand-glyph{width:36px;height:36px}.sidebar-brand button{display:none}.nav-section{margin-bottom:18px}.nav-section>p{font-size:12px;letter-spacing:1px;color:#8096b6;margin:0 12px 9px}.sidebar-item{display:flex;align-items:center;gap:12px;min-height:43px;padding:9px 12px;margin:3px 0;border:1px solid transparent;border-radius:10px;text-decoration:none;color:#a7bbd6;font-size:14px;font-weight:600;white-space:nowrap}.sidebar-item:hover{background:#152946;color:white}.sidebar-item.active{background:linear-gradient(100deg,#173e73,#122949);border-color:#2d5d96;color:#8bc0ff;box-shadow:inset 3px 0 #388bff}.nav-icon{width:24px;flex-shrink:0;text-align:center;font-size:20px}.sidebar-foot{color:#6e86a7;font-size:12px;margin:20px 12px}.sidebar-reduced{--sidebar-width:76px}.sidebar-reduced .nav-label,.sidebar-reduced .nav-section>p,.sidebar-reduced .sidebar-brand strong,.sidebar-reduced .sidebar-foot{display:none}.sidebar-reduced .sidebar-brand{padding-left:6px}.sidebar-reduced .sidebar-item{justify-content:center;padding:9px 4px}.drawer-overlay{position:fixed;inset:0;background:#0009;z-index:35;border:0}.drawer-overlay[hidden]{display:none}.view{padding-top:24px}.lobby-head{margin-bottom:24px}.lobby-head h1,.page-heading h1{font-size:30px;margin:0}.game-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.game-card{position:relative;padding:0;background:linear-gradient(145deg,#142945,#0b182b);border:1px solid #243e61;border-radius:16px;overflow:hidden;min-height:218px}.game-open{border:0;background:none;color:inherit;text-align:left;width:100%;padding:24px 18px 18px;cursor:pointer;font-family:inherit}.game-card h2{font-size:18px}.game-card p{font-size:14px;min-height:36px}.game-icon{font-size:54px;margin-bottom:16px}.card-provider{font-size:12px;color:#7e9abb}.favorite-button{position:absolute;right:9px;top:9px;border:1px solid #355071;background:#09152bd9;color:#b9cde7;border-radius:9px;width:36px;height:36px;font-size:23px;cursor:pointer;z-index:2}.selected{color:#72b3ff!important}.favorite-button.selected{border-color:#388bff;background:#153765}.game-head{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:14px;margin-bottom:16px}.game-head h1{font-size:24px}.game-head .history{grid-column:2;grid-row:2;justify-self:start;max-width:100%;white-space:normal;font-size:14px}.game-tools{grid-column:3;grid-row:1/3;display:flex;gap:8px;align-items:center}.mode-toggle{display:flex;background:#071326;border:1px solid #2a4469;padding:4px;border-radius:10px}.mode-toggle button,.wallet-tabs button{background:transparent;color:#8da5c6;padding:10px 13px;border:0;border-radius:7px;font:600 14px inherit;cursor:pointer}.mode-toggle [aria-pressed=true],.wallet-tabs [aria-pressed=true]{background:#235bad;color:#fff}.bet-dock{position:sticky;bottom:12px;left:auto;transform:none;width:100%;max-width:760px;margin:20px auto 0;z-index:10;background:#0a192df5}.game-stage{min-width:0}.empty-state{grid-column:1/-1;text-align:center;padding:64px 16px;min-height:300px}.empty-state>span{font-size:42px}.empty-state h2{font-size:22px}.empty-state p{color:#9ab0ce}.text-link{color:#80b8ff;text-decoration:none}.page-heading{margin-bottom:24px}.account-panel{background:linear-gradient(150deg,#10213a,#0a172a);border:1px solid #213a5c;border-radius:16px;padding:24px;margin-bottom:18px}.account-panel h2{font-size:20px;margin:0 0 20px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:20px}.stat-card{background:#071427;padding:18px;border:1px solid #1c3455;border-radius:12px;display:flex;flex-direction:column;gap:10px}.stat-card span{font-size:14px;color:#9cb0cd}.stat-card strong{font-size:22px;overflow-wrap:anywhere}.backend-note,.empty-copy{color:#94aac8;font-size:14px;line-height:1.6}.backend-note{background:#102a4a;padding:14px 18px;border:1px solid #254d78;border-radius:12px}.backend-note[hidden]{display:none}.profile-card{display:flex;align-items:center;gap:20px}.profile-avatar{width:72px;height:72px;flex-shrink:0;display:grid;place-items:center;background:#1d5095;border-radius:18px;color:white;font-size:40px}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.profile-card h2{margin-bottom:8px}.profile-card p{margin:0 0 8px;overflow-wrap:anywhere}.profile-card small{font-size:12px;color:#879fbe}.history-list>div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #223650;padding:14px 0;font-size:14px}.history-list small{display:block;color:#869ebb;margin-top:5px;font-size:12px}.wallet-balance{font-size:36px;font-weight:700}.wallet-tabs{display:flex;gap:8px;margin:22px 0}.wallet-tabs button{flex:1;background:#09182a;padding:16px;font-size:16px}.secondary-button{background:#1b4782;color:#e4f0ff;border:1px solid #3865a1;padding:12px 18px;border-radius:10px;font:600 14px inherit;cursor:pointer}.secondary-button:disabled{opacity:.45;cursor:not-allowed}.copy-field{display:flex;align-items:center;gap:14px}.copy-field input{flex:1;min-width:0}input,select{background:#08162a;color:#d7e7ff;border:1px solid #2f4d76;padding:12px;border-radius:9px;font:inherit;max-width:100%}#walletForm{display:grid;gap:16px;max-width:580px}#walletForm label{display:grid;gap:8px;font-size:14px}#walletStatus{margin:0;font-size:14px;color:#b9d6ff}.mines-panel{width:min(100%,640px);margin:auto}.mines-settings{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}.mines-settings span,.mines-settings label{display:flex;flex-direction:column;gap:10px;font-size:14px;color:#94b1d6}.mines-settings strong{font-size:22px;color:#d8e8ff}.mines-settings select{padding:8px}.mines-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:20px}.mine-cell{aspect-ratio:1;border:1px solid #2b507f;border-radius:12px;background:linear-gradient(#19365c,#102642);color:#6386ae;font-size:30px;cursor:pointer;transition:background .16s,transform .16s}.mine-cell:hover:not(:disabled){transform:translateY(-2px);border-color:#65a9ff}.mine-cell.safe{background:#164266;border-color:#3d9cdc;color:#fff;animation:reveal .2s ease}.mine-cell.mine{background:#57192a;border-color:#b93450;animation:reveal .2s ease}.mine-cell:disabled{cursor:default;opacity:1}.mines-panel>p{text-align:center;color:#9bb8dc;font-size:14px}.mines-panel>.play-button{width:100%}.expanded-game #game,#game:fullscreen{position:fixed;inset:0;z-index:100;background:#07111f;padding:20px;overflow:auto;width:100%;height:100%;display:block}.expanded-game #game .game-stage,#game:fullscreen .game-stage{max-width:1200px;margin:auto}.expanded-game .bet-dock,#game:fullscreen .bet-dock{bottom:12px}.icon-button{min-width:40px;min-height:40px}:focus-visible{outline:2px solid #80baff;outline-offset:3px}@keyframes reveal{from{transform:scale(.9)}to{transform:scale(1)}}
@media(max-width:1000px){:root{--sidebar-width:210px}.app-shell{padding:0 18px 28px}.topbar .demo-pill{display:none}.game-tools{gap:5px}.game-head h1{font-size:21px}}
@media(max-width:767px){:root{--sidebar-width:0px}.app-shell{margin-left:0;padding:0 14px calc(24px + env(safe-area-inset-bottom))}.sidebar{width:252px;transform:translateX(-100%);padding-top:calc(18px + env(safe-area-inset-top))}.drawer-open .sidebar{transform:translateX(0)}.sidebar-brand button{display:block;margin-left:auto}.sidebar-reduced .nav-label,.sidebar-reduced .nav-section>p,.sidebar-reduced .sidebar-brand strong,.sidebar-reduced .sidebar-foot{display:block}.sidebar-reduced .sidebar-item{justify-content:flex-start;padding:9px 12px}.topbar{min-height:68px;gap:10px;padding-top:env(safe-area-inset-top)}.topbar .brand{font-size:18px;gap:6px}.topbar .brand-glyph{width:30px;height:30px}.balance{padding:8px 10px;min-width:0}.balance strong{font-size:14px}.view{padding-top:18px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.game-card{min-height:205px}.game-open{padding:24px 13px 16px}.game-card h2{font-size:16px}.game-card p{font-size:14px}.game-icon{font-size:44px}.lobby-head{display:block}.safe-note{margin-top:12px}.game-head{grid-template-columns:40px 1fr;gap:10px}.game-tools{grid-row:2;grid-column:1/-1;justify-content:flex-end}.game-head .history{grid-row:3;grid-column:1/-1}.game-head h1{font-size:22px}.bet-dock{bottom:calc(8px + env(safe-area-inset-bottom));padding:12px;gap:10px;flex-wrap:wrap}.bet-control{flex:1;min-width:160px}.bet-dock .play-button{flex:1;min-width:110px;padding:13px 10px;font-size:14px}.account-panel{padding:18px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:14px}.stat-card strong{font-size:20px}.profile-card{align-items:flex-start;gap:12px}.profile-avatar{width:52px;height:52px;font-size:30px}.profile-card h2{font-size:18px}.copy-field{flex-wrap:wrap}.copy-field input{flex-basis:100%}.history-list>div{display:block}.history-list>div>span{display:block;margin-bottom:8px}.mines-settings{gap:8px}.mines-settings strong{font-size:18px}.mines-grid{gap:7px}.mine-cell{border-radius:9px;font-size:26px}.game-stage:has(.mines-panel){padding:18px 12px}.roulette-game{padding:12px 4px!important}.roulette-table{min-width:0}.number-cell{min-width:0}.number-cell span{font-size:12px}.chip-rack{flex-wrap:wrap;gap:8px}.bj-actions{flex-wrap:wrap}.bj-actions button{font-size:14px;min-height:42px}.cards{flex-wrap:wrap}.expanded-game #game{padding:12px}.lobby-head h1,.page-heading h1{font-size:26px}}
body{padding:0}.topbar{display:flex;flex-wrap:nowrap;justify-content:space-between;padding-bottom:12px}.topbar .demo-pill{width:auto;flex:0 0 auto}.topbar .brand{margin-right:auto}.game-head>.icon-button{grid-row:1}.game-head>div:nth-child(2){grid-row:1;text-align:center}.sidebar-item{min-height:44px}.bet-dock{display:flex;align-items:center}.game-stage.chip-game+.bet-dock{display:block}.game-stage.chip-game+.bet-dock .play-button{width:100%;min-height:48px}.mines-panel>.play-button{min-height:48px}.game-card::after{pointer-events:none}.safe-note{display:block}
@media(max-width:560px){.roulette-table{padding:12px}.inside-grid{grid-template-columns:1fr}.roulette-table .zero-cell{min-height:44px}.roulette-number-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.roulette-number-row{display:flex;flex-direction:column;gap:6px;grid-row:1}.roulette-number-row:nth-child(1){grid-column:3}.roulette-number-row:nth-child(2){grid-column:2}.roulette-number-row:nth-child(3){grid-column:1}.roulette-table .number-cell{min-height:44px}.roulette-table .number-cell span{font-size:16px}.column-bets{grid-template-columns:repeat(3,1fr);grid-template-rows:auto;gap:6px}.roulette-table .dozen-bets{margin:6px 0 0;gap:6px}.roulette-table .even-bets{grid-template-columns:repeat(3,1fr);gap:6px}.roulette-table .dozen-bets .number-cell,.roulette-table .even-bets .number-cell{min-height:44px}.roulette-summary{font-size:12px}.roulette-actions button{font-size:14px;min-height:44px}}
.wheel-number,.wheel-number.green{font-size:12px;font-weight:850}.drawer-open{overflow:hidden}@media(max-width:900px){.wheel-number,.wheel-number.green{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* Compact, game-first Mini App layout. Desktop retains the sidebar; phones get
   a dense card grid and thumb-friendly bottom navigation. */
.mobile-nav{display:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.search-page-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}.search-page-head h1{font-size:24px}.search-field{display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:0 14px;border:1px solid #287dd7;border-radius:16px;background:#1d2631}.search-field svg{width:21px;height:21px;stroke:#a8bbcf;stroke-width:2;fill:none;flex:0 0 auto}.search-field input{width:100%;border:0;background:transparent;padding:16px 0;color:#f1f7ff;outline:0}.search-field input::placeholder{color:#a9b7c7}.search-games{padding-bottom:16px}
.game-grid{grid-template-columns:repeat(auto-fill,minmax(156px,1fr));gap:14px}
.game-card{min-height:184px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 26%,#152c46),#091625 72%);box-shadow:inset 0 1px rgba(255,255,255,.07),0 10px 24px rgba(0,0,0,.16)}
.game-card:nth-child(3n+2){background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 32%,#202044),#0b1427 70%)}
.game-card:nth-child(3n){background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 28%,#16333b),#091823 72%)}
.game-open{display:flex;min-height:184px;flex-direction:column;justify-content:flex-end;padding:16px}
.game-icon{width:48px;height:48px;margin:0 auto auto 0;font-size:28px;background:rgba(6,14,25,.52);border:1px solid rgba(255,255,255,.14);box-shadow:0 8px 18px rgba(0,0,0,.22)}
.game-card h2{font-size:16px;line-height:1.15;margin:0 0 6px}.game-card p{min-height:0;line-height:1.35}.card-provider{margin-top:9px;letter-spacing:.04em}
.game-poster{min-height:0;aspect-ratio:1086/1448;border:0!important;outline:0!important;border-radius:13px;background:transparent!important;box-shadow:none!important;overflow:hidden}.game-poster::after{display:none}.game-poster .game-open{display:block;min-height:0;height:100%;padding:0;border:0!important;outline:0!important;box-shadow:none!important}.game-poster img{display:block;width:calc(100% + 4px);height:calc(100% + 4px);margin:-2px;object-fit:cover;border:0!important;outline:0!important;box-shadow:none!important;transition:transform .22s ease}.game-poster:hover img{transform:scale(1.035)}.game-poster .favorite-button{top:8px;right:8px;border:0;background:rgba(6,16,29,.72);box-shadow:0 3px 10px rgba(0,0,0,.34)}
@media(max-width:767px){
  body{background:radial-gradient(circle at 80% -10%,rgba(54,128,239,.22),transparent 42%),#070f19}
  .app-shell{padding:0 12px calc(88px + env(safe-area-inset-bottom))}
  .topbar{position:sticky;min-height:60px;padding:calc(8px + env(safe-area-inset-top)) 0 8px;gap:8px}
  .topbar .brand{font-size:16px;letter-spacing:.1em}.topbar .brand-glyph{width:28px;height:28px;font-size:16px}
  .balance{padding:6px 9px;border-radius:9px}.balance span{font-size:10px}.balance strong{font-size:13px}
  .view{padding-top:14px}.lobby-head{margin-bottom:14px}.lobby-head h1{font-size:23px}.eyebrow{font-size:11px}
  .safe-note{display:none}.game-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .game-card{min-height:142px;border-radius:12px}.game-open{min-height:142px;padding:10px}.game-icon{width:38px;height:38px;font-size:23px;border-radius:11px}
  .game-card h2{font-size:13px;line-height:1.1;margin-bottom:4px;overflow-wrap:anywhere}.game-card p{display:none}.card-provider{margin-top:5px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .favorite-button{right:6px;top:6px;width:27px;height:27px;border-radius:8px;font-size:17px}
  .game-poster{min-height:0;border-radius:10px}.game-poster .game-open{min-height:0}.game-poster .favorite-button{top:6px;right:6px;width:28px;height:28px;border-radius:50%;font-size:17px}
  .mobile-nav{position:fixed;z-index:30;left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);padding:6px;background:rgba(11,23,37,.96);border:1px solid #213954;border-radius:16px;box-shadow:0 12px 34px rgba(0,0,0,.42);backdrop-filter:blur(16px)}
  .mobile-nav a,.mobile-nav button{display:grid;place-items:center;gap:3px;min-height:52px;border:0;border-radius:11px;background:transparent;color:#90a8c5;font-family:inherit;font-size:10px;font-weight:750;line-height:1.1;letter-spacing:-.02em;white-space:nowrap;text-decoration:none;cursor:pointer}.mobile-nav svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.mobile-nav a.active{color:#fff;background:linear-gradient(145deg,#2f8bf3,#2367c6);box-shadow:0 6px 16px rgba(43,126,230,.35)}
  .search-page-head{margin-bottom:18px}.search-page-head h1{font-size:22px}.search-field{margin-bottom:12px;border-radius:17px}.search-field input{padding:15px 0}.search-games{padding-bottom:6px}
}
@media(max-width:350px){.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-card,.game-open{min-height:134px}}
