.entertainment-page { background: linear-gradient(145deg,#f4f7fb 0%,#f8fbfc 62%,#fff8f3 100%); }
.entertainment-shell { width:min(1240px,calc(100% - 36px)); margin:0 auto; padding:34px 0 80px; }
.entertainment-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin:10px 0 24px; }
.entertainment-heading h1 { margin:5px 0 0; font-size:clamp(32px,4vw,54px); line-height:1; letter-spacing:0; }
.entertainment-heading p:not(.eyebrow) { margin:12px 0 0; color:var(--muted); font-size:14px; }
.wallet-chip { display:grid; grid-template-columns:auto auto; gap:3px 14px; align-items:center; padding:14px 18px; min-width:218px; border:1px solid #e5e9f1; border-radius:10px; background:rgba(255,255,255,.9); box-shadow:0 8px 24px rgba(35,63,94,.08); }
.wallet-chip span { color:var(--muted); font-size:12px; }.wallet-chip strong { color:#f2b93b; font-size:26px; line-height:1.1; text-align:right; text-shadow:0 1px 8px rgba(204,139,22,.18); }.wallet-chip a,.wallet-chip span:last-child { grid-column:1/-1; color:var(--muted); font-size:11px; }
.play-tabs { display:flex; align-items:center; gap:6px; margin-bottom:12px; padding:5px; border:1px solid #e2e7ef; border-radius:9px; background:#fff; width:max-content; max-width:100%; }
.play-tabs button,.play-tabs a { min-height:36px; padding:0 14px; border:0; border-radius:6px; color:#6f7d8d; background:transparent; font-size:13px; font-weight:700; white-space:nowrap; cursor:pointer; }.play-tabs button.active { color:#fff; background:#2367d1; }.play-tabs a { display:inline-flex; align-items:center; }
.pool-strip { display:flex; gap:20px; align-items:center; padding:14px 16px; border:1px solid #e3e9f1; border-radius:10px; background:#fff; }.pool-strip-title { flex:0 0 125px; display:grid; gap:4px; }.pool-strip-title span { font-weight:800; }.pool-strip-title small { color:var(--muted); font-size:11px; }.pool-options { display:flex; flex:1 1 0; width:0; min-width:0; gap:8px; overflow-x:auto; overflow-y:hidden; padding:1px; }.pool-options button { display:grid; flex:0 0 175px; gap:4px; min-height:78px; padding:11px 13px; border:1px solid #e2e7ef; border-radius:8px; color:#26313d; background:#fbfcfe; text-align:left; cursor:pointer; }.pool-options button.selected { border-color:#2367d1; box-shadow:0 0 0 2px rgba(35,103,209,.12); background:#f3f7ff; }.pool-options strong { font-size:14px; }.pool-options span,.pool-options b { color:var(--muted); font-size:11px; font-weight:600; }.pool-options b { color:#2367d1; }
.play-stage { margin-top:14px; border:1px solid #dfe6ef; border-radius:12px; background:linear-gradient(145deg,#eef5ff,#fff 55%,#fffaf4); overflow:hidden; }.play-stage-copy { display:flex; align-items:center; gap:8px; min-height:48px; padding:0 20px; border-bottom:1px solid #e3e9f1; color:#344252; font-size:12px; font-weight:700; }.stage-divider { color:#aab4c0; }.live-dot { width:7px; height:7px; border-radius:50%; background:#4e9d91; box-shadow:0 0 0 4px rgba(78,157,145,.12); }.plain-link { margin-left:auto; padding:4px 0; border:0; color:#2367d1; background:transparent; font-size:12px; font-weight:700; cursor:pointer; white-space:nowrap; }
.draw-panel,.scratch-panel { width:min(720px,100%); margin:0 auto; padding:34px 28px 38px; text-align:center; }.draw-intro .game-kicker,.game-kicker { color:#2367d1; font-size:11px; font-weight:800; letter-spacing:.12em; }.draw-intro h2 { margin:8px 0 7px; font-size:27px; }.draw-intro p { margin:0; color:var(--muted); font-size:13px; }.draw-cards { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; min-height:174px; margin:26px 0 22px; }.draw-card { display:grid; place-content:center; gap:7px; width:150px; min-height:174px; border:1px solid #dce5f0; border-radius:10px; background:#fff; box-shadow:0 12px 24px rgba(38,68,106,.08); }.draw-card-placeholder { width:min(380px,100%); color:#8a97a6; background:rgba(255,255,255,.68); box-shadow:none; }.draw-card-back { color:#fff; background:linear-gradient(145deg,#2367d1,#4f93de); cursor:default; transform:rotateY(0); transition:transform .42s ease,background .2s ease; }.draw-card-back b { font-size:34px; }.draw-card-back.revealed { color:#26313d; background:#fff; transform:rotateY(360deg); }.draw-card-back.revealed span { font-size:11px; font-weight:800; }.draw-card-back.revealed strong { font-size:17px; }.draw-card-back.revealed b { color:#2367d1; font-size:20px; }
.play-actions { display:flex; justify-content:center; gap:8px; flex-wrap:wrap; }.play-actions .button { min-width:178px; min-height:44px; white-space:nowrap; }.action-note { min-height:18px; margin:12px 0 0; color:var(--muted); font-size:11px; }.is-playing .game-action { pointer-events:none; }
.scratch-card-wrap { position:relative; width:min(560px,100%); aspect-ratio:1.55; margin:26px auto 16px; border:1px solid #d5dee9; border-radius:10px; overflow:hidden; background:#fff; box-shadow:0 12px 28px rgba(38,68,106,.12); }.scratch-result { display:grid; place-content:center; gap:6px; height:100%; color:#69788a; background:linear-gradient(145deg,#fff,#eef4ff); }.scratch-result strong { color:#2367d1; font-size:42px; }.scratch-result b { color:#d39a35; font-size:20px; }.scratch-canvas { position:absolute; inset:0; touch-action:none; cursor:crosshair; transition:opacity .3s ease; }.scratch-progress { display:grid; grid-template-columns:auto auto 1fr; align-items:center; gap:8px; margin:0 auto 20px; width:min(560px,100%); color:var(--muted); font-size:11px; text-align:left; }.scratch-progress strong { color:#2367d1; }.scratch-progress div { height:6px; overflow:hidden; border-radius:99px; background:#e3eaf3; }.scratch-progress i { display:block; width:0; height:100%; background:#2367d1; transition:width .2s ease; }
.below-stage,.info-grid,.history-section { margin-top:16px; padding:24px; border:1px solid #e3e9f1; border-radius:10px; background:rgba(255,255,255,.88); }.section-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }.section-head h2 { margin:4px 0 0; font-size:20px; }.section-head .eyebrow { margin:0; }.prize-summary { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin-top:18px; }.prize-summary article { display:grid; gap:5px; min-height:105px; padding:13px; border-top:3px solid var(--prize-color); border-radius:7px; background:#f9fbfd; }.prize-summary article span { color:var(--prize-color); font-size:10px; font-weight:800; }.prize-summary article strong { font-size:14px; }.prize-summary article small { color:var(--muted); font-size:11px; }.info-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.info-grid article { display:flex; gap:10px; padding:4px; }.info-icon { display:grid; place-items:center; flex:0 0 28px; height:28px; border-radius:50%; color:#2367d1; background:#edf4ff; font-weight:800; }.info-grid h3 { margin:0 0 4px; font-size:14px; }.info-grid p { margin:0; color:var(--muted); font-size:12px; line-height:1.6; }.history-balance { color:var(--muted); font-size:12px; }.history-list { margin-top:16px; }.history-list article { display:grid; grid-template-columns:110px 1fr auto; align-items:center; gap:14px; min-height:52px; border-top:1px solid #edf0f4; }.history-list time,.history-list span { color:var(--muted); font-size:11px; }.history-list div { display:grid; gap:3px; }.history-list b { color:#8a97a6; font-size:13px; }.history-list b.positive { color:#d39a35; }
.entertainment-modal { position:fixed; z-index:90; inset:0; display:grid; place-items:center; padding:20px; background:rgba(24,35,48,.38); backdrop-filter:blur(4px); }.entertainment-modal[hidden] { display:none; }.result-dialog { position:relative; width:min(480px,100%); padding:34px 28px 26px; border:1px solid #e5eaf1; border-radius:12px; background:#fff; box-shadow:0 24px 70px rgba(15,34,58,.22); text-align:center; }.modal-close { position:absolute; top:11px; right:14px; width:30px; height:30px; border:0; color:#718094; background:transparent; font-size:24px; cursor:pointer; }.result-dialog h2 { margin:8px 0; font-size:23px; }.result-total { color:#d39a35; font-size:36px; font-weight:800; }.result-total small { color:#83909d; font-size:12px; font-weight:700; }.result-dialog p { margin:8px 0 18px; color:var(--muted); font-size:12px; }.result-items { display:grid; gap:6px; max-height:180px; overflow:auto; padding:10px; border-radius:7px; background:#f7f9fc; color:#516070; font-size:12px; }.result-actions { display:flex; justify-content:center; gap:8px; margin-top:20px; }.result-actions .button { min-height:40px; min-width:120px; white-space:nowrap; }
.entertainment-admin-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.75fr); gap:28px; margin-top:22px; }.entertainment-admin h2,.admin-subheading { margin:0 0 12px; font-size:18px; }.admin-note { color:var(--muted); font-size:12px; line-height:1.6; }.entertainment-pool-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:16px; }.entertainment-pool-form .wide { grid-column:1/-1; }.entertainment-pool-form textarea { min-height:180px; font-family:ui-monospace,SFMono-Regular,monospace; font-size:12px; line-height:1.6; }.entertainment-admin-pools { display:grid; gap:10px; }.entertainment-admin-pools article { padding:14px; border:1px solid #e4e9f0; border-radius:8px; background:#fbfcfe; }.entertainment-admin-pools article div { display:flex; justify-content:space-between; gap:10px; }.entertainment-admin-pools article span,.entertainment-admin-pools article p { color:var(--muted); font-size:11px; }.entertainment-admin-pools article p { margin:8px 0 12px; }.admin-subheading { margin-top:28px; }.wallet-adjust-form { display:flex; gap:5px; min-width:310px; }.wallet-adjust-form input { min-width:0; width:92px; min-height:32px; padding:0 7px; border:1px solid var(--theme-line); border-radius:5px; }.wallet-adjust-form input[name=note] { width:150px; }.wallet-adjust-form button { min-height:32px; padding:0 8px; border:1px solid var(--theme-line); border-radius:5px; color:var(--theme-strong); background:var(--theme-soft); white-space:nowrap; cursor:pointer; }
.wallet-adjust-hint { display:block; margin-top:5px; color:var(--muted); font-size:11px; }
@media (max-width:767px) { .entertainment-shell { width:calc(100% - 24px); padding:22px 0 60px; }.entertainment-heading { align-items:stretch; flex-direction:column; gap:16px; }.entertainment-heading h1 { font-size:36px; }.wallet-chip { width:100%; }.play-tabs { width:100%; overflow:auto; }.play-tabs button,.play-tabs a { flex:0 0 auto; padding:0 11px; }.pool-strip { display:block; padding:13px; }.pool-strip-title { margin-bottom:10px; }.pool-options button { flex-basis:160px; }.draw-panel,.scratch-panel { padding:26px 13px 30px; }.draw-intro h2 { font-size:23px; }.draw-cards { min-height:150px; gap:7px; }.draw-card { width:calc(50% - 4px); min-height:140px; }.draw-card-placeholder { width:100%; }.play-actions { display:grid; grid-template-columns:1fr 1fr; }.play-actions .button { min-width:0; width:100%; padding:0 8px; font-size:12px; }.scratch-progress { grid-template-columns:auto auto 1fr; }.below-stage,.info-grid,.history-section { padding:18px 14px; }.prize-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }.prize-summary article:last-child { grid-column:1/-1; }.info-grid { grid-template-columns:1fr; gap:18px; }.history-list article { grid-template-columns:72px 1fr auto; gap:8px; }.history-list time { font-size:10px; }.result-dialog { padding:30px 17px 20px; }.result-actions .button { min-width:0; flex:1; }.entertainment-admin-grid { grid-template-columns:1fr; gap:24px; }.entertainment-pool-form { grid-template-columns:1fr; }.entertainment-pool-form .wide { grid-column:auto; }.entertainment-admin .table-wrap { overflow-x:auto; }.entertainment-admin table { min-width:720px; }.wallet-adjust-form { min-width:310px; } }
@media (prefers-reduced-motion:reduce) { .draw-card-back,.scratch-canvas { transition:none; } html { scroll-behavior:auto; } }

/* Generated visual layer and restrained game feedback. */
.entertainment-hero { position:relative; isolation:isolate; display:flex; align-items:flex-end; justify-content:space-between; gap:24px; min-height:238px; margin:10px 0 24px; padding:28px 30px; overflow:hidden; border:1px solid #d6e1ee; border-radius:14px; background:#173b72 url('/assets/generated/entertainment-hero.png') center/cover no-repeat; box-shadow:0 18px 42px rgba(31,65,107,.15); }
.entertainment-hero::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(15,44,88,.9),rgba(15,44,88,.48) 42%,rgba(15,44,88,.08) 78%); }
.entertainment-hero::after { content:""; position:absolute; z-index:-1; width:280px; height:280px; right:24%; top:-150px; border-radius:50%; background:rgba(99,219,201,.18); filter:blur(22px); animation:hero-breathe 5s ease-in-out infinite; }
.hero-copy { position:relative; z-index:1; color:#fff; }.hero-copy .eyebrow { color:#a8d9e9; }.hero-copy h1 { margin:8px 0 0; font-size:clamp(38px,5vw,66px); line-height:.95; text-shadow:0 4px 20px rgba(0,0,0,.18); }.hero-copy p:not(.eyebrow) { margin:15px 0 7px; color:#fff; font-size:20px; font-weight:700; }.hero-copy span { color:#c5d8ef; font-size:12px; }
.hero-orbit { position:absolute; z-index:0; right:27%; top:32px; width:170px; height:170px; border:1px solid rgba(196,237,245,.38); border-radius:50%; transform:rotate(-18deg); animation:orbit-turn 14s linear infinite; }.hero-orbit::before,.hero-orbit::after { content:""; position:absolute; inset:13px; border:1px solid rgba(218,246,242,.23); border-radius:50%; }.hero-orbit::after { inset:42px; border-color:rgba(255,213,133,.45); }.hero-orbit i { position:absolute; inset:40px; border-radius:48% 52% 50% 50%; background:linear-gradient(145deg,rgba(97,214,204,.92),rgba(54,104,196,.86)); box-shadow:0 0 42px rgba(102,227,215,.58),inset 8px 8px 20px rgba(255,255,255,.3); transform:rotate(45deg); }.hero-orbit b { position:absolute; z-index:1; inset:0; display:grid; place-items:center; color:#ffe5a8; font-size:32px; text-shadow:0 0 22px #ffd978; animation:star-pulse 1.8s ease-in-out infinite; }.hero-orbit em { position:absolute; z-index:1; top:7px; right:18px; width:8px; height:8px; border-radius:50%; background:#ffe19d; box-shadow:0 0 15px #ffe19d; }
.wallet-chip { position:relative; z-index:2; }.wallet-chip strong { transition:transform .25s ease,color .25s ease; }.wallet-chip.is-updated strong { color:#ffd467; transform:scale(1.08); }
.draw-card-back { position:relative; background:#1f5aa8 url('/assets/generated/lucky-card-back.png') center/cover; transform:perspective(700px) rotateY(0) translateY(0); transition:transform .62s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease; box-shadow:0 15px 28px rgba(25,72,140,.2); }.draw-card-back::after { content:""; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.46) 48%,transparent 70%); transform:translateX(-130%); }.draw-card-back.revealed { transform:perspective(700px) rotateY(360deg) translateY(-5px); box-shadow:0 17px 30px rgba(38,68,106,.15); }.draw-card-back.revealed::after { animation:card-shine .62s ease .1s both; }
.play-stage { position:relative; }.stage-particles { position:absolute; inset:48px 0 0; pointer-events:none; opacity:.75; }.stage-particles::before,.stage-particles::after { content:"✦  ·  ✧  ·  ✦"; position:absolute; color:rgba(35,103,209,.2); font-size:18px; letter-spacing:30px; animation:particle-drift 8s ease-in-out infinite; }.stage-particles::before { top:28px; left:12%; }.stage-particles::after { right:10%; bottom:24px; color:rgba(211,154,57,.24); animation-delay:-3s; }
.entertainment-modal:not([hidden]) .result-dialog { animation:dialog-in .48s cubic-bezier(.2,.85,.25,1) both; }.result-dialog { overflow:hidden; }.result-burst { position:absolute; z-index:0; inset:-25%; pointer-events:none; background:linear-gradient(rgba(255,255,255,.2),rgba(255,255,255,.2)),url('/assets/generated/reward-burst.png') center/cover; opacity:.22; mix-blend-mode:multiply; animation:burst-spin 18s linear infinite; }.result-dialog > :not(.result-burst):not(.modal-close) { position:relative; z-index:1; }.result-dialog .modal-close { position:absolute; z-index:3; }.result-total { animation:reward-pop .55s .12s cubic-bezier(.2,.9,.3,1.2) both; }
.button { transition:transform .18s ease,box-shadow .18s ease,background .18s ease; }.button:hover:not(:disabled) { transform:translateY(-2px); box-shadow:0 8px 18px rgba(35,103,209,.17); }.button:active:not(:disabled) { transform:translateY(0) scale(.98); }.game-action.is-loading { position:relative; color:transparent; pointer-events:none; }.game-action.is-loading::after { content:""; position:absolute; width:16px; height:16px; border:2px solid rgba(255,255,255,.45); border-top-color:#fff; border-radius:50%; animation:spinner .7s linear infinite; }.button.secondary.game-action.is-loading::after { border-color:rgba(35,103,209,.25); border-top-color:#2367d1; }
@keyframes hero-breathe { 0%,100%{transform:scale(.9);opacity:.55} 50%{transform:scale(1.1);opacity:.9} } @keyframes orbit-turn { to{transform:rotate(342deg)} } @keyframes star-pulse { 0%,100%{transform:scale(.85);opacity:.72} 50%{transform:scale(1.12);opacity:1} } @keyframes card-shine { to{transform:translateX(130%)} } @keyframes dialog-in { from{opacity:0;transform:translateY(18px) scale(.96)} to{opacity:1;transform:none} } @keyframes burst-spin { to{transform:rotate(360deg) scale(1.08)} } @keyframes reward-pop { from{opacity:0;transform:scale(.55)} to{opacity:1;transform:scale(1)} } @keyframes particle-drift { 0%,100%{transform:translate3d(0,0,0)} 50%{transform:translate3d(18px,-9px,0)} } @keyframes spinner { to{transform:rotate(360deg)} }
@media (max-width:767px) { .entertainment-hero { align-items:stretch; flex-direction:column; min-height:390px; gap:18px; padding:24px 20px; background-position:62% center; }.entertainment-hero::before { background:linear-gradient(180deg,rgba(15,44,88,.9),rgba(15,44,88,.43) 66%,rgba(15,44,88,.18)); }.hero-copy h1 { font-size:48px; }.hero-copy p:not(.eyebrow) { font-size:18px; }.hero-orbit { right:13%; top:145px; width:140px; height:140px; }.wallet-chip { width:100%; margin-top:auto; } }
@media (prefers-reduced-motion:reduce) { .draw-card-back,.hero-orbit,.hero-orbit b,.entertainment-hero::after,.result-burst,.entertainment-modal:not([hidden]) .result-dialog,.result-total { animation:none; transition:none; } }

/* Draw state feedback and the full probability dialog. */
.draw-card-idle { width:min(380px,100%); min-height:174px; color:#fff; background:#1f5aa8 url('/assets/generated/lucky-card-back.png') center/cover; box-shadow:0 14px 28px rgba(25,72,140,.18); }
.draw-card-idle span { font-size:13px; font-weight:800; }.draw-card-idle b { color:#ffe5a8; font-size:34px; text-shadow:0 0 18px #ffd978; animation:star-pulse 1.8s ease-in-out infinite; }.draw-card-idle small { color:#d5e6fa; font-size:11px; }
.draw-cards.is-shuffling .draw-card-back { animation:shuffle-card .32s ease-in-out infinite alternate; }.draw-status { display:inline-flex; align-items:center; gap:5px; margin-left:10px; color:#2367d1; font-size:11px; font-weight:700; }.draw-status::before { width:6px; height:6px; border-radius:50%; background:#4e9d91; content:""; }.is-playing .draw-status::before { background:#d39a35; animation:status-blink .7s ease-in-out infinite; }
.probability-dialog { position:relative; width:min(620px,100%); max-height:min(720px,calc(100vh - 40px)); overflow:auto; padding:30px 28px 22px; border:1px solid #dce6ef; border-radius:14px; background:#fff; box-shadow:0 24px 70px rgba(15,34,58,.22); }.probability-dialog h2 { margin:8px 0; font-size:23px; }.probability-dialog > p { margin:0 0 18px; color:var(--muted); font-size:12px; line-height:1.6; }.probability-table { display:grid; gap:8px; }.probability-row { position:relative; display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:10px; min-height:54px; padding:10px 12px; overflow:hidden; border:1px solid #e2e9f1; border-radius:8px; background:#f9fbfd; }.probability-row strong,.probability-row span,.probability-row b { position:relative; z-index:1; }.probability-row strong { font-size:13px; }.probability-row span { color:var(--muted); font-size:11px; }.probability-row b { color:#2367d1; font-size:12px; }.probability-row i { position:absolute; z-index:0; left:0; bottom:0; height:3px; min-width:3px; opacity:.65; }.probability-footer { display:flex; align-items:center; justify-content:flex-end; gap:12px; margin-top:18px; color:var(--muted); font-size:12px; }.probability-footer strong { color:#2367d1; }.probability-footer .button { min-width:100px; }
@keyframes shuffle-card { from { transform:perspective(700px) rotate(-2deg) translateY(0); } to { transform:perspective(700px) rotate(2deg) translateY(-8px); } } @keyframes status-blink { 50% { opacity:.3; transform:scale(.72); } }
@media (max-width:767px) { .draw-status { margin-left:3px; }.probability-dialog { padding:26px 16px 18px; }.probability-row { grid-template-columns:1fr auto; gap:4px 8px; }.probability-row span { grid-column:1; }.probability-row b { grid-column:2; grid-row:1 / span 2; }.probability-footer .button { flex:1; } }
@media (prefers-reduced-motion:reduce) { .draw-card-idle,.draw-cards.is-shuffling .draw-card-back,.draw-status::before { animation:none; } }

/* Keep the balance card outside the artwork so it never covers the hero. */
.entertainment-hero { margin-bottom: 14px; }
.wallet-strip { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 0 0 14px; padding: 10px 14px; border: 1px solid #e3e9f1; border-radius: 10px; background: rgba(255,255,255,.9); }
.wallet-strip > p { margin: 0; color: var(--muted); font-size: 11px; line-height:1.5; }
.wallet-strip .wallet-chip { min-width: 218px; box-shadow: none; }
.retired-pools { margin-top: -4px; padding: 0 14px; border: 1px solid var(--theme-line); border-radius: var(--control-radius); background: color-mix(in srgb,#fff 96%,var(--theme-primary) 4%); }
.retired-pools summary { display: flex; min-height: 38px; align-items: center; justify-content: space-between; color: var(--theme-strong); font-size: 11px; font-weight: 700; cursor: pointer; list-style: none; }
.retired-pools summary::-webkit-details-marker { display: none; }
.retired-pools summary span { padding: 3px 6px; border-radius: 4px; background: var(--theme-soft); font-size: 10px; }
.retired-pool-list { display: grid; gap: 6px; padding-bottom: 10px; }
.retired-pool-list > p { margin: 0; padding: 8px 0; border-top: 1px solid var(--theme-line); color: var(--muted); font-size: 10px; }
.retired-pool-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 0; border-top: 1px solid var(--theme-line); }
.retired-pool-row strong, .retired-pool-row small { display: block; }
.retired-pool-row small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.retired-pool-row .danger-link { height: 30px; padding: 0 9px; border: 1px solid #eccdca; border-radius: 4px; color: #a74641; background: #fffafa; font-size: 10px; cursor: pointer; white-space: nowrap; }
.maintenance-badge { padding: 4px 7px; border-radius: 5px; color: #8a641e; background: #fff6dc; font-size: 10px; white-space: nowrap; }
.pool-options button[data-pool-status="PAUSED"] { border-color: #ead7a7; background: #fffdf7; }
.pool-options button[data-pool-status="PAUSED"] b { color: #8a641e; }
.play-stage[data-maintenance="true"] { background: linear-gradient(145deg,#fffaf0,#fff 58%,#fffaf4); }
@media (max-width: 767px) {
  .entertainment-shell { width:calc(100% - 20px); padding-top:18px; }
  .wallet-strip { align-items: stretch; flex-direction: column; gap: 8px; padding: 10px; }
  .wallet-strip > p { margin: 0; }
  .wallet-strip .wallet-chip { width: 100%; min-width: 0; }
  .play-tabs { scrollbar-width:none; }.play-tabs::-webkit-scrollbar { display:none; }
  .play-tabs button,.play-tabs a { min-height:40px; padding:0 12px; font-size:12px; }
  .pool-strip { overflow:hidden; }
  .pool-options { width:100%; scrollbar-width:none; }.pool-options::-webkit-scrollbar { display:none; }
  .pool-options button { flex-basis:min(168px,72vw); }
  .play-stage-copy { flex-wrap:wrap; min-height:52px; padding:9px 12px; line-height:1.4; }
  .play-stage-copy .plain-link { margin-left:auto; }
  .stage-divider { display:none; }
  .draw-status,.maintenance-badge { flex:none; }
  .play-actions .button { min-height:44px; white-space:nowrap; }
  .section-head { align-items:flex-start; }.section-head .plain-link { flex:none; margin-left:auto; }
  .history-list article { min-width:0; }.history-list article > div { min-width:0; }.history-list article strong,.history-list article span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .retired-pools { padding: 0 10px; }
  .retired-pool-row { align-items: flex-start; flex-direction: column; gap: 7px; }
  .retired-pool-row form, .retired-pool-row .danger-link { width: 100%; }
}
@media (max-width:380px) {
  .entertainment-hero { min-height:350px; padding:20px 16px; }
  .hero-copy h1 { font-size:42px; }
  .hero-copy p:not(.eyebrow) { font-size:16px; }
  .wallet-chip { grid-template-columns:minmax(0,1fr) auto; padding:12px; }
  .wallet-chip strong { font-size:22px; }
  .play-actions { grid-template-columns:1fr; }
  .play-tabs button,.play-tabs a { padding:0 10px; font-size:11px; }
  .history-list article { grid-template-columns:62px minmax(0,1fr) auto; gap:6px; }
  .probability-footer { flex-wrap:wrap; }.probability-footer .button { flex-basis:100%; }
  .pool-options { display:grid; overflow:visible; }
  .pool-options button { width:100%; min-width:0; }
}
@media (min-width:1200px) { .entertainment-shell { width:min(4000px,calc(100% - clamp(40px,4vw,240px))); } }
@media (min-width:1600px) { .draw-panel,.scratch-panel { width:min(780px,100%); } }
@media (min-width:2400px) { .prize-summary { grid-template-columns:repeat(5,minmax(180px,1fr)); }.info-grid { gap:20px; } }
@media (min-width:3200px) { .entertainment-hero { min-height:270px; }.hero-orbit { right:28%; transform:scale(1.12) rotate(-18deg); }.draw-panel,.scratch-panel { width:min(860px,100%); }.prize-summary { grid-template-columns:repeat(5,minmax(240px,1fr)); }.info-grid { gap:28px; } }
@media (min-width:4000px) { .entertainment-hero { min-height:300px; }.hero-orbit { right:31%; transform:scale(1.2) rotate(-18deg); }.draw-panel,.scratch-panel { width:min(980px,100%); }.prize-summary { grid-template-columns:repeat(5,minmax(300px,1fr)); }.info-grid { gap:34px; } }

/* Reward colors mirror the administrator configuration while retaining readable labels. */
.wallet-chip strong { color:#c88a18; text-shadow:0 1px 6px rgba(139,91,10,.14); }
.wallet-chip.is-updated strong { color:#d49a24; }
.draw-card-back.revealed b, .scratch-result b { color:inherit; }
.prize-summary article small { color:var(--prize-color); font-size:12px; font-weight:800; }
.result-items span { color:var(--prize-color); font-weight:700; }
.probability-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 12px; min-height:62px; padding:11px 13px; border-color:color-mix(in srgb,var(--prize-color) 28%,#e2e9f1); border-left:4px solid var(--prize-color); }
.probability-row strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.probability-row span { grid-column:1; color:var(--muted); font-size:10px; }
.probability-row b { grid-column:2; grid-row:1 / span 2; color:var(--prize-color); font-size:13px; white-space:nowrap; }
.probability-footer span { margin-right:auto; }
@media (max-width:767px) { .probability-footer { flex-wrap:wrap; }.probability-footer span { flex-basis:100%; } }

/* Pool names stay intact on narrow screens instead of breaking between characters. */
.pool-options strong,
[data-active-pool-name] { display:block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; word-break:keep-all; overflow-wrap:normal; }
@media (max-width:767px) {
  .pool-options strong { width:100%; }
  [data-active-pool-name] { flex:1 1 auto; }
}
