/* First paint uses the saved route, even while the large application script downloads. */
html.sab-restoring .page{display:none!important;pointer-events:none}
html.sab-restoring[data-sab-view="spin"] #spinView,html.sab-restoring[data-sab-view="calculator"] #calculatorView,html.sab-restoring[data-sab-view="library"] #libraryView,html.sab-restoring[data-sab-view="quests"] #questsView,html.sab-restoring[data-sab-view="giveaways"] #giveawaysView,html.sab-restoring[data-sab-view="profile"] #profileView,html.sab-restoring[data-sab-view="contact"] #contactView,html.sab-restoring[data-sab-view="help"] #helpView{display:block!important}
html.sab-restoring #spinSection,html.sab-restoring #upgSection,html.sab-restoring #gamesSection,html.sab-restoring #roadSection,html.sab-restoring #crashSection,html.sab-restoring #minesSection,html.sab-restoring #diceSection,html.sab-restoring #caseGroups,html.sab-restoring #spinPanel,html.sab-restoring #promoEnter,html.sab-restoring #spinRes,html.sab-restoring #caseStrips{display:none!important}
html.sab-restoring[data-sab-tab="spins"] #spinSection,html.sab-restoring[data-sab-tab="upg"] #upgSection,html.sab-restoring[data-sab-tab="games"] #gamesSection,html.sab-restoring[data-sab-tab="road"] #roadSection,html.sab-restoring[data-sab-tab="crash"] #crashSection,html.sab-restoring[data-sab-tab="mines"] #minesSection,html.sab-restoring[data-sab-tab="dice"] #diceSection{display:block!important}
html.sab-restoring[data-sab-mode="choose"] #caseGroups{display:grid!important}
html.sab-restoring[data-sab-mode="promo-enter"] #promoEnter,html.sab-restoring[data-sab-mode="paid"] #spinPanel,html.sab-restoring[data-sab-mode="free"] #spinPanel,html.sab-restoring[data-sab-mode="username"] #spinPanel{display:block!important}
html.sab-restoring.sab-case-cache #caseGroups{display:none!important}
#sabStartupCases{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}
#sabStartupCases>.case-cat,#sabStartupCases>.mini-cases-head{grid-column:1/-1}
#sabStartupCases .case-card{box-sizing:border-box;width:100%;height:248px;min-height:248px;padding:12px;display:flex;flex-direction:column;overflow:hidden}
#sabStartupCases .cc-title{font-size:14px;line-height:17px;min-height:34px;margin:0}
#sabStartupCases .cc-sub{font-size:10px;min-height:28px}
#sabStartupCases .cc-art{height:110px;min-height:110px;flex:1;display:grid;place-items:center;margin:0}
#sabStartupCases .cc-art img{width:145px;height:110px;max-width:100%;object-fit:contain;animation:none}
#sabStartupCases .cc-price{margin-top:auto;min-height:38px;box-sizing:border-box;display:grid;place-items:center}
#sabStartupCases .cc-badges,#sabStartupCases .deposit-level-steps,#sabStartupCases .reward-case-progress,#sabStartupCases .free-remind{display:none!important}
@media(max-width:800px){#sabStartupCases{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#sabStartupCases .case-card{height:238px;min-height:238px}}


  :root {
    --ink: #0A0F0D;
    --surface: #121A16;
    --surface-2: #1A241E;
    --surface-3: #223028;
    --line: #2A3A31;
    --text: #ECF4EE;
    --text-dim: #8CA398;
    --accent: #4FEF9C;
    --accent-strong: #2FBE79;
    --accent-ink: #05130C;
    --accent-rgb: 79,239,156;
    --accent2-rgb: 47,190,121;
    --win: #4FEF9C;
    --lose: #FF5C57;
    --fair: #F5B942;
    --gold-a: #F8CB5C;
    --gold-b: #B9791C;
    --dia-a: #C7F6FF;
    --dia-b: #3FB8D6;
    --mut-default-border: #3A4E42;
    --mut-gold-border: #E0A23A;
    --mut-diamond-border: #4E9BEF;
    --candy-a: #FF9BD2;
    --candy-b: #E23F94;
    --rainbow-border: #B26BFF;
    --radioactive-a: #D4FF3F;
    --radioactive-b: #7BC400;
    --lava-a: #FF8A3D;
    --lava-b: #C22B1F;
    --cursed-a: #FF0A2E;
    --cursed-b: #000000;
    --divine-a: #FFFFFF;
    --divine-b: #FFE9A0;
    --galaxy-a: #8B6BFF;
    --galaxy-b: #0B0E38;
    --yinyang-a: #FFFFFF;
    --yinyang-b: #0B0B0D;
    --cyber-a: #2FD8FF;
    --cyber-b: #060A10;
    --bloodrot-a: #6B0000;
    --bloodrot-b: #3D0000;
    --phantom-a: #C4CAD2;
    --phantom-b: #16181B;
    --crystal-a: #F3ECFF;
    --crystal-b: #9B7FFF;
    --slight-rise: #9FE6C0;
    --slight-fall: #F2A79D;
    --shadow: rgba(0,0,0,0.6);
    color-scheme: dark;
  }

  html[data-theme="mono"] {
    --ink: #080808; --surface: #131313; --surface-2: #1D1D1D; --surface-3: #292929; --line: #383838;
    --text: #F3F3F3; --text-dim: #9B9B9B;
    --accent: #F2F2F2; --accent-strong: #BEBEBE; --accent-ink: #0A0A0A; --accent-rgb: 242,242,242; --accent2-rgb: 150,150,150;
    --win: #FFFFFF; --lose: #8F8F8F; --fair: #CFCFCF;
    --mut-default-border: #4A4A4A; --slight-rise: #DADADA; --slight-fall: #9E9E9E;
  }
  html[data-theme="amber"] {
    --ink: #110B04; --surface: #1A1208; --surface-2: #241A0D; --surface-3: #332410; --line: #4A3418;
    --text: #FBF1E1; --text-dim: #B49B78;
    --accent: #FFB02E; --accent-strong: #E88A0C; --accent-ink: #1A0F02; --accent-rgb: 255,176,46; --accent2-rgb: 232,100,12;
    --win: #FFC247; --lose: #FF5C57; --fair: #E9E2D0;
    --mut-default-border: #5A4222; --slight-rise: #FFD98A; --slight-fall: #F2A79D;
  }
  html[data-theme="dark"] {
--ink: #050507; --surface: #0C0C11; --surface-2: #121218; --surface-3: #1A1A22; --line: #23232D; --text: #F4F4F7; --text-dim: #8C8C9C; --accent: #775AEF; --accent-strong: #5E42D8; --accent-ink: #FFFFFF; --accent-rgb: 119,90,239; --accent2-rgb: 170,160,250; --win: #3DDC97; --lose: #FF5C6C; --fair: #F5B942;
    --mut-default-border: #34343F; --slight-rise: #A7F0C9; --slight-fall: #F2A79D;
  }
  html[data-theme="blue"] {
    --ink: #060D14; --surface: #0C1722; --surface-2: #12212F; --surface-3: #1A3044; --line: #244560;
    --text: #E6F3FA; --text-dim: #83A5BA;
    --accent: #3FC8FF; --accent-strong: #1E96D6; --accent-ink: #04121C; --accent-rgb: 63,200,255; --accent2-rgb: 30,120,220;
    --win: #3FC8FF; --lose: #FF5C57; --fair: #F5B942;
    --mut-default-border: #2E5674; --slight-rise: #9BDFFF; --slight-fall: #F2A79D;
  }

  * { box-sizing: border-box; }
  [hidden] { display: none !important; }

  body {
    background:
      radial-gradient(circle at 15% 0%, rgba(var(--accent-rgb),0.07), transparent 45%),
      var(--ink);
    color: var(--text);
    font-family: "Onest", system-ui, sans-serif;
    padding: 0 0 80px;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .page { width: 100%; max-width: 1000px; padding: 24px 20px 0; display: flex; flex-direction: column; gap: 22px; }

  /* ---------- header ---------- */
  .masthead { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; }
  .site-hero {
    width: 100%; box-sizing: border-box;
    display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px;
    padding: 30px 20px 22px; max-width: 1000px; margin: 0 auto;
  }
  .wordmark {
    font-family: var(--font-display);
    font-size: clamp(28px, 5vw, 40px);
    letter-spacing: 0.5px;
    color: var(--text);
    display: flex; align-items: center; gap: 10px;
    text-wrap: balance;
  }
  .tagline { color: var(--text-dim); font-size: 14px; max-width: 46ch; }
  .hero-title {
    font-family: var(--font-display); font-weight: 400;
    font-size: clamp(26px, 5.5vw, 38px); line-height: 1.15;
    margin: 0 0 6px; text-wrap: balance;
  }

  /* ---------- shared panel ---------- */
  .panel {
    background: color-mix(in srgb, var(--surface) 80%, transparent);
    backdrop-filter: blur(6px);
    border: 1px solid var(--line);
    border-radius: 20px;
    padding: 22px;
    box-shadow: 0 16px 36px -20px var(--shadow);
  }

  /* ---------- outcome banner ---------- */
  .outcome {
    display: flex; flex-direction: column; align-items: center; gap: 14px;
    padding: 20px 18px 22px;
    border-radius: 16px;
    background: var(--surface-2);
    border: 1px solid var(--line);
  }
  .outcome-word {
    font-family: var(--font-display);
    font-size: clamp(26px, 6vw, 34px);
    letter-spacing: 1px;
  }
  .outcome-word.win { color: var(--win); }
  .outcome-word.lose { color: var(--lose); }
  .outcome-word.fair { color: var(--fair); }

  .bar-track {
    position: relative;
    width: 100%;
    height: 40px;
    border-radius: 999px;
    background: var(--surface-3);
    overflow: hidden;
    border: 1px solid var(--line);
  }
  .bar-fill { position: absolute; top: 0; bottom: 0; left: 0; border-radius: 999px; transition: width .25s ease, background .25s ease; }
  .bar-fill.win { background: linear-gradient(90deg, var(--accent-strong), var(--win)); }
  .bar-fill.lose { background: linear-gradient(90deg, var(--lose), #ff8a75); }
  .bar-fill.fair { background: linear-gradient(90deg, var(--fair), #ffd27a); }

  .bar-chip {
    position: absolute; top: 50%; transform: translateY(-50%);
    background: var(--ink); color: var(--text);
    border: 1px solid rgba(0,0,0,0.4);
    padding: 5px 12px; border-radius: 999px;
    font-family: "IBM Plex Mono", monospace; font-size: 12px; font-weight: 600;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
  }
  .bar-chip.left { left: 8px; }
  .bar-chip.mid { left: 50%; transform: translate(-50%, -50%); }
  .bar-chip.right { right: 8px; }

  .side-labels { display: flex; justify-content: space-between; width: 100%; font-size: 11.5px; font-weight: 600; letter-spacing: 0.08em; color: var(--text-dim); text-transform: uppercase; }

  /* ---------- trade grids ---------- */
  .trade-body { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 16px; align-items: start; margin-top: 20px; }
  @media (max-width: 600px) { .trade-body { grid-template-columns: 1fr; } .swap-col { flex-direction: row; justify-content: center; padding-top: 0; } }

  .side-col { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
  .side-badge {
    display: inline-flex; align-items: center; gap: 6px;
    align-self: center;
    background: var(--accent); color: var(--accent-ink);
    font-weight: 800; font-size: 12.5px; letter-spacing: 0.04em; text-transform: uppercase;
    padding: 7px 16px; border-radius: 999px;
    box-shadow: 0 6px 14px -6px rgba(var(--accent-rgb),0.45);
  }
  .side-badge .chev { font-size: 9px; }
  .side-title { font-size: 12px; font-weight: 700; letter-spacing: 0.1em; color: var(--text-dim); text-align: center; text-transform: uppercase; }
  .side-total { text-align: center; font-family: "IBM Plex Mono", monospace; font-size: 16px; font-weight: 700; color: var(--accent); font-variant-numeric: tabular-nums; }
  .side-total .unit { font-size: 10.5px; font-weight: 600; color: var(--text-dim); text-transform: uppercase; margin-left: 2px; }
  .side-rate { text-align: center; font-family: "IBM Plex Mono", monospace; font-size: 11px; color: var(--text-dim); margin-top: -6px; }

  .slot-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; min-width: 0; }
  .slot {
    position: relative;
    min-height: 168px;
    border-radius: 14px;
    background: var(--surface-2);
    border: 1.5px dashed var(--line);
    display: flex; align-items: center; justify-content: center;
    cursor: pointer;
    color: var(--text-dim);
    font-size: 22px;
    transition: border-color .15s ease, color .15s ease, transform .1s ease;
  }
  .slot:hover, .slot:focus-visible { border-color: var(--accent); color: var(--accent); transform: translateY(-1px); }

  .slot.filled {
    border-style: solid;
    border-width: 2px;
    cursor: default;
    flex-direction: column;
    gap: 2px;
    padding: 8px 4px 7px;
    background: var(--surface-2);
  }
  .slot.filled:hover { transform: none; }
  .slot.filled.mut-default { border-color: var(--mut-default-border); }
  .slot.filled.mut-gold { border-color: var(--mut-gold-border); box-shadow: 0 0 14px -6px var(--mut-gold-border); }
  .slot.filled.mut-diamond { border-color: var(--mut-diamond-border); box-shadow: 0 0 14px -6px var(--mut-diamond-border); }
  .slot.filled.mut-candy { border-color: var(--candy-b); box-shadow: 0 0 14px -6px var(--candy-b); }
  .slot.filled.mut-rainbow {
    border-color: var(--rainbow-border);
    border-image: linear-gradient(90deg, #ff5c57, #f5b942, #4fef9c, #4e9bef, #b26bff) 1;
    box-shadow: 0 0 16px -6px var(--rainbow-border);
  }
  .slot.filled.mut-radioactive { border-color: var(--radioactive-b); box-shadow: 0 0 16px -5px var(--radioactive-a); }
  .slot.filled.mut-lava { border-color: var(--lava-b); box-shadow: 0 0 16px -5px var(--lava-a); }
  .slot.filled.mut-cursed {
    border-image: linear-gradient(90deg, var(--cursed-a), var(--cursed-b), var(--cursed-a)) 1;
    box-shadow: 0 0 18px -3px var(--cursed-a);
  }
  .slot.filled.mut-divine { border-color: var(--divine-a); box-shadow: 0 0 18px -4px var(--divine-b); }
  .slot.filled.mut-galaxy {
    border-color: var(--galaxy-a);
    border-image: linear-gradient(90deg, #4e2ba8, #8b6bff, #d16bff, #4e9bef) 1;
    box-shadow: 0 0 16px -5px var(--galaxy-a);
  }
  .slot.filled.mut-yinyang {
    border-image: linear-gradient(90deg, var(--yinyang-a) 50%, var(--yinyang-b) 50%) 1;
    box-shadow: 0 0 14px -6px rgba(255,255,255,0.5);
  }
  .slot.filled.mut-cyber {
    border-image: linear-gradient(90deg, var(--cyber-a), var(--cyber-b)) 1;
    box-shadow: 0 0 16px -4px var(--cyber-a);
  }
  .slot.filled.mut-bloodrot {
    border-color: var(--bloodrot-a);
    box-shadow: 0 0 12px -5px var(--bloodrot-a);
  }
  .slot.filled.mut-phantom {
    border-image: linear-gradient(90deg, var(--phantom-a), var(--phantom-b), var(--phantom-a)) 1;
    box-shadow: 0 0 14px -4px rgba(255,255,255,0.55);
  }
  .slot.filled.mut-crystal {
    border-image: linear-gradient(90deg, var(--crystal-a), var(--crystal-b)) 1;
    box-shadow: 0 0 18px -4px var(--crystal-b);
  }

  .slot .mini-avatar { width: 72px; height: 72px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 34px; background: var(--surface-3); overflow: hidden; }
  .mini-avatar img, .pick-item .mini-avatar img, .creature-preview .mini-avatar img { width: 100%; height: 100%; object-fit: contain; padding: 2px; }
  .slot .mini-name { font-size: 10.5px; font-weight: 500; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 0 2px; color: var(--text-dim); }
  .slot .mini-value { font-family: "IBM Plex Mono", monospace; font-size: 15px; color: var(--accent); font-weight: 700; line-height: 1; }
  .slot .mini-rate { font-family: "IBM Plex Mono", monospace; font-size: 9px; color: var(--text-dim); }
  .slot .mut-tag { font-size: 8.5px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-dim); margin-top: 1px; }
  .stability-line {
    font-size: 8px; text-transform: uppercase; letter-spacing: 0.03em;
    color: var(--text-dim); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    max-width: 100%; margin-top: 1px;
  }
  .stability-line .trend-word { font-weight: 800; }
  .stability-line .trend-word.trend-rising { color: var(--win); }
  .stability-line .trend-word.trend-slight-rising { color: var(--slight-rise); }
  .stability-line .trend-word.trend-stable { color: var(--text-dim); }
  .stability-line .trend-word.trend-slight-falling { color: var(--slight-fall); }
  .stability-line .trend-word.trend-falling { color: var(--lose); }
  .stability-line .trend-arrow { font-size: 7px; margin-left: 1px; }
  .stability-line .trend-arrow.trend-rising { color: var(--win); }
  .stability-line .trend-arrow.trend-slight-rising { color: var(--slight-rise); }
  .stability-line .trend-arrow.trend-stable { color: var(--text-dim); }
  .stability-line .trend-arrow.trend-slight-falling { color: var(--slight-fall); }
  .stability-line .trend-arrow.trend-falling { color: var(--lose); }
  .mini-stars { display: flex; gap: 2px; justify-content: center; margin-top: 2px; }
  .mini-stars .star { font-size: 10px; line-height: 1; }
  .mini-stars .star.filled { color: var(--gold-a); }
  .mini-stars .star.empty { color: var(--line); }
  .mini-stars .star.half { position: relative; color: var(--line); }
  .mini-stars .star.half::before {
    content: '★'; position: absolute; left: 0; top: 0;
    width: 50%; overflow: hidden; color: var(--gold-a);
  }

  .trend-badge {
    display: inline-flex; align-items: center; gap: 4px;
    font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em;
    padding: 3px 8px; border-radius: 999px; flex: 0 0 auto; white-space: nowrap;
  }
  .trend-badge .trend-icon { font-size: 8px; }
  .trend-badge.trend-rising { background: rgba(var(--accent-rgb),0.14); color: var(--win); }
  .trend-badge.trend-slight-rising { background: rgba(159,230,192,0.12); color: var(--slight-rise); }
  .trend-badge.trend-stable { background: var(--surface-3); color: var(--text-dim); }
  .trend-badge.trend-slight-falling { background: rgba(242,167,157,0.12); color: var(--slight-fall); }
  .trend-badge.trend-falling { background: rgba(255,92,87,0.14); color: var(--lose); }

  .slot .remove-btn {
    position: absolute; top: -7px; right: -7px;
    width: 19px; height: 19px; border-radius: 50%;
    background: var(--lose); color: #fff; border: 2px solid var(--surface);
    font-size: 11px; line-height: 1; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 2px 6px -1px rgba(0,0,0,0.5);
  }
  .slot .remove-btn:hover { filter: brightness(1.1); }

  .swap-col { display: flex; flex-direction: column; align-items: center; gap: 8px; justify-content: center; height: 100%; padding-top: 54px; }
  .swap-btn {
    width: 54px; height: 54px; border-radius: 50%;
    background: linear-gradient(160deg, var(--accent) 0%, var(--accent-strong) 100%);
    color: var(--accent-ink);
    border: none; font-size: 22px; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 0 0 4px var(--surface-2), 0 10px 22px -8px rgba(var(--accent-rgb),0.55);
    transition: transform .12s ease, box-shadow .12s ease;
  }
  .swap-btn:hover { transform: translateY(-2px) scale(1.03); box-shadow: 0 0 0 4px var(--surface-2), 0 14px 26px -8px rgba(var(--accent-rgb),0.7); }
  .swap-btn:active { transform: translateY(0) scale(0.98); }
  .swap-label { font-size: 10.5px; font-weight: 800; letter-spacing: 0.14em; color: var(--accent); }

  .clear-row { display: flex; justify-content: center; margin-top: 22px; }
  .btn-danger-ghost {
    font-family: inherit; font-size: 13px; font-weight: 700;
    background: transparent; color: var(--lose);
    border: 1.5px solid rgba(255,92,87,0.35); border-radius: 999px;
    padding: 10px 22px; cursor: pointer;
    letter-spacing: 0.02em;
    transition: background .12s ease, border-color .12s ease;
  }
  .btn-danger-ghost:hover { background: rgba(255,92,87,0.1); border-color: var(--lose); }

  /* ---------- modal ---------- */
  .modal-backdrop {
    position: fixed; inset: 0; background: rgba(0,0,0,0.65);
    display: flex; align-items: center; justify-content: center;
    padding: 20px; z-index: 100;
  }
  .modal {
    background: var(--surface); border: 1px solid var(--line);
    border-radius: 20px; padding: 22px; width: 100%; max-width: 400px;
    max-height: 82vh; overflow-y: auto;
    box-shadow: 0 24px 60px -20px var(--shadow);
    scrollbar-width: thin; scrollbar-color: rgba(var(--accent-rgb),.5) transparent;
  }
  .modal::-webkit-scrollbar, .upg-grid::-webkit-scrollbar { width: 6px; }
  .modal::-webkit-scrollbar-track, .upg-grid::-webkit-scrollbar-track { background: transparent; }
  .modal::-webkit-scrollbar-thumb, .upg-grid::-webkit-scrollbar-thumb { background: rgba(var(--accent-rgb),.45); border-radius: 999px; }
  .modal::-webkit-scrollbar-thumb:hover, .upg-grid::-webkit-scrollbar-thumb:hover { background: rgba(var(--accent-rgb),.7); }
  .modal-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 4px; }
  .modal h3 { margin: 0; font-family: var(--font-display); font-size: 18px; font-weight: 400; }
  .modal p.sub { margin: 0 0 16px; font-size: 12.5px; color: var(--text-dim); }

  .search-input {
    width: 100%; font-family: inherit; font-size: 14px;
    background: var(--surface-2); color: var(--text);
    border: 1px solid var(--line); border-radius: 10px;
    padding: 10px 12px; margin-bottom: 14px;
  }
  .search-input:focus { outline: 2px solid var(--accent); outline-offset: 1px; }
  .empty-note { text-align: center; color: var(--text-dim); font-size: 13px; padding: 24px 0; }

  .modal-close {
    flex: 0 0 auto; background: var(--surface-3); border: none; color: var(--text-dim);
    width: 28px; height: 28px; border-radius: 50%; font-size: 14px; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
  }
  .modal-close:hover { color: var(--text); background: var(--surface-2); }

  .mut-grid { display: flex; flex-direction: column; gap: 10px; }
  .mut-option {
    display: flex; align-items: center; gap: 12px;
    padding: 13px 14px; border-radius: 14px;
    border: 1.5px solid var(--line); background: var(--surface-2);
    cursor: pointer; font-family: inherit; color: var(--text); text-align: left;
    transition: border-color .12s ease, transform .12s ease, box-shadow .12s ease;
  }
  .mut-option:hover, .mut-option:focus-visible { transform: translateY(-1px); }
  .mut-option.selected { border-color: var(--accent); background: var(--surface-3); }
  .mut-qty { display: flex; align-items: center; gap: 8px; flex: 0 0 auto; }
  .qty-btn {
    width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--line);
    background: var(--surface-3); color: var(--text); font-size: 18px; font-weight: 700; line-height: 1;
    cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 0;
  }
  .qty-btn:hover { border-color: var(--accent); color: var(--accent); }
  .qty-num { min-width: 18px; text-align: center; font-family: "IBM Plex Mono", monospace; font-weight: 700; font-size: 14px; }
  .mut-option.selected .qty-num { color: var(--accent); }
  .mut-hint { margin: 0 0 12px !important; }
  .mut-done { position: sticky; bottom: -22px; margin: 14px -22px -22px; padding: 12px 22px 22px; background: var(--surface); }
  .mut-done .btn-primary { width: 100%; }
  .mut-option[data-mut="default"]:hover { border-color: var(--mut-default-border); }
  .mut-option[data-mut="gold"]:hover { border-color: var(--mut-gold-border); box-shadow: 0 6px 18px -10px var(--mut-gold-border); }
  .mut-option[data-mut="diamond"]:hover { border-color: var(--mut-diamond-border); box-shadow: 0 6px 18px -10px var(--mut-diamond-border); }
  .mut-option[data-mut="candy"]:hover { border-color: var(--candy-b); box-shadow: 0 6px 18px -10px var(--candy-b); }
  .mut-option[data-mut="rainbow"]:hover { border-color: var(--rainbow-border); box-shadow: 0 6px 18px -10px var(--rainbow-border); }
  .mut-option[data-mut="radioactive"]:hover { border-color: var(--radioactive-b); box-shadow: 0 6px 18px -10px var(--radioactive-a); }
  .mut-option[data-mut="lava"]:hover { border-color: var(--lava-b); box-shadow: 0 6px 18px -10px var(--lava-a); }
  .mut-option[data-mut="cursed"]:hover { border-color: var(--cursed-a); box-shadow: 0 6px 18px -10px var(--cursed-a); }
  .mut-option[data-mut="divine"]:hover { border-color: var(--divine-a); box-shadow: 0 6px 18px -10px var(--divine-b); }
  .mut-option[data-mut="galaxy"]:hover { border-color: var(--galaxy-a); box-shadow: 0 6px 18px -10px var(--galaxy-a); }
  .mut-option[data-mut="yinyang"]:hover { border-color: var(--yinyang-a); box-shadow: 0 6px 18px -10px rgba(255,255,255,0.4); }
  .mut-option[data-mut="cyber"]:hover { border-color: var(--cyber-a); box-shadow: 0 6px 18px -10px var(--cyber-a); }
  .mut-option[data-mut="bloodrot"]:hover { border-color: var(--bloodrot-a); box-shadow: 0 6px 18px -10px var(--bloodrot-a); }
  .mut-option[data-mut="phantom"]:hover { border-color: var(--phantom-a); box-shadow: 0 6px 18px -10px rgba(255,255,255,0.4); }
  .mut-option[data-mut="crystal"]:hover { border-color: var(--crystal-b); box-shadow: 0 6px 18px -10px var(--crystal-b); }

  .mut-gem { width: 30px; height: 30px; border-radius: 8px; flex: 0 0 auto; transform: rotate(45deg); }
  .mut-gem.default { background: var(--surface-3); border: 1px solid var(--line); }
  .mut-gem.gold { background: linear-gradient(135deg, var(--gold-a), var(--gold-b)); }
  .mut-gem.diamond { background: linear-gradient(135deg, var(--dia-a), var(--dia-b)); }
  .mut-gem.candy { background: linear-gradient(135deg, var(--candy-a), var(--candy-b)); }
  .mut-gem.rainbow { background: linear-gradient(135deg, #ff5c57, #f5b942, #4fef9c, #4e9bef, #b26bff); }
  .mut-gem.radioactive { background: linear-gradient(135deg, var(--radioactive-a), var(--radioactive-b)); }
  .mut-gem.lava { background: linear-gradient(135deg, var(--lava-a), var(--lava-b)); }
  .mut-gem.cursed { background: linear-gradient(135deg, var(--cursed-a), var(--cursed-b), var(--cursed-a)); }
  .mut-gem.divine { background: linear-gradient(135deg, var(--divine-a), var(--divine-b)); }
  .mut-gem.galaxy { background: linear-gradient(135deg, #4e2ba8, #8b6bff, #d16bff); }
  .mut-gem.yinyang { background: linear-gradient(135deg, var(--yinyang-a) 50%, var(--yinyang-b) 50%); border: 1px solid var(--line); }
  .mut-gem.cyber { background: linear-gradient(135deg, var(--cyber-a), var(--cyber-b)); }
  .mut-gem.bloodrot { background: var(--bloodrot-a); }
  .mut-gem.phantom { background: linear-gradient(135deg, var(--phantom-a), var(--phantom-b)); }
  .mut-gem.crystal { background: linear-gradient(135deg, var(--crystal-a), var(--crystal-b)); }
  .mut-info { display: flex; flex-direction: column; gap: 1px; flex: 1; }
  .mut-info .name { font-size: 13.5px; font-weight: 700; }
  .mut-info .rate { font-size: 11px; color: var(--text-dim); font-family: "IBM Plex Mono", monospace; }
  .mut-option .val { font-family: "IBM Plex Mono", monospace; font-size: 13px; font-weight: 600; color: var(--accent); display: flex; flex-direction: column; align-items: flex-end; gap: 2px; }
  .mut-option .val .drag { font-size: 10.5px; font-weight: 700; color: var(--gold-a, #e8c15a); white-space: nowrap; }

  .creature-preview { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; padding: 10px 12px; background: var(--surface-2); border-radius: 12px; border: 1px solid var(--line); }
  .creature-preview .mini-avatar { width: 52px; height: 52px; font-size: 26px; border-radius: 12px; background: var(--surface-3); display: flex; align-items: center; justify-content: center; overflow: hidden; }
  .creature-preview .name { font-size: 13.5px; font-weight: 700; }
  .creature-preview .base { font-size: 11.5px; color: var(--text-dim); font-family: "IBM Plex Mono", monospace; }
  .creature-preview .mini-stars { margin-top: 0; margin-left: auto; }
  .creature-preview .mini-stars .star { font-size: 11px; }

  .pick-grid { display: flex; flex-direction: column; gap: 10px; }
  .pick-item {
    display: flex; align-items: center; gap: 12px;
    padding: 12px 14px; border-radius: 14px;
    border: 1.5px solid var(--line); background: var(--surface-2);
    cursor: pointer; font-family: inherit; color: var(--text); text-align: left;
    transition: border-color .12s ease, transform .12s ease;
  }
  .pick-item:hover, .pick-item:focus-visible { border-color: var(--accent); transform: translateY(-1px); }
  .pick-item .mini-avatar { width: 52px; height: 52px; font-size: 26px; border-radius: 12px; background: var(--surface-3); display: flex; align-items: center; justify-content: center; flex: 0 0 auto; overflow: hidden; }
  .pick-item .pick-info { display: flex; flex-direction: column; gap: 1px; flex: 1; }
  .pick-item .name { font-size: 13.5px; font-weight: 700; }
  .pick-item .stats { font-size: 11px; color: var(--text-dim); font-family: "IBM Plex Mono", monospace; }
  .pick-item .mini-stars { margin-top: 0; flex: 0 0 auto; }
  .pick-item .trend-badge, .creature-preview .trend-badge { margin-top: 4px; font-size: 9px; padding: 2px 6px; gap: 3px; align-self: flex-start; }
  .pick-item .trend-badge .trend-icon, .creature-preview .trend-badge .trend-icon { font-size: 6.5px; }
  .pick-item .mini-stars .star { font-size: 11px; }

  /* ---------- ask a pro ---------- */
  .pro-panel {
    display: flex; align-items: center; justify-content: space-between;
    gap: 16px; flex-wrap: wrap;
  }
  .pro-copy { flex: 1; min-width: 200px; }
  .pro-title { font-family: var(--font-display); font-size: 15px; font-weight: 400; margin-bottom: 4px; }
  .pro-sub { font-size: 12.5px; color: var(--text-dim); max-width: 40ch; }
  .pro-actions { display: flex; gap: 10px; flex-wrap: wrap; }
  .btn-ask-pro {
    font-family: inherit; font-weight: 800; font-size: 13.5px;
    background: linear-gradient(160deg, var(--accent) 0%, var(--accent-strong) 100%);
    color: var(--accent-ink); border: none; border-radius: 999px;
    padding: 12px 20px; cursor: pointer; white-space: nowrap;
    box-shadow: 0 8px 18px -8px rgba(var(--accent-rgb),0.55);
    transition: transform .12s ease;
  }
  .btn-ask-pro:hover { transform: translateY(-1px); }
  .btn-pro-inbox {
    font-family: inherit; font-weight: 700; font-size: 13px;
    background: transparent; color: var(--text-dim);
    border: 1.5px solid var(--line); border-radius: 999px;
    padding: 11px 18px; cursor: pointer; white-space: nowrap;
  }
  .btn-pro-inbox:hover { color: var(--text); border-color: var(--text-dim); }

  .field-label { font-size: 11.5px; font-weight: 600; color: var(--text-dim); text-transform: uppercase; letter-spacing: 0.06em; display: block; margin-bottom: 4px; }
  .text-input, textarea.text-input {
    width: 100%; font-family: inherit; font-size: 14px;
    background: var(--surface-2); color: var(--text);
    border: 1px solid var(--line); border-radius: 10px;
    padding: 10px 12px; margin-bottom: 14px; resize: vertical;
  }
  .text-input:focus { outline: 2px solid var(--accent); outline-offset: 1px; }

  .file-btn {
    display: flex; align-items: center; gap: 8px;
    font-family: inherit; font-weight: 600; font-size: 13px;
    background: var(--surface-2); color: var(--text-dim);
    border: 1.5px dashed var(--line); border-radius: 10px;
    padding: 11px 14px; cursor: pointer; margin-bottom: 12px;
    transition: border-color .12s ease, color .12s ease;
  }
  .file-btn:hover { border-color: var(--accent); color: var(--accent); }
  .file-btn.has-file { color: var(--text); border-style: solid; border-color: var(--line); }
  .file-btn .icon { font-size: 15px; }
  .visually-hidden-file { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

  .img-preview-wrap { position: relative; margin-bottom: 14px; }
  .img-preview-remove {
    position: absolute; top: 8px; right: 8px;
    width: 24px; height: 24px; border-radius: 50%;
    background: rgba(10,15,13,0.75); color: #fff; border: none;
    font-size: 13px; cursor: pointer; display: flex; align-items: center; justify-content: center;
  }
  .img-preview-remove:hover { background: var(--lose); }

  .modal-actions { display: flex; gap: 10px; margin-top: 4px; }
  .btn-primary {
    flex: 1; font-family: inherit; font-weight: 700; font-size: 13.5px;
    background: var(--accent); color: var(--accent-ink); border: none;
    border-radius: 10px; padding: 11px; cursor: pointer;
  }
  .btn-primary:disabled { opacity: 0.45; cursor: not-allowed; }
  .btn-secondary {
    font-family: inherit; font-weight: 600; font-size: 13.5px;
    background: transparent; color: var(--text-dim); border: 1px solid var(--line);
    border-radius: 10px; padding: 11px 16px; cursor: pointer;
  }

  .img-preview { width: 100%; max-height: 160px; object-fit: contain; border-radius: 10px; background: var(--surface-3); margin-bottom: 14px; display: block; }

  .verdict-badge {
    display: flex; align-items: center; justify-content: center; gap: 10px;
    padding: 18px; border-radius: 14px; font-family: var(--font-display); font-size: 22px;
    margin-bottom: 14px;
  }
  .verdict-badge.pending { background: var(--surface-2); color: var(--text-dim); font-family: inherit; font-size: 13.5px; flex-direction: column; gap: 6px; padding: 22px; }
  .verdict-badge.win { background: rgba(var(--accent-rgb),0.12); color: var(--win); border: 1.5px solid var(--win); }
  .verdict-badge.lose { background: rgba(255,92,87,0.12); color: var(--lose); border: 1.5px solid var(--lose); }

  .spinner {
    width: 22px; height: 22px; border-radius: 50%;
    border: 2.5px solid var(--line); border-top-color: var(--accent);
    animation: spin 0.8s linear infinite;
  }
  @keyframes spin { to { transform: rotate(360deg); } }

  .request-item {
    display: flex; flex-direction: column; gap: 8px;
    padding: 12px; border-radius: 12px;
    border: 1px solid var(--line); background: var(--surface-2);
    margin-bottom: 10px;
  }
  .request-item .req-text { font-size: 13px; color: var(--text); white-space: pre-wrap; }
  .request-item .req-time { font-size: 10.5px; color: var(--text-dim); font-family: "IBM Plex Mono", monospace; }
  .request-item .req-img { max-width: 100%; max-height: 200px; border-radius: 8px; display: block; }
  .req-verdicts { display: flex; gap: 8px; }
  .btn-verdict {
    flex: 1; font-family: inherit; font-weight: 800; font-size: 13px;
    border: none; border-radius: 10px; padding: 10px; cursor: pointer;
  }
  .btn-verdict.win { background: var(--win); color: var(--accent-ink); }
  .btn-verdict.lose { background: var(--lose); color: #1a0505; }
  .btn-verdict:hover { filter: brightness(1.08); }

  .my-req-row {
    position: relative;
    width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 10px;
    font-family: inherit; text-align: left; cursor: pointer;
    background: var(--surface-2); border: 1px solid var(--line); border-radius: 10px;
    padding: 10px 30px 10px 12px; margin-bottom: 8px; color: var(--text);
  }
  .my-req-row:hover { border-color: var(--accent); }
  .my-req-text { font-size: 12.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; flex: 1; }
  .my-req-dismiss {
    position: absolute; top: -6px; right: -6px;
    width: 19px; height: 19px; border-radius: 50%;
    background: var(--lose); color: #fff; border: 2px solid var(--surface);
    font-size: 11px; line-height: 1; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
  }
  .my-req-dismiss:hover { filter: brightness(1.1); }
  .req-status { font-size: 10.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.04em; padding: 3px 8px; border-radius: 999px; flex: 0 0 auto; }
  .req-status.pending { background: var(--surface-3); color: var(--text-dim); }
  .req-status.win { background: rgba(var(--accent-rgb),0.15); color: var(--win); }
  .req-status.lose { background: rgba(255,92,87,0.15); color: var(--lose); }
  .my-req-divider { font-size: 11.5px; font-weight: 600; color: var(--text-dim); text-transform: uppercase; letter-spacing: 0.06em; margin: 4px 0 10px; }

  @media (prefers-reduced-motion: reduce) {
    .bar-fill, .slot, .swap-btn, .mut-option { transition: none; }
    .spinner { animation-duration: 2.4s; }
  }

  /* ---------- top navigation ---------- */
  .topbar { position: relative; z-index: 40; width: 100%; background: color-mix(in srgb, var(--surface) 78%, transparent); backdrop-filter: blur(8px); border-bottom: 1px solid var(--line); }
  .topbar-inner {
    max-width: 1180px; margin: 0 auto; padding: 12px 20px;
    display: flex; align-items: center; gap: 18px; flex-wrap: wrap; row-gap: 8px;
  }
  .topbar-brand {
    font-family: var(--font-display); font-size: 19px; letter-spacing: 0.02em;
    display: flex; align-items: center; gap: 9px; flex: 0 0 auto; white-space: nowrap;
  }
  .topbar-links { display: flex; gap: 6px; flex: 1; overflow-x: auto; margin-right: 24px; scrollbar-width: none; }
  .topbar-links::-webkit-scrollbar { display: none; }
  .topbar-link {
    font-family: inherit; font-weight: 700; font-size: 12.5px;
    background: transparent; border: 1.5px solid transparent; color: var(--text-dim);
    padding: 8px 14px; border-radius: 999px; cursor: pointer; white-space: nowrap;
    transition: color .12s ease, background .12s ease, border-color .12s ease;
  }
  .topbar-link:hover { color: var(--text); }
  .topbar-link.active { background: var(--surface-3); color: var(--accent); border-color: var(--line); }

  .auth-btn {
    flex: 0 0 auto; font-family: inherit; font-weight: 700; font-size: 12.5px;
    background: var(--surface-2); border: 1px solid var(--line); color: var(--text);
    padding: 9px 14px; border-radius: 999px; cursor: pointer; white-space: nowrap;
  }
  .auth-btn:hover { border-color: var(--accent); color: var(--accent); }

  /* ---------- animated background ---------- */
  .splash-gate { position: fixed; inset: 0; z-index: 9999; display: flex; background: var(--ink); }
  .splash-logo { position: absolute; top: 26px; left: 50%; transform: translateX(-50%); z-index: 3; pointer-events: none; font-family: var(--font-display); font-size: 22px; letter-spacing: .04em; color: var(--text); text-shadow: 0 4px 18px rgba(0,0,0,.6); white-space: nowrap; }
  .splash-logo span { color: var(--accent); }
  .splash-side { --sc: var(--accent-rgb); flex: 1; border: none; cursor: pointer; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 90px 24px 48px; position: relative; overflow: hidden; color: var(--text); font-family: inherit; transition: flex .35s ease, filter .35s ease; background: radial-gradient(circle at 50% 42%, rgba(var(--sc), .30), rgba(var(--sc), .06) 45%, var(--ink) 75%); }
  .splash-trade { --sc: 255,176,46; }
  .splash-side::before { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: radial-gradient(rgba(255,255,255,.07) 1px, transparent 1.4px); background-size: 22px 22px; -webkit-mask-image: radial-gradient(circle at 50% 45%, #000 15%, transparent 70%); mask-image: radial-gradient(circle at 50% 45%, #000 15%, transparent 70%); }
  .splash-side::after { content: ""; position: absolute; left: 50%; top: 42%; width: 420px; height: 420px; margin: -210px 0 0 -210px; border-radius: 50%; border: 1px solid rgba(var(--sc), .18); box-shadow: 0 0 0 60px rgba(var(--sc), .03), 0 0 0 120px rgba(var(--sc), .02); pointer-events: none; transition: transform .5s ease; }
  .splash-side:hover { flex: 1.15; }
  .splash-side:hover::after { transform: scale(1.08); }
  .splash-side:hover ~ .splash-side, .splash-side:has(~ .splash-side:hover) { filter: brightness(.7) saturate(.85); }
  .splash-art { position: relative; z-index: 1; width: 320px; height: 180px; display: flex; align-items: flex-end; justify-content: center; }
  .splash-char { width: 118px; height: 118px; object-fit: contain; filter: drop-shadow(0 16px 22px rgba(0,0,0,.65)); animation: splashFloat 3.4s ease-in-out infinite; }
  .splash-char.emoji-pic { font-size: 70px; }
  .splash-casino .splash-char:nth-child(1) { transform: rotate(-12deg); margin-right: -26px; animation-delay: -.6s; }
  .splash-casino .splash-char:nth-child(2) { width: 160px; height: 160px; z-index: 1; animation-delay: -1.4s; }
  .splash-casino .splash-char:nth-child(3) { transform: rotate(12deg); margin-left: -26px; animation-delay: -2.2s; }
  .splash-trade .splash-char { width: 132px; height: 132px; }
  .splash-trade .splash-char:last-child { animation-delay: -1.7s; }
  .splash-swap { align-self: center; margin: 0 -8px; z-index: 1; width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; font-size: 20px; font-weight: 800; color: #1a0f02; background: linear-gradient(180deg, #ffc247, #ff9f1c); box-shadow: 0 0 0 4px rgba(255,176,46,.18), 0 10px 22px -8px rgba(255,159,28,.9); }
  @keyframes splashFloat { 0%, 100% { translate: 0 0; } 50% { translate: 0 -10px; } }
  .splash-side:hover .splash-char { animation-duration: 1.8s; }
  .splash-title { position: relative; z-index: 1; font-family: var(--font-display); font-size: 36px; letter-spacing: .02em; text-shadow: 0 6px 24px rgba(0,0,0,.55); }
  .splash-sub { position: relative; z-index: 1; font-size: 14.5px; line-height: 1.45; color: var(--text-dim); max-width: 330px; text-align: center; }
  .splash-chips { position: relative; z-index: 1; display: flex; gap: 6px; flex-wrap: wrap; justify-content: center; }
  .splash-chips span { padding: 5px 11px; border-radius: 999px; font-size: 12px; font-weight: 700; color: var(--text); background: rgba(var(--sc), .12); border: 1px solid rgba(var(--sc), .3); }
  .splash-cta { position: relative; z-index: 1; margin-top: 4px; padding: 13px 28px; border-radius: 12px; font-weight: 800; font-size: 15px; color: var(--accent-ink); background: var(--accent); box-shadow: 0 12px 28px -12px rgba(var(--accent-rgb), .95); transition: transform .2s ease, box-shadow .2s ease; }
  .splash-trade .splash-cta { color: #1a0f02; background: linear-gradient(180deg, #ffc247, #ff9f1c); box-shadow: 0 12px 28px -12px rgba(255,159,28,.95); }
  .splash-side:hover .splash-cta { transform: translateY(-2px) scale(1.04); }
  .splash-divider { position: absolute; top: 0; bottom: 0; left: 50%; width: 1px; transform: translateX(-50%); background: linear-gradient(180deg, transparent, rgba(255,255,255,.14) 30%, rgba(255,255,255,.14) 70%, transparent); pointer-events: none; z-index: 2; }
  .splash-vs { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 62px; height: 62px; border-radius: 50%; display: grid; place-items: center; font-family: var(--font-display); font-size: 16px; color: var(--text); pointer-events: none; z-index: 3; background: radial-gradient(circle, var(--surface-2) 60%, var(--surface)); border: 2px solid transparent; background-clip: padding-box; box-shadow: 0 0 0 2px rgba(var(--accent-rgb), .55), 0 0 0 5px rgba(255,176,46,.25), 0 0 30px rgba(var(--accent-rgb), .35); }
  .splash-gate.hide { opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .3s ease, visibility 0s .3s; }
  @media (prefers-reduced-motion: reduce) { .splash-char { animation: none; } }
  @media (max-width: 760px) {
    .splash-gate { flex-direction: column; }
    .splash-side { padding: 56px 16px 20px; gap: 9px; }
    .splash-trade { padding: 20px 16px 40px; }
    .splash-side:hover { flex: 1; }
    .splash-side::after { width: 260px; height: 260px; margin: -130px 0 0 -130px; }
    .splash-logo { top: 14px; font-size: 17px; }
    .splash-art { height: 100px; width: 240px; }
    .splash-char { width: 72px; height: 72px; }
    .splash-casino .splash-char:nth-child(2) { width: 96px; height: 96px; }
    .splash-trade .splash-char { width: 80px; height: 80px; }
    .splash-swap { width: 34px; height: 34px; font-size: 15px; }
    .splash-title { font-size: 24px; }
    .splash-sub { font-size: 12.5px; max-width: 290px; }
    .splash-chips span { font-size: 11px; padding: 4px 9px; }
    .splash-cta { padding: 10px 22px; font-size: 14px; }
    .splash-divider { top: 50%; bottom: auto; left: 0; right: 0; width: auto; height: 1px; transform: none; background: linear-gradient(90deg, transparent, rgba(255,255,255,.14) 30%, rgba(255,255,255,.14) 70%, transparent); }
    .splash-vs { width: 48px; height: 48px; font-size: 13px; }
  }
  .fx { position: fixed; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
  .fx-blob { position: absolute; border-radius: 50%; will-change: transform; }
  .fx-blob.b1 { width: 70vmax; height: 70vmax; left: -20vmax; top: -25vmax; background: radial-gradient(circle, rgba(var(--accent-rgb),0.16), transparent 62%); animation: blobA 32s ease-in-out infinite alternate; }
  .fx-blob.b2 { width: 60vmax; height: 60vmax; right: -22vmax; top: 18vh; background: radial-gradient(circle, rgba(var(--accent2-rgb),0.20), transparent 64%); animation: blobB 40s ease-in-out infinite alternate; }
  .fx-blob.b3 { width: 55vmax; height: 55vmax; left: 15vw; bottom: -30vmax; background: radial-gradient(circle, rgba(var(--accent-rgb),0.12), transparent 62%); animation: blobC 36s ease-in-out infinite alternate; }
  @keyframes blobA { from { transform: translate3d(0,0,0) scale(1); } to { transform: translate3d(14vw,10vh,0) scale(1.15); } }
  @keyframes blobB { from { transform: translate3d(0,0,0) scale(1.05); } to { transform: translate3d(-16vw,-8vh,0) scale(0.9); } }
  @keyframes blobC { from { transform: translate3d(0,0,0) scale(0.95); } to { transform: translate3d(12vw,-12vh,0) scale(1.12); } }

  .fx-word {
    position: absolute; font-family: var(--font-display); white-space: nowrap; letter-spacing: 0.06em;
    color: rgba(var(--accent-rgb), 0.07); will-change: transform; user-select: none;
    text-shadow: 0 0 40px rgba(var(--accent-rgb), 0.10);
  }
  html[data-theme="blue"] .fx-word { color: rgba(var(--accent-rgb), 0.10); text-shadow: 0 0 50px rgba(var(--accent-rgb), 0.18); }
  .fx-word.w1 { font-size: clamp(64px, 15vw, 210px); left: 6vw; top: 34vh; animation: wordA 40s ease-in-out infinite alternate; }
  @keyframes wordA { from { transform: translate3d(-3vw,-6vh,0) rotate(-5deg); } to { transform: translate3d(14vw,10vh,0) rotate(3deg); } }

  .fx-wave { display: none; position: absolute; left: 0; right: 0; bottom: 0; height: 24vh; }
  html[data-theme="blue"] .fx-wave { display: block; }
  .fx-wave::before, .fx-wave::after { content: ""; position: absolute; left: 0; bottom: 0; width: 200%; height: 100%; background-repeat: repeat-x; background-size: 50% 100%; }
  .fx-wave::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 200' preserveAspectRatio='none'><path d='M0 90 C150 30 350 150 600 90 C850 30 1050 150 1200 90 L1200 200 L0 200 Z' fill='rgba(63,200,255,0.10)'/></svg>");
    animation: waveMove 20s linear infinite;
  }
  .fx-wave::after {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 200' preserveAspectRatio='none'><path d='M0 110 C200 170 400 50 600 110 C800 170 1000 50 1200 110 L1200 200 L0 200 Z' fill='rgba(30,150,214,0.16)'/></svg>");
    animation: waveMove 30s linear infinite reverse;
  }
  @keyframes waveMove { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }

  .fx-p { position: absolute; bottom: -60px; border-radius: 50%; will-change: transform, opacity; animation: pRise linear infinite; opacity: 0;
    background: rgba(var(--accent-rgb), 0.35); box-shadow: 0 0 10px rgba(var(--accent-rgb), 0.45); }
  html[data-theme="blue"] .fx-p { background: radial-gradient(circle at 30% 30%, rgba(255,255,255,0.38), rgba(255,255,255,0) 60%); border: 1.5px solid rgba(var(--accent-rgb), 0.55); box-shadow: none; }
  html[data-theme="amber"] .fx-p { background: rgba(255,190,70,0.85); box-shadow: 0 0 12px 2px rgba(255,140,20,0.7); }
  html[data-theme="mono"] .fx-p { background: rgba(255,255,255,0.28); box-shadow: none; }
  @keyframes pRise {
    0% { transform: translate3d(0,0,0) scale(0.8); opacity: 0; }
    10% { opacity: 0.9; }
    50% { transform: translate3d(var(--dx), -55vh, 0); }
    100% { transform: translate3d(calc(var(--dx) * -1), -118vh, 0) scale(1.1); opacity: 0; }
  }
  @media (prefers-reduced-motion: reduce) { .fx *, .fx-wave::before, .fx-wave::after { animation: none !important; } .fx-p { display: none; } }

  .online-pill { display: flex; align-items: center; gap: 8px; flex: 0 0 auto; font-size: 12px; font-weight: 700; color: var(--text-dim); white-space: nowrap; }
  .topbar-balance { flex: 0 0 auto; display: flex; align-items: center; gap: 6px; font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 13px; color: var(--accent); background: var(--surface-2); border: 1px solid var(--line); border-radius: 999px; padding: 8px 14px; white-space: nowrap; }
  .topbar-balance.tbb-btc { color: #ffb02e; border-color: rgba(255,176,46,.4); }
  .topbar-balance .tbb-ico { font-size: 13px; }
  .upg-mine-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 2px; }
  .upg-mine-head .help-title { margin: 0; }
  .upg-mine-total { font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 14px; color: var(--accent); white-space: nowrap; }
  .online-pill b { color: var(--text); font-family: "IBM Plex Mono", monospace; }
  .online-dot { width: 9px; height: 9px; border-radius: 50%; background: #3DDC84; box-shadow: 0 0 0 0 rgba(61,220,132,0.7); animation: onlinePulse 1.8s ease-out infinite; }
  @keyframes onlinePulse {
    0% { box-shadow: 0 0 0 0 rgba(61,220,132,0.65); opacity: 1; }
    70% { box-shadow: 0 0 0 7px rgba(61,220,132,0); opacity: 0.55; }
    100% { box-shadow: 0 0 0 0 rgba(61,220,132,0); opacity: 1; }
  }
  @media (prefers-reduced-motion: reduce) { .online-dot { animation: none; } }

  .avatar-btn { overflow: hidden; padding: 0; flex: 0 0 auto; }
  .avatar-btn img, .acc-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .avatar-letter { font-weight: 800; font-size: 16px; color: var(--accent-ink); background: var(--accent); width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; }
  .acc-head { display: flex; align-items: center; gap: 14px; margin: 10px 0 16px; }
  .acc-avatar { width: 64px; height: 64px; border-radius: 50%; overflow: hidden; cursor: pointer; flex: 0 0 auto; border: 2px solid var(--accent); display: block; }
  .acc-avatar .avatar-letter { font-size: 26px; }
  .acc-id { min-width: 0; }
  .acc-email { font-weight: 700; font-size: 14px; overflow-wrap: anywhere; }
  .acc-role { display: inline-block; margin-top: 4px; font-size: 10.5px; font-weight: 800; letter-spacing: 0.06em; color: var(--accent-ink); background: var(--accent); border-radius: 999px; padding: 2px 8px; }
  .acc-hint { margin-top: 4px; font-size: 11.5px; color: var(--text-dim); }
  .acc-nick-row { display: flex; align-items: center; gap: 6px; }
  .acc-nick { font-weight: 700; font-size: 15px; overflow-wrap: anywhere; }
  .acc-nick.acc-nick-set { color: var(--accent); }
  .acc-nick-edit { background: none; border: none; cursor: pointer; font-size: 13px; opacity: .7; padding: 2px; }
  .acc-nick-edit:hover { opacity: 1; }
  .acc-id { font-size: 11px; color: var(--text-dim); font-family: "IBM Plex Mono", monospace; margin-top: 1px; }
  .acc-nick-form { display: flex; gap: 6px; margin-top: 6px; width: 100%; }
  .acc-nick-form .text-input { flex: 1; }
  .acc-stream-toggle.on { border-color: var(--accent); color: var(--accent); }
  .streamer-mode .stream-blur { filter: blur(7px); user-select: none; }
  .loot-feed { display: flex; flex-direction: column; gap: 12px; margin: 0 0 20px; }
  .loot-top-card {
    position: relative; display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap;
    background: linear-gradient(160deg, var(--surface-2), var(--surface)); border: 1px solid var(--line); border-radius: 16px;
    padding: 14px 18px; overflow: hidden; box-shadow: 0 16px 34px -22px rgba(0,0,0,.7);
  }
  .loot-top-card::before {
    content: ''; position: absolute; inset: 0;
    background: radial-gradient(circle at 0% 50%, rgba(255,176,46,.14), transparent 60%);
    pointer-events: none;
  }
  .loot-top-left { position: relative; z-index: 1; display: flex; align-items: center; gap: 14px; }
  .loot-top-img { width: 52px; height: 52px; object-fit: contain; flex: 0 0 auto; filter: drop-shadow(0 4px 10px rgba(255,176,46,.45)); }
  .loot-top-label { display: flex; align-items: center; gap: 5px; font-size: 10px; letter-spacing: .06em; color: #ffb02e; text-transform: uppercase; font-family: var(--font-display); }
  .loot-top-name { font-weight: 800; font-size: 15px; margin-top: 2px; }
  .loot-top-right { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-end; gap: 5px; }
  .loot-top-price { display: flex; align-items: center; gap: 5px; font-family: "IBM Plex Mono", monospace; color: #ffb02e; font-weight: 800; font-size: 15px; }
  .loot-top-who { display: flex; align-items: center; gap: 6px; font-size: 11px; color: var(--text-dim); }
  .loot-top-empty { font-size: 12px; color: var(--text-dim); position: relative; z-index: 1; }
  .loot-recent-label { font-size: 10px; letter-spacing: .06em; color: var(--text-dim); text-transform: uppercase; font-family: var(--font-display); display: flex; align-items: center; gap: 6px; padding: 0 2px; }
  .loot-pulse { width: 7px; height: 7px; border-radius: 50%; background: var(--win); box-shadow: 0 0 0 0 rgba(var(--accent-rgb),.6); animation: lootPulse 1.6s ease-out infinite; flex: 0 0 auto; }
  @keyframes lootPulse { 0% { box-shadow: 0 0 0 0 rgba(var(--accent-rgb),.6); } 100% { box-shadow: 0 0 0 8px rgba(var(--accent-rgb),0); } }
  /* One row of drops, no scrolling: chips that don't fit wrap onto a second row, which is cut off. */
  .loot-recent { display: flex; flex-wrap: wrap; gap: 30px 10px; height: 100px; overflow: hidden; padding: 6px 2px 0; }
  .loot-chip {
    position: relative; flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; gap: 4px;
    background: var(--surface-3); border: 1.5px solid var(--tier-c, var(--line)); border-radius: 13px; padding: 10px 12px 8px; min-width: 70px;
    transition: transform .15s;
  }
  .loot-chip:hover { transform: translateY(-2px); }
  .loot-chip.tier-1 { --tier-c: rgba(63,200,255,.55); }
  .loot-chip.tier-2 { --tier-c: rgba(79,239,156,.55); }
  .loot-chip.tier-3 { --tier-c: rgba(255,176,46,.6); box-shadow: 0 0 14px -6px rgba(255,176,46,.5); }
  .loot-chip.tier-4 { --tier-c: rgba(255,92,87,.6); box-shadow: 0 0 14px -6px rgba(255,92,87,.55); }
  .loot-chip-img { width: 32px; height: 32px; object-fit: contain; }
  .loot-chip-price { font-family: "IBM Plex Mono", monospace; font-size: 11px; font-weight: 800; color: var(--accent); }
  .loot-chip-who { font-size: 9px; color: var(--text-dim); max-width: 68px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .loot-avatar { width: 16px; height: 16px; border-radius: 50%; display: inline-grid; place-items: center; font-size: 8px; font-weight: 800; color: #fff; flex: 0 0 auto; box-shadow: 0 0 0 2px var(--surface-3); }
  .loot-chip-badge { position: absolute; top: -5px; right: -5px; z-index: 2; }
  .loot-src {
    position: absolute; inset: -1px; z-index: 1; border-radius: inherit; pointer-events: none;
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; padding: 7px 5px; text-align: center;
    background: linear-gradient(160deg, rgba(var(--st), .97), rgba(var(--st), .8));
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.2), 0 10px 22px -10px rgba(var(--st), .9);
    opacity: 0; transform: scale(.94); transition: opacity .15s ease, transform .15s ease;
  }
  .loot-src-name { font-size: 9.5px; font-weight: 700; line-height: 1.15; color: #fff; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .loot-src-img { width: 50px; height: 40px; object-fit: contain; filter: drop-shadow(0 4px 8px rgba(0,0,0,.45)); }
  .loot-src-chev { width: 32px; height: 32px; filter: drop-shadow(0 2px 4px rgba(0,0,0,.35)); }
  @media (hover: hover) { .loot-chip:hover .loot-src, .ms-item:hover .loot-src { opacity: 1; transform: none; } }
  .ms-item { overflow: hidden; }
  .ms-item .loot-src .loot-src-img { width: 64px; height: 48px; }
  .ms-item .loot-src .loot-src-name { font-size: 11px; }
  @media (max-width: 720px) { .loot-top-card { justify-content: flex-start; } .loot-top-right { align-items: flex-start; width: 100%; } }
  .acc-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 14px; }
  .acc-stat { background: var(--surface-2); border: 1px solid var(--line); border-radius: 14px; padding: 12px; display: flex; flex-direction: column; gap: 4px; align-items: center; }
  .acc-num { font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 20px; color: var(--accent); }
  .acc-lbl { font-size: 11.5px; color: var(--text-dim); text-align: center; }
  .modal.modal-wide { max-width: 960px; max-height: 90vh; }
  .acc-box { position: relative; background: linear-gradient(180deg, var(--surface-2), var(--surface)); border: 1px solid var(--line); border-radius: 18px; padding: 18px; box-shadow: 0 14px 30px -20px rgba(0,0,0,.65); overflow: hidden; }
  .acc-box::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: linear-gradient(90deg, transparent, rgba(var(--accent-rgb),.75), transparent); }
  /* Wagering card: progress ring + what's left. */
  .acc-wager { margin: 12px 0; display: flex; align-items: center; gap: 18px; }
  .acc-wager .wg-ring {
    --rc: var(--accent); --rc-rgb: var(--accent-rgb);
    position: relative; flex: 0 0 auto; width: 92px; height: 92px; border-radius: 50%; display: grid; place-items: center;
    background: conic-gradient(var(--rc) calc(var(--p) * 1%), rgba(255,255,255,.07) 0);
    box-shadow: 0 10px 30px -14px rgba(var(--rc-rgb), .9);
  }
  .acc-wager .wg-ring::before { content: ''; position: absolute; inset: 9px; border-radius: 50%; background: var(--surface); box-shadow: inset 0 0 0 1px var(--hair); }
  .acc-wager .wg-ring b { position: relative; font-family: var(--font-display); font-weight: 800; font-size: 22px; letter-spacing: -0.03em; }
  .acc-wager .wg-ring b small { font-size: 12px; opacity: .6; margin-left: 1px; }
  .acc-wager .wg-ring svg { position: relative; width: 38px; height: 38px; color: var(--win); }
  .acc-wager.done .wg-ring { --rc: var(--win); --rc-rgb: 61,220,151; }
  .acc-wager .wg-main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
  .acc-wager .wg-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
  .acc-wager .wg-label { font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--text-dim); }
  .acc-wager .wg-pill { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; font-size: 11.5px; font-weight: 700; }
  .acc-wager .wg-pill::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 8px currentColor; }
  .acc-wager .wg-pill.locked { color: #FFB347; background: rgba(255,179,71,.1); box-shadow: inset 0 0 0 1px rgba(255,179,71,.25); }
  .acc-wager .wg-pill.open { color: var(--win); background: rgba(61,220,151,.1); box-shadow: inset 0 0 0 1px rgba(61,220,151,.28); }
  .acc-wager .wg-big { font-family: var(--font-display); font-weight: 800; font-size: 24px; letter-spacing: -0.03em; line-height: 1.1; }
  .acc-wager .wg-big small { font-family: "Onest", sans-serif; font-size: 12.5px; font-weight: 600; letter-spacing: 0; color: var(--text-dim); margin-left: 8px; }
  .acc-wager .wg-meta { font-size: 12.5px; color: var(--text-dim); line-height: 1.4; }
  .acc-wager .wg-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 2px; }
  .acc-wager .wg-tags span { display: inline-flex; align-items: center; gap: 5px; padding: 4px 9px; border-radius: 8px; font-size: 11.5px; font-weight: 600; color: var(--text); background: var(--glass-2); box-shadow: inset 0 0 0 1px var(--hair); }
  .acc-wager .wg-tags svg { width: 13px; height: 13px; }
  @media (max-width: 520px) {
    .acc-wager { gap: 14px; }
    .acc-wager .wg-ring { width: 72px; height: 72px; }
    .acc-wager .wg-ring::before { inset: 7px; }
    .acc-wager .wg-ring b { font-size: 17px; }
    .acc-wager .wg-big { font-size: 19px; }
  }

  /* Free case: subscribe to the channel. */
  .sub-modal { position: relative; max-width: 380px; text-align: center; padding: 26px 22px 20px; overflow: hidden; }
  .sub-modal::before { content: ''; position: absolute; left: -20%; right: -20%; top: -120px; height: 240px; background: radial-gradient(closest-side, rgba(42,171,238,.35), transparent); pointer-events: none; }
  .sub-close { position: absolute; top: 14px; right: 14px; z-index: 1; }
  .sub-hero { position: relative; display: grid; place-items: center; margin: 4px 0 16px; }
  .sub-plane { width: 76px; height: 76px; border-radius: 50%; display: grid; place-items: center; color: #fff;
    background: linear-gradient(160deg, #37BBFE, #1C8ADB); box-shadow: 0 16px 36px -12px rgba(42,171,238,.9), inset 0 1px 0 rgba(255,255,255,.35); animation: subFloat 3s ease-in-out infinite; }
  .sub-plane svg { width: 38px; height: 38px; margin-left: -3px; }
  @keyframes subFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
  .sub-title { position: relative; margin: 0 0 8px; font-family: var(--font-display); font-weight: 800; font-size: 20px; letter-spacing: -0.02em; }
  .sub-text { position: relative; margin: 0 0 16px; font-size: 13.5px; line-height: 1.5; color: var(--text-dim); }
  .sub-channel { position: relative; display: flex; align-items: center; gap: 12px; padding: 12px 14px; margin-bottom: 14px; border-radius: 16px; text-decoration: none; color: var(--text); text-align: left; background: var(--glass); box-shadow: inset 0 0 0 1px var(--hair); transition: background .15s; }
  .sub-channel:hover { background: var(--glass-2); }
  .sub-channel .logo-mark { width: 40px; height: 40px; }
  .sub-ch-info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
  .sub-ch-info b { font-weight: 800; font-size: 14.5px; }
  .sub-ch-info small { font-size: 12px; color: var(--text-dim); }
  .sub-ch-arrow { font-size: 22px; color: var(--text-dim); }
  .sub-go, .sub-check { display: block; width: 100%; padding: 13px 16px; font-size: 14.5px; flex: none; }
  .sub-modal .sub-go { background: linear-gradient(180deg, #2AABEE, #1E8FD6); color: #fff; box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 12px 26px -12px rgba(42,171,238,.85); margin-bottom: 8px; }
  .sub-msg { margin: 12px 0 0; font-size: 12.5px; color: var(--lose); line-height: 1.4; }
  .sub-modal.shake { animation: subShake .4s ease; }

  /* Brainrot top-ups switched off. */
  .tp-method.tp-closed { position: relative; opacity: .75; border-color: rgba(255,92,108,.35) !important; background: linear-gradient(160deg, rgba(255,92,108,.08), transparent 70%), var(--glass) !important; box-shadow: none !important; }
  .tp-method.tp-closed small { color: var(--lose); font-weight: 700; }
  .tp-method.tp-closed img { filter: grayscale(1); opacity: .6; }
  .tp-closed-x { position: absolute; top: 6px; right: 6px; width: 18px; height: 18px; border-radius: 50%; display: grid; place-items: center; font-size: 10px; font-weight: 900; color: #fff; background: var(--lose); box-shadow: 0 4px 10px -3px rgba(255,92,108,.8); }
  .tp-closed-box { text-align: center; padding: 18px 8px 6px; }
  .tp-closed-ico { width: 64px; height: 64px; margin: 0 auto 14px; border-radius: 50%; display: grid; place-items: center; color: var(--lose); background: rgba(255,92,108,.1); box-shadow: inset 0 0 0 1px rgba(255,92,108,.35), 0 12px 30px -14px rgba(255,92,108,.8); }
  .tp-closed-ico svg { width: 28px; height: 28px; }
  .tp-closed-box h4 { margin: 0 0 8px; font-family: var(--font-display); font-size: 17px; font-weight: 800; letter-spacing: -0.02em; }
  .tp-closed-box p { margin: 0 0 16px; font-size: 13px; line-height: 1.5; color: var(--text-dim); }

  /* Admin: brainrot top-up switch. */
  .adm-br-switch { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; margin-bottom: 12px; border-radius: 16px; background: var(--glass); box-shadow: inset 0 0 0 1px var(--hair); }
  .adm-br-switch.open { box-shadow: inset 0 0 0 1px rgba(61,220,151,.35); background: linear-gradient(90deg, rgba(61,220,151,.08), transparent 60%); }
  .adm-br-switch.closed { box-shadow: inset 0 0 0 1px rgba(255,92,108,.4); background: linear-gradient(90deg, rgba(255,92,108,.1), transparent 60%); }
  .adm-br-state { display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 10px; row-gap: 2px; }
  .adm-br-dot { grid-row: span 2; width: 10px; height: 10px; border-radius: 50%; background: var(--text-dim); }
  .adm-br-switch.open .adm-br-dot { background: var(--win); box-shadow: 0 0 10px var(--win); }
  .adm-br-switch.closed .adm-br-dot { background: var(--lose); box-shadow: 0 0 10px var(--lose); }
  .adm-br-state b { font-size: 13.5px; }
  .adm-br-state small { font-size: 12px; color: var(--text-dim); }
  .adm-br-switch button { flex: none; padding: 10px 18px; }

  /* Admin: reset a player. */
  .pp-admin-zone { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 14px; padding: 14px 16px; border-radius: 16px; background: linear-gradient(90deg, rgba(255,92,108,.08), transparent 70%); box-shadow: inset 0 0 0 1px rgba(255,92,108,.3); }
  .pp-admin-zone > div { display: flex; flex-direction: column; gap: 2px; }
  .pp-admin-zone b { font-size: 13.5px; color: var(--lose); }
  .pp-admin-zone small { font-size: 12px; color: var(--text-dim); }
  .pp-admin-zone .btn-danger-ghost { padding: 10px 16px; border-radius: 12px; border: 1px solid rgba(255,92,108,.5); background: transparent; color: var(--lose); font-weight: 700; cursor: pointer; }
  .pp-admin-zone .btn-danger-ghost.armed { background: var(--lose); color: #fff; }
  .pp-ban-zone.is-banned { box-shadow: inset 0 0 0 1px rgba(255,92,108,.7); background: linear-gradient(90deg, rgba(255,92,108,.16), transparent 70%); }
  .pp-ban-btn.unban { border-color: rgba(79,239,156,.6); color: var(--win); }
  .pp-ban-btn.unban.armed { background: var(--win); color: #06210f; }
  .pp-banned-badge { display: inline-flex; align-items: center; padding: 4px 10px; margin-top: 6px; border-radius: 999px; font-size: 11px; font-weight: 800; letter-spacing: .04em; background: rgba(255,92,108,.18); color: var(--lose); box-shadow: inset 0 0 0 1px rgba(255,92,108,.5); }
  .pp-reset-msg { margin-top: 8px; }

  /* Site currency: the S-coin after every price (the marker character inside is hidden). */
  .s-coin {
    display: inline-block; width: 1.08em; height: 1.08em; margin-left: 0; vertical-align: -0.2em;
    background: url(img/s-coin.webp) center / contain no-repeat; color: transparent; overflow: hidden;
    font-size: inherit; line-height: 1; user-select: none; filter: drop-shadow(0 1px 1.5px rgba(0,0,0,.35));
  }
  .s-coin-img { width: 1.15em; height: 1.15em; object-fit: contain; vertical-align: middle; }
  /* flex chips put their own gap between the number and the coin: keep it tight */
  .topbar-balance:not(.tbb-btc), .acc-wallet-chip.bal { gap: 1px; }
  .acc-wallet-chip.bal { padding-left: 14px; }
  .road-bet-ico .s-coin-img { width: 22px; height: 22px; }
  .case-coins .s-coin-img { width: 1em; height: 1em; }
  @keyframes subShake { 20%, 60% { transform: translateX(-6px); } 40%, 80% { transform: translateX(6px); } }
  .acc-hero { display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap; margin: 10px 0 14px; padding: 22px; background: radial-gradient(120% 140% at 0% 0%, rgba(var(--accent-rgb),.16), transparent 55%), radial-gradient(90% 120% at 100% 100%, rgba(255,176,46,.10), transparent 60%), linear-gradient(180deg, var(--surface-2), var(--surface)); }
  .acc-hero-left { display: flex; align-items: center; gap: 16px; min-width: 0; }
  .acc-hero .acc-avatar { width: 84px; height: 84px; border-width: 3px; box-shadow: 0 0 0 4px var(--surface-2), 0 0 30px -4px rgba(var(--accent-rgb),.65); transition: transform .15s; }
  .acc-hero .acc-avatar:hover { transform: scale(1.04); }
  .acc-hero-info { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
  .acc-hero-info .acc-nick { font-size: 19px; font-weight: 800; }
  .acc-id-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
  .acc-id-row .acc-role { margin-top: 0; }
  .acc-hero-right { display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
  .acc-hero-btns { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
  .acc-hero-btns .btn-primary, .acc-hero-btns .btn-secondary { padding: 10px 16px; }
  @media (max-width: 620px) { .acc-hero { flex-direction: column; align-items: stretch; text-align: center; } .acc-hero-left { flex-direction: column; } .acc-hero-info { align-items: center; } .acc-hero-right { align-items: stretch; } .acc-hero-btns { justify-content: stretch; } .acc-hero-btns > * { flex: 1; } .acc-hero .acc-wallet-row { justify-content: center; } }
  .acc-section-title { font-family: var(--font-display); font-size: 12px; letter-spacing: .05em; color: var(--text-dim); text-transform: uppercase; margin: 0 0 10px 2px; }
  .acc-stat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 14px; }
  @media (max-width: 620px) { .acc-stat-grid { grid-template-columns: repeat(2, 1fr); } }
  .acc-tile { --tc: var(--accent-rgb); position: relative; display: flex; align-items: center; gap: 12px; padding: 14px; border-radius: 16px; border: 1px solid rgba(var(--tc), .28); background: linear-gradient(145deg, rgba(var(--tc), .12), var(--surface) 70%); overflow: hidden; transition: transform .15s, box-shadow .15s; }
  .acc-tile:hover { transform: translateY(-2px); box-shadow: 0 12px 24px -16px rgba(var(--tc), .8); }
  .acc-tile-icon { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; font-size: 19px; flex: 0 0 auto; background: rgba(var(--tc), .18); box-shadow: inset 0 0 0 1px rgba(var(--tc), .35); }
  .acc-tile-num { font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 21px; line-height: 1.05; color: rgb(var(--tc)); }
  .acc-tile-lbl { font-size: 11px; color: var(--text-dim); text-transform: uppercase; letter-spacing: .03em; margin-top: 3px; }
  .acc-tile.t-cases { --tc: 255,176,46; }
  .acc-tile.t-upg { --tc: 185,140,255; }
  .acc-tile.t-wd { --tc: 79,239,156; }
  .acc-tile.t-inv { --tc: 255,122,198; }
  .acc-tile.t-q { --tc: 148,163,184; }
  .acc-stats-title, .acc-bestdrop-title { font-family: var(--font-display); font-size: 12px; letter-spacing: .05em; color: var(--text-dim); text-transform: uppercase; text-align: center; }
  .acc-email { font-size: 15px; }
  .acc-wallet-row { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
  .acc-wallet-chip { display: flex; align-items: center; gap: 8px; background: var(--surface-3); border: 1px solid var(--line); border-radius: 999px; padding: 6px 14px 6px 6px; font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 14px; }
  .acc-chip-icon { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; font-size: 13px; flex: 0 0 auto; }
  .acc-wallet-chip.btc .acc-chip-icon { background: rgba(255,176,46,.2); }
  .acc-wallet-chip.bal .acc-chip-icon { background: rgba(var(--accent-rgb),.18); }
  .acc-wallet-chip.btc { color: #ffb02e; }
  .acc-wallet-chip.bal { color: var(--accent); }
  .acc-hero-btns .acc-topup { width: auto; margin: 0; }
  .acc-history-link { font-size: 12px; color: var(--text-dim); background: none; border: none; cursor: pointer; text-decoration: underline; padding: 2px; }
  .acc-bestdrop-card { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; background: radial-gradient(80% 140% at 0% 50%, rgba(255,176,46,.14), transparent 60%), linear-gradient(180deg, var(--surface-2), var(--surface)); border-color: rgba(255,176,46,.3); }
  .acc-bestdrop-card::before { background: linear-gradient(90deg, transparent, rgba(255,176,46,.75), transparent); }
  .acc-bestdrop-card .acc-bestdrop-title { text-align: left; margin-bottom: 8px; }
  .acc-bestdrop-empty { color: var(--text-dim); font-size: 12.5px; text-align: center; width: 100%; padding: 10px 0; }
  .acc-bestdrop-img { width: 62px; height: 62px; border-radius: 14px; background: linear-gradient(135deg, rgba(255,176,46,.2), var(--surface-3)); object-fit: contain; padding: 6px; flex: 0 0 auto; border: 1px solid rgba(255,176,46,.4); }
  .acc-bestdrop-name { font-weight: 700; font-size: 14px; }
  .acc-bestdrop-price { font-family: "IBM Plex Mono", monospace; color: #ffb02e; font-weight: 800; font-size: 13.5px; }
  .acc-items-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 4px 0 2px; }
  .acc-items-head .my-req-divider { margin: 0; }
  .acc-sellall { flex: 0 0 auto; }
  .adm-open { width: 100%; margin-bottom: 4px; }
  .adm-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 10px; margin-bottom: 14px; }
  .adm-tabs { flex-wrap: wrap; }
  .adm-urow { display: grid; grid-template-columns: minmax(0, 2fr) 1fr 0.7fr 0.5fr 0.9fr 1.5fr; gap: 10px; padding: 10px 12px; border-radius: 10px; font-size: 13px; align-items: center; }
  .adm-urow:nth-child(odd) { background: var(--surface-2); }
  .adm-uhead { font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-dim); background: transparent !important; }
  .adm-email { overflow-wrap: anywhere; font-weight: 600; }
  .adm-item { background: var(--surface-2); border: 1px solid var(--line); border-radius: 14px; padding: 12px 14px; margin-bottom: 10px; display: flex; flex-direction: column; gap: 8px; }
  .adm-item-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  .adm-who { font-size: 12.5px; font-weight: 700; color: var(--accent); overflow-wrap: anywhere; }
  .adm-item-text { font-size: 13.5px; white-space: pre-wrap; overflow-wrap: anywhere; }
  .adm-photo-btn, .adm-act-btn { align-self: flex-start; background: var(--surface-3); color: var(--text); border: 1px solid var(--line); border-radius: 999px; padding: 6px 12px; font-family: inherit; font-size: 12px; font-weight: 700; cursor: pointer; }
  .adm-photo-btn:hover, .adm-act-btn:hover { border-color: var(--accent); color: var(--accent); }
  .adm-photo img { max-width: 100%; border-radius: 10px; }
  @media (max-width: 700px) { .adm-luck input { width: 48px; } .adm-urow { grid-template-columns: minmax(0, 1.5fr) 1fr 0.6fr 0.5fr 0.8fr 1.7fr; font-size: 12px; padding: 8px; } }
  .item-card { display: flex; align-items: center; gap: 12px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 14px; padding: 10px 12px; margin-bottom: 10px; }
  .item-img { width: 64px; height: 64px; object-fit: contain; flex: 0 0 auto; border-radius: 10px; background: var(--surface-3); }
  .item-info { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: 8px; }
  .item-name { font-weight: 800; font-size: 14.5px; }
  .item-actions { display: flex; gap: 8px; flex-wrap: wrap; }
  .item-actions button { padding: 8px 12px; font-size: 12.5px; }
  .item-actions .item-wd-low { font-size: 11.5px; line-height: 1.3; white-space: normal; text-align: left; max-width: 220px; opacity: .75; cursor: not-allowed; color: var(--fair); border-color: rgba(245,185,66,.35); }
  .item-status { font-size: 12.5px; line-height: 1.45; color: var(--text-dim); }
  .item-status.pending { color: var(--accent); }
  .item-status.ok { color: var(--accent); font-weight: 700; }
  .item-window { margin: 0 0 14px !important; font-size: 11.5px !important; }
  .acc-row { cursor: default; }
  .acc-time { font-size: 11px; color: var(--text-dim); flex: 0 0 auto; }

  .theme-wrap { position: relative; flex: 0 0 auto; }
  .theme-dot { width: 18px; height: 18px; border-radius: 50%; display: inline-block; border: 2px solid var(--text); }
  .theme-opt-dot { width: 16px; height: 16px; border-radius: 50%; display: inline-block; flex: 0 0 auto; border: 1px solid rgba(255,255,255,0.35); }
  .theme-dot.t-green, .theme-opt-dot.t-green { background: linear-gradient(135deg, #4FEF9C 50%, #121A16 50%); }
  .theme-dot.t-violet, .theme-opt-dot.t-violet { background: linear-gradient(135deg, #775AEF 50%, #050507 50%); }
  .theme-dot.t-mono, .theme-opt-dot.t-mono { background: linear-gradient(135deg, #F2F2F2 50%, #131313 50%); }
  .theme-dot.t-amber, .theme-opt-dot.t-amber { background: linear-gradient(135deg, #FFB02E 50%, #1A1208 50%); }
  .theme-dot.t-blue, .theme-opt-dot.t-blue { background: linear-gradient(135deg, #3FC8FF 50%, #0C1722 50%); }
  .theme-dot.t-classic, .theme-opt-dot.t-classic { background: linear-gradient(135deg, #2FBE79 50%, #0A0F0D 50%); }

  html[data-theme="classic"] .fx, html[data-theme="dark"] .fx { display: none; }
  html[data-theme="classic"] .panel { background: var(--surface); backdrop-filter: none; }
  html[data-theme="classic"] .faq-item, html[data-theme="classic"] .lib-card { background: var(--surface); }
  html[data-theme="classic"] .topbar { background: var(--surface); backdrop-filter: none; }

  @media (max-width: 1120px) { .topbar-brand { display: none; } }
  @media (max-width: 700px) {
    .topbar-inner { padding: 10px 14px; gap: 10px; justify-content: flex-end; }
    .topbar-brand { display: none; }
    .online-pill { margin-right: auto; }
    .topbar-links { order: 3; flex: 1 1 100%; overflow-x: auto; scrollbar-width: none; }
    .topbar-links::-webkit-scrollbar { display: none; }
    .auth-btn { padding: 8px 12px; }
    .lang-btn { width: 36px; height: 36px; }
    .lang-menu, .theme-menu { top: 42px; }
    .site-hero .hero-title { font-size: 26px; }
    .page { padding: 18px 14px 0; }
  }

  /* ---------- language switcher ---------- */
  .lang-wrap { position: relative; flex: 0 0 auto; }
  .lang-btn {
    width: 40px; height: 40px; border-radius: 50%;
    background: var(--surface-2); border: 1px solid var(--line);
    font-size: 17px; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
  }
  .lang-btn:hover { border-color: var(--accent); }
  .lang-menu {
    position: absolute; top: 46px; right: 0; z-index: 31;
    background: var(--surface); border: 1px solid var(--line); border-radius: 14px;
    padding: 6px; min-width: 170px;
    box-shadow: 0 16px 36px -14px var(--shadow);
    display: flex; flex-direction: column; gap: 2px;
  }
  .lang-option {
    display: flex; align-items: center; gap: 9px;
    background: transparent; border: none; color: var(--text);
    font-family: inherit; font-size: 13.5px; text-align: left;
    padding: 9px 10px; border-radius: 8px; cursor: pointer;
  }
  .lang-option:hover { background: var(--surface-2); }
  .lang-option.active { color: var(--accent); font-weight: 700; }
  .flag-icon { display: inline-flex; flex: 0 0 auto; border-radius: 3px; overflow: hidden; line-height: 0; box-shadow: 0 0 0 1px rgba(255,255,255,0.15); }
  .flag-icon svg { display: block; }
  .lang-btn .flag-icon svg { width: 20px; height: 14px; }
  .lang-option .flag-icon svg { width: 20px; height: 14px; }

  img { -webkit-user-drag: none; user-select: none; }
  .site-footer { width: 100%; max-width: 1000px; padding: 34px 20px 0; text-align: center; color: var(--text-dim); font-size: 12px; display: flex; flex-direction: column; align-items: center; gap: 14px; }
  .tg-join { display: inline-flex; align-items: center; gap: 10px; padding: 12px 24px; border-radius: 12px; background: #229ED9; color: #fff; font-weight: 700; font-size: 15px; text-decoration: none; box-shadow: 0 10px 24px -12px rgba(34,158,217,0.7); transition: transform .12s ease, filter .12s ease; }
  .tg-join:hover { transform: translateY(-2px); filter: brightness(1.08); }
  .foot-head { letter-spacing: 0.16em; font-size: 11.5px; color: var(--text-dim); opacity: 0.8; margin-top: 6px; }
  .foot-links { display: flex; gap: 22px; justify-content: center; }
  .foot-link { background: none; border: none; font-family: inherit; font-size: 14px; color: var(--text); cursor: pointer; padding: 4px 2px; }
  .foot-link:hover { color: var(--accent); }
  .foot-copy { margin-top: 4px; font-size: 12.5px; }

  .spin-panel { align-items: center; gap: 14px; }
  .spin-panel .case-info { margin-top: 18px; padding: 18px 20px; }
  .spin-panel .spin-count-row { margin-top: 20px; }
  .spin-panel .case-open { margin-top: 20px; }
  .spin-panel .spin-flash-row { margin: 22px 0 8px; }
  .demo-note { text-align: center; color: var(--fair); margin-top: 6px; }
  .spin-panel .spin-back { align-self: flex-start; }
  .spin-choose { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; width: 100%; max-width: 780px; margin: 0 auto; }
  .spin-choose .case-card { flex: 0 1 240px; width: 240px; min-width: 200px; max-width: 100%; }
  #paidCards, #paidCardsBasic { margin-top: 16px; }
  .spin-choice {
    display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center; cursor: pointer;
    background: color-mix(in srgb, var(--surface) 82%, transparent); border: 1.5px solid var(--line); border-radius: 20px;
    padding: 30px 20px; color: var(--text); font-family: inherit;
    transition: transform .14s ease, border-color .14s ease, box-shadow .14s ease;
  }
  .spin-choice:hover { transform: translateY(-3px); border-color: var(--accent); box-shadow: 0 16px 34px -18px rgba(var(--accent-rgb), 0.6); }
  .spin-choice.case-card { align-items: stretch; text-align: left; gap: 0; padding: 18px 18px 16px; min-height: 300px; }
  .case-card .cc-title { font-weight: 800; font-size: 15px; letter-spacing: .02em; text-transform: uppercase; color: var(--text); }
  .case-card .cc-sub { font-size: 13px; color: var(--text-dim); margin-top: 3px; }
  .case-card .cc-art { flex: 1; display: flex; align-items: center; justify-content: center; padding: 14px 0 12px; }
  .case-card .cc-art .sc-case { height: 132px; }
  .case-card .cc-art .sc-emoji { font-size: 84px; }
  .case-card .cc-price { align-self: center; padding: 8px 26px; border: 2px solid #d9793a; color: #ffb47a; font-weight: 800; font-size: 15px; letter-spacing: .03em; border-radius: 3px; background: rgba(217,121,58,.08); transition: background .15s, color .15s; }
  .spin-choice.case-card:hover .cc-price { background: rgba(217,121,58,.25); color: #ffd0a8; }
  .case-card.th-gold .cc-price { border-color: #e0a23a; color: #ffd166; background: rgba(224,162,58,.1); }
  .case-card.th-violet .cc-price { border-color: #a855f7; color: #e2c7ff; background: rgba(168,85,247,.12); }
  .spin-choice.case-card b { display: none; }
  .spin-choice .sc-emoji { font-size: 46px; line-height: 1; }
  .sc-case { position: relative; display: inline-block; height: 116px; }
  .sc-case img { height: 100%; width: auto; display: block; animation: caseFloat 3.4s ease-in-out infinite, caseGlow 2.6s ease-in-out infinite; transform-origin: 50% 90%; }
  .sc-case .sp { position: absolute; font-style: normal; color: #cfe6ff; text-shadow: 0 0 8px #6cb6ff, 0 0 14px #3f8bff; opacity: 0; pointer-events: none; }
  .sc-case .s1 { left: -6px; top: 14px; font-size: 16px; animation: caseSpark 2.8s ease-in-out infinite; }
  .sc-case .s2 { right: -4px; top: 34px; font-size: 12px; animation: caseSpark 2.8s ease-in-out .9s infinite; }
  .sc-case .s3 { left: 46%; top: -8px; font-size: 14px; animation: caseSpark 2.8s ease-in-out 1.8s infinite; }
  .spin-choice:hover .sc-case img { animation: caseWiggle .5s ease-in-out infinite, caseGlow 1s ease-in-out infinite; }
  .spin-choice:hover .sc-case .sp { animation-duration: 1.2s; }
  @keyframes caseFloat { 0%, 100% { transform: translateY(0) rotate(-1.5deg); } 50% { transform: translateY(-7px) rotate(1.5deg); } }
  @keyframes caseGlow { 0%, 100% { filter: drop-shadow(0 4px 10px rgba(63,139,255,.35)); } 50% { filter: drop-shadow(0 6px 20px rgba(90,170,255,.85)); } }
  @keyframes caseWiggle { 0%, 100% { transform: rotate(-3deg) scale(1.06); } 50% { transform: rotate(3deg) scale(1.06); } }
  @keyframes caseSpark { 0%, 100% { opacity: 0; transform: scale(.4) rotate(0); } 50% { opacity: 1; transform: scale(1.15) rotate(45deg); } }
  @media (prefers-reduced-motion: reduce) { .sc-case img, .sc-case .sp, .spin-choice:hover .sc-case img { animation: none; } }
  .spin-choice b { font-family: var(--font-display); font-weight: 400; font-size: 22px; color: var(--accent); }
  .spin-choice small { font-size: 13px; color: var(--text-dim); max-width: 26ch; }
  .promo-input { text-transform: uppercase; letter-spacing: 0.12em; text-align: center; font-family: "IBM Plex Mono", monospace; font-size: 18px; max-width: 360px; }
  #promoEnter { max-width: 560px; width: 100%; margin: 0 auto; }
  .wheel .seg5 { fill: rgba(255, 130, 200, 0.45); }
  .adm-promo-form { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; align-items: center; }
  .adm-promo-form .text-input { flex: 1 1 160px; min-width: 0; margin: 0; text-transform: uppercase; font-family: "IBM Plex Mono", monospace; }
  .adm-promo-form #pmUses { flex: 0 0 110px; }
  .tp-chips { display: flex; gap: 6px; flex-wrap: wrap; margin: 8px 0 4px; }
  .tp-chip, .ts-chip { background: var(--surface-3); border: 1px solid var(--line); color: var(--text); border-radius: 999px; padding: 6px 12px; font-family: "IBM Plex Mono", monospace; font-weight: 700; font-size: 12.5px; cursor: pointer; }
  .tp-chip:hover, .ts-chip:hover { border-color: var(--accent); color: var(--accent); }
  .tp-code { display: flex; gap: 8px; }
  .tp-code .text-input { flex: 1; min-width: 0; text-transform: uppercase; font-family: "IBM Plex Mono", monospace; }
  .tp-bonus { color: var(--accent); font-weight: 800; font-size: 12px; background: var(--surface-3); border-radius: 999px; padding: 2px 8px; }
  .tp-min { margin: 4px 0 12px !important; font-size: 11.5px !important; }
  .tp-modal { max-width: 520px; }
  .tp-methods { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 4px 0 18px; }
  .tp-method { --mc: var(--accent-rgb); display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 12px 6px 10px; border-radius: 14px; border: 1.5px solid var(--line); background: var(--surface-2); color: var(--text-dim); cursor: pointer; font-family: inherit; transition: all .15s; }
  .tp-method .tpm-ico { font-size: 22px; line-height: 1; height: 24px; display: grid; place-items: center; }
  .tp-method .tpm-ico img { width: 24px; height: 24px; object-fit: contain; }
  .tp-method b { font-size: 13px; color: var(--text); }
  .tp-method small { font-size: 10.5px; }
  .tp-method:hover { border-color: rgba(var(--mc), .6); }
  .tp-method.active { border-color: rgb(var(--mc)); background: linear-gradient(160deg, rgba(var(--mc), .18), var(--surface-2) 70%); box-shadow: 0 0 18px -4px rgba(var(--mc), .55); color: var(--text); }
  .tp-method.m-stars { --mc: 255,176,46; }
  .tp-method.m-br { --mc: 185,140,255; }
  .tp-lead { font-size: 13px; color: var(--text-dim); margin: 0 0 14px; line-height: 1.45; }
  .tp-amount-box { display: flex; align-items: center; gap: 10px; background: var(--surface-2); border: 1.5px solid var(--line); border-radius: 14px; padding: 4px 16px; transition: border-color .15s, box-shadow .15s; }
  .tp-amount-box:focus-within { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(var(--accent-rgb), .15); }
  .tp-amount-box input { flex: 1; min-width: 0; background: none; border: none; outline: none; color: var(--text); font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 28px; padding: 8px 0; -moz-appearance: textfield; }
  .tp-amount-box input::-webkit-outer-spin-button, .tp-amount-box input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
  .tp-amount-box span { font-weight: 800; color: var(--text-dim); font-size: 16px; }
  .tp-modal .tp-chips { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; margin: 10px 0 16px; }
  .tp-modal .tp-chip, .tp-modal .ts-chip { padding: 8px 0; border-radius: 10px; text-align: center; }
  .tp-chip.on, .ts-chip.on { border-color: var(--accent); color: var(--accent); background: rgba(var(--accent-rgb), .1); }
  .tp-receipt { margin: 16px 0 4px; border-radius: 14px; border: 1px dashed var(--line); background: var(--surface-2); padding: 10px 16px; }
  .tp-rrow { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; font-size: 13px; color: var(--text-dim); padding: 3px 0; }
  .tp-rrow b { color: var(--text); font-family: "IBM Plex Mono", monospace; }
  .tp-rrow.total { color: var(--text); font-weight: 700; }
  .tp-rrow + .tp-rrow.total { border-top: 1px solid var(--line); margin-top: 6px; padding-top: 9px; }
  .tp-rrow.total b { color: var(--accent); font-size: 20px; }
  .tp-gift {
    display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px 3px 4px; border-radius: 999px;
    background: linear-gradient(90deg, rgba(247,147,26,.2), rgba(247,147,26,.08));
    box-shadow: inset 0 0 0 1px rgba(247,147,26,.35); color: #FFC15A; line-height: 1;
  }
  .tp-gift .btc-coin { width: 18px; height: 18px; filter: drop-shadow(0 0 6px rgba(247,147,26,.55)); }
  .tp-gift b { font-weight: 800; font-size: 13.5px; font-variant-numeric: tabular-nums; }
  .tp-gift small { font-size: 10.5px; font-weight: 700; letter-spacing: .06em; opacity: .8; }
  .tp-msg-ok, .modal p.sub.tp-msg-ok {
    color: #3DDC97; font-weight: 700;
    text-shadow: 0 0 8px rgba(61,220,151,.65), 0 0 20px rgba(61,220,151,.3);
    animation: tpOkGlow 1.6s ease-in-out 1;
  }
  .tp-msg-ok::before { content: '✓'; display: inline-block; margin-right: 6px; font-weight: 900; }
  @keyframes tpOkGlow { 0% { text-shadow: 0 0 0 rgba(61,220,151,0); } 35% { text-shadow: 0 0 14px rgba(61,220,151,.95), 0 0 30px rgba(61,220,151,.5); } 100% { text-shadow: 0 0 8px rgba(61,220,151,.65), 0 0 20px rgba(61,220,151,.3); } }
  .btc-coin { display: inline-block; width: 1.25em; height: 1.25em; vertical-align: -0.25em; filter: drop-shadow(0 1px 2px rgba(0,0,0,.35)); }
  .acc-chip-icon .btc-coin { width: 20px; height: 20px; vertical-align: 0; }
  .tp-go-row { display: flex; gap: 8px; margin-top: 14px; }
  .tp-go-row .btn-secondary { flex: 0 0 auto; }
  .tp-go-row .btn-primary { flex: 1; padding: 14px; font-size: 15px; }
  .tp-go-stars { background: linear-gradient(180deg, #ffc247, #ff9f1c) !important; color: #1a0f02 !important; border-color: transparent !important; }
  .tp-go-br { background: linear-gradient(180deg, #c7a4ff, #9d6bff) !important; color: #140a22 !important; border-color: transparent !important; }
  .br-grid .br-pick { transition: border-color .15s, box-shadow .15s, transform .15s; }
  .br-pick.br-on { border-color: #b98cff !important; box-shadow: 0 0 16px -4px rgba(185,140,255,.7); background: linear-gradient(160deg, rgba(185,140,255,.16), var(--surface-2) 70%); }
  .br-pick.br-on .br-qty-n { color: #d8b4fe; }
  .pay-hero { display: flex; align-items: stretch; justify-content: space-between; gap: 12px; margin: 2px 0 12px; }
  .pay-hero-amt small, .pay-timer-chip small { display: block; font-size: 11.5px; color: var(--text-dim); text-transform: uppercase; letter-spacing: .05em; margin-bottom: 4px; }
  .pay-hero-amt > div { display: flex; align-items: center; gap: 10px; }
  .pay-hero-amt b { font-family: "IBM Plex Mono", monospace; font-size: 30px; line-height: 1; }
  .pay-timer-chip { flex: 0 0 auto; text-align: center; padding: 8px 14px; border-radius: 14px; background: var(--surface-2); border: 1px solid var(--line); }
  .pay-timer-chip b { font-family: "IBM Plex Mono", monospace; font-size: 24px; color: var(--text); }
  .pay-timer-chip.low { border-color: rgba(255,92,87,.55); box-shadow: 0 0 16px -6px rgba(255,92,87,.8); }
  .pay-timer-chip.low b { color: var(--lose); }
  .pay-bankcard { position: relative; overflow: hidden; border-radius: 16px; padding: 18px 18px 16px; margin-bottom: 12px; border: 1px solid rgba(var(--accent-rgb), .35); background: radial-gradient(120% 140% at 100% 0%, rgba(var(--accent-rgb), .30), transparent 55%), linear-gradient(135deg, var(--surface-3), var(--surface) 80%); box-shadow: 0 16px 34px -22px rgba(var(--accent-rgb), .8); }
  .pay-bankcard::after { content: ""; position: absolute; right: -30px; bottom: -50px; width: 150px; height: 150px; border-radius: 50%; border: 18px solid rgba(var(--accent-rgb), .08); }
  .pay-bankcard-top { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
  .pay-sim { width: 34px; height: 25px; border-radius: 6px; background: linear-gradient(135deg, #f5d27a, #b8892d); box-shadow: inset 0 0 0 1px rgba(0,0,0,.25); }
  .pay-bankcard-num { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
  .pay-k { display: block; font-size: 12px; color: var(--text-dim); }
  .pay-v { font-family: "IBM Plex Mono", monospace; font-size: 21px; letter-spacing: 0.08em; overflow-wrap: anywhere; }
  .pay-copy { flex: 0 0 auto; width: 36px; height: 36px; border-radius: 10px; border: 1px solid var(--line); background: var(--surface-3); color: var(--accent); font-size: 17px; cursor: pointer; transition: border-color .15s; }
  .pay-copy:hover { border-color: var(--accent); }
  .pay-warn { font-size: 12.5px; line-height: 1.5; color: #ffcf99; background: rgba(255,176,46,.08); border: 1px solid rgba(255,176,46,.3); border-radius: 12px; padding: 10px 12px; margin: 0 0 4px; }
  .pay-actions { display: flex; flex-direction: column; gap: 8px; margin-top: 14px; }
  .pay-actions button, .pay-actions a { width: 100%; }
  .pay-actions .btn-primary { padding: 14px; font-size: 15px; }
  .pay-wait { --wc: var(--accent-rgb); text-align: center; padding: 10px 0 4px; }
  .pay-wait.stars { --wc: 255,176,46; }
  .pay-wait.br { --wc: 185,140,255; }
  .pay-wait.ok { --wc: 79,239,156; }
  .pay-wait.bad { --wc: 255,92,87; }
  .pay-wait-icon { width: 88px; height: 88px; margin: 0 auto 4px; border-radius: 50%; display: grid; place-items: center; font-size: 40px; background: radial-gradient(circle, rgba(var(--wc), .24), rgba(var(--wc), .04) 70%); box-shadow: 0 0 0 1px rgba(var(--wc), .35), 0 0 40px -8px rgba(var(--wc), .6); animation: payPulse 2.2s ease-in-out infinite; }
  .pay-wait-icon img { width: 50px; height: 50px; object-fit: contain; }
  .pay-wait.ok .pay-wait-icon, .pay-wait.bad .pay-wait-icon { animation: none; }
  @keyframes payPulse { 50% { box-shadow: 0 0 0 1px rgba(var(--wc), .6), 0 0 60px -6px rgba(var(--wc), .9); } }
  .pay-wait h4 { font-family: var(--font-display); font-weight: 400; font-size: 19px; margin: 12px 0 6px; }
  .pay-wait .sub { max-width: 400px; margin: 8px auto 0; line-height: 1.5; }
  .pay-stars-amt { display: inline-flex; align-items: baseline; gap: 6px; margin: 4px 0 2px; padding: 6px 16px; border-radius: 999px; background: rgba(255,176,46,.12); border: 1px solid rgba(255,176,46,.35); color: #ffc247; font-weight: 700; }
  .pay-stars-amt b { font-family: "IBM Plex Mono", monospace; font-size: 22px; }
  .pay-dots { display: flex; justify-content: center; gap: 6px; margin: 10px 0 0; }
  .pay-dots i { width: 7px; height: 7px; border-radius: 50%; background: rgba(var(--wc), .9); animation: payDot 1.2s ease-in-out infinite; }
  .pay-dots i:nth-child(2) { animation-delay: .15s; }
  .pay-dots i:nth-child(3) { animation-delay: .3s; }
  @keyframes payDot { 0%, 80%, 100% { opacity: .25; transform: scale(.8); } 40% { opacity: 1; transform: scale(1); } }
  @media (prefers-reduced-motion: reduce) { .pay-wait-icon, .pay-dots i { animation: none; } }
  .br-steps { list-style: none; counter-reset: brs; margin: 14px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
  .br-steps li { counter-increment: brs; position: relative; padding: 11px 12px 11px 46px; border-radius: 12px; background: var(--surface-2); border: 1px solid var(--line); font-size: 13.5px; line-height: 1.45; text-align: left; }
  .br-steps li::before { content: counter(brs); position: absolute; left: 12px; top: 10px; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font-weight: 800; font-size: 12px; background: rgba(185,140,255,.2); color: #d8b4fe; }
  .br-steps b { color: #d8b4fe; }
  .br-wait-items { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
  .br-wait-item { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px 4px 4px; border-radius: 999px; background: var(--surface-3); border: 1px solid rgba(185,140,255,.35); font-size: 12.5px; }
  .br-wait-item b { color: #d8b4fe; }
  .br-wait-img { width: 26px; height: 26px; object-fit: contain; }
  .br-wait-img.emoji-pic { font-size: 18px; }
  .br-bot { display: inline-flex; align-items: center; gap: 8px; margin-left: 6px; padding: 2px 3px 2px 10px; border-radius: 10px; background: var(--surface-3); border: 1px solid rgba(185,140,255,.35); vertical-align: middle; }
  .br-bot .pay-copy { width: 28px; height: 28px; font-size: 14px; border-radius: 8px; color: #d8b4fe; }
  .br-stage { display: flex; justify-content: center; gap: 6px; margin-top: 10px; }
  .br-stage span { width: 34px; height: 5px; border-radius: 3px; background: var(--surface-3); }
  .br-stage span.on { background: #b98cff; box-shadow: 0 0 8px rgba(185,140,255,.7); }
  .avatar-btn.has-alert { outline: 3px solid var(--lose); outline-offset: 2px; animation: alertPulse 1.6s ease-in-out infinite; }
  @keyframes alertPulse { 0%, 100% { outline-color: var(--lose); } 50% { outline-color: transparent; } }
  .adm-hot { border-color: var(--accent); }
  .adm-tp-actions { display: flex; gap: 8px; flex-wrap: wrap; }
  .auth-check { display: flex; align-items: flex-start; gap: 10px; margin: 12px 0 4px; font-size: 13px; color: var(--text-dim); cursor: pointer; line-height: 1.4; }
  .verify-opt { display: flex; align-items: center; gap: 12px; margin: 14px 0 6px; padding: 12px 14px; border: 1px solid var(--line, rgba(255,255,255,.12)); border-radius: 12px; background: rgba(255,255,255,.04); cursor: pointer; transition: border-color .15s, background .15s; }
  .verify-opt[hidden] { display: none; }
  .verify-opt:hover { border-color: var(--accent); }
  .verify-opt input { position: absolute; opacity: 0; pointer-events: none; }
  .verify-box { flex: 0 0 auto; width: 22px; height: 22px; border-radius: 7px; border: 2px solid var(--text-dim); display: grid; place-items: center; transition: all .15s; }
  .verify-opt input:checked + .verify-box { background: var(--accent); border-color: var(--accent); }
  .verify-opt input:checked + .verify-box::after { content: '✓'; color: #04121c; font-weight: 800; font-size: 14px; line-height: 1; }
  .verify-opt:has(input:checked) { border-color: var(--accent); background: rgba(56,189,248,.08); }
  .verify-opt input:focus-visible + .verify-box { outline: 2px solid var(--accent); outline-offset: 2px; }
  .verify-txt { display: flex; flex-direction: column; gap: 2px; color: var(--text); font-size: 14px; line-height: 1.3; }
  .verify-txt small { color: var(--text-dim); font-size: 12px; }
  .auth-tabs { display: flex; gap: 8px; margin: 4px 0 12px; }
  .auth-tab { flex: 1; padding: 11px 8px; border-radius: 12px; border: 1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.04); color: var(--text-dim); font-weight: 700; font-size: 14px; cursor: pointer; opacity: .55; filter: grayscale(1); transition: all .2s; }
  .auth-tab:hover { opacity: .85; }
  .auth-tab.on { opacity: 1; filter: none; color: var(--text); border-color: var(--accent); background: rgba(56,189,248,.12); box-shadow: 0 0 16px rgba(56,189,248,.45), inset 0 0 10px rgba(56,189,248,.12); }
  #emailPane[hidden], #telegramPane[hidden] { display: none; }
  .cz-tabs { max-width: 560px; margin: 0 auto 18px; }
  .upg-rules { text-align: center; margin: 0 0 14px; }
  .road-stage { display: grid; grid-template-columns: 270px 1fr; gap: 16px; align-items: start; }
  @media (max-width: 760px) { .road-stage { grid-template-columns: 1fr; } }
  .road-controls { display: flex; flex-direction: column; }
  .road-hint { font-size: 12.5px; color: var(--text-dim); margin: 0 0 14px; }
  .road-bet-head { display: flex; justify-content: space-between; align-items: baseline; font-size: 11.5px; color: var(--text-dim); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 7px; }
  .road-bet-head b { color: var(--text); text-transform: none; letter-spacing: 0; font-size: 12.5px; }
  .road-bet-box { display: flex; align-items: center; gap: 8px; background: var(--surface-2); border: 1.5px solid var(--line); border-radius: 12px; padding: 10px 14px; margin-bottom: 18px; transition: opacity .15s; }
  .road-bet-box.disabled { opacity: .5; }
  .road-bet-ico { font-size: 16px; }
  .road-bet-box input { flex: 1; min-width: 0; background: none; border: none; outline: none; color: var(--text); font-weight: 800; font-size: 16px; font-family: inherit; }
  .road-diff-label { font-size: 11.5px; color: var(--text-dim); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 7px; }
  .road-diff-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-bottom: 18px; }
  .road-diff { padding: 12px 4px; border-radius: 12px; border: 1.5px solid var(--line); background: var(--surface-2); color: var(--text-dim); font-family: inherit; font-weight: 800; font-size: 13px; cursor: pointer; transition: all .15s; }
  .road-diff:hover { border-color: var(--accent); color: var(--text); }
  .road-diff.on { border-color: var(--accent); color: var(--text); background: rgba(var(--accent-rgb), .14); box-shadow: 0 0 14px rgba(var(--accent-rgb), .35); }
  .road-diff:disabled { opacity: .5; cursor: not-allowed; }
  .road-action-btn { width: 100%; margin-bottom: 8px; }
  .road-cashout-btn { width: 100%; }
  .road-play-area { min-width: 0; }
  .road-track-wrap { overflow-x: auto; overflow-y: hidden; border-radius: 16px; background: linear-gradient(180deg, #11212e, #0e1b26); box-shadow: inset 0 0 0 1px rgba(148,163,184,.08); margin-bottom: 12px; scrollbar-width: none; }
  .road-track-wrap::-webkit-scrollbar { display: none; }
  .road-track { position: relative; width: max-content; height: 290px; }
  .road-cols { display: flex; height: 100%; }
  .road-col { position: relative; flex: none; width: 92px; height: 100%; }
  .road-col:not(.road-start)::before { content: ""; position: absolute; left: -1px; top: 0; bottom: 0; width: 2px; background: repeating-linear-gradient(to bottom, rgba(148,163,184,.26) 0 22px, transparent 22px 44px); }
  .road-start-lbl { position: absolute; top: 14px; left: 0; right: 0; text-align: center; font-size: 10.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #9fb3c4; }
  .road-barrier { position: absolute; top: 74px; left: 50%; width: 58px; height: 12px; margin-left: -29px; border-radius: 3px; background: repeating-linear-gradient(-45deg, #5bb8ff 0 6px, #eaf6ff 6px 12px); box-shadow: 0 2px 6px rgba(0,0,0,.35); opacity: 0; transform: translateY(-6px); transition: opacity .25s, transform .25s; }
  .road-barrier::before, .road-barrier::after { content: ""; position: absolute; top: 12px; width: 4px; height: 8px; border-radius: 0 0 2px 2px; background: #5d7285; }
  .road-barrier::before { left: 7px; }
  .road-barrier::after { right: 7px; }
  .road-col.on .road-barrier, .road-col.current .road-barrier { opacity: 1; transform: none; }
  .road-hole { position: absolute; top: 150px; left: 50%; width: 60px; height: 30px; margin-left: -30px; border-radius: 50%; background: radial-gradient(ellipse at 50% 40%, #16293a, #0a1620 70%); border: 2px solid #2b4153; box-shadow: inset 0 3px 6px rgba(0,0,0,.55), 0 1px 0 rgba(255,255,255,.04); display: flex; align-items: center; justify-content: center; gap: 4px; }
  .road-hole i { display: block; width: 3px; height: 11px; border-radius: 2px; background: #3c5467; }
  .road-hole svg { filter: drop-shadow(0 0 6px rgba(34,197,94,.55)); }
  .road-pill { position: absolute; bottom: 18px; left: 50%; transform: translateX(-50%); white-space: nowrap; padding: 5px 10px; border-radius: 999px; font-weight: 800; font-size: 12px; background: #1c2e3c; color: #8aa0b2; transition: background .2s, color .2s, box-shadow .2s; }
  .road-col.on .road-pill { background: rgba(34,197,94,.16); color: #4ade80; }
  .road-col.current .road-pill { background: #1d9bf0; color: #fff; box-shadow: 0 0 16px rgba(29,155,240,.75); }
  .road-col.crash .road-pill { background: rgba(239,68,68,.2); color: #f87171; }
  .road-car { position: absolute; left: 50%; top: -80px; margin-left: -20px; animation: roadCarDrive .45s .2s ease-in forwards; filter: drop-shadow(0 4px 8px rgba(0,0,0,.5)); }
  @keyframes roadCarDrive { to { top: 118px; } }
  .road-hero { position: absolute; top: 106px; width: 96px; margin-left: -48px; pointer-events: none; transition: left .45s ease; filter: drop-shadow(0 6px 8px rgba(0,0,0,.45)); z-index: 2; }
  .road-hero.hop { animation: roadHeroHop .45s ease; }
  @keyframes roadHeroHop { 0% { transform: translateY(0); } 45% { transform: translateY(-36px); } 100% { transform: translateY(0); } }
  .road-hero.hit { transform: rotate(-16deg) translateY(10px); opacity: .8; filter: drop-shadow(0 0 12px rgba(239,68,68,.9)) saturate(.6); transition: left .45s ease, transform .3s .55s, opacity .3s .55s; }
  @media (prefers-reduced-motion: reduce) { .road-hero, .road-hero.hop, .road-car { animation: none; transition: none; } .road-car { top: 118px; } }
  .road-status { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; font-size: 13px; color: var(--text-dim); margin: 4px 0 10px; }
  .road-status b { color: var(--text); }
  #roadMsg.win { color: var(--win) !important; }
  #roadMsg.lose { color: var(--lose) !important; }
  .upg-stage { display: grid; grid-template-columns: 1fr minmax(240px, 300px) 1fr; gap: 16px; align-items: stretch; margin-bottom: 18px; }
  .upg-side { min-height: 220px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; text-align: center; padding: 18px; border-radius: 20px; border: 1.5px dashed var(--line); background: color-mix(in srgb, var(--surface) 82%, transparent); color: var(--text-dim); }
  .upg-cashback-hint { color: #ffb02e !important; font-weight: 700; }
  .upg-inner b.win { color: #4FEF9C; font-size: 22px; }
  .upg-inner b.lose { color: #FF5C57; font-size: 22px; }
  #upgSection.upg-shake { animation: upgShake .4s ease-in-out; }
  @keyframes upgShake { 20%, 80% { transform: translateX(-1px); } 40%, 60% { transform: translateX(1.5px); } 50% { transform: translateX(-1.5px); } }
  .upg-side.upg-jump { animation: upgJump .55s ease; }
  @keyframes upgJump { 0% { transform: translateY(0); } 35% { transform: translateY(-7px); } 60% { transform: translateY(1px); } 100% { transform: translateY(0); } }
  .upg-side { position: relative; overflow: visible; }
  .upg-firework { position: absolute; width: 0; height: 0; pointer-events: none; z-index: 6; }
  .upg-firework-spark { position: absolute; left: 0; top: 0; width: 5px; height: 5px; border-radius: 50%; pointer-events: none; animation: upgFireworkFly 1.15s ease-out forwards; }
  @keyframes upgFireworkFly {
    0% { transform: translate(-50%, -50%) scale(1); opacity: 1; }
    75% { opacity: 1; }
    100% { transform: translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) scale(.4); opacity: 0; }
  }
  .upg-firework-flash { position: absolute; left: -8px; top: -8px; width: 16px; height: 16px; border-radius: 50%; background: radial-gradient(circle, #fff, rgba(255,255,255,0) 70%); animation: upgFlashPop .5s ease-out forwards; pointer-events: none; z-index: 6; }
  @keyframes upgFlashPop { 0% { transform: scale(.3); opacity: 1; } 100% { transform: scale(2.2); opacity: 0; } }
  @media (prefers-reduced-motion: reduce) { #upgSection.upg-shake, .upg-side.upg-jump, .upg-firework-spark, .upg-firework-flash { animation: none; } }
  .upg-wallet-panel { background: var(--surface-2); border: 1px solid var(--line); border-radius: 18px; padding: 16px; margin-bottom: 16px; }
  .upg-wallet-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
  .upg-wallet-cards-single { grid-template-columns: 1fr; max-width: 220px; margin: 0 auto; }
  .upg-wallet-card { background: var(--surface-3); border: 1px solid var(--line); border-radius: 14px; padding: 14px 10px; display: flex; flex-direction: column; align-items: center; gap: 8px; }
  .upg-wallet-card .wc-icon { width: 46px; height: 46px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 20px; flex: 0 0 auto; }
  .wc-balance .wc-icon { background: radial-gradient(circle at 35% 30%, #8ee6a0, #2fbe79 70%); box-shadow: 0 0 0 3px rgba(47,190,121,.15); }
  .wc-btc .wc-icon { background: radial-gradient(circle at 35% 30%, #ffd58a, #d98a1f 70%); box-shadow: 0 0 0 3px rgba(217,138,31,.15); }
  .upg-wallet-card .wc-label { font-weight: 800; font-size: 12px; color: var(--text-dim); text-transform: uppercase; letter-spacing: .03em; }
  .upg-wallet-card .wc-value { font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 14px; background: var(--surface); border-radius: 8px; padding: 7px 10px; width: 100%; box-sizing: border-box; text-align: center; }
  .upg-side.upg-cashback-result { align-items: center; gap: 10px; }
  .upg-cashback-result .wc-icon { width: 46px; height: 46px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 20px; background: radial-gradient(circle at 35% 30%, #ffd58a, #d98a1f 70%); box-shadow: 0 0 0 3px rgba(217,138,31,.15); }
  .upg-cashback-result .wc-label { font-weight: 800; font-size: 12px; color: var(--text-dim); text-transform: uppercase; letter-spacing: .03em; }
  .upg-cashback-result .wc-value { font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 15px; color: #ffb02e; background: var(--surface); border-radius: 8px; padding: 8px 14px; }
  .wc-balance .wc-value { color: var(--accent); }
  .wc-btc .wc-value { color: #ffb02e; }
  .upg-cashback-bar-wrap { margin-top: 14px; text-align: center; }
  .upg-cashback-label { font-weight: 800; font-size: 13px; color: var(--text-dim); letter-spacing: .04em; margin-bottom: 8px; }
  .upg-cashback-bar { height: 4px; border-radius: 999px; background: var(--line); overflow: hidden; }
  .upg-cashback-fill { height: 100%; width: 100%; background: linear-gradient(90deg, var(--accent-strong), var(--accent)); box-shadow: 0 0 10px rgba(var(--accent-rgb),.6); }
  @media (max-width: 480px) { .upg-wallet-card .wc-label { font-size: 10.5px; } .upg-wallet-card .wc-value { font-size: 12.5px; } }
  .upg-side.filled { border-style: solid; border-color: var(--accent); color: var(--text); }
  .upg-side b { color: var(--text); }
  .upg-mini-row { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
  .upg-mini { width: 62px; text-align: center; font-size: 11px; line-height: 1.2; }
  .upg-mini img, .upg-mini .emoji-pic { width: 56px; height: 56px; object-fit: contain; }
  .upg-big-img { width: 96px; height: 96px; object-fit: contain; }
  .upg-big-img.emoji-pic { font-size: 56px; display: grid; place-items: center; }
  .upg-price { color: var(--accent); font-weight: 800; }
  .upg-center { display: flex; flex-direction: column; align-items: center; gap: 12px; }
  .upg-gauge { position: relative; width: 240px; height: 240px; }
  .upg-ring { position: absolute; inset: 0; border-radius: 50%; background: conic-gradient(var(--win) 0 0%, #2a2f2c 0% 100%);
    -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 18px), #000 calc(100% - 17px)); mask: radial-gradient(farthest-side, transparent calc(100% - 18px), #000 calc(100% - 17px)); }
  .upg-needle { position: absolute; inset: 0; transform: rotate(0deg); transition: transform 5s cubic-bezier(.12,.6,.1,1); pointer-events: none; }
  .upg-needle::before { content: ''; position: absolute; left: 50%; top: -6px; width: 0; height: 0; margin-left: -9px; border-left: 9px solid transparent; border-right: 9px solid transparent; border-top: 22px solid #fff; filter: drop-shadow(0 0 6px rgba(255,255,255,.7)); }
  .upg-inner { position: absolute; inset: 24px; border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; background: var(--surface); }
  .upg-inner b { font-size: 34px; color: var(--win); }
  .upg-inner small { color: var(--text-dim); font-size: 12px; }
  .upg-go { width: 100%; padding: 14px; font-size: 16px; }
  .upg-go:disabled { opacity: .45; cursor: not-allowed; }
  .upg-lists { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
  .upg-bar { display: flex; gap: 8px; align-items: center; margin-bottom: 12px; flex-wrap: wrap; }
  .upg-bar .upg-f { margin: 0; padding: 9px 10px; font-size: 13px; }
  .upg-f-name { flex: 1 1 110px; min-width: 90px; }
  .upg-f-num { flex: 0 1 84px; width: 84px; min-width: 60px; text-align: center; }
  .upg-sort { padding: 8px 12px; font-size: 16px; }
  .upg-grid.paged { max-height: none; overflow: visible; }
  .upg-pager { display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 14px; }
  .upg-pager button { width: 44px; height: 40px; border-radius: 10px; border: 1.5px solid var(--line); background: var(--surface-2); color: var(--text); font-size: 20px; cursor: pointer; font-family: inherit; }
  .upg-pager button:hover:not(:disabled) { border-color: var(--accent); color: var(--accent); }
  .upg-pager button:disabled { opacity: .35; cursor: not-allowed; }
  .upg-pager .pg-num { min-width: 64px; text-align: center; font-family: "IBM Plex Mono", monospace; font-weight: 700; font-size: 14px; color: var(--text-dim); }
  .upg-empty { grid-column: 1 / -1; text-align: center; color: var(--text-dim); padding: 20px 0; font-size: 13px; }
  .upg-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 10px; max-height: 420px; overflow-y: auto; padding: 2px; scrollbar-width: thin; scrollbar-color: rgba(var(--accent-rgb),.5) transparent; }
  .upg-card { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 10px 6px; border-radius: 14px; border: 1.5px solid var(--line); background: var(--surface-2); color: var(--text); font-family: inherit; font-size: 12px; cursor: pointer; text-align: center; transition: transform .12s, border-color .12s; }
  .upg-card:hover:not(:disabled) { transform: translateY(-2px); border-color: var(--accent); }
  .upg-card.sel { border-color: var(--accent); box-shadow: 0 0 12px rgba(var(--accent-rgb), .45); }
  .upg-card:disabled { opacity: .35; cursor: not-allowed; }
  .upg-card img, .upg-card .emoji-pic { width: 64px; height: 64px; object-fit: contain; }
  .upg-card .emoji-pic { font-size: 40px; display: grid; place-items: center; }
  .br-pick { cursor: default; }
  .br-qty { display: flex; align-items: center; gap: 8px; margin-top: 4px; }
  .br-qty button { width: 26px; height: 26px; border-radius: 8px; border: 1.5px solid var(--line); background: var(--surface-3); color: var(--text); font-size: 15px; line-height: 1; cursor: pointer; }
  .br-qty button:hover { border-color: var(--accent); color: var(--accent); }
  .br-qty-n { min-width: 16px; text-align: center; font-weight: 800; }
  .item-status.bad { color: var(--lose); }
  @media (max-width: 760px) {
    .upg-stage { grid-template-columns: 1fr; }
    .upg-center { order: -1; }
    .upg-lists { grid-template-columns: 1fr; }
    .upg-side { min-height: 130px; }
  }
  .upg-quick { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; align-items: center; margin: -4px 0 18px; }
  .upg-q { padding: 9px 16px; border-radius: 12px; border: 1.5px solid var(--line); background: var(--surface-2); color: var(--text); font-family: inherit; font-weight: 800; font-size: 14px; cursor: pointer; transition: border-color .12s, transform .12s; }
  .upg-q:hover { border-color: var(--accent); transform: translateY(-1px); }
  .upg-q.pct { color: var(--win); }
  .upg-q.gear { font-size: 18px; padding: 7px 12px; }
  .wheels-row { display: flex; justify-content: center; align-items: flex-start; gap: 14px; width: 100%; }
  .wheels-row .wheel-wrap { flex: 0 1 auto; }
  .wheels-row.n2 .wheel-wrap { width: min(46vw, 330px); margin-left: 0; margin-right: 0; }
  .wheels-row.n3 .wheel-wrap { width: min(30vw, 260px); margin-left: 0; margin-right: 0; }
  .wheels-row.n3 .wheel { border-width: 4px; }
  .wheels-row.n3 .wheel-hub, .wheels-row.n2 .wheel-hub { font-size: clamp(9px, 2vw, 14px); }
  .wheels-row:has(#spinBtn:disabled) .extra-hub { opacity: 0.6; cursor: not-allowed; }
  .upg-q.num { min-width: 52px; font-size: 18px; padding: 9px 0; }
  .spin-count-row { display: flex; gap: 8px; justify-content: center; margin: 12px 0 0; }
  .spin-count-row[hidden] { display: none; }
  .spin-count-row .upg-q.on { border-color: var(--accent); background: rgba(var(--accent-rgb), .16); box-shadow: 0 0 12px rgba(var(--accent-rgb), .45); }
  .spin-multi { display: flex; flex-direction: column; gap: 8px; margin: 10px 0; }
  .spin-multi-row { display: flex; align-items: center; gap: 12px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 12px; padding: 8px 12px; }
  .spin-multi-row img, .spin-multi-row .emoji-pic { width: 48px; height: 48px; object-fit: contain; flex: 0 0 auto; }
  .spin-multi-row .emoji-pic { font-size: 30px; display: grid; place-items: center; }
  .spin-multi-name { flex: 1; font-weight: 700; font-size: 14px; }
  .case-head { text-align: center; margin-top: -4px; }
  .case-kicker { font-size: 11px; font-weight: 800; letter-spacing: .14em; color: var(--text-dim); text-transform: uppercase; }
  .case-title { margin: 4px 0 0; font-family: var(--font-display); font-weight: 400; font-size: clamp(20px, 4.5vw, 30px); color: var(--text); }
  .case-stage { width: 100%; }
  .case-art { position: relative; width: 260px; height: 230px; margin: 6px auto 0; display: grid; place-items: center; }
  .case-art[hidden], .case-strips[hidden] { display: none; }
  .case-art { --cg: 63,200,255; }
  .case-art.gold, .sc-case.gold { --cg: 255,194,71; --cl: #fff1c2; --cd: #ff9d1c; }
  .case-art.ember, .sc-case.ember { --cg: 255,110,40; --cl: #fff0e0; --cd: #ff5a1f; }
  .case-art.violet, .sc-case.violet { --cg: 168,85,247; --cl: #f5eaff; --cd: #e040fb; }
  .case-ring { position: absolute; left: 50%; top: 50%; width: 212px; height: 212px; margin: -106px 0 0 -106px; border-radius: 50%; border: 3px dashed rgba(var(--cg),.75); box-shadow: 0 0 26px rgba(var(--cg),.3); animation: caseRing 16s linear infinite; }
  .case-ring.r2 { width: 240px; height: 240px; margin: -120px 0 0 -120px; border: 4px solid transparent; border-top-color: rgb(var(--cg)); border-right-color: rgb(var(--cg)); box-shadow: none; animation-duration: 5s; animation-direction: reverse; }
  @keyframes caseRing { to { transform: rotate(360deg); } }
  .case-img { position: relative; height: 158px; width: auto; animation: caseFloat 3.4s ease-in-out infinite, caseGlowV 2.6s ease-in-out infinite; }
  .case-emoji { position: relative; font-size: 100px; line-height: 1; animation: caseFloat 3.4s ease-in-out infinite; filter: drop-shadow(0 6px 18px rgba(var(--accent-rgb), .55)); }
  @keyframes caseGlowV { 0%, 100% { filter: drop-shadow(0 4px 12px rgba(var(--cg),.4)); } 50% { filter: drop-shadow(0 6px 28px rgba(var(--cg),.95)); } }
  .sc-case.gold img { animation: caseFloat 3.4s ease-in-out infinite, caseGlowV 2.6s ease-in-out infinite; }
  .spin-choice:hover .sc-case.gold img { animation: caseWiggle .5s ease-in-out infinite, caseGlowV 1s ease-in-out infinite; }
  .sc-case.gold .sp { color: #fff1c2; text-shadow: 0 0 8px #ffc247, 0 0 16px #ff9d1c; }
  .sc-case .s4 { left: 8%; bottom: 10px; font-size: 13px; animation: caseSpark 2.4s ease-in-out .4s infinite; }
  .sc-case .s5 { right: 6%; top: -4px; font-size: 15px; animation: caseSpark 2.4s ease-in-out 1.3s infinite; }
  .spin-choice.th-gold { border-color: rgba(255,194,71,.5); background: linear-gradient(160deg, rgba(255,194,71,.12), rgba(255,140,30,.05) 60%, var(--surface-2)); box-shadow: 0 0 24px -12px rgba(255,194,71,.7); }
  .spin-choice.th-gold:hover { border-color: #ffc247; box-shadow: 0 16px 38px -16px rgba(255,194,71,.85); }
  .spin-choice.th-gold b { color: #ffc247; }
  .case-halo { position: absolute; left: 50%; top: 50%; width: 340px; height: 340px; margin: -170px 0 0 -170px; border-radius: 50%; background: radial-gradient(circle, rgba(var(--cg),.4), rgba(var(--cg),.1) 45%, transparent 68%); animation: haloPulse 3s ease-in-out infinite; pointer-events: none; }
  @keyframes haloPulse { 0%, 100% { transform: scale(.92); opacity: .75; } 50% { transform: scale(1.08); opacity: 1; } }
  .case-rays { position: absolute; left: 50%; top: 50%; width: 360px; height: 360px; margin: -180px 0 0 -180px; border-radius: 50%; pointer-events: none;
    background: repeating-conic-gradient(rgba(var(--cg),.30) 0 9deg, transparent 9deg 24deg);
    -webkit-mask: radial-gradient(circle, #000 18%, transparent 66%); mask: radial-gradient(circle, #000 18%, transparent 66%); animation: caseRing 24s linear infinite; }
  .case-spark { position: absolute; font-style: normal; color: var(--cl, #fff1c2); text-shadow: 0 0 8px rgb(var(--cg)), 0 0 16px var(--cd, #ff9d1c); opacity: 0; pointer-events: none; animation: caseSpark 2.6s ease-in-out infinite; z-index: 2; }
  .case-dot { position: absolute; bottom: 14%; width: 6px; height: 6px; border-radius: 50%; background: var(--cl, #ffd35c); box-shadow: 0 0 8px rgb(var(--cg)), 0 0 14px var(--cd, #ff9d1c); opacity: 0; pointer-events: none; animation: dotRise 3s ease-in infinite; z-index: 2; }
  @keyframes dotRise { 0% { transform: translateY(0) scale(.6); opacity: 0; } 15% { opacity: .95; } 100% { transform: translateY(-150px) translateX(10px) scale(1); opacity: 0; } }
  html .spin-panel.theme-gold { background: radial-gradient(ellipse at 50% 18%, rgba(255,194,71,.20), rgba(255,140,30,.06) 45%, transparent 70%), color-mix(in srgb, var(--surface) 88%, #2a1a00); border-color: rgba(255,194,71,.45); box-shadow: 0 0 40px -18px rgba(255,194,71,.7); }
  .theme-gold .case-title { color: #ffe08a; text-shadow: 0 0 18px rgba(255,194,71,.55); }
  .theme-gold .case-kicker { color: #d9a441; }
  .theme-gold .case-open { background: linear-gradient(160deg, #ffd166, #f0a020); color: #2a1800; box-shadow: 0 8px 22px -8px rgba(255,180,40,.8); }
  .theme-gold .case-info { border-color: rgba(255,194,71,.35); }
  .theme-gold .spin-status.ok { color: #ffd166; }
  .theme-gold .case-strip { border-color: rgba(255,194,71,.4); }
  .theme-gold .upg-q.num.on { border-color: #ffc247; background: rgba(255,194,71,.16); box-shadow: 0 0 12px rgba(255,194,71,.5); }
  @media (prefers-reduced-motion: reduce) { .case-halo, .case-rays, .case-spark, .case-dot { animation: none; } }
  .sc-case.violet img { animation: caseFloat 3.4s ease-in-out infinite, caseGlowV 2.6s ease-in-out infinite; }
  .spin-choice:hover .sc-case.violet img { animation: caseWiggle .5s ease-in-out infinite, caseGlowV 1s ease-in-out infinite; }
  .sc-case.violet .sp { color: #f5eaff; text-shadow: 0 0 8px #a855f7, 0 0 16px #e040fb; }
  .spin-choice.th-violet { border-color: rgba(168,85,247,.55); background: linear-gradient(160deg, rgba(168,85,247,.16), rgba(224,64,251,.06) 60%, var(--surface-2)); box-shadow: 0 0 26px -12px rgba(168,85,247,.8); }
  .spin-choice.th-violet:hover { border-color: #c084fc; box-shadow: 0 16px 40px -16px rgba(192,132,252,.9); }
  .spin-choice.th-violet b { color: #d8b4fe; }
  html .spin-panel.theme-violet { background: radial-gradient(ellipse at 50% 16%, rgba(168,85,247,.26), rgba(224,64,251,.08) 45%, transparent 72%), color-mix(in srgb, var(--surface) 86%, #1a0a2e); border-color: rgba(168,85,247,.55); box-shadow: 0 0 44px -16px rgba(168,85,247,.85); }
  .theme-violet .case-title { color: #e9d5ff; text-shadow: 0 0 20px rgba(192,132,252,.7); }
  .theme-violet .case-kicker { color: #b78af0; }
  .theme-violet .case-open { background: linear-gradient(160deg, #c084fc, #7c3aed); color: #fff; box-shadow: 0 8px 24px -8px rgba(168,85,247,.9); }
  .theme-violet .case-info { border-color: rgba(168,85,247,.4); }
  .theme-violet .spin-status.ok { color: #d8b4fe; }
  .theme-violet .case-strip { border-color: rgba(168,85,247,.5); }
  .theme-violet .upg-q.num.on { border-color: #c084fc; background: rgba(168,85,247,.2); box-shadow: 0 0 12px rgba(168,85,247,.6); }
  .theme-violet .case-marker { background: #d946ef; box-shadow: 0 0 14px #d946ef; }
  .theme-violet .case-marker::before { border-top-color: #d946ef; }
  .case-wave { position: absolute; left: 50%; top: 50%; width: 130px; height: 130px; margin: -65px 0 0 -65px; border-radius: 50%; border: 2px solid rgba(var(--cg), .85); box-shadow: 0 0 18px rgba(var(--cg), .6); opacity: 0; pointer-events: none; animation: waveOut 3s ease-out infinite; }
  .case-wave.w2 { animation-delay: 1.5s; }
  @keyframes waveOut { 0% { transform: scale(.7); opacity: .9; } 100% { transform: scale(2.6); opacity: 0; } }
  .case-orbit { position: absolute; left: 50%; top: 50%; width: 0; height: 0; pointer-events: none; animation: caseRing 6s linear infinite; z-index: 3; }
  .case-orbit i { position: absolute; left: 0; width: 11px; height: 11px; margin-left: -5.5px; border-radius: 50%; background: radial-gradient(circle, #fff, #e9c6ff 40%, #a855f7); box-shadow: 0 0 12px #c084fc, 0 0 24px #a855f7; }
  .case-flash { position: absolute; left: 50%; top: 50%; width: 300px; height: 300px; margin: -150px 0 0 -150px; border-radius: 50%; background: radial-gradient(circle, rgba(255,255,255,.85), rgba(200,140,255,.45) 40%, transparent 70%); opacity: 0; pointer-events: none; animation: flashZap 4.6s linear infinite; z-index: 2; }
  .case-bolt { position: absolute; top: 4%; width: 46px; height: 138px; opacity: 0; pointer-events: none; z-index: 2; filter: drop-shadow(0 0 6px #d8b4fe) drop-shadow(0 0 12px #a855f7); animation: flashZap 4.6s linear infinite; }
  .case-bolt polyline { fill: none; stroke: #f5eaff; stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; }
  .case-bolt.b1 { left: 4%; }
  .case-bolt.b2 { right: 4%; animation-delay: .25s; }
  @keyframes flashZap { 0%, 86% { opacity: 0; } 88% { opacity: .95; } 90% { opacity: .1; } 92% { opacity: .8; } 96%, 100% { opacity: 0; } }
  @media (prefers-reduced-motion: reduce) { .case-wave, .case-orbit, .case-flash, .case-bolt { animation: none; } }
  .sc-case.ember img { animation: caseFloat 3.4s ease-in-out infinite, caseGlowV 2.6s ease-in-out infinite; }
  .spin-choice:hover .sc-case.ember img { animation: caseWiggle .5s ease-in-out infinite, caseGlowV 1s ease-in-out infinite; }
  .sc-case.ember .sp { color: #fff0e0; text-shadow: 0 0 8px #ff8a3d, 0 0 16px #ff5a1f; }
  .spin-choice.th-ember { border-color: rgba(255,110,40,.5); background: linear-gradient(160deg, rgba(255,110,40,.13), rgba(255,60,20,.05) 60%, var(--surface-2)); box-shadow: 0 0 24px -12px rgba(255,110,40,.75); }
  .spin-choice.th-ember:hover { border-color: #ff8a3d; box-shadow: 0 16px 38px -16px rgba(255,110,40,.9); }
  .case-card.th-ember .cc-price { border-color: #ff7a2e; color: #ffc9a3; background: rgba(255,110,40,.12); }
  html .spin-panel.theme-ember { background: radial-gradient(ellipse at 50% 18%, rgba(255,110,40,.2), rgba(255,60,20,.06) 45%, transparent 70%), color-mix(in srgb, var(--surface) 88%, #2a0e00); border-color: rgba(255,110,40,.45); box-shadow: 0 0 40px -18px rgba(255,110,40,.7); }
  .theme-ember .case-title { color: #ffd2b0; text-shadow: 0 0 18px rgba(255,110,40,.55); }
  .theme-ember .case-kicker { color: #e08a55; }
  .theme-ember .case-open { background: linear-gradient(160deg, #ff9a52, #e0501a); color: #fff; box-shadow: 0 8px 22px -8px rgba(255,100,30,.8); }
  .theme-ember .case-info { border-color: rgba(255,110,40,.35); }
  .theme-ember .spin-status.ok { color: #ffb47a; }
  .theme-ember .case-strip { border-color: rgba(255,110,40,.45); }
  .case-art.richgold, .sc-case.richgold { --cg: 255,205,40; --cl: #fffbe6; --cd: #ff8c00; }
  .case-art.richgold .case-ring { width: 250px; height: 250px; margin: -125px 0 0 -125px; border-width: 4px; box-shadow: 0 0 42px rgba(var(--cg),.55); }
  .case-art.richgold .case-ring.r2 { width: 288px; height: 288px; margin: -144px 0 0 -144px; border-width: 5px; }
  .case-art.richgold .case-halo { width: 410px; height: 410px; margin: -205px 0 0 -205px; }
  .case-art.richgold .case-rays { width: 430px; height: 430px; margin: -215px 0 0 -215px; }
  .case-art.richgold .case-flash { background: radial-gradient(circle, rgba(255,255,255,.9), rgba(255,205,40,.5) 40%, transparent 70%); }
  .case-art.richgold .case-bolt polyline { stroke: #fff6d8; }
  .case-art.richgold .case-bolt { filter: drop-shadow(0 0 6px #ffce46) drop-shadow(0 0 14px #ff8c00); }
  .case-art.richgold .case-orbit i { background: radial-gradient(circle, #fff, #ffe9a8 40%, #ffce46); box-shadow: 0 0 14px #ffce46, 0 0 28px #ff8c00; }
  .sc-case.richgold img { animation: caseFloat 3.4s ease-in-out infinite, caseGlowV 2.6s ease-in-out infinite; }
  .spin-choice:hover .sc-case.richgold img { animation: caseWiggle .5s ease-in-out infinite, caseGlowV 1s ease-in-out infinite; }
  .sc-case.richgold .sp { color: #fffbe6; text-shadow: 0 0 10px #ffce46, 0 0 20px #ff8c00; }
  .spin-choice.th-richgold { border-color: rgba(255,205,40,.65); background: linear-gradient(160deg, rgba(255,205,40,.18), rgba(255,140,0,.06) 60%, var(--surface-2)); box-shadow: 0 0 30px -10px rgba(255,205,40,.9); }
  .spin-choice.th-richgold:hover { border-color: #ffce46; box-shadow: 0 18px 44px -14px rgba(255,205,40,1); }
  .spin-choice.th-richgold b { color: #ffce46; }
  .case-card.th-richgold .cc-price { border-color: #ffce46; color: #ffe9a8; background: rgba(255,205,40,.16); }
  html .spin-panel.theme-richgold { background: radial-gradient(ellipse at 50% 15%, rgba(255,205,40,.3), rgba(255,140,0,.08) 45%, transparent 72%), color-mix(in srgb, var(--surface) 84%, #2a1a00); border-color: rgba(255,205,40,.65); box-shadow: 0 0 58px -14px rgba(255,205,40,.95); }
  .theme-richgold .case-title { color: #ffe9a8; text-shadow: 0 0 26px rgba(255,205,40,.8); }
  .theme-richgold .case-kicker { color: #f0c060; }
  .theme-richgold .case-open { background: linear-gradient(160deg, #ffe27a, #ff9a00); color: #2a1800; box-shadow: 0 8px 26px -8px rgba(255,180,20,.9); }
  .theme-richgold .case-info { border-color: rgba(255,205,40,.45); }
  .theme-richgold .spin-status.ok { color: #ffe27a; }
  .theme-richgold .case-strip { border-color: rgba(255,205,40,.55); }
  .theme-richgold .upg-q.num.on { border-color: #ffce46; background: rgba(255,205,40,.2); box-shadow: 0 0 14px rgba(255,205,40,.6); }
  .theme-richgold .case-marker { background: #ffce46; box-shadow: 0 0 16px #ffce46; }
  .theme-richgold .case-marker::before { border-top-color: #ffce46; }
  .case-art.tropic, .sc-case.tropic { --cg: 52,196,120; --cl: #eafff1; --cd: #1f9d55; }
  .sc-case.tropic img { animation: caseFloat 3.4s ease-in-out infinite, caseGlowV 2.6s ease-in-out infinite; }
  .spin-choice:hover .sc-case.tropic img { animation: caseWiggle .5s ease-in-out infinite, caseGlowV 1s ease-in-out infinite; }
  .sc-case.tropic .sp { color: #eafff1; text-shadow: 0 0 8px #34c478, 0 0 16px #1f9d55; }
  .spin-choice.th-tropic { border-color: rgba(52,196,120,.5); background: linear-gradient(160deg, rgba(52,196,120,.14), rgba(31,157,85,.05) 60%, var(--surface-2)); box-shadow: 0 0 24px -12px rgba(52,196,120,.75); }
  .spin-choice.th-tropic:hover { border-color: #4de08e; box-shadow: 0 16px 38px -16px rgba(52,196,120,.9); }
  .case-cat { display: flex; align-items: center; gap: 16px; width: 100%; max-width: 780px; margin: 80px auto 32px; }
  .case-cat:first-child { margin-top: 4px; }
  .case-cat span { flex: 0 0 auto; font-family: var(--font-display); font-weight: 400; font-size: 14px; letter-spacing: .04em; color: var(--text-dim); white-space: nowrap; }
  .case-cat::before, .case-cat::after { content: ''; flex: 1; height: 1px; }
  .case-cat::before { background: linear-gradient(90deg, transparent, rgba(var(--accent-rgb),.55)); }
  .case-cat::after { background: linear-gradient(90deg, rgba(var(--accent-rgb),.55), transparent); }
  .case-card.th-tropic .cc-price { border-color: #2fb56d; color: #9dfcc4; background: rgba(52,196,120,.12); }
  html .spin-panel.theme-tropic { background: radial-gradient(ellipse at 50% 18%, rgba(52,196,120,.22), rgba(31,157,85,.07) 45%, transparent 70%), color-mix(in srgb, var(--surface) 88%, #04241a); border-color: rgba(52,196,120,.5); box-shadow: 0 0 40px -18px rgba(52,196,120,.75); }
  .theme-tropic .case-title { color: #baffdb; text-shadow: 0 0 18px rgba(52,196,120,.55); }
  .theme-tropic .case-kicker { color: #6bd79c; }
  .theme-tropic .case-open { background: linear-gradient(160deg, #55dd97, #17a35a); color: #04241a; box-shadow: 0 8px 22px -8px rgba(52,196,120,.8); }
  .theme-tropic .case-info { border-color: rgba(52,196,120,.35); }
  .theme-tropic .spin-status.ok { color: #7cf0ae; }
  .theme-tropic .case-strip { border-color: rgba(52,196,120,.45); }
  .theme-tropic .upg-q.num.on { border-color: #34c478; background: rgba(52,196,120,.16); box-shadow: 0 0 12px rgba(52,196,120,.5); }
  .case-info { display: flex; align-items: center; gap: 14px; width: 100%; max-width: 520px; margin: 4px auto 0; padding: 14px 18px; border-radius: 14px; background: rgba(0,0,0,.35); border: 1px solid var(--line); }
  .case-coins { font-size: 34px; line-height: 1; flex: 0 0 auto; }
  .case-info-txt { flex: 1; text-align: center; }
  .case-info-txt .spin-status { min-height: 0; font-size: 14px; }
  .case-info-txt .spin-balance { margin-top: 4px; font-size: 12.5px; }
  .case-topup { flex: 0 0 auto; padding: 9px 14px; border-radius: 8px; border: 2px solid #d9793a; background: rgba(217,121,58,.12); color: #ffb47a; font-family: inherit; font-weight: 800; font-size: 12.5px; text-transform: uppercase; cursor: pointer; }
  .case-topup:hover { background: rgba(217,121,58,.25); }
  .case-topup[hidden] { display: none; }
  .case-open { width: min(100%, 320px); padding: 14px; font-size: 17px; font-family: var(--font-display); letter-spacing: .04em; margin: 4px auto 0; display: block; flex: none; }
  .case-contents-head { width: 100%; text-align: center; font-weight: 800; font-size: 16px; letter-spacing: .06em; text-transform: uppercase; margin-top: 30px; padding-top: 26px; border-top: 1px solid var(--line); }
  .case-contents { display: grid; grid-template-columns: repeat(auto-fill, minmax(148px, 1fr)); gap: 10px; width: 100%; }
  .case-item { --rc: #8a93a6; position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 4px; min-height: 168px; padding: 10px 8px 12px; border-radius: 6px; background: linear-gradient(160deg, rgba(60,80,140,.22), rgba(20,25,45,.55)); border: 1px solid rgba(255,255,255,.06); text-align: center; }
  .case-item::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--rc); box-shadow: 0 0 12px var(--rc); }
  .case-item.r0 { --rc: #8a93a6; } .case-item.r1 { --rc: #4b69ff; } .case-item.r2 { --rc: #8847ff; } .case-item.r3 { --rc: #d32ce6; } .case-item.r4 { --rc: #ffc247; }
  .case-item .case-pic { width: 84px; height: 84px; object-fit: contain; margin-bottom: auto; }
  .case-item .case-pic.emoji-pic { font-size: 52px; display: grid; place-items: center; }
  .case-price { align-self: flex-start; padding: 2px 8px; background: rgba(0,0,0,.55); color: #ff9d5c; font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 13px; }
  .case-iname { align-self: flex-start; font-size: 12px; font-weight: 600; text-align: left; line-height: 1.25; }
  .case-strips { display: flex; flex-direction: column; gap: 10px; width: 100%; margin: 6px 0; }
  .case-strip { position: relative; overflow: hidden; width: 100%; height: 176px; border-radius: 10px; background: rgba(0,0,0,.35); border: 1px solid var(--line); }
  .case-strip::before, .case-strip::after { content: ''; position: absolute; top: 0; bottom: 0; width: 60px; z-index: 2; pointer-events: none; }
  .case-strip::before { left: 0; background: linear-gradient(90deg, var(--surface), transparent); }
  .case-strip::after { right: 0; background: linear-gradient(270deg, var(--surface), transparent); }
  .case-track { display: flex; padding: 8px 0; will-change: transform; }
  .case-track .case-item { flex: 0 0 124px; width: 124px; min-height: 158px; margin-right: 8px; padding: 8px 6px 10px; }
  .case-track .case-item .case-pic { width: 72px; height: 72px; }
  .case-track .case-item.win { outline: 2px solid var(--rc); box-shadow: 0 0 22px var(--rc); }
  .case-marker { position: absolute; left: 50%; top: 0; bottom: 0; width: 3px; margin-left: -1.5px; z-index: 3; background: #ffc247; box-shadow: 0 0 12px #ffc247; pointer-events: none; }
  .case-marker::before { content: ''; position: absolute; left: -8px; top: -1px; border-left: 9.5px solid transparent; border-right: 9.5px solid transparent; border-top: 12px solid #ffc247; }
  @media (max-width: 560px) { .case-info { flex-wrap: wrap; justify-content: center; } .case-contents { grid-template-columns: repeat(2, 1fr); } }
  .spin-flash-row { display: flex; justify-content: center; margin: 12px 0 4px; }
  .spin-flash-row .upg-q { font-size: 14px; }
  .upg-q.gear.on { border-color: #ffd23f; background: rgba(255,210,63,.16); box-shadow: 0 0 14px rgba(255,210,63,.55); }
  .upg-side.filled, .upg-mini { cursor: pointer; }
  .upg-set-title { margin: 18px 0 8px; font-size: 16px; font-weight: 800; }
  .upg-set-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
  .upg-set-row input { width: 76px; text-align: center; }
  .upg-set-opt { display: flex; align-items: flex-start; gap: 10px; margin: 8px 0; cursor: pointer; }
  .upg-set-opt input { margin-top: 3px; accent-color: var(--accent); }
  .upg-set-opt small { display: block; color: var(--text-dim); }
  .btn-discord { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; margin: 10px 0 4px; padding: 12px; border: 0; border-radius: 12px; background: #5865f2; color: #fff; font-weight: 700; font-size: 15px; cursor: pointer; transition: filter .15s; }
  .btn-discord:hover { filter: brightness(1.1); }
  .spin-win-price { text-align: center; margin: 6px 0 10px; color: var(--text-dim); font-size: 15px; }
  .spin-win-price b { color: var(--accent); font-size: 18px; }
  .auth-check input { margin-top: 2px; width: 18px; height: 18px; flex: 0 0 auto; accent-color: var(--accent); cursor: pointer; }
  .acc-mkt { margin: 10px 0 14px; }
  .adm-mkt { margin-bottom: 10px; }
  .acc-topup { width: 100%; margin-bottom: 4px; }
  .topup-tg { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; text-align: center; }
  .adm-topup { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; background: var(--surface-2); border: 1px solid var(--line); border-radius: 14px; padding: 12px; margin-bottom: 12px; }
  .adm-topup b { flex: 1 1 100%; font-size: 13.5px; }
  .adm-topup .text-input { flex: 1 1 180px; min-width: 0; margin: 0; }
  .adm-topup #tuAmount { flex: 0 1 190px; }
  .adm-topup-nice {
    position: relative; background: linear-gradient(160deg, var(--surface-2), var(--surface)); border-radius: 16px;
    padding: 16px 16px 14px; box-shadow: 0 14px 30px -22px rgba(0,0,0,.65); overflow: hidden;
  }
  .adm-topup-nice::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: linear-gradient(90deg, transparent, rgba(var(--accent-rgb),.75), transparent); }
  .adm-topup-nice b { font-family: var(--font-display); font-size: 12px; letter-spacing: .04em; text-transform: uppercase; color: var(--text-dim); }
  .adm-topup-nice .text-input { background: var(--surface-3); border-radius: 10px; }
  .adm-topup-nice #tuGo { border-radius: 10px; }
  .adm-nick { display: inline-block; background: rgba(var(--accent-rgb),.15); color: var(--accent); font-weight: 800; font-size: 11.5px; border-radius: 999px; padding: 1px 8px; margin-right: 6px; }
  .adm-lookup { cursor: pointer; }
  .adm-lookup:hover { text-decoration: underline; }
  .loot-chip.clickable, .loot-top-card.clickable { cursor: pointer; }
  .loot-top-card.clickable:hover { border-color: rgba(255,176,46,.55); }
  .pp-modal .acc-stat-grid { grid-template-columns: repeat(4, 1fr); }
  @media (max-width: 620px) { .pp-modal .acc-stat-grid { grid-template-columns: repeat(2, 1fr); } }
  .pp-avatar { width: 84px; height: 84px; border-radius: 50%; display: grid; place-items: center; flex: 0 0 auto; font-family: var(--font-display); font-size: 34px; color: #0b1117; box-shadow: 0 0 0 4px var(--surface-2), 0 12px 30px -10px rgba(0,0,0,.8); }
  .pp-hero .acc-nick { font-size: 22px; font-weight: 800; }
  .pp-admin-email { color: #ffb02e; }
  .pp-tabs { display: flex; gap: 8px; margin-bottom: 12px; flex-wrap: wrap; }
  .pp-tab { flex: 1; min-width: 110px; padding: 11px 10px; border-radius: 12px; border: 1.5px solid var(--line); background: var(--surface-2); color: var(--text-dim); font-family: inherit; font-weight: 800; font-size: 13px; cursor: pointer; transition: all .15s; }
  .pp-tab span { display: inline-block; margin-left: 4px; padding: 1px 7px; border-radius: 999px; background: var(--surface-3); font-size: 11px; }
  .pp-tab:hover { color: var(--text); border-color: rgba(var(--accent-rgb), .5); }
  .pp-tab.on { color: var(--text); border-color: var(--accent); background: rgba(var(--accent-rgb), .12); box-shadow: 0 0 14px rgba(var(--accent-rgb), .3); }
  .pp-tab.on span { background: var(--accent); color: var(--accent-ink); }
  .pp-tab-body { max-height: 420px; overflow-y: auto; padding-right: 4px; scrollbar-width: thin; }
  .pp-inv-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: 10px; }
  .pp-inv-card { --tc: 148,163,184; display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 12px 8px; border-radius: 14px; text-align: center; border: 1px solid rgba(var(--tc), .35); background: radial-gradient(90% 70% at 50% 30%, rgba(var(--tc), .18), transparent 70%), var(--surface-2); }
  .pp-inv-card.tier-2 { --tc: 63,200,255; }
  .pp-inv-card.tier-3 { --tc: 185,140,255; }
  .pp-inv-card.tier-4 { --tc: 255,176,46; }
  .pp-inv-img { width: 64px; height: 64px; object-fit: contain; }
  .pp-inv-name { font-size: 12px; font-weight: 700; line-height: 1.2; }
  .pp-inv-price { font-family: "IBM Plex Mono", monospace; font-size: 12px; font-weight: 800; color: rgb(var(--tc)); }
  .pp-row { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 14px; border: 1px solid var(--line); background: var(--surface-2); margin-bottom: 8px; }
  .pp-row.win { border-color: rgba(79,239,156,.35); background: linear-gradient(90deg, rgba(79,239,156,.10), var(--surface-2) 60%); }
  .pp-row.lose { border-color: rgba(255,92,87,.3); background: linear-gradient(90deg, rgba(255,92,87,.08), var(--surface-2) 60%); }
  .pp-row.tier-3 { border-color: rgba(185,140,255,.4); }
  .pp-row.tier-4 { border-color: rgba(255,176,46,.45); background: linear-gradient(90deg, rgba(255,176,46,.10), var(--surface-2) 60%); }
  .pp-mini { width: 30px; height: 30px; object-fit: contain; flex: 0 0 auto; }
  .pp-mini.big { width: 46px; height: 46px; }
  .pp-mini.emoji-pic { font-size: 24px; }
  .pp-upg-flow { display: flex; align-items: center; gap: 6px; flex: 0 0 auto; }
  .pp-upg-from { display: flex; align-items: center; }
  .pp-upg-from .pp-mini + .pp-mini { margin-left: -8px; }
  .pp-more { font-size: 11px; color: var(--text-dim); margin-left: 3px; font-weight: 800; }
  .pp-arrow { color: var(--text-dim); font-size: 14px; }
  .pp-row-main { flex: 1; min-width: 0; }
  .pp-row-name { font-weight: 700; font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .pp-row-sub { font-size: 12px; color: var(--text-dim); margin-top: 2px; }
  .pp-row-sub b { color: var(--text); }
  .pp-row-side { display: flex; flex-direction: column; align-items: flex-end; gap: 3px; flex: 0 0 auto; }
  .pp-result { font-size: 11px; font-weight: 800; padding: 3px 9px; border-radius: 999px; letter-spacing: .03em; }
  .pp-row.win .pp-result { background: rgba(79,239,156,.18); color: #4FEF9C; }
  .pp-row.lose .pp-result { background: rgba(255,92,87,.18); color: #FF5C57; }
  .pp-worth { font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 13px; color: var(--accent); }
  .pp-time { font-size: 11px; color: var(--text-dim); }
  @media (max-width: 520px) { .pp-upg-from, .pp-arrow { display: none; } }
  .tgc-screen { position: fixed; inset: 0; z-index: 10000; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 22px; padding: 20px 16px; background: radial-gradient(80% 60% at 50% 30%, rgba(var(--accent-rgb), .08), transparent 70%), var(--ink); overflow-y: auto; }
  .tgc-brand { font-family: var(--font-display); font-size: 30px; color: var(--text); letter-spacing: .02em; }
  .tgc-brand span { color: var(--accent); }
  .tgc-card { width: 100%; max-width: 384px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 16px; padding: 34px 24px 18px; text-align: center; box-shadow: 0 24px 60px -30px rgba(0,0,0,.8); }
  .tgc-title { font-family: var(--font-display); font-weight: 400; font-size: 22px; margin: 0 0 18px; color: var(--text); }
  .tgc-label { font-size: 13.5px; color: var(--text-dim); }
  .tgc-acc { font-weight: 800; font-size: 17px; color: var(--accent); margin: 4px 0 14px; word-break: break-all; }
  .tgc-warn { font-size: 13.5px; line-height: 1.45; color: var(--text-dim); margin: 0 0 22px; }
  .tgc-go { width: 100%; padding: 15px; border: none; border-radius: 10px; background: var(--accent); color: var(--accent-ink); font-family: inherit; font-weight: 800; font-size: 15px; cursor: pointer; box-shadow: 0 10px 24px -12px rgba(var(--accent-rgb), .9); transition: transform .12s, filter .12s; }
  .tgc-go:hover { transform: translateY(-1px); filter: brightness(1.05); }
  .tgc-go:disabled { opacity: .6; cursor: wait; transform: none; }
  .tgc-err { color: var(--lose); font-size: 13px; margin: 12px 0 0; }
  .tgc-real { margin-top: 20px; padding-top: 14px; border-top: 1px solid var(--line); font-size: 12px; color: var(--text-dim); }
  .tgc-real b { color: var(--text); font-weight: 700; }
  .tgc-home { background: none; border: none; color: var(--text-dim); font-family: inherit; font-size: 14px; cursor: pointer; }
  .tgc-home:hover { color: var(--text); }
  .emoji-pic { display: flex; align-items: center; justify-content: center; font-size: 38px; }
  .spin-win-img.emoji-pic { font-size: 68px; }
  .adm-luck { display: flex; gap: 6px; align-items: center; }
  .adm-luck-fields { display: flex; flex-direction: column; gap: 4px; }
  .adm-luck-fields label { display: flex; align-items: center; gap: 6px; justify-content: space-between; }
  .adm-luck-fields i { font-style: normal; font-size: 10.5px; font-weight: 700; color: var(--text-dim); text-transform: uppercase; letter-spacing: .04em; }
  .adm-luck input { width: 64px; padding: 6px 8px; border-radius: 8px; border: 1px solid var(--line); background: var(--surface-3); color: var(--text); font-family: "IBM Plex Mono", monospace; font-size: 12.5px; text-align: center; }
  .adm-luck button { padding: 5px 9px; font-size: 11.5px; }
  .luck-pos { color: var(--accent); }
  .luck-neg { color: var(--lose); }
  .adm-code { font-family: "IBM Plex Mono", monospace; font-weight: 800; font-size: 15px; color: var(--accent); letter-spacing: 0.06em; }
  .adm-del { margin-left: auto; }
  .wheel-wrap { position: relative; width: min(88vw, 420px); aspect-ratio: 1; margin: 22px auto 6px; }
  .wheel {
    width: 100%; height: 100%; border-radius: 50%;
    border: 6px solid var(--surface-3);
    box-shadow: 0 0 0 2px var(--line), 0 0 44px -6px rgba(var(--accent-rgb), 0.55), inset 0 0 30px rgba(0,0,0,0.45);
    transition: transform 5.4s cubic-bezier(0.12, 0.72, 0.08, 1);
    will-change: transform;
  }
  .wheel svg { width: 100%; height: 100%; display: block; border-radius: 50%; }
  .wheel .seg { stroke: var(--surface); stroke-width: 1.2; }
  .wheel .seg0 { fill: rgba(var(--accent-rgb), 0.30); }
  .wheel .seg1 { fill: rgba(224, 162, 58, 0.55); }
  .wheel .seg2 { fill: rgba(178, 107, 255, 0.50); }
  .wheel .seg3 { fill: rgba(var(--accent2-rgb), 0.55); }
  .wheel .seg4 { fill: rgba(255, 92, 87, 0.42); }
  .wheel .w-text { fill: var(--text); font-family: "Onest", system-ui, sans-serif; font-weight: 800; text-anchor: middle; }
  .wheel .w-sub { fill: var(--text); opacity: 0.85; font-family: "Onest", system-ui, sans-serif; font-weight: 600; text-anchor: middle; }
  .wheel-pointer {
    position: absolute; left: 50%; top: -6px; transform: translateX(-50%); z-index: 3;
    width: 0; height: 0; border-left: 15px solid transparent; border-right: 15px solid transparent; border-top: 30px solid var(--accent);
    filter: drop-shadow(0 4px 6px rgba(0,0,0,0.6));
  }
  .wheel-hub {
    position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 2;
    width: 24%; aspect-ratio: 1; border-radius: 50%; border: 4px solid var(--surface);
    background: linear-gradient(160deg, var(--accent) 0%, var(--accent-strong) 100%); color: var(--accent-ink);
    font-family: var(--font-display); font-size: clamp(12px, 3.4vw, 17px); cursor: pointer;
    box-shadow: 0 8px 22px -6px rgba(var(--accent-rgb), 0.7);
  }
  .wheel-hub:hover:not(:disabled) { filter: brightness(1.08); }
  .wheel-hub:disabled { opacity: 0.6; cursor: not-allowed; }
  .spin-status { font-weight: 700; font-size: 15px; text-align: center; min-height: 22px; }
  .spin-status.ok { color: var(--accent); }
  .spin-balance { font-family: "IBM Plex Mono", monospace; font-size: 14px; color: var(--text-dim); }
  .spin-balance b { color: var(--accent); }
  .spin-legend { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 4px; }
  .spin-chip { background: var(--surface-2); border: 1px solid var(--line); border-radius: 999px; padding: 6px 12px; font-size: 12.5px; font-weight: 700; display: flex; gap: 8px; align-items: center; }
  .spin-chip .pct { font-family: "IBM Plex Mono", monospace; color: var(--accent); }
  .spin-win-img { width: 96px; height: 96px; object-fit: contain; display: block; margin: 6px auto 10px; }
  .spin-win-big { text-align: center; font-family: var(--font-display); font-size: 26px; color: var(--accent); margin: 8px 0; }

  .contact-title { font-family: var(--font-display); font-weight: 400; font-size: clamp(30px, 6vw, 46px); margin: 0 0 6px; }
  .contact-card { gap: 6px; }
  .contact-h { margin: 12px 0 0; font-size: 18px; font-weight: 800; }
  .contact-link { color: var(--accent); font-size: 15px; text-decoration: none; width: fit-content; }
  .contact-link:hover { text-decoration: underline; }
  .contact-rule { border: none; border-top: 1px solid var(--line); width: 100%; margin: 16px 0 8px; }
  .contact-note { margin: 0 !important; }

  .tier-tabs { display: flex; gap: 6px; margin-bottom: 10px; }
  .tier-tab {
    flex: 1; font-family: inherit; font-weight: 700; font-size: 12.5px; cursor: pointer;
    background: var(--surface-2); border: 1.5px solid var(--line); color: var(--text-dim);
    padding: 9px 10px; border-radius: 999px;
  }
  .tier-tab:hover { color: var(--text); }
  .tier-tab.active { background: var(--surface-3); color: var(--accent); border-color: var(--accent-strong); }
  .help-card { display: flex; flex-direction: column; gap: 4px; width: 100%; max-width: 760px; margin: 0 auto; }
  .help-title { font-family: var(--font-display); font-size: 18px; color: var(--accent); margin: 0 0 4px; font-weight: 400; }
  .help-text { margin: 0 0 8px; }

  /* ---------- faq ---------- */
  .faq-list { display: flex; flex-direction: column; gap: 10px; width: 100%; max-width: 760px; margin: 0 auto; }
  .faq-item { background: color-mix(in srgb, var(--surface) 82%, transparent); border: 1.5px solid var(--line); border-radius: 14px; padding: 0 16px; }
  .faq-item[open] { border-color: var(--accent-strong); }
  .faq-item summary { cursor: pointer; font-weight: 700; font-size: 14.5px; padding: 14px 0; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
  .faq-item summary::-webkit-details-marker { display: none; }
  .faq-item summary::after { content: '+'; color: var(--accent); font-size: 20px; font-weight: 800; flex: 0 0 auto; }
  .faq-item[open] summary::after { content: '−'; }
  .faq-item p { margin: 0 0 14px; color: var(--text-dim); font-size: 13.5px; line-height: 1.55; }

  /* ---------- library ---------- */
  .lib-sub { text-align: center; color: var(--text-dim); font-size: 14px; max-width: 46ch; margin: 0 auto 22px; }
  .tier-header { text-align: center; margin: 30px 0 16px; }
  .tier-header:first-of-type { margin-top: 4px; }
  .tier-header .roman {
    font-family: var(--font-display); font-size: 24px; color: var(--accent);
    display: block; text-wrap: balance;
  }
  .tier-rule { border: none; border-top: 1px solid var(--line); max-width: 140px; margin: 12px auto 0; }

  .lib-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(148px, 1fr)); gap: 14px; margin-bottom: 6px; }
  .lib-card {
    background: color-mix(in srgb, var(--surface) 82%, transparent); border: 1.5px solid var(--line); border-radius: 16px;
    padding: 16px 12px; display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center;
  }
  .lib-card .mini-avatar { width: 60px; height: 60px; font-size: 30px; border-radius: 13px; background: var(--surface-3); display: flex; align-items: center; justify-content: center; overflow: hidden; margin-bottom: 2px; }
  .lib-card .name { font-weight: 700; font-size: 12.5px; line-height: 1.25; }
  .lib-card .value { font-family: "IBM Plex Mono", monospace; font-size: 19px; font-weight: 800; color: var(--accent); line-height: 1; margin-top: 2px; }
  .lib-card .value .unit { font-size: 10px; font-weight: 600; color: var(--text-dim); text-transform: uppercase; margin-left: 3px; }
  .lib-card .rate { font-family: "IBM Plex Mono", monospace; font-size: 11px; color: var(--text-dim); }

  /* =====================================================================
     Design layer: calm near-black UI, one accent, Unbounded headings,
     Onest text, hairline borders, white "pill" for the active tab.
     Comes last so it wins over the older rules above.
     ===================================================================== */
  :root {
    --font-display: "Unbounded", "Onest", system-ui, sans-serif;
    --glass: rgba(255,255,255,.03);
    --glass-2: rgba(255,255,255,.055);
    --hair: rgba(255,255,255,.075);
    --hair-2: rgba(255,255,255,.13);
    --card-bg: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.012));
    --pill-bg: #FFFFFF;
    --pill-ink: #0B0B12;
  }
  html { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
  body { font-family: "Onest", system-ui, sans-serif; }
  html[data-theme="dark"] body {
    background:
      radial-gradient(900px 480px at 50% -140px, rgba(var(--accent-rgb), .22), transparent 70%),
      radial-gradient(600px 400px at 100% -80px, rgba(var(--accent2-rgb), .07), transparent 70%),
      var(--ink);
    background-repeat: no-repeat;
    background-color: var(--ink);
  }
  ::selection { background: rgba(var(--accent-rgb), .45); color: #fff; }

  /* ---------- type ---------- */
  .wordmark, .hero-title, .outcome-word, .modal h3, .pro-title, .topbar-brand, .splash-logo, .splash-title,
  .splash-vs, .case-title, .case-cat span, .case-open, .contact-title, .help-title, .tgc-brand, .tgc-title,
  .spin-win-big, .pay-wait h4, .spin-choice b, .pp-avatar { font-weight: 700; letter-spacing: -0.02em; }
  .loot-top-label, .loot-recent-label, .acc-section-title, .acc-stats-title, .acc-bestdrop-title,
  .adm-topup-nice b, .case-kicker, .road-diff-label { font-family: "Onest", sans-serif; font-weight: 600; font-size: 11px; letter-spacing: .1em; }
  .modal h3 { font-size: 17px; }

  /* ---------- logo + hero ---------- */
  /* Logo: an "S" drawn as two trade arrows (swap), on a glossy squircle in the accent colour. */
  .logo-mark {
    position: relative; display: inline-grid; place-items: center; flex: 0 0 auto;
    width: 28px; height: 28px; border-radius: 31%;
    background:
      radial-gradient(120% 80% at 28% 0%, rgba(255,255,255,.42), rgba(255,255,255,0) 58%),
      linear-gradient(155deg, var(--accent) 0%, var(--accent-strong) 100%);
    color: var(--accent-ink);
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.2),
      inset 0 -3px 6px rgba(0,0,0,.22),
      0 8px 22px -8px rgba(var(--accent-rgb), .85),
      0 0 0 1px rgba(0,0,0,.35);
  }
  .logo-mark::after { content: ''; position: absolute; inset: 1px; border-radius: inherit; background: linear-gradient(180deg, rgba(255,255,255,.18), transparent 45%); pointer-events: none; }
  .logo-mark svg { position: relative; z-index: 1; width: 70%; height: 70%; filter: drop-shadow(0 1px 1.5px rgba(0,0,0,.28)); }
  .site-hero { padding: 46px 20px 26px; }
  .hero-title { display: inline-flex; align-items: center; gap: 0; font-weight: 800; font-size: clamp(30px, 5.4vw, 50px); line-height: 1.1; letter-spacing: -0.035em; }
  .hero-title .logo-mark { width: 1.1em; height: 1.1em; margin-right: .32em; }
  .hero-hl { display: inline-block; margin-left: .06em; padding: .02em .22em .1em; border-radius: .22em; background: var(--accent); color: var(--accent-ink); }

  /* ---------- top bar ---------- */
  .topbar {
    position: sticky; top: 0;
    background: color-mix(in srgb, var(--ink) 72%, transparent);
    -webkit-backdrop-filter: blur(16px) saturate(150%); backdrop-filter: blur(16px) saturate(150%);
    border-bottom: 1px solid var(--hair);
  }
  .topbar-brand { font-size: 15px; gap: 10px; }
  /* right side (balance, theme, language, avatar) sits close together */
  .topbar-inner { column-gap: 8px; }
  .topbar-links { margin-left: 10px; }
  .topbar-links { flex: 0 1 auto; margin-right: auto; gap: 2px; padding: 4px; border-radius: 16px; background: var(--glass); box-shadow: inset 0 0 0 1px var(--hair); }
  .topbar-link { border: none; border-radius: 12px; padding: 8px 14px; font-weight: 600; font-size: 13px; color: rgba(255,255,255,.55); transition: color .15s, background .15s; }
  .topbar-link:hover { color: var(--text); background: var(--glass-2); }
  .topbar-link.active { background: var(--pill-bg); color: var(--pill-ink); border-color: transparent; }
  .topbar-balance { font-family: "Onest", sans-serif; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--text); background: var(--glass); border: 1px solid var(--hair); border-radius: 12px; padding: 8px 12px; }
  .topbar-balance.tbb-btc { color: #FFC862; border-color: rgba(255,176,46,.22); }
  .online-pill { font-weight: 600; }
  .auth-btn { background: var(--pill-bg); color: var(--pill-ink); border: none; border-radius: 12px; font-weight: 600; }
  .auth-btn:hover { color: var(--pill-ink); border-color: transparent; filter: brightness(.9); }
  .lang-btn { width: 38px; height: 38px; border-radius: 12px; background: var(--glass); border: 1px solid var(--hair); }
  .lang-btn:hover { border-color: var(--hair-2); background: var(--glass-2); }
  .lang-menu { background: var(--surface); border: 1px solid var(--hair); border-radius: 16px; box-shadow: 0 30px 60px -30px rgba(0,0,0,.9); }
  @media (max-width: 720px) { .topbar-links { flex: 1 1 100%; margin-right: 0; margin-left: 0; } .lang-btn { width: 36px; height: 36px; } }

  /* ---------- surfaces ---------- */
  .panel { background: var(--card-bg); -webkit-backdrop-filter: none; backdrop-filter: none; border: 1px solid var(--hair); border-radius: 24px; box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 30px 60px -44px rgba(0,0,0,.9); }
  .modal-backdrop { background: rgba(3,3,6,.72); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
  .modal { background: linear-gradient(180deg, rgba(255,255,255,.035), transparent 140px), var(--surface); border: 1px solid var(--hair); border-radius: 24px; box-shadow: 0 50px 100px -40px rgba(0,0,0,.95), inset 0 1px 0 rgba(255,255,255,.05); }
  .modal::-webkit-scrollbar-thumb, .upg-grid::-webkit-scrollbar-thumb { background: rgba(255,255,255,.16); }
  .modal-close { border-radius: 10px; background: var(--glass-2); }
  .acc-box, .loot-top-card, .outcome { background: var(--card-bg); border: 1px solid var(--hair); box-shadow: none; }
  .acc-box::before, .loot-top-card::before { display: none; }
  .acc-box { border-radius: 20px; }
  .loot-top-card { border-radius: 20px; }
  .item-card { background: var(--glass); border: 1px solid var(--hair); border-radius: 16px; }
  .item-img, .slot .mini-avatar, .lib-card .mini-avatar { background: rgba(255,255,255,.04); }
  .faq-item, .lib-card { background: var(--card-bg); border: 1px solid var(--hair); border-radius: 18px; }
  .faq-item[open] { border-color: rgba(var(--accent-rgb), .45); }
  .faq-item summary::after { color: var(--text-dim); font-weight: 500; }

  /* ---------- buttons + inputs ---------- */
  .btn-primary, .splash-cta, .case-open, .tgc-go {
    border-radius: 12px; font-weight: 600; letter-spacing: -0.005em;
    background: var(--accent); color: var(--accent-ink);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 12px 26px -14px rgba(var(--accent-rgb), .95);
    transition: filter .15s, transform .15s, box-shadow .15s;
  }
  .btn-primary:hover:not(:disabled), .tgc-go:hover:not(:disabled) { filter: brightness(1.1); transform: translateY(-1px); }
  .btn-primary:active:not(:disabled) { transform: translateY(0); }
  .btn-secondary { background: var(--glass); color: var(--text); border: 1px solid var(--hair); border-radius: 12px; font-weight: 600; transition: background .15s, border-color .15s; }
  .btn-secondary:hover:not(:disabled) { background: var(--glass-2); border-color: var(--hair-2); color: var(--text); }
  .text-input, textarea.text-input, .search-input, .promo-input { background: var(--glass); border: 1px solid var(--hair); border-radius: 12px; transition: border-color .15s, box-shadow .15s; }
  .text-input:focus, .search-input:focus, .promo-input:focus { outline: none; border-color: rgba(var(--accent-rgb), .75); box-shadow: 0 0 0 4px rgba(var(--accent-rgb), .16); }
  .swap-btn { background: var(--accent); box-shadow: 0 0 0 5px var(--ink), 0 14px 28px -12px rgba(var(--accent-rgb), .8); }
  .tg-join { border-radius: 12px; font-weight: 600; box-shadow: none; }

  /* ---------- segmented tabs (white pill = selected) ---------- */
  .tier-tabs, .auth-tabs, .pp-tabs { gap: 4px; padding: 5px; border-radius: 18px; background: var(--glass); box-shadow: inset 0 0 0 1px var(--hair); }
  .tier-tab, .auth-tab, .pp-tab { border: none; background: transparent; border-radius: 13px; color: rgba(255,255,255,.55); font-weight: 600; box-shadow: none; opacity: 1; filter: none; transition: color .15s, background .15s; }
  .tier-tab:hover, .auth-tab:hover, .pp-tab:hover { color: var(--text); background: var(--glass-2); border-color: transparent; }
  .tier-tab.active, .auth-tab.on, .pp-tab.on { background: var(--pill-bg); color: var(--pill-ink); border-color: transparent; box-shadow: 0 8px 18px -10px rgba(0,0,0,.7); }
  .pp-tab span { background: rgba(0,0,0,.08); }
  .pp-tab.on span { background: var(--accent); color: var(--accent-ink); }
  .cz-tabs .auth-tab { display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
  .tab-ico { width: 16px; height: 16px; flex: 0 0 auto; transition: stroke .15s; }
  /* Upgrader tab: chevrons follow the text colour, and turn yellow on hover. */
  #czUpg:hover .tab-ico { stroke: #FFB347; }
  .road-diff, .tp-method { border: 1px solid var(--hair); background: var(--glass); border-radius: 14px; font-weight: 600; }
  .road-diff:hover, .tp-method:hover { border-color: var(--hair-2); }
  .road-diff.on { background: var(--pill-bg); color: var(--pill-ink); border-color: transparent; box-shadow: none; }
  .tp-method.active { background: linear-gradient(160deg, rgba(var(--mc), .14), transparent 70%), var(--glass); border-color: rgba(var(--mc), .7); box-shadow: 0 0 0 3px rgba(var(--mc), .12); }
  .road-bet-box { border: 1px solid var(--hair); background: var(--glass); border-radius: 14px; }
  .road-track-wrap { background: linear-gradient(180deg, #13131C, #0D0D14); box-shadow: inset 0 0 0 1px var(--hair); border-radius: 18px; }

  /* ---------- casino ---------- */
  .spin-choice { background: var(--card-bg); border: 1px solid var(--hair); border-radius: 22px; }
  .spin-choice:hover { border-color: rgba(var(--accent-rgb), .55); box-shadow: 0 26px 50px -32px rgba(var(--accent-rgb), .75); }
  .case-card .cc-title { font-family: var(--font-display); font-weight: 700; font-size: 14px; letter-spacing: -0.01em; text-transform: none; }
  .case-card .cc-price { border-width: 1px; border-radius: 12px; }
  .case-card[class*="th-"] .cc-price { border-width: 1px; border-radius: 12px; }
  .case-cat span { font-size: 12px; letter-spacing: .02em; }
  .loot-chip { background: var(--glass); border: 1px solid var(--tier-c, var(--hair)); border-radius: 14px; }
  .loot-chip.tier-1 { --tier-c: rgba(63,200,255,.3); }
  .loot-chip.tier-2 { --tier-c: rgba(var(--accent-rgb),.4); }
  .loot-chip.tier-3 { --tier-c: rgba(255,176,46,.4); box-shadow: none; }
  .loot-chip.tier-4 { --tier-c: rgba(255,92,108,.45); box-shadow: none; }
  .loot-chip-price { font-family: "Onest", sans-serif; font-weight: 800; font-size: 12.5px; color: var(--text); font-variant-numeric: tabular-nums; }
  .loot-chip-who { font-weight: 700; font-size: 10px; color: rgba(255,255,255,.7); }
  .loot-recent-label, .loot-top-label { font-weight: 800; }
  .loot-top-name { font-weight: 800; }
  .loot-top-price { font-family: "Onest", sans-serif; font-weight: 800; }
  .upg-card { background: var(--glass); border: 1px solid var(--hair); border-radius: 16px; }
  .upg-card:hover:not(:disabled) { border-color: rgba(var(--accent-rgb), .6); }
  .upg-card.sel { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(var(--accent-rgb), .18); }
  .upg-side { border: 1px dashed var(--hair-2); background: rgba(255,255,255,.015); border-radius: 22px; }
  .upg-side.filled { border-style: solid; border-color: rgba(var(--accent-rgb), .6); }
  .acc-tile { border: 1px solid var(--hair); background: var(--card-bg); }
  .acc-tile:hover { box-shadow: 0 16px 30px -22px rgba(var(--tc), .7); }
  .acc-tile-icon { background: rgba(var(--tc), .12); box-shadow: none; }
  .acc-tile-icon svg { width: 22px; height: 22px; }
  .acc-tile.t-cases .acc-tile-icon { background: rgba(255,255,255,.06); color: #fff; box-shadow: inset 0 0 0 1px var(--hair); }
  .acc-tile.t-upg .acc-tile-icon { background: rgba(255,179,71,.1); }
  .acc-tile-icon img { width: 24px; height: 24px; object-fit: contain; }
  .acc-tile.t-wd .acc-tile-icon, .acc-tile.t-inv .acc-tile-icon { background: rgba(255,255,255,.06); color: #fff; box-shadow: inset 0 0 0 1px var(--hair); }
  .acc-tile-num { font-family: var(--font-display); font-weight: 700; font-size: 18px; color: var(--text); }
  .slot { border-radius: 16px; background: var(--glass); border-width: 1px; }

  /* ---------- welcome screen ---------- */
  .splash-side { background: radial-gradient(circle at 50% 40%, rgba(var(--sc), .18), transparent 58%), var(--ink); }
  .splash-side::after { border-color: rgba(var(--sc), .12); box-shadow: 0 0 0 60px rgba(var(--sc), .02), 0 0 0 120px rgba(var(--sc), .012); }
  .splash-title { font-weight: 800; font-size: 34px; letter-spacing: -0.035em; text-shadow: none; }
  .splash-logo { font-weight: 800; font-size: 18px; letter-spacing: -0.02em; text-shadow: none; }
  .splash-chips span { font-weight: 600; color: rgba(255,255,255,.8); background: var(--glass-2); border-color: var(--hair); display: inline-flex; align-items: center; gap: 5px; }
  .splash-chips svg { width: 14px; height: 14px; flex: 0 0 auto; }
  .splash-trade .splash-cta { background: var(--pill-bg); color: var(--pill-ink); box-shadow: 0 12px 26px -14px rgba(255,255,255,.35); }
  .splash-vs { font-size: 13px; background: var(--surface); box-shadow: 0 0 0 1px var(--hair-2), 0 16px 30px -12px rgba(0,0,0,.9); }
  @media (max-width: 760px) { .splash-title { font-size: 24px; } }

  /* ---------- sign-in: Telegram first ---------- */
  .auth-tg { display: flex; flex-direction: column; align-items: stretch; text-align: center; }
  .auth-tg > .sub { margin-bottom: 14px; }
  .auth-tg-btn { width: 100%; flex: none; padding: 13px 16px; font-size: 14.5px; }
  .auth-tg .btn-primary.auth-tg-btn { background: linear-gradient(180deg, #2AABEE, #1E8FD6); color: #fff; box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 12px 26px -12px rgba(42,171,238,.85); }
  .auth-tg-hint { margin: 8px 0 0; font-size: 12px; color: var(--text-dim); }
  .auth-or { display: flex; align-items: center; gap: 12px; margin: 18px 0 14px; color: var(--text-dim); font-size: 12.5px; }
  .auth-or::before, .auth-or::after { content: ''; flex: 1; height: 1px; background: var(--hair); }

  /* ---------- Telegram Mini App: casino only (profile, language, balance stay) ---------- */
  .tg-mini .splash-gate, .tg-mini #navCalculator, .tg-mini #navLibrary, .tg-mini #navFaq, .tg-mini #navHelp { display: none !important; }
  .tg-mini .site-hero { padding: 14px 16px 6px; }
  .tg-mini .hero-title { font-size: 26px; }
  /* Only one section in the Mini App, so no tab bar at all. */
  .tg-mini .topbar-links { display: none !important; }

  /* ---------- phones ---------- */
  /* Stats tiles: never wider than their column. */
  .acc-stat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .acc-tile > div { min-width: 0; }
  .acc-tile-num, .acc-tile-lbl { overflow-wrap: anywhere; }
  @media (max-width: 620px) {
    .acc-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .acc-tile { padding: 10px; gap: 9px; border-radius: 14px; }
    .acc-tile-icon { width: 32px; height: 32px; border-radius: 10px; font-size: 16px; }
    .acc-tile-icon svg { width: 18px; height: 18px; }
    .acc-tile-icon img { width: 19px; height: 19px; }
    .acc-tile-num { font-size: 15px; }
    .acc-tile-lbl { font-size: 9.5px; letter-spacing: .02em; }
  }
  /* Recent drops: 4 smaller cards in a row on phones. */
  @media (max-width: 560px) {
    .loot-recent { gap: 30px 6px; height: 88px; }
    .loot-chip { flex: 0 0 calc((100% - 18px) / 4); min-width: 0; padding: 8px 4px 6px; border-radius: 12px; }
    .loot-chip-img { width: 28px; height: 28px; }
    .loot-chip-price { font-size: 11px; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .loot-chip-who { font-size: 9px; max-width: 100%; }
    .loot-chip-badge { top: -4px; right: -4px; }
    .loot-chip-badge .loot-avatar { width: 15px; height: 15px; }
  }


  /* ---------- small author signature on the left edge (replaces the big background word) ---------- */
  .side-sign { position: fixed; left: 18px; bottom: 28px; z-index: 5; display: flex; flex-direction: column; align-items: center; gap: 12px;
    color: var(--text-dim); text-decoration: none; opacity: .45; transition: opacity .2s, color .2s; }
  .side-sign i { width: 1px; height: 46px; background: linear-gradient(180deg, transparent, currentColor); }
  .side-sign span { writing-mode: vertical-rl; transform: rotate(180deg); font-size: 10px; font-weight: 700; letter-spacing: .32em; text-transform: uppercase; white-space: nowrap; }
  .side-sign:hover { opacity: 1; color: var(--accent); }
  @media (max-width: 900px) { .side-sign { display: none; } }
  .tg-mini .side-sign { display: none; }

  /* ---------- calmer background in the animated themes: soft static light, a few small sparks ---------- */
  .fx-blob { animation: none !important; opacity: .55; }
  .fx-p { box-shadow: none; }


  /* ---------- Site polish (browser, not the Telegram Mini App) ---------- */
  /* One brand only: the header bar. The big "SAB Helper" block above it is gone. */
  @media (min-width: 701px) {
    html:not(.tg-mini) .site-hero { display: none; }
    html:not(.tg-mini) .topbar { position: sticky; top: 0; background: color-mix(in srgb, var(--surface) 82%, transparent);
      -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-bottom: 1px solid var(--hair); }
  }

  /* Casino heading: small kicker + calmer title. */
  html:not(.tg-mini) #spinView > .masthead { gap: 10px; padding-top: 18px; }
  html:not(.tg-mini) #spinView > .masthead::before { content: attr(data-kicker); font-family: var(--font-display); font-size: 11px; font-weight: 700;
    letter-spacing: .16em; text-transform: uppercase; color: var(--accent); }
  html:not(.tg-mini) #spinView > .masthead .contact-title { font-size: clamp(30px, 4.4vw, 44px); letter-spacing: -0.02em; margin: 0; }

  /* Top drop: warm gold card. */
  html:not(.tg-mini) .loot-top-card { padding: 16px 20px; border-radius: 20px; border: 1px solid rgba(255,176,46,.26);
    background: radial-gradient(circle at 0% 50%, rgba(255,176,46,.13), transparent 50%), var(--card-bg); }
  html:not(.tg-mini) .loot-top-img { width: 58px; height: 58px; }
  html:not(.tg-mini) .loot-top-name { font-family: var(--font-display); font-size: 16px; }
  html:not(.tg-mini) .loot-top-price { font-size: 18px; }

  /* Recent drops: bigger pictures, even cards. */
  html:not(.tg-mini) .loot-recent { height: 118px; gap: 30px 10px; padding-top: 8px; }
  html:not(.tg-mini) .loot-chip { width: 88px; padding: 12px 6px 9px; border-radius: 16px; gap: 5px; }
  html:not(.tg-mini) .loot-chip-img { width: 46px; height: 46px; }
  html:not(.tg-mini) .loot-chip-who { max-width: 76px; }

  /* Cases keep their original layout; only the first section label after the basic cases gets room so it doesn't touch the cards. */
  #paidCardsExtra > .case-cat:first-child { margin-top: 56px; }
  @media (max-width: 640px) {
    html:not(.tg-mini) .loot-recent { height: 104px; }
    html:not(.tg-mini) .loot-chip { width: auto; flex: 0 0 calc((100% - 18px) / 4); min-width: 0; padding: 10px 4px 8px; }
    html:not(.tg-mini) .loot-recent { gap: 30px 6px; }
    html:not(.tg-mini) .loot-chip-img { width: 36px; height: 36px; }
  }
  html:not(.tg-mini) .cz-tabs { margin-bottom: 8px; }
  html:not(.tg-mini) .loot-feed { margin-bottom: 8px; }


  /* ---------- balance promo codes (profile + admin) ---------- */
  .bp-sub { margin: 4px 0 12px; font-size: 12.5px; color: var(--text-dim); line-height: 1.45; }
  .bp-form { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr) auto auto; gap: 8px; align-items: end; }
  .bp-form label { display: flex; flex-direction: column; gap: 4px; font-size: 10.5px; font-weight: 700; color: var(--text-dim); text-transform: uppercase; letter-spacing: .04em; min-width: 0; }
  .bp-form .text-input { width: 100%; min-width: 0; }
  .bp-cost { margin: 8px 0 0; font-size: 12.5px; color: var(--text-dim); }
  .bp-cost b { color: var(--text); }
  .bp-list { display: flex; flex-direction: column; gap: 8px; margin-top: 12px; }
  .bp-item { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--hair); background: var(--glass); font-size: 13px; }
  .bp-item .adm-code { font-weight: 800; letter-spacing: .04em; }
  .bp-item .bp-meta { color: var(--text-dim); font-size: 12px; }
  .bp-item .adm-act-btn { margin-left: auto; }
  .bp-msg-ok { color: var(--win) !important; }
  .pp-role-zone { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 14px; padding: 14px 16px; border-radius: 16px; background: linear-gradient(90deg, rgba(var(--accent-rgb), .1), transparent 70%); box-shadow: inset 0 0 0 1px rgba(var(--accent-rgb), .35); }
  .pp-role-zone > div:first-child { display: flex; flex-direction: column; gap: 2px; }
  .pp-role-zone b { font-size: 13.5px; color: var(--accent); }
  .pp-role-zone small { font-size: 12px; color: var(--text-dim); max-width: 340px; }
  .pp-role-seg { display: flex; gap: 6px; padding: 4px; border-radius: 14px; border: 1px solid var(--hair); background: var(--glass); }
  .pp-role-seg button { padding: 9px 14px; border: 0; border-radius: 10px; background: none; color: var(--text-dim); font-family: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
  .pp-role-seg button.on { background: var(--accent); color: #fff; }
  .pp-role-seg button:disabled { opacity: .6; cursor: default; }
  @media (max-width: 620px) { .bp-form { grid-template-columns: 1fr 1fr; } .bp-form label.bp-code-l { grid-column: 1 / -1; } }


  /* ---------- admin: luck for everyone + top-up history ---------- */
  .adm-luck-all { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 14px; margin: 0 0 14px; padding: 14px 16px; border-radius: 16px;
    background: linear-gradient(90deg, rgba(79,239,156,.08), transparent 70%); box-shadow: inset 0 0 0 1px rgba(79,239,156,.3); }
  .adm-luck-all > b { flex: 1 0 100%; font-size: 13.5px; color: var(--win); }
  .adm-luck-all label { display: flex; flex-direction: column; gap: 4px; font-size: 10.5px; font-weight: 700; color: var(--text-dim); text-transform: uppercase; letter-spacing: .04em; }
  .adm-luck-all input { width: 90px; }
  .adm-luck-all small { flex: 1 0 100%; font-size: 12px; color: var(--text-dim); }
  .adm-luck-all .btn-primary { flex: 0 0 auto; width: auto; padding: 11px 18px; }
  .adm-luck-all .btn-primary.armed { background: var(--lose); }
  .adm-luck input.luck-inherit { opacity: .55; border-style: dashed; }
  .adm-tph { margin: 0 0 18px; }
  .adm-tph-total { font-size: 18px; font-weight: 800; margin: 6px 0 2px; }
  .adm-tph-total small { font-size: 13px; color: var(--text-dim); font-weight: 700; margin-left: 6px; }
  .adm-tph-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 12px; }
  .adm-tph-chip { padding: 8px 12px; border-radius: 12px; border: 1px solid var(--hair); background: var(--glass); font-size: 12.5px; }
  .adm-tph-chip b { display: block; font-size: 14px; margin-top: 2px; }
  .adm-tph-list { display: flex; flex-direction: column; gap: 6px; max-height: 460px; overflow-y: auto; }
  .adm-tph-row { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; padding: 9px 12px; border-radius: 12px; border: 1px solid var(--hair); background: var(--glass); font-size: 13px; }
  .adm-tph-row .tph-type { font-size: 11px; font-weight: 800; padding: 3px 8px; border-radius: 999px; background: rgba(var(--accent-rgb), .18); }
  .adm-tph-row .tph-type.t-admin { background: rgba(255,176,46,.18); }
  .adm-tph-row .tph-amt { font-weight: 800; }
  .adm-tph-row .tph-amt.neg { color: var(--lose); }
  .adm-tph-row .acc-time { margin-left: auto; }


  /* ---------- "About me" (profile) ---------- */
  .ab-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 4px; }
  .ab-grid label, .ab-bio-l { display: flex; flex-direction: column; gap: 4px; font-size: 10.5px; font-weight: 700; color: var(--text-dim); text-transform: uppercase; letter-spacing: .04em; min-width: 0; }
  .ab-bio-l textarea { resize: vertical; min-height: 64px; font-family: inherit; }
  .ab-tg-wrap { position: relative; display: block; }
  .ab-tg-wrap::before { content: '@'; position: absolute; left: 12px; top: 0; bottom: 0; display: flex; align-items: center; color: var(--text-dim); font-weight: 700; font-size: 14px; pointer-events: none; }
  .ab-tg-wrap .text-input { padding-left: 28px; width: 100%; display: block; }
  .ab-grid .text-input, .ab-bio-l .text-input { margin: 0; }
  .ab-private { margin: 10px 0 0; font-size: 12px; color: var(--text-dim); line-height: 1.4; }
  .ab-foot { display: flex; align-items: center; gap: 12px; margin-top: 10px; }
  .ab-foot .btn-primary { flex: 0 0 auto; width: auto; padding: 11px 22px; }
  .ab-foot .sub { margin: 0 !important; }
  .pp-about { margin-top: 12px; padding: 12px 14px; border-radius: 14px; border: 1px solid var(--hair); background: var(--glass); }
  .pp-about b { display: block; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--text-dim); margin-bottom: 4px; }
  .pp-about p { margin: 0; font-size: 13.5px; line-height: 1.45; white-space: pre-wrap; overflow-wrap: anywhere; }
  .pp-about.owner { box-shadow: inset 0 0 0 1px rgba(var(--accent-rgb), .35); }
  .pp-about.owner a { color: var(--accent); font-weight: 700; }
  @media (max-width: 560px) { .ab-grid { grid-template-columns: 1fr; } }


  .br-timer { display: flex; justify-content: center; align-items: center; gap: 6px; margin: 10px auto 0; width: max-content; padding: 6px 14px; border-radius: 999px;
    font-size: 13px; color: var(--text-dim); background: rgba(255,255,255,.04); border: 1px solid var(--hair); }
  .br-timer b { color: var(--text); font-variant-numeric: tabular-nums; }
  .br-timer.low b { color: var(--lose); }




  /* ================= Logo -> home ================= */
  .topbar-brand { cursor: pointer; }

  /* ================= Support chat (corner) ================= */
  .sup-fab { position: fixed; right: 22px; bottom: 22px; z-index: 120; width: 58px; height: 58px; border-radius: 50%; border: 0; cursor: pointer; display: grid; place-items: center;
    color: #fff; background: linear-gradient(145deg, #3b82f6, #1d4ed8); box-shadow: 0 10px 30px rgba(29,78,216,.45), inset 0 1px 0 rgba(255,255,255,.25); transition: transform .15s; }
  .sup-fab:hover { transform: translateY(-2px) scale(1.03); }
  .sup-fab svg { width: 26px; height: 26px; }
  .sup-dot { position: absolute; top: 9px; right: 9px; width: 12px; height: 12px; border-radius: 50%; background: #ef4444; box-shadow: 0 0 0 3px #1d4ed8; }
  .sup-panel { position: fixed; right: 22px; bottom: 92px; z-index: 121; width: 360px; max-width: calc(100vw - 32px); height: 500px; max-height: calc(100vh - 130px);
    display: flex; flex-direction: column; border-radius: 20px; overflow: hidden; background: var(--surface); border: 1px solid var(--hair); box-shadow: 0 24px 70px rgba(0,0,0,.55); animation: supIn .22s ease; }
  .sup-panel[hidden] { display: none; }
  @keyframes supIn { from { opacity: 0; transform: translateY(14px) scale(.98); } }
  .sup-head { display: flex; align-items: center; gap: 12px; padding: 14px 16px; background: linear-gradient(135deg, #1d4ed8, #3b82f6); color: #fff; }
  .sup-head b { display: block; font-size: 15px; }
  .sup-head small { display: block; font-size: 12px; opacity: .85; }
  .sup-head > div { flex: 1; min-width: 0; }
  .sup-ava { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: rgba(255,255,255,.18); }
  .sup-ava svg { width: 20px; height: 20px; }
  .sup-x { background: rgba(255,255,255,.15); border: 0; color: #fff; width: 30px; height: 30px; border-radius: 50%; cursor: pointer; font-size: 14px; }
  .sup-list { flex: 1; overflow-y: auto; padding: 14px; display: flex; flex-direction: column; gap: 8px; background: var(--ink); }
  .sup-msg { max-width: 82%; padding: 9px 12px; border-radius: 14px; font-size: 13.5px; line-height: 1.4; white-space: pre-wrap; overflow-wrap: anywhere; }
  .sup-msg small { display: block; margin-top: 3px; font-size: 10.5px; opacity: .6; }
  .sup-msg.me { align-self: flex-end; background: #2563eb; color: #fff; border-bottom-right-radius: 5px; }
  .sup-msg.them { align-self: flex-start; background: var(--surface-2); border: 1px solid var(--hair); border-bottom-left-radius: 5px; }
  .sup-note { margin: auto 0; text-align: center; font-size: 13px; color: var(--text-dim); line-height: 1.5; padding: 10px; }
  .sup-note .btn-primary { margin-top: 10px; }
  .sup-note a { color: var(--accent); font-weight: 700; }
  .sup-form { display: flex; gap: 8px; padding: 10px; border-top: 1px solid var(--hair); background: var(--surface); }
  .sup-form textarea { flex: 1; resize: none; min-height: 40px; max-height: 110px; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--hair); background: var(--surface-2); color: var(--text); font: inherit; font-size: 14px; outline: none; }
  .sup-send { width: 42px; height: 42px; flex: none; border-radius: 12px; border: 0; cursor: pointer; background: #2563eb; color: #fff; display: grid; place-items: center; }
  .sup-send svg { width: 18px; height: 18px; }
  .sup-send:disabled { opacity: .5; }
  @media (max-width: 560px) {
    .sup-fab { right: 14px; bottom: 14px; width: 52px; height: 52px; }
    .sup-panel { right: 8px; left: 8px; bottom: 76px; width: auto; max-width: none; height: min(520px, calc(100vh - 110px)); }
  }

  /* ================= Bot app: menu (phone) ================= */
  html.tg-mini body .mini-nav { display: none !important; }
  html.tg-mini body { padding-bottom: 24px; }
  .tg-mini .mini-burger { display: grid !important; place-items: center; width: 40px; height: 40px; border-radius: 12px; border: 1px solid var(--hair); background: var(--glass); color: var(--text); cursor: pointer; padding: 0; flex: none; }
  .tg-mini .mini-burger svg { width: 20px; height: 20px; }
  .tg-mini #miniTg, .tg-mini #miniDm { display: none !important; }
  .tg-mini .topbar-brand { margin-right: auto !important; }
  .mini-drawer-bg { position: fixed; inset: 0; z-index: 130; background: rgba(0,0,0,.55); backdrop-filter: blur(3px); }
  .mini-drawer { position: fixed; top: 0; bottom: 0; left: 0; z-index: 131; width: min(300px, 84vw); display: flex; flex-direction: column; gap: 10px; padding: 16px 12px calc(16px + env(safe-area-inset-bottom));
    background: var(--surface); border-right: 1px solid var(--hair); transform: translateX(-105%); transition: transform .25s ease; overflow-y: auto; }
  .mini-drawer.open { transform: none; }
  .md-head { display: flex; align-items: center; justify-content: space-between; padding: 2px 4px 6px; }
  .md-brand { display: flex; align-items: center; gap: 9px; font-family: var(--font-display); font-size: 18px; }
  .md-brand .logo-mark { width: 32px; height: 32px; border-radius: 10px; display: grid; place-items: center; font-weight: 900; color: #fff; background: var(--accent); }
  .md-x { width: 34px; height: 34px; border-radius: 10px; border: 1px solid var(--hair); background: none; color: var(--text-dim); cursor: pointer; }
  .md-bal { padding: 10px 12px; border-radius: 14px; background: var(--glass); border: 1px solid var(--hair); font-weight: 800; }
  .md-bal:empty { display: none; }
  .md-me { display: flex; flex-direction: column; gap: 10px; padding: 14px; border-radius: 16px; border: 1px solid var(--hair); background: linear-gradient(160deg, rgba(var(--accent-rgb), .14), rgba(255,255,255,.02)); cursor: pointer; }
  .md-me:empty { display: none; }
  .md-me-top { display: flex; align-items: center; gap: 12px; min-width: 0; }
  .md-ava { position: relative; flex: none; width: 52px; height: 52px; border-radius: 16px; overflow: hidden; display: grid; place-items: center; font-size: 22px; font-weight: 900; color: #fff;
    background: linear-gradient(140deg, #e879f9, #a855f7); box-shadow: 0 6px 16px rgba(168,85,247,.35); }
  .md-ava img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
  .md-who { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
  .md-who small { font-size: 11px; color: var(--text-dim); font-weight: 700; }
  .md-who b { font-size: 15px; font-weight: 900; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .md-me-bal { display: flex; align-items: center; justify-content: center; gap: 6px; height: 38px; border-radius: 12px; border: 1px dashed var(--hair); background: rgba(0,0,0,.22); font-weight: 900; font-size: 15px; }
  .md-me .btn-primary { margin: 0; height: 40px; }
  .md-group { display: flex; flex-direction: column; gap: 2px; padding: 6px; border-radius: 16px; background: rgba(255,255,255,.02); border: 1px solid var(--hair); }
  .md-group button { display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 11px; border: 0; background: none; color: var(--text); font: inherit; font-size: 14.5px; font-weight: 700; cursor: pointer; text-align: left; }
  .md-group button svg { width: 20px; height: 20px; color: var(--text-dim); flex: none; }
  .md-group button:hover { background: rgba(255,255,255,.05); }
  .md-group button.on { background: rgba(var(--accent-rgb), .14); color: var(--accent); }
  .md-group button.on svg { color: var(--accent); }
  .tg-mini .cz-tabs, .tg-mini.mini-games .cz-tabs { display: none !important; }
  .mini-topnav, .mini-side { display: none; }

  /* ================= Bot app on a wide screen (Telegram Desktop stretched) ================= */
  @media (min-width: 1000px) {
    .tg-mini .mini-burger { display: none !important; }
    .tg-mini .topbar-inner { max-width: none; padding: 10px 22px; gap: 14px; }
    .tg-mini .topbar-brand { font-size: 17px !important; gap: 9px !important; margin-right: 6px !important; }
    .tg-mini .mini-topnav { display: flex !important; gap: 4px; margin-right: auto; overflow-x: auto; scrollbar-width: none; }
    .tg-mini .mini-topnav button { display: flex; align-items: center; gap: 8px; padding: 10px 14px; border-radius: 12px; border: 0; background: none; color: var(--text-dim); font: inherit; font-size: 13px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; cursor: pointer; white-space: nowrap; }
    .tg-mini .mini-topnav button svg { width: 17px; height: 17px; }
    .tg-mini .mini-topnav button:hover { color: var(--text); background: rgba(255,255,255,.05); }
    .tg-mini .mini-topnav button.on { color: #fff; background: linear-gradient(180deg, #3b82f6, #2563eb); box-shadow: 0 6px 18px rgba(37,99,235,.35); }
    .tg-mini .mini-side { display: flex !important; flex-direction: column; position: fixed; left: 0; top: 64px; bottom: 0; width: 176px; z-index: 40; padding: 10px; gap: 8px;
      background: color-mix(in srgb, var(--surface) 92%, transparent); border-right: 1px solid var(--hair); overflow-y: auto; scrollbar-width: thin; }
    .tg-mini .ms-h { display: flex; align-items: center; gap: 8px; padding: 4px 6px 6px; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--text-dim); }
    .tg-mini .ms-list { display: flex; flex-direction: column; gap: 8px; }
    .tg-mini .ms-item { position: relative; display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 9px 6px 8px; border-radius: 14px; background: var(--surface-2); border: 1px solid var(--hair); cursor: pointer; text-align: center; }
    .tg-mini .ms-item .loot-chip-img, .tg-mini .ms-item img { width: 44px; height: 44px; object-fit: contain; }
    .tg-mini .ms-item b { font-size: 11px; line-height: 1.2; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .tg-mini .ms-item span { font-size: 10.5px; color: var(--text-dim); max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .tg-mini .ms-item .ms-price { position: absolute; top: 8px; right: 8px; font-size: 10.5px; font-weight: 800; padding: 2px 6px; border-radius: 6px; background: rgba(251,191,36,.18); color: #fbbf24; }
    .tg-mini .page { box-sizing: border-box; align-self: flex-start; width: calc(100vw - 176px - 16px); max-width: 1160px; margin-right: 0;
      margin-left: calc(176px + max(0px, (100vw - 176px - 16px - 1160px) / 2)); padding-left: 28px; padding-right: 28px; }
    .tg-mini .loot-recent-wrap { display: none !important; }
    html.tg-mini #caseGroups:not([hidden]) { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
    .tg-mini #caseGroups > .free-remind { max-width: none; }
  }


  /* ================= The site with the bot's layout (html.site-ui) ================= */
  html:not(.site-ui) [data-mt="trade"], html:not(.site-ui) [data-mt="faq"] { display: none !important; }
  html.site-ui .site-footer { display: flex !important; margin: 0 auto; }
  html.site-ui .trade-switch { display: flex !important; }
  html.site-ui #topbarBtc:not([hidden]) { display: inline-flex !important; }
  html.site-ui .modal-backdrop { padding-bottom: 20px; }
  .foot-links { display: flex; gap: 18px; justify-content: center; }
  @media (min-width: 1000px) {
    html.tg-mini #avatarBtn:not([hidden]) { display: grid !important; flex: none; width: 40px; min-width: 40px; height: 40px; padding: 0; border-radius: 50%; overflow: hidden; place-items: center; }
    html.tg-mini #avatarBtn:not([hidden]) { position: relative; }
    html.tg-mini #avatarBtn > * { position: absolute; inset: 0; width: auto; height: auto; display: grid; place-items: center; border-radius: 50%; object-fit: cover; }
    html.site-ui .site-footer { margin-left: 176px; width: calc(100% - 176px); max-width: none; padding-bottom: 24px; }
  }


  /* ================= Case result: sell / again right under the strips ================= */
  .spin-panel.res-on .case-info, .spin-panel.res-on #spinCountRow, .spin-panel.res-on #spinBtn, .spin-panel.res-on .spin-flash-row { display: none !important; }
  .cs-act { display: flex; justify-content: center; align-items: center; gap: 10px; margin: -2px 0 2px; min-height: 40px; }
  .cs-sell, .sr-sell { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 40px; padding: 0 18px; border-radius: 12px; cursor: pointer;
    border: 1px solid rgba(251,191,36,.55); background: rgba(251,191,36,.10); color: #fbbf24; font: inherit; font-size: 13px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase;
    transition: background .15s, transform .1s; }
  .cs-sell:hover, .sr-sell:hover { background: rgba(251,191,36,.2); }
  .cs-sell:active, .sr-sell:active { transform: scale(.97); }
  .cs-sell:disabled, .sr-sell:disabled { opacity: .6; cursor: default; }
  .cs-sell.sold, .sr-sell.sold { border-color: rgba(52,211,153,.5); background: rgba(52,211,153,.1); color: #34d399; opacity: 1; }
  .cs-money { font-size: 13px; font-weight: 800; color: #34d399; }
  .spin-res { display: flex; flex-direction: column; align-items: center; gap: 10px; margin-top: 14px; }
  .spin-res[hidden] { display: none; }
  .sr-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; width: 100%; }
  .sr-row > button { min-width: 190px; height: 54px; font-size: 15px; }
  .sr-row .sr-again { margin: 0; width: auto; padding: 0 28px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
  .sr-again svg { width: 18px; height: 18px; }
  .sr-note { font-size: 12px; color: var(--text-dim); text-align: center; }
  @media (max-width: 520px) { .sr-row > button { flex: 1 1 100%; min-width: 0; } }


  /* ================= Stock: "out of stock" + exchanger + admin ================= */
  .ex-nostock { max-width: 460px; }
  .ex-ns-pic { display: grid; place-items: center; padding: 6px 0 2px; }
  .ex-ns-pic .item-img { width: 96px; height: 96px; }
  .ex-modal { max-width: 1080px; width: calc(100vw - 32px); }
  .ex-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
  .ex-kicker { font-size: 11px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; color: #60a5fa; }
  .ex-title { margin: 2px 0 0; font-size: 26px; font-weight: 900; letter-spacing: .01em; text-transform: uppercase; }
  .ex-chip { display: inline-flex; align-items: center; gap: 6px; margin: 10px 0 14px; padding: 7px 12px; border-radius: 10px; border: 1px solid rgba(96,165,250,.45); background: rgba(96,165,250,.1); color: #93c5fd; font-size: 13px; font-weight: 800; }
  .ex-chip.warn { border-color: rgba(251,113,133,.6); color: #fda4af; background: rgba(251,113,133,.1); }
  .ex-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
  .ex-col { min-width: 0; padding: 16px; border-radius: 16px; border: 1px solid var(--hair); background: rgba(0,0,0,.2); display: flex; flex-direction: column; }
  .ex-h { margin: 0; font-size: 17px; font-weight: 900; }
  .ex-h.give { color: #fb923c; } .ex-h.take { color: #60a5fa; }
  .ex-sub { margin: 4px 0 12px; font-size: 12.5px; color: var(--text-dim); line-height: 1.45; }
  .ex-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(112px, 1fr)); gap: 10px; max-height: 380px; overflow-y: auto; padding: 2px; scrollbar-width: thin; align-content: start; }
  .ex-card { position: relative; display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 10px 6px 9px; border-radius: 12px; border: 1px solid var(--hair); background: var(--surface-2); cursor: pointer; text-align: center; transition: border-color .15s, background .15s, transform .1s; font: inherit; color: var(--text); }
  .ex-card:hover { border-color: rgba(255,255,255,.22); }
  .ex-card:active { transform: scale(.97); }
  .ex-card .ex-pic { width: 58px; height: 58px; object-fit: contain; }
  .ex-card b { font-size: 11.5px; line-height: 1.2; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .ex-card span { font-size: 12px; font-weight: 800; color: #fbbf24; }
  .ex-card small { font-size: 10.5px; color: var(--text-dim); }
  .ex-card.on.give { border-color: #fb923c; background: rgba(251,146,60,.12); box-shadow: 0 0 0 1px #fb923c inset; }
  .ex-card.on.take { border-color: #60a5fa; background: rgba(96,165,250,.12); box-shadow: 0 0 0 1px #60a5fa inset; }
  .ex-card .ex-x { position: absolute; top: 4px; right: 6px; font-size: 12px; font-weight: 900; color: #fb923c; }
  .ex-card .ex-n { position: absolute; top: 5px; left: 6px; min-width: 22px; padding: 1px 6px; border-radius: 8px; background: #2563eb; color: #fff; font-size: 11px; font-weight: 900; }
  .ex-card .ex-minus { position: absolute; top: 3px; right: 4px; width: 22px; height: 22px; border-radius: 7px; border: 0; background: rgba(0,0,0,.45); color: #fff; font-weight: 900; cursor: pointer; line-height: 22px; padding: 0; }
  .ex-card.full { opacity: .55; }
  .ex-empty { grid-column: 1 / -1; padding: 18px 6px; text-align: center; color: var(--text-dim); font-size: 13px; }
  .ex-foot { margin-top: 14px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; border-radius: 16px; border: 1px solid var(--hair); background: rgba(0,0,0,.25); }
  .ex-sum { display: flex; flex-wrap: wrap; gap: 6px 18px; align-items: baseline; font-size: 13px; color: var(--text-dim); }
  .ex-sum b { color: var(--text); font-size: 15px; }
  .ex-res { font-weight: 800; font-size: 14px; }
  .ex-res.plus { color: #34d399; } .ex-res.pay { color: #fbbf24; } .ex-res.low { color: #fb7185; }
  .ex-go { min-width: 220px; height: 50px; margin: 0; }
  .ex-done { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 18px 6px 6px; text-align: center; }
  .ex-done h4 { margin: 0; font-size: 22px; font-weight: 900; color: #34d399; }
  .ex-done-items { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
  .ex-done-items .ex-card { cursor: default; width: 112px; }
  .inv-ex-btn { display: inline-flex; align-items: center; gap: 6px; }
  @media (max-width: 760px) { .ex-cols { grid-template-columns: 1fr; } .ex-grid { max-height: 260px; } .ex-title { font-size: 20px; } .ex-go { width: 100%; } }
  .st-top { display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: center; margin-bottom: 6px; }
  .st-top label { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
  .st-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 8px; margin-top: 10px; }
  .st-row { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 12px; border: 1px solid var(--hair); background: var(--surface-2); }
  .st-row.has { border-color: rgba(52,211,153,.45); background: rgba(52,211,153,.06); }
  .st-row .st-pic { width: 40px; height: 40px; object-fit: contain; flex: none; }
  .st-name { flex: 1; min-width: 0; display: flex; flex-direction: column; }
  .st-name b { font-size: 12.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .st-name span { font-size: 11.5px; color: #fbbf24; font-weight: 700; }
  .st-qty { display: flex; align-items: center; gap: 4px; flex: none; }
  .st-qty button { width: 28px; height: 30px; border-radius: 8px; border: 1px solid var(--hair); background: rgba(255,255,255,.05); color: var(--text); font-weight: 900; cursor: pointer; }
  .st-qty input { width: 52px; height: 30px; text-align: center; border-radius: 8px; border: 1px solid var(--hair); background: rgba(0,0,0,.3); color: var(--text); font: inherit; font-weight: 800; }
  .st-ok { width: 14px; flex: none; font-style: normal; font-size: 12px; color: #34d399; }
  .st-log { display: flex; flex-wrap: wrap; gap: 4px 12px; padding: 8px 10px; border-bottom: 1px solid var(--hair); font-size: 12.5px; }
  .st-log b { color: var(--text); }


  /* ================= Avatar top right (bot app + site, every width) ================= */
  html.tg-mini #avatarBtn:not([hidden]) { display: grid !important; position: relative; flex: none; width: 36px; min-width: 36px; height: 36px; padding: 0; border-radius: 50%; overflow: hidden; place-items: center;
    background: linear-gradient(140deg, #e879f9, #a855f7); border: 2px solid rgba(255,255,255,.18); color: #fff; font-weight: 900; box-shadow: 0 4px 12px rgba(168,85,247,.35); cursor: pointer; }
  html.tg-mini #avatarBtn > * { position: absolute; inset: 0; width: 100%; height: 100%; display: grid; place-items: center; border-radius: 50%; object-fit: cover; }
  @media (min-width: 1000px) { html.tg-mini #avatarBtn:not([hidden]) { width: 40px; min-width: 40px; height: 40px; } }
  @media (max-width: 380px) { html.tg-mini #avatarBtn:not([hidden]) { width: 32px; min-width: 32px; height: 32px; } }

  /* ================= Speed: no live blur under the bars, quiet background while a case spins ================= */
  .tg-mini .topbar { background: color-mix(in srgb, var(--surface) 97%, transparent) !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
  .tg-mini .mini-nav { background: color-mix(in srgb, var(--surface) 97%, transparent) !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
  html.is-spinning .fx *, html.is-spinning .fx-wave::before, html.is-spinning .fx-wave::after { animation-play-state: paused !important; }
  html.is-spinning .fx-p { visibility: hidden; }
  .case-strip { contain: layout paint; isolation: isolate; }
  .case-track { backface-visibility: hidden; }


  /* ================= Profile: "My items" header + tidy "Sell all" ================= */
  html .acc-items-head { display: flex; align-items: center; justify-content: space-between; flex-wrap: nowrap; gap: 10px; margin: 14px 4px 10px; }
  html .acc-items-head .my-req-divider { margin: 0; white-space: nowrap; font-size: 12px; font-weight: 800; letter-spacing: .08em; color: var(--text); }
  html .acc-items-head .acc-sellall { flex: 0 1 auto; width: auto !important; min-width: 0; max-width: 64%; height: 36px; margin: 0 !important; padding: 0 14px; border-radius: 12px;
    display: inline-flex; align-items: center; justify-content: center; gap: 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    border: 1px solid rgba(251,191,36,.55) !important; background: rgba(251,191,36,.1) !important; color: #fbbf24 !important;
    font-size: 12.5px; font-weight: 800; letter-spacing: .02em; box-shadow: none !important; }
  html .acc-items-head .acc-sellall:hover { background: rgba(251,191,36,.2) !important; }
  html .acc-items-head .acc-sellall[hidden] { display: none !important; }
  html .acc-items-head .acc-sellall .s-coin { flex: none; margin-left: 3px; }

  /* ================= Upgrader: some air above the ring ================= */
  html.tg-mini #upgSection { padding-top: 26px; }
  @media (max-width: 560px) { html.tg-mini #upgSection { padding-top: 18px; } }


  /* ================= Pretty scrollbars (page, live drops, lists): thin, rounded, site colour, no arrows ================= */
  /* Chrome/Edge/Safari use ::-webkit-scrollbar only while scrollbar-width/-color stay "auto" */
  html, .modal, .upg-grid, .pp-tab-body, .ex-grid, .tg-mini .mini-side, .mini-drawer { scrollbar-width: auto !important; scrollbar-color: auto !important; }
  ::-webkit-scrollbar { width: 10px; height: 10px; }
  ::-webkit-scrollbar-track { background: transparent; }
  ::-webkit-scrollbar-thumb { border-radius: 999px; border: 3px solid transparent; background-clip: padding-box;
    background-color: rgba(var(--accent-rgb), .38); }
  ::-webkit-scrollbar-thumb:hover { background-color: rgba(var(--accent-rgb), .65); }
  ::-webkit-scrollbar-thumb:active { background-color: rgba(var(--accent-rgb), .85); }
  ::-webkit-scrollbar-button { display: none; width: 0; height: 0; }
  ::-webkit-scrollbar-corner { background: transparent; }
  .tg-mini .mini-side::-webkit-scrollbar, .modal::-webkit-scrollbar, .upg-grid::-webkit-scrollbar, .pp-tab-body::-webkit-scrollbar, .ex-grid::-webkit-scrollbar, .mini-drawer::-webkit-scrollbar { width: 7px; }
  .tg-mini .mini-side::-webkit-scrollbar-thumb { border-width: 2px; background-color: rgba(var(--accent-rgb), .3); }
  .tg-mini .mini-side:hover::-webkit-scrollbar-thumb { background-color: rgba(var(--accent-rgb), .6); }
  /* Firefox */
  @supports (-moz-appearance: none) {
    html, .modal, .upg-grid, .pp-tab-body, .ex-grid, .tg-mini .mini-side, .mini-drawer { scrollbar-width: thin !important; scrollbar-color: rgba(var(--accent-rgb), .45) transparent !important; }
  }

  .adm-qr { display: flex; flex-direction: column; gap: 8px; padding: 14px; margin-bottom: 6px; border-radius: 14px; border: 1px solid rgba(var(--accent-rgb), .35); background: rgba(var(--accent-rgb), .07); }
  .adm-qr .sub { margin: 0; }
  .adm-qr textarea { resize: vertical; min-height: 54px; }
  .adm-qr .btn-primary { align-self: flex-start; margin: 0; }

  .q-toast { position: fixed; left: 50%; bottom: calc(96px + env(safe-area-inset-bottom)); transform: translateX(-50%); z-index: 400; max-width: min(92vw, 440px); padding: 12px 16px; border-radius: 14px;
    background: rgba(15,20,30,.96); border: 1px solid var(--hair); color: var(--text); font-size: 13.5px; line-height: 1.4; text-align: center; box-shadow: 0 10px 30px rgba(0,0,0,.45); transition: opacity .4s; }
  .q-toast.out { opacity: 0; }

  /* ================= Mines ================= */
  .mn-wrap { display: grid; grid-template-columns: 300px 1fr; gap: 16px; align-items: start; }
  .mn-side { display: flex; flex-direction: column; gap: 12px; padding: 18px; }
  .mn-lbl { display: flex; justify-content: space-between; align-items: baseline; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--text-dim); }
  .mn-lbl b { font-weight: 700; letter-spacing: 0; text-transform: none; }
  .mn-bet { display: flex; align-items: center; gap: 10px; padding: 0 14px; height: 52px; border-radius: 14px; background: rgba(0,0,0,.22); border: 1px solid var(--hair); }
  .mn-bet .s-coin-img { width: 24px; height: 24px; }
  .mn-bet input { flex: 1; min-width: 0; background: none; border: 0; outline: 0; color: var(--text); font: inherit; font-size: 18px; font-weight: 800; }
  .mn-bet.disabled { opacity: .55; }
  .mn-quick, .mn-count { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
  .mn-count { grid-template-columns: repeat(5, 1fr); }
  .mn-quick button, .mn-count button { height: 40px; border-radius: 11px; border: 1px solid var(--hair); background: rgba(255,255,255,.035); color: var(--text-dim); font: inherit; font-weight: 800; font-size: 13px; cursor: pointer; transition: background .15s, color .15s, border-color .15s; }
  .mn-quick button:hover, .mn-count button:hover { color: var(--text); background: rgba(255,255,255,.07); }
  .mn-count button.on { color: var(--accent); border-color: rgba(var(--accent-rgb), .7); background: rgba(var(--accent-rgb), .12); }
  .mn-quick button:disabled, .mn-count button:disabled { opacity: .45; cursor: default; }
  .mn-go { width: 100%; height: 54px; font-size: 15px; margin: 4px 0 0; }
  .mn-go.take { background: linear-gradient(180deg, #34d399, #059669); color: #04130c; }
  .mn-stats { display: grid; gap: 8px; padding-top: 12px; border-top: 1px solid var(--hair); font-size: 13px; color: var(--text-dim); }
  .mn-stats div { display: flex; justify-content: space-between; }
  .mn-stats b { color: var(--text); font-variant-numeric: tabular-nums; }
  .mn-msg { margin: 0 !important; font-weight: 700; }
  .mn-board-wrap { padding: 18px 22px 16px; }
  .mn-board-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; font-size: 12.5px; font-weight: 700; color: var(--text-dim); }
  .mn-pill { padding: 5px 12px; border-radius: 999px; background: rgba(255,255,255,.05); border: 1px solid var(--hair); color: var(--text); }
  .mn-board { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; max-width: 560px; margin: 0 auto; }
  .mn-cell { aspect-ratio: 1; border-radius: 14px; border: 1px solid var(--hair); background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)); display: grid; place-items: center; cursor: default; position: relative; padding: 0; transition: transform .12s, background .2s, border-color .2s, box-shadow .2s; }
  .mn-cell::after { content: ''; width: 7px; height: 7px; border-radius: 50%; background: rgba(255,255,255,.18); box-shadow: inset 0 1px 1px rgba(0,0,0,.4); }
  .mn-board.live .mn-cell.closed { cursor: pointer; }
  .mn-board.live .mn-cell.closed:hover { transform: translateY(-2px); border-color: rgba(var(--accent-rgb), .55); background: linear-gradient(180deg, rgba(var(--accent-rgb), .16), rgba(var(--accent-rgb), .04)); }
  .mn-cell.safe, .mn-cell.mine, .mn-cell.hit, .mn-cell.ghost { animation: mnFlip .32s ease; }
  .mn-cell.safe::after, .mn-cell.mine::after, .mn-cell.hit::after, .mn-cell.ghost::after { display: none; }
  .mn-cell.safe { border-color: rgba(52,211,153,.75); background: radial-gradient(circle at 50% 40%, rgba(52,211,153,.32), rgba(6,78,59,.55)); box-shadow: 0 0 18px rgba(52,211,153,.25), inset 0 0 0 1px rgba(52,211,153,.2); }
  .mn-cell.safe img { width: 58%; height: 58%; object-fit: contain; filter: drop-shadow(0 3px 6px rgba(0,0,0,.4)); }
  .mn-cell.ghost img { width: 46%; opacity: .32; filter: grayscale(.4); }
  .mn-cell.mine svg, .mn-cell.hit svg { width: 56%; height: 56%; }
  .mn-cell.mine { opacity: .6; border-color: rgba(239,68,68,.4); background: rgba(239,68,68,.08); }
  .mn-cell.hit { border-color: #ef4444; background: radial-gradient(circle, rgba(239,68,68,.55), rgba(127,29,29,.6)); box-shadow: 0 0 26px rgba(239,68,68,.5); animation: mnShake .45s ease; }
  .mn-foot { text-align: center; margin: 14px 0 0; font-size: 12.5px; color: var(--text-dim); }
  @keyframes mnFlip { 0% { transform: rotateY(90deg) scale(.9); } 100% { transform: none; } }
  @keyframes mnShake { 0%, 100% { transform: none; } 20% { transform: translateX(-4px) rotate(-3deg); } 40% { transform: translateX(4px) rotate(3deg); } 60% { transform: translateX(-3px); } 80% { transform: translateX(3px); } }
  @media (max-width: 820px) { .mn-wrap { grid-template-columns: 1fr; } .mn-board-wrap { order: -1; padding: 14px; } .mn-board { gap: 7px; } .mn-cell { border-radius: 11px; } }

  /* ================= Crash ================= */
  .cr-head { display: flex; justify-content: space-between; align-items: center; margin: 0 0 12px; }
  .cr-head h3 { margin: 0; font-family: var(--font-display); font-size: 26px; letter-spacing: .01em; }
  .cr-pill { padding: 6px 14px; border-radius: 999px; font-size: 11.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: #93c5fd; border: 1px solid rgba(96,165,250,.45); background: rgba(37,99,235,.12); }
  .cr-grid { display: grid; grid-template-columns: 1fr 300px; gap: 16px; align-items: start; }
  .cr-main { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
  .cr-stage { position: relative; height: 380px; border-radius: 22px; overflow: hidden; border: 1px solid rgba(96,165,250,.2);
    background: radial-gradient(ellipse at 20% 120%, rgba(37,99,235,.38), transparent 60%), radial-gradient(ellipse at 90% -10%, rgba(124,58,237,.28), transparent 55%), linear-gradient(180deg, #040915, #0a1530); }
  .cr-stage.crashed { border-color: rgba(239,68,68,.35); }
  .cr-stage::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(ellipse at 60% 50%, rgba(239,68,68,.22), transparent 60%); opacity: 0; transition: opacity .35s; }
  .cr-stage.crashed::after { opacity: 1; }
  .cr-stars { position: absolute; inset: -50%; background-image: radial-gradient(1.4px 1.4px at 20px 30px, #fff, transparent), radial-gradient(1px 1px at 120px 80px, #cbd5e1, transparent), radial-gradient(1.2px 1.2px at 200px 160px, #fff, transparent), radial-gradient(1px 1px at 60px 200px, #94a3b8, transparent), radial-gradient(1.6px 1.6px at 260px 40px, #e2e8f0, transparent);
    background-size: 300px 240px; opacity: .5; animation: crStars 40s linear infinite; }
  .cr-stars.s2 { background-size: 180px 150px; opacity: .28; animation-duration: 70s; }
  .cr-stage.flying .cr-stars { animation-duration: 6s; opacity: .75; }
  .cr-stage.flying .cr-stars.s2 { animation-duration: 10s; }
  @keyframes crStars { from { transform: translate(0, 0); } to { transform: translate(-300px, 240px); } }
  .cr-canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
  .cr-rocket { position: absolute; left: 0; top: 0; width: 132px; height: 54px; margin: -27px 0 0 -100px; transform-origin: 100px 27px; will-change: transform; pointer-events: none; filter: drop-shadow(0 8px 16px rgba(0,0,0,.55)); }
  .cr-rocket svg { width: 100%; height: 100%; overflow: visible; }
  .rk-flame { transform-origin: 56px 45px; animation: rkFlame .09s linear infinite alternate; }
  .rk-heat { transform-box: fill-box; transform-origin: center; animation: rkHeat .12s ease-in-out infinite alternate; }
  .cr-stage.betting .rk-heat { animation: none; opacity: .35; }
  @keyframes rkHeat { from { opacity: .65; transform: scale(.92); } to { opacity: 1; transform: scale(1.08); } }
  .cr-stage.betting .rk-flame { animation: rkIdle .35s ease-in-out infinite alternate; }
  .cr-stage.flying .cr-rocket svg { animation: rkShake .07s linear infinite alternate; }
  @keyframes rkFlame { from { transform: scaleX(.85) scaleY(.92); opacity: .9; } to { transform: scaleX(1.18) scaleY(1.06); opacity: 1; } }
  @keyframes rkIdle { from { transform: scaleX(.28) scaleY(.6); } to { transform: scaleX(.4) scaleY(.7); } }
  @keyframes rkShake { from { transform: translate(-.6px, .6px); } to { transform: translate(.6px, -.6px); } }
  .cr-boom { position: absolute; width: 170px; height: 170px; transform: translate(-50%, -50%) scale(0); border-radius: 50%; pointer-events: none;
    background: radial-gradient(circle, #fff7cc 0%, #fbbf24 22%, #f97316 45%, rgba(239,68,68,.55) 65%, transparent 70%); opacity: 0; }
  .cr-boom.go { animation: crBoom .65s ease-out forwards; }
  @keyframes crBoom { 0% { transform: translate(-50%, -50%) scale(.2); opacity: 1; } 100% { transform: translate(-50%, -50%) scale(1.9); opacity: 0; } }
  .cr-mult { position: absolute; left: 50%; top: 38%; transform: translate(-50%, -50%); text-align: center; display: flex; flex-direction: column; align-items: center; gap: 4px; pointer-events: none; }
  .cr-mult small { font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #93c5fd; }
  .cr-mult b { font-family: var(--font-display); font-size: 78px; line-height: 1; color: #e0f2fe; text-shadow: 0 0 34px rgba(56,189,248,.45), 0 4px 18px rgba(0,0,0,.6); font-variant-numeric: tabular-nums; }
  .cr-mult b i { font-style: normal; font-size: .45em; margin-left: 2px; color: #7dd3fc; }
  .cr-mult span { font-size: 13px; font-weight: 700; color: #cbd5e1; min-height: 18px; text-shadow: 0 2px 8px rgba(0,0,0,.6); }
  .cr-stage.crashed .cr-mult small { color: #f87171; }
  .cr-stage.crashed .cr-mult b { color: #f43f5e; text-shadow: 0 0 34px rgba(244,63,94,.45); }
  .cr-stage.crashed .cr-mult b i { color: #fb7185; }
  .cr-stage.betting .cr-mult b { color: #f8fafc; }
  .cr-countbar { width: 180px; height: 6px; border-radius: 99px; background: rgba(255,255,255,.1); overflow: hidden; margin-top: 6px; visibility: hidden; }
  .cr-countbar i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #60a5fa, #a78bfa); border-radius: inherit; }
  .cr-stage.betting .cr-countbar { visibility: visible; }
  .cr-history { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding: 2px; }
  .cr-history::-webkit-scrollbar { display: none; }
  .cr-chip { flex: none; padding: 7px 12px; border-radius: 999px; font-size: 12.5px; font-weight: 800; border: 1px solid var(--hair); background: rgba(255,255,255,.04); color: var(--text-dim); font-variant-numeric: tabular-nums; }
  .cr-chip.mid { color: #93c5fd; border-color: rgba(96,165,250,.45); background: rgba(37,99,235,.14); }
  .cr-chip.high { color: #fbbf24; border-color: rgba(251,191,36,.55); background: rgba(217,119,6,.15); }
  .cr-panel { padding: 16px; display: flex; flex-direction: column; gap: 10px; }
  .cr-auto { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 14px; background: rgba(0,0,0,.18); border: 1px solid var(--hair); cursor: pointer; font-size: 13.5px; font-weight: 700; color: var(--text-dim); }
  .cr-auto > input { display: none; }
  .cr-switch { width: 36px; height: 20px; border-radius: 99px; background: rgba(255,255,255,.14); position: relative; flex: none; transition: background .2s; }
  .cr-switch::after { content: ''; position: absolute; left: 3px; top: 3px; width: 14px; height: 14px; border-radius: 50%; background: #fff; transition: transform .2s; }
  .cr-auto > input:checked + .cr-switch { background: var(--accent); }
  .cr-auto > input:checked + .cr-switch::after { transform: translateX(16px); }
  .cr-auto-t { flex: 1; }
  .cr-auto-box { display: flex; align-items: center; gap: 4px; padding: 0 10px; height: 34px; border-radius: 10px; border: 1px solid var(--hair); background: rgba(0,0,0,.2); }
  .cr-auto-box input { width: 54px; background: none; border: 0; outline: 0; color: var(--text); font: inherit; font-weight: 800; text-align: right; }
  .cr-auto-box i { font-style: normal; color: var(--text-dim); }
  .cr-go { width: 100%; height: 58px; font-size: 15.5px; margin: 0; }
  .cr-go.take { background: linear-gradient(180deg, #34d399, #059669); color: #04130c; }
  .cr-go.wait { background: rgba(255,255,255,.07); color: var(--text-dim); box-shadow: none; }
  .cr-pick { padding: 12px; border-radius: 14px; background: rgba(0,0,0,.18); border: 1px solid var(--hair); }
  .cr-pick-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--text-dim); }
  .cr-pick-head b { letter-spacing: 0; text-transform: none; font-size: 12px; color: var(--text); }
  .cr-items { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 8px; max-height: 236px; overflow-y: auto; padding-right: 2px; }
  .cr-items.locked { opacity: .45; pointer-events: none; }
  .cr-item { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 10px 6px 8px; border-radius: 12px; border: 1px solid var(--hair); background: rgba(255,255,255,.03); cursor: pointer; color: var(--text); font: inherit; min-width: 0; transition: border-color .15s, background .15s, transform .12s; }
  .cr-item:hover { border-color: rgba(var(--accent-rgb), .5); transform: translateY(-1px); }
  .cr-item.on { border-color: var(--accent); background: rgba(var(--accent-rgb), .14); box-shadow: 0 0 0 1px rgba(var(--accent-rgb), .4); }
  .cr-item .cr-item-img { width: 52px; height: 52px; object-fit: contain; }
  .cr-item b { font-size: 11px; line-height: 1.2; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .cr-item span { font-size: 11.5px; font-weight: 800; color: #fbbf24; }
  .cr-empty { font-size: 13px; color: var(--text-dim); padding: 6px 2px; }
  .cr-msg { margin: 0 !important; font-weight: 700; text-align: center; }
  .cr-limits { margin: 0; text-align: center; font-size: 11.5px; color: var(--text-dim); }
  .cr-side { padding: 16px; position: sticky; top: 90px; }
  .cr-side-h { font-size: 11.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--text-dim); margin-bottom: 10px; }
  .cr-bets { display: flex; flex-direction: column; gap: 6px; max-height: 470px; overflow-y: auto; }
  .cr-brow { display: grid; grid-template-columns: 34px 1fr auto auto; gap: 8px; align-items: center; padding: 7px 10px; border-radius: 11px; background: rgba(255,255,255,.03); font-size: 12.5px; }
  .cr-brow .cr-bimg { width: 30px; height: 30px; object-fit: contain; }
  .cr-brow.me { box-shadow: inset 0 0 0 1px rgba(var(--accent-rgb), .55); }
  .cr-brow .nm { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 700; }
  .cr-brow .bt { color: var(--text-dim); font-variant-numeric: tabular-nums; }
  .cr-brow .x { font-weight: 800; color: var(--text-dim); font-variant-numeric: tabular-nums; }
  .cr-brow.won .x { color: #34d399; }
  .cr-brow.lost { opacity: .55; }
  @media (max-width: 980px) { .cr-grid { grid-template-columns: 1fr; } .cr-side { position: static; } }
  @media (max-width: 560px) { .cr-stage { height: 280px; } .cr-rocket { width: 104px; height: 43px; margin: -21px 0 0 -79px; transform-origin: 79px 21px; } .cr-mult b { font-size: 56px; } .cr-items { grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); } }

  /* ---------- Trade helper switch ---------- */
  .trade-switch { display: flex; gap: 4px; width: max-content; max-width: 100%; margin: 0 auto 18px; padding: 4px; border-radius: 14px; background: var(--surface-2); border: 1px solid var(--hair); }
  .trade-switch button { font: inherit; font-weight: 700; font-size: 13px; padding: 8px 16px; border-radius: 10px; border: 0; background: none; color: var(--text-dim); cursor: pointer; white-space: nowrap; }
  .trade-switch button.on { background: var(--accent); color: var(--accent-ink); }
  .tg-mini .trade-switch { display: none; }

  /* ---------- Quests ---------- */
  .q-wrap { max-width: 820px; margin: 0 auto; display: flex; flex-direction: column; gap: 22px; }
  .q-sec-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 2px 10px; }
  .q-sec-head h3 { margin: 0; font-size: 15px; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; color: var(--text); }
  .q-sec-head span { font-size: 12.5px; color: var(--text-dim); font-variant-numeric: tabular-nums; }
  .q-list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .q-card { display: grid; grid-template-columns: 44px 1fr auto; gap: 10px 12px; align-items: center; padding: 14px; border-radius: 16px; background: var(--surface-2); border: 1px solid var(--hair); min-width: 0; }
  .q-card.ready { border-color: rgba(var(--accent-rgb), .55); box-shadow: 0 0 0 1px rgba(var(--accent-rgb), .25), 0 8px 28px rgba(var(--accent-rgb), .12); }
  .q-card.claimed { opacity: .6; }
  .q-ico { width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: rgba(var(--accent-rgb), .10); border: 1px solid var(--hair); overflow: hidden; }
  .q-ico img { width: 88%; height: 88%; object-fit: contain; }
  .q-ico svg { width: 24px; height: 24px; }
  .q-ico.tg { background: linear-gradient(135deg, #37aee2, #1e96c8); border-color: transparent; color: #fff; }
  .q-ico.tt { background: #0b0b0f; border-color: rgba(255,255,255,.12); }
  .q-ico.up { background: linear-gradient(135deg, rgba(var(--accent-rgb), .9), rgba(var(--accent-rgb), .45)); border-color: transparent; color: var(--accent-ink); }
  .q-hint { margin: 6px 0 0; font-size: 12px; color: var(--text-dim); line-height: 1.4; }
  .q-tt { grid-column: 1 / -1; display: flex; gap: 8px; }
  .q-tt .text-input { flex: 1; min-width: 0; margin: 0; }
  .q-state { font-size: 12px; font-weight: 700; color: #ffb02e; }
  .adm-q-row { display: grid; grid-template-columns: 34px 1fr 70px 80px auto auto; gap: 8px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--hair); }
  .adm-q-row .text-input { margin: 0; padding: 6px 8px; }
  .adm-q-row .q-ico { width: 34px; height: 34px; border-radius: 9px; }
  .adm-q-row label { display: flex; align-items: center; gap: 4px; font-size: 12px; color: var(--text-dim); }
  .adm-q-name { font-size: 13px; font-weight: 600; min-width: 0; }
  .adm-q-add { display: grid; grid-template-columns: 1fr 90px 100px auto; gap: 8px; align-items: end; margin: 8px 0 18px; }
  .adm-q-add label { display: flex; flex-direction: column; gap: 4px; font-size: 11px; color: var(--text-dim); text-transform: uppercase; letter-spacing: .04em; }
  .adm-q-add .text-input, .adm-q-add select { margin: 0; }
  .adm-tt { display: flex; gap: 8px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--hair); font-size: 13px; flex-wrap: wrap; }
  .adm-tt a { color: var(--accent); word-break: break-all; flex: 1; min-width: 160px; }
  @media (max-width: 600px) { .adm-q-row { grid-template-columns: 34px 1fr 60px 70px; } .adm-q-row > :nth-child(n+5) { grid-column: span 2; } .adm-q-add { grid-template-columns: 1fr 1fr; } }
  .q-body { min-width: 0; }
  .q-title { font-size: 14px; font-weight: 700; color: var(--text); line-height: 1.3; }
  .q-prog { display: flex; align-items: center; gap: 8px; margin-top: 7px; }
  .q-bar { flex: 1; height: 6px; border-radius: 99px; background: rgba(255,255,255,.07); overflow: hidden; }
  .q-bar i { display: block; height: 100%; border-radius: inherit; background: var(--accent); transition: width .4s ease; }
  .q-num { font-size: 11.5px; color: var(--text-dim); font-variant-numeric: tabular-nums; }
  .q-side { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
  .q-rew { display: inline-flex; align-items: center; gap: 4px; font-size: 12.5px; font-weight: 800; color: #ffb02e; white-space: nowrap; }
  .q-btn { font: inherit; font-size: 12.5px; font-weight: 800; padding: 7px 14px; border-radius: 10px; border: 1px solid var(--hair); background: rgba(255,255,255,.04); color: var(--text); cursor: pointer; white-space: nowrap; }
  .q-btn.main { background: var(--accent); border-color: transparent; color: var(--accent-ink); }
  .q-btn:disabled { opacity: .55; cursor: default; }
  .q-btns { display: flex; gap: 6px; }
  .q-msg { grid-column: 1 / -1; font-size: 12.5px; margin: 0; }
  .q-invite { padding: 18px; border-radius: 18px; border: 1px solid rgba(var(--accent-rgb), .3);
    background: linear-gradient(110deg, rgba(var(--accent-rgb), .14), rgba(var(--accent-rgb), .03) 60%), var(--surface-2); }
  .q-invite-top { display: grid; grid-template-columns: 44px 1fr auto; gap: 12px; align-items: center; }
  .q-invite p { margin: 10px 0 0; font-size: 13px; color: var(--text-dim); line-height: 1.45; }
  .q-links { display: grid; gap: 8px; margin-top: 12px; }
  .q-link { display: flex; align-items: center; gap: 8px; padding: 8px 8px 8px 12px; border-radius: 12px; background: rgba(0,0,0,.18); border: 1px solid var(--hair); min-width: 0; }
  .q-link small { flex: none; font-size: 11px; font-weight: 700; color: var(--text-dim); text-transform: uppercase; letter-spacing: .04em; }
  .q-link code { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12.5px; color: var(--text); }
  .q-stats { margin-top: 10px; font-size: 12.5px; color: var(--text-dim); }
  .q-guest { text-align: center; padding: 22px; border-radius: 16px; background: var(--surface-2); border: 1px dashed var(--hair); color: var(--text-dim); }
  .q-guest .q-btn { margin-top: 10px; }
  @media (max-width: 720px) { .q-list { grid-template-columns: 1fr; } }
  @media (max-width: 420px) {
    .q-card { grid-template-columns: 40px 1fr; }
    .q-side { grid-column: 1 / -1; flex-direction: row; align-items: center; justify-content: space-between; }
    .q-ico { width: 40px; height: 40px; }
    .q-invite-top { grid-template-columns: 40px 1fr; }
    .q-invite-top .q-side { grid-column: 1 / -1; }
  }

  /* ---------- Free case card above the case list ---------- */
  .free-remind { position: relative; box-sizing: border-box; max-width: 760px; margin: 0 auto 26px;
    display: grid; grid-template-columns: 68px 1fr auto; gap: 14px 16px; align-items: center; padding: 14px 16px;
    border-radius: 18px; border: 1px solid rgba(var(--accent-rgb), .28);
    background: linear-gradient(100deg, rgba(var(--accent-rgb), .14), rgba(var(--accent-rgb), .03) 60%), var(--surface-2); }
  .free-remind[hidden] { display: none; }
  .fr-img { width: 68px; height: 68px; border-radius: 14px; background: rgba(var(--accent-rgb), .10); border: 1px solid var(--hair); display: grid; place-items: center; }
  .fr-img img { width: 58px; height: 58px; object-fit: contain; }
  .free-remind.ready .fr-img img { animation: frBob 2.4s ease-in-out infinite; }
  .fr-text { min-width: 0; }
  .fr-tag { display: inline-flex; align-items: center; gap: 6px; font-size: 10.5px; font-weight: 800; letter-spacing: .12em; color: var(--accent); }
  .free-remind.ready .fr-tag::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--accent); animation: frPing 1.6s ease-out infinite; }
  .fr-title { font-size: 17px; font-weight: 800; color: var(--text); margin-top: 3px; }
  .fr-sub { font-size: 12.5px; color: var(--text-dim); margin-top: 2px; }
  .free-remind .fr-open { margin: 0; min-width: 170px; }
  .fr-wait { font-size: 13.5px; font-weight: 700; color: var(--text-dim); text-align: center; padding: 10px 14px; border-radius: 12px; background: rgba(255,255,255,.03); border: 1px dashed var(--hair); white-space: nowrap; }
  @media (max-width: 620px) {
    .free-remind { grid-template-columns: 64px 1fr; margin-bottom: 20px; }
    .free-remind .fr-open, .fr-wait { grid-column: 1 / -1; width: 100%; min-width: 0; }
    .fr-img { width: 64px; height: 64px; }
  }
  @keyframes frBob { 50% { transform: translateY(-4px) rotate(-3deg); } }
  @keyframes frPing { 0% { box-shadow: 0 0 0 0 rgba(var(--accent-rgb), .6); } 70%, 100% { box-shadow: 0 0 0 7px rgba(var(--accent-rgb), 0); } }
  @media (prefers-reduced-motion: reduce) { .fr-img img, .fr-tag::before { animation: none !important; } }

  /* ---------- Telegram Mini App: app-style layout (header, cases grid, bottom tab bar) ---------- */
  .mini-only { display: none !important; }
  .tg-mini .site-hero, .tg-mini .site-footer, .tg-mini #spinView > .masthead { display: none !important; }
  .tg-mini .online-pill, .tg-mini .theme-wrap, .tg-mini .lang-wrap, .tg-mini #avatarBtn, .tg-mini #topbarBtc { display: none !important; }
  .tg-mini .topbar { position: sticky; top: 0; background: color-mix(in srgb, var(--surface) 88%, transparent); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-bottom: 1px solid var(--hair); }
  .tg-mini .topbar-inner { padding: 10px 14px; gap: 8px; justify-content: flex-start; flex-wrap: nowrap; }
  .tg-mini .topbar-brand { display: flex !important; font-size: 15px; gap: 7px; margin: 0; }
  .tg-mini .mini-ic { display: grid !important; place-items: center; width: 34px; height: 34px; border-radius: 50%; border: 0; padding: 0; cursor: pointer; flex: 0 0 auto; margin-right: auto;
    background: linear-gradient(180deg, #2AABEE, #1E8FD6); color: #fff; box-shadow: 0 6px 16px -8px rgba(42,171,238,.9); }
  .tg-mini .mini-ic svg { width: 17px; height: 17px; margin-left: -2px; }
  .tg-mini .topbar-balance { height: 38px; padding: 0 14px; border-radius: 999px; font-size: 14px; background: var(--glass); border: 1px solid var(--hair); color: var(--text); }
  .tg-mini .auth-btn { height: 38px; border-radius: 999px; }
  .tg-mini .mini-plus, .tg-mini .mini-gear { display: grid !important; place-items: center; width: 38px; height: 38px; border-radius: 50%; padding: 0; cursor: pointer; flex: 0 0 auto; }
  .tg-mini .mini-plus { border: 0; color: #fff; background: linear-gradient(135deg, var(--accent), var(--accent-strong, var(--accent))); box-shadow: 0 8px 20px -10px rgba(var(--accent-rgb), .95), inset 0 1px 0 rgba(255,255,255,.25); }
  .tg-mini .mini-plus svg { width: 18px; height: 18px; }
  .tg-mini .mini-gear { border: 1px solid var(--hair); background: var(--glass); color: var(--text-dim); }
  .tg-mini .mini-gear svg { width: 19px; height: 19px; }

  .tg-mini #spinView { padding-top: 14px; }
  .tg-mini .loot-feed { gap: 10px; margin-bottom: 6px; }
  .tg-mini .loot-top-card { flex-wrap: nowrap; padding: 14px 16px; border-radius: 20px; border: 1px solid rgba(255,176,46,.28);
    background: radial-gradient(circle at 0% 50%, rgba(255,176,46,.14), transparent 55%), var(--card-bg); }
  .tg-mini .loot-top-img { width: 60px; height: 60px; }
  .tg-mini .loot-top-name { font-family: var(--font-display); font-size: 16px; }
  .tg-mini .loot-top-right { width: auto; align-items: flex-end; }
  .tg-mini .loot-top-price { font-size: 17px; white-space: nowrap; }
  .tg-mini .loot-top-name { font-size: 15px; line-height: 1.15; }
  .tg-mini .loot-recent { flex-wrap: nowrap; height: auto; overflow-x: auto; overflow-y: hidden; gap: 10px; padding: 8px 2px 4px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .tg-mini .loot-recent::-webkit-scrollbar { display: none; }
  .tg-mini .loot-chip { flex: 0 0 104px; min-width: 0; padding: 12px 8px 10px; border-radius: 16px; gap: 6px; }
  .tg-mini .loot-chip-img { width: 54px; height: 54px; }
  .tg-mini .loot-chip-price { font-size: 12.5px; }
  .tg-mini .loot-chip-who { font-size: 10px; max-width: 100%; }
  .tg-mini .loot-chip-badge { top: 6px; right: 6px; }
  .tg-mini .loot-chip-badge .loot-avatar { width: 22px; height: 22px; font-size: 10px; }

  /* Home: no Cases/Upgrader/Road switch (the bottom bar does that). Games: only Upgrader and Road. */
  .tg-mini .cz-tabs { display: none; }
  .tg-mini.mini-games .cz-tabs { display: flex; }
  .tg-mini.mini-games #czSpins, .tg-mini.mini-games #lootFeed { display: none !important; }

  .tg-mini .mini-cases-head { display: block !important; margin: 4px 2px 2px; }
  .mini-kicker { font-family: var(--font-display); font-size: 10.5px; font-weight: 700; letter-spacing: .12em; color: var(--accent); text-transform: uppercase; }
  .mini-cases-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 6px; }
  .mini-cases-row h2 { margin: 0; font-family: var(--font-display); font-size: 30px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.05; }
  .mini-cases-n { padding: 7px 13px; border-radius: 999px; border: 1px solid var(--hair); background: var(--glass); font-size: 12.5px; font-weight: 700; color: var(--text-dim); white-space: nowrap; }

  /* All cases in one 2-column grid. */
  .tg-mini #caseGroups:not([hidden]) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .tg-mini #caseGroups > .mini-cases-head { grid-column: 1 / -1; }
  .tg-mini #caseGroups > .free-remind { grid-column: 1 / -1; width: 100%; max-width: none; margin: 0 0 4px; }
  .tg-mini #caseGroups .case-cat { display: flex !important; grid-column: 1 / -1; margin: 10px 0 0; }
  .tg-mini .mini-kicker, .tg-mini .mini-cases-n { display: none !important; }
  .tg-mini #spinChooser, .tg-mini #paidCardsBasic, .tg-mini #paidCardsExtra, .tg-mini #paidCardsExtra .spin-choose { display: contents; }
  .tg-mini #caseGroups .case-card { width: auto; min-width: 0; max-width: none; flex: none; margin: 0; }
  .tg-mini .spin-choice.case-card { position: relative; min-height: 0; padding: 12px; border-radius: 20px; overflow: hidden; }
  .tg-mini .case-card .cc-title { font-size: 13px; line-height: 1.2; }
  .tg-mini .case-card .cc-sub { font-size: 11px; }
  .tg-mini .case-card .cc-art { padding: 8px 0 10px; }
  .tg-mini .case-card .cc-art .sc-case { height: 92px; }
  .tg-mini .case-card .cc-art .sc-emoji { font-size: 60px; }
  .tg-mini .case-card .cc-price { align-self: stretch; text-align: center; padding: 8px 6px; font-size: 13px; border-radius: 12px; }
  .cc-badges { display: none; }
  .tg-mini .cc-badges { display: flex; flex-wrap: wrap; gap: 4px; margin: 0 0 6px; }
  .cc-badges i { font-style: normal; font-size: 8.5px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; padding: 4px 7px; border-radius: 999px;
    background: rgba(0,0,0,.45); border: 1px solid rgba(255,255,255,.14); color: #fff; }
  .cc-badges i.sub { background: rgba(var(--accent-rgb), .22); border-color: rgba(var(--accent-rgb), .5); }

  /* Bottom tab bar. */
  .tg-mini body { padding-bottom: calc(84px + env(safe-area-inset-bottom)); }
  .tg-mini .mini-nav { display: grid !important; grid-template-columns: repeat(6, 1fr); gap: 4px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); background: color-mix(in srgb, var(--surface) 90%, transparent);
    backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-top: 1px solid var(--hair); }
  .mini-nav button { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; padding: 8px 2px 7px; border: 1px solid transparent; border-radius: 16px;
    background: none; color: var(--text-dim); font-family: inherit; font-size: 10.5px; font-weight: 700; cursor: pointer; transition: color .15s, background .15s; min-width: 0; }
  .mini-nav button span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .tg-mini .mini-nav { gap: 2px; padding-left: 6px; padding-right: 6px; }
  .tg-mini .mini-nav button { font-size: 9.5px; padding-left: 0; padding-right: 0; letter-spacing: -.01em; }
  .mini-nav svg { width: 22px; height: 22px; }
  .mini-nav button.on { color: var(--text); background: rgba(var(--accent-rgb), .16); border-color: rgba(var(--accent-rgb), .35); }
  .mini-nav button.on svg { color: var(--accent); }


  /* Mini App header: logo, channel, DM on the left. */
  .tg-mini .topbar-brand { font-size: 0; gap: 0; }
  .tg-mini .topbar-brand .logo-mark { width: 34px; height: 34px; }
  .tg-mini .mini-ic { margin-right: 0; }
  .tg-mini .mini-ic.dm { margin-right: auto; background: linear-gradient(180deg, rgba(var(--accent-rgb), .95), var(--accent-strong)); box-shadow: 0 6px 16px -8px rgba(var(--accent-rgb), .9); }
  .tg-mini .mini-ic.dm svg { margin-left: 0; width: 18px; height: 18px; }
  .mini-set-grid .flag-icon { display: inline-grid; place-items: center; }
  .mini-set-grid .flag-icon svg { width: 20px; height: 14px; display: block; border-radius: 3px; }

  /* Tab bar stays on top of every window; windows leave room for it. */
  .tg-mini .mini-nav { z-index: 110; }
  .tg-mini .modal-backdrop { padding-bottom: calc(84px + env(safe-area-inset-bottom)); }

  /* Wallet: a full screen instead of a small window. */
  .tg-mini .modal-backdrop.mini-sheet { padding: 0 0 calc(74px + env(safe-area-inset-bottom)); align-items: stretch; background: var(--surface); -webkit-backdrop-filter: none; backdrop-filter: none; }
  .tg-mini .mini-sheet .modal { max-width: none; max-height: none; height: 100%; border: 0; border-radius: 0; box-shadow: none; padding: 18px 14px 28px; }
  .tg-mini .mini-sheet .modal-top { align-items: center; }
  .tg-mini .mini-sheet .modal-top h3 { font-size: 26px; font-weight: 700; letter-spacing: -0.02em; }
  .mini-wallet-seg { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 5px; margin: 14px 0 14px; border-radius: 18px; border: 1px solid var(--hair); background: var(--glass); }
  .mini-wallet-seg button { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 8px; border: 0; border-radius: 13px; background: none; color: var(--text-dim); font-family: inherit; font-size: 14px; font-weight: 700; cursor: pointer; }
  .mini-wallet-seg button svg { width: 18px; height: 18px; }
  .mini-wallet-seg button.on { color: #fff; background: linear-gradient(135deg, var(--accent), var(--accent-strong)); box-shadow: 0 10px 22px -12px rgba(var(--accent-rgb), .95); }
  .tg-mini .tp-methods { grid-template-columns: 1fr 1fr; gap: 10px; }
  .tg-mini .tp-method { display: grid; grid-template-columns: auto 1fr; column-gap: 10px; row-gap: 2px; align-items: center; justify-items: start; text-align: left; padding: 14px 12px; border-radius: 16px; }
  .tg-mini .tp-method .tpm-ico { grid-row: span 2; }
  .tg-mini .tp-method.m-stars { order: -1; }

  /* Settings sheet (language + theme). */
  .mini-set-title { font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--text-dim); margin: 6px 0 8px; }
  .mini-set-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 8px; margin-bottom: 14px; }
  .mini-set-grid button { display: flex; align-items: center; gap: 8px; padding: 11px 12px; border-radius: 14px; border: 1px solid var(--hair); background: var(--glass); color: var(--text); font-family: inherit; font-size: 13px; font-weight: 700; cursor: pointer; text-align: left; }
  .mini-set-grid button.on { border-color: var(--accent); background: rgba(var(--accent-rgb), .14); }


  .adm-partner-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
  .adm-partner-toolbar b { font-size: 18px; }
  .adm-partner-hint { margin: 0 0 16px; }
  .adm-partner-find { display: flex; gap: 8px; margin-bottom: 12px; }
  .adm-partner-find .text-input { flex: 1; min-width: 0; margin: 0; }
  .adm-partner-find .btn-primary { flex: 0 0 auto; width: auto; }
  .adm-partner-result { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px; margin-bottom: 8px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 12px; }
  .adm-partner-result > div { display: flex; flex-direction: column; gap: 4px; min-width: 0; overflow-wrap: anywhere; }
  .adm-partner-result span, .adm-partner-result code { font-size: 12px; color: var(--text-dim); }
  .adm-partner-pin { margin-top: 6px; display: block; font-size: 12px; }
  .adm-partner-pin.is-partner { color: var(--accent); border-color: rgba(var(--accent-rgb), .4); opacity: 1; }
  .adm-partner-info { margin: 0 0 14px; color: var(--text-dim); font-size: 13px; }
  .adm-partner-info summary { cursor: pointer; }
  .adm-partner-info p { margin: 8px 0; line-height: 1.5; }
  .adm-partner-list { display: grid; gap: 14px; }
  .adm-partner-card { padding: 18px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 16px; }
  .adm-partner-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 16px; }
  .adm-partner-identity { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
  .adm-partner-open { padding: 0; text-align: left; border: 0; background: transparent; color: var(--accent); font: inherit; font-size: 18px; font-weight: 800; overflow-wrap: anywhere; cursor: pointer; }
  .adm-partner-open:hover { text-decoration: underline; }
  .adm-partner-identity > span { font-size: 13px; overflow-wrap: anywhere; }
  .adm-partner-identity code { color: var(--text-dim); font-size: 12px; overflow-wrap: anywhere; }
  .adm-partner-remove { flex: 0 0 auto; font-size: 12px; }
  .adm-partner-controls { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
  .adm-partner-wallet, .adm-partner-chances { display: flex; flex-direction: column; align-items: stretch; gap: 10px; min-width: 0; }
  .adm-partner-wallet > span, .adm-partner-luck-kind { font-size: 13px; color: var(--text-dim); }
  .adm-partner-wallet > b { color: var(--accent); font-size: 22px; overflow-wrap: anywhere; }
  .adm-partner-card label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; }
  .adm-partner-card .text-input { width: 100%; min-width: 0; margin: 0; box-sizing: border-box; font-size: 16px; }
  .adm-partner-quick { display: flex; flex-wrap: wrap; gap: 6px; }
  .adm-partner-quick .adm-act-btn { font-size: 13px; }
  .adm-partner-wallet small { color: var(--text-dim); font-size: 12px; line-height: 1.5; }
  .adm-partner-luck-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .adm-partner-chances .btn-secondary { margin-top: auto; }
  .adm-partner-status { font-size: 14px; color: var(--win); margin: 12px 0 0; line-height: 1.5; }
  .adm-partner-status.bad { color: var(--lose); }
  .adm-partner-card button:disabled, .adm-partner-find button:disabled { opacity: .5; cursor: default; }
  @media (max-width: 620px) {
    .adm-partner-find { flex-direction: column; }
    .adm-partner-controls { grid-template-columns: 1fr; }
    .adm-partner-chances { padding-top: 14px; border-top: 1px solid var(--line); }
    .adm-partner-head { flex-direction: column; }
    .adm-partner-card { padding: 14px; }
    .adm-partner-result { flex-wrap: wrap; }
  }


/* SABHelper October release. Use the existing theme variables. */
#navFaq,[data-mt="faq"],[data-tv="faq"],#czRoad,#czCrash,#czMines{display:none!important}
.topbar-inner{flex-wrap:wrap}.topbar-links{min-width:0;flex:1 1 auto;overflow:visible;flex-wrap:wrap;margin-right:8px}.topbar-link{flex:0 0 auto;white-space:nowrap}.topbar-balance{max-width:220px;font-size:clamp(11px,1vw,13px)}
.tg-mini .mini-topnav{flex:1 1 550px;min-width:0;overflow:visible!important;flex-wrap:wrap}.tg-mini .mini-topnav button{flex:0 0 auto}.tg-mini .mini-topnav button svg{flex-shrink:0}
.acc-items-head{flex-wrap:wrap;gap:8px}.acc-items-head .my-req-divider{flex:1 1 120px}.cz-tabs{max-width:620px}.cz-tabs .auth-tab{flex:1 1 0}.release-modal{max-width:860px}.release-modal .modal-top h3{font-size:24px}.release-lead{color:var(--muted);margin:0 0 24px;line-height:1.5}
.release-kicker{font-size:11px;letter-spacing:.15em;font-weight:800;text-transform:uppercase;color:var(--accent)}.games-heading{text-align:center;margin:28px 0}.games-heading h1,.games-heading h2{font-size:clamp(28px,4vw,42px);margin:10px 0}.games-heading .sub{margin:8px 0}
.release-step{border:1px solid var(--line);border-radius:18px;background:var(--surface-2);padding:20px;margin:14px 0}.release-step h4{margin:0 0 14px;display:flex;align-items:center;gap:12px;font-size:17px}.release-step h4>span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--surface-3);color:var(--accent);font-size:14px}.release-step .text-input{width:100%;margin-top:10px}.bulk-summary{color:var(--accent);font-weight:700;font-size:13px;margin:12px 0}.bulk-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:320px;overflow:auto;padding:2px}
.bulk-item{position:relative;display:flex;align-items:center;gap:10px;text-align:left;background:var(--surface-1);color:var(--text);border:1px solid var(--line);border-radius:14px;padding:12px;cursor:pointer;min-width:0}.bulk-item.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--surface-3)}.bulk-item:disabled{opacity:.48;cursor:default}.bulk-item>span{min-width:0}.bulk-item b{font-size:12px;display:block;overflow-wrap:anywhere}.bulk-item small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.bulk-item i{position:absolute;right:6px;top:4px;color:var(--accent);font-style:normal}.bulk-pic{width:48px;height:60px;object-fit:contain;flex-shrink:0}.bulk-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.bulk-slot{background:var(--surface-1);border:1px solid var(--line);border-radius:12px;padding:14px;color:var(--text);font-weight:600;text-align:left;cursor:pointer}.bulk-slot.selected{background:var(--surface-3);color:var(--accent);border-color:var(--accent)}
.release-link{background:none;border:none;color:var(--accent);font:inherit;font-size:13px;cursor:pointer;padding:12px 0;text-align:left}.release-link:hover{text-decoration:underline}.release-msg{font-size:13px;line-height:1.5;color:var(--muted);min-height:22px}.release-submit{width:100%;min-height:48px}.release-history{border-top:1px solid var(--line);padding-top:18px;margin-top:24px}.release-history summary{cursor:pointer;font-weight:700;font-size:14px}.release-history article{border-bottom:1px solid var(--line);padding:16px 0}.release-history article span,.release-history article small{display:block;margin-top:6px;color:var(--muted)}.release-success{text-align:center;padding:28px 12px}.release-success>span{display:inline-grid;place-items:center;width:60px;height:60px;background:var(--surface-3);color:var(--accent);border:1px solid var(--accent);border-radius:50%;font-size:30px}.release-empty{padding:60px 24px;text-align:center;border:1px solid var(--line);background:var(--surface-2);border-radius:22px}.release-empty-icon{font-size:54px;color:var(--accent)}
.giveaway-layout{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.2fr);gap:24px;max-width:1000px;margin:0 auto 50px}.giveaway-prize{position:relative;text-align:center;overflow:hidden;padding:30px;border:1px solid rgba(244,200,74,.32);border-radius:24px;background:radial-gradient(ellipse at 50% 30%,rgba(242,191,47,.12),transparent 55%),var(--surface-2)}.giveaway-prize .release-kicker{color:#f6d365}.giveaway-clock{font:700 32px var(--font-display),sans-serif;margin:16px 0}.giveaway-art{height:240px;display:grid;place-items:center;position:relative}.giveaway-art:before{content:'';position:absolute;width:160px;height:100px;bottom:20px;border-radius:50%;background:rgba(244,200,74,.14);filter:blur(22px)}.giveaway-pic{height:220px;width:220px;object-fit:contain;position:relative;filter:drop-shadow(0 14px 22px #0005)}.giveaway-prize h2{font-size:24px;margin:20px 0 8px;overflow-wrap:anywhere}.giveaway-prize>p{color:#f6d365;margin:8px 0}.giveaway-dates{font-size:12px;color:var(--muted);margin:14px 0 24px}.giveaway-my{padding:20px 0;margin-bottom:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.giveaway-my small,.giveaway-my b{display:block}.giveaway-my small{color:var(--muted);font-size:12px;margin-bottom:10px}.giveaway-my b{font-size:23px}.giveaway-prize>.btn-primary{width:100%}.giveaway-winner{color:var(--accent);font-weight:700;margin:18px 0}
.giveaway-ranking{border:1px solid var(--line);border-radius:24px;background:var(--surface-2);padding:26px}.ranking-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 22px}.ranking-head h3{font-size:19px;margin:0}.ranking-head>span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.ranking-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 12px;border-top:1px solid var(--line);border-radius:8px;font-size:13px}.ranking-row b{overflow-wrap:anywhere}.ranking-row>span:last-child{font-size:12px;white-space:nowrap}.ranking-place{color:var(--muted);font-weight:700}.ranking-row:nth-child(-n+3) .ranking-place{color:#f6d365}.ranking-row.is-me{background:var(--surface-3);color:var(--accent)}.giveaway-rules{font-size:12px;line-height:1.7;margin-top:24px}.admin-giveaway-current{padding:20px;background:var(--surface-2);border-radius:16px;margin:20px 0}#admGiveaways>label{display:block;margin:16px 0}#admGiveaways .text-input{display:block;width:100%;margin-top:8px}
.dice-layout{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,.85fr);gap:24px;max-width:1000px;margin:auto}.dice-board,.dice-rules,.dice-history{border:1px solid var(--line);border-radius:24px;background:var(--surface-2);padding:28px}.dice-board{text-align:center;align-self:start}.dice-board h2{font-size:32px;margin:12px 0}.dice-board label{font-size:12px;color:var(--muted);display:block;margin:25px 0 10px}.dice-board .text-input{width:100%}.dice-faces{display:flex;justify-content:center;gap:12px;margin:44px 0 28px}.dice-face{width:66px;height:70px;border:2px solid #658bff;border-radius:18px;background:var(--surface-3);display:grid;place-items:center;box-shadow:0 5px 0 #0003}.dice-face span{display:block;color:var(--muted);font-weight:700;font-size:24px}.dice-face span[class]{width:26px;height:26px;border-radius:50%;box-shadow:inset 0 3px 6px #fff5,0 3px 8px #0006}.dice-faces.rolling .dice-face{animation:diceShake .4s linear infinite}.dice-faces.rolling .dice-face:nth-child(even){animation-delay:.2s}.dice-colors{display:flex;justify-content:center;gap:12px;margin:24px 0}.dice-color{width:38px;height:38px;border:3px solid #ffffff30;box-shadow:inset 0 3px 6px #fff5,0 3px 8px #0004;border-radius:50%;cursor:pointer}.dice-color.selected{outline:2px solid var(--text);outline-offset:4px}.dice-color:disabled{cursor:default}.red{background:#f65273}.orange{background:#ffac40}.yellow{background:#f5db46}.green{background:#45d893}.blue{background:#4a86e3}.purple{background:#a86ef0}.rainbow{background:conic-gradient(#fa5675,#ffb947,#edee66,#48d8a0,#648cea,#a56ded,#fa5675)}.dice-side{display:grid;gap:22px}.dice-rules h3,.dice-history h3{margin:0 0 18px;font-size:20px}.dice-rule{display:flex;gap:20px;align-items:center;border:1px solid var(--line);border-radius:12px;margin:9px 0;padding:14px;font-size:12px}.dice-rule b{color:var(--muted);min-width:36px;border-right:1px solid var(--line);padding-right:16px}.win{color:#48dba0}.loss{color:#f46b82}.dice-rule.bonus{color:#b69bff;background:#8358c612}.dice-rules .sub{font-size:11px;line-height:1.6;margin-top:18px}.dice-history article{padding:14px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:8px;font-size:12px}.dice-history article b{font-size:12px}.dice-history article small{color:var(--muted)}.dice-mini-faces{display:flex;gap:6px;grid-column:1 / -1}.dice-mini-faces i{width:13px;height:13px;border-radius:50%;box-shadow:inset 0 2px 3px #fff4}.dice-history strong{white-space:nowrap}
button:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.release-modal [hidden]{display:none!important}
@keyframes diceShake{0%,100%{transform:rotate(-5deg) translateY(0)}50%{transform:rotate(5deg) translateY(-6px)}}
@media(min-width:721px) and (max-width:1150px){.topbar-links{order:10;flex-basis:100%;justify-content:center;margin:8px 0 0}.topbar-inner{justify-content:flex-end}.topbar-brand{margin-right:auto}}
@media(max-width:720px){.topbar-balance{max-width:none}.giveaway-layout,.dice-layout{grid-template-columns:1fr}.bulk-items{grid-template-columns:repeat(2,minmax(0,1fr))}.release-step{padding:16px}.release-modal .modal-top h3{font-size:22px}.giveaway-prize,.giveaway-ranking{padding:24px}.ranking-row{padding:14px 4px;gap:8px}.ranking-head{display:block}.ranking-head>span{display:block;margin-top:8px}.dice-board,.dice-rules,.dice-history{padding:22px}.dice-faces{gap:10px}.dice-face{width:55px;height:61px}.bulk-pic{width:36px;height:48px}.bulk-item{padding:10px;gap:6px}.bulk-slot{font-size:12px;padding:12px}.mini-topnav button[data-mt="games"],.mini-topnav button[data-mt="giveaways"]{white-space:nowrap}.giveaway-art{height:210px}.giveaway-pic{height:200px}}
@media(prefers-reduced-motion:reduce){.game-card,.dice-faces.rolling .dice-face{animation:none;transition:none}}

/* Game previews use the same assets and board shapes as their game screens. */
.games-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:1000px;gap:22px;margin:0 auto 50px}
.games-grid .game-card{--game-color:#9fbfe3;--game-glow:#81b4ff18;position:relative;display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;min-height:0;padding:0;overflow:hidden;text-align:left;border:1px solid var(--line);border-radius:22px;background:var(--surface-2);color:var(--text);box-shadow:0 8px 24px #0002;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s}
.games-grid .game-card.crash{--game-color:#b9a4f5;--game-glow:#a082ff1a}
.games-grid .game-card.mines{--game-color:#e9c982;--game-glow:#d9b8711a}
.games-grid .game-card.dice{--game-color:#bba1fa;--game-glow:#9372ec1c}
.games-grid .game-card:before{content:none}
.games-grid .game-card:hover{transform:translateY(-3px);border-color:var(--game-color);box-shadow:0 12px 32px #0004}
.games-grid .game-card:focus-visible{outline:2px solid var(--game-color);outline-offset:5px}
.games-grid .game-card .game-art{position:relative;display:block;pointer-events:none;flex:none;width:100%;height:auto;aspect-ratio:520/240;margin:0;overflow:hidden;background:#11131c;border-radius:0;box-shadow:none;transform:none;border-bottom:1px solid var(--line)}
.game-art>.game-preview-svg{display:block;width:100%;height:100%;overflow:hidden;filter:none}
.games-grid .game-card:hover .game-art{transform:none}
.games-grid .game-copy{position:relative;display:flex;flex-direction:column;flex:1;max-width:100%;margin:0;padding:23px 24px 21px;background:radial-gradient(ellipse at 100% 0,var(--game-glow),transparent 68%)}
.game-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.game-title{font-family:var(--font-display),sans-serif;font-size:27px;font-weight:800;letter-spacing:-.025em;line-height:1.1}
.game-tag{flex-shrink:0;max-width:52%;padding:6px 9px;border:1px solid #ffffff0d;border-radius:7px;background:#ffffff03;color:var(--muted);font-size:10px;font-weight:600;line-height:1.2;text-align:right}
.game-desc{display:block;max-width:90%;font-size:12px;line-height:1.65;color:var(--muted);min-height:40px;margin:0 0 15px}
.game-open{display:inline-flex;align-items:center;align-self:flex-start;gap:12px;font-size:12px;font-weight:700;line-height:1;color:var(--game-color)}
.game-open>svg{transition:transform .2s}.game-card:hover .game-open>svg{transform:translateX(4px)}
.games-back{display:block;margin-bottom:16px}
@media(max-width:720px){.games-grid{gap:12px}.games-grid .game-card{border-radius:16px}.games-grid .game-copy{padding:16px 14px}.game-title-row{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:9px}.game-title{font-size:22px}.game-tag{max-width:100%;padding:0;border:0;background:none;font-size:10px;text-align:left}.game-desc{max-width:100%;min-height:60px;font-size:11px;margin-bottom:12px}.game-open{font-size:11px}}
@media(max-width:520px){.games-grid{grid-template-columns:1fr;gap:16px}.games-grid .game-copy{padding:20px}.game-title-row{flex-direction:row;align-items:center;gap:10px}.game-title{font-size:25px}.game-tag{max-width:50%;font-size:10px;text-align:right}.game-desc{min-height:0;margin-bottom:17px;font-size:12px}.game-open{font-size:12px}}
@media(prefers-reduced-motion:reduce){.games-grid .game-card,.game-open>svg{transition:none}.games-grid .game-card:hover,.game-card:hover .game-open>svg{transform:none}}

.dice-speed{display:flex;align-items:center;justify-content:center;gap:4px;width:fit-content;max-width:100%;margin:22px auto 4px;padding:5px;border:1px solid var(--line);border-radius:12px;background:var(--surface-1)}
.dice-speed>span{font-size:11px;color:var(--muted);padding:0 10px}
.dice-speed button{border:0;border-radius:8px;padding:9px 12px;background:transparent;color:var(--muted);font:600 11px var(--font-body),sans-serif;cursor:pointer;transition:background .15s,color .15s}
.dice-speed button.selected{background:var(--surface-3);color:var(--text);box-shadow:0 2px 6px #0002}
.dice-speed button:disabled{cursor:wait;opacity:.7}
.dice-face{transition:border-color .15s,box-shadow .15s,opacity .15s}
.dice-face.is-waiting{opacity:.45;border-color:var(--line)}
.dice-face.is-rolling{opacity:1;border-color:#b292ff;box-shadow:0 0 22px #9d73f533;animation:diceShake .28s linear infinite;overflow:hidden}
.dice-face.is-rolling>span{animation:diceDotRoll .15s linear infinite}
.dice-face.is-revealed{opacity:1;border-color:#658bff}
@keyframes diceDotRoll{0%{transform:translateY(-18px) rotateX(-60deg);opacity:.45}50%{transform:translateY(0) rotateX(0);opacity:1}100%{transform:translateY(18px) rotateX(60deg);opacity:.45}}
@media(max-width:720px){.dice-speed>span{padding:0 6px}.dice-speed button{padding:9px 10px}}
@media(prefers-reduced-motion:reduce){.games-grid .game-card,.game-art,.game-open>svg,.dice-face,.dice-speed button{transition:none}.dice-face.is-rolling,.dice-face.is-rolling>span{animation:none}}


.paid-choice[data-paid="fishing"]{border-color:#284b65;background:radial-gradient(ellipse at 50% 38%,#17476d33,transparent 70%),var(--surface-2)}.paid-choice[data-paid="fastfood"]{border-color:#61432a;background:radial-gradient(ellipse at 50% 38%,#88422122,transparent 70%),var(--surface-2)}
/* Color Dice v2: inventory picker, item prizes and virus bonus. */
#colorDiceSection{max-width:1120px;margin:0 auto;padding:12px 0 40px}
.dice-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);gap:22px;max-width:1060px}
.dice-board,.dice-rules,.dice-history{border-radius:26px;border-color:#65739d28;background:linear-gradient(145deg,#191c2b,#10121d);color:#f3f4fc;box-shadow:0 12px 40px #0002}
.dice-board{padding:24px 28px 28px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 18%,#5d49a226,transparent 58%),linear-gradient(145deg,#171b2c,#10121d)}
.dice-board-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:35px}
.dice-brand{display:flex;align-items:center;gap:9px;color:#af9cfe;font-size:10px;letter-spacing:1.2px;font-weight:800}
.dice-brand svg{width:25px;height:25px}
.dice-inventory-tag{font-size:10px;color:#9b9eb4;border:1px solid #7b80a12a;border-radius:20px;padding:7px 10px}
.dice-inventory-tag b{color:#f3f0ff;padding-left:5px}
.dice-board .release-kicker{font-size:10px;letter-spacing:1.5px;color:#a08cfd}
.dice-board h2{font-size:34px;letter-spacing:-.6px;margin:12px 0 9px}
.dice-subtitle{color:#858da7;font-size:12px;margin:0 0 18px}
.dice-speed{margin:20px auto 22px;border-color:#7b80a128;background:#0a0c1580;border-radius:30px;padding:4px}
.dice-speed button{border-radius:24px;color:#9298ae;font-size:11px;padding:8px 13px}
.dice-speed button.selected{background:#6650ad33;color:#d6caff;box-shadow:inset 0 0 0 1px #9c80e544}
.dice-speed>span{color:#747c98;font-size:10px}
.dice-stake{width:100%;display:flex;align-items:center;gap:14px;text-align:left;border:1px solid #7f6ca759;border-radius:16px;padding:13px 17px;background:linear-gradient(120deg,#27233d,#191c2a);color:#f2f1fa;font:inherit;cursor:pointer;transition:border-color .2s,transform .2s}
.dice-stake:hover{border-color:#b299ff;transform:translateY(-1px)}
.dice-stake:disabled{opacity:.65;cursor:wait;transform:none}
.dice-stake-pic,.dice-stake-empty{width:50px;height:57px;flex:0 0 50px;object-fit:contain}
.dice-stake-empty{display:grid;place-items:center;color:#b29afb;background:#8574ba14;border-radius:12px}
.dice-stake-empty svg{width:32px;height:32px}
.dice-stake-copy{display:grid;gap:4px;min-width:0;flex:1}
.dice-stake-copy small{font-size:9px;text-transform:uppercase;letter-spacing:1.2px;color:#9690af}
.dice-stake-copy b{font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.dice-stake-copy>span{font-size:11px;color:#b2a4d4}
.dice-stake-arrow{font-size:22px;color:#b99bf6}
.dice-arena{margin:22px 0 23px;padding:23px 10px 19px;background:radial-gradient(ellipse at 50% 36%,#30417122,transparent 74%),#0a0e19a0;border:1px solid #7484ad1a;border-radius:22px}
.dice-faces{gap:12px;margin:12px 0 30px}
.dice-face{width:69px;height:76px;border:1px solid #718ed05a;border-radius:18px;background:linear-gradient(150deg,#24324a,#151e31);box-shadow:inset 0 2px 1px #ffffff09,0 6px 0 #05081280,0 10px 22px #0004}
.dice-face>span{font-size:25px;color:#8091b7}
.dice-face span[class]{width:31px;height:31px}
.dice-face.is-waiting{border-color:#718ed02b;opacity:.6}
.dice-face.is-revealed{border-color:#83a6f67a}
.dice-color-caption{font-size:10px;letter-spacing:.4px;color:#737f9e;margin-bottom:14px}
.dice-colors{gap:17px;margin:0}
.dice-color{width:34px;height:34px;border-width:2px;transition:transform .15s,outline .15s}
.dice-color:hover:not(:disabled){transform:translateY(-3px)}
.dice-color.selected{outline:2px solid #e4ddff;outline-offset:5px;transform:translateY(-2px)}
.dice-board .release-submit{margin-top:0;width:100%;min-height:52px;border-radius:13px;font-size:13px;letter-spacing:.3px;background:linear-gradient(110deg,#8874f5,#6240d8);box-shadow:0 8px 28px #744cd632}
.dice-board .release-submit:disabled{opacity:.45;box-shadow:none}
.dice-board #diceMsg{font-size:11px;line-height:1.6;color:#8c94ad;margin:14px 0 0;min-height:18px}
.dice-side{align-content:start;gap:20px}
.dice-rules,.dice-history{padding:24px}
.dice-section-heading{display:flex;align-items:center;gap:11px;margin-bottom:14px}
.dice-section-heading>span{font-size:9px;font-weight:700;letter-spacing:1px;color:#9b85f2;border:1px solid #856ace45;background:#8260d31a;border-radius:8px;padding:7px}
.dice-section-heading h3{font-size:18px;margin:0;letter-spacing:-.3px}
.dice-rules-lead{font-size:11px;color:#868ca4;line-height:1.5;margin:0 0 17px}
.dice-rule{gap:13px;padding:11px 12px;border-color:#7c88b220;background:#080e182a;border-radius:11px;margin:8px 0}
.dice-rule-dots{display:flex;gap:4px}
.dice-rule-dots i{width:9px;height:9px;border-radius:3px;background:#434b6244;border:1px solid #646e8944}
.dice-rule-dots i.matched{background:#9a82f5;border-color:#b09ffd;box-shadow:0 0 7px #927cdb33}
.dice-rule b{min-width:auto;border:0;padding:0;font-size:11px;color:#8b95b2}
.dice-rule-outcome{margin-left:auto;font-size:13px;font-weight:800}
.dice-rule.loss .dice-rule-outcome{font-size:10px;font-weight:600;color:#8b8fa8}
.dice-rule.win .dice-rule-outcome{color:#6aebbb}
.dice-rule.win:last-of-type{border-color:#9b82ef40}
.dice-virus-rule{display:flex;align-items:center;gap:12px;padding:14px;margin:17px 0 8px;border:1px solid #6be2af42;border-radius:14px;background:linear-gradient(120deg,#21544038,#18352f26);color:#84f7c5}
.dice-virus-rule>span{width:37px;height:37px;flex-shrink:0}
.dice-virus-rule svg{width:100%;height:100%}
.dice-virus-rule>div{display:grid;gap:4px}
.dice-virus-rule b{font-size:13px}
.dice-virus-rule small{font-size:9px;color:#73ad99}
.dice-virus-rule strong{font-size:23px;margin-left:auto}
.dice-rules .sub{font-size:10px;color:#79839d;line-height:1.7}
.virus{background:#4dc99618!important;color:#8cf4bd}
.dice-face.has-virus{border-color:#74e7b5;box-shadow:0 0 24px #56dc9733,inset 0 0 15px #56dc971a}
.dice-face .virus{width:40px!important;height:40px!important;box-shadow:none!important}
.virus svg{width:100%;height:100%}
.dice-result{margin-top:18px}
.dice-result-inner{display:flex;align-items:center;gap:14px;text-align:left;padding:15px;border-radius:15px;border:1px solid #62c6a94a;background:#2b766218}
.dice-result-inner.lost{border-color:#7b82a42c;background:#7b82a409}
.dice-result-pic,.dice-result-empty{width:61px;height:70px;object-fit:contain;flex:0 0 61px}
.dice-result-empty{display:grid;place-items:center;font-size:32px;color:#8787ac}
.dice-result-inner>div{display:grid;gap:6px;min-width:0}
.dice-result-inner small{color:#8abaac;font-size:10px}
.dice-result-inner b{color:#d8ffec;font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.dice-result-inner span{color:#8a9e9b;font-size:10px}
.dice-result-inner.lost b{color:#c4c7dd}
.dice-history article{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;border-color:#7c88b21c}
.dice-history-pic{width:44px;height:50px;object-fit:contain}
.dice-history-main{min-width:0;display:grid;gap:7px}
.dice-history-main b{font-size:11px;line-height:1.4;overflow-wrap:anywhere}
.dice-history-main small{font-size:9px;color:#7f89a5}
.dice-mini-faces{grid-column:auto;gap:5px}
.dice-mini-faces i{width:12px;height:12px}
.dice-mini-faces i.virus{width:16px;height:16px;box-shadow:none}
.dice-history strong{font-size:17px}
.dice-history .loss{font-size:10px;color:#848aa3}
.dice-history-empty{display:grid;justify-items:center;gap:13px;color:#6e7896;font-size:11px;margin:30px 0 16px}
.dice-history-empty svg{width:36px;height:36px;color:#7763af}
.dice-picker{width:min(760px,calc(100vw - 32px));max-height:min(760px,calc(100dvh - 40px));box-sizing:border-box;border:1px solid #9380c455;border-radius:25px;background:radial-gradient(ellipse at 30% 0,#68518826,transparent 55%),#141722;color:#f0effc;padding:26px;box-shadow:0 30px 100px #0009;overflow-y:auto;font:inherit}
.dice-picker::backdrop{background:#02050ccc;backdrop-filter:blur(7px)}
.dice-picker-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}
.dice-picker-head .release-kicker{color:#a38cf7;font-size:9px}
.dice-picker-head h3{font-size:25px;margin:7px 0 0;letter-spacing:-.4px}
.dice-picker-close{width:34px;height:34px;flex-shrink:0;border:1px solid #79769336;border-radius:10px;color:#a2a0b9;background:#29273955;font-size:14px;cursor:pointer}
.dice-picker-search{margin-bottom:22px}
.dice-picker-search input{width:100%;box-sizing:border-box;border:1px solid #79769336;border-radius:12px;background:#080e1780;color:#ebe6ff;font:inherit;font-size:12px;padding:13px 15px;outline:none}
.dice-picker-search input:focus{border-color:#af8eef}
.dice-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.dice-picker-card{position:relative;display:flex;flex-direction:column;align-items:center;min-height:190px;border:1px solid #7976932d;border-radius:17px;background:radial-gradient(ellipse at 50% 40%,#685d9825,transparent 72%),#191d2a;cursor:pointer;padding:15px 12px;color:#e9e7f7;text-align:center;transition:border-color .15s,transform .15s}
.dice-picker-card:hover,.dice-picker-card.selected{border-color:#b096ff;background-color:#25213b}
.dice-picker-card:hover{transform:translateY(-2px)}
.dice-picker-qty{position:absolute;top:11px;right:11px;border-radius:6px;padding:4px 6px;font-size:9px;color:#aeb0c9;background:#a096c017}
.dice-picker-pic{width:100%;height:107px;object-fit:contain;margin:3px 0 12px}
.dice-picker-card b{font-size:12px;line-height:1.4;overflow-wrap:anywhere;margin-bottom:8px}
.dice-picker-price{color:#efc973;font-size:12px;margin-top:auto}
.dice-picker-empty{grid-column:1/-1;min-height:100px;text-align:center;padding:30px 0;color:#8f96b0;font-size:12px}
.dice-stake:focus-visible,.dice-picker-card:focus-visible,.dice-picker-close:focus-visible,.dice-color:focus-visible{outline:2px solid #b7a1ff;outline-offset:4px}
@media(max-width:720px){#colorDiceSection{padding-top:0}.dice-layout{grid-template-columns:minmax(0,1fr);gap:17px}.dice-board{padding:19px 19px 22px;border-radius:22px}.dice-board-head{margin-bottom:27px}.dice-board h2{font-size:29px}.dice-board .release-kicker{font-size:9px;letter-spacing:1px}.dice-brand{font-size:9px}.dice-inventory-tag{font-size:9px}.dice-face{width:57px;height:66px;border-radius:15px}.dice-faces{gap:9px}.dice-arena{padding:18px 8px}.dice-colors{gap:15px}.dice-color{width:30px;height:30px}.dice-rules,.dice-history{padding:21px}.dice-picker{padding:19px;border-radius:21px}.dice-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dice-picker-head h3{font-size:23px}.dice-picker-card{min-height:176px;padding:13px 10px}.dice-picker-card b{font-size:11px}.dice-picker-pic{height:90px}.dice-stake-copy b{font-size:13px}}
@media(max-width:360px){.dice-colors{gap:12px}.dice-face{width:51px;height:60px}.dice-stake{padding:11px}.dice-rule{gap:9px}.dice-rule-dots{gap:3px}}
@media(prefers-reduced-motion:reduce){.dice-picker-card,.dice-stake,.dice-color{transition:none}}
.dice-face>span.virus{color:#8cf4bd}

/* Full character silhouettes on transparent source images. */
.case-contents .case-item{min-height:184px}
.case-contents .case-item .case-pic{width:100%;height:104px;max-width:144px;object-fit:contain;object-position:center;flex-shrink:0;padding:2px;box-sizing:border-box;image-rendering:auto}
.upg-card img.upg-img{width:76px;height:76px;max-width:100%;object-fit:contain;object-position:center;flex-shrink:0;image-rendering:auto}
.upg-big-img{width:112px;height:112px;object-fit:contain;object-position:center;image-rendering:auto}

/* Profile is a regular page; account sub-actions still use their own dialogs. */
.profile-page{max-width:1120px;gap:0;padding-bottom:32px}.profile-page[hidden]{display:none!important}#profileContent{width:100%;min-width:0}.profile-heading{margin:10px 0 24px}.profile-heading h1{font-size:34px;margin:8px 0 0;letter-spacing:-.04em}.profile-page .acc-box{border:1px solid var(--line);border-radius:20px;padding:24px;margin:16px 0;background-color:var(--surface)}.profile-page .acc-hero{margin-top:0}.profile-page .acc-section-title{margin-top:26px}.profile-page .acc-hero-info{max-width:100%}.profile-page .acc-nick{overflow-wrap:anywhere}.profile-page .acc-bestdrop-card{max-width:none}.profile-page .acc-bestdrop-card-inner{gap:20px!important}.profile-page .profile-inventory{border:1px solid var(--line);border-radius:20px;padding:18px 20px;background:var(--surface);margin-top:24px}.profile-page .acc-items-head{flex-wrap:wrap;margin:0 0 18px}.profile-page .acc-items-head .my-req-divider{flex:1 1 150px}.profile-page .acc-items-head #accWithdraw{height:36px;padding:0 16px;margin:0;flex-shrink:0}.profile-page #accItems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.profile-page #accItems>.empty-note{grid-column:1/-1;margin:16px 0}.profile-page #accItems .item-card{margin:0;min-width:0;align-items:center;border-radius:14px}.profile-page .item-info{min-width:0}.profile-page .item-name{overflow-wrap:anywhere}.profile-page .item-actions{flex-wrap:wrap}.profile-page .profile-promo{display:grid;grid-template-columns:56px 1fr;column-gap:16px;background:radial-gradient(ellipse at 0 0,rgba(var(--accent-rgb),.13),transparent 70%),var(--surface);margin-top:24px}.profile-promo-icon{height:56px;display:grid;place-items:center;border-radius:16px;border:1px solid rgba(var(--accent-rgb),.22);background:rgba(var(--accent-rgb),.1);color:var(--accent)}.profile-promo-icon svg{width:28px;height:28px}.profile-promo-copy h2{font-size:21px;margin:0 0 6px}.profile-promo-copy p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.profile-promo-form{grid-column:1/-1;display:flex;gap:12px;margin-top:22px}.profile-promo-form .text-input{min-width:0;flex:1;height:48px;box-sizing:border-box;margin:0;letter-spacing:.08em;text-transform:uppercase}.profile-promo-form .btn-primary{flex:0 0 180px;height:48px;margin:0;padding:0 22px;width:auto}.profile-promo .release-msg{grid-column:1/-1;margin:12px 0 0}.profile-promo .release-msg:empty,#profileStatus:empty{display:none}.profile-promo .bp-msg-ok{color:var(--win)}.profile-actions{display:flex;justify-content:flex-end;margin-top:24px}.profile-actions .btn-secondary{width:auto;padding:12px 24px}.profile-selected{box-shadow:0 0 0 2px var(--accent)}.profile-login{text-align:center;padding:40px 24px!important}.profile-login .btn-primary{max-width:240px;margin:24px auto 0}.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}.profile-page .acc-nick-form{max-width:100%;flex-wrap:wrap}.profile-page .acc-nick-form .text-input{max-width:100%;min-width:0;box-sizing:border-box}
@media(max-width:700px){.profile-heading{margin:4px 0 18px}.profile-heading h1{font-size:28px}.profile-page .acc-box{padding:18px;border-radius:16px}.profile-page .acc-hero-left{width:100%}.profile-page .acc-hero .acc-avatar{width:72px;height:72px}.profile-page #accItems{grid-template-columns:1fr}.profile-page .profile-inventory{padding:16px 14px;border-radius:16px}.profile-page .acc-items-head .acc-sellall{max-width:100%;font-size:12px;padding:0 10px}.profile-page .profile-promo{grid-template-columns:44px 1fr;column-gap:12px}.profile-promo-icon{height:44px;border-radius:13px}.profile-promo-icon svg{width:24px;height:24px}.profile-promo-copy h2{font-size:19px}.profile-promo-form{flex-direction:column;margin-top:18px;gap:10px}.profile-promo-form .text-input{flex:none;width:100%}.profile-promo-form .btn-primary{flex:none;width:100%;height:46px}.profile-page .acc-bestdrop-card-inner .acc-bestdrop-name{font-size:19px}.profile-actions{justify-content:stretch}.profile-actions .btn-secondary{width:100%}}

/* Out-of-stock items lead directly to their own exchange. */
.bulk-item-wrap{min-width:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.bulk-item-wrap .bulk-item{width:100%;flex:1;border:0;min-height:100px}.bulk-item-wrap .bulk-item.selected{box-shadow:inset 0 0 0 2px var(--accent)}.bulk-item-wrap.no-stock{border-color:rgba(var(--accent-rgb),.35)}.bulk-item-wrap.no-stock .bulk-item:disabled{opacity:.78}.bulk-item-wrap .bulk-exchange{margin:0 10px 10px;padding:9px 12px;font-size:12px;color:var(--accent);border-color:rgba(var(--accent-rgb),.35);background:rgba(var(--accent-rgb),.1)}.item-availability{color:var(--muted);font-size:11px;margin:5px 0}.item-exchange{color:var(--accent)!important;border-color:rgba(var(--accent-rgb),.35)!important;background:rgba(var(--accent-rgb),.1)!important}.ex-card.locked:not(.on){opacity:.42;cursor:not-allowed}.ex-card.locked:hover{transform:none}.ex-card.locked.on{border-style:dashed}.bulk-item-wrap .bulk-exchange:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:720px){.bulk-item-wrap .bulk-item{min-height:110px}.bulk-item-wrap .bulk-exchange{margin:0 8px 8px;font-size:11px}}

/* Brainrot top-up steps and selected-item receipt. */
.br-flow-steps{display:flex;gap:8px;list-style:none;margin:0 0 20px;padding:0}.br-flow-steps li{display:flex;align-items:center;gap:6px;flex:1;font-size:11px;color:var(--muted,#9392a5)}.br-flow-steps li>span{display:grid;place-items:center;flex:0 0 25px;height:25px;border:1px solid #393444;border-radius:50%;background:#18161e}.br-flow-steps li.on{color:#c0a7ff}.br-flow-steps li.on>span{border-color:#9368ec;background:#322248}.br-flow-steps li.done>span{color:#a4eecb;border-color:#4e9d7e}.br-flow-title{font-size:19px;margin:0 0 14px}.br-flow-summary{padding:16px;margin:16px 0;border:1px solid #38303f;border-radius:14px;background:#16131d}.br-flow-item{display:flex;align-items:center;gap:9px;padding:9px 0;font-size:12px}.br-flow-item img{width:42px;height:42px;object-fit:contain;flex-shrink:0}.br-flow-item>span{flex:1;min-width:0;overflow-wrap:anywhere}.br-flow-item>b{color:var(--muted,#aaa)}.br-flow-item>strong{white-space:nowrap}.br-flow-summary .tp-receipt{margin-bottom:0}.br-flow-actions{position:sticky;bottom:-1px;z-index:3;display:flex;gap:8px;flex-wrap:wrap;padding:14px 0 6px;background:#131118;box-shadow:0 -12px 18px #131118}.br-flow-actions button{flex:1;min-width:90px}.br-flow-actions button:disabled{opacity:.5}.br-flow-actions [hidden]{display:none!important}.br-flow-summary .release-kicker{font-size:10px}#brDetailsForm{margin-top:20px}#brDetailsForm label .sub{font-size:10px}#tpBrainrotGrid{max-height:350px}#brMsg,#brwMsg{min-height:18px;font-size:12px}.br-flow-steps+ .pay-wait{margin-top:0}@media(max-width:440px){.br-flow-steps{gap:5px}.br-flow-steps li{font-size:10px;gap:4px}.br-flow-steps li>span{flex-basis:22px;height:22px}.br-flow-summary{padding:12px}.br-flow-item{gap:6px}.br-flow-actions button{font-size:12px;padding:11px 8px}.br-flow-actions{bottom:0}#tpBrainrotGrid{max-height:300px}}

/* Partner profile v16 */
.partner-profile-slot[hidden]{display:none}
.partner-profile-slot{margin-top:24px}
.partner-profile-card{padding:28px;border:1px solid #5d46956b;border-radius:20px;background:radial-gradient(ellipse at 100% 0,#59388928,transparent 60%),#121218;box-shadow:0 12px 38px #0003}
.partner-profile-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}
.partner-profile-head h2{margin:8px 0 0;font-size:25px;line-height:1.2}
.partner-share{display:flex;align-items:center;justify-content:center;min-width:68px;min-height:54px;padding:8px;border-radius:15px;background:#7c53eb24;border:1px solid #9d78fc65;color:#c8acff;font-size:24px;font-weight:850}
.partner-code{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:16px 18px;border:1px dashed #8060ca80;border-radius:12px;background:#1a1625}
.partner-code code{font-size:21px;font-weight:800;letter-spacing:1.5px;overflow-wrap:anywhere;min-width:0;color:#eee6ff}
.partner-code .btn-secondary{flex-shrink:0}
.partner-profile-hint{font-size:14px;color:#a8a5ba;line-height:1.6;margin:16px 0 22px}
.partner-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.partner-stat-grid>div{display:flex;flex-direction:column;gap:10px;padding:17px 15px;border:1px solid #ffffff0c;border-radius:12px;background:#ffffff03;min-width:0}
.partner-stat-grid>div:first-child{background:#7450d812;border-color:#8559e63d}
.partner-stat-grid span,.partner-stat-grid small{font-size:12px;color:#9692aa;line-height:1.4}
.partner-stat-grid strong{font-size:24px;color:#f1edff;overflow-wrap:anywhere}
.partner-stat-grid>div:first-child strong{color:#c7a9ff}
.partner-claim-row{display:flex;align-items:center;gap:18px;margin:20px 0 26px}
.partner-claim-row span{font-size:12px;color:#9792ab;max-width:250px;line-height:1.5}
.partner-claim-row button{min-height:46px}
.partner-wallet-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:20px;border:1px solid #ffffff12;border-radius:14px;background:#0e0e14}
.partner-wallet-box h3{font-size:18px;margin:8px 0}
.partner-wallet-box p{font-size:13px;line-height:1.5;color:#9692aa;margin:0}
.partner-wallet-values{display:flex;flex-direction:column;gap:12px;min-width:120px}
.partner-wallet-values>span{font-size:12px;color:#a09ab4;display:flex;flex-direction:column;gap:5px}
.partner-wallet-values b{font-size:18px;color:#e5dbff}
.partner-wallet-box>button{grid-column:1/-1;justify-self:start;min-height:42px}
.partner-promo-hint{font-size:12px;color:#9791ab;margin:15px 0 0;line-height:1.6}
#partnerMsg:empty{display:none}
.partner-mode-on #topbarBalance{background:#6d42d12b;border-color:#ac79ff;box-shadow:0 0 16px #8750ea35}
.partner-mode-on #topbarBalance:after{content:"P";display:inline-flex;align-items:center;justify-content:center;margin-left:8px;width:20px;height:20px;border-radius:5px;background:#8655e8;color:white;font-size:11px;font-weight:900}
.partner-admin-balances{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.partner-admin-balances>span{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#a6a0b9}
.partner-admin-balances b{font-size:19px;color:#ede5ff}
.partner-admin-code{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:16px;padding-top:16px;border-top:1px solid #ffffff12}
.partner-admin-code label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#aaa1c0}
.partner-admin-code small{grid-column:1/-1;color:#8e87a3;font-size:11px;line-height:1.5}
.partner-admin-code input{min-width:0}
@media(max-width:760px){.partner-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-profile-card{padding:20px}.partner-stat-grid strong{font-size:21px}}
@media(max-width:420px){.partner-profile-card{padding:17px;border-radius:15px}.partner-profile-head h2{font-size:21px}.partner-code{padding:12px;gap:8px}.partner-code code{font-size:17px;letter-spacing:1px}.partner-code button{font-size:11px;padding:10px}.partner-stat-grid>div{padding:13px 10px}.partner-stat-grid strong{font-size:19px}.partner-claim-row{flex-direction:column;align-items:stretch;gap:10px}.partner-wallet-box{grid-template-columns:1fr;padding:15px}.partner-wallet-values{flex-direction:row;gap:24px}.partner-wallet-box>button{width:100%;font-size:12px}.partner-admin-code{grid-template-columns:1fr}}

/* Daily username case and Telegram NFT gifts. */
.username-case-card{display:grid;grid-template-columns:280px minmax(0,1fr);align-items:center;gap:24px;margin:28px 0 0;padding:30px;border:1px solid #7651c56b;border-radius:22px;background:radial-gradient(ellipse at 12% 70%,#58438638,transparent 65%),linear-gradient(120deg,#171322,#111219);box-shadow:0 18px 60px #0003}
.username-case-visual img{width:100%;max-width:300px;display:block}
.username-case-info h2{font-size:30px;line-height:1.12;margin:10px 0 13px}
.username-case-info>p{color:#aca4bb;font-size:14px;line-height:1.65;max-width:560px}
.username-case-tag{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;border:1px dashed #9271d7;border-radius:13px;background:#211a30;max-width:520px}
.username-case-tag code{font-size:21px;font-weight:800;color:#ceb6ff;min-width:0;overflow-wrap:anywhere}
.username-case-tag button{flex-shrink:0;font-size:12px}
.username-case-info .username-case-example{font-size:12px;color:#897f9a;margin:10px 0 20px}
.username-case-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.username-case-actions>span{font-size:12px;color:#afa3c4}
.username-case-actions .btn-primary{min-width:220px;min-height:46px}
.username-case-modal{text-align:center}.username-modal-art{display:block;width:220px;max-height:190px;margin:0 auto}
.username-case-modal>.sub{max-width:570px;margin:10px auto 20px}
.username-case-modal>h4{padding-top:22px;margin-top:25px;border-top:1px solid #ffffff12}
.username-case-drops{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:15px}
.username-case-drop{display:flex;flex-direction:column;align-items:center;padding:15px 8px;border:1px solid #ffffff0d;background:#ffffff03;border-radius:12px;gap:7px}
.username-drop-img{width:88px;height:88px;object-fit:contain}
.username-case-drop b{font-size:12px;line-height:1.4;min-height:32px}.username-case-drop>span{font-size:12px;color:#efc974}
.username-case-winner{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px;border-radius:17px;background:radial-gradient(ellipse at center,#7350ce25,transparent 70%);animation:username-reveal 1s ease-out}
.username-winner-img{width:190px;height:165px;object-fit:contain}.username-case-winner h3{font-size:24px;margin:0}.username-case-winner>strong{font-size:20px;color:#efc974}.username-case-winner>.sub{font-size:12px}
@keyframes username-reveal{from{opacity:0;transform:translateY(15px) scale(.88);filter:blur(7px)}to{opacity:1;transform:none;filter:none}}
#tpTabs:has([data-tp="nft"]){grid-template-columns:repeat(2,minmax(0,1fr))}
#tpNft [hidden]{display:none!important}.m-nft .tpm-ico{color:#c5a7ff}
.nft-topup-heading{display:flex;align-items:center;gap:13px;margin:18px 0}
.nft-topup-heading h3{margin:5px 0 0;font-size:23px}.nft-gift-icon{display:grid;place-items:center;flex:0 0 54px;height:54px;border-radius:15px;color:#cfb4ff;background:#7651c528;border:1px solid #8c64db7a;font-size:35px}
#tpNft .field-label{margin-top:20px}#tpNft .tp-go-row{margin-top:23px}
.nft-request-card{margin-top:20px;padding:24px;border:1px solid #7852c457;border-radius:16px;background:#191423}
.nft-request-card h3{font-size:25px;margin:9px 0 13px}.nft-request-link{display:inline-block;font-size:15px;color:#c4a7fa;overflow-wrap:anywhere}
.nft-request-card>.sub{font-size:13px;line-height:1.6;margin:17px 0}
.nft-request-price{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 0;border-bottom:1px solid #ffffff13;font-size:13px;color:#aca2bd}.nft-request-price strong{font-size:25px;color:#e8d8ff}
.nft-recipient{display:flex;flex-direction:column;gap:9px;margin-top:19px;font-size:13px;color:#aaa0ba}.nft-recipient a{font-size:20px;color:#ccacff;font-weight:800}
.nft-request-card>button{margin:10px 10px 0 0}
.nft-admin-card{padding:20px;border:1px solid #ffffff16;border-radius:15px;background:#131119;margin:14px 0}
.nft-admin-card>a{font-size:12px;display:inline-block;overflow-wrap:anywhere;margin:13px 0;color:#b398f6}
.nft-admin-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.nft-admin-head span{font-size:12px;color:#b699f0}
.nft-admin-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.nft-admin-fields label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#a39aaf}
.nft-admin-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
@media(max-width:760px){.username-case-card{grid-template-columns:160px minmax(0,1fr);padding:23px;gap:18px}.username-case-info h2{font-size:24px}.username-case-drops{grid-template-columns:repeat(3,minmax(0,1fr))}#tpTabs:has([data-tp="nft"]){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.username-case-card{grid-template-columns:1fr;padding:22px;gap:5px;text-align:center}.username-case-visual img{width:190px;margin:0 auto}.username-case-tag{text-align:left;padding:12px;gap:8px}.username-case-tag code{font-size:19px}.username-case-tag button{font-size:11px;padding:9px}.username-case-actions{justify-content:center;gap:12px;flex-direction:column}.username-case-actions .btn-primary{width:100%}.username-case-drops{grid-template-columns:repeat(2,minmax(0,1fr))}.nft-admin-fields{grid-template-columns:1fr}.nft-request-card{padding:18px}.nft-topup-heading h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){.username-case-winner{animation:none}}

@media(max-width:420px){.username-case-tag{flex-direction:column;gap:10px;text-align:center}.username-case-tag code{white-space:nowrap;overflow-wrap:normal;font-size:21px}.username-case-tag button{align-self:center;min-width:125px}}

/* Separate main and partner inventory labels. */
.partner-inventory-scope{display:flex;flex-wrap:wrap;align-items:center;gap:7px 14px;margin:0 0 15px;padding:12px 14px;border:1px solid #ffffff12;border-radius:12px;background:#15141d;color:#d3cde4}
.partner-inventory-scope[hidden]{display:none}
.partner-inventory-scope strong{font-size:13px}
.partner-inventory-scope span{font-size:12px;color:#a8a0bc;line-height:1.5}
.partner-inventory-scope.is-partner{border-color:#8f66e94d;background:#7245d014}
.partner-inventory-scope.is-partner strong{color:#caaeff}

/* Partial text masking follows the existing streamer mode toggle. */
.upg-stream-middle,.upg-percent-sign{display:inline-block}
.streamer-mode .upg-stream-middle{filter:blur(5px)}
/* Username reward card and its normal case page. */
.username-case-card{grid-template-columns:210px minmax(0,1fr);gap:26px;max-width:850px;padding:26px 30px;margin:26px auto 0;border:1px solid #44819455;border-radius:20px;background:radial-gradient(ellipse at 9% 50%,#1c899b26,transparent 60%),linear-gradient(115deg,#12191e,#101116);box-shadow:0 12px 50px #0003;text-align:left}
.username-case-visual img{max-width:220px;margin:auto;filter:drop-shadow(0 0 16px #2dddf51a)}
.username-case-info>.release-kicker{color:#6cdeea;letter-spacing:.15em;font-size:11px}
.username-case-info h2{font-size:26px;max-width:400px;margin:8px 0 10px}
.username-case-info>p{color:#9daeb8;font-size:13px;line-height:1.55;max-width:450px}
.username-case-tag{padding:10px 13px;border:1px solid #345563;background:#080f1580;border-radius:9px;gap:15px;max-width:420px;text-align:left}
.username-case-tag code{color:#86e8f1;font-size:19px}.username-case-tag button{font-size:11px;padding:8px 10px;min-width:0;color:#aac6d0}
.username-case-info .username-case-example{color:#738b98;font-size:11px;margin:7px 0 17px}
.username-case-actions{gap:10px;flex-wrap:wrap;flex-direction:row;justify-content:flex-start}.username-case-actions .btn-primary{min-width:190px;min-height:43px;background:linear-gradient(135deg,#308caa,#316cac);border:1px solid #78d9e73d;box-shadow:0 4px 18px #27acd326}
.username-case-actions>span{color:#7792a2;width:100%;font-size:11px}.username-case-actions .btn-primary:disabled{background:#1a242d;box-shadow:none;color:#758b98;border-color:#ffffff0a}.username-case-actions .btn-secondary{font-size:12px;min-height:43px;border-color:#376578;color:#91dfeb}
.th-username{border-color:#448fa954!important;background:radial-gradient(ellipse at 50% 50%,#254c6538,transparent 75%),#10131b!important}.th-username .cc-badges i{color:#8fe5f1;background:#256e7d35;border-color:#52b8c73d}.th-username .cc-price{color:#8de1ed!important;background:#1d505e4d!important}.sc-case.username img{filter:drop-shadow(0 0 14px #53d5f02e)}
.theme-username{border-color:#448fa952!important;background:radial-gradient(ellipse at 50% 16%,#15364330,transparent 65%),#101116!important}.theme-username .case-art{filter:drop-shadow(0 0 22px #4bcbd225)}.theme-username .case-img{width:290px;max-width:85%;object-fit:contain}.theme-username .case-ring{border-color:#60cce534}.theme-username .case-open{background:linear-gradient(130deg,#308caa,#386cb7);box-shadow:0 4px 22px #44bddd29}.theme-username #spinBalance{color:#8adbe8}
@media(max-width:760px){.username-case-card{grid-template-columns:150px minmax(0,1fr);gap:17px;padding:22px}.username-case-info h2{font-size:23px}.username-case-actions .btn-primary{min-width:160px}}
@media(max-width:520px){.username-case-card{grid-template-columns:100px minmax(0,1fr);gap:15px;padding:20px 17px;align-items:start}.username-case-visual{padding-top:29px}.username-case-visual img{width:125px;max-width:125%;margin-left:-13px}.username-case-info h2{font-size:21px}.username-case-info>p{font-size:12px}.username-case-tag{flex-direction:column;align-items:flex-start;gap:5px;padding:9px 11px}.username-case-tag code{font-size:17px;white-space:nowrap}.username-case-tag button{align-self:flex-start;min-width:0;padding:5px 0;border:0;background:none}.username-case-actions{margin-left:-115px;padding-top:10px}.username-case-actions .btn-primary{width:auto;flex:1}.username-case-actions>span{text-align:center}.username-case-info>.release-kicker{font-size:10px}.username-case-info .release-msg{margin-left:-115px}}
@media(max-width:360px){.username-case-card{grid-template-columns:78px minmax(0,1fr);gap:12px;padding:17px 14px}.username-case-visual img{width:104px}.username-case-info h2{font-size:19px}.username-case-tag code{font-size:16px}.username-case-actions,.username-case-info .release-msg{margin-left:-90px}}
.theme-username .case-img{height:232px;width:284px;animation:caseFloat 3.4s ease-in-out infinite}
/* Stars amount and the exact coin receipt. */
#tpStars .ts-unit{color:#f2cf62;font-size:24px}#tpStars .ts-minimum{margin:8px 0 12px;color:#9a95ad;font-size:12px}#tpStars .tp-chips button{white-space:nowrap}#tpStars #tsGo{font-variant-numeric:tabular-nums}.ts-wait-receipt{display:flex;align-items:center;justify-content:center;gap:16px;padding:14px 18px;margin:15px auto;max-width:360px;border:1px solid #8c71ed35;border-radius:12px;background:#7553d80d}.ts-wait-receipt>span{font-size:13px;color:#aaa5ba}.ts-wait-receipt>strong{font-size:22px;color:#e7ddff}
@media(max-width:360px){#tpStars .tp-chips{gap:5px}#tpStars .tp-chips button{font-size:11px;padding:8px 4px}.ts-wait-receipt{gap:10px;padding:12px}.ts-wait-receipt>span{font-size:12px}}
#tpStars .tp-chips{grid-template-columns:repeat(5,minmax(0,1fr))}#tpStars .tp-chips button{min-width:0}
@media(max-width:360px){#tpStars .tp-chips button{font-size:10px;padding:8px 1px}}
/* Four payment methods share one compact grid; NFT gifts occupy the bottom-right slot. */
#tpTabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#tpTabs [data-tp="stars"]{grid-area:1/1}#tpTabs [data-tp="card"]{grid-area:1/2}#tpTabs [data-tp="brainrot"]{grid-area:2/1}#tpTabs [data-tp="nft"]{grid-area:2/2}
#tpTabs .tp-method{display:grid;grid-template-columns:26px minmax(0,1fr);column-gap:10px;row-gap:3px;align-items:center;justify-items:start;text-align:left;padding:13px 12px;min-height:64px;min-width:0}
#tpTabs .tp-method .tpm-ico{grid-row:span 2;width:26px;height:26px;align-self:center}#tpTabs .tp-method b{min-width:0;max-width:100%;font-size:13px;line-height:1.25}#tpTabs .tp-method small{min-width:0;line-height:1.3;font-size:10px}
#tpTabs .m-nft{--mc:174,131,255}#tpTabs .m-nft .tpm-ico{color:#be99ff}#tpTabs .m-nft .tpm-ico svg{width:24px;height:24px}
@media(max-width:360px){#tpTabs{gap:8px}#tpTabs .tp-method{grid-template-columns:24px minmax(0,1fr);gap:3px 7px;padding:11px 8px;min-height:72px}#tpTabs .tp-method b{font-size:12px}#tpTabs .tp-method small{font-size:9px}#tpTabs .tp-method .tpm-ico{width:24px}}
@media(max-width:360px){#tpTabs .tp-method{padding-left:6px;padding-right:6px;column-gap:6px}#tpTabs .tp-method b{font-size:11px}}
/* Telegram NFT gifts: Plush Pepe and account gift picker. */
#tpTabs .m-nft .tpm-ico img{width:32px;height:32px;object-fit:contain;filter:drop-shadow(0 2px 5px #0008)}
.nft-gift-icon{width:54px;height:54px;background:radial-gradient(circle,#7650ad40,transparent 75%)}
.nft-gift-icon img{width:54px;height:54px;object-fit:contain}
.nft-gallery{margin:16px 0 18px;padding:14px;border:1px solid #ffffff12;background:#ffffff03;border-radius:15px}
.nft-gallery-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.nft-gallery-head b{font-size:13px}.nft-gallery-head button{font-size:11px;padding:7px 10px;min-height:30px}
.nft-gallery .sub{font-size:12px;line-height:1.5;margin:10px 0}.nft-gift-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:330px;overflow:auto}
.nft-owned-gift{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border:1px solid #ffffff12;border-radius:12px;background:#17161e;color:#e9e7ef;text-align:center;font:inherit;cursor:pointer;min-width:0;transition:background .15s,border-color .15s}
.nft-owned-gift:hover,.nft-owned-gift.selected{border-color:#9770ff;background:#231b36}.nft-owned-gift img{width:62px;height:62px;object-fit:contain;border-radius:10px}.nft-photo-loading{display:grid;place-items:center;width:96px;height:96px;border-radius:12px;background:#ffffff05;color:#aaa1bc;font-size:11px;line-height:1.4}
.nft-owned-gift b{font-size:12px;overflow-wrap:anywhere}.nft-owned-gift strong{font-size:12px;color:#be99ff}.nft-owned-gift small,.nft-gift-model{font-size:10px;color:#a6a0b7}.nft-more{width:100%;margin-top:10px}.nft-floor-note{font-size:12px;color:#bd99ff;text-align:center;margin:10px 0}
@media(max-width:360px){#tpTabs .m-nft .tpm-ico img{width:27px;height:27px}.nft-gallery{padding:10px}.nft-gallery-head b{font-size:11px}}

/* Exact collectible image, including the NFT model and backdrop. */
.nft-owned-gift img{width:96px;height:96px;object-fit:cover;border-radius:12px}.nft-owned-gift{gap:6px;padding:14px 9px}.nft-owned-gift.selected{box-shadow:inset 0 0 0 1px #9770ff}
.nft-payment-head{display:flex;align-items:center;gap:16px}.nft-payment-head>div{min-width:0}.nft-payment-photo{width:92px;height:92px;object-fit:cover;border-radius:14px;flex:0 0 92px}.nft-payment-head h3{margin:8px 0;font-size:23px}.nft-open-gift{display:flex;align-items:center;justify-content:center;text-decoration:none;margin:14px 0 0;padding:13px;text-align:center}
@media(max-width:360px){.nft-owned-gift img,.nft-photo-loading{width:82px;height:82px}.nft-payment-head{gap:10px}.nft-payment-photo{width:66px;height:66px;flex-basis:66px}.nft-payment-head h3{font-size:19px}}

.nft-manual-price{display:block;margin:12px 0 0;font-size:12px}

/* Copy the player's name together with the public project tag. */
.username-case-tag .username-case-copy-name{display:flex;flex-wrap:wrap;column-gap:.45em;row-gap:3px;min-width:0;white-space:normal;line-height:1.4;font-size:16px;flex:1}
.username-case-nick{color:#f4f4fa;font-weight:800;overflow-wrap:anywhere;min-width:0}.username-case-nick.is-placeholder{color:#738b98;font-weight:500}.username-case-project-tag{color:#86e8f1;font-weight:800;white-space:nowrap;text-decoration:underline dotted;text-underline-offset:4px}
.username-copy-fallback{margin:9px 0}.username-copy-fallback .sub{font-size:11px;color:#9daeb8;line-height:1.4}.username-copy-fallback input{font-size:12px;min-width:0;width:100%}
@media(max-width:520px){.username-case-tag .username-case-copy-name{font-size:15px;flex:none;width:100%}}

/* Brainrot deposits: one content scroller and a separate action row. */
.tp-modal.br-flow-modal>.br-flow-scroll{display:contents}
.tp-modal.br-flow-modal>.br-flow-actions{display:none}
.tp-modal.br-flow-modal.br-flow-active{display:flex;flex-direction:column;height:82vh;height:82dvh;max-height:82vh;max-height:82dvh;overflow:hidden}
.tp-modal.br-flow-active>.br-flow-scroll{display:block;flex:1;min-height:0;padding-bottom:10px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(var(--accent-rgb),.5) transparent}
.tp-modal.br-flow-active>.br-flow-actions{display:flex;flex-shrink:0;position:static;bottom:auto;margin:12px 0 0;padding:12px 0 0;border-top:1px solid var(--line);background:none;box-shadow:none}
.tp-modal.br-flow-active #tpBrainrotGrid{max-height:none;overflow:visible}
.tg-mini .mini-sheet .modal.br-flow-active{height:100%;max-height:100%}
/* Card deposit switch fits both the desktop admin panel and phone screens. */
#admCardSwitch .adm-br-switch{flex-wrap:wrap}
#admCardSwitch .adm-br-state{flex:1 1 220px;min-width:0}
#admCardSwitch .adm-br-state small{grid-column:2;overflow-wrap:anywhere}
#admCardSwitch button{max-width:100%;white-space:normal}
@media(max-width:640px){#admCardSwitch .adm-br-switch{flex-direction:column;align-items:stretch}#admCardSwitch .adm-br-state{flex:auto}#admCardSwitch button{width:100%}}

/* Monobank exact-sum instruction, compact enough for a phone. */
.pay-exact-note{margin:16px 0;padding:14px 16px;border:1px solid #795521;border-radius:14px;background:linear-gradient(120deg,#30231a,#201b23);color:#eee2ca;line-height:1.55;font-size:13px}
.pay-exact-note strong{display:block;color:#ffc773;font-size:12px;letter-spacing:.08em;margin-bottom:5px}
.pay-exact-note p{margin:5px 0 0}.pay-exact-note b{white-space:nowrap;color:#fff0d7}
.pay-bank-confirm,.pay-old-card{font-size:12px;line-height:1.5;color:#a9a5ba;margin:12px 0}.pay-old-card{color:#ffc773}
@media(max-width:380px){.pay-exact-note{padding:12px;font-size:12px}.pay-bankcard-num .pay-v{font-size:18px}}

@media(max-width:400px){.pay-hero{display:flex;flex-wrap:wrap;gap:12px}.pay-hero-amt{flex:1 1 160px;min-width:0}.pay-hero-amt>div{flex-wrap:wrap}.pay-timer-chip{flex:0 1 auto;max-width:100%;padding:10px 12px}.pay-timer-chip small{white-space:normal}.pay-bankcard-num{min-width:0}.pay-bankcard-num .pay-v{min-width:0;overflow-wrap:anywhere;letter-spacing:.10em}}

/* Contain decorative case light on narrow screens. */
@media(max-width:480px){#spinPanel{overflow:hidden;}}

@media(max-width:360px){.tg-mini .topbar-inner{padding:10px;gap:6px;}}

/* Cursed Mechanism: dedicated blue case palette. */
html .spin-panel.theme-mechanism{background:radial-gradient(ellipse at 50% 16%,#3e9deb30,transparent 70%),color-mix(in srgb,var(--surface) 88%,#061c31);border-color:#479dd477;box-shadow:0 0 42px -18px #48acff90}
.theme-mechanism .case-title{color:#c8e8ff;text-shadow:0 0 18px #58b6fa66}.theme-mechanism .case-kicker{color:#81b8dc}.theme-mechanism .case-open{background:linear-gradient(160deg,#66caff,#2873c3);color:#fff;box-shadow:0 8px 24px -8px #3299e888}.theme-mechanism .case-info{border-color:#479dd455}.theme-mechanism .spin-status.ok{color:#92d7ff}.theme-mechanism .case-strip{border-color:#479dd466}.theme-mechanism .case-marker{background:#68c9ff;box-shadow:0 0 14px #68c9ff}.theme-mechanism .case-marker::before{border-top-color:#68c9ff}.theme-mechanism .upg-q.num.on{border-color:#62b9ff;background:#3e9deb20;box-shadow:0 0 12px #48acff66}.th-mechanism .cc-art{background:radial-gradient(ellipse at 50% 50%,#3e9deb20,transparent 72%)}

.theme-mechanism .case-ring{border-color:#62b9ff40}.sc-case.mechanism .sp{color:#a4dfff}.th-mechanism:hover{border-color:#62b9ff80}
/* Timed event UI */
.abuse-banner[hidden]{display:none!important}.abuse-banner{box-sizing:border-box;display:flex;align-items:center;gap:16px;max-width:1170px;margin:14px auto;padding:16px 22px;border:1px solid #7e62ca80;border-radius:18px;background:radial-gradient(ellipse at 5% 0,#6544bb55,transparent 65%),linear-gradient(110deg,#211b3c,#142b3d);color:#f5f0ff;box-shadow:0 8px 30px #18103933}.abuse-banner-icon{font-size:34px;color:#bdabff;flex-shrink:0}.abuse-banner>div{flex:1;min-width:0}.abuse-banner-title{display:block;font-size:17px;overflow-wrap:anywhere}.abuse-banner-sub{display:block;font-size:12px;color:#c1b8d9;margin-top:5px}.abuse-timer{font-size:24px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;color:#dacaff}.abuse-admin{max-width:860px;margin:auto}.abuse-admin-head{padding:25px;border:1px solid #7863ab55;border-radius:20px;background:radial-gradient(ellipse at right top,#6352bc33,transparent 70%);margin-bottom:20px}.abuse-kicker{font-size:10px;letter-spacing:.12em;color:#a692d5;font-weight:800}.abuse-admin h2{font-size:28px;margin:10px 0}.abuse-admin-head p,.abuse-rule{font-size:13px;color:var(--muted,#aaa);line-height:1.6}.abuse-admin form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.abuse-field{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600;min-width:0}.abuse-field input{box-sizing:border-box;width:100%;border-radius:12px;border:1px solid var(--hair,#555);background:var(--glass,#ffffff09);color:var(--text,#eee);padding:12px;font:inherit}.abuse-presets{grid-column:2;display:flex;gap:8px;flex-wrap:wrap;margin-top:-8px}.abuse-presets button{border:1px solid #826cbe55;border-radius:9px;background:#826cbe12;color:var(--text,#eee);padding:6px 12px;cursor:pointer}.abuse-levels{grid-column:1/-1;border:0;padding:0;margin:0;display:flex;gap:10px;flex-wrap:wrap}.abuse-levels legend{font-size:13px;font-weight:600;margin-bottom:9px}.abuse-levels label{flex:1;min-width:130px;cursor:pointer}.abuse-levels input{position:absolute;opacity:0;width:1px;height:1px}.abuse-levels span{display:block;border:1px solid #7863ab55;border-radius:12px;padding:14px;text-align:center;font-size:13px;font-weight:700}.abuse-levels input:checked+span{border-color:#9e83ff;background:#8963ed28;color:#bfa5ff}.abuse-levels input:focus-visible+span{outline:2px solid #cbbaff;outline-offset:3px}.abuse-admin form>.btn-primary{grid-column:1/-1;min-height:46px}.abuse-live{padding:22px;border:1px solid #9876e8;border-radius:18px;background:#815ada14}.abuse-live h3{overflow-wrap:anywhere}.abuse-live-row{display:flex;align-items:center;gap:20px;margin:18px 0}.abuse-live-row strong{font-size:32px;font-variant-numeric:tabular-nums;color:#c7aeff}.abuse-preview-case{border:1px solid var(--hair,#555);border-radius:12px;padding:14px;margin:10px 0}.abuse-preview-case summary{cursor:pointer;font-weight:700;display:list-item}.abuse-preview-case summary small{float:right;color:var(--muted,#aaa);font-weight:400}.abuse-preview-case table{width:100%;border-collapse:collapse;font-size:12px;margin-top:12px}.abuse-preview-case th,.abuse-preview-case td{padding:10px 5px;border-bottom:1px solid var(--hair,#333);text-align:right}.abuse-preview-case th:first-child,.abuse-preview-case td:first-child{text-align:left;overflow-wrap:anywhere;width:60%}.abuse-preview-case tr.boosted{color:#bba0ff}.abuse-odds{display:block;margin-top:6px;font-size:11px;color:var(--muted,#aaa);font-variant-numeric:tabular-nums}.abuse-odds.boosted{color:#bb9bff;font-weight:800}.abuse-case-note{font-size:12px;color:#b99ddd;line-height:1.5;margin:0 0 18px}
@media(max-width:700px){.abuse-banner{margin:10px 12px;padding:12px;gap:10px;border-radius:14px}.abuse-banner-icon{font-size:25px}.abuse-banner-title{font-size:14px}.abuse-banner-sub{font-size:10px}.abuse-timer{font-size:17px}.abuse-admin-head{padding:18px}.abuse-admin form{grid-template-columns:1fr}.abuse-presets{grid-column:1;margin:0}.abuse-levels label{min-width:100%;flex:1}.abuse-live-row{flex-wrap:wrap}.abuse-preview-case{padding:12px}.abuse-preview-case td{font-size:11px}}
/* The original chance remains green; the event-only sector is translucent rainbow. */
.upg-abuse-arc{position:absolute;inset:0;border-radius:50%;pointer-events:none}.upg-abuse-arc[hidden],.upg-abuse-breakdown[hidden]{display:none!important}.upg-abuse-breakdown{display:flex;gap:8px;align-items:center;margin-top:9px;font-size:13px;font-weight:800;line-height:1.2}.upg-base-chance{color:var(--win)}.upg-bonus-chance{padding:4px 8px;border-radius:8px;color:#ede4ff;background:linear-gradient(105deg,#68e3ff35,#a478ff40,#ff7ed840,#ffe08435);border:1px solid #d0b9f34a;box-shadow:inset 0 1px 0 #ffffff20}.abuse-upgrade-choice{grid-column:1/-1}.abuse-upgrade-choice select{max-width:220px;border:1px solid #8970b955;border-radius:12px;background:var(--surface,#18151f);padding:12px;color:var(--text,#eee);font:inherit}.abuse-upgrade-choice small{font-size:12px;color:var(--muted,#aaa);font-weight:400;line-height:1.5}
/* Kinetic Admin Abuse party: portals, flybys, impact, tacos, confetti. */
.abuse-music-button{flex:0 0 auto;width:36px;height:36px;border:1px solid #c6abe866;border-radius:11px;background:#bca8e71c;color:#ddd0f5;font-size:20px;cursor:pointer;line-height:1}.abuse-music-button.is-playing{color:#defff4;border-color:#8bebcfaa;background:#7cdad432}.abuse-intro{position:fixed;inset:0;z-index:150000;overflow:hidden;pointer-events:none;isolation:isolate;color:#fff;background:#080916;animation:abuse-party-shell 10s both}.abuse-party-scene{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;perspective:1200px;animation:abuse-party-impact-shake 10s both}.abuse-party-sky{position:absolute;inset:-8%;background:radial-gradient(ellipse at 50% 35%,#5f2488aa,transparent 46%),radial-gradient(ellipse at 12% 55%,#efac333b,transparent 43%),radial-gradient(ellipse at 89% 55%,#8464e950,transparent 40%),linear-gradient(#070a17,#120b21 65%,#17112f);animation:abuse-party-sky 10s both}.abuse-party-grid{position:absolute;width:160%;height:65%;left:-30%;bottom:-30%;background:linear-gradient(#9171ec32 1px,transparent 1px),linear-gradient(90deg,#9171ec32 1px,transparent 1px);background-size:80px 80px;transform:perspective(500px) rotateX(60deg);opacity:.35;mask-image:linear-gradient(transparent,#000);-webkit-mask-image:linear-gradient(transparent,#000)}.abuse-party-orbit{position:absolute;width:min(900px,125vw);aspect-ratio:1;border:1px solid #b588ed25;border-radius:50%;box-shadow:0 0 100px #9958fa15;transform:rotate(-25deg)}.abuse-party-orbit:before,.abuse-party-orbit:after{content:'';position:absolute;inset:35px;border-radius:50%;border:1px dashed #ceafed33}.abuse-party-orbit:after{inset:100px;border-style:solid;border-color:#e1b96820}.abuse-party-portal{position:absolute;z-index:1;top:calc(50% - 190px);width:340px;height:420px;border-radius:50%;background:radial-gradient(ellipse,#21103b44 45%,#f4c25f44 60%,#ffd079c0 63%,#ba78f5b0 67%,transparent 72%);box-shadow:0 0 80px #c294ff35;animation:abuse-party-portal 10s both}.portal-left{left:calc(50% - 615px);--portal-tilt:35deg}.portal-right{right:calc(50% - 615px);--portal-tilt:-35deg}.abuse-party-portal:before{content:'';position:absolute;inset:28px;border:2px dashed #ffdc8c99;border-radius:50%;animation:abuse-portal-spin 7s linear infinite}.abuse-party-portal:after{content:'';position:absolute;inset:40px;border:1px solid #bd88f766;border-radius:50%;box-shadow:inset 0 0 30px #c388ff38}.abuse-party-cue{position:absolute;z-index:4;font-size:clamp(22px,4vw,50px);font-weight:1000;letter-spacing:.10em;color:#ffe3a3;text-shadow:0 0 40px #e9b75977;animation:abuse-party-cue 10s both}.abuse-party-impact{position:absolute;z-index:4;inset:0;background:radial-gradient(ellipse at center,#ffd17c88,transparent 62%);opacity:0;animation:abuse-party-impact 10s both}.abuse-party-wave{position:absolute;z-index:2;top:50%;left:50%;width:180px;aspect-ratio:1;border:4px solid #f7ca8888;border-radius:50%;box-shadow:0 0 30px #be82ff99,inset 0 0 30px #ce9bfa66;animation:abuse-party-wave 10s both;opacity:0}.abuse-intro-controls{position:absolute;z-index:12;top:max(22px,env(safe-area-inset-top));right:25px;display:flex;align-items:center;gap:10px;pointer-events:auto}.abuse-intro-controls #abuseIntroSkip{border:1px solid #d2bae55c;background:#160f27bd;color:#e8def4;padding:10px 15px;border-radius:11px;font:700 12px system-ui;cursor:pointer}.abuse-party-topline{position:absolute;top:max(28px,env(safe-area-inset-top));left:28px;display:flex;gap:12px;align-items:center;font-size:10px;font-weight:800;letter-spacing:.12em;color:#aaa0c3;z-index:8}.abuse-party-live{color:#a5efd7;border:1px solid #6fc5a53d;border-radius:6px;background:#65ad8817;padding:5px 8px;letter-spacing:.06em}.abuse-flight{position:absolute;z-index:3;width:430px;top:calc(50% - 220px);filter:drop-shadow(0 0 35px #ffd0723b);will-change:transform;animation-duration:10s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.2,.6,.15,1);transform-style:preserve-3d}.abuse-flight--left{left:calc(50% - 660px);--dragon-facing:-1;animation-name:abuse-party-dragon-left}.abuse-flight--right{right:calc(50% - 660px);--dragon-facing:1;animation-name:abuse-party-dragon-right}.abuse-flight .abuse-dragon-model{width:100%;height:auto;aspect-ratio:1;object-fit:contain;transform:scaleX(var(--dragon-facing));animation:abuse-party-dragon-hover 1.25s ease-in-out infinite}.abuse-flight--right .abuse-dragon-model{animation-delay:-.6s}.abuse-dragon-badge{position:absolute;top:56%;left:54%;transform:translateX(-50%) rotate(-8deg);background:#211634db;border:1px solid #ffe3a5b0;color:#fff;border-radius:6px;padding:5px 8px;font-size:13px;font-weight:900;box-shadow:0 0 18px #eac56b55;text-shadow:0 0 7px #dcc1f0}.abuse-flight--right .abuse-dragon-badge{left:46%;transform:translateX(-50%) rotate(8deg)}.abuse-intro-core{z-index:5;position:relative;text-align:center;width:min(760px,90vw);padding:26px 18px;animation:abuse-party-title 10s both;text-shadow:0 5px 25px #080a17}.abuse-intro-kicker{display:block;color:#ccb3e4;font-size:11px;letter-spacing:.27em;font-weight:800;margin-bottom:10px}.abuse-intro-logo{font-size:clamp(48px,8vw,114px);font-weight:1000;line-height:1.05;letter-spacing:-.065em;text-shadow:0 0 45px #a56ae988,0 8px 0 #372344}.abuse-intro-logo>span{background:linear-gradient(110deg,#ffe4a1,#ffbd71 45%,#e6a5ff);color:transparent;background-clip:text;-webkit-background-clip:text;text-shadow:none}.abuse-intro-logo>i{font-style:normal;font-size:.35em;color:#ffe5a8;vertical-align:top;display:inline-block;margin-left:8px}.abuse-intro-core h2{font-size:clamp(23px,3.1vw,39px);margin:23px 0 10px;font-weight:1000;letter-spacing:-.035em}.abuse-intro-title{margin:0;color:#c5b3de;font-size:14px;overflow-wrap:anywhere}.abuse-intro-perks{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:20px}.abuse-intro-perks>span{border:1px solid #e9bd865c;border-radius:12px;background:linear-gradient(110deg,#dcb06128,#9d68e622);padding:10px 17px;font-size:13px;font-weight:850;color:#ffe6b3;box-shadow:inset 0 1px 0 #ffffff13}.abuse-party-time{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:17px}.abuse-party-time>span{font-size:9px;font-weight:800;letter-spacing:.12em;color:#a098b5}.abuse-party-time>b{font-size:18px;font-variant-numeric:tabular-nums;color:#e3cdf7}.abuse-intro-caption{font-size:12px;color:#b0a1c3;margin:11px 0 0}#abuseIntroSoundNote{font-size:11px;color:#ffdfa9;margin:10px 0 0}.abuse-party-track{position:absolute;z-index:7;bottom:48px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:14px;border:1px solid #c7a2e942;background:#120d22d9;border-radius:13px;padding:12px 22px;animation:abuse-party-track-in 10s both}.abuse-party-track small{display:block;font-size:8px;font-weight:700;letter-spacing:.19em;color:#ac96c6}.abuse-party-track strong{display:block;font-size:15px;font-weight:950;letter-spacing:.09em;margin-top:4px;color:#ffe1a6}.abuse-party-eq{height:24px;display:flex;align-items:center;gap:3px}.abuse-party-eq i{display:block;width:3px;height:var(--h);border-radius:3px;background:linear-gradient(#ffd186,#b684ed);animation:abuse-party-eq 1.1s var(--delay) ease-in-out infinite;animation-play-state:paused}.is-sounding .abuse-party-eq i{animation-play-state:running}.abuse-intro-progress{position:absolute;bottom:24px;left:24px;right:24px;height:3px;background:#a386c32a;border-radius:5px;overflow:hidden;z-index:8}.abuse-intro-progress i{display:block;height:100%;width:100%;transform-origin:left;background:linear-gradient(90deg,#bb88ff,#ffe190,#82e9d3);animation:abuse-party-progress 10s linear both}.abuse-party-ember{position:absolute;z-index:2;left:var(--x);top:var(--y);width:3px;height:3px;background:#ffcd7c;border-radius:50%;box-shadow:0 0 15px #ffc773;animation:abuse-party-ember 2.5s var(--delay) ease-out 4;opacity:0}.abuse-taco{position:absolute;z-index:6;top:-80px;left:var(--x);width:var(--s);height:var(--s);opacity:0;filter:drop-shadow(0 3px 4px #0007);animation:abuse-party-rain 3.2s var(--delay) linear 2}.abuse-taco svg{width:100%;height:100%}.abuse-party-confetti{position:absolute;z-index:6;left:var(--x);top:-30px;width:7px;height:12px;border-radius:2px;background:var(--c);opacity:0;animation:abuse-party-rain 2.9s var(--delay) linear 2}.abuse-party-streak{position:absolute;z-index:2;top:var(--y);left:-70%;height:2px;width:65%;background:linear-gradient(90deg,transparent,#e6c18bbb,#c6a7ff,transparent);opacity:0;transform:rotate(-12deg);animation:abuse-party-streak .65s var(--delay) ease-out both}
@keyframes abuse-party-shell{0%{opacity:0}4%,92%{opacity:1}100%{opacity:0}}@keyframes abuse-party-sky{0%{transform:scale(1.12);opacity:.5}30%{transform:scale(1);opacity:1}75%{transform:scale(1.02);opacity:1}100%{transform:scale(1.06)}}@keyframes abuse-party-portal{0%{opacity:0;transform:perspective(700px) rotateY(var(--portal-tilt)) scale(.2)}8%{opacity:1;transform:perspective(700px) rotateY(var(--portal-tilt)) scale(1.12)}25%,64%{opacity:.7;transform:perspective(700px) rotateY(var(--portal-tilt)) scale(1)}90%,100%{opacity:0;transform:perspective(700px) rotateY(var(--portal-tilt)) scale(.7)}}@keyframes abuse-portal-spin{to{transform:rotate(360deg)}}@keyframes abuse-party-cue{0%,6%{opacity:0;transform:scale(.8)}11%,19%{opacity:1;transform:scale(1)}24%,100%{opacity:0;transform:scale(1.2)}}@keyframes abuse-party-dragon-left{0%,8%{transform:translate3d(-55vw,90px,-600px) scale(.3) rotate(-22deg);opacity:0}13%{opacity:1}24%{transform:translate3d(200px,-65px,140px) scale(1.08) rotate(15deg)}34%{transform:translate3d(220px,-150px,0) scale(.74) rotate(-12deg)}45%,70%{transform:translate3d(100px,-40px,0) scale(.96) rotate(6deg);opacity:1}87%{transform:translate3d(600px,-320px,200px) scale(1.15) rotate(-18deg);opacity:1}100%{transform:translate3d(110vw,-70vh,-100px) scale(.25) rotate(-30deg);opacity:0}}@keyframes abuse-party-dragon-right{0%,8%{transform:translate3d(55vw,90px,-600px) scale(.3) rotate(22deg);opacity:0}13%{opacity:1}24%{transform:translate3d(-200px,75px,80px) scale(1.05) rotate(-15deg)}34%{transform:translate3d(-220px,-150px,0) scale(.74) rotate(12deg)}45%,70%{transform:translate3d(-100px,-40px,0) scale(.96) rotate(-6deg);opacity:1}87%{transform:translate3d(-600px,-320px,200px) scale(1.15) rotate(18deg);opacity:1}100%{transform:translate3d(-110vw,-70vh,-100px) scale(.25) rotate(30deg);opacity:0}}@keyframes abuse-party-dragon-hover{0%,100%{transform:scaleX(var(--dragon-facing)) translateY(0)}50%{transform:scaleX(var(--dragon-facing)) translateY(-8px)}}@keyframes abuse-party-title{0%,25%{opacity:0;transform:translateY(24px) scale(.78)}29%{opacity:1;transform:translateY(-6px) scale(1.06)}34%,84%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-10px) scale(1.04)}}@keyframes abuse-party-impact{0%,24%{opacity:0}26%{opacity:.7}31%,100%{opacity:0}}@keyframes abuse-party-impact-shake{0%,25%,30%,100%{transform:translate(0,0)}26%{transform:translate(-3px,2px)}27%{transform:translate(3px,-2px)}28%{transform:translate(-2px,1px)}29%{transform:translate(1px,0)}}@keyframes abuse-party-wave{0%,24%{opacity:0;transform:translate(-50%,-50%) scale(.3)}27%{opacity:.85;transform:translate(-50%,-50%) scale(1.1)}40%{opacity:0;transform:translate(-50%,-50%) scale(9)}100%{opacity:0;transform:translate(-50%,-50%) scale(9)}}@keyframes abuse-party-ember{0%{opacity:0;transform:translateY(30px)}30%{opacity:.8}100%{opacity:0;transform:translateY(-120px)}}@keyframes abuse-party-rain{0%{opacity:0;transform:translate3d(0,-10vh,0) rotate(0)}8%,85%{opacity:.9}100%{opacity:0;transform:translate3d(30px,120vh,0) rotate(var(--turn))}}@keyframes abuse-party-streak{0%{opacity:0;transform:translateX(0) rotate(-12deg)}20%{opacity:.8}100%{opacity:0;transform:translateX(240%) rotate(-12deg)}}@keyframes abuse-party-eq{0%,100%{transform:scaleY(.4)}50%{transform:scaleY(1.25)}}@keyframes abuse-party-progress{to{transform:scaleX(0)}}
@media(max-width:800px){.abuse-flight{width:310px;top:calc(50% - 300px)}.abuse-flight--left{left:calc(50% - 470px);animation-name:abuse-party-mobile-left}.abuse-flight--right{right:calc(50% - 470px);animation-name:abuse-party-mobile-right}.abuse-party-portal{width:230px;height:280px;top:calc(50% - 270px)}.portal-left{left:-60px}.portal-right{right:-60px}.abuse-intro-core{padding-top:95px}.abuse-intro-logo{font-size:70px}.abuse-intro-core h2{font-size:28px}.abuse-intro-kicker{font-size:9px;letter-spacing:.17em}.abuse-dragon-badge{font-size:10px;padding:3px 5px}.abuse-intro-controls{top:max(14px,env(safe-area-inset-top));right:14px}.abuse-party-topline{left:15px;top:max(22px,env(safe-area-inset-top))}.abuse-party-topline>span:last-child{display:none}.abuse-party-track{bottom:39px;padding:9px 15px;gap:10px}.abuse-party-track strong{font-size:12px}.abuse-party-track small{font-size:7px}.abuse-intro-progress{bottom:18px;left:18px;right:18px}.abuse-intro-perks>span{font-size:11px;padding:9px 12px}.abuse-party-confetti.party-extra{display:none}}
@media(max-width:420px){.abuse-flight{width:260px;top:calc(50% - 315px)}.abuse-flight--left{left:calc(50% - 405px)}.abuse-flight--right{right:calc(50% - 405px)}.abuse-intro-logo{font-size:51px}.abuse-intro-core h2{font-size:23px}.abuse-intro-title{font-size:12px}.abuse-intro-core{padding:120px 12px 25px}.abuse-party-time{gap:8px}.abuse-party-time>span{font-size:8px}.abuse-party-time>b{font-size:16px}.abuse-party-cue{font-size:23px;letter-spacing:.03em}.abuse-taco:nth-of-type(n+8){display:none}.abuse-party-track{bottom:36px}.abuse-party-eq{height:19px}.abuse-banner .abuse-music-button{width:30px;height:30px;font-size:17px}}
@media(max-height:620px){.abuse-intro-core{padding-top:80px}.abuse-intro-logo{font-size:45px}.abuse-intro-core h2{margin:16px 0 8px;font-size:21px}.abuse-intro-perks{margin-top:12px}.abuse-party-time{margin-top:10px}.abuse-intro-caption{margin-top:8px}.abuse-flight{top:calc(50% - 280px);width:230px}.abuse-party-track{padding:7px 12px;bottom:29px}.abuse-intro-progress{bottom:12px}}
@keyframes abuse-party-mobile-left{0%,8%{transform:translate3d(-70vw,30px,-600px) scale(.25) rotate(-22deg);opacity:0}13%{opacity:1}24%{transform:translate3d(145px,55px,80px) scale(1.08) rotate(14deg)}34%{transform:translate3d(150px,0,0) scale(.72) rotate(-10deg)}45%,70%{transform:translate3d(95px,15px,0) scale(.9) rotate(6deg);opacity:1}87%{transform:translate3d(380px,-170px,80px) scale(1.08) rotate(-18deg);opacity:1}100%{transform:translate3d(100vw,-65vh,-100px) scale(.3);opacity:0}}@keyframes abuse-party-mobile-right{0%,8%{transform:translate3d(70vw,30px,-600px) scale(.25) rotate(22deg);opacity:0}13%{opacity:1}24%{transform:translate3d(-185px,110px,40px) scale(1.0) rotate(-14deg)}34%{transform:translate3d(-150px,0,0) scale(.72) rotate(10deg)}45%,70%{transform:translate3d(-95px,15px,0) scale(.9) rotate(-6deg);opacity:1}87%{transform:translate3d(-380px,-170px,80px) scale(1.08) rotate(18deg);opacity:1}100%{transform:translate3d(-100vw,-65vh,-100px) scale(.3);opacity:0}}
@media(prefers-reduced-motion:reduce){.abuse-party,.abuse-party *{animation:none!important;will-change:auto!important}.abuse-party-scene{transform:none}.abuse-party-cue,.abuse-party-impact,.abuse-party-wave,.abuse-party-streak,.abuse-taco,.abuse-party-confetti,.abuse-party-ember{display:none}.abuse-party-portal{opacity:.45;transform:perspective(700px) rotateY(var(--portal-tilt)) scale(1)}.abuse-flight--left{opacity:1;transform:translate3d(100px,-40px,0) scale(.96)}.abuse-flight--right{opacity:1;transform:translate3d(-100px,-40px,0) scale(.96)}.abuse-flight .abuse-dragon-model{transform:scaleX(var(--dragon-facing))}.abuse-intro-core,.abuse-party-track{opacity:1;transform:none}.abuse-party-track{transform:translateX(-50%)}.abuse-intro-progress i{opacity:.4}}
@media(prefers-reduced-motion:reduce) and (max-width:800px){.abuse-flight--left{transform:translate3d(95px,15px,0) scale(.9)}.abuse-flight--right{transform:translate3d(-95px,15px,0) scale(.9)}}

@keyframes abuse-party-track-in{0%,25%{opacity:0;transform:translate(-50%,24px) scale(.85)}34%,84%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-10px) scale(1.02)}}

/* Active event atmosphere, outro and broadcast ticker. */
.abuse-ambient{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:80;isolation:isolate}
.abuse-ambient-aura{position:absolute;inset:0;border:1px solid #b7a1ff40;box-shadow:inset 0 0 90px #9868ff1c;background:radial-gradient(ellipse at 10% 0,#9b70ff15,transparent 45%),radial-gradient(ellipse at 95% 100%,#ffd26812,transparent 40%);animation:abLiveAura 9s ease-in-out infinite alternate}
.abuse-ambient-taco{position:absolute;left:var(--x);top:-60px;width:24px;opacity:0;animation:abLiveRain 18s linear var(--delay) infinite;will-change:transform}
.abuse-ambient-taco svg{width:100%;height:auto}
.abuse-ambient-spark{position:absolute;left:var(--x);top:var(--y);color:#ffd269;font:16px system-ui;opacity:0;animation:abLiveSpark 6s ease-in-out var(--delay) infinite}
.abuse-is-live .abuse-banner{border-color:#b497ff80;box-shadow:0 0 24px #9c69ff25;animation:abLiveBanner 5s ease-in-out infinite alternate}
@keyframes abLiveAura{to{opacity:.4}}
@keyframes abLiveBanner{to{box-shadow:0 0 32px #efbd482a;border-color:#eaca7480}}
@keyframes abLiveRain{0%{transform:translateY(0) rotate(-20deg);opacity:0}5%{opacity:.38}60%{opacity:.38}75%,100%{transform:translateY(calc(100vh + 80px)) rotate(180deg);opacity:0}}
@keyframes abLiveSpark{0%,100%{opacity:0;transform:scale(.5)}50%{opacity:.42;transform:scale(1)}}
.abuse-outro{position:fixed;inset:0;z-index:10150;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#272043d9,#080b19b0);animation:abOutroFade 5.5s both}
.abuse-outro-card{position:absolute;top:50%;left:50%;width:min(580px,calc(100% - 32px));transform:translate(-50%,-50%);text-align:center;color:#fff;animation:abOutroCard 5.5s both}
.abuse-outro-card>span{font:700 11px system-ui;letter-spacing:3px;color:#debd77}
.abuse-outro-card h2{font-size:clamp(30px,6vw,62px);line-height:1.08;margin:20px 0 14px;color:#fff0c4;text-shadow:0 0 34px #d19b4770}
.abuse-outro-card p{font-size:17px;color:#c4b7df;overflow-wrap:anywhere}
.abuse-outro-card strong{display:inline-block;padding:12px 18px;border:1px solid #7de6c24d;border-radius:12px;background:#14373170;color:#87e8c8;font-size:14px}
.abuse-outro-portal{position:absolute;right:-70px;top:16%;width:260px;height:260px;border:3px solid #bf9bff;border-radius:50%;box-shadow:0 0 45px #9877ff,inset 0 0 40px #b085ff;background:radial-gradient(circle,#251044d0,transparent 65%);animation:abOutroPortal 5.5s both}
.abuse-outro-flight{position:absolute;top:10%;width:clamp(190px,30vw,420px);animation:abOutroFly 3.8s ease-in forwards}
.abuse-outro-model{width:100%;filter:drop-shadow(0 0 14px #eabe6c70)}
#abuseOutroSkip{position:absolute;right:20px;bottom:25px;pointer-events:auto;background:#19152ded;color:#dfd8f1;border:1px solid #8c73ba70;border-radius:12px;padding:10px 18px;cursor:pointer}
@keyframes abOutroFly{from{transform:translateX(-110%) rotate(-12deg)}to{transform:translateX(calc(100vw + 90px)) rotate(12deg) scale(.25)}}
@keyframes abOutroPortal{0%{opacity:0;transform:scale(.2)}20%,65%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.1)}}
@keyframes abOutroCard{0%{opacity:0;transform:translate(-50%,-45%)}15%,85%{opacity:1;transform:translate(-50%,-50%)}100%{opacity:0;transform:translate(-50%,-55%)}}
@keyframes abOutroFade{0%,100%{opacity:0}12%,88%{opacity:1}}
.abuse-promo-ticker{position:fixed;top:clamp(124px,22vh,220px);left:0;right:0;z-index:10100;pointer-events:none;overflow:hidden;padding:18px 0;contain:layout paint}
.abuse-promo-runner{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:6px 16px;width:max-content;max-width:calc(100vw - 24px);padding:14px 22px;border:1px solid #ffdc83aa;border-radius:14px;background:linear-gradient(120deg,#292148f0,#503624ef,#211b38f5);box-shadow:0 0 28px #fac86a35,inset 0 1px #fff2;color:#fff;animation:abPromoCrawl 14s linear infinite;will-change:transform}
.abuse-promo-label{font:800 10px system-ui;letter-spacing:1.2px;color:#ffc76e}
.abuse-promo-code{font:900 clamp(20px,2.7vw,32px) ui-monospace,monospace;letter-spacing:2px;color:#fff1c0;overflow-wrap:anywhere;min-width:0}
.abuse-promo-reward{font:800 16px system-ui;color:#9bffd8;white-space:nowrap}
.abuse-promo-detail{grid-column:1/-1;font:12px system-ui;color:#d4cbe6;text-align:center}
@keyframes abPromoCrawl{0%{transform:translateX(100vw)}25%,62%{transform:translateX(max(12px,calc((100vw - 100%)/2)))}100%{transform:translateX(-110%)}}
.abuse-broadcast-form{margin-top:18px;padding:20px;background:#181525;border:1px solid #9f79ff50;border-radius:16px}
.abuse-broadcast-form h3{margin:0 0 8px;color:#ffe0a1}
.abuse-broadcast-form>p{color:#b8b0ca;font-size:13px;line-height:1.6}
.abuse-broadcast-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.abuse-broadcast-form input{width:100%;box-sizing:border-box}
.abuse-ambient.is-paused *,.abuse-promo-ticker.is-paused *{animation-play-state:paused!important}
@media(max-width:600px){.abuse-ambient-taco:nth-of-type(n+4),.abuse-ambient-spark:nth-of-type(n+5){display:none}.abuse-ambient-aura{box-shadow:inset 0 0 35px #9868ff15}.abuse-promo-runner{grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;padding:12px 14px}.abuse-promo-label{grid-column:1/-1}.abuse-promo-code{font-size:19px;letter-spacing:1px}.abuse-promo-detail{font-size:11px}.abuse-broadcast-form{padding:14px}}
@media(prefers-reduced-motion:reduce){.abuse-ambient *,.abuse-is-live .abuse-banner,.abuse-outro *,.abuse-outro,.abuse-promo-runner{animation:none!important;will-change:auto}.abuse-side-pop,.abuse-ambient-taco,.abuse-ambient-spark,.abuse-outro-flight,.abuse-outro-portal{display:none}.abuse-outro,.abuse-outro-card{opacity:1}.abuse-promo-runner{margin:auto;transform:none}}

.abuse-side-pop{position:absolute;left:8px;top:48%;width:145px;height:190px;pointer-events:none}
.abuse-popper-cone{position:absolute;width:30px;height:36px;left:5px;bottom:10px;transform:rotate(25deg);animation:abSideCone 3s ease-out both}
.abuse-side-pop i{position:absolute;left:27px;bottom:40px;width:5px;height:9px;border-radius:2px;background:var(--color);opacity:0;animation:abSideConfetti 2.4s var(--delay) cubic-bezier(.1,.6,.4,1) both}
@keyframes abSideCone{0%{opacity:0;transform:translateY(8px) rotate(25deg) scale(.7)}12%,65%{opacity:.85;transform:translateY(0) rotate(25deg) scale(1)}100%{opacity:0;transform:translateY(8px) rotate(25deg) scale(.7)}}
@keyframes abSideConfetti{0%{opacity:0;transform:translate(0,0) rotate(0)}8%{opacity:.9}60%{opacity:.7;transform:translate(var(--dx),var(--dy)) rotate(var(--rot))}100%{opacity:0;transform:translate(var(--dx),calc(var(--dy) + 50px)) rotate(var(--rot))}}
@media(max-width:600px){.abuse-side-pop{left:4px;transform:scale(.8);transform-origin:left center}}
@media(prefers-reduced-motion:reduce){.abuse-side-pop{display:none}}

.abuse-broadcast-form>h3,.abuse-broadcast-form>p,.abuse-broadcast-actions{grid-column:1/-1}

/* Three event phases, owner announcements and the final ten seconds. */
.abuse-field select,.abuse-field textarea{border:1px solid var(--hair,#504460);background:var(--glass,#ffffff09);border-radius:12px;color:var(--text,#eee);padding:12px;font:inherit;width:100%;box-sizing:border-box}
.abuse-field select option{background:#181523;color:#fff}
.abuse-field[hidden]{display:none!important}
.abuse-phase-cards{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.abuse-phase-card{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid #9876dd55;border-radius:16px;background:linear-gradient(140deg,#26203c,#171322)}
.abuse-phase-card>span{font:800 10px system-ui;letter-spacing:2px;color:#ad9ec7}
.abuse-phase-card strong{font-size:19px;color:#e6d2ff}.abuse-phase-card b{font-size:13px;color:#b9eadb}.abuse-phase-card small{font-size:11px;color:#b4a8c6;margin-top:10px}
.abuse-phase-card input{width:100%;background:#ffffff0a;border:1px solid #ac91ce40;border-radius:10px;padding:12px;color:#fff;font:inherit;box-sizing:border-box}
.abuse-phase-card[data-phase="medium"]{border-color:#edc46655;background:linear-gradient(140deg,#332719,#171322)}.abuse-phase-card[data-phase="medium"] strong{color:#ffd98e}
.abuse-phase-card[data-phase="strong"]{border-color:#76caff55;background:linear-gradient(140deg,#192e3c,#171322)}.abuse-phase-card[data-phase="strong"] strong{color:#99dcff}
.abuse-phase-help{grid-column:1/-1;font-size:12px;line-height:1.7;color:#b1a6c1}
.abuse-live-plan{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.abuse-live-plan span{font-size:11px;border:1px solid #876ca944;border-radius:8px;padding:7px 10px;color:#aa9bc1}.abuse-live-plan .is-current{color:#ffe1a4;background:#d7aa4726;border-color:#e3b96480}
.abuse-phase-until{font-size:12px;color:#b5a4cd}.abuse-phase-until b{color:#e9d8ff;font-variant-numeric:tabular-nums}
.abuse-phase-change{padding:18px 0;margin:10px 0}.abuse-preview-select{max-width:350px;margin-top:22px}
.abuse-message-form textarea{min-height:96px;resize:vertical}
body[data-abuse-phase="medium"] .abuse-ambient-taco{animation-duration:11s;width:28px}
body[data-abuse-phase="medium"] .abuse-ambient-aura{background:radial-gradient(ellipse at 5% 0,#eeb55323,transparent 50%),radial-gradient(ellipse at 95% 90%,#d6754217,transparent 40%);border-color:#ddaf6b40}
body[data-abuse-phase="strong"] .abuse-ambient-aura{background:radial-gradient(ellipse at 10% 0,#5ebbff24,transparent 45%),radial-gradient(ellipse at 95% 100%,#c57bff22,transparent 40%);border-color:#78cfff60;animation:abGlitchBorder 5s ease-in-out infinite}
body[data-abuse-phase="strong"] .abuse-ambient-aura:after{content:'';position:absolute;left:0;right:0;top:10%;height:1px;background:#9ce8ff55;box-shadow:0 16px #bd93ff33;animation:abGlitchScan 9s linear infinite;opacity:.4}
body[data-abuse-phase="strong"] .abuse-ambient-taco{animation-duration:13s}
@keyframes abGlitchBorder{0%,100%{opacity:.4}50%{opacity:1}}
@keyframes abGlitchScan{to{transform:translateY(80vh)}}
.abuse-phase-toast{position:fixed;bottom:32px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);width:max-content;padding:14px 22px;border:1px solid #edc5897d;border-radius:12px;background:#21182cf5;color:#ffe2a4;text-align:center;font-size:13px;font-weight:700;z-index:10130;pointer-events:none;animation:abPhaseToast .35s ease-out}
@keyframes abPhaseToast{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
.abuse-owner-message{position:fixed;top:80px;left:50%;transform:translateX(-50%);width:min(620px,calc(100vw - 28px));display:flex;gap:14px;align-items:flex-start;box-sizing:border-box;padding:18px;border:1px solid #b898ef88;border-radius:16px;background:linear-gradient(115deg,#2d2444f5,#171527fa);box-shadow:0 12px 45px #0007;z-index:150010;pointer-events:none;animation:abOwnerMessage .3s ease-out}
.abuse-owner-avatar{flex:0 0 auto;position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:linear-gradient(130deg,#9474ff,#4934b5);font:900 25px system-ui;color:#fff}.abuse-owner-avatar span{position:absolute;right:-4px;bottom:-4px;color:#ffe2a2;font-size:15px}
.abuse-owner-copy{min-width:0;flex:1}.abuse-owner-copy strong{font-size:14px;color:#f0e4ff}.abuse-owner-copy strong span{font:800 8px system-ui;letter-spacing:1px;border:1px solid #eac88255;border-radius:5px;padding:3px 5px;margin-left:6px;color:#ffda95}
.abuse-owner-copy p{font-size:15px;line-height:1.5;color:#f7f3ff;margin:8px 0 0;overflow-wrap:anywhere;white-space:pre-wrap}.abuse-owner-message button{pointer-events:auto;border:0;background:transparent;color:#bbafd0;font-size:14px;cursor:pointer;padding:3px}
@keyframes abOwnerMessage{from{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%,0)}}
.abuse-final-countdown{position:fixed;inset:0;z-index:150005;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;background:radial-gradient(ellipse at center,#151126bf,transparent 70%);color:#ffe3a3;text-shadow:0 0 35px #dfac4966}
.abuse-final-countdown>span{font:800 clamp(10px,2vw,14px) system-ui;letter-spacing:3px;color:#e6caa0;text-align:center}.abuse-final-number{height:clamp(150px,23vw,260px);display:grid;place-items:center}.abuse-final-number b{font-size:clamp(120px,20vw,220px);line-height:1;animation:abFinalNumber .4s ease-out}.abuse-final-countdown small{font:800 10px system-ui;letter-spacing:4px;color:#af9dc4}
@keyframes abFinalNumber{from{opacity:.4;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}
.abuse-outro-salute{position:absolute;top:48%;pointer-events:none}.abuse-outro-salute.salute-0{left:20%}.abuse-outro-salute.salute-1{right:20%}.abuse-outro-salute i{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--color);box-shadow:0 0 12px var(--color);opacity:0;animation:abOutroSalute 2.5s var(--delay) ease-out both}
@keyframes abOutroSalute{0%{opacity:0;transform:translate(0,0) scale(.5)}15%{opacity:1}75%{opacity:.7;transform:translate(var(--dx),var(--dy)) scale(1)}100%{opacity:0;transform:translate(var(--dx),calc(var(--dy) + 25px)) scale(.4)}}
@media(max-width:700px){.abuse-phase-cards{grid-template-columns:1fr}.abuse-phase-card{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;padding:14px}.abuse-phase-card>span,.abuse-phase-card strong,.abuse-phase-card b{grid-column:1}.abuse-phase-card small{grid-column:2;grid-row:1;margin:0}.abuse-phase-card input{grid-column:2;grid-row:2/4;align-self:center;min-width:0}.abuse-owner-message{top:68px;padding:13px;gap:10px}.abuse-owner-copy p{font-size:13px}.abuse-owner-avatar{width:34px;height:34px;font-size:21px}.abuse-outro-salute{transform:scale(.6)}.abuse-phase-toast{bottom:18px;padding:11px 14px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.abuse-phase-toast,.abuse-owner-message,.abuse-final-number b,body[data-abuse-phase="strong"] .abuse-ambient-aura{animation:none}.abuse-outro-salute,.abuse-ambient-aura:after{display:none}}
.abuse-phase-cards{border:0;padding:0;margin:0}.abuse-phase-cards legend{font-size:13px;margin-bottom:12px;color:#c9bddb;font-weight:700}.abuse-phase-card{position:relative;cursor:pointer}.abuse-phase-card>input[type="radio"]{position:absolute;opacity:0;width:1px;height:1px}.abuse-phase-card:has(input:checked){outline:2px solid #dac297;outline-offset:1px;box-shadow:0 0 20px #dfc47d19}.abuse-phase-card:has(input:focus-visible){outline:3px solid #f8e4bd}.abuse-phase-card b{grid-column:1/-1}.abuse-phase-card strong{grid-column:1/-1}
.abuse-final-countdown:before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:clamp(240px,28vw,340px);height:clamp(250px,30vw,330px);background:linear-gradient(155deg,#21182bf5,#100f1afa);border:1px solid #f1c78066;border-radius:24px;box-shadow:0 12px 60px #0006,0 0 35px #e1b86315}
.abuse-final-countdown>span,.abuse-final-countdown>.abuse-final-number,.abuse-final-countdown>small{position:relative;z-index:1}

/* Numbered live phase banner and a prominent phase transition. */
.abuse-banner{--phase-color:#c6a3ff;--phase-glow:#9c71ee;position:relative;display:grid;grid-template-columns:72px minmax(0,1fr) auto 38px;gap:16px;padding:21px 24px 25px;border-radius:20px;border-color:color-mix(in srgb,var(--phase-color) 55%,transparent);background:radial-gradient(ellipse at 0 50%,color-mix(in srgb,var(--phase-glow) 24%,transparent),transparent 60%),linear-gradient(110deg,#211b36,#111d2c);overflow:hidden;box-shadow:0 8px 40px #110c2522}
.abuse-banner[data-phase="medium"]{--phase-color:#ffcf7b;--phase-glow:#e5a340}.abuse-banner[data-phase="strong"]{--phase-color:#8ed9ff;--phase-glow:#61b2ef}
.abuse-banner-number{display:flex;flex-direction:column;justify-content:center;align-items:center;align-self:center;gap:1px;width:70px;height:76px;border:1px solid color-mix(in srgb,var(--phase-color) 40%,transparent);border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--phase-glow) 26%,transparent),#12101f80);box-shadow:inset 0 1px #fff1}
.abuse-banner-number small{font:800 9px system-ui;letter-spacing:2px;color:var(--phase-color)}.abuse-banner-number b{font-size:39px;line-height:1.05;font-weight:950;color:#fff1cd;text-shadow:0 0 20px color-mix(in srgb,var(--phase-color) 45%,transparent)}
.abuse-banner-main{min-width:0}.abuse-banner-kicker{font-size:8px;letter-spacing:2px;font-weight:800;color:var(--phase-color)}.abuse-banner-title{font-size:22px;margin:5px 0 3px;color:#fff;line-height:1.2}.abuse-banner-event-name{display:block;font-size:11px;color:#ac9bbc;overflow-wrap:anywhere}
.abuse-banner-sub{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.abuse-banner-sub b{display:inline-flex;align-items:center;min-height:25px;border:1px solid #cfb5ee33;border-radius:7px;padding:3px 9px;background:#c6a7f015;font-size:11px;color:#e1d0f4;font-weight:750}.abuse-banner-sub .abuse-banner-upgrade{color:#9af0cc;border-color:#72cfa52e;background:#66b78d12}
.abuse-banner-time{display:flex;flex-direction:column;align-items:flex-end;gap:5px;align-self:center}.abuse-banner-time small{font:800 8px system-ui;letter-spacing:1.2px;color:#a9a1ba}.abuse-banner .abuse-timer{font-size:29px;color:var(--phase-color);letter-spacing:-1px}
.abuse-banner>.abuse-music-button{align-self:center}.abuse-banner-progress{position:absolute;left:24px;right:24px;bottom:10px;height:3px;border-radius:5px;overflow:hidden;background:#fff1}.abuse-banner-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--phase-color),#ffe3a1);border-radius:5px;transition:width 1s linear}
.abuse-phase-toast{--phase-color:#c6a3ff;position:fixed;top:50%;bottom:auto;left:50%;transform:translate(-50%,-50%);width:min(580px,calc(100vw - 36px));max-width:none;box-sizing:border-box;padding:30px 25px 27px;border-radius:22px;border:1px solid color-mix(in srgb,var(--phase-color) 70%,transparent);background:radial-gradient(ellipse at top,color-mix(in srgb,var(--phase-color) 16%,transparent),transparent 65%),#151120f5;box-shadow:0 0 75px color-mix(in srgb,var(--phase-color) 22%,transparent),0 18px 70px #0008;text-align:center;z-index:10140;pointer-events:none;animation:abPhaseReveal 4.5s ease both}
.abuse-phase-toast[data-phase="medium"]{--phase-color:#ffd180}.abuse-phase-toast[data-phase="strong"]{--phase-color:#8fdfff}
.abuse-phase-reveal-kicker{display:block;font:800 10px system-ui;letter-spacing:2px;color:var(--phase-color)}.abuse-phase-reveal-number{font-size:clamp(28px,6vw,46px);font-weight:1000;color:#fff0c8;letter-spacing:4px;margin:14px 0 3px;text-shadow:0 0 22px #f1c67822}
.abuse-phase-toast>strong{display:block;font-size:clamp(26px,5vw,39px);font-weight:950;color:#fff;line-height:1.1}.abuse-phase-reveal-bonuses{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:22px}.abuse-phase-reveal-bonuses span{padding:10px 15px;border-radius:10px;background:#c3a4ec17;border:1px solid color-mix(in srgb,var(--phase-color) 40%,transparent);font-size:14px;font-weight:800;color:var(--phase-color)}.abuse-phase-toast>small{display:block;font-size:11px;color:#ad9ec2;margin-top:18px;overflow-wrap:anywhere}.abuse-phase-reveal-close{position:absolute;top:10px;right:12px;pointer-events:auto;border:0;background:transparent;color:#c7b8dd;font-size:13px;padding:5px;cursor:pointer}
@keyframes abPhaseReveal{0%{opacity:0;transform:translate(-50%,-45%) scale(.92)}12%,87%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-53%) scale(.97)}}
.upg-card:disabled{filter:grayscale(1);opacity:.32;cursor:not-allowed}
@media(max-width:700px){.abuse-banner{margin:10px 12px;grid-template-columns:48px minmax(0,1fr) 34px;gap:10px;padding:15px 14px 23px}.abuse-banner-number{width:46px;height:61px;border-radius:11px}.abuse-banner-number small{font-size:7px;letter-spacing:1px}.abuse-banner-number b{font-size:30px}.abuse-banner-title{font-size:16px;margin-top:4px}.abuse-banner-kicker{font-size:6px;letter-spacing:1px}.abuse-banner-event-name{font-size:9px}.abuse-banner-main{grid-column:2}.abuse-banner>.abuse-music-button{grid-column:3;grid-row:1;width:32px;height:32px}.abuse-banner-sub b{font-size:9px;padding:3px 6px;min-height:21px}.abuse-banner-sub{gap:5px;margin-top:7px}.abuse-banner-time{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;margin-top:1px}.abuse-banner .abuse-timer{font-size:22px}.abuse-banner-time small{font-size:7px}.abuse-banner-progress{left:14px;right:14px;bottom:9px}.abuse-phase-toast{padding:25px 17px 23px}.abuse-phase-reveal-kicker{font-size:8px;letter-spacing:1px}.abuse-phase-reveal-bonuses span{font-size:12px;padding:9px 12px}}
@media(prefers-reduced-motion:reduce){.abuse-phase-toast{animation:none}.abuse-banner-progress i{transition:none}}
.abuse-banner{width:calc(100% - 32px)}
.abuse-is-live .abuse-banner{border-color:color-mix(in srgb,var(--phase-color) 55%,transparent)}
@keyframes abLiveBanner{to{box-shadow:0 0 32px color-mix(in srgb,var(--phase-color) 16%,transparent);border-color:color-mix(in srgb,var(--phase-color) 75%,transparent)}}
/* Compact phase banner: keep phase, boosts and clock without dominating the page. */
.abuse-banner{max-width:760px;width:calc(100% - 24px);grid-template-columns:42px minmax(0,1fr) auto 30px;gap:10px;padding:10px 14px 16px;border-radius:15px;margin:12px auto}
.abuse-banner-number{width:40px;height:50px;border-radius:11px}
.abuse-banner-number small{font-size:7px;letter-spacing:1px}
.abuse-banner-number b{font-size:27px}
.abuse-banner-kicker{display:none}
.abuse-banner-title{font-size:16px;margin:0 0 2px;line-height:1.2}
.abuse-banner-event-name{font-size:10px;line-height:1.2;overflow-wrap:anywhere}
.abuse-banner-sub{gap:5px;margin-top:5px}
.abuse-banner-sub b{min-height:19px;font-size:10px;padding:2px 6px;border-radius:6px}
.abuse-banner-time{gap:3px}
.abuse-banner-time small{font-size:7px;letter-spacing:.8px}
.abuse-banner .abuse-timer{font-size:23px}
.abuse-banner .abuse-music-button{width:30px;height:30px;border-radius:9px;font-size:17px}
.abuse-banner-progress{left:14px;right:14px;bottom:6px;height:2px}
@media(max-width:700px){
.abuse-banner{width:calc(100% - 24px);margin:10px auto;grid-template-columns:36px minmax(0,1fr) 28px;gap:6px 8px;padding:9px 11px 14px;border-radius:13px}
.abuse-banner-number{width:36px;height:44px;border-radius:9px}
.abuse-banner-number b{font-size:24px}
.abuse-banner-title{font-size:14px}
.abuse-banner-event-name{font-size:9px}
.abuse-banner-sub{gap:4px;margin-top:4px;flex-wrap:wrap}
.abuse-banner-sub b{font-size:9px;min-height:18px;padding:2px 5px}
.abuse-banner .abuse-music-button{width:28px;height:28px;font-size:16px}
.abuse-banner-time{margin-top:0;gap:6px}
.abuse-banner .abuse-timer{font-size:18px;line-height:1}
.abuse-banner-time small{font-size:6px}
.abuse-banner-progress{left:11px;right:11px;bottom:5px}
}


/* Online activity is displayed in the owner's admin panel only. */
.online-pill{display:none!important}


/* v82: pending withdrawal cancellation */
.withdraw-cancel-actions{margin-top:10px}.item-withdraw-cancel{white-space:normal;min-height:36px}.withdraw-cancel-msg{font-size:12px;color:var(--lose);margin:8px 0 0}.withdraw-cancel-msg[hidden]{display:none}

/* Space the withdrawal schedule below inventory cards. */
.profile-inventory > .item-window { margin: 0 0 14px !important; padding-top: 12px; line-height: 1.5 !important; }

/* Deposit-cohort luck controls. */
.adm-luck-segments{margin:16px 0;padding:18px;border:1px solid rgba(157,116,255,.26);border-radius:16px;background:rgba(157,116,255,.05)}
.adm-luck-segments h4{margin:0 0 8px}.luck-segment-fields{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}.luck-segment-fields label{display:grid;gap:6px;font-size:12px;color:var(--text-2,#aaa)}.luck-segment-fields .text-input{width:100%;min-width:0}.adm-luck-segments .adm-tp-actions{flex-wrap:wrap;gap:8px}.adm-luck-segments .sub{font-size:12px;line-height:1.5}@media(max-width:600px){.luck-segment-fields{grid-template-columns:1fr 1fr}.luck-segment-fields label:first-child{grid-column:1/-1}}

/* Reveal only the hovered value; never a whole card or section. */
.stream-word{display:inline-block}
.streamer-mode .stream-blur{filter:blur(7px);user-select:none}
.streamer-mode .stream-blur:hover,
.streamer-mode input.stream-blur:focus,
.streamer-mode .stream-blur:focus-visible{filter:none;user-select:auto}
/* A single selected creature gets the same artwork box as the target. */
#upgLeft.upg-single .upg-mini-row{width:100%;flex-wrap:nowrap}
#upgLeft.upg-single .upg-mini{width:100%;max-width:100%;font-size:14px}
#upgLeft.upg-single .upg-mini img.upg-img,
#upgLeft.upg-single .upg-mini .emoji-pic{width:112px;height:112px;max-width:100%;object-fit:contain;object-position:center}
#upgLeft.upg-single .upg-mini>div{margin-top:9px;font-size:14px;font-weight:700}
@media(max-width:600px){#upgLeft.upg-single .upg-mini img.upg-img,#upgLeft.upg-single .upg-mini .emoji-pic{width:88px;height:88px}#upgRight .upg-big-img{width:88px;height:88px}}


/* Cancel card requests while waiting for bank confirmation. */
.card-wait-actions{display:grid;grid-template-columns:1fr;gap:10px}.card-wait-actions>button{width:100%;min-height:46px}.card-cancel-note{font-size:12px!important;line-height:1.5!important;margin:14px 0 0;color:var(--muted)}#cardCancelMsg[hidden],#cardCancelNote[hidden],#cardWaitCancel[hidden]{display:none!important}


/* Available stock excludes reservations; show both without reloading the form. */
.st-live-summary{display:flex;gap:8px 18px;flex-wrap:wrap;align-items:center;margin:12px 0;padding:14px;border:1px solid var(--hair);border-radius:12px;background:var(--surface-2)}.st-live-summary>b{font-size:14px}.st-reserved-total{color:#fbbf24}.st-live-status{font-size:11px;color:var(--muted);margin-left:auto}.st-live-summary p{flex-basis:100%;margin:0;font-size:12px;line-height:1.5;color:var(--muted)}.st-reserved-count{font-size:10px;color:var(--muted);margin-top:4px}.st-reserved-count.has{color:#fbbf24}@media(max-width:500px){.st-live-status{flex-basis:100%;margin-left:0}}

.auto-promo-v98{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;gap:32px;padding:18px 28px;margin:0 0 16px;border-bottom:1px solid #80663166;background:radial-gradient(ellipse at 22% 20%,#5d2d1170,transparent 50%),radial-gradient(ellipse at 85% 90%,#53368155,transparent 50%),#14131b;color:#fff;overflow:hidden}.auto-promo-v98:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.16;background:repeating-linear-gradient(130deg,transparent 0 28px,#e7ad4940 29px,transparent 30px 60px)}.ap-offer{display:flex;align-items:center;gap:16px}.ap-symbol{display:grid;place-items:center;width:64px;height:64px;border:1px solid #ffc868;border-radius:18px;transform:rotate(-12deg);font-size:44px;font-weight:900;color:#ffdb78;background:linear-gradient(135deg,#764519,#2c193e);box-shadow:0 0 24px #e6a43120}.ap-offer>div{display:grid;gap:0}.ap-kicker{font-size:10px;letter-spacing:2px;color:#f5c878;font-weight:700}.ap-percent{font-size:42px;font-weight:900;line-height:1.1;letter-spacing:-2px}.ap-caption{font-size:12px;color:#ddd3c8}.ap-clock{display:grid;gap:4px;border:1px solid #c7893c80;border-radius:13px;padding:10px 22px;background:#090b1155;text-align:center}.ap-clock>span,.ap-code-box>span{font-size:11px;color:#c6c1cf}.ap-clock time{font-variant-numeric:tabular-nums;font-size:30px;line-height:1;font-weight:800;letter-spacing:2px}.ap-code-box{display:grid;gap:4px;text-align:center;position:relative}.ap-code{border:1px solid #ffd16f;border-radius:9px;padding:9px 25px;background:linear-gradient(110deg,#ffc35c,#ee784a);color:#20140d;font:inherit;font-weight:800;font-size:23px;line-height:1.1;letter-spacing:1px;cursor:pointer;min-width:190px}.ap-feedback{position:absolute;top:100%;width:100%;font-size:10px;color:#f5d697}.ap-deposit{background:#ffffff0c;border:1px solid #ffffff30;border-radius:10px;color:white;padding:13px 17px;font:inherit;font-weight:700;font-size:13px;cursor:pointer}.ap-code:hover{filter:brightness(1.1)}.ap-deposit:hover{background:#ffffff18}.ap-code:focus-visible,.ap-deposit:focus-visible{outline:2px solid white;outline-offset:4px}@media(max-width:850px){.auto-promo-v98{gap:18px;padding:16px}.ap-symbol{display:none}.ap-clock{padding:10px 14px}.ap-deposit{padding:12px}.ap-code{min-width:160px;padding:10px 14px}}@media(max-width:570px){.auto-promo-v98{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;padding:16px 20px}.ap-offer{justify-content:center}.ap-percent{font-size:36px}.ap-clock{justify-self:stretch}.ap-code-box{min-width:0}.ap-code{min-width:0;font-size:18px}.ap-deposit{align-self:center;min-height:43px}.ap-kicker{font-size:9px}.ap-clock time{font-size:27px}}

.auto-promo-v98[hidden]{display:none}.ap-code:disabled,.ap-deposit:disabled{opacity:.5;cursor:wait}

/* Full-width strip with three equally sized controls. */
.auto-promo-v98{box-sizing:border-box;width:100%;max-width:none;align-self:stretch;gap:0}
.ap-inner{box-sizing:border-box;width:100%;max-width:1104px;display:flex;align-items:center;justify-content:center;gap:24px;margin:0 auto;min-width:0}
.ap-clock,.ap-code-box,.ap-deposit{box-sizing:border-box;width:190px;height:68px;flex:0 0 190px;border-radius:12px}
.ap-clock{align-content:center;padding:8px 12px;gap:3px}
.ap-clock time{font-size:28px}
.ap-code-box{display:block;position:relative}
.ap-code{box-sizing:border-box;width:100%;height:100%;min-width:0;padding:8px 12px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;white-space:nowrap}
.ap-feedback{left:0;top:calc(100% + 3px);line-height:12px}
.ap-deposit{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 12px;font-size:14px;line-height:1.1;white-space:nowrap}
.ap-wallet{width:22px;height:22px;flex:none}
@media(max-width:900px){.ap-inner{gap:16px}.ap-clock,.ap-code-box,.ap-deposit{width:160px;flex-basis:160px}.ap-symbol{display:none}.ap-code{font-size:22px}}
@media(max-width:650px){.auto-promo-v98{display:flex;padding:16px 18px}.ap-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 12px}.ap-clock,.ap-code-box,.ap-deposit{width:100%;min-width:0;height:68px}.ap-offer{justify-content:center}.ap-code{font-size:22px}}

/* Wide-screen live feed owns the full left column; promo stays strictly to its right. */
@media(min-width:1000px){
 .tg-mini .mini-side{box-sizing:border-box;top:var(--sab-topbar-height,64px);bottom:0;height:auto;max-height:none;margin:0;background:var(--surface);}
 .tg-mini .auto-promo-v98{width:calc(100% - 176px);margin-left:176px;}
}

/* SabHelper promo controls: one visual family on desktop and mobile. */
.auto-promo-v98{border-color:#8c63d84d;background:radial-gradient(ellipse at 18% 10%,#7046bd24,transparent 60%),#14111d}
.auto-promo-v98:before{display:none}
.ap-symbol{color:#d3bcff;border-color:#9b78e56b;background:#8d64d51a;box-shadow:none}
.ap-kicker{color:#bca1ed}.ap-percent{color:#f8f4ff}.ap-caption{color:#c0b4d0}
.ap-clock,.ap-code-box,.ap-deposit{flex:1 1 150px;min-width:0;max-width:190px}
.ap-clock,.ap-code-box{height:76px;border:1px solid #9b7bc43d;background:#ffffff04;color:#e9def8}
.ap-clock time{letter-spacing:1px;font-size:27px}
.ap-clock>span,.ap-code-label{color:#a99abf;font-size:10px;line-height:1.25}
.ap-code-box{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:3px;padding:8px 7px}
.ap-code{height:auto;min-height:27px;flex:1;padding:0 4px;border:0;background:transparent;color:#d4baff;font-size:24px;letter-spacing:1px}
.ap-code:hover{background:#ae7dff0c;filter:none}
.ap-feedback{position:static;min-height:10px;font-size:9px;line-height:10px;color:#bfa6ee}
.ap-deposit{height:76px;border-color:#a17aff;background:#7853e9;color:#fff;box-shadow:0 5px 20px #6c40dd20}
.ap-deposit:hover{background:#8964f3}
.ap-code:focus-visible,.ap-deposit:focus-visible{outline-color:#c9acff;outline-offset:3px}
@media(max-width:900px){
 .auto-promo-v98{box-sizing:border-box;width:calc(100% - 24px);margin:12px 12px 4px;padding:16px;border:1px solid #9470c943;border-radius:18px}
 .ap-inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .ap-offer{grid-column:1/-1;justify-content:flex-start;gap:12px;min-width:0}
 .ap-symbol{display:grid;transform:none;width:42px;height:42px;flex:none;border-radius:12px;font-size:28px}
 .ap-offer>div{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;min-width:0}
 .ap-kicker{grid-column:1/-1;font-size:9px;letter-spacing:1.4px;line-height:1.3}
 .ap-percent{font-size:30px;letter-spacing:-1px}.ap-caption{font-size:11px;line-height:1.35}
 .ap-clock,.ap-code-box,.ap-deposit{width:100%;max-width:none;min-width:0;flex-basis:auto}.ap-clock,.ap-code-box{height:76px}.ap-clock{padding:8px 5px}.ap-clock time{font-size:25px;letter-spacing:.5px}
 .ap-code-label{font-size:9px}.ap-code{font-size:22px;line-height:1.15}.ap-code-box{padding:8px 5px}
 .ap-deposit{grid-column:1/-1;height:44px;min-height:44px;flex-direction:row;gap:8px;font-size:13px}.ap-wallet{width:19px;height:19px}
}
@media(max-width:360px){.auto-promo-v98{padding:13px}.ap-inner{gap:10px}.ap-clock time{font-size:23px}.ap-code{font-size:20px}.ap-code-label{font-size:8px}}

/* Equal outer controls; code uses the original purple treatment. */
.ap-clock,.ap-code-box,.ap-deposit{box-sizing:border-box;width:190px;height:76px;min-height:76px;flex:0 0 190px;max-width:190px;margin:0}
.ap-code-box{background:#7853e9;border:1px solid #a17aff;gap:3px;padding:8px 12px}
.ap-code-label{color:#eee7ff}.ap-code{flex:0 0 auto;color:#fff;height:29px;min-height:29px;padding:0;background:transparent}
.ap-feedback{position:absolute;top:calc(100% + 3px);left:0;width:100%;min-height:0}
@media(max-width:900px){.ap-inner{grid-template-columns:repeat(3,minmax(0,1fr))}.ap-clock,.ap-code-box,.ap-deposit{width:100%;max-width:none;min-width:0;height:76px;min-height:76px;flex-basis:auto}.ap-deposit{grid-column:auto;flex-direction:column;font-size:12px}.ap-clock time,.ap-code{font-size:22px}.ap-clock>span,.ap-code-label{font-size:9px}}
@media(max-width:360px){.ap-inner{gap:6px}.ap-clock,.ap-code-box,.ap-deposit{padding:7px 3px}.ap-clock time,.ap-code{font-size:19px}.ap-deposit{font-size:10px}}

/* Deposit action stays dark; the promo code keeps its purple fill. */
.ap-deposit{background:#ffffff04;border-color:#9b7bc43d;box-shadow:none;color:#eee7ff}
.ap-deposit:hover{background:#ffffff0c;border-color:#9b7bc470}

.ab-poll{position:fixed;z-index:90;top:calc(var(--sab-topbar-height,64px) + 12px);left:50%;transform:translateX(-50%);box-sizing:border-box;width:min(820px,calc(100% - 32px));padding:16px 22px 12px;border:1px solid #ffe0a74d;border-radius:18px;background:linear-gradient(130deg,#24241df5,#11151ff7);box-shadow:0 14px 70px #0009;color:#fff;backdrop-filter:blur(18px);font-family:inherit}.ab-poll[hidden]{display:none}.ab-poll-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.ab-poll-kicker{color:#e5c98d;font-size:10px;font-weight:800;letter-spacing:1.4px}.ab-poll-timer{font-weight:900;font-size:14px;font-variant-numeric:tabular-nums;color:#ffd875}.ab-poll-question{font-size:clamp(18px,2.3vw,27px);font-weight:900;line-height:1.2;text-align:center;margin:10px 0 14px;overflow-wrap:anywhere}.ab-poll-totals{display:flex;gap:12px;align-items:center}.ab-poll-totals strong{font-size:18px;min-width:38px;font-variant-numeric:tabular-nums}.ab-poll-no-count{text-align:right}.ab-poll-bar{flex:1;height:18px;border:3px solid #090c0e;border-radius:6px;background:#fa5367;overflow:hidden}.ab-poll-bar-yes{display:block;height:100%;background:#38e16b;transition:width .25s ease}.ab-poll-buttons{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:500px;margin:14px auto 10px}.ab-poll-buttons button{min-height:48px;padding:8px 14px;border:2px solid #0a1013;border-radius:10px;color:#07110a;font:inherit;line-height:1.15;font-family:inherit;font-size:24px;font-weight:900;cursor:pointer;overflow-wrap:anywhere}.ab-poll-buttons [data-poll-vote=yes]{background:linear-gradient(#4aed7e,#26c652)}.ab-poll-buttons [data-poll-vote=no]{background:linear-gradient(#ff7b83,#f24c63);color:#210b10}.ab-poll-buttons button:disabled{cursor:default}.ab-poll-buttons button:disabled:not(.selected){opacity:.52}.ab-poll-buttons button.selected{box-shadow:0 0 0 2px #fff,0 0 24px #ffffff24}.ab-poll-buttons button:focus-visible{outline:3px solid white;outline-offset:3px}.ab-poll-foot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:11px;color:#c8ced4}.ab-poll-feedback{color:#ffe09c}.ab-poll-admin-options{display:grid;grid-template-columns:1fr 1fr 120px;gap:12px}.abuse-admin form.ab-poll-admin{display:block;border:1px solid #bda86e40;border-radius:16px;padding:18px;margin:18px 0}.ab-poll-admin h3{margin-top:0}.ab-poll-admin input,.ab-poll-admin textarea{box-sizing:border-box;width:100%}.ab-poll-admin button:disabled{opacity:.5;cursor:default}@media(min-width:1000px){.tg-mini .ab-poll{left:calc(50% + 88px);max-width:calc(100% - 208px)}}@media(max-width:600px){.ab-poll{padding:12px 14px;border-radius:14px;top:calc(var(--sab-topbar-height,64px) + 8px)}.ab-poll-question{font-size:20px}.ab-poll-buttons{gap:10px}.ab-poll-buttons button{font-size:22px}.ab-poll-totals{gap:8px}.ab-poll-totals strong{font-size:15px;min-width:25px}.ab-poll-admin-options{grid-template-columns:1fr 1fr}.ab-poll-admin-options>label:last-child{grid-column:1/-1}}

.br-pick.br-promo-active{position:relative;border-color:#ff982d;background:linear-gradient(150deg,#45200d,#171119 70%);box-shadow:inset 0 -12px 22px #ff7b1729}
.br-promo-badge{color:#ffd55e;font-size:11px;font-weight:900;white-space:nowrap;margin-right:6px}.br-pick .br-promo-badge{position:absolute;top:6px;left:7px}.br-promo-active del{font-size:10px;color:#9c8f87;text-decoration:line-through;text-decoration-thickness:1px}.br-promo-active .upg-price b{color:#ffc565}
.br-promo-admin{padding:18px;margin-bottom:20px;border:1px solid #8a5a2b;border-radius:16px;background:linear-gradient(130deg,#33221380,#15131e)}.br-promo-admin h3{margin:0 0 8px}.br-promo-admin form{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}.br-promo-admin label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#b6b2c3}.br-promo-admin input,.br-promo-admin select{width:100%;min-width:0;padding:12px;background:#222029;color:#fff;border:1px solid #45404e;border-radius:10px;box-sizing:border-box}.br-promo-buttons{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}.br-promo-row{display:flex;gap:12px;align-items:center;padding:10px 0;border-top:1px solid #ffffff12;flex-wrap:wrap}.br-promo-row small{color:#aaa;margin-left:auto}.br-promo-row .br-wait-img{width:38px;height:38px;object-fit:contain}
@media(max-width:600px){.br-promo-admin form{grid-template-columns:1fr}.br-promo-admin{padding:13px}.br-promo-row small{width:100%;margin-left:50px}}

.br-mut-item{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #ffffff12}.br-mut-item>.br-wait-img{width:42px;height:48px;object-fit:contain;flex-shrink:0}.br-mut-name{flex:1;min-width:0}.br-mut-name>b{font-size:12px}.br-mut-name label{display:flex;align-items:center;gap:8px;font-size:10px;color:#aaa;margin-top:8px}.br-mutation-select{max-width:180px;min-width:0;padding:7px;background:#25222f;color:#eee;border:1px solid #575061;border-radius:8px}.br-mut-item>strong{white-space:nowrap;color:#f5c66b;font-size:13px}.br-mut-item>b{font-size:12px}
.br-trade-head h4{font-size:24px;margin:10px 0 20px}.br-trade-copy{margin:14px 0}.br-trade-copy>label{text-transform:uppercase;font-size:10px;color:#a39cad;letter-spacing:1px}.br-trade-copy>div{margin-top:7px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;border:1px solid #ffffff18;border-radius:10px;background:#ffffff06}.br-trade-copy b{overflow-wrap:anywhere}.br-trade-copy button{position:static;flex-shrink:0;padding:8px;color:#baa2ff;border:1px solid #7957d9;border-radius:8px;background:#7957d919}.br-mut-chips>div{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #ffffff12}.br-mut-chips .br-wait-img{width:40px;height:40px;object-fit:contain}.br-mut-chips small{display:block;color:#dbbc78;margin-top:4px}.br-trade-steps{padding-left:20px;font-size:12px;color:#c3bdce;line-height:1.6}.br-trade-steps li{padding-left:3px;margin:9px 0}.br-trade-total{display:flex;justify-content:space-between;gap:12px;background:#9e77321a;border:1px solid #a6803f55;border-radius:10px;padding:15px;font-size:14px}.br-trade-total strong{color:#f8ce70}.br-trade-wait{text-align:center;font-size:11px}.br-trade-success{text-align:center;padding:30px 12px}.br-trade-success-icon{display:inline-grid;place-items:center;width:84px;height:84px;background:#44e3971a;border:1px solid #44e39777;border-radius:50%;color:#44e397;font-size:48px}.br-trade-success h4{font-size:30px;margin:20px 0 8px}.br-trade-success p{font-size:14px;color:#b6afc2;line-height:1.5}.br-trade-success>strong{display:block;font-size:28px;color:#70e6b3;margin-top:20px}.br-mutation-admin form{grid-template-columns:2fr 2fr 1fr}.br-mutation-admin label:nth-child(4){grid-column:1/-1}.br-mutation-admin input[readonly]{opacity:.6}
@media(max-width:600px){.br-mut-item{gap:7px}.br-mut-item>.br-wait-img{width:30px;height:38px}.br-mut-name label{display:block}.br-mutation-select{display:block;width:100%;margin-top:5px}.br-mut-item>strong{font-size:11px}.br-mutation-admin form{grid-template-columns:1fr}.br-trade-head h4{font-size:22px}.br-trade-copy>div{font-size:12px}}

.br-card-mut{display:block;font-size:9px;color:#b4acbf;margin-top:8px;width:100%}.br-card-mut .br-mutation-select{font-size:10px;padding:6px 3px;display:block;width:100%;margin-top:4px;box-sizing:border-box}.br-pick:has(.br-card-mut){height:auto;min-height:210px}

.tp-modal .br-trade-copy .pay-copy{width:auto;height:auto;min-width:88px;font-size:11px;white-space:nowrap;line-height:1.2;overflow:visible}

/* Cube mutation picker and editable selected quantities. */
.br-mut-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:16px 0}.br-mut-name{min-width:0}.br-mut-name>b{display:block;line-height:1.4;margin-bottom:9px}.br-mut-item-value{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.br-mut-item-value>strong{font-size:13px;color:#ffd06a;white-space:nowrap}
.tp-modal .br-selected-qty{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid #ffffff12;border-radius:10px;background:#ffffff04}.tp-modal .br-selected-qty button{display:grid;place-items:center;flex:none;width:25px;height:25px;min-height:0;padding:0;border:1px solid #ffffff0d;border-radius:7px;background:#ffffff08;color:#ded9ed;font:inherit;font-size:16px;line-height:1;cursor:pointer}.br-selected-qty b{min-width:21px;text-align:center;font-size:12px;color:#fff}.tp-modal .br-selected-qty button:hover:not(:disabled){background:#8d6dff33;border-color:#9b7fff66}.tp-modal .br-selected-qty button:disabled{opacity:.3;cursor:default}
.br-mutation-cube{display:block;width:23px;height:24px;flex:none;filter:drop-shadow(0 3px 5px #0005)}.tp-modal .br-mutation-trigger{display:inline-flex;align-items:center;gap:7px;max-width:100%;width:auto;min-height:34px;padding:5px 9px;border:1px solid #8979aa40;border-radius:9px;background:linear-gradient(135deg,#2d263b,#1e1a29);color:#eee8fa;font:inherit;font-size:11px;line-height:1.2;text-align:left;cursor:pointer}.br-mutation-trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.br-mutation-trigger>small{flex:none;font-size:9px;color:#cdb7ff;padding:3px 4px;border-radius:4px;background:#a78bfa15}.br-mut-chevron{width:12px;height:12px;flex:none;color:#b9adca}.tp-modal .br-mutation-trigger:hover{border-color:#b595ff;background:#32273f}.br-card-mut{margin-top:9px}.tp-modal .br-card-mut .br-mutation-trigger{justify-content:center;width:100%;padding:5px;gap:4px;font-size:10px;box-sizing:border-box}.br-card-mut .br-mutation-trigger small,.br-card-mut .br-mut-chevron{display:none}.br-card-mut .br-mutation-cube{width:19px;height:20px}
.tp-modal[data-br-mut-busy="1"] [data-br-mut-open],.tp-modal[data-br-mut-busy="1"] [data-br-qty]{pointer-events:none;opacity:.45}
.br-mut-picker-layer{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:18px;border-radius:inherit;background:#0a0713e8;backdrop-filter:blur(8px)}.br-mut-picker{width:100%;max-height:100%;overflow:auto;box-sizing:border-box;border:1px solid #a18bb858;border-radius:18px;padding:18px;background:linear-gradient(145deg,#221b30,#14111e 70%);box-shadow:0 20px 70px #0009}.br-mut-picker-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}.br-mut-picker-head h4{font-size:20px;line-height:1.2;margin:0 0 7px;color:#fff}.br-mut-picker-head p{font-size:12px;margin:0;color:#b2a6c5}.tp-modal .br-mut-picker-close{display:grid;place-items:center;flex:none;width:30px;height:30px;min-height:0;padding:0;border:1px solid #ffffff14;border-radius:8px;background:#ffffff08;color:#b9accb;font:inherit;font-size:22px;line-height:1;cursor:pointer}.br-mut-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.tp-modal .br-mut-option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:113px;padding:12px 4px;border:1px solid #ffffff12;border-radius:13px;background:#ffffff04;color:#e9e1f2;font:inherit;cursor:pointer}.br-mut-option .br-mutation-cube{width:40px;height:42px}.br-mut-option b{font-size:11px;line-height:1.2;max-width:100%;overflow-wrap:anywhere}.br-mut-option>span{font-size:9px;color:#a99ab9}.tp-modal .br-mut-option.selected{border-color:#b597ff;background:linear-gradient(#8261d035,#533c7b30);box-shadow:inset 0 0 20px #a98be719}.br-mut-option.selected:after{content:'✓';position:absolute;right:7px;top:5px;color:#ccb5ff;font-size:12px}.tp-modal .br-mut-option:hover{border-color:#cfb9ff;background:#9d7bea20}.br-mutation-trigger:focus-visible,.br-mut-option:focus-visible,.br-mut-picker-close:focus-visible,.br-selected-qty button:focus-visible{outline:2px solid #c5a4ff;outline-offset:2px}
@media(max-width:600px){.br-mut-item{grid-template-columns:30px minmax(0,1fr) auto;gap:8px}.br-mut-item-value>strong{font-size:11px}.tp-modal .br-mutation-trigger{gap:5px;font-size:10px;padding:5px 6px}.br-mutation-trigger .br-mutation-cube{width:19px;height:20px}.br-mutation-trigger>small{font-size:8px;padding:2px}.br-mut-chevron{display:none}.br-mut-picker-layer{padding:12px}.br-mut-picker{padding:14px}.br-mut-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.br-mut-picker-head h4{font-size:18px}.tp-modal .br-mut-option{min-height:105px}.br-mut-picker-head{margin-bottom:14px}}

.tp-modal:has(.br-mut-picker-layer){position:relative}.br-mut-picker{max-width:460px}

/* Fifteen trade-zone mutation variants. */
.tp-modal .br-mut-option{min-height:98px;padding:9px 4px;gap:6px}.tp-modal .br-mut-option:disabled{opacity:.45;cursor:not-allowed}.tp-modal .br-mut-option:disabled:hover{border-color:#ffffff12;background:#ffffff04}.br-mut-option .br-mutation-cube{width:34px;height:36px}@media(max-width:600px){.tp-modal .br-mut-option{min-height:88px;padding:7px 3px;gap:5px}.br-mut-option .br-mutation-cube{width:29px;height:31px}}

/* Reference-style brainrot transfer dialog. */
.tp-modal.br-flow-modal.br-trade-reference{width:500px;max-width:calc(100vw - 24px);height:auto;max-height:calc(100dvh - 24px);padding:0;border:1px solid #383838;border-radius:4px;background:#1a1a1a;box-shadow:0 24px 90px #0009;color:#ddd}
.br-trade-reference>.br-flow-scroll{flex:0 1 auto;padding:0 23px 18px;min-height:0}.br-trade-reference .modal-top{margin:0 -23px 18px;padding:18px 21px;border-bottom:1px solid #343434;gap:10px}.br-trade-reference .modal-top h3{display:flex;align-items:center;gap:9px;font-size:16px;line-height:1.3;color:#ddd;margin:0}.br-trade-reference .modal-top h3 svg{width:19px;height:19px;flex:none;fill:none;stroke:#4ebd91;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.br-trade-reference .modal-close{background:transparent;border:0;color:#999;width:24px;height:24px;font-size:17px}
.br-trade-reference .br-trade-copy{display:block;margin:0 0 14px}.br-trade-reference .br-trade-copy>label{display:block;font-size:10px;line-height:1.3;letter-spacing:0;color:#999;margin-bottom:7px}.br-trade-reference .br-trade-account{display:block;padding:10px 14px;margin:0 0 7px;min-height:36px;box-sizing:border-box;border:1px solid #373737;border-radius:0;background:#232323;font-size:12px;line-height:1.3;font-weight:600;overflow-wrap:anywhere}
.tp-modal.br-trade-reference .br-trade-copy .pay-copy{position:static;display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:29px;padding:6px 10px;margin:0;transform:none;border:1px solid #36634d;border-radius:0;background:#21362c;color:#71d5a4;font-size:10px;line-height:1.2;cursor:pointer}.br-trade-reference .pay-copy svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5}.tp-modal.br-trade-reference .pay-copy:hover{background:#294636}
.br-trade-reference .br-trade-selection{margin:0 0 10px}.br-trade-reference .br-mut-chips{display:flex;flex-wrap:wrap;gap:5px 12px;max-height:68px;overflow:auto}.br-trade-reference .br-mut-chips>div{padding:0;border:0;gap:6px;font-size:10px}.br-trade-reference .br-mut-chips .br-wait-img{width:26px;height:28px;flex:none}.br-trade-reference .br-mut-chips small{font-size:9px;margin-top:2px}
.br-trade-reference .br-trade-guide{background:#1e2923;border:1px solid #2b4a39;padding:8px 13px}.br-trade-reference .br-trade-steps{padding-left:15px;margin:0;font-size:11px;line-height:1.45;color:#bbb}.br-trade-reference .br-trade-steps li{margin:6px 0;padding-left:0}.br-trade-reference .br-trade-steps b{color:#54bd91}.br-trade-reference .br-trade-total{margin-top:8px;padding:6px 0 0;border:0;border-top:1px solid #ffffff0d;border-radius:0;background:transparent;font-size:11px;line-height:1.3}.br-trade-reference .br-trade-total strong{color:#e9c873}
.br-trade-reference .br-trade-warning{background:#3c2229;border:1px solid #74414c;padding:11px 13px;color:#ff6278;font-size:12px;font-weight:800;line-height:1.4;text-align:center}.br-trade-reference .br-trade-timer{background:#302719;padding:8px 10px;color:#a9a6a0;font-size:11px;line-height:1.3;text-align:center}.br-trade-reference .br-trade-timer strong{color:#ffbe32;font-variant-numeric:tabular-nums}.br-trade-reference .br-trade-timer small{display:block;color:#c4b58f;margin-top:5px}.br-trade-reference #brwMsg:empty{display:none}.br-trade-reference #brwMsg{margin:8px 0 0;min-height:0}
.tp-modal.br-trade-reference>.br-flow-actions{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin:0;padding:14px 23px 16px;border-top:1px solid #343434;background:#1a1a1a}.tp-modal.br-trade-reference>.br-flow-actions button{flex:0 0 auto;width:auto;min-height:33px;padding:8px 14px;margin:0;border:1px solid #525252;border-radius:0;background:#303030;color:#ccc;font-size:11px;line-height:1.2;font-weight:600;box-shadow:none}.tp-modal.br-trade-reference #brwCancel{border-color:#73464c;background:#38272a;color:#ee8991}.tp-modal.br-trade-reference #brwCancel:hover{background:#4b2c32}.tp-modal.br-trade-reference #qaConfirmTrade{flex-basis:100%;font-size:10px;min-height:25px;padding:5px}
@media(max-width:600px),(max-height:720px){.br-trade-reference>.br-flow-scroll{padding:0 18px 12px}.br-trade-reference .modal-top{margin:0 -18px 12px;padding:14px 17px}.br-trade-reference .modal-top h3{font-size:15px}.br-trade-reference .br-trade-copy{margin-bottom:10px}.br-trade-reference .br-trade-copy>label{margin-bottom:5px}.br-trade-reference .br-trade-account{padding:8px 11px;min-height:32px;margin-bottom:5px}.br-trade-reference .br-trade-selection{margin-bottom:8px}.br-trade-reference .br-trade-steps{font-size:10px;line-height:1.4}.br-trade-reference .br-trade-steps li{margin:5px 0}.br-trade-reference .br-trade-warning{padding:9px 10px;font-size:11px}.tp-modal.br-trade-reference>.br-flow-actions{padding:11px 18px 12px;gap:8px}.tp-modal.br-trade-reference>.br-flow-actions button{min-height:31px;font-size:10px;padding:7px 12px}}

.mut-eclipse{color:#ffe97b!important;background:linear-gradient(125deg,#17131c,#45350f)!important;border-color:#cc9b38!important}

.mut-gem.eclipse{background:url("img/mutation-icon-eclipse.webp") center/contain no-repeat!important;border:0!important;box-shadow:none!important;transform:none!important;clip-path:none!important}

/* Exchange actions must not make the entire withdrawal row taller. */
#bulkWithdrawBody .bulk-item-wrap.no-stock .bulk-item{min-height:60px;padding:6px 10px}
#bulkWithdrawBody .bulk-item-wrap.no-stock .bulk-pic{width:36px;height:42px}
#bulkWithdrawBody .bulk-item-wrap .bulk-exchange{min-height:28px;line-height:16px;padding:5px 10px;margin:0 8px 8px}
@media(max-width:720px){#bulkWithdrawBody .bulk-item-wrap.no-stock .bulk-item{min-height:76px;padding:7px 8px}#bulkWithdrawBody .bulk-item-wrap.no-stock .bulk-pic{width:32px;height:42px}}

img[src*="rainbow-"],img[src*="radioactive-"],img[src*="yinyang-"]{animation:none!important;object-fit:contain;object-position:center}
.case-card.th-prismatic{border-color:#be7ff0;background:linear-gradient(145deg,#40234270,#172933a0,#22182f);box-shadow:inset 0 0 28px #ab54ee18}.th-prismatic .cc-price{border-color:#b384ff;background:linear-gradient(110deg,#8b63f826,#4bd6e82e,#ffc95726)}.case-art.prismatic{background:radial-gradient(ellipse,#c478ef28,transparent 68%);filter:drop-shadow(0 0 30px #ce6df63d)}.case-art.prismatic .case-ring{border-color:#b683ed88}.case-art.prismatic .case-ring.r2{border-color:#75d9e466}
.deposit-reward-card{position:relative}.reward-case-progress{display:block;padding:9px 4px 2px;color:#a9a0bd;font-size:11px;line-height:1.4;min-height:26px}.reward-available .reward-case-progress{color:#80dfb5}.reward-available{border-color:#65b893!important}.reward-used{opacity:.65}.deposit-reward-panel #spinCountRow{display:none!important}
@media(prefers-reduced-motion:reduce){img[src*="rainbow-"]{animation:none}}
/* SABHelper's own wallet styling. */
.tp-modal.br-flow-modal.br-trade-reference{border-radius:22px;border-color:#71549755;background:linear-gradient(155deg,#1d172b,#100e17 75%);box-shadow:0 25px 100px #000a,0 0 35px #7953f318}
.br-trade-reference .modal-top{border-color:#ffffff0d}.br-trade-reference .modal-top h3{color:#f4efff}.br-trade-reference .modal-top h3 svg{stroke:#b79aff;background:#8f67f325;border-radius:8px;padding:5px;box-sizing:content-box}.br-trade-reference .modal-close{background:#ffffff08;border:1px solid #ffffff0b;border-radius:9px;color:#b8adc8}
.br-trade-reference .br-trade-copy>label{color:#b4a7c8;letter-spacing:.6px;font-size:10px}.br-trade-reference .br-trade-account{border-radius:11px;border-color:#ffffff13;background:#ffffff04;color:#f6f1ff}.tp-modal.br-trade-reference .br-trade-copy .pay-copy{border-radius:9px;border-color:#9367ef50;background:#8654e71a;color:#c6acff;min-height:32px}.tp-modal.br-trade-reference .pay-copy:hover{background:#9465eb30}
.br-trade-reference .br-trade-guide{border-radius:13px;background:#8c68d609;border-color:#9b76d72b;padding:10px 13px}.br-trade-reference .br-trade-steps{color:#c1b8ce}.br-trade-reference .br-trade-steps b{color:#b89aff}.br-trade-reference .br-trade-warning{margin-top:10px;border-radius:11px;background:#f1b8590b;border-color:#dba24933;color:#e5c182;font-weight:600;text-align:left}.br-trade-reference .br-trade-timer{margin-top:8px;border-radius:10px;background:#ffffff03;color:#a99cb9}.br-trade-reference .br-trade-timer strong{color:#c4a4ff}.br-trade-reference .br-trade-total strong{color:#f4ce80}
.tp-modal.br-trade-reference>.br-flow-actions{border-color:#ffffff0b;background:#15111e;box-shadow:none;border-radius:0 0 22px 22px}.tp-modal.br-trade-reference>.br-flow-actions button{border-radius:10px;border-color:#ffffff16;background:#ffffff05;color:#d5c9e3}.tp-modal.br-trade-reference #brwCancel{border-color:#cf6c8940;background:#d16c8010;color:#df9bad}.tp-modal.br-trade-reference #brwClose{border-color:#946bf4;background:linear-gradient(115deg,#8359e8,#7047d7);color:#fff}.tp-modal.br-trade-reference #brwClose:hover{background:linear-gradient(115deg,#956cf2,#8156e7)}

.case-card.th-nuclear{border-color:#77c75988;background:linear-gradient(145deg,#26351f,#10140f)}.th-nuclear .cc-price{border-color:#94db66;color:#c9f7aa}.case-card.th-balance{border-color:#b1b1bd80;background:linear-gradient(145deg,#30303b,#101015)}.th-balance .cc-price{border-color:#c2bfce;color:#f1eef9}
/* One mutation marker per item, anchored to its actual card, never to the sprite. */
:where(.case-item,.upg-card,.item-card,.ex-card,.loot-chip,.bulk-item,.br-mut-item,.br-mut-chips>div):has(.sab-mutation-badge),:where(*):has(>.sab-mutation-badge){position:relative}
.sab-mutation-badge{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:23px;height:25px;z-index:2;pointer-events:none;line-height:0;filter:drop-shadow(0 1px 3px #000b)}
.sab-mutation-badge .br-mutation-cube{width:100%;height:100%;display:block;flex-shrink:0}
.br-mut-item>.sab-mutation-badge,.br-mut-chips>div>.sab-mutation-badge{width:17px;height:19px;top:4px;right:4px}
.loot-top-left>.sab-mutation-badge{left:38px;right:auto;top:0}
.upg-mini>.sab-mutation-badge{width:17px;height:19px;top:2px;right:2px}
@media(max-width:600px){.sab-mutation-badge{width:21px;height:23px;top:6px;right:6px}}

.sab-mutation-badge .br-mutation-cube{object-fit:contain;filter:none}.sab-mutation-badge{width:27px;height:29px;top:5px;right:5px}.br-mut-picker .br-mutation-cube{object-fit:contain}

.sab-mutation-badge .br-mutation-cube{object-fit:contain;filter:none}.sab-mutation-badge{width:27px;height:29px;top:5px;right:5px}.br-mut-picker .br-mutation-cube{object-fit:contain}

.case-card.th-eclipse{border-color:#e4af405e;background:radial-gradient(ellipse at 50% 50%,#844f4226,transparent 70%),linear-gradient(145deg,#21132f,#100d15)}.th-eclipse .cc-price{border-color:#e4af4088;color:#ffe095}.case-art.eclipse{background:radial-gradient(ellipse,#a566ca26,transparent 70%)}

/* Mutation controls occupy a corner, never change the card height. */
.tp-modal .br-split-row{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:5px 7px;min-height:26px;width:auto;border:1px solid #9472d74d;border-radius:7px;background:#8456d414;color:#c9b3ee;font:inherit;font-size:10px;line-height:1.2;cursor:pointer}.br-split-row svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round}.tp-modal .br-split-row:hover:not(:disabled){background:#8456d433;border-color:#b390ef}.tp-modal .br-split-row:disabled{opacity:.35;cursor:default}.br-split-row:focus-visible{outline:2px solid #b595ff;outline-offset:2px}.tp-modal[data-br-mut-busy="1"] [data-br-split]{pointer-events:none;opacity:.4}
.tp-modal .br-pick,.tp-modal .br-pick:has(.br-card-mut){position:relative;height:194px;min-height:194px;padding:14px 7px 10px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:6px}
.tp-modal .br-pick>.upg-img{height:78px;width:90%;object-fit:contain;margin:0}.tp-modal .br-pick>.upg-name{height:34px;min-height:34px;display:flex;align-items:center;justify-content:center;margin:0;font-size:11px;line-height:1.35}.tp-modal .br-pick>.upg-price{font-size:12px;margin:0}.tp-modal .br-pick>.br-qty{margin-top:auto}
.tp-modal .br-card-mut{position:absolute;top:4px;right:4px;width:28px;height:29px;margin:0}.tp-modal .br-card-mut .br-mutation-trigger{width:28px;height:29px;min-height:0;padding:3px;border-radius:7px;background:#14121de6;border:1px solid #8c79ad40}.br-card-mut .br-mutation-trigger>span,.br-card-mut .br-mutation-trigger>small{display:none}.br-card-mut .br-mutation-cube{width:22px;height:23px}
.br-add-mutation{display:block;width:100%;padding:10px 8px;margin:8px 0;border:1px dashed #8265d26b;border-radius:10px;background:#7c51e60b;color:#bfa4ff;font:inherit;font-size:11px;text-align:left;cursor:pointer}.br-add-mutation:disabled{opacity:.4;cursor:default}.br-line-pic{position:relative;display:grid;place-items:center;width:42px;height:46px}.br-line-pic>.br-wait-img{width:100%;height:100%;object-fit:contain}.br-line-pic>.sab-mutation-badge{display:none}
.upg-target-card{position:relative;min-width:0}.upg-target-card>.upg-card{width:100%;height:100%;box-sizing:border-box}.upg-target-card .upg-card>.sab-mutation-badge{display:none}.upg-mutation-toggle{position:absolute;right:5px;top:5px;z-index:2;display:grid;place-items:center;width:30px;height:31px;padding:4px;border:1px solid #9a83b33a;border-radius:8px;background:#161322e8;cursor:pointer;box-shadow:0 2px 7px #0005}.upg-mutation-toggle .br-mutation-cube{width:23px;height:24px}.upg-mutation-toggle:hover{border-color:#bb9bff;background:#342747}.upg-mutation-toggle:focus-visible{outline:2px solid #b594ff;outline-offset:2px}#upgRight{position:relative}#upgRight>.sab-mutation-badge{display:none}
.catalog-mut-layer{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;padding:18px;background:#08060edb;backdrop-filter:blur(7px);box-sizing:border-box}.catalog-mut-dialog{display:flex;flex-direction:column;width:min(440px,100%);max-height:calc(100dvh - 36px);border:1px solid #79668e66;border-radius:18px;background:linear-gradient(150deg,#211a2e,#13101c 65%);box-shadow:0 24px 90px #000b;color:#eee8fa;overflow:hidden}.catalog-mut-dialog header{display:flex;justify-content:space-between;gap:12px;padding:18px 18px 14px;border-bottom:1px solid #ffffff0b}.catalog-mut-dialog h3{font-size:20px;line-height:1.25;margin:0 0 6px}.catalog-mut-dialog header p{font-size:12px;color:#aaa0bb;margin:0}.catalog-mut-dialog [data-mut-close]{width:30px;height:30px;flex:none;padding:0;border:1px solid #ffffff15;border-radius:8px;background:#ffffff06;color:#bdb0ce;font-size:22px;cursor:pointer}.catalog-mut-list{padding:9px;overflow:auto;overscroll-behavior:contain;display:grid;gap:5px}.catalog-mut-row{position:relative;display:grid;grid-template-columns:44px 24px minmax(0,1fr) auto 12px;align-items:center;gap:9px;width:100%;padding:7px 10px;border:1px solid #ffffff0c;border-radius:10px;background:#ffffff03;color:inherit;font:inherit;text-align:left;cursor:pointer}.catalog-mut-row.selected{border-color:#b190ff;background:#8c63e41c}.catalog-mut-row:hover{border-color:#ac88ec;background:#a775eb14}.catalog-mut-row:focus-visible{outline:2px solid #c19cff;outline-offset:-2px}.catalog-mut-art{position:relative;width:44px;height:39px;display:grid;place-items:center}.catalog-mut-img{width:100%;height:100%;object-fit:contain}.catalog-mut-art .sab-mutation-badge{display:none}.catalog-mut-row>.br-mutation-cube{width:24px;height:26px}.catalog-mut-label b{display:block;font-size:12px}.catalog-mut-label small{display:block;margin-top:3px;color:#a99abb;font-size:10px}.catalog-mut-row>strong{color:#ffd06a;font-size:12px;white-space:nowrap}.catalog-mut-row>i{color:#c5a7ff;font-size:12px;font-style:normal}
/* Static material tint of the unchanged Default sprite; never animate or rotate. */
.material-gold{filter:sepia(1) saturate(3) hue-rotate(355deg)}.material-diamond{filter:grayscale(1) sepia(1) saturate(5) hue-rotate(140deg)}.material-candy{filter:grayscale(1) sepia(1) saturate(5) hue-rotate(270deg)}.material-rainbow{filter:grayscale(1) sepia(1) saturate(5) hue-rotate(205deg)}.material-radioactive{filter:grayscale(1) sepia(1) saturate(7) hue-rotate(50deg)}.material-lava{filter:grayscale(1) sepia(1) saturate(7) hue-rotate(340deg)}.material-cursed{filter:grayscale(1) sepia(1) saturate(6) hue-rotate(310deg) brightness(.7)}.material-divine{filter:grayscale(1) sepia(1) saturate(2) brightness(1.3)}.material-galaxy{filter:grayscale(1) sepia(1) saturate(8) hue-rotate(230deg)}.material-yinyang{filter:grayscale(1) contrast(3)}.material-cyber{filter:grayscale(1) sepia(1) saturate(4) hue-rotate(140deg) brightness(.8)}.material-bloodrot{filter:grayscale(1) sepia(1) saturate(12) hue-rotate(310deg) brightness(.7)}.material-phantom{filter:grayscale(1) brightness(.65) contrast(1.8)}.material-crystal{filter:grayscale(1) sepia(1) saturate(2) hue-rotate(140deg) brightness(1.3)}.material-eclipse{filter:grayscale(1) sepia(1) saturate(5) contrast(2) brightness(.7)}
@media(max-width:600px){.catalog-mut-layer{padding:12px}.catalog-mut-dialog{max-height:calc(100dvh - 24px)}.catalog-mut-row{gap:7px;padding:7px;grid-template-columns:36px 22px minmax(0,1fr) auto 10px}.catalog-mut-art{width:36px;height:36px}.catalog-mut-row>strong{font-size:11px}.catalog-mut-dialog h3{font-size:18px}}

/* Symmetric upgrade panels and one corner marker for a single selected item. */
.br-trade-selection .sab-mutation-badge{display:none!important}
.upg-stage{grid-template-columns:minmax(0,1fr) minmax(240px,300px) minmax(0,1fr)}
#upgLeft,#upgRight{box-sizing:border-box;min-width:0;align-self:stretch;overflow-wrap:anywhere}
#upgLeft.upg-single,#upgRight.filled{display:grid;grid-template-rows:128px 40px 24px;align-content:center;justify-items:center;gap:4px;padding:22px 18px}
#upgLeft.upg-single .upg-mini-row,#upgLeft.upg-single .upg-mini{display:contents}
#upgLeft.upg-single .upg-mini>img.upg-img,#upgRight.filled>.upg-big-img{grid-row:1;align-self:center;width:120px;height:120px;max-width:100%;object-fit:contain;margin:0}
#upgLeft.upg-single .upg-mini>div,#upgRight.filled>b{grid-row:2;align-self:center;display:flex;align-items:center;justify-content:center;margin:0;font-size:14px;font-weight:700;line-height:1.3;max-width:100%}
#upgLeft.upg-single>div:last-of-type,#upgRight.filled>.upg-price{grid-row:3;align-self:center;margin:0;font-size:14px;line-height:1.3}
#upgLeft>.upg-source-mutation,#upgRight>.upg-mutation-toggle{position:absolute;inset:10px 10px auto auto;box-sizing:border-box;width:36px;height:36px;padding:4px;display:grid;place-items:center;border:1px solid #9a83b33a;border-radius:8px;background:#161322e8;filter:none}
#upgLeft>.upg-source-mutation .br-mutation-cube,#upgRight>.upg-mutation-toggle .br-mutation-cube{width:26px;height:26px;object-fit:contain}
@media(max-width:760px){.upg-stage{grid-template-columns:1fr}#upgLeft.upg-single,#upgRight.filled{grid-template-rows:100px 36px 24px;padding:20px 14px}#upgLeft.upg-single .upg-mini>img.upg-img,#upgRight.filled>.upg-big-img{width:96px;height:96px}}

/* Four free cases, immediately above the BTC cases. */
.free-cases-layout #spinChooser:empty{display:none}
#paidCardsBasic:empty{display:none!important}
#paidCardsExtra > #freeCasesGroup{display:grid;grid-column:1/-1}
.deposit-result-progress{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 14px;padding:13px 15px;border:1px solid #a077dc55;border-radius:12px;background:#9563e012;text-align:left}.deposit-result-progress p{margin:0;flex:1;min-width:170px;font-size:12px;line-height:1.5;color:#d3bdeb}.deposit-result-progress button{font-size:11px;padding:9px 13px;width:auto}
.free-cases-layout #freeRemind{display:none!important}.free-cases-title{margin-top:32px;margin-bottom:18px}.free-cases-title>span{font-size:20px;font-weight:900;letter-spacing:.6px;color:#f4efff}.free-cases-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.free-cases-grid .free-case-card{position:relative;min-width:0;min-height:304px;display:flex;flex-direction:column;box-sizing:border-box;padding:14px 12px 12px;border-color:#ffffff20;background:linear-gradient(155deg,#1c1825,#101016);box-shadow:none}.free-cases-grid .cc-title{font-size:16px;line-height:1.2}.free-cases-grid .cc-sub{font-size:10px}.free-cases-grid .cc-art{height:140px;flex:1;min-height:115px;margin:5px 0}.free-cases-grid .cc-art img{max-height:135px;object-fit:contain}.free-cases-grid .cc-price{margin-top:auto;white-space:normal;min-height:36px;display:grid;place-items:center;padding:7px 5px;font-size:11px;line-height:1.3;border-color:#9f80dd55;background:#7950b314;color:#d9c8f5}.free-cases-grid .cc-badges{min-height:19px;margin-bottom:8px}.free-cases-grid .reward-case-progress{font-size:10px;min-height:14px;padding-top:7px;text-align:center}.free-cases-grid .reward-available .cc-price{color:#9af2bc;background:#47b77b16;border-color:#66c59188}.free-cases-grid .reward-used .cc-price{color:#a89cb8}.free-cases-grid .free-daily-wait .cc-price{color:#e1c48b}.deposit-level-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:9px}.deposit-level-steps>span{display:flex;align-items:center;flex-direction:column;gap:3px;padding:5px 2px;border:1px solid #ffffff10;border-radius:7px;background:#ffffff03;color:#7d738c}.deposit-level-steps b{font-size:9px}.deposit-level-steps small{font-size:9px}.deposit-level-steps>.current{border-color:#ac81ed88;color:#e5d3ff;background:#a777ed18}.deposit-level-steps>.done{color:#8cd4aa;border-color:#67b68b33}.deposit-next-level{margin:6px auto 12px;display:block}.free-cases-grid .reward-used{opacity:.75}
@media(max-width:800px){.free-cases-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.free-cases-title>span{font-size:18px}.free-cases-grid .free-case-card{min-height:300px}}
@media(max-width:430px){.free-cases-grid{gap:9px}.free-cases-grid .free-case-card{padding:10px 8px;min-height:275px}.free-cases-grid .cc-title{font-size:14px}.free-cases-grid .cc-art{height:115px;min-height:95px}.free-cases-grid .cc-art img{max-height:110px}.free-cases-grid .cc-price{font-size:10px}.free-cases-title>span{font-size:16px}}
/* Dedicated mutation collection, with static illustrated chest artwork. */
#paidCardsExtra > #mutationCasesGroup{display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:8px}
#mutationCasesGroup .case-card{min-width:0;width:100%;min-height:300px;padding:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:none}
#mutationCasesGroup .cc-title{font-size:18px;line-height:1.25;min-height:45px}#mutationCasesGroup .cc-sub{font-size:11px;color:#a5a1b4}
#mutationCasesGroup .cc-art{height:190px;min-height:170px;flex:1;display:grid;place-items:center;margin:4px -8px}
#mutationCasesGroup .sc-case{width:100%;height:100%;display:grid;place-items:center}#mutationCasesGroup .sc-case img{width:100%;height:185px;max-width:250px;object-fit:contain;animation:none;transform:none}
#mutationCasesGroup .sc-case .sp,.free-cases-grid [data-paid="referral"] .sc-case .sp{display:none}
#mutationCasesGroup .cc-price{width:100%;margin-top:auto;min-height:36px;display:flex;align-items:center;justify-content:center;gap:4px;border-radius:10px;font-size:14px;background:#ffffff06}
#mutationCasesGroup .th-prismatic{border-color:#ba84ec66;background:radial-gradient(ellipse at 50% 55%,#9d4c9c24,transparent 70%),linear-gradient(145deg,#201829,#101016)}
#mutationCasesGroup .th-balance{border-color:#b5bbc25c;background:radial-gradient(ellipse at 50% 55%,#c1c6d31a,transparent 70%),linear-gradient(145deg,#202128,#101014)}
#mutationCasesGroup .th-nuclear{border-color:#9bd74b66;background:radial-gradient(ellipse at 50% 55%,#81c52f20,transparent 70%),linear-gradient(145deg,#1b2216,#101410)}
.free-cases-grid [data-paid="referral"]{background:radial-gradient(ellipse at 50% 48%,#93633d22,transparent 70%),linear-gradient(155deg,#261c32,#131017);border-color:#c194e344}
.free-cases-grid [data-paid="referral"] .sc-case img{max-width:100%;width:185px;height:150px;object-fit:contain;animation:none;transform:none}
.mutation-cases-title>span{font-size:20px;font-weight:800;color:#f4efff}
@media(max-width:650px){#paidCardsExtra > #mutationCasesGroup{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#mutationCasesGroup .case-card{min-height:265px;padding:12px}#mutationCasesGroup .cc-title{font-size:15px}#mutationCasesGroup .cc-art{height:150px;min-height:140px}#mutationCasesGroup .sc-case img{height:150px}.mutation-cases-title>span{font-size:17px}}
/* New collections share catalogue columns; legacy case geometry stays untouched. */
html body #paidCardsExtra > :is(#mutationCasesGroup,#freeCasesGroup){display:contents;max-width:none;margin:0}
html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card{box-sizing:border-box;width:auto;min-width:0;max-width:none;height:auto;min-height:200px;padding:12px;display:grid;grid-template-rows:auto auto minmax(104px,1fr) 38px;gap:0;align-items:stretch;text-align:left}
html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card .cc-title{grid-row:1;font-size:14px;line-height:1.2;min-height:0;margin:0;align-self:start}
html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card .cc-sub{grid-row:2;font-size:10px;line-height:1.3;margin:3px 0 0;align-self:start;color:#a5a1b4}
html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card .cc-art{grid-row:3;height:auto;min-height:0;padding:0;margin:0;display:grid;place-items:center}
html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card .sc-case{height:92px;max-height:92px;min-height:0;width:100%;max-width:160px;display:grid;place-items:center}
html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card .sc-case img{width:auto;max-width:100%;height:92px;max-height:92px;object-fit:contain;transform:none}
html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card .cc-price{grid-row:4;box-sizing:border-box;width:100%;height:38px;min-height:38px;margin:0;padding:5px;display:flex;align-items:center;justify-content:center;gap:4px;font-size:12px;line-height:1.25;white-space:normal;border-radius:11px;text-align:center}
html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card :is(.cc-badges,.deposit-level-steps,.reward-case-progress){display:none}
html body #caseGroups .case-cat{width:100%;max-width:none;grid-column:1/-1;margin:16px 0 0;font-size:16px}
html body #caseGroups .case-cat span{font-size:inherit}
html body #caseGroups #mutationCasesTitle>span{white-space:normal;min-width:0;flex-shrink:1;max-width:100%;text-align:center;line-height:1.35}
@media(max-width:600px){html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card{height:auto;min-height:210px;padding:10px}html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card .cc-title{font-size:13px}html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card .cc-price{font-size:11px}html body #caseGroups :is(#mutationCasesGroup,#freeCasesGroup) .case-card .sc-case img{max-width:100%;max-height:92px}}

#upgSection>.upg-brand-title{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 0 30px;padding:0;color:#f6f4ff;font-size:28px;font-weight:900;line-height:1.2;letter-spacing:-.6px}
#upgSection>.upg-brand-title>svg{flex:none;width:24px;height:28px;fill:#9b78ff}
@media(max-width:760px){#upgSection>.upg-brand-title{gap:8px;margin-bottom:22px;font-size:23px}#upgSection>.upg-brand-title>svg{width:20px;height:24px}}
/* Emphasize the upgrade stage; keep inventory cards compact. */
#upgSection .upg-stage{grid-template-columns:minmax(0,1fr) 340px minmax(0,1fr);gap:20px}
#upgSection .upg-gauge{width:276px;height:276px}
#upgSection .upg-inner b{font-size:44px}
#upgSection .upg-side{min-height:350px}
#upgLeft.upg-single,#upgRight.filled{grid-template-rows:164px 42px 26px}
#upgLeft.upg-single .upg-mini>img.upg-img,#upgRight.filled>.upg-big-img{width:156px;height:156px}
#upgSection .upg-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;align-items:start}
#upgSection .upg-grid .upg-card{min-width:0;padding:9px 5px;gap:4px;border-radius:11px;font-size:11px;line-height:1.25;overflow-wrap:anywhere}
#upgSection .upg-grid .upg-card img.upg-img,#upgSection .upg-grid .upg-card .emoji-pic{width:58px;height:58px}
#upgSection .upg-grid .upg-card .emoji-pic{font-size:34px}
#upgSection .upg-grid .upg-price{font-size:12px}
#upgMine>.sub,#upgMine>.empty-note{grid-column:1/-1;margin:8px 0}
#upgSection{scroll-margin-top:90px}
#upgSection #upgGo{display:flex;align-items:center;justify-content:center;gap:9px;box-sizing:border-box;flex:0 0 44px;width:258px;max-width:100%;height:44px;min-height:44px;max-height:44px;padding:0 16px;border:1px solid #a68af2;border-radius:10px;background:linear-gradient(180deg,#8960e4,#7148cc);color:#fff;font-size:15px;font-weight:700;line-height:1.3;box-shadow:inset 0 1px 0 #ffffff20;transition:background .16s,border-color .16s,transform .16s}
#upgGo .upg-go-icon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#upgGo .upg-go-label{display:inline;white-space:nowrap}
#upgSection #upgGo:hover:not(:disabled){background:linear-gradient(180deg,#986fed,#8055d9);border-color:#c1a6ff;box-shadow:inset 0 1px 0 #ffffff20;transform:translateY(-1px)}
#upgSection #upgGo:active:not(:disabled){transform:translateY(0);background:#7148cc}
#upgSection #upgGo:focus-visible{outline:2px solid #dac9ff;outline-offset:3px}
#upgSection #upgGo:disabled{opacity:1;background:#292332;border-color:#44394f;color:#aa9cb7;box-shadow:none;transform:none;cursor:not-allowed}
@media(prefers-reduced-motion:reduce){#upgSection #upgGo{transition:none}}
#upgMine>.btn-primary{grid-column:1/-1;justify-self:start;align-self:start;min-height:44px;padding:10px 24px}
@media(min-width:761px) and (max-width:1050px){#upgSection .upg-stage{grid-template-columns:minmax(0,1fr) 280px minmax(0,1fr);gap:12px}#upgSection .upg-gauge{width:268px;height:268px}#upgSection .upg-side{min-height:318px;padding:14px}}
@media(max-width:760px){#upgSection .upg-stage{grid-template-columns:minmax(0,1fr);gap:14px}#upgSection .upg-gauge{width:248px;height:248px}#upgSection .upg-center{width:100%;max-width:340px;justify-self:center}#upgSection .upg-inner b{font-size:38px}#upgSection .upg-side{min-height:130px}#upgLeft.upg-single,#upgRight.filled{grid-template-rows:116px 40px 24px;padding:16px}#upgLeft.upg-single .upg-mini>img.upg-img,#upgRight.filled>.upg-big-img{width:110px;height:110px}#upgSection .upg-grid{grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:7px}#upgSection .upg-grid .upg-card img.upg-img,#upgSection .upg-grid .upg-card .emoji-pic{width:54px;height:54px}}

.sab-volume-settings{margin:4px 0 20px;padding:15px;border:1px solid var(--hair);border-radius:14px;background:var(--glass)}
.sab-volume-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:13px;font-weight:700;color:var(--text)}
.sab-volume-heading output{font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-dim)}
.sab-volume-controls{display:flex;align-items:center;gap:12px;min-width:0}
#sabVolumeMute{display:grid;place-items:center;flex:none;width:32px;height:32px;padding:5px;border:0;border-radius:8px;background:transparent;color:var(--accent);cursor:pointer}
#sabVolumeMute svg{width:22px;height:22px}#sabVolumeMute:hover{background:var(--glass)}
#sabVolumeMute .sab-speaker-muted{display:none}#sabVolumeMute.is-muted .sab-speaker-muted{display:block}#sabVolumeMute.is-muted .sab-speaker-waves{display:none}
#sabVolume{--sab-volume:100%;appearance:none;-webkit-appearance:none;min-width:0;width:100%;height:6px;padding:0;margin:12px 0;cursor:pointer;border:0;border-radius:20px;background:linear-gradient(to right,var(--accent) 0 var(--sab-volume),#ffffff24 var(--sab-volume) 100%);touch-action:pan-y}
#sabVolume::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:16px;height:16px;border:0;border-radius:50%;background:#fff;box-shadow:0 1px 5px #0005}
#sabVolume::-moz-range-thumb{width:16px;height:16px;border:0;border-radius:50%;background:#fff;box-shadow:0 1px 5px #0005}
#sabVolume:focus-visible,#sabVolumeMute:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.sab-volume-settings p{margin:9px 0 0;font-size:11px;line-height:1.5;color:var(--text-dim)}

html.sab-access-pending body{overflow:hidden!important}
html.sab-access-pending body > #__nuxt .sab-site-shell > :not(#sabAccessScreen),html.sab-access-pending body > :not(#__nuxt):not(script):not(style){visibility:hidden!important;pointer-events:none!important}
#sabAccessScreen{position:fixed;inset:0;z-index:2147483647;display:grid;place-items:center;overflow:auto;padding:24px;box-sizing:border-box;background:radial-gradient(ellipse at 50% 30%,#211335 0%,#0d0b14 48%,#08080c 85%);color:#f7f5ff;font-family:inherit;text-align:center}
#sabAccessScreen[hidden],#sabAccessScreen [hidden]{display:none!important}
.site-access-card{width:min(100%,420px);padding:36px 24px;box-sizing:border-box;border:1px solid #7762994d;border-radius:24px;background:#17131fbb;box-shadow:0 20px 80px #0006}
.site-access-brand{font-size:20px;font-weight:800;letter-spacing:-.4px;margin-bottom:32px}
.site-access-mark{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 24px;border:1px solid #ab8af559;border-radius:20px;background:#9369f51a;color:#cdb5ff}
.site-access-mark svg{width:34px;height:34px}
#sabAccessScreen h1{font-size:clamp(25px,5vw,32px);line-height:1.15;margin:0 0 14px;letter-spacing:-.6px}
#sabAccessScreen p{font-size:14px;line-height:1.6;color:#afa6bd;margin:0 0 24px}
#sabAccessScreen button{font:inherit;cursor:pointer}
.site-access-login{margin-top:12px;border:0;background:transparent;color:#ba9bef;font-size:13px;padding:10px 18px}
.site-access-form{text-align:left;margin-top:20px;padding-top:22px;border-top:1px solid #ffffff12}
.site-access-form label{display:block;color:#c4bbd4;font-size:12px;margin:0 0 7px}
.site-access-form input{display:block;width:100%;box-sizing:border-box;background:#0d0b13;color:#fff;border:1px solid #594967;border-radius:10px;padding:12px 14px;font:inherit;margin-bottom:14px;min-height:46px}
.site-access-form input:focus{outline:2px solid #9d75f6;outline-offset:2px}
.site-access-form .btn-primary{width:100%;min-height:46px}
#sabAccessScreen [data-access-message]{color:#e3b4bb;font-size:12px;margin:12px 0 0}
.site-access-admin{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:18px;border:1px solid #8d68cf55;background:#8d68cf0c;border-radius:14px;margin:4px 0 18px}
.site-access-admin>div{flex:1;min-width:200px}
.site-access-admin strong{font-size:15px}.site-access-admin p{font-size:12px;color:#a89eb8;margin:6px 0 0;line-height:1.5}
.site-access-admin>button{min-height:42px;border-color:#9571cf80;color:#ddcaff}.site-access-admin>button.is-closed{background:#7651cb;color:#fff}
.site-access-admin .release-msg{flex-basis:100%;margin:0}.site-access-admin .release-msg:empty{display:none}
@media(max-width:480px){#sabAccessScreen{padding:16px}.site-access-card{padding:30px 20px}.site-access-admin>button{width:100%}}

/* Scoped event scene. Existing case artwork and card geometry stay intact. */
.hw-event{--hw-red:#c44b3c;--hw-gold:#e0b77c;--hw-line:#594138;--hw-muted:#a99e9c;color:#f4eae0;max-width:1260px;margin:0 auto;padding:18px 16px 36px}.hw-event[hidden]{display:none!important}.hw-event button{font:inherit;color:inherit;cursor:pointer}.hw-event button:disabled{cursor:default;opacity:.45}.hw-event button:focus-visible,.hw-dialog button:focus-visible,.hw-event a:focus-visible{outline:2px solid #f6cd91;outline-offset:5px}.hw-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px}.hw-back{color:#bcaeaa;text-decoration:none}.hw-season{letter-spacing:.22em;color:var(--hw-gold);font-size:10px}.hw-rules-btn,.hw-refresh{border:0;background:none;color:#bcaeaa!important;font-size:11px!important;padding:8px}.hw-tabs{display:flex;justify-content:center;gap:6px;margin:24px auto 28px;padding:5px;width:fit-content;max-width:100%;border:1px solid #46332f;border-radius:12px;background:#171111}.hw-tabs button{background:none;border:0;border-radius:8px;padding:13px 20px;display:flex;gap:9px;align-items:center;color:#bba8a0;font-size:12px;font-weight:700}.hw-tabs button[aria-selected=true]{background:linear-gradient(120deg,#73372c,#442320);box-shadow:inset 0 1px #b67b5a55;color:#ffe5bf}.hw-tabs svg{width:24px;height:16px}.hw-heading{text-align:center;margin:0 0 28px}.hw-eyebrow{display:block;color:var(--hw-gold);font-size:9px;font-weight:700;letter-spacing:.22em;line-height:1.6}.hw-heading h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,4vw,58px);font-weight:700;line-height:1.13;margin:11px 0 12px;letter-spacing:-.035em;color:#ffe9d0;text-shadow:0 3px 24px #b63c1733}.hw-heading p{font-size:12px;line-height:1.6;color:var(--hw-muted);margin:0}.hw-layout{display:grid;grid-template-columns:minmax(0,1fr) 288px;align-items:start;gap:18px}.hw-play{min-width:0}.hw-scene{position:relative;isolation:isolate;overflow:hidden;min-height:490px;border:1px solid #6b4434;border-radius:16px;background:#100b10;box-shadow:0 16px 55px #0007,inset 0 0 40px #000}.hw-scene-bg{position:absolute;inset:0;z-index:-3;background-image:linear-gradient(0deg,#110a0ce6,transparent 45%,#0b060a33),url('img/dracula-courtyard-light.webp');background-position:center;background-size:cover}.hw-table .hw-scene-bg{background-image:linear-gradient(0deg,#10090c77,transparent 60%),url('img/devil-dealer-light.webp');background-position:50% 38%}.hw-table{min-height:490px}.hw-fog{position:absolute;inset:45% -30% -20%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 25% 50%,#d2a99d14,transparent 45%),radial-gradient(ellipse at 70% 65%,#d2a99d1c,transparent 55%);filter:blur(12px);animation:hw-mist 16s ease-in-out infinite alternate}.hw-ember{position:absolute;left:calc(7% + var(--i)*7.5%);bottom:10%;width:3px;height:3px;border-radius:50%;background:#f29a58;box-shadow:0 0 8px #e44e27;pointer-events:none;opacity:0;animation:hw-embers calc(4s + var(--i)*.3s) linear infinite;animation-delay:calc(var(--i)*-.8s);z-index:1}.hw-stages{position:absolute;top:22px;left:50%;transform:translateX(-50%);display:flex;gap:26px}.hw-stages:before{content:'';position:absolute;left:18px;right:18px;top:16px;height:1px;background:#a2846755;z-index:-1}.hw-stages span{display:grid;place-items:center;width:33px;height:33px;border:1px solid #8c6952;border-radius:50%;background:#1d1417;color:#bca88c;font:15px Georgia,serif}.hw-stages .current{background:#78402b;color:#ffe6b4;box-shadow:0 0 18px #a84c3f66}.hw-stages .done{background:#333627;border-color:#b4b76b;color:#f4eac4}.hw-gates{position:absolute;left:8%;right:8%;bottom:64px;display:flex;gap:3%;align-items:flex-end;perspective:900px}.hw-gate{position:relative;flex:1;min-width:0;aspect-ratio:200/310;border:0;background:none;padding:0;transition:filter .25s,transform .25s;opacity:1!important;perspective:700px}.hw-gate>svg{display:block;width:100%;height:100%;position:relative;z-index:2;pointer-events:none}.hw-gate:not(:disabled):hover{filter:drop-shadow(0 0 15px #c98f4b77);transform:translateY(-5px)}.hw-door-pair{position:absolute;left:14%;right:14%;top:27%;bottom:4%;z-index:3;display:flex;perspective:700px;overflow:visible;clip-path:polygon(0 13%,20% 5%,50% 0,80% 5%,100% 13%,100% 100%,0 100%)}.hw-door{height:100%;width:50%;position:relative;display:block;background:repeating-linear-gradient(90deg,transparent 0 14%,#aa875c66 14% 17%,#100d0c 17% 21%,transparent 21% 29%),linear-gradient(90deg,#171319,#54232d,#1a1017);border:1px solid #a18055;box-shadow:inset 0 0 18px #000;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.hw-door:before,.hw-door:after{content:'';position:absolute;left:0;right:0;height:4px;background:#aa8452;border:1px solid #e8c79555;top:35%}.hw-door:after{top:75%}.hw-door-left{transform-origin:left center}.hw-door-right{transform-origin:right center}.hw-gate-glow{position:absolute;inset:28% 16% 4%;background:radial-gradient(ellipse,#ffce8d,#a9321e 55%,#271117);opacity:.2;transition:opacity 1s;z-index:1}.hw-gate-sigil{position:absolute;top:47%;left:50%;transform:translateX(-50%);color:#ddad74;border:1px solid #9a7045;background:#251617;border-radius:50%;width:27%;aspect-ratio:1;display:grid;place-items:center;font:clamp(15px,2vw,26px) Georgia,serif;z-index:4;box-shadow:0 0 18px #000b;transition:opacity .3s}.hw-gate-number{position:absolute;bottom:-28px;left:0;right:0;color:#d1baa7;font-size:10px;letter-spacing:.13em}.hw-gate.is-opening .hw-door-left{transform:rotateY(-105deg)}.hw-gate.is-opening .hw-door-right{transform:rotateY(105deg)}.hw-gate.is-opening .hw-gate-sigil{opacity:0}.hw-gate.is-opening .hw-gate-glow{opacity:1;box-shadow:0 0 70px #ffdca599}.hw-gate.is-trap .hw-gate-glow{background:#c31929;box-shadow:0 0 60px #ef183d}.hw-scene-caption{position:absolute;bottom:16px;left:8px;right:8px;text-align:center;font-size:10px;font-weight:600;color:#ddc3b2;text-shadow:0 2px 8px #000;pointer-events:none}.hw-deal-mode{position:absolute;top:16px;left:50%;transform:translateX(-50%);display:flex;padding:4px;gap:3px;border-radius:9px;border:1px solid #ae815855;background:#120c0eea;white-space:nowrap}.hw-deal-mode button{padding:8px 12px;font-size:10px;border:0;border-radius:6px;background:none;color:#bfa79c}.hw-deal-mode button.on{background:#803a2b;color:#ffe6c4}.hw-cups{position:absolute;left:12%;right:12%;bottom:67px;height:158px;display:flex;align-items:flex-end}.hw-cup{width:33.333%;height:100%;position:relative;border:0;background:none;padding:0 8px;opacity:1!important;will-change:transform}.hw-cup svg{height:100%;width:100%;overflow:visible;filter:drop-shadow(0 8px 8px #0009);transition:filter .2s}.hw-cup:not(:disabled):hover svg{filter:drop-shadow(0 0 12px #ffb76599)}.hw-cup>span{display:block;font:13px Georgia,serif;color:#f5ce97;text-shadow:0 2px 4px #000}.hw-below-scene{padding:13px 6px;display:flex;gap:8px;align-items:flex-start;color:#bda798;font-size:10px;line-height:1.6}.hw-dot{display:block;flex:0 0 5px;height:5px;border-radius:50%;background:#c47d50;margin-top:5px}.hw-panel{border:1px solid #4a3530;border-radius:14px;background:linear-gradient(145deg,#211618,#141013);padding:22px 18px;min-width:0;box-shadow:0 12px 28px #0003}.hw-key-price{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:17px 0 23px}.hw-key-price>span{font:48px Georgia,serif;color:#efbf70}.hw-key-price>b{font-size:32px;color:#ffe6b4}.hw-key-price>small{font-size:11px;color:#bfa79c}.hw-item-picker{display:flex;align-items:center;flex-direction:column;width:100%;min-height:150px;gap:8px;padding:15px 10px;margin:15px 0;background:#150f12;border:1px dashed #865d4b;border-radius:10px}.hw-item-picker img{width:80px;height:80px;object-fit:contain}.hw-item-picker b{font-size:12px}.hw-item-picker>span:last-child{color:#bda798;font-size:10px}.hw-item-plus{font-size:36px;color:#d0a366}.hw-rewards h3{font-size:11px;margin:0 0 10px;color:#dac4b8}.hw-outcome{display:flex;gap:9px;align-items:center;padding:10px 0;border-top:1px solid #66443b55;min-width:0}.hw-outcome>.hw-prize-img,.hw-outcome>.hw-empty-prize{width:45px;height:45px;object-fit:contain;flex-shrink:0}.hw-outcome>div{min-width:0;flex:1}.hw-outcome b{font-size:12px;color:#f7d3a2}.hw-outcome div>span,.hw-outcome small{display:block;font-size:9px;color:#baa8a1;line-height:1.5;overflow-wrap:anywhere}.hw-outcome div>span{color:#e4d4cb;margin:2px 0}.hw-outcome>strong{font-size:11px;color:#e6ae88}.hw-pricing-note{font-size:9px;color:#9e8984;line-height:1.6}.hw-actions{margin-top:17px;display:flex;gap:10px;flex-direction:column;text-align:center}.hw-primary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #cc9160;border-radius:9px;background:linear-gradient(110deg,#aa5535,#783124);color:#ffebd3!important;font-size:11px!important;font-weight:700!important;padding:12px 16px;box-shadow:0 4px 22px #bd4f2322,inset 0 1px #ffffff26;transition:filter .2s,transform .2s}.hw-primary:hover:not(:disabled){filter:brightness(1.17);transform:translateY(-1px)}.hw-muted{font-size:10px;color:#b09b92;line-height:1.7}.hw-status{font-size:10px;color:#f4b3a1;line-height:1.6;margin:9px 0 0;overflow-wrap:anywhere}.hw-status:empty{display:none}.hw-refresh{display:block;margin:5px auto -10px;font-size:9px!important;text-decoration:underline;text-underline-offset:3px}.hw-infernal{position:absolute;left:50%;bottom:58px;transform:translateX(-50%);width:230px;height:210px;display:grid;place-items:center}.hw-ritual-ring{position:absolute;width:190px;height:190px;border:2px solid #e18b52;border-radius:50%;box-shadow:0 0 20px #dc4b1b66,inset 0 0 25px #dc4b1b44;transform:rotateX(57deg);background:repeating-conic-gradient(from 0deg,transparent 0deg 26deg,#e18b5266 26deg 27deg,transparent 27deg 30deg);mask-image:radial-gradient(transparent 56%,#000 58%);animation:hw-ring 18s linear infinite}.hw-ritual-ring.second{width:145px;height:145px;animation-direction:reverse;border-color:#9d2e33}.hw-sacrifice{z-index:1;margin-top:-22px;filter:drop-shadow(0 0 20px #b2413e);animation:hw-float 4s ease-in-out infinite}.hw-sacrifice img{width:100px;height:100px;object-fit:contain}.hw-sacrifice>span{font:72px Georgia;color:#f4be82}.hw-summoning .hw-ritual-ring{animation:hw-ritual .45s linear infinite;box-shadow:0 0 45px #e64e26;mask-image:none;background:radial-gradient(transparent,#ff7c3a55)}.hw-summoning .hw-sacrifice{animation:hw-offer 1.8s ease-in forwards}.hw-summoning .hw-scene-bg{filter:saturate(1.8) brightness(.7)}.hw-result{position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:25px;background:radial-gradient(ellipse at 50% 50%,#553025dc,#110a10f2 75%);backdrop-filter:blur(7px);animation:hw-reveal .65s cubic-bezier(.2,.7,.2,1)}.hw-result:before{content:'';position:absolute;inset:15% 22%;border:1px solid #d19d5266;border-radius:50%;box-shadow:0 0 60px #e68b3b33;z-index:-1}.hw-result-kicker{font-size:9px;color:#d8ad7d;letter-spacing:.2em}.hw-result>.hw-prize-img{width:150px;height:150px;object-fit:contain;filter:drop-shadow(0 12px 22px #0006);animation:hw-float 4s ease-in-out infinite}.hw-result h3{font:27px Georgia,serif;margin:4px 0;color:#ffe8c9}.hw-result p{font-size:11px;color:#cfb8a7;line-height:1.6;margin:0 0 12px}.hw-empty-prize{display:grid;place-items:center;font:35px Georgia,serif;color:#a26667}.hw-result>.hw-empty-prize{font-size:100px;height:140px}.hw-result.is-loss{background:radial-gradient(ellipse,#411923ee,#0b0810f5)}.hw-history{margin:22px 0 0;border:1px solid #46332e;border-radius:10px;color:#baa79b;font-size:11px}.hw-history summary{padding:16px;cursor:pointer}.hw-history article{display:grid;grid-template-columns:1fr 2fr 1fr;gap:12px;padding:13px 18px;border-top:1px solid #46332e;font-size:10px}.hw-history article>span:last-child{text-align:right;color:#d4b184}.hw-history b{font-weight:500;color:#ead7c7}.hw-dialog{position:fixed;inset:0;width:min(650px,calc(100% - 28px));max-height:85dvh;box-sizing:border-box;padding:28px;border:1px solid #825239;border-radius:16px;color:#ecd9c8;background:linear-gradient(125deg,#25171a,#131015);box-shadow:0 20px 80px #0009}.hw-dialog::backdrop{background:#08050bcd;backdrop-filter:blur(6px)}.hw-dialog h3{font:25px Georgia,serif;margin:5px 28px 14px 0}.hw-dialog p{font-size:12px;line-height:1.8;color:#c1a89c}.hw-dialog-close{position:absolute;top:12px;right:14px;background:none;border:0;color:#ceac91;font-size:25px;cursor:pointer}.hw-search{box-sizing:border-box;width:100%;padding:13px;border:1px solid #63453b;border-radius:8px;color:#f5ddc6;background:#110c0f;margin:10px 0 16px;font-size:13px}.hw-inventory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.hw-inventory button{min-width:0;min-height:155px;display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid #68483c;border-radius:9px;background:#1b1217;color:#ecdbc9;padding:12px;cursor:pointer}.hw-inventory button:hover{border-color:#e0ad6d;background:#352016}.hw-inventory img{width:75px;height:75px;object-fit:contain}.hw-inventory b{font-size:10px;line-height:1.5;overflow-wrap:anywhere}.hw-inventory span{font-size:10px;color:#ebbd85}.hw-nav{color:#eead6b!important}.hw-nav svg{width:21px;height:15px}.hw-nav.active{background:#71371e!important;color:#ffe4bd!important;box-shadow:0 3px 20px #b954172e}.hw-hub-card{grid-column:1/-1;min-height:180px;border:1px solid #926040;border-radius:16px;color:#ffe3bf;text-align:left;padding:28px;background:linear-gradient(90deg,#190f11f0,#190f1144),url('img/dracula-courtyard-light.webp') center 40%/cover;cursor:pointer}.hw-hub-card>span{display:block;font-size:10px;letter-spacing:.2em;color:#d9ac79}.hw-hub-card>b{display:block;font:32px Georgia,serif;margin:12px 0}.hw-hub-card>small{font-size:12px;color:#c8b0a0}.hw-admin{border:1px solid #734832;padding:15px;border-radius:10px;margin-top:16px}.hw-admin summary{cursor:pointer;color:#e3b77e;font-size:13px}.hw-admin-body{margin-top:15px}.hw-admin fieldset{border:1px solid #634139;border-radius:8px;display:flex;gap:15px;padding:15px;margin:12px 0}.hw-admin label{display:flex;gap:6px;align-items:center;font-size:12px}.hw-admin input[type=number]{width:65px;padding:8px;border:1px solid #6e4b3e;background:#170e11;color:#efd6bd;border-radius:5px}.hw-admin p{font-size:11px;line-height:1.6;color:#bba08f}.hw-suspended *{animation-play-state:paused!important}
@keyframes hw-mist{to{transform:translateX(8%) scale(1.08)}}@keyframes hw-embers{0%{transform:translate(0,0);opacity:0}20%{opacity:.65}85%{opacity:.2}100%{transform:translate(25px,-220px);opacity:0}}@keyframes hw-ring{to{transform:rotateX(57deg) rotateZ(360deg)}}@keyframes hw-ritual{to{transform:rotateX(57deg) rotateZ(360deg) scale(1.1)}}@keyframes hw-float{50%{transform:translateY(-7px)}}@keyframes hw-offer{50%{transform:translateY(-30px) scale(1.1)}100%{transform:translateY(-50px) scale(.15);opacity:0}}@keyframes hw-reveal{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
.hw-event{width:100%;box-sizing:border-box;flex-shrink:0}.hw-event .hw-gate:not(:disabled){cursor:pointer}.hw-event .hw-cup:not(:disabled){cursor:pointer}
@media(min-width:1500px){.hw-scene{min-height:540px}.hw-gates{left:10%;right:10%;bottom:70px}.hw-cups{bottom:70px;height:180px}}
@media(max-width:1000px){.hw-layout{grid-template-columns:minmax(0,1fr) 260px;gap:12px}.hw-event{padding:16px 8px}.hw-panel{padding:18px 14px}.hw-scene{min-height:440px}.hw-gates{left:6%;right:6%;gap:2%}.hw-table .hw-scene-bg{background-size:auto 100%;background-position:center}.hw-cups{left:7%;right:7%;height:145px}.hw-season{letter-spacing:.12em}}
@media(max-width:740px){.hw-event{padding:12px 8px 26px}.hw-top{font-size:10px}.hw-season{display:none}.hw-tabs{margin:14px auto 20px;width:100%;box-sizing:border-box;gap:3px}.hw-tabs button{font-size:11px;justify-content:center;padding:12px 8px;flex:1;min-width:0}.hw-tabs svg{width:20px;flex-shrink:0}.hw-heading{margin-bottom:20px}.hw-heading h2{font-size:35px;margin-top:8px}.hw-heading p{font-size:11px;padding:0 12px}.hw-layout{display:flex;flex-direction:column;gap:8px}.hw-play{width:100%}.hw-scene{min-height:390px;border-radius:12px}.hw-castle .hw-scene-bg{background-position:50% 15%;background-size:auto 100%}.hw-gates{left:6%;right:6%;bottom:69px;gap:3%}.hw-gate-number{font-size:9px;bottom:-25px;letter-spacing:.07em}.hw-stages{top:16px}.hw-panel{width:100%;box-sizing:border-box;padding:20px 16px;border-radius:12px}.hw-key-price{margin:10px 0 15px}.hw-rewards{display:block}.hw-outcome{padding:9px 0}.hw-outcome>.hw-prize-img{width:44px;height:44px}.hw-outcome div>span{font-size:11px}.hw-outcome small{font-size:10px}.hw-outcome b{font-size:13px}.hw-outcome>strong{font-size:13px}.hw-primary{min-height:48px;font-size:12px!important}.hw-item-picker{flex-direction:row;flex-wrap:wrap;justify-content:center;min-height:78px;padding:12px;margin:12px 0}.hw-item-picker img{width:65px;height:65px}.hw-item-picker b{max-width:50%;font-size:12px}.hw-item-picker>span:last-child{font-size:10px}.hw-table .hw-scene-bg{background-size:auto 100%;background-position:center}.hw-cups{left:7%;right:7%;height:130px;bottom:58px}.hw-cup{padding:0 4px}.hw-deal-mode{top:12px}.hw-scene-caption{font-size:9px;bottom:13px}.hw-below-scene{font-size:10px}.hw-infernal{bottom:35px;transform:translateX(-50%) scale(.85)}.hw-result>.hw-prize-img{width:120px;height:120px}.hw-result h3{font-size:25px}.hw-result-kicker{font-size:8px}.hw-dialog{padding:24px 16px}.hw-inventory{grid-template-columns:repeat(2,minmax(0,1fr))}.hw-history article{grid-template-columns:1fr 1.7fr .7fr;gap:6px;padding:12px 10px;font-size:9px}.hw-hub-card{min-height:155px;padding:20px}.hw-hub-card>b{font-size:26px}.hw-admin fieldset{gap:8px;padding:10px;flex-wrap:wrap}.hw-admin input[type=number]{width:48px}.hw-nav{display:inline-flex!important}}
@media(max-width:360px){.hw-heading h2{font-size:30px}.hw-tabs button{font-size:10px}.hw-tabs svg{display:none}.hw-scene{min-height:345px}.hw-cups{height:112px}.hw-gate-sigil{font-size:13px}.hw-top{gap:5px}}
@media(prefers-reduced-motion:reduce){.hw-event *,.hw-event *:before,.hw-event *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Halloween accents: retain the existing card dimensions, prices and art. */
html[data-season=halloween] body{background-color:#09080b;background-image:radial-gradient(ellipse at 10% 0,#67251526,transparent 45%),radial-gradient(ellipse at 90% 20%,#46205d18,transparent 40%)}
html[data-season=halloween] .topbar{background:linear-gradient(100deg,#1e1010ee,#0e0b10f5 70%);border-bottom-color:#bf713b44}
html[data-season=halloween] .topbar-link.active:not(.hw-nav){background:linear-gradient(125deg,#be631f,#813a18);box-shadow:0 3px 20px #ca651a25}
html[data-season=halloween].tg-mini .mini-topnav button.on{background:linear-gradient(125deg,#be631f,#813a18)!important;box-shadow:0 3px 20px #ca651a25!important;color:#fff0d8!important}
html[data-season=halloween] .logo-mark,html[data-season=halloween] .mini-plus{background:linear-gradient(140deg,#f6a447,#a54722)!important;box-shadow:0 4px 18px #ad4d2422!important}
.hw-home-banner{width:100%;max-width:1104px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:15px;margin:8px auto 26px;padding:24px 28px;border:1px solid #ae754d80;border-radius:15px;color:#ffe7c8;cursor:pointer;text-align:left;background:linear-gradient(90deg,#210f11ef,#1a0d1177),url('img/dracula-courtyard-light.webp') 60% 30%/cover;min-height:135px}.hw-home-banner[hidden]{display:none!important}.hw-home-banner small{font-size:9px;letter-spacing:.18em;color:#e9b77c}.hw-home-banner b{display:block;font:30px Georgia,serif;margin:9px 0}.hw-home-banner em{font-style:normal;font-size:11px;color:#d0b09b}.hw-home-banner strong{font-size:12px;border:1px solid #ce9e6b88;border-radius:8px;padding:12px 15px;background:#1c1114b0;white-space:nowrap}
@media(max-width:600px){.hw-home-banner{padding:17px 15px;margin:8px auto 20px;min-height:125px;gap:10px}.hw-home-banner b{font-size:25px}.hw-home-banner em{font-size:10px;line-height:1.6;display:block}.hw-home-banner strong{padding:10px;font-size:10px}.hw-home-banner small{font-size:8px}}
html[data-season=halloween] .auto-promo-v98{background:radial-gradient(ellipse at 8% 20%,#74351044,transparent 60%),#151019;border-color:#bc7c3a55}
html[data-season=halloween] #caseGroups .case-card{position:relative}
html[data-season=halloween] #caseGroups .case-card:after{content:'';position:absolute;right:0;top:0;width:35px;height:35px;pointer-events:none;opacity:.36;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23e1c7a0' stroke-width='.8'%3E%3Cpath d='M60 0 0 60M60 0 0 27M60 0 31 60M60 0 0 0M60 0 60 60M42 0Q43 8 47 13Q54 15 60 16M25 0Q30 15 33 27Q47 32 60 34M6 0Q12 22 19 41Q38 46 60 54'/%3E%3C/svg%3E")}
html[data-season=halloween] .case-category-title:before,html[data-season=halloween] .case-category-title:after{background:linear-gradient(90deg,transparent,#c28b4d66)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){html[data-season=halloween] #caseGroups .case-card{transition:border-color .22s,box-shadow .22s}html[data-season=halloween] #caseGroups .case-card:hover{box-shadow:0 6px 24px #bb5e1820;border-color:#bb864f}}
/* Long codes retain the complete copyable text, with no truncation. */
.ap-inner>*{min-width:0}.ap-code-box{min-width:0;overflow:visible}.ap-code{max-width:100%;min-width:0;box-sizing:border-box;white-space:normal!important;overflow-wrap:anywhere;word-break:break-word;letter-spacing:.02em;font-size:clamp(12px,2.2vw,23px);line-height:1.12;min-height:0;height:auto;max-height:none;flex-shrink:1;text-align:center}
.ap-code-box{display:flex;flex-direction:column;align-items:stretch;justify-content:center}.ap-code-label{flex-shrink:0;line-height:1.2}.ap-code:focus-visible{outline-offset:2px}.ap-deposit{white-space:normal;line-height:1.3;overflow-wrap:anywhere}.ap-feedback{z-index:3;font-size:9px}.ap-clock time{white-space:nowrap}
.case-strip{contain:layout paint}.case-track{will-change:transform}.case-item.win{animation:sab-case-winner .65s cubic-bezier(.2,.7,.2,1);position:relative;z-index:2}.is-spinning .case-marker{filter:drop-shadow(0 0 5px #edb374)}.case-strip.is-settled .case-marker{filter:drop-shadow(0 0 9px #ffd98e)}.case-strip.is-settled:after{content:'';pointer-events:none;position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,#ffc06819,transparent 55%);animation:sab-case-glow .65s ease-out}
@keyframes sab-case-winner{0%{filter:brightness(1)}35%{filter:brightness(1.32)}100%{filter:brightness(1)}}@keyframes sab-case-glow{from{opacity:0}35%{opacity:1}to{opacity:0}}
@media(max-width:900px){.ap-code{font-size:clamp(12px,3.5vw,20px)}.ap-code-box{padding:7px 6px}.auto-promo-v98{overflow:visible}.ap-offer>div{min-width:0}.ap-caption{overflow-wrap:anywhere}.topbar-link.hw-nav{flex-shrink:0}.hw-nav span{font-size:11px}}
@media(max-width:430px){.ap-inner{gap:7px}.ap-clock time{font-size:clamp(17px,5vw,22px)}.ap-code-box{padding:6px 4px}.ap-code{font-size:14px}.ap-code-label{font-size:8px}.ap-deposit{padding:7px 4px;font-size:10px}.ap-clock>span{font-size:8px}.ap-clock,.ap-code-box,.ap-deposit{height:auto;min-height:76px}.ap-inner{align-items:stretch}.br-flow-summary,.br-mut-name,.upg-target-card{min-width:0}.br-mut-name b{overflow-wrap:anywhere}.hw-nav svg{width:20px}.hw-nav span{display:none}}
@media(prefers-reduced-motion:reduce){.case-item.win,.case-strip.is-settled:after{animation:none!important}.case-track{will-change:auto}}

.hw-mode-dock{display:flex;gap:10px;justify-content:center;margin:0 auto 22px;max-width:520px}.hw-mode-dock button{flex:1;display:flex;flex-direction:column;gap:7px;align-items:center;padding:15px 20px;border:1px solid #684837;border-radius:12px;background:linear-gradient(140deg,#23171a,#100c10);color:#bda997;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s}.hw-mode-dock button b{font-size:13px}.hw-mode-dock button span{font-size:10px;letter-spacing:.09em}.hw-mode-dock button.on{color:#ffdfb4;border-color:#c88953;background:linear-gradient(135deg,#783b24,#3d2020);box-shadow:0 4px 24px #b24d1b25}.hw-mode-dock button:hover:not(:disabled){border-color:#e8b57a}.hw-mode-dock button:focus-visible{outline:2px solid #efbf83;outline-offset:3px}
.hw-door-outcome{position:absolute;inset:22% 7% 8%;z-index:5;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;border-radius:50% 50% 8% 8%;background:radial-gradient(#204b26ee,#0e2415f0);box-shadow:0 0 22px #60d67f55,inset 0 0 25px #55db6555;animation:hw-door-prize .55s ease-out}.hw-door-outcome i{font-style:normal;font-size:42px;filter:drop-shadow(0 3px 8px #000)}.hw-door-outcome b{font:700 16px Georgia,serif;color:#a8f5ab;text-shadow:0 2px 10px #000}.hw-door-outcome.bad{background:radial-gradient(#6b1424f5,#180b15f5);box-shadow:0 0 22px #ec274955}.hw-door-outcome.bad b{color:#ff929e}.hw-last-step{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:15px 18px;margin:12px 0 6px;border:1px solid #4b7343;border-radius:10px;background:#152517;color:#c8ecc1;animation:hw-door-prize .45s ease-out}.hw-last-step b{font-size:14px;white-space:nowrap}.hw-last-step span{font-size:11px;line-height:1.6;text-align:right}.hw-stages{gap:12px}.hw-stages .done{background:#2c512f;border-color:#78ae66;color:#d2f5c3}.hw-rewards .hw-outcome b{font-size:12px}.hw-hell .hw-scene-caption{opacity:0}.hw-summoning .hw-scene-caption{display:none}
.hw-cinematic{position:absolute;inset:0;z-index:6;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 50% 70%,transparent 5%,#0b050940 60%);animation:hw-ritual-shade var(--ritual-time) ease-in-out forwards}.hw-cinematic:before,.hw-cinematic:after{content:'';position:absolute;left:50%;top:65%;border:1px solid #d77a37;border-radius:50%;width:230px;height:230px;transform:translate(-50%,-50%) rotateX(55deg);box-shadow:0 0 35px #b9481f66,inset 0 0 25px #d9862844;animation:hw-seal-pulse 1.4s ease-in-out infinite}.hw-cinematic:after{width:180px;height:180px;border-style:dashed;animation-direction:reverse}.hw-ritual-beam{position:absolute;left:calc(50% - 65px);top:0;bottom:15%;width:130px;background:linear-gradient(0deg,#f0883344,transparent);filter:blur(18px);transform-origin:bottom;animation:hw-beam var(--ritual-time) ease-in-out both}.hw-ritual-crest{position:absolute;left:50%;top:61%;transform:translate(-50%,-50%);font:72px Georgia;color:#e0a86c;opacity:0;text-shadow:0 0 30px #f48236;animation:hw-crest var(--ritual-time) ease-in-out both}.hw-ritual-message{position:absolute;left:10%;right:10%;bottom:48px;font-size:11px;letter-spacing:.12em;color:#edc29e;text-align:center;line-height:1.6}.hw-ritual-progress{position:absolute;bottom:30px;left:25%;right:25%;height:2px;background:#91603c33}.hw-ritual-progress span{display:block;width:100%;height:100%;transform-origin:left;background:#dd995e;box-shadow:0 0 10px #e89955;animation:hw-progress var(--ritual-time) linear both}.hw-cinematic>i{position:absolute;left:calc(30% + var(--p)*1.9%);top:67%;width:3px;height:3px;border-radius:50%;background:#dca061;box-shadow:0 0 10px currentColor;animation:hw-soul 2s calc(var(--p)*-.17s) ease-in-out infinite}.hw-summoning .hw-sacrifice{animation:hw-offer-long var(--ritual-time) ease-in forwards}.hw-ritual-loss .hw-cinematic{background:radial-gradient(ellipse at 50% 65%,#43152240,#050409aa)}.hw-ritual-loss .hw-cinematic>i{background:#8a6f70;box-shadow:none}.hw-ritual-loss .hw-ritual-beam{background:linear-gradient(0deg,#6e273444,transparent)}.hw-ritual-loss .hw-ritual-crest{color:#a56873;text-shadow:none}.hw-ritual-loss[data-ritual-phase="2"] .hw-scene-bg{filter:saturate(.25) brightness(.32)}.hw-ritual-small[data-ritual-phase="2"] .hw-scene-bg{filter:saturate(.8) brightness(.55)}.hw-ritual-epic .hw-cinematic:before,.hw-ritual-epic .hw-cinematic:after{border-color:#f2bd6d;box-shadow:0 0 60px #ec8722aa,inset 0 0 35px #ba6bd777}.hw-ritual-epic .hw-ritual-beam{width:200px;left:calc(50% - 100px);background:linear-gradient(0deg,#ffc56c99,#8833ba33,transparent)}.hw-ritual-epic .hw-ritual-crest{font-size:120px;color:#ffe2a0;text-shadow:0 0 25px #f79d3f,0 0 65px #f5924a}.hw-ritual-epic .hw-cinematic>i{background:#fff0bb;width:4px;height:4px}.hw-ritual-epic[data-ritual-phase="2"] .hw-scene-bg{filter:saturate(1.4) brightness(.8)}.hw-ritual-epic[data-ritual-phase="2"] .hw-ritual-message{font-size:15px;color:#ffe3a0;text-shadow:0 0 12px #e4872a}
@keyframes hw-door-prize{from{opacity:0;filter:brightness(1.8);transform:scale(.8)}to{opacity:1;filter:brightness(1);transform:scale(1)}}@keyframes hw-seal-pulse{50%{box-shadow:0 0 55px #d0632f88,inset 0 0 35px #de8d4544;opacity:.55}}@keyframes hw-ritual-shade{0%{opacity:0}15%,85%{opacity:1}100%{opacity:1}}@keyframes hw-beam{0%,20%{transform:scaleX(.05);opacity:0}60%{transform:scaleX(.7);opacity:.65}90%,100%{transform:scaleX(1.3);opacity:1}}@keyframes hw-crest{0%,50%{opacity:0;transform:translate(-50%,-50%) scale(.3)}80%,100%{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes hw-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes hw-soul{0%{transform:translateY(15px) scale(.2);opacity:0}30%{opacity:.8}100%{transform:translateY(-180px) scale(.1);opacity:0}}@keyframes hw-offer-long{0%,15%{transform:translateY(0) scale(1);opacity:1}45%{transform:translateY(-35px) scale(.85);opacity:.7}70%,100%{transform:translateY(-90px) scale(.15);opacity:0}}
@media(max-width:740px){.hw-mode-dock{gap:8px;margin-bottom:16px}.hw-mode-dock button{padding:13px 10px}.hw-mode-dock button b{font-size:12px}.hw-mode-dock button span{font-size:9px}.hw-door-outcome{gap:7px}.hw-door-outcome i{font-size:28px}.hw-door-outcome b{font-size:12px}.hw-last-step{padding:12px;gap:8px}.hw-last-step b{font-size:12px}.hw-last-step span{font-size:10px}.hw-stages{gap:9px}.hw-ritual-epic .hw-ritual-crest{font-size:90px}.hw-ritual-message{font-size:9px;left:6%;right:6%}.hw-ritual-epic[data-ritual-phase="2"] .hw-ritual-message{font-size:11px}.hw-panel .hw-rewards .hw-outcome{padding:8px 0}}
@media(prefers-reduced-motion:reduce){.hw-door-outcome,.hw-last-step,.hw-cinematic,.hw-cinematic *{animation:none!important}}

.hw-gate.is-opening:disabled{opacity:1!important}

.case-card[data-paid^="sab_"] .sc-case{background:none!important}.case-card[data-paid="sab_street"]{border-color:#387d64}.case-card[data-paid="sab_street"] .cc-price{border-color:#348d6b}
/* Polished event presentation: reward cards, recessed mode tabs, dimensional reveal. */
.hw-mode-dock{max-width:470px;padding:5px;gap:4px;border:1px solid #493a36;border-radius:14px;background:#100e11;box-shadow:0 8px 24px #0004}
.hw-mode-dock button{position:relative;border:0;border-radius:9px;background:transparent;padding:12px 18px;gap:5px;color:#968b87;box-shadow:none}
.hw-mode-dock button.on{background:linear-gradient(180deg,#342821,#241d1b);box-shadow:inset 0 1px #b9916855,0 3px 8px #0005;color:#ffe4bf}
.hw-mode-dock button.on:after{content:'';position:absolute;bottom:-5px;left:30%;right:30%;height:2px;background:#edaf6b;box-shadow:0 0 10px #e99a55}
.hw-mode-dock button span{letter-spacing:.04em;color:#a9937e;font-variant-numeric:tabular-nums}.hw-mode-dock button b{font-size:13px;font-weight:600}
.hw-door-outcome{inset:24% 14% 5%;border-radius:48% 48% 0 0;background:linear-gradient(0deg,#151818fa,#14201cd9,transparent);box-shadow:inset 0 -18px 30px #9fb88922;gap:7px;overflow:hidden}
.hw-door-outcome:before{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,#f4dba525 48%,transparent 65%);animation:hw-door-shine 2s ease-out both;pointer-events:none}
.hw-door-outcome .hw-door-art{width:75%;height:44%;display:grid;place-items:center;filter:drop-shadow(0 0 14px #dfd7a94d)}
.hw-door-art img{width:100%;height:100%;object-fit:contain}.hw-door-art svg{width:48px;max-width:75%;height:65px;fill:#ba8585;stroke:#e3a29b;stroke-width:.5}
.hw-door-outcome b{font-family:inherit;font-weight:600;font-size:clamp(10px,1.3vw,16px);color:#f3e7c8;text-shadow:0 2px 8px #000}.hw-door-outcome small{font-size:clamp(16px,2vw,26px);font-weight:800;color:#f8d899;letter-spacing:-.05em}
.hw-door-outcome.bad{background:linear-gradient(0deg,#170c12fa,#2c111bd9,transparent);box-shadow:inset 0 -15px 30px #963c3b30}.hw-door-outcome.bad small{color:#bb858b}.hw-door-outcome.bad b{color:#e2b9b9}
.hw-last-step{background:#151916;border-color:#38443a;color:#d7decf}.hw-last-step b{color:#e1ce9f}
.hw-result{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;padding:28px;background:linear-gradient(180deg,#08070b70,#08070bc9);backdrop-filter:blur(5px);border:0;border-radius:0;box-shadow:none;animation:hw-result-in .65s ease both}
.hw-result:before,.hw-result:after{display:none!important}
.hw-result-sheet{position:relative;width:min(100%,330px);padding:24px 24px 22px;text-align:center;background:linear-gradient(145deg,#211e20f5,#121115fa);border:1px solid #605043;border-radius:18px;box-shadow:0 24px 70px #0009,inset 0 1px #fff1;overflow:hidden}
.hw-result-sheet:before{content:'';position:absolute;left:15%;right:15%;top:0;height:1px;background:linear-gradient(90deg,transparent,#edc78b,transparent)}
.hw-result .hw-result-kicker{font-family:inherit;font-weight:600;font-size:9px;line-height:1.4;letter-spacing:.22em;color:#b9a38c;margin:0;display:block}
.hw-result-mult{position:relative;margin:16px 0 0;display:flex;flex-direction:column;align-items:center;gap:1px}.hw-result-mult small{font-size:8px;letter-spacing:.18em;color:#9c918b}.hw-result-mult strong{font-family:inherit;letter-spacing:-.06em;color:#f6d5a2;font-size:58px;line-height:1.1;font-weight:800}
.hw-result-art{height:135px;margin:6px auto 10px;display:grid;place-items:center;position:relative}.hw-result-art:before{content:'';position:absolute;inset:15% 18%;background:radial-gradient(#e1aa6c22,transparent 70%);z-index:-1}.hw-result .hw-result-art img{width:135px;height:135px;object-fit:contain;margin:0;filter:drop-shadow(0 8px 16px #0008);animation:hw-reward-arrive .8s cubic-bezier(.2,.8,.2,1) both}.hw-result-art svg{height:84px;width:76px;fill:#98686b;stroke:#d3a19e;stroke-width:.4;filter:drop-shadow(0 6px 15px #0006)}
.hw-result h3{font-family:inherit;font-weight:700;font-size:20px;line-height:1.25;margin:0 0 9px;letter-spacing:-.025em;color:#f2e9df;overflow-wrap:anywhere}.hw-result p{font-size:11px;line-height:1.65;color:#9e9491;margin:0 0 20px;min-height:36px}.hw-result p b{display:block;font-size:14px;color:#e2c4a0;font-weight:600}.hw-result p span{display:block;font-size:10px;margin-top:3px}
.hw-result .hw-primary{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;padding:13px 18px;border:1px solid #94704b;border-radius:9px;background:linear-gradient(#795032,#573921);box-shadow:inset 0 1px #eebc7e30;color:#ffe5c5;font-size:12px}.hw-result .hw-primary:hover{filter:brightness(1.15)}
.hw-result.is-loss .hw-result-sheet{border-color:#524046;background:linear-gradient(145deg,#211a20f5,#121115fa)}.hw-result.is-loss .hw-result-mult strong{color:#b99198}.hw-result.is-loss .hw-primary{background:#2d252a;border-color:#66505a;color:#e8d2d5}.hw-result.result-high .hw-result-sheet{border-color:#8c718f}.hw-result.result-high .hw-result-mult strong{color:#ddbef2;text-shadow:0 0 24px #ae68d344}.hw-result.result-epic .hw-result-sheet{border-color:#b48b4f;box-shadow:0 24px 70px #0009,0 0 40px #c48f2622}.hw-result.result-epic .hw-result-mult strong{color:#ffe2a3;text-shadow:0 0 25px #efa12c55}
.hw-ritual-ring{display:none}.hw-infernal:before,.hw-infernal:after{display:none}.hw-cinematic:before,.hw-cinematic:after{display:none}.hw-cinematic{--rift:#d89469;background:linear-gradient(0deg,#0a090ed9,transparent 85%)}.hw-ritual-high .hw-cinematic{--rift:#c6a3f2}.hw-ritual-epic .hw-cinematic{--rift:#ffe0a1}.hw-ritual-loss .hw-cinematic{--rift:#9f727e;background:linear-gradient(0deg,#0b090fe6,transparent 90%)}
.hw-rift{position:absolute;left:50%;top:55%;width:120px;height:240px;transform:translate(-50%,-50%);filter:drop-shadow(0 0 15px var(--rift));animation:hw-rift-open var(--ritual-time) both}
.hw-rift span{position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--rift),#fff0df,var(--rift),transparent);clip-path:polygon(55% 0,47% 30%,68% 43%,44% 65%,48% 100%,34% 65%,53% 43%,36% 30%)}
.hw-rift span:nth-child(2){transform:rotate(28deg) scale(.6);opacity:.5}.hw-rift span:nth-child(3){transform:rotate(-35deg) scale(.65);opacity:.35}
.hw-ritual-crest,.hw-ritual-epic .hw-ritual-crest{top:57%;font-family:inherit;line-height:1;font-size:84px;font-weight:800;letter-spacing:-.07em;color:var(--rift);text-shadow:0 3px 20px #000,0 0 40px #000;animation:hw-number-reveal var(--ritual-time) both;z-index:2}
.hw-ritual-loss .hw-ritual-crest{color:#b68f98}.hw-ritual-high .hw-ritual-beam{background:linear-gradient(0deg,#c7a0ef66,transparent)}.hw-cinematic>i{background:var(--rift);width:2px;height:7px;border-radius:0;animation:hw-shard 2.6s calc(var(--p)*-.17s) ease-in-out infinite}.hw-ritual-loss .hw-cinematic>i{animation-direction:reverse;opacity:.5}
.hw-ritual-message{font-size:10px!important;letter-spacing:.12em!important;font-weight:500;color:#cfbca8!important;text-shadow:0 2px 8px #000!important;bottom:45px}.hw-ritual-progress{height:1px;left:32%;right:32%;bottom:29px}.hw-ritual-progress span{background:var(--rift)}
@keyframes hw-door-shine{from{transform:translateX(-80%);opacity:0}35%{opacity:1}to{transform:translateX(100%);opacity:0}}
@keyframes hw-result-in{from{opacity:0}to{opacity:1}}
@keyframes hw-reward-arrive{from{opacity:0;transform:translateY(18px) scale(.85)}to{opacity:1;transform:none}}
@keyframes hw-rift-open{0%,12%{opacity:0;transform:translate(-50%,-50%) scale(.02,.2)}35%{opacity:.7;transform:translate(-50%,-50%) scale(.3,.8)}60%{opacity:1;transform:translate(-50%,-50%) scale(1,1.2)}80%,100%{opacity:.2;transform:translate(-50%,-50%) scale(2,1.2)}}
@keyframes hw-number-reveal{0%,62%{opacity:0;transform:translate(-50%,-50%) scale(.8);filter:blur(10px)}80%,100%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}}
@keyframes hw-shard{0%{transform:translate(0,30px) rotate(25deg);opacity:0}30%{opacity:.8}100%{transform:translate(calc((var(--p) - 11)*6px),-210px) rotate(140deg);opacity:0}}
@media(max-width:740px){.hw-mode-dock{max-width:400px}.hw-mode-dock button{padding:11px 8px}.hw-mode-dock button b{font-size:11px}.hw-mode-dock button span{font-size:9px}.hw-result{padding:18px}.hw-result-sheet{max-width:290px;padding:20px}.hw-result-mult strong{font-size:48px}.hw-result-art{height:110px}.hw-result .hw-result-art img{width:110px;height:110px}.hw-result h3{font-size:18px}.hw-door-outcome{gap:4px}.hw-door-outcome b{font-size:10px}.hw-door-outcome small{font-size:19px}.hw-ritual-crest,.hw-ritual-epic .hw-ritual-crest{font-size:68px}}
@media(prefers-reduced-motion:reduce){.hw-result,.hw-result *,.hw-door-outcome:before{animation:none!important}}

.hw-result.is-loss{background:linear-gradient(180deg,#08070b70,#08070bc9)}
@media(max-width:740px){.hw-scene:has(.hw-result){min-height:480px}.hw-result-sheet{flex-shrink:0}}
/* Understated navigation and loss state. */
.hw-mode-dock{border:0;border-bottom:1px solid #433736;border-radius:0;background:none;box-shadow:none;padding:0;gap:24px;max-width:390px;margin-bottom:26px}
.hw-mode-dock button,.hw-mode-dock button.on{background:none;border:0;border-radius:0;box-shadow:none;padding:14px 6px;color:#918788}
.hw-mode-dock button.on{color:#f2dfc7}.hw-mode-dock button.on:after{bottom:-1px;left:8%;right:8%;height:2px;background:#c99661;box-shadow:none}.hw-mode-dock button b{font-size:13px;font-weight:600}
.hw-result.is-loss .hw-result-art{display:none}.hw-result.is-loss .hw-result-sheet{padding:32px 24px;background:linear-gradient(160deg,#201b20f5,#121216fa);border-color:#493b42}.hw-result.is-loss .hw-result-mult{margin:32px 0}.hw-result.is-loss .hw-result-mult strong{font-size:78px;color:#bcb0b7;text-shadow:none;font-weight:600}.hw-result.is-loss h3{font-size:19px}.hw-result.is-loss .hw-primary{margin-top:26px;background:#30272b;border-color:#5a494f}.hw-ritual-loss .hw-rift{display:none}.hw-ritual-loss .hw-cinematic>i{height:2px;opacity:.25}.hw-ritual-loss .hw-ritual-crest{font-size:64px;color:#c2b6bd;text-shadow:0 4px 20px #000}.hw-ritual-loss .hw-ritual-beam{opacity:0!important}
.case-card[data-paid^="sab_"] .sc-case{background:transparent!important;filter:drop-shadow(0 10px 14px #0007)}.case-card[data-paid^="sab_"] .sc-case .sp{display:none}
#caseArt:has(img[src*="case-pumpkin-2026"]),#caseArt:has(img[src*="case-nightmare-2026"]),#caseArt:has(img[src*="case-vault-2026"]){background:transparent!important}
@media(max-width:740px){.hw-mode-dock{gap:14px}.hw-mode-dock button b{font-size:12px}.hw-result.is-loss .hw-result-sheet{padding:26px 20px}}
#caseArt.chest-opening{position:relative;perspective:900px;background:transparent!important}#caseArt.chest-opening>img,#caseArt.chest-opening>.case-img{visibility:hidden}#caseArt.chest-opening:before,#caseArt.chest-opening:after{opacity:0!important}
.case-opening-stage{position:absolute;inset:0;perspective:900px;isolation:isolate;animation:case-chest-depart var(--chest-duration) ease-in both}.case-opening-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 14px #0007);margin:0;max-width:none;max-height:none}
.case-opening-lid{clip-path:inset(0 0 30% 0);transform-origin:50% 70%;animation:case-lid-open var(--chest-duration) cubic-bezier(.2,.75,.25,1) both}.case-opening-base{clip-path:inset(68% 0 0 0);z-index:3}.case-opening-light{position:absolute;inset:5% 8% 18%;background:radial-gradient(ellipse at 50% 85%,#ffe2a5bb,#e5a75344 30%,transparent 68%);filter:blur(12px);animation:case-light-open var(--chest-duration) ease-out both;z-index:-1}.case-opening-seam{position:absolute;left:17%;right:17%;top:68%;height:2px;background:#ffe2a0;box-shadow:0 0 15px 4px #efae5c77;animation:case-light-open var(--chest-duration) ease-out both}
@keyframes case-lid-open{0%,12%{transform:rotateX(-82deg);filter:brightness(.6)}65%,100%{transform:rotateX(0);filter:brightness(1)}}@keyframes case-light-open{0%,12%{opacity:0;transform:scale(.5)}55%{opacity:1;transform:scale(1.15)}100%{opacity:0;transform:scale(1.4)}}@keyframes case-chest-depart{0%{opacity:0;transform:scale(.95)}10%,75%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.08)}}
@media(prefers-reduced-motion:reduce){.case-opening-stage{display:none}}
/* Seasonal promo and retired Trade Zone navigation. */
#navTrade,[data-mt="trade"]{display:none!important}
/* Playful Halloween details and a compact case screen. */
.seasonal-pumpkin{background:none!important;border:0!important;box-shadow:none!important;transform:none!important}.seasonal-pumpkin svg{width:66px;height:66px;filter:drop-shadow(0 4px 10px #ed782d44)}.seasonal-logo-pumpkin{display:inline-flex;width:30px;margin-left:8px}.seasonal-logo-pumpkin svg{width:100%}
.hw-heading h2{font-family:inherit;font-size:clamp(26px,3.2vw,42px);letter-spacing:-.04em}.hw-panel{background:linear-gradient(145deg,#261c32,#18121d);border-color:#554064}.hw-table .hw-scene-bg{background-position:center;filter:none}.hw-table{border-color:#674778}.hw-item-picker{border-color:#795491;background:#19121f}.hw-primary{border-radius:12px!important}.hw-infernal .hw-sacrifice>span{font-size:0}.hw-infernal .hw-sacrifice>span:after{content:'✦';font-size:42px;color:#ffcd83}
#spinPanel:not([hidden]){padding:18px 22px 24px;background:#100e15!important;border-color:#423049;box-shadow:none;display:flex;flex-direction:column;align-items:stretch;gap:0}
#spinPanel .spin-back{align-self:flex-start;order:0;margin:0 0 10px;padding:8px 13px;font-size:11px}#spinPanel .case-stage{order:1;min-height:0;padding:4px 0;margin:0}#spinPanel .case-art{width:230px;height:230px;margin:0 auto;background:none!important}#spinPanel .case-art:before,#spinPanel .case-art:after{display:none}#spinPanel .case-art>img{width:100%;height:100%;object-fit:contain;max-width:100%;max-height:100%;animation:none}
#spinPanel .case-head{order:2;margin:8px 0 0;padding:0}#spinPanel .case-kicker{display:none}#spinPanel .case-title{font-size:25px;line-height:1.2;margin:0;color:#f3e8f6;text-shadow:none}#spinPanel .case-info{order:3;min-height:0;width:auto;max-width:100%;align-self:center;padding:8px 15px;margin:10px 0 18px;border:1px solid #624324;border-radius:7px;background:#281c12;gap:0}#spinPanel .case-coins{display:none}#spinPanel .spin-status{font-size:12px}#spinPanel #spinBalance:empty{display:none}
#spinPanel #spinCountRow{order:4;display:flex;width:100%;max-width:none;gap:8px;margin:0 0 10px}#spinPanel #spinCountRow[hidden]{display:none}#spinPanel #spinCountRow button{flex:1;border-radius:8px;height:42px;font-size:14px;box-shadow:none}#spinPanel #spinCountRow button.active,#spinPanel #spinCountRow button.on{background:#633b20;border-color:#c98742}
.case-action-bar{order:5;display:flex;gap:8px;align-items:stretch;width:100%;margin:0 0 22px}#spinPanel #spinBtn{flex:1;width:auto;max-width:none;margin:0;border-radius:9px;min-height:46px;font-size:14px;box-shadow:none}#spinPanel .spin-flash-row{margin:0;display:flex}#spinPanel #spinFlash{height:100%;max-width:165px;margin:0;border-radius:9px;font-size:10px;padding:10px}#spinPanel #spinRes{order:6}#spinPanel #caseContentsHead{order:7;margin:0;padding:18px 0 12px;font-size:14px;text-align:left}#spinPanel #caseContents{order:8}#spinPanel.res-on .case-action-bar{display:none}#spinPanel.res-on .case-stage{padding-top:16px}#spinPanel.res-on .case-head{margin:16px 0}
.case-opening-whole{animation:case-whole-release var(--chest-duration) cubic-bezier(.25,.7,.3,1) both}.case-opening-stage{animation:case-chest-depart var(--chest-duration) ease both}.case-release-spark{position:absolute;left:50%;top:48%;width:7px;height:7px;background:#ffe5b2;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:case-spark-release var(--chest-duration) ease-out both;--dx:-90px;--dy:-85px}.case-release-spark.s2{--dx:85px;--dy:-110px}.case-release-spark.s3{--dx:105px;--dy:20px}
@keyframes case-whole-release{0%{transform:scale(.98)}15%{transform:translateX(-2px) rotate(-1deg)}25%{transform:translateX(2px) rotate(1deg)}40%{transform:scale(.95)}72%{transform:translateY(-10px) scale(1.08);filter:brightness(1.25)}100%{transform:translateY(-15px) scale(1.12);opacity:0}}@keyframes case-spark-release{0%,35%{opacity:0;transform:translate(0,0) scale(.2)}50%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.5)}}
.hw-rift{display:none}.hw-conjuring-pot{position:absolute;left:50%;top:70%;width:120px;height:62px;transform:translate(-50%,-50%);border-radius:12px 12px 48px 48px;background:linear-gradient(100deg,#25122f,#6e427c,#25122f);border:3px solid #b685c4;box-shadow:0 -7px 0 #dcad65,0 14px 28px #0008;animation:hw-pot-bounce 1s ease-in-out infinite}.hw-conjuring-pot span{position:absolute;bottom:90%;left:25%;width:14px;height:14px;border-radius:50%;background:#9bf2bd;box-shadow:0 0 12px #8cffa9;animation:hw-bubble 1.5s ease-out infinite}.hw-conjuring-pot span:nth-child(2){left:60%;animation-delay:.5s;width:10px;height:10px}.hw-conjuring-pot span:nth-child(3){left:45%;animation-delay:1s;background:#dcb4ff}
.hw-conjured{position:absolute;left:50%;top:49%;width:135px;height:135px;transform:translate(-50%,-50%);opacity:0;animation:hw-cartoon-reveal var(--ritual-time) both;filter:drop-shadow(0 0 22px #cea2ff88)}.hw-conjured img,.hw-conjured svg{width:100%;height:100%;object-fit:contain}.hw-conjured svg{fill:#b798b0;stroke:#ebd5e4;stroke-width:1}.hw-ritual-crest,.hw-ritual-epic .hw-ritual-crest{top:29%;font-size:65px}.hw-ritual-loss .hw-conjured{animation:hw-cartoon-loss var(--ritual-time) both;filter:none}.hw-ritual-loss .hw-conjuring-pot span{background:#a894ae;box-shadow:none}.hw-ritual-epic .hw-conjuring-pot{border-color:#ffe19c;box-shadow:0 -7px 0 #ffdc85,0 0 40px #ffc75688}.hw-ritual-epic .hw-conjured{width:165px;height:165px;filter:drop-shadow(0 0 32px #ffd378)}.hw-cinematic{background:linear-gradient(0deg,#12091dcc,transparent 90%)}
@keyframes hw-pot-bounce{50%{transform:translate(-50%,-50%) rotate(2deg) scale(1.03)}}@keyframes hw-bubble{0%{opacity:0;transform:translateY(0) scale(.4)}25%{opacity:.9}100%{opacity:0;transform:translateY(-130px) scale(1.2)}}@keyframes hw-cartoon-reveal{0%,45%{opacity:0;transform:translate(-50%,20%) scale(.2)}65%{opacity:1;transform:translate(-50%,-60%) scale(1.12)}80%,100%{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes hw-cartoon-loss{0%,45%{opacity:0;transform:translate(-50%,0) scale(.5)}60%,75%{opacity:.7;transform:translate(-50%,-50%) scale(.7)}100%{opacity:0;transform:translate(-50%,40%) scale(.2)}}
@media(max-width:740px){#spinPanel:not([hidden]){padding:12px;border-radius:12px}#spinPanel .case-art{width:195px;height:195px}#spinPanel .case-title{font-size:21px}#spinPanel .case-info{margin:8px 0 14px}#spinPanel #spinFlash{font-size:0;max-width:46px;width:46px;padding:6px}#spinPanel #spinFlash:after{content:'ϟ';font-size:26px;color:#ffc56c}#spinPanel #caseContents{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}html:has(#spinSection:not([hidden]) #spinPanel:not([hidden])) #miniSide{display:none!important}html:has(#spinSection:not([hidden]) #spinPanel:not([hidden])) .mini-topnav{display:none!important}.hw-conjured{width:115px;height:115px}.hw-ritual-epic .hw-conjured{width:140px;height:140px}.seasonal-pumpkin svg{width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){.case-opening-stage *,.hw-conjuring-pot,.hw-conjuring-pot *,.hw-conjured{animation:none!important}}
html:has(#spinSection:not([hidden]) #spinPanel:not([hidden])) #autoPromoV98,html:has(#spinSection:not([hidden]) #spinPanel:not([hidden])) #lootFeed{display:none!important}
#spinPanel .case-art>.case-halo,#spinPanel .case-art>.case-rays,#spinPanel .case-art>.case-wave,#spinPanel .case-art>.case-flash,#spinPanel .case-art>.case-bolt,#spinPanel .case-art>.case-ring,#spinPanel .case-art>.case-spark{display:none!important}
#spinPanel #spinBtn{background:linear-gradient(180deg,#f8a343,#d77320)!important;color:#251309!important;box-shadow:inset 0 1px #ffe0a277!important}#spinPanel #spinCountRow button.on,#spinPanel #spinCountRow button.active{background:#643f26!important;border-color:#d7964e!important;color:#ffe7c7}
#spinPanel{scroll-margin-top:85px}#spinPanel .case-item{content-visibility:visible!important}
#caseSkip{display:block;margin:12px 0 2px auto;padding:10px 16px;border:1px solid #80613e;border-radius:8px;background:#211a17;color:#ffe2b7;font-size:12px;font-weight:600;cursor:pointer;min-height:40px}#caseSkip:hover:not(:disabled){background:#39271b;border-color:#d89b53}#caseSkip:focus-visible{outline:2px solid #ffc977;outline-offset:3px}#caseSkip:disabled{opacity:.7;cursor:default}@media(max-width:480px){#caseSkip{padding:10px 13px;font-size:11px}}
/* Consistent event controls, with distinct navigation and game-mode hierarchy. */
.hw-tabs{width:min(100%,490px);padding:5px;gap:5px;margin:20px auto 26px;border:1px solid #3f3548;border-radius:16px;background:#141019;box-shadow:0 8px 24px #0003}
.hw-tabs button{position:relative;flex:1;justify-content:center;min-height:49px;padding:11px 13px;border:1px solid transparent;border-radius:11px;background:transparent;color:#a49aaf;gap:9px;font-size:12px;font-weight:600;line-height:1.3;transition:background .18s,color .18s,border-color .18s}
.hw-tabs button[aria-selected=true]{color:#ffe3b2;background:linear-gradient(135deg,#3c2b33,#2b2235);border-color:#8b6550;box-shadow:inset 0 1px #f8c78c18,0 3px 10px #0003}
.hw-tabs button:hover:not(:disabled):not([aria-selected=true]){background:#241d2c;color:#eee3f6}.hw-tabs .hw-control-icon{width:21px;height:23px;flex-shrink:0}
.hw-heading{margin-bottom:22px}.hw-heading>.hw-eyebrow{display:none}.hw-heading h2{margin:0 0 10px}.hw-mode-dock{width:min(100%,390px);max-width:390px;display:flex;gap:8px;border:0;padding:0;margin:0 auto 22px;background:transparent;box-shadow:none}
.hw-mode-dock button{flex:1;min-height:46px;flex-direction:row;justify-content:center;align-items:center;gap:9px;padding:11px 14px;border:1px solid #42334f;border-radius:12px;background:#1b1522;color:#a99bb6;box-shadow:0 3px 0 #0b0810;transition:background .18s,color .18s,border-color .18s,transform .18s}
.hw-mode-dock button.on{background:linear-gradient(140deg,#4e3067,#362145);border:1px solid #aa7bc4;color:#f8e5ff;box-shadow:inset 0 1px #eec7ff25,0 3px 0 #180f20,0 6px 20px #9c59c414}
.hw-mode-dock button:after{display:none!important}.hw-mode-dock button b{font-size:12px;font-weight:600;line-height:1.25}.hw-mode-dock .hw-control-icon{width:21px;height:23px;flex-shrink:0;color:#c09cd8}.hw-mode-dock button.on .hw-control-icon{color:#f2c877}.hw-mode-dock button:hover:not(:disabled){transform:translateY(-1px);border-color:#bf93d2;color:#f3e7f8}.hw-mode-dock button:active:not(:disabled){transform:translateY(1px);box-shadow:none}
.hw-tabs button:focus-visible,.hw-mode-dock button:focus-visible{outline:2px solid #ffc778;outline-offset:4px}.hw-tabs button:disabled,.hw-mode-dock button:disabled{opacity:.6;transform:none}
.hw-rules-btn{padding:8px 12px!important;border:1px solid #3c3245;border-radius:9px;background:#18131e;color:#c8bcd0!important}.hw-back{padding:8px 0;color:#c8bcd0}.hw-event .hw-primary{border:1px solid #cb9458;background:linear-gradient(180deg,#a36335,#784124);color:#ffedcf;box-shadow:inset 0 1px #ffd6a333;min-height:45px}
@media(max-width:480px){.hw-tabs{margin:16px auto 22px;padding:4px;gap:4px;border-radius:14px}.hw-tabs button{min-height:55px;padding:10px 7px;font-size:11px;gap:7px}.hw-tabs .hw-control-icon{width:18px;height:22px}.hw-mode-dock{gap:8px;margin-bottom:18px}.hw-mode-dock button{padding:11px 8px;min-height:46px;gap:7px}.hw-mode-dock button b{font-size:11px}.hw-mode-dock .hw-control-icon{width:19px}.hw-heading h2{font-size:27px}.hw-heading p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.hw-tabs button,.hw-mode-dock button{transition:none}}
.hw-mode-dock button.on{border-radius:12px}html.hw-event-visible #lootFeed{display:none!important}
/* Cozy storybook courtyard and an illustrated magical deal card. */
.hw-castle .hw-scene-bg{background-image:linear-gradient(0deg,#33223b44,transparent 65%),url('img/dracula-courtyard-light.webp');background-position:center;filter:none}.hw-castle .hw-fog{display:none}.hw-scene{border-color:#81617d;border-radius:22px}.hw-panel{background:linear-gradient(145deg,#302238,#211b2d);border-color:#69506e;border-radius:20px;box-shadow:inset 0 1px #e3c1e411,0 12px 30px #0002}.hw-panel .hw-eyebrow{color:#f9c990}.hw-item-picker{border:1px dashed #ad83b2;background:#201929;border-radius:15px;transition:background .2s,border-color .2s}.hw-item-picker:not(:disabled):hover{background:#3c2a45;border-color:#e4b2cf}.hw-item-plus{color:#ffd590}.hw-muted,.hw-heading p,.hw-below-scene{color:#c6b6cd}
.hw-stages{padding:6px 9px;border:1px solid #cfa57b88;border-radius:30px;background:#332438dd;gap:10px}.hw-stages:before{display:none}.hw-stages span{width:31px;height:31px;background:#654260;border:1px solid #bd8a95;color:#ffe8cb;font-family:inherit;font-weight:700;font-size:12px;box-shadow:inset 0 2px #fff1}.hw-stages .current{background:#e9a84f;border-color:#ffe0a1;color:#402a36;box-shadow:0 2px 10px #eec17d55}.hw-stages .done{background:#7db88f;color:#183b31;border-color:#c6e8b5}
.hw-gates{left:7%;right:7%;gap:4%;bottom:62px}.hw-door-pair{top:13%;left:15%;right:15%;bottom:4%;clip-path:ellipse(72% 90% at 50% 90%);border-radius:48% 48% 0 0}.hw-door{background:repeating-linear-gradient(90deg,transparent 0 23%,#49253b66 24% 27%,transparent 28% 50%),linear-gradient(90deg,#784351,#aa6a6c,#74424f);border:1px solid #b77a70;box-shadow:inset 0 0 12px #35233755}.hw-door:before,.hw-door:after{height:6px;left:3px;right:3px;border:1px solid #f3c690;border-radius:3px;background:#d49e65}.hw-door:before{top:43%}.hw-door:after{top:79%}.hw-gate-sigil{top:49%;color:#593647;background:linear-gradient(#ffdf9a,#e5ac60);border:2px solid #fff0b7;box-shadow:0 3px 0 #754757,0 5px 12px #29182755;font-weight:bold}.hw-gate-number{color:#ffedcf;text-shadow:0 2px 5px #35243a;font-size:10px}.hw-gate-glow{background:radial-gradient(#ffdf9a,#c887ac 60%,#5f4079);border-radius:45% 45% 0 0}.hw-door-outcome{inset:16% 16% 5%;background:linear-gradient(0deg,#3c4e4bf5,#394b53e6,transparent);border-radius:42% 42% 0 0}.hw-door-outcome.bad{background:linear-gradient(0deg,#463247f5,#59405be6,transparent)}.hw-door-outcome.bad b,.hw-door-outcome.bad small{color:#ead0e7}.hw-scene-caption{color:#f2dfcd}
.hw-cinematic{perspective:1100px;background:linear-gradient(0deg,#1c1228b3,transparent 95%);animation:none}.hw-cinematic:before,.hw-cinematic:after{display:none!important}.hw-deal-card{position:absolute;left:50%;top:52%;width:180px;height:250px;transform-style:preserve-3d;animation:hw-deal-flip var(--ritual-time) cubic-bezier(.35,.1,.2,1) both;filter:drop-shadow(0 12px 18px #120b2280)}.hw-deal-back,.hw-deal-front{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:20px;border:3px solid #edc58e;overflow:hidden;box-shadow:inset 0 0 0 5px #34213f,inset 0 0 0 6px #b086ad;background:repeating-linear-gradient(45deg,#56386b 0 14px,#513363 14px 28px);display:flex;align-items:center;justify-content:center;flex-direction:column}.hw-deal-back>svg{width:104px;height:104px;filter:drop-shadow(0 4px 0 #291e3b66)}.hw-card-corner{position:absolute;left:15px;top:15px;color:#ffe0a0;font-size:20px}.hw-card-corner.bottom{left:auto;top:auto;bottom:15px;right:15px}.hw-deal-front{transform:rotateY(180deg);background:linear-gradient(145deg,#f5e4c9,#e8cba8);color:#4e3047;box-shadow:inset 0 0 0 5px #fbefdb,inset 0 0 0 6px #c69870;padding:19px 12px}.hw-deal-front small{font-size:8px;font-weight:700;letter-spacing:.15em;color:#8c6074}.hw-deal-front strong{font-size:42px;line-height:1.1;letter-spacing:-.06em;margin:5px 0}.hw-card-prize{height:115px;width:125px;display:grid;place-items:center}.hw-card-prize img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 5px #713f5940)}.hw-card-prize svg{width:75px;height:45px;color:#8f6e9e}.hw-deal-front b{text-align:center;font-size:11px;line-height:1.3;margin-top:7px}.hw-ritual-epic .hw-deal-front{background:linear-gradient(145deg,#fff1bd,#f4cc79);border-color:#fff2c5}.hw-ritual-high .hw-deal-front{background:linear-gradient(145deg,#f2e4fc,#d8bfe9)}.hw-ritual-loss .hw-deal-front{background:linear-gradient(145deg,#e0d8e5,#b9abc9);border-color:#e0d2e5;color:#635371}.hw-ritual-message{bottom:35px;font-size:11px!important;letter-spacing:.03em!important;color:#ffe6c7!important}.hw-cinematic>i{background:#ffe3a1;width:5px;height:5px;border-radius:1px;animation:hw-card-spark var(--ritual-time) ease-out both;left:50%;top:53%;--angle:calc(var(--p)*22.5deg)}.hw-ritual-loss .hw-cinematic>i{display:none}.hw-ritual-epic .hw-cinematic>i{width:7px;height:7px;background:#ffe6a8}.hw-summoning .hw-sacrifice{animation:hw-card-offer var(--ritual-time) ease both}
@keyframes hw-deal-flip{0%{opacity:0;transform:translate(-50%,-30%) rotate(-12deg) rotateY(0) scale(.5)}18%,33%{opacity:1;transform:translate(-50%,-50%) rotate(-5deg) rotateY(0) scale(1)}45%{transform:translate(-50%,-54%) rotate(3deg) rotateY(20deg)}68%{transform:translate(-50%,-50%) rotate(0) rotateY(180deg) scale(1.05)}80%,100%{opacity:1;transform:translate(-50%,-50%) rotate(0) rotateY(180deg) scale(1)}}@keyframes hw-card-spark{0%,56%{opacity:0;transform:rotate(var(--angle)) translateX(15px)}65%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateX(170px) rotate(90deg)}}@keyframes hw-card-offer{0%{opacity:1}18%,100%{opacity:0;transform:translateY(-20px) scale(.8)}}
@media(max-width:740px){.hw-deal-card{width:150px;height:218px;top:52%}.hw-deal-front{padding:15px 10px}.hw-deal-front strong{font-size:35px}.hw-card-prize{height:95px;width:110px}.hw-deal-front b{font-size:10px}.hw-deal-back>svg{width:85px;height:85px}.hw-stages{gap:7px;padding:5px 7px}.hw-stages span{width:27px;height:27px;font-size:11px}.hw-gates{left:5%;right:5%;gap:3%}.hw-gate-number{font-size:9px}.hw-ritual-message{bottom:24px;font-size:10px!important}}
@media(prefers-reduced-motion:reduce){.hw-deal-card,.hw-cinematic>i{animation:none!important}}
.hw-deal-card{filter:none}.hw-deal-back{transform:rotateY(0deg)}.hw-deal-back,.hw-deal-front{box-shadow:0 12px 18px #120b2260,inset 0 0 0 5px #34213f,inset 0 0 0 6px #b086ad}.hw-deal-front{box-shadow:0 12px 18px #120b2260,inset 0 0 0 5px #fbefdb,inset 0 0 0 6px #c69870}
.hw-deal-back{backface-visibility:visible;-webkit-backface-visibility:visible;animation:hw-card-back-face var(--ritual-time) linear both}.hw-deal-front{backface-visibility:visible;-webkit-backface-visibility:visible;animation:hw-card-front-face var(--ritual-time) linear both}
@keyframes hw-card-back-face{0%,54%{visibility:visible;opacity:1}54.01%,100%{visibility:hidden;opacity:0}}@keyframes hw-card-front-face{0%,54%{visibility:hidden;opacity:0}54.01%,100%{visibility:visible;opacity:1}}
/* Pumpkin-orange tactile controls and gently living dealer scene. */
.hw-tabs{background:#2c1c29;border-color:#895538;box-shadow:0 4px 0 #160f19;padding:6px}.hw-tabs button{color:#e4b99b;border-radius:12px}.hw-tabs button[aria-selected=true]{background:linear-gradient(180deg,#ffc36a,#ec913a);color:#532b24;border:1px solid #ffe0a0;box-shadow:inset 0 2px #fff0bc88,0 3px 0 #9c4f2d;text-shadow:0 1px #ffe1ab55}.hw-tabs button:hover:not(:disabled):not([aria-selected=true]){background:#563041;color:#ffdcac}
.hw-mode-dock button{background:linear-gradient(180deg,#82472f,#603344);border:1px solid #bc7c53;color:#ffe0b5;border-radius:14px;box-shadow:inset 0 1px #e4a76744,0 4px 0 #321b2a;min-height:49px}.hw-mode-dock button.on{background:linear-gradient(180deg,#ffc876,#f09c43);color:#5b2e26;border:1px solid #ffe5ad;border-radius:14px;box-shadow:inset 0 2px #fff1c488,0 4px 0 #a4522f,0 7px 18px #e88d2422}.hw-mode-dock .hw-control-icon{color:#f3bf7f}.hw-mode-dock button.on .hw-control-icon{color:#753623}.hw-mode-dock button:hover:not(:disabled){border-color:#ffe2a4;color:#ffeacb}.hw-mode-dock button.on:hover:not(:disabled){color:#4d2726;background:linear-gradient(#ffd48d,#f4aa55)}.hw-tabs button:active:not(:disabled),.hw-mode-dock button:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 1px #ffe2a333,0 1px 0 #8b482d}
.hw-dealer-life{position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:linear-gradient(0deg,#10090c77,transparent 60%),url('img/devil-dealer-light.webp');background-size:cover;background-position:center;mask-image:linear-gradient(#000 0 43%,transparent 64%);-webkit-mask-image:linear-gradient(#000 0 43%,transparent 64%);transform-origin:50% 60%;animation:hw-dealer-breathe 5.8s ease-in-out infinite}.hw-candle-glow{position:absolute;pointer-events:none;z-index:0;top:21%;width:65px;height:110px;background:radial-gradient(#ffc27430,transparent 68%);mix-blend-mode:screen;animation:hw-candle-flicker 2.4s ease-in-out infinite}.hw-candle-glow.left{left:5%}.hw-candle-glow.right{right:5%;animation-delay:-1.3s}.hw-table .hw-ember{background:#ffd899;animation-duration:7s}.hw-table .hw-scene-caption{color:#ffe3bd}
@keyframes hw-dealer-breathe{0%,100%{transform:translateY(0) rotate(-.15deg) scale(1)}50%{transform:translateY(-3px) rotate(.2deg) scale(1.012)}}@keyframes hw-candle-flicker{0%,100%{opacity:.45;transform:scale(.96)}24%,68%{opacity:.9;transform:scale(1.05)}45%,80%{opacity:.65;transform:scale(.98)}}
.hw-card-trim{position:absolute;color:#bb7b38;font-size:20px;line-height:1}.hw-card-trim.tl{top:13px;left:13px}.hw-card-trim.br{bottom:13px;right:13px}.hw-deal-front:after{content:'';position:absolute;inset:10px;border:1px solid #c7955f66;border-radius:11px;pointer-events:none}.hw-deal-front small{margin-top:3px}.hw-deal-front b{position:relative;padding:5px 9px;background:#ffffff35;border-radius:7px;max-width:100%}.hw-ritual-epic .hw-deal-front{border-color:#fff1b8;box-shadow:0 12px 24px #26132266,0 0 24px #f6b54444,inset 0 0 0 5px #fff2d0,inset 0 0 0 6px #c99b53}
.hw-result.is-finale{background:radial-gradient(ellipse at 50% 40%,#6d4c3555,#171022bb);backdrop-filter:blur(3px);overflow:hidden;padding:18px}.hw-result.is-finale .hw-result-sheet{border:2px solid #efc16e;background:linear-gradient(150deg,#483147,#28223a);box-shadow:0 0 45px #f0b74933,0 20px 50px #0007;animation:hw-grand-prize .9s cubic-bezier(.2,1.25,.4,1) both;padding:18px 22px}.hw-victory-title{font-size:25px;line-height:1.15;color:#ffe6a8;margin:7px 0 5px;letter-spacing:-.04em}.hw-victory-stars{color:#ffd778;letter-spacing:7px;font-size:17px;animation:hw-victory-stars 1.1s ease both}.hw-victory-subtitle{font-size:10px;color:#d5bbcf}.is-finale .hw-result-kicker{display:none}.is-finale .hw-result-mult{margin-top:12px}.is-finale .hw-result-mult strong{font-size:40px;color:#ffe5a4}.is-finale .hw-result-art{height:105px;margin:2px auto 8px}.is-finale .hw-result-art img{width:110px;height:105px}.is-finale h3{font-size:18px}.is-finale p{margin-bottom:12px}.hw-victory-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2}.hw-victory-confetti i{position:absolute;left:calc(var(--n)*3.7%);top:-8%;width:7px;height:12px;background:#ffca67;border-radius:2px;animation:hw-confetti-fall 3.6s calc(var(--n)*.04s) cubic-bezier(.15,.6,.55,1) both}.hw-victory-confetti i:nth-child(3n){background:#d8a4ed;width:8px;height:8px}.hw-victory-confetti i:nth-child(3n + 1){background:#a6e7c2}.hw-victory-confetti i:nth-child(4n){clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%);width:13px;height:13px}
@keyframes hw-grand-prize{from{opacity:0;transform:translateY(30px) scale(.8)}to{opacity:1;transform:none}}@keyframes hw-victory-stars{0%,30%{opacity:0;transform:scale(.4)}70%{transform:scale(1.15)}100%{opacity:1;transform:scale(1)}}@keyframes hw-confetti-fall{0%{opacity:0;transform:translateY(-20px) rotate(0)}10%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translateY(560px) rotate(440deg)}}
@media(max-width:740px){.hw-victory-title{font-size:23px}.hw-result.is-finale .hw-result-sheet{padding:16px 18px}.hw-victory-stars{font-size:15px;letter-spacing:5px}.hw-castle:has(.is-finale){min-height:510px}.hw-mode-dock button{min-height:47px}}
@media(prefers-reduced-motion:reduce){.hw-dealer-life,.hw-candle-glow,.hw-victory-confetti i,.hw-victory-stars,.hw-result.is-finale .hw-result-sheet{animation:none!important}.hw-victory-confetti{display:none}}
/* Quiet flat navigation: one accent, no bevels. */
.hw-cup-hint{position:absolute;left:50%;top:40%;z-index:8;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:5px;width:230px;max-width:90%;pointer-events:none;text-align:center}
.hw-cup-hint .hw-hint-hand{width:48px;height:54px;filter:drop-shadow(0 3px 3px #190e1b80);animation:hw-hint-tap 1.6s ease-in-out infinite}
.hw-cup-hint>span{display:block;padding:8px 12px;border:1px solid #e6ae66;border-radius:9px;background:#241728f2;color:#ffe4bc;font-size:12px;font-weight:600;line-height:1.3;box-shadow:0 4px 12px #14091655}
@keyframes hw-hint-tap{0%,60%,100%{transform:translate(8px,6px) rotate(-10deg)}25%,40%{transform:translate(0,-5px) rotate(-5deg)}}
@media(max-width:740px){.hw-cup-hint{top:26%;width:200px}.hw-cup-hint .hw-hint-hand{width:38px;height:43px}.hw-cup-hint>span{font-size:11px;padding:7px 10px}}
@media(prefers-reduced-motion:reduce){.hw-cup-hint .hw-hint-hand{animation:none}}
.hw-heading p:empty{display:none}.hw-heading{margin-bottom:22px}
.hw-tabs{background:#17131a;border:1px solid #39303c;border-radius:10px;box-shadow:none;padding:4px;gap:4px;width:min(100%,460px)}
.hw-tabs button,.hw-tabs button[aria-selected=true]{min-height:43px;padding:10px 15px;border:0;border-radius:6px;box-shadow:none;text-shadow:none;font-weight:500;font-size:12px;background:transparent;color:#b9aebd;transform:none}
.hw-tabs button[aria-selected=true]{background:#ed9a43;color:#241914}.hw-tabs button:hover:not(:disabled):not([aria-selected=true]){background:#28212c;color:#eee4f0}.hw-tabs button[aria-selected=true]:hover:not(:disabled){background:#f5ad60;color:#241914}
.hw-mode-dock{gap:8px;max-width:360px}.hw-mode-dock button,.hw-mode-dock button.on{min-height:43px;padding:10px 16px;border:1px solid #433541;border-radius:7px;background:#201922;color:#c3b6c6;box-shadow:none;transform:none}
.hw-mode-dock button.on{background:#ed9a43;border-color:#ed9a43;color:#241914}.hw-mode-dock button b{font-weight:500;font-size:12px}.hw-mode-dock .hw-control-icon{color:inherit;width:18px;height:20px}.hw-mode-dock button.on .hw-control-icon{color:inherit}.hw-mode-dock button:hover:not(:disabled){background:#302332;border-color:#775569;color:#f1e3ed;transform:none}.hw-mode-dock button.on:hover:not(:disabled){background:#f5ad60;border-color:#f5ad60;color:#241914}.hw-tabs button:active:not(:disabled),.hw-mode-dock button:active:not(:disabled){transform:none;box-shadow:none;filter:brightness(.92)}
.hw-dealer-life{mask-image:linear-gradient(#000 0 46%,transparent 66%);-webkit-mask-image:linear-gradient(#000 0 46%,transparent 66%);animation:hw-dealer-breathe 4.8s ease-in-out infinite;will-change:transform;transform-origin:50% 64%}
@keyframes hw-dealer-breathe{0%,100%{transform:translate(0,0) rotate(-.35deg) scale(1.004)}50%{transform:translate(2px,-5px) rotate(.4deg) scale(1.025)}}
@media(max-width:480px){.hw-tabs button{padding:10px 7px;font-size:11px;min-height:46px}.hw-mode-dock button{padding:10px 8px;min-height:44px}.hw-mode-dock button b{font-size:11px}}
@media(prefers-reduced-motion:reduce){.hw-dealer-life{animation:none!important;will-change:auto}}

/* Infernal trade: the stake becomes a soul, then the settled reward emerges. */
.hw-soul-show{--soul:#b27bff;--soul-hot:#ffad55;perspective:none;background:linear-gradient(0deg,#0c0815d9,#100b2033 80%);isolation:isolate}
.hw-summoning .hw-sacrifice{visibility:hidden;animation:none}
.hw-soul-floor{position:absolute;left:50%;top:77%;width:210px;height:48px;border-radius:50%;background:radial-gradient(ellipse,#f5c28d99,#b76bff55 40%,transparent 70%);transform:translate(-50%,-50%);animation:hw-soul-floor 4.8s both}
.hw-soul-flight{position:absolute;width:156px;height:156px;left:calc(50% - 78px);top:calc(54% - 78px);animation:hw-soul-flight 4.8s both;z-index:2}
.hw-soul-aura{position:absolute;inset:-55px;border-radius:50%;background:radial-gradient(circle,#d09aff55,transparent 66%);animation:hw-soul-breathe .7s ease-in-out infinite alternate}
.hw-soul-core{position:absolute;inset:39px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff8e7 0 9%,#ffc474 23%,#e68bff 53%,#803edf 73%,transparent 75%);box-shadow:0 0 28px #ba7bff,0 0 75px #a755fb80,inset -8px -10px 18px #54258b;animation:hw-soul-core 4.8s both}
.hw-soul-orbits{position:absolute;inset:0;animation:hw-soul-turn 1.15s linear infinite}
.hw-soul-orbits i{position:absolute;inset:4px;border-radius:50%;border:2px solid transparent;border-top-color:#ffd294;border-left-color:#ffd29450;transform:rotate(-28deg) scaleY(.55);filter:drop-shadow(0 0 5px #ffb663)}
.hw-soul-orbits i:after{content:'';position:absolute;top:13%;left:12%;width:12px;height:12px;background:#fff0cd;border-radius:50%;box-shadow:0 0 15px 4px #ffa957}
.hw-soul-orbits i:nth-child(2){inset:-13px;transform:rotate(58deg) scaleY(.55);border-top-color:#d9b4ff;border-left-color:#a978ff66;filter:drop-shadow(0 0 6px #b16dff)}
.hw-soul-orbits i:nth-child(3){inset:18px;transform:rotate(120deg) scaleY(.6);border-top-color:#ffa7dd}
.hw-soul-offer{position:absolute;inset:17px;display:grid;place-items:center;animation:hw-soul-offer 4.8s both}
.hw-soul-offer img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 12px #0008)}
.hw-soul-flash{position:absolute;inset:0;z-index:3;background:radial-gradient(circle at 50% 54%,#ffefd3,#d099ff70 18%,transparent 60%);opacity:0;animation:hw-soul-flash 4.8s both}
.hw-soul-particles{position:absolute;left:50%;top:54%;z-index:4}
.hw-soul-particles i{position:absolute;width:4px;height:4px;background:#ffe7b2;border-radius:1px;box-shadow:0 0 8px #ffad58;--angle:calc(var(--n)*15deg);animation:hw-soul-burst 4.8s both}
.hw-soul-particles i:nth-child(3n){background:#d8b8ff;box-shadow:0 0 8px #ad6bff;width:3px;height:8px}
.hw-soul-smoke{position:absolute;left:50%;top:54%;z-index:3;display:none}
.hw-soul-smoke i{position:absolute;width:85px;height:85px;left:-42px;top:-42px;border-radius:50%;background:radial-gradient(circle,#baa4ca65,transparent 70%);animation:hw-soul-smoke 4.8s both;--drift:-60px}
.hw-soul-smoke i:nth-child(2){--drift:55px;width:100px;height:100px}.hw-soul-smoke i:nth-child(3){--drift:5px}
.hw-ritual-loss .hw-soul-smoke{display:block}.hw-ritual-loss .hw-soul-flash{opacity:0!important}.hw-ritual-loss .hw-soul-particles{display:none}
.hw-ritual-loss .hw-soul-core{animation-name:hw-soul-core-loss}
.hw-soul-show .hw-ritual-message{bottom:27px;animation:hw-soul-caption 4.8s both;color:#ecd9f9!important;font-size:11px!important;letter-spacing:.03em!important}
.hw-soul-reward{position:absolute;inset:0;z-index:5;animation:hw-soul-reward 4.8s both}
.hw-hell .hw-result{padding:22px;background:#0a071563;backdrop-filter:blur(5px);animation:none}
.hw-hell .hw-result:before{display:none}
.hw-hell .hw-result-sheet{--reward-color:#a67bfa;position:relative;isolation:isolate;overflow:hidden;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:0;width:286px;max-width:100%;padding:23px 22px 20px;border:1px solid #9570ce88;border-radius:16px;background:radial-gradient(ellipse at 50% 26%,#442865d9,transparent 68%),linear-gradient(155deg,#241835fa,#100e1cfc);box-shadow:0 22px 65px #030207b3,inset 0 1px #dbc2ff26;animation:none}
.hw-hell .hw-result-sheet:before{content:'';position:absolute;inset:-30% -25% 17%;z-index:-1;background:repeating-conic-gradient(from 10deg at 50% 56%,transparent 0deg 17deg,#bf8fff10 18deg 27deg,transparent 28deg 45deg);mask-image:radial-gradient(ellipse,#000,transparent 65%);animation:hw-soul-turn 50s linear infinite}
.hw-hell .hw-result-sheet:after{content:'';position:absolute;top:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,#ddbaff,transparent)}
.hw-hell .hw-result-kicker{order:0;color:#bca4d9;font-size:9px;letter-spacing:.16em}
.hw-hell .hw-result-art{order:1;display:grid;place-items:center;width:100%;height:142px;margin:8px 0 0;background:radial-gradient(ellipse,#a86af62b,transparent 65%)}
.hw-hell .hw-result .hw-result-art img{width:142px;height:142px;object-fit:contain;filter:drop-shadow(0 8px 12px #0008);animation:hw-soul-prize-float 4s ease-in-out infinite}
.hw-hell .hw-result h3{order:2;font-family:inherit;font-weight:750;font-size:18px;line-height:1.25;color:#fff4e9;margin:8px 0 0;text-wrap:balance}
.hw-hell .hw-result-mult{order:3;margin:10px 0 6px;display:flex;align-items:center;gap:6px}
.hw-hell .hw-result-mult small{display:none}.hw-hell .hw-result-mult strong{font-size:32px;font-weight:800;line-height:1.1;color:#caa4ff;text-shadow:none;letter-spacing:-.04em}
.hw-hell .hw-result p{order:4;display:flex;flex-direction:column;gap:5px;font-size:10px;line-height:1.5;color:#9e8fae;margin:0 0 16px}
.hw-hell .hw-result p b{font-size:14px;color:#ffd491}.hw-hell .hw-result p span{display:block}
.hw-hell .hw-result .hw-primary{order:5;margin:0;width:100%;min-height:40px;border:1px solid #f9b66588;border-radius:8px;background:linear-gradient(#f4b65f,#e7943d);color:#382115!important;box-shadow:inset 0 1px #ffe5b780;font-size:12px!important;padding:10px 12px;gap:8px}
.hw-hell .result-epic .hw-result-sheet{border-color:#e9b35d99;--reward-color:#efbe70;background:radial-gradient(ellipse at 50% 26%,#634329ba,transparent 65%),linear-gradient(155deg,#2d2132fa,#15101cfc)}
.hw-hell .result-epic .hw-result-mult strong{color:#ffd184}
.hw-hell .hw-result.is-loss .hw-result-sheet{padding:26px 22px 22px;background:radial-gradient(ellipse at 50% 36%,#3c2a4dc9,transparent 70%),#15111fee;border-color:#78618d80}
.hw-hell .hw-result.is-loss .hw-result-sheet:before{display:none}
.hw-hell .hw-result.is-loss .hw-result-art{display:none}
.hw-hell .hw-result.is-loss .hw-result-mult{order:1;margin:30px 0 22px}
.hw-hell .hw-result.is-loss .hw-result-mult strong{font-size:68px;color:#b5a2c7;font-weight:750}
.hw-hell .hw-result.is-loss h3{font-size:18px;margin:0 0 10px}
.hw-hell .hw-result.is-loss p{margin-bottom:22px;max-width:190px}
@keyframes hw-soul-flight{0%{opacity:0;transform:translateY(90px) scale(.7)}10%{opacity:1}26%{transform:translateY(-14px) scale(1)}40%{transform:translate(8px,-23px) scale(1.06)}53%{transform:translate(-7px,-12px) scale(1.14)}63%{opacity:1;transform:translateY(0) scale(.92)}72%{opacity:1;transform:scale(.12)}76%,100%{opacity:0;transform:scale(.02)}}
@keyframes hw-soul-core{0%,12%{opacity:0;transform:scale(.25)}31%{opacity:1;transform:scale(.8)}60%{opacity:1;transform:scale(1.5)}72%,100%{opacity:1;transform:scale(1)}}
@keyframes hw-soul-core-loss{0%,12%{opacity:0;transform:scale(.25)}31%{opacity:1;transform:scale(.8)}57%{opacity:1;filter:saturate(1)}70%,100%{opacity:.3;filter:saturate(0);transform:scale(.6)}}
@keyframes hw-soul-offer{0%,12%{opacity:1;transform:scale(1)}32%,100%{opacity:0;transform:scale(.12) rotate(-30deg)}}
@keyframes hw-soul-floor{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}15%,55%{opacity:1;transform:translate(-50%,-50%) scale(1)}76%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.4)}}
@keyframes hw-soul-flash{0%,70%{opacity:0;transform:scale(.5)}75%{opacity:.9;transform:scale(1.1)}86%,100%{opacity:0;transform:scale(1.5)}}
@keyframes hw-soul-burst{0%,72%{opacity:0;transform:rotate(var(--angle)) translateX(0)}77%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateX(var(--travel)) rotate(110deg)}}
@keyframes hw-soul-smoke{0%,65%{opacity:0;transform:scale(.3)}75%{opacity:.9}100%{opacity:0;transform:translate(var(--drift),-80px) scale(2)}}
@keyframes hw-soul-reward{0%,78%{opacity:0;visibility:hidden;transform:translateY(22px) scale(.86)}79%{visibility:visible}94%,100%{opacity:1;visibility:visible;transform:none}}
@keyframes hw-soul-caption{0%,65%{opacity:1}76%,100%{opacity:0}}
@keyframes hw-soul-turn{to{transform:rotate(360deg)}}
@keyframes hw-soul-breathe{to{opacity:.5;transform:scale(.85)}}
@keyframes hw-soul-prize-float{50%{transform:translateY(-5px)}}
@media(max-width:740px){.hw-hell .hw-scene,.hw-hell .hw-scene:has(.hw-result){min-height:420px}.hw-hell .hw-result-sheet{width:252px;padding:19px 18px 17px}.hw-hell .hw-result-art{height:116px}.hw-hell .hw-result .hw-result-art img{width:116px;height:116px}.hw-hell .hw-result h3{font-size:16px}.hw-hell .hw-result-mult strong{font-size:29px}.hw-hell .hw-result .hw-primary{min-height:40px}.hw-soul-flight{top:calc(51% - 78px)}.hw-soul-show .hw-ritual-message{bottom:23px}}
@media(prefers-reduced-motion:reduce){.hw-soul-show,.hw-soul-show *,.hw-hell .hw-result *,.hw-hell .hw-result-sheet:before{animation:none!important}.hw-soul-reward{visibility:visible;opacity:1}.hw-soul-flight,.hw-soul-flash,.hw-soul-particles,.hw-soul-smoke{display:none}}

/* Seasonal artwork is shared; original PNGs remain intact for archival use. */
.hw-event,.hw-hub-card,.hw-home-banner{--hw-castle-art:url('img/dracula-courtyard-light.webp');--hw-dealer-art:url('img/devil-dealer-light.webp')}
.hw-castle .hw-scene-bg{background-image:linear-gradient(0deg,#33223b44,transparent 65%),var(--hw-castle-art)}
.hw-table .hw-scene-bg,.hw-dealer-life{background-image:linear-gradient(0deg,#10090c77,transparent 60%),var(--hw-dealer-art)}
.hw-home-banner{position:relative;isolation:isolate;overflow:hidden;min-height:170px;padding:24px 32px;border-color:#b26c3877;background:linear-gradient(90deg,#21121df5 15%,#21121de0 45%,#21121d44),var(--hw-castle-art) 80% 36%/cover}
.hw-home-banner .hw-banner-pumpkin{display:block;order:3;width:118px;flex:0 0 118px;transform:rotate(8deg);filter:drop-shadow(0 7px 0 #2a1328) drop-shadow(0 0 18px #ff9a3430)}
.hw-banner-pumpkin svg{width:100%;display:block}.hw-banner-copy{flex:1;min-width:0}
.hw-home-banner b{font:800 clamp(24px,3vw,34px)/1.12 var(--font-display,system-ui);letter-spacing:-.04em;max-width:410px;color:#ffe3b9}
.hw-home-banner em{font-size:13px;line-height:1.5;max-width:360px;display:block;color:#d3bdce}
.hw-home-banner strong{background:#f3a04c;border:0;border-radius:9px;color:#2f1d1c;padding:14px 20px;font-size:13px}
.hw-hub-card{background-image:linear-gradient(90deg,#190f11ef,#190f1155),var(--hw-castle-art)}
.hw-heading{position:relative}.hw-heading-pumpkin{display:block;width:44px;margin:0 auto 8px}.hw-heading-pumpkin svg{width:100%;display:block}
.hw-heading>.hw-eyebrow{display:none}.hw-heading h2{color:#ffe2b5}
.hw-scene{border-color:#ae794f88}.hw-panel{border-color:#8d614e66;background:linear-gradient(150deg,#2c2031,#19151f)}
.hw-rewards>summary{font-size:12px;font-weight:650;color:#ead4c0;padding:12px 0;cursor:pointer;line-height:1.4}
.hw-rewards>summary:focus-visible{outline:2px solid #f6be7d;outline-offset:2px}
.hw-event .hw-primary:not(:disabled){background:linear-gradient(#f7b45c,#e58a37);color:#302017!important;border-color:#e9a356;box-shadow:inset 0 1px #ffe0a455;font-weight:750!important}
.hw-event .hw-primary:disabled{background:#352a38;color:#aa98ae!important;border-color:#554158;opacity:1;box-shadow:none}
html[data-season=halloween] .sup-fab{background:#b96b2b;border-color:#f8b86866;box-shadow:0 4px 15px #100a1670}
/* Touch layout: meaningful controls stay large; background decoration stays still. */
@media(max-width:740px){
 html[data-season=halloween] body{background-image:radial-gradient(ellipse at 0 0,#632e222b,transparent 600px);background-attachment:scroll}

 .tg-mini .topbar{background:#120e17!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border-bottom-color:#9b583b66}
 .tg-mini .topbar-brand{min-height:44px}.tg-mini .mini-burger,.tg-mini .mini-plus,.tg-mini .mini-gear{width:44px;height:44px;min-width:44px}
 .mini-drawer button,.mini-nav button{min-height:44px}
 .auto-promo-v98{padding:14px!important;border-radius:14px!important;margin-bottom:14px!important}
 .ap-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}
 .ap-offer{grid-column:1/-1;gap:10px}.ap-symbol{width:36px;height:36px}.ap-kicker{font-size:10px;letter-spacing:.08em}.ap-percent{font-size:28px}.ap-caption{font-size:12px}
 .ap-clock{grid-column:1;grid-row:2;height:66px;min-height:66px;padding:5px;background:#ffffff03}
 .ap-code-box{grid-column:2;grid-row:2;height:66px;min-height:66px;padding:0!important;overflow:visible}
 .ap-code-label{position:absolute;top:7px;left:0;right:0;pointer-events:none;font-size:10px!important;z-index:1}
 .ap-code{width:100%;height:66px!important;min-height:66px!important;padding:20px 6px 5px!important;font-size:19px!important;line-height:1.2!important;border-radius:11px}
 .ap-clock>span{font-size:10px}.ap-clock time{font-size:23px}.ap-feedback{font-size:11px}
 .ap-deposit{grid-column:1/-1;height:44px;min-height:44px;flex-direction:row;font-size:13px!important;padding:8px;gap:8px}
 .hw-home-banner{min-height:154px;display:grid;grid-template-columns:minmax(0,1fr) 74px;gap:11px 8px;padding:18px;margin:4px auto 24px;border-radius:16px;background-position:80% center}
 .hw-home-banner .hw-banner-pumpkin{grid-column:2;grid-row:1/3;width:74px;transform:rotate(7deg);filter:none;align-self:center}
 .hw-banner-copy{grid-column:1;grid-row:1}.hw-home-banner small{font-size:10px;letter-spacing:.09em}.hw-home-banner b{font-size:24px;margin:7px 0 6px;max-width:230px}
 .hw-home-banner em{font-size:12px;line-height:1.4}.hw-home-banner strong{grid-column:1;grid-row:2;justify-self:start;min-height:44px;box-sizing:border-box;padding:12px 17px;font-size:13px}
 #caseGroups .case-card,#caseGroups .case-card *,#caseGroups .case-card:before,#caseGroups .case-card:after,#caseGroups .case-card *:before,#caseGroups .case-card *:after{animation:none!important;transition:none!important;will-change:auto!important}
 html[data-season=halloween] #caseGroups .case-card:after,#caseGroups .case-card .sp,#caseGroups .case-card .cc-badges{display:none!important}
 #caseGroups .case-card{box-shadow:none!important;background:#17121c!important;border:1px solid #584139!important;border-radius:14px!important;padding:12px 10px!important}
 #caseGroups .case-card .sc-case,#caseGroups .case-card .sc-case img{filter:none!important;box-shadow:none!important}
 #caseGroups .cc-title{font-size:14px!important;line-height:1.25!important;letter-spacing:-.02em!important;text-transform:none!important}
 #caseGroups .cc-price{font-size:14px!important;min-height:36px!important;border-radius:8px!important;display:flex;align-items:center;justify-content:center;gap:4px;flex-direction:row}
 .case-category-title{font-size:17px!important;line-height:1.3!important;margin:20px 0 12px!important}
 .case-category-title:before,.case-category-title:after{display:none!important}
 #spinPanel{border-radius:14px!important;padding:16px 12px!important}#spinPanel input,#spinPanel select{font-size:16px}
 .spin-count button{min-width:44px;min-height:44px}.case-skip-btn{min-height:44px;font-size:13px}
 .case-track{will-change:auto}.is-spinning .case-track{will-change:transform}
 .hw-event{padding:10px 4px 24px}.hw-top{gap:10px}.hw-back,.hw-rules-btn{font-size:12px!important;min-height:44px;display:inline-flex;align-items:center;box-sizing:border-box;padding:8px!important}
 .hw-tabs{margin:10px auto 20px;padding:4px;box-sizing:border-box}.hw-tabs button{min-height:48px;font-size:12px;padding:10px 7px;line-height:1.3;gap:6px}
 .hw-tabs .hw-control-icon{width:18px;height:20px;flex:none}.hw-heading{margin-bottom:18px}.hw-heading-pumpkin{width:36px;margin-bottom:4px}.hw-heading h2{font-size:27px;margin:7px 0 9px;line-height:1.15}.hw-heading p{font-size:13px;line-height:1.5;padding:0 8px}
 .hw-mode-dock{margin-bottom:16px;max-width:none;gap:8px}.hw-mode-dock button{min-height:46px;flex:1;padding:11px 8px}.hw-mode-dock button b{font-size:13px}
 .hw-ready .hw-panel{order:-1}.hw-layout{gap:14px}.hw-panel{padding:16px;border-radius:15px;box-shadow:none}
 .hw-panel>.hw-eyebrow{font-size:11px;letter-spacing:.1em}.hw-item-picker{display:grid;grid-template-columns:50px minmax(0,1fr);text-align:left;column-gap:12px;row-gap:3px;margin:12px 0 3px;padding:12px;min-height:76px;border-radius:10px}
 .hw-item-picker>.hw-item-plus,.hw-item-picker>img{grid-column:1;grid-row:1/3;justify-self:center}.hw-item-picker img{width:50px;height:50px}.hw-item-picker b{grid-column:2;max-width:none;font-size:13px;line-height:1.35}.hw-item-picker>span:last-child{grid-column:2;font-size:12px;line-height:1.3}
 .hw-rewards>summary{min-height:44px;box-sizing:border-box;font-size:13px;padding:13px 0}.hw-rewards .hw-muted,.hw-pricing-note{font-size:12px;line-height:1.5}
 .hw-outcome{gap:12px;padding:10px 0}.hw-outcome b{font-size:14px}.hw-outcome small,.hw-outcome div>span{font-size:12px}.hw-outcome>.hw-prize-img{width:46px;height:46px}
 .hw-actions{margin-top:9px}.hw-primary{min-height:46px;font-size:14px!important;border-radius:9px;padding:12px 14px}.hw-muted,.hw-status{font-size:12px;line-height:1.5}.hw-refresh{min-height:44px;font-size:12px!important;padding:10px;margin:3px auto -8px}
 .hw-scene{scroll-margin-top:80px;border-radius:16px;box-shadow:none;min-height:360px}.hw-hell .hw-scene,.hw-hell .hw-scene:has(.hw-result){min-height:420px}
 .hw-below-scene{font-size:12px;line-height:1.45;padding:10px 3px}.hw-gate-number{font-size:12px;letter-spacing:0}.hw-scene-caption{font-size:11px;line-height:1.3;bottom:12px}.hw-stages span{width:29px;height:29px;font-size:12px}
 .hw-fog,.hw-ember,.hw-candle-glow{display:none!important}.hw-dealer-life{animation:none;will-change:auto;transform:none;mask-image:none;-webkit-mask-image:none;display:none}
 .hw-scene-bg,.hw-summoning .hw-scene-bg,.hw-ritual-loss[data-ritual-phase="2"] .hw-scene-bg,.hw-ritual-small[data-ritual-phase="2"] .hw-scene-bg,.hw-ritual-epic[data-ritual-phase="2"] .hw-scene-bg{filter:none!important}
 .hw-cup svg,.hw-sacrifice,.hw-sacrifice img{filter:none!important}.hw-sacrifice{animation:none}.hw-cup-hint .hw-hint-hand{filter:none}.hw-cup-hint>span{font-size:12px}
 .hw-result,.hw-hell .hw-result,.hw-result.is-finale{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#120b20dd}
 .hw-result .hw-prize-img,.hw-result-art img,.hw-hell .hw-result .hw-result-art img{animation:none!important;filter:none!important}.hw-result-sheet:before,.hw-hell .hw-result-sheet:before{animation:none!important}
 .hw-soul-aura{animation:none}.hw-soul-orbits i{filter:none}.hw-soul-particles i:nth-child(n+13){display:none}.hw-soul-smoke i:nth-child(3){display:none}.hw-soul-offer img{filter:none}.hw-soul-reward .hw-result{background:#120b20c7}
 .hw-soul-show .hw-ritual-message{font-size:12px!important}.hw-history{margin-top:14px;font-size:13px}.hw-history summary{min-height:44px;box-sizing:border-box;padding:13px}.hw-history article{font-size:12px;line-height:1.4;gap:9px}
 .hw-dialog{padding:22px 16px;border-radius:16px;max-height:85dvh;box-shadow:0 8px 25px #0006}.hw-dialog::backdrop{backdrop-filter:none;background:#090610d9}.hw-dialog-close{width:44px;height:44px;top:5px;right:5px}.hw-dialog h3{font:700 22px/1.2 var(--font-display,system-ui);margin-bottom:16px}.hw-dialog p{font-size:14px;line-height:1.6}.hw-search{font-size:16px;min-height:46px}.hw-inventory button{padding:12px 9px;min-height:145px}.hw-inventory b,.hw-inventory span{font-size:12px}
 #upgSection>.upg-brand-title{font-size:23px;margin-bottom:22px}#upgSection .upg-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 #upgSection .upg-center{grid-column:1/-1;grid-row:1}#upgSection .upg-side{min-width:0;min-height:126px;padding:14px 10px;border-radius:14px;font-size:12px;line-height:1.4}
 #upgSection .upg-side b{font-size:13px}#upgSection .upg-side .sub{font-size:11px;line-height:1.4}#upgSection .upg-side .upg-big-img{width:80px;height:80px}
 #upgLeft.upg-single,#upgRight.filled{grid-template-rows:86px auto auto;padding:12px 8px}#upgLeft.upg-single .upg-mini>img.upg-img,#upgRight.filled>.upg-big-img{width:80px;height:80px}
 #upgSection .upg-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}#upgSection .upg-q{min-height:44px;padding:10px 4px;font-size:13px}
 #upgSection .upg-f{font-size:16px;min-height:44px}#upgSection .upg-card{font-size:12px}.upg-pager button{min-width:44px;min-height:44px}
 .sup-fab{width:44px!important;height:44px!important;right:12px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;animation:none!important}.sup-fab svg{width:22px;height:22px}
 .hw-event .hw-cinematic{contain:layout paint}.hw-event .hw-scene{contain:layout paint}
}
@media(max-width:360px){.hw-home-banner{grid-template-columns:minmax(0,1fr) 56px;padding:15px}.hw-home-banner .hw-banner-pumpkin{width:56px}.hw-home-banner b{font-size:22px}.hw-tabs button{font-size:11px}.hw-tabs .hw-control-icon{display:none}.hw-heading h2{font-size:25px}.hw-event{padding-inline:0}.hw-panel{padding:14px}.hw-hell .hw-result{padding:14px}}
@media(prefers-reduced-motion:reduce){.hw-home-banner,.hw-home-banner *{animation:none!important;transition:none!important}}

/* A readable support window, with category selection before composing. */
html[data-season=halloween] #supFab{width:68px!important;min-width:68px;height:68px!important;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#272331;border:2px solid #e9a34d;color:#edaa59;box-shadow:0 0 0 3px #e9a34d16,0 4px 18px #140c2470}
#supFab>svg{width:30px!important;height:30px!important;flex:none}.sup-fab-label{display:none}
#supPanel{width:380px;height:580px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 110px);bottom:92px;right:20px;border:1px solid #e3e5ec;border-radius:16px;background:#fff;color:#28313e;box-shadow:0 14px 60px #08081166;isolation:isolate}
#supPanel [hidden]{display:none!important}#supPanel[hidden]{display:none!important}
#supPanel .sup-head{background:#272331;padding:12px 14px;gap:10px;flex:none;color:#fff}#supPanel .sup-head b{font-size:16px}#supPanel .sup-head small{font-size:12px;line-height:1.4;color:#ded5e5}
#supPanel .sup-ava{background:#ffffff12;width:38px;height:38px;flex:none}#supX{width:44px;height:44px;flex:none;border-radius:10px;background:#ffffff10;font-size:17px}
.sup-category-view{padding:24px 20px;flex:1;min-height:0;overflow-y:auto;background:#fff;color:#333b48}
.sup-welcome{margin:4px 0 24px}.sup-welcome-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#edf4ff;color:#4789e3;margin-bottom:18px}.sup-welcome-icon svg{width:29px;height:29px}
.sup-welcome h3{font:700 24px/1.25 system-ui,sans-serif;letter-spacing:-.03em;margin:0 0 10px}.sup-welcome p{font:14px/1.6 system-ui,sans-serif;color:#66707d;margin:0}
.sup-category-card{padding:16px;border:1px solid #dde3ed;border-radius:13px;box-shadow:0 3px 14px #233a6710}
.sup-category-card label{display:block;font-size:12px;font-weight:600;color:#66707d;margin-bottom:7px}
#supCategory{width:100%;min-width:0;min-height:48px;padding:10px 28px 10px 10px;background:#fff;color:#293a50;border:1px solid #cfd8e5;border-radius:8px;font:14px system-ui,sans-serif;cursor:pointer}
#supContinue{width:100%;min-height:46px;margin-top:14px;border:0;border-radius:8px;background:#347ce8;color:#fff;font:600 14px system-ui,sans-serif;cursor:pointer}
#supContinue:disabled{background:#edf0f5;color:#919bab;cursor:default}
.sup-category-view.is-selected{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 14px;border-bottom:1px solid #e9ecf1;background:#fafbfc;overflow:visible;font-size:12px}
.sup-category-view.is-selected>span{min-width:0;line-height:1.4}.sup-change-category{border:0;background:none;color:#347ce8;min-height:44px;font:600 12px system-ui,sans-serif;cursor:pointer;padding:8px;flex:none}
#supList{background:#fff;padding:18px 14px;gap:14px;min-height:0;overscroll-behavior:contain}
#supPanel .sup-msg{font:14px/1.55 system-ui,sans-serif;padding:12px 14px;max-width:86%;box-sizing:border-box;border:0;border-radius:13px;white-space:pre-wrap;color:#28313e}
#supPanel .sup-msg.them{background:#38b869;color:#fff;border-bottom-left-radius:3px}#supPanel .sup-msg.me{background:#f0f0f2;color:#30343b;border-bottom-right-radius:3px}
.sup-helper-name{display:block;font-size:12px;margin-bottom:5px;color:#e5ffed}
#supPanel .sup-msg small{font-size:11px;opacity:1;color:inherit;margin-top:7px}#supPanel .sup-msg.them small{color:#e5ffed}
.sup-quick-questions{display:flex;flex-direction:column;align-items:flex-end;gap:9px;margin:2px 0 10px}.sup-quick-questions button{min-height:44px;max-width:100%;padding:10px 15px;border:1px solid #458cf3;border-radius:22px;background:#fff;color:#2870d7;font:14px/1.35 system-ui,sans-serif;cursor:pointer;text-align:left}
#supPanel .sup-note{color:#697482;font:14px/1.6 system-ui,sans-serif}#supPanel .sup-note a{color:#347ce8}#supLogin{min-height:44px;margin:14px 0;background:#347ce8;color:#fff;padding:10px 20px}
#supForm{padding:12px;background:#fff;border-top:1px solid #e5e8ef;flex:none;align-items:flex-end}
#supText{min-width:0;min-height:46px;max-height:110px;box-sizing:border-box;background:#f8f9fb;color:#28313e;border:1px solid #dce1e9;border-radius:9px;font:15px/1.45 system-ui,sans-serif;padding:11px 12px}
#supSend{width:46px;height:46px;border-radius:9px;background:#347ce8}#supSend svg{width:23px;height:23px}
#supPanel button:focus-visible,#supPanel select:focus-visible,#supText:focus-visible{outline:2px solid #347ce8;outline-offset:2px}
@media(max-width:740px){html[data-season=halloween] #supFab{width:46px!important;min-width:46px;height:46px!important;padding:0;right:14px!important;bottom:calc(14px + env(safe-area-inset-bottom))!important}.sup-fab-label{display:none}#supFab>svg{width:23px!important;height:23px!important}#supPanel{left:10px;right:10px;width:auto;max-width:none;bottom:calc(86px + env(safe-area-inset-bottom));height:min(580px,calc(100dvh - 108px - env(safe-area-inset-bottom)));max-height:calc(100dvh - 108px - env(safe-area-inset-bottom));border-radius:14px}#supText,#supCategory{font-size:16px}.sup-category-view{padding:20px 16px}.sup-welcome{margin-bottom:20px}.sup-welcome h3{font-size:23px}}
@media(max-height:500px){#supPanel{top:8px;bottom:8px;height:auto;max-height:none;z-index:125}.sup-category-view{padding:12px 16px}.sup-welcome-icon{display:none}.sup-welcome{margin:0 0 12px}.sup-welcome h3{font-size:20px}.sup-welcome p{font-size:13px}}
@media(prefers-reduced-motion:reduce){#supPanel,#supFab{animation:none;transition:none}}
/* Match the site instead of a white embedded widget. */
#supPanel{background:#17131e;color:#f2e9f8;border-color:#594464;bottom:96px;height:540px;width:360px;box-shadow:0 16px 60px #0008}
#supPanel .sup-head{background:#292032;border-bottom:1px solid #594464}
.sup-category-view,#supList{background:#17131e;color:#f2e9f8}.sup-welcome p,.sup-category-card label{color:#bdb0c8}.sup-welcome-icon{background:#342536;color:#efac62}
.sup-category-card{background:#221b2a;border-color:#4a3a56;box-shadow:none}#supCategory{background:#17131e;border-color:#594464;color:#f2e9f8;color-scheme:dark}
#supContinue,#supSend,#supLogin{background:#d88b42;color:#21140c}#supContinue:disabled{background:#352c3e;color:#96899f}
.sup-category-view.is-selected{background:#221b2a;border-color:#493752}.sup-change-category{color:#efac62}
#supPanel .sup-msg.them{background:#35263d;color:#f2e9f8;border:1px solid #62436a}#supPanel .sup-msg.me{background:#503324;color:#fff0df}.sup-helper-name,#supPanel .sup-msg.them small{color:#cdb9d6}
.sup-quick-questions button{background:#221b2a;border-color:#a76b38;color:#ffc37c}#supForm{background:#221b2a;border-color:#493752}#supText{background:#17131e;border-color:#594464;color:#f2e9f8}#supText::placeholder{color:#ab9bb7}
#supPanel .sup-note{color:#c8b9d1}#supPanel .sup-note a{color:#ffc37c}#supAttach{width:38px;min-width:38px;height:46px;display:grid;place-items:center;background:transparent;border:0;color:#efac62;padding:7px;cursor:pointer}#supAttach svg{width:23px;height:23px}
#supFlowError{flex:none;padding:10px 14px;color:#ffc39e;font-size:13px;background:#40262b}#supFiles{flex:none;padding:6px 12px;background:#221b2a;max-height:110px;overflow:auto}#supFiles>div{display:flex;align-items:center;gap:10px;font-size:12px}#supFiles span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}#supFiles button{width:36px;height:32px;background:none;border:0;color:#ffc37c;font-size:22px}.sup-file-link{display:block;max-width:100%;overflow-wrap:anywhere;text-align:left;margin-top:8px;background:#ffffff0c;border:1px solid #ffffff30;color:inherit;border-radius:6px;padding:8px;cursor:pointer}
@media(max-width:740px){#supPanel{width:auto;bottom:calc(70px + env(safe-area-inset-bottom));height:min(560px,calc(100dvh - 90px - env(safe-area-inset-bottom)));max-height:calc(100dvh - 90px - env(safe-area-inset-bottom))}#supForm{gap:6px;padding:8px}#supSend{width:42px;min-width:42px}}
@media(max-height:500px){#supPanel{top:8px;bottom:8px;height:auto;max-height:none}}

/* Balanced upgrader stage and matching, fixed-height item grids. */
#upgSection{max-width:1160px;margin-inline:auto;padding-top:8px;scroll-margin-top:90px}
#upgSection>.upg-brand-title{margin-bottom:24px}
#upgSection .upg-stage{grid-template-columns:minmax(0,1fr) 300px minmax(0,1fr);gap:18px;align-items:stretch}
#upgSection .upg-center{min-width:0;gap:12px;justify-content:center}
#upgSection .upg-side{box-sizing:border-box;min-height:332px;padding:22px 16px;gap:12px;overflow:hidden}
#upgSection .upg-side b{font-size:14px;line-height:1.4;max-width:100%}
#upgSection #upgGo{width:248px;height:44px;min-height:44px;max-height:44px;margin:0}
#upgLeft.upg-single{display:flex;justify-content:center;gap:12px}
#upgLeft.upg-single .upg-mini-row{display:block;max-height:none;overflow:visible}
#upgLeft.upg-single .upg-mini{display:grid;grid-template-rows:136px auto;justify-items:center;gap:10px;margin:0;font-size:14px;line-height:1.4}
#upgLeft.upg-single .upg-mini>img.upg-img,#upgLeft.upg-single .upg-mini>.emoji-pic,#upgRight.filled>.upg-big-img{width:128px;height:128px;object-fit:contain;max-width:100%;flex:none}
#upgSection #upgRight.filled{display:grid;grid-template-rows:136px minmax(20px,auto) 22px;justify-items:center;align-content:center;gap:10px}
#upgSection .upg-quick{margin:16px 0 20px;gap:8px}
#upgSection .upg-lists{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
#upgSection .upg-lists>.panel{box-sizing:border-box;min-width:0;padding:20px;display:flex;flex-direction:column}
#upgSection .upg-mine-head,#upgSection #upgTgtTitle{min-height:32px;margin:0 0 12px;align-items:center}
#upgSection .help-title{font-size:20px;line-height:1.35;margin:0}
#upgSection .upg-bar{display:grid;grid-template-columns:42px minmax(70px,1fr) 66px 66px;gap:8px;min-height:42px;margin:0 0 12px;align-items:stretch}
#upgSection .upg-mine-tools{grid-template-columns:minmax(0,1fr)}
#upgSection .upg-bar .upg-f{box-sizing:border-box;width:100%;min-width:0;height:42px;font-size:13px;padding:8px 10px}
#upgSection .upg-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;grid-auto-rows:136px;align-content:start;align-items:stretch;padding:2px;min-width:0}
#upgSection #upgMine{height:428px;min-height:428px;max-height:428px;overflow-y:auto;scrollbar-gutter:stable}
#upgSection #upgTargets{min-height:428px;max-height:none;overflow:visible}
#upgSection .upg-grid .upg-card{box-sizing:border-box;height:136px;min-width:0;padding:8px 5px;gap:4px;border-radius:12px;display:grid;grid-template-rows:58px 36px 18px;justify-items:center;align-items:center;align-content:center;position:relative}
#upgSection .upg-grid .upg-card[hidden]{display:none!important}
#upgSection .upg-grid .upg-card img.upg-img,#upgSection .upg-grid .upg-card .emoji-pic{width:58px;height:58px;object-fit:contain;max-width:100%}
#upgSection .upg-grid .upg-name{font-size:11.5px;line-height:12px;display:flex;align-items:center;justify-content:center;width:100%;height:36px;overflow:hidden;overflow-wrap:anywhere}
#upgSection .upg-grid .upg-price{font-size:12px;line-height:18px;align-self:end;white-space:nowrap}
#upgSection .upg-pager,.upg-mine-footer{box-sizing:border-box;min-height:44px;margin:14px 0 0;display:flex;align-items:center;justify-content:center;gap:12px}
.upg-mine-footer{font-size:13px;color:var(--text-dim)}
.hw-quote-loading{color:#edba79;font-size:12px;line-height:1.5;padding:12px 0}
.hw-load-more{grid-column:1/-1;min-height:44px;background:#302139;border:1px solid #6b4f78;border-radius:10px;color:#ffe1b3;font:600 13px inherit;cursor:pointer}
@media(min-width:761px) and (max-width:1100px){#upgSection .upg-stage{grid-template-columns:minmax(0,1fr) 276px minmax(0,1fr);gap:12px}#upgSection .upg-lists>.panel{padding:14px}#upgSection .upg-grid{gap:8px}#upgSection .upg-bar{grid-template-columns:36px minmax(64px,1fr) 52px 52px;gap:6px}#upgSection .upg-mine-tools{grid-template-columns:1fr}#upgSection .help-title{font-size:18px}}
@media(min-width:761px) and (max-width:900px){#upgSection .upg-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#upgSection #upgMine{height:568px;max-height:568px;min-height:568px}#upgSection #upgTargets{min-height:568px}}
@media(max-width:760px){#upgSection .upg-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#upgSection .upg-center{grid-column:1/-1;grid-row:1;max-width:300px}#upgSection .upg-side{min-height:170px;padding:14px 10px;gap:8px;border-radius:14px}#upgSection .upg-side b{font-size:12px}#upgSection #upgRight.filled{grid-template-rows:84px auto 20px;gap:6px}#upgLeft.upg-single .upg-mini{grid-template-rows:84px auto;gap:6px;font-size:12px}#upgLeft.upg-single .upg-mini>img.upg-img,#upgLeft.upg-single .upg-mini>.emoji-pic,#upgSection #upgRight.filled>.upg-big-img{width:80px;height:80px}#upgSection #upgGo{width:240px}#upgSection .upg-lists{grid-template-columns:1fr;gap:16px}#upgSection .upg-lists>.panel{padding:14px}#upgSection .upg-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;grid-auto-rows:132px}#upgSection .upg-grid .upg-card{height:132px;padding:6px 4px}#upgSection #upgMine{height:auto;min-height:132px;max-height:412px}#upgSection #upgTargets{min-height:0}#upgSection .help-title{font-size:18px}#upgSection .upg-bar{grid-template-columns:38px minmax(60px,1fr) 54px 54px;gap:6px}#upgSection .upg-mine-tools{grid-template-columns:1fr}#upgSection .upg-bar .upg-f{height:44px;font-size:16px}#upgSection .upg-mine-head,#upgSection #upgTgtTitle{min-height:30px;margin-bottom:10px}}
@media(max-width:350px){#upgSection .upg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#upgSection .upg-bar{grid-template-columns:36px minmax(0,1fr) 48px 48px;gap:4px}#upgSection .upg-mine-tools{grid-template-columns:1fr}}

/* Chunky illustrated controls: solid surfaces, drawn icons and a tactile edge. */
.hw-tabs{width:min(100%,530px);box-sizing:border-box;gap:12px;padding:0;margin:20px auto 30px;border:0;background:none;box-shadow:none;overflow:visible}
.hw-mode-dock{width:min(100%,410px);max-width:410px;gap:12px;margin-bottom:28px}
.hw-tabs button,.hw-tabs button[aria-selected=true],.hw-mode-dock button,.hw-mode-dock button.on{position:relative;box-sizing:border-box;min-width:0;min-height:58px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:10px;padding:10px 15px;border:2px solid #28182e;border-radius:17px 20px 16px 19px;background:#59416a;color:#f9e5c7;font-size:13px;font-weight:800;line-height:1.25;text-shadow:0 1px #302037;box-shadow:inset 0 3px #9678ab,inset 0 -3px #463052,0 5px 0 #25162d;transform:none;transition:transform .14s,box-shadow .14s,background-color .14s;isolation:isolate}
.hw-mode-dock button,.hw-mode-dock button.on{min-height:52px;border-radius:16px 14px 17px 14px}
.hw-tabs button[aria-selected=true],.hw-mode-dock button.on{background:#f5b850;color:#452635;text-shadow:0 1px #ffe4a0;box-shadow:inset 0 3px #ffe6a1,inset 0 -4px #df8639,0 5px 0 #733d31}
.hw-tabs button:before,.hw-mode-dock button:before{content:'';position:absolute;top:7px;left:10px;width:17px;height:4px;border-radius:4px;background:#ffffff35;transform:rotate(-8deg);pointer-events:none}
.hw-mode-dock button:after{display:none!important}
.hw-tabs .hw-control-icon,.hw-mode-dock .hw-control-icon{display:block;width:30px;height:32px;flex:0 0 30px;filter:drop-shadow(0 2px 0 #24172b44)}
.hw-mode-dock button b{font-size:13px;font-weight:800;line-height:1.25}
.hw-tabs button:hover:not(:disabled):not([aria-selected=true]),.hw-mode-dock button:hover:not(:disabled):not(.on){background:#6a4d7c;color:#fff0d7;border-color:#28182e;transform:translateY(-2px)}
.hw-tabs button[aria-selected=true]:hover:not(:disabled),.hw-mode-dock button.on:hover:not(:disabled){background:#ffc767;color:#452635;border-color:#28182e;transform:translateY(-2px)}
.hw-tabs button:active:not(:disabled),.hw-mode-dock button:active:not(:disabled){transform:translateY(4px);box-shadow:inset 0 2px #ffffff35,0 1px 0 #25162d;filter:none}
.hw-tabs button:focus-visible,.hw-mode-dock button:focus-visible{outline:3px solid #ffe6a1;outline-offset:6px}
.hw-tabs button:disabled,.hw-mode-dock button:disabled{opacity:.6;transform:none}
@media(max-width:480px){.hw-tabs{gap:8px;margin:14px auto 26px}.hw-tabs button,.hw-tabs button[aria-selected=true]{min-height:58px;padding:9px 8px;gap:7px;font-size:11px}.hw-mode-dock{gap:10px;margin-bottom:24px}.hw-mode-dock button,.hw-mode-dock button.on{min-height:50px;padding:8px 10px;gap:8px}.hw-mode-dock button b{font-size:12px}.hw-tabs .hw-control-icon,.hw-mode-dock .hw-control-icon{display:block;width:26px;height:28px;flex-basis:26px}}
@media(prefers-reduced-motion:reduce){.hw-tabs button,.hw-mode-dock button{transition:none}}

.admin-item-remove{border:1px solid #704951;background:#231923;border-radius:14px;padding:14px;margin:18px 0}.admin-item-remove summary{cursor:pointer;font-weight:700;color:#ffc5ac;min-height:30px}.admin-item-remove p{font-size:12px;line-height:1.5;color:#c1adbe}.admin-item-remove input{box-sizing:border-box;width:100%;margin:6px 0 12px}.air-list{max-height:340px;overflow:auto}.air-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #ffffff12}.air-row>span{flex:1;min-width:0}.air-row b{font-size:12px;overflow-wrap:anywhere}.air-row small{display:block;font-size:11px;color:#ab98ae;margin-top:5px}.air-row>button{min-height:40px;padding:8px 12px;flex:none}.air-row .pp-mini{flex:none}.air-message:empty{display:none}

html body.free-cases-layout #freeRemind:not([hidden]){display:grid!important;border-color:#bd823d;background:#241b20;margin-bottom:20px}
html body #freeRemind[hidden]{display:none!important}
#freeRemind .fr-img img,#freeRemind .fr-tag:before{animation:none!important}
#freeRemind .fr-open{min-height:44px;background:#efa448;color:#261913;border:1px solid #ffc775;border-radius:10px;font-weight:750}
@media(max-width:740px){
 html body #lootFeed{position:static;width:100%;min-width:0;box-sizing:border-box;margin:8px 0 16px}
 #lootFeed #lootTop{display:none}
 html body #lootFeed .loot-recent-wrap{display:block!important;min-width:0;overflow:hidden}
 #lootFeed .loot-recent{display:flex;overflow-x:auto;gap:8px;max-width:100%;padding:6px 0 10px;scrollbar-width:thin}
 #lootFeed .loot-chip{flex:0 0 92px;min-width:92px;box-sizing:border-box;animation:none}
 #lootFeed .loot-chip-img{width:54px;height:54px;object-fit:contain}
 #lootFeed .loot-chip-who{max-width:84px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 #lootFeed .loot-pulse{animation:none}
 html body #freeRemind{padding:12px;grid-template-columns:48px minmax(0,1fr);gap:10px}
 #freeRemind .fr-img{width:48px;height:48px}#freeRemind .fr-img img{max-width:48px;max-height:48px}
 #freeRemind .fr-open{grid-column:1/-1;width:100%;min-width:0;font-size:14px}
}

#upgSection .upg-offer-column{min-width:0;display:flex;flex-direction:column;gap:14px}
#upgSection .upg-offer-column>#upgLeft{width:100%;box-sizing:border-box}
#upgSection .upg-balance-box{height:56px;padding:9px 12px 5px;border:0;border-radius:8px;background:#171619;box-shadow:none;box-sizing:border-box;min-width:0}
.upg-balance-box>div{display:flex;align-items:center;justify-content:space-between;gap:6px;height:20px}
.upg-balance-box label{font-size:11px;color:#928b96;white-space:nowrap}
.upg-balance-value{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0;color:#e8ad51}
#upgSection .upg-balance-box input[type=number]{appearance:textfield;-moz-appearance:textfield;background:transparent;border:0;border-radius:3px;box-shadow:none;width:50px;min-height:20px;height:20px;padding:0 2px;text-align:right;font:600 12px system-ui;color:#e8ad51;outline-offset:2px}
.upg-balance-box input[type=number]::-webkit-inner-spin-button,.upg-balance-box input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.upg-balance-box small{font-size:10px;color:#77717d;white-space:nowrap}.upg-balance-value>span{font-size:11px}
#upgSection .upg-balance-box input[type=range]{appearance:none;-webkit-appearance:none;display:block;width:100%;height:20px;min-height:20px;margin:0;background:transparent;cursor:pointer;border:0;padding:0;box-shadow:none;opacity:1}
.upg-balance-box input[type=range]::-webkit-slider-runnable-track{height:3px;border:1px solid #625b4d;border-radius:3px;background:linear-gradient(to right,#dda149 var(--balance-fill,0%),#242126 var(--balance-fill,0%))}
.upg-balance-box input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#dda149;border:0;margin-top:-6px;box-shadow:none}
.upg-balance-box input[type=range]::-moz-range-track{height:3px;border-radius:3px;background:#625b4d}
.upg-balance-box input[type=range]::-moz-range-progress{height:3px;background:#dda149}
.upg-balance-box input[type=range]::-moz-range-thumb{width:14px;height:14px;border:0;border-radius:50%;background:#dda149}
.upg-balance-box input[type=range]:disabled{cursor:default}.upg-balance-box input[type=range]:disabled::-webkit-slider-thumb{background:#88703e}
@media(min-width:1000px){
 #upgSection .upg-stage{grid-template-rows:332px 56px;row-gap:18px;align-items:center}
 #upgSection .upg-offer-column,#upgSection .upg-center{display:contents}
 #upgSection #upgLeft{grid-column:1;grid-row:1;height:332px}
 #upgSection .upg-gauge{grid-column:2;grid-row:1;justify-self:center}
 #upgSection #upgRight{grid-column:3;grid-row:1;height:332px}
 #upgSection #upgBalanceBox{grid-column:1;grid-row:2;width:100%}
 #upgSection #upgGo{grid-column:2;grid-row:2;justify-self:center;height:56px;min-height:56px;max-height:56px;width:100%}
 #upgSection #upgQuick{grid-column:3;grid-row:2;display:flex;flex-wrap:nowrap;justify-content:space-between;gap:4px;margin:0;min-width:0}
 #upgSection #upgQuick button{min-width:0;width:auto;flex:1;padding:0 3px;height:38px;min-height:38px;font-size:11px;border-radius:7px}
}
@media(max-width:999px){#upgSection #upgQuick{grid-column:1/-1;margin:4px 0 0}#upgSection #upgRight{align-self:start}}
@media(max-width:760px){#upgSection .upg-balance-box{height:64px;padding:8px}.upg-balance-box label{font-size:10px}.upg-balance-box>div{flex-wrap:wrap;height:auto;gap:2px}.upg-balance-value{margin-left:auto}.upg-balance-box small{font-size:9px}#upgSection .upg-balance-box input[type=number]{width:35px;font-size:16px}#upgSection .upg-balance-box input[type=range]{height:26px;min-height:26px}}
@media(max-width:760px){
 #upgSection .upg-offer-column{display:contents}
 #upgSection #upgLeft{grid-column:1;grid-row:2;height:100%}
 #upgSection #upgRight{grid-column:2;grid-row:2;height:100%}
 #upgSection #upgBalanceBox{grid-column:1/-1;grid-row:3;width:100%;height:62px;padding:8px 12px}
 #upgSection #upgQuick{grid-column:1/-1;grid-row:4;gap:6px;flex-wrap:wrap}
 #upgSection .upg-balance-box>div{flex-wrap:nowrap;height:22px}
 #upgSection .upg-balance-box label{font-size:12px}
 #upgSection .upg-balance-box small{font-size:10px}
 #upgSection .upg-balance-box input[type=number]{width:54px}
 #upgSection .upg-balance-box input[type=range]{height:28px;min-height:28px}
}
#upgSection #upgQuick button{white-space:nowrap}
@media(min-width:1000px){
 #upgSection #upgQuick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;align-self:start}
 #upgSection #upgQuick button{width:100%;height:40px;min-height:40px;font-size:13px;padding:0 6px}
 #upgSection .upg-stage{grid-template-rows:332px 86px;align-items:start}
 #upgSection #upgBalanceBox,#upgSection #upgGo{align-self:start}
}
#upgSection .upg-attempt-total{color:#e8ad51;font-size:13px}
@media(min-width:1000px){
 #upgSection #upgQuick{grid-template-columns:repeat(4,48px);justify-content:center;gap:5px}
 #upgSection #upgQuick button{height:34px;min-height:34px;font-size:12px;padding:0 4px}
 #upgSection .upg-stage{grid-template-rows:332px 73px}
}
@media(min-width:1000px){
 #upgSection #upgQuick{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:4px;align-self:center;width:100%}
 #upgSection #upgQuick button{flex:1;min-width:0;width:auto;height:40px;min-height:40px;font-size:12px;padding:0 3px}
 #upgSection .upg-stage{grid-template-rows:332px 56px;align-items:center}
}


html.cinematic-active { overflow: hidden; }
dialog.rare-case-cinematic {
  position: fixed; inset: 0; width: 100vw; height: 100vh; height: 100dvh;
  max-width: none; max-height: none; margin: 0; padding: 0;
  box-sizing: border-box; border: 0; border-radius: 0;
  background: #08060b; color: #fff; overflow: hidden;
  opacity: 1; transition: opacity 350ms ease;
}
.rare-case-cinematic::backdrop { background: #08060b; transition: opacity 350ms ease; }
.rare-case-cinematic.is-leaving, .rare-case-cinematic.is-leaving::backdrop { opacity: 0; pointer-events: none; }
.rare-case-cinematic video {
  position: absolute; inset: 0; display: block; width: 100%; height: 100%;
  max-width: none; max-height: none; border-radius: 0; object-fit: cover;
  background: #08060b;
}
.rare-case-cinematic .cinematic-skip {
  position: absolute; right: max(24px, env(safe-area-inset-right)); bottom: max(24px, env(safe-area-inset-bottom));
  min-height: 44px; padding: 10px 20px; border: 1px solid #ffffff4d; border-radius: 24px;
  background: #100e19c9; color: #fff; font-family: inherit; font-size: 14px; font-weight: 600; cursor: pointer;
  box-shadow: 0 3px 16px #0005;
}
.rare-case-cinematic .cinematic-skip:hover { background: #30243be6; border-color: #ffffff99; }
.rare-case-cinematic .cinematic-skip:focus-visible { outline: 2px solid #e9ccff; outline-offset: 4px; }
#caseStrips.cinematic-reel-entry {
  position: relative; z-index: 2; border-radius: 18px;
  background: radial-gradient(ellipse at center,#b778e535,transparent 72%);
  box-shadow: 0 0 65px 12px #a267dc28;
  animation: cinematic-reel-entry 700ms cubic-bezier(.2,.7,.2,1) both;
}
.case-top-drop {
  position: absolute; z-index: 5; left: 50%; top: 8px; transform: translateX(-50%);
  padding: 6px 14px; border: 1px solid #ffcf78; border-radius: 8px;
  background: linear-gradient(135deg,#4c2c12,#221326); color: #ffe1a1;
  box-shadow: 0 0 24px #ffb64c40; white-space: nowrap;
  font-size: 12px; font-weight: 900; letter-spacing: .12em;
  animation: case-top-drop-pop 500ms cubic-bezier(.2,.8,.2,1.2) both;
}
.case-item.top-drop-winner { box-shadow: inset 0 0 0 2px #ffd38b, 0 0 22px #ffb64c55 !important; }
@keyframes cinematic-reel-entry {
  from {opacity: .15; transform: scale(.97); filter: brightness(1.6);}
  to {opacity: 1; transform: scale(1.035); filter: brightness(1);}
}
@media(max-width:600px){
  #caseStrips.cinematic-reel-entry {animation-name:cinematic-reel-mobile;}
  @keyframes cinematic-reel-mobile {from{opacity:.15;transform:scale(.96);}to{opacity:1;transform:scale(1);}}
}
@keyframes case-top-drop-pop { from {opacity: 0; transform: translate(-50%,12px) scale(.8);} to {opacity: 1; transform: translate(-50%,0) scale(1);} }
@media (max-aspect-ratio: 3/4) {
  .rare-case-cinematic video { object-fit: contain; }
  .rare-case-cinematic .cinematic-skip { right: 16px; bottom: max(20px, env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  #caseStrips.cinematic-reel-entry, .case-top-drop { animation: none; }
  dialog.rare-case-cinematic, .rare-case-cinematic::backdrop { transition: none; }
}


/* Shared controls use the site palette, while the Halloween games keep their scene styling. */
html[data-theme="dark"] body {
  background: radial-gradient(ellipse at 55% 0, #201c2a 0, #15141c 52%, #111117 100%);
}

.tg-mini .topbar { border-bottom-color: var(--line); }

html.tg-mini .mini-topnav button.on,
html .topbar .hw-nav.active {
  background: color-mix(in srgb, var(--accent) 20%, var(--surface-2)) !important;
  color: var(--text) !important;
  box-shadow: none;
}

html .hw-nav { color: var(--text-dim) !important; }

html body.free-cases-layout #freeRemind:not([hidden]) {
  border-color: var(--line);
  background: var(--surface-2);
}

html #freeRemind .fr-open,
html #spinPanel #spinBtn {
  background: var(--accent-strong, var(--accent)) !important;
  border-color: transparent !important;
  color: #fff !important;
  box-shadow: none !important;
}

html[data-theme="light"] #freeRemind .fr-open,
html[data-theme="light"] #spinPanel #spinBtn {
  background: var(--rd-button) !important;
  color: var(--rd-button-text) !important;
}

html[data-theme] #spinPanel #spinBtn:disabled {
  background: var(--surface-3) !important;
  color: var(--text-dim) !important;
}

html #spinPanel .case-info {
  background: var(--surface-3) !important;
  border-color: var(--line) !important;
  color: var(--text) !important;
}

html #spinPanel #spinCountRow button:is(.on,.active) {
  background: color-mix(in srgb, var(--accent) 25%, var(--surface-2)) !important;
  border-color: color-mix(in srgb, var(--accent) 70%, var(--line)) !important;
  color: var(--text) !important;
}

html #spinPanel #spinFlash::after { color: currentColor; }

#supFab {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 68px !important;
  min-width: 68px;
  height: 68px !important;
  padding: 0;
  border: 2px solid var(--accent);
  background: var(--surface-3);
  color: var(--accent);
  box-shadow: 0 4px 18px #13101945;
}

/* Profile panels and inventory have distinct surfaces in both themes. */
.profile-page {
  --profile-panel: #1d1c26;
  --profile-raised: #252430;
  --profile-line: #373443;
  --profile-muted: #b2adbe;
  --profile-accent: #c4b3fb;
  --profile-ok: #7ddbb2;
}

html[data-theme="light"] .profile-page {
  --profile-panel: var(--rd-panel);
  --profile-raised: var(--rd-raised);
  --profile-line: var(--rd-line);
  --profile-muted: var(--rd-muted);
  --profile-accent: var(--rd-accent);
  --profile-ok: #2a654b;
}

html #profileView :is(.acc-box,.acc-tile,.profile-inventory) {
  background: var(--profile-panel) !important;
  border-color: var(--profile-line) !important;
}

html #profileView :is(.acc-hero,.acc-bestdrop-card) {
  background: linear-gradient(125deg, color-mix(in srgb, var(--accent) 12%, var(--profile-panel)), var(--profile-panel) 65%) !important;
}

#profileView :is(.acc-section-title,.acc-bestdrop-title,.acc-tile-lbl,.wg-label,.wg-meta,.acc-history-link,.acc-id,.acc-box .sub,.partner-inventory-scope span) {
  color: var(--profile-muted);
}

html #profileView :is(.acc-nick,.acc-wallet-chip.bal,.acc-bestdrop-price) {
  color: var(--profile-accent) !important;
}

#profileView .acc-hero .acc-avatar { box-shadow: 0 0 0 4px var(--profile-raised); }
#profileView .acc-bestdrop-card-inner { width: 100%; }

#profileView .acc-bestdrop-img {
  width: 76px;
  height: 76px;
  background: var(--profile-raised);
  border-color: var(--profile-line);
}

#profileView .acc-bestdrop-name {
  font-size: 17px;
  overflow-wrap: anywhere;
}

#profileView .acc-bestdrop-empty {
  padding: 12px 0 0;
  color: var(--profile-muted);
  text-align: left;
}

html #profileView .acc-items-head {
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}

html #profileView .acc-items-head .my-req-divider {
  font-size: 15px;
  white-space: normal;
}

html #profileView .acc-items-head :is(#accWithdraw,.acc-sellall) { min-height: 40px; }

html #profileView .acc-items-head .acc-sellall {
  background: var(--profile-raised) !important;
  border-color: var(--profile-line) !important;
  color: var(--profile-accent) !important;
}

html #profileView .acc-items-head .acc-sellall:hover { border-color: var(--profile-accent) !important; }

#profileView #partnerAccountInventory {
  background: var(--profile-raised);
  border-color: var(--profile-line);
  color: var(--text);
}

html #profileView #accItems .item-card {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 14px;
  padding: 13px;
  background: var(--profile-raised);
  border-color: var(--profile-line);
}

#profileView #accItems .item-img {
  width: 70px;
  height: 70px;
  padding: 4px;
  background: var(--profile-panel);
  box-sizing: border-box;
}

#profileView #accItems .item-info {
  align-self: stretch;
  gap: 7px;
  justify-content: center;
}

#profileView #accItems .item-name {
  font-size: 14px;
  line-height: 1.3;
}

#profileView #accItems .item-status {
  font-size: 12px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

#profileView #accItems .item-status.ok { color: var(--profile-ok); }

#profileView #accItems .item-actions {
  align-items: center;
  gap: 7px;
}

html #profileView #accItems .item-actions button {
  flex: 0 1 auto;
  width: auto;
  max-width: 100%;
  min-height: 34px;
  margin: 0;
  padding: 7px 11px;
  white-space: normal;
  line-height: 1.25;
  box-shadow: none;
}

@media (max-width: 740px) {
  #supFab {
    width: 46px !important;
    min-width: 46px;
    height: 46px !important;
    right: 14px !important;
    bottom: calc(14px + env(safe-area-inset-bottom)) !important;
  }

  html #profileView #accItems .item-card {
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 10px;
    padding: 10px;
  }

  #profileView #accItems .item-img {
    width: 56px;
    height: 56px;
  }

  html #profileView #accItems .item-actions button { min-height: 40px; }

  html body #lootFeed .loot-recent {
    scrollbar-width: none;
  }

  html body #lootFeed .loot-recent::-webkit-scrollbar { display: none; }
}

@media (max-width: 360px) {
  .tg-mini .topbar-inner {
    padding-inline: 7px;
    column-gap: 5px;
  }

  .tg-mini .topbar-balance { padding-inline: 9px; }
}

/* The desktop presets fill the same grid row as the balance slider. */
@media (min-width: 1000px) {
  #upgSection #upgQuick {
    align-self: stretch;
    align-items: stretch;
  }

  #upgSection #upgQuick button {
    height: auto;
    min-height: 0;
  }
}


/* Keep the legacy layout within the viewport when a live banner or feed is rendered. */
#__nuxt, .sab-site-shell { width: 100%; min-width: 0; }
.sab-site-shell { display: flex; flex-direction: column; align-items: center; }
