/* Only the disposable opening demonstration is styled here. */
.gi-stage.gid-host { background:transparent; --gid-white-rim:20px; }
.gid-engine.sn-root .sn-game,
.gid-engine.sf-root .sf-game { box-shadow:0 0 0 var(--gid-white-rim) var(--am-white, #fff); }
@media (max-width:600px) { .gi-stage.gid-host { --gid-white-rim:12px; } }
.gid-host { box-sizing:border-box; position:relative; display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(0,1fr); place-items:center; width:100%; min-width:0; padding:20px; overflow:hidden; }
.gid-engine { width:100%; min-width:0; pointer-events:none; user-select:none; transform-origin:center; }
.gid-engine.sn-root .sn-game { border-radius:16px; padding:0 0 12px; }
.gid-engine.sn-root .sn-header,
.gid-engine.sn-root .sn-tools,
.gid-engine.sn-root .sn-status,
.gid-engine.sn-root .sn-pick,
.gid-engine.sn-root .sn-pattern,
.gid-engine.sn-root .sn-hint,
.gid-engine.sn-root .sn-pad,
.gid-engine.sn-root .sn-last,
.gid-engine.sn-root .sn-paused,
.gid-engine.sn-root .sn-done-actions,
.gid-engine.sn-root .sn-done-roles,
.gid-engine.sn-root .sn-done-note,
.gid-engine.sn-root .sn-done-alt { display:none !important; }
.gid-engine.sn-root .sn-task { padding:16px 16px 8px; }
.gid-engine.sn-root .sn-zh { font-size:18px; line-height:1.4; }
.gid-engine.sn-root .sn-slots { gap:5px; margin-top:8px; }
.gid-engine.sn-root .sn-slot { min-width:32px; min-height:29px; padding:3px 9px; font-size:14px; }
.gid-engine.sn-root .sn-boardwrap { padding:6px 10px 0; }
.gid-engine.sn-root .sn-board { border-color:#40404C; border-radius:8px; }
.gid-engine.sf-root .sf-game { border-radius:16px; }
.gid-engine.sf-root .sf-header,
.gid-engine.sf-root .sf-feedback,
.gid-engine.sf-root .sf-tools,
.gid-engine.sf-root .sf-status,
.gid-engine.sf-root .sf-progress,
.gid-engine.sf-root .sf-start,
.gid-engine.sf-root .sf-throttle,
.gid-engine.sf-root .sf-credits,
.gid-engine.sf-root .sf-paused,
.gid-engine.sf-root .sf-speak { display:none !important; }
.gid-engine.sf-root .sf-task { min-height:74px; padding:14px 16px 8px; }
.gid-engine.sf-root .sf-prompt { font-size:23px; line-height:28px; margin:0 0 3px; }
.gid-engine.sf-root .sf-hint { font-size:14px; line-height:20px; }
.gid-engine.sf-root .sf-stage { height:var(--gid-stage-height, 300px); }
.gid-engine.sf-root .sf-label { font-size:17px; }
.gid-engine.sf-root.gid-complete .sf-prompt { color:#CFA8F4; }
@media (max-width:600px) {
  .gid-host { padding:12px; }
  .gid-engine.sn-root .sn-zh { font-size:15px; }
  .gid-engine.sn-root .sn-task { padding:12px 14px 8px; }
  .gid-engine.sf-root .sf-task { padding:12px 14px 8px; }
  .gid-engine.sn-root .sn-done-en { font-size:23px; }
  .gid-engine.sn-root .sn-done-zh { font-size:14px; }
  .gid-engine.sf-root .sf-prompt { font-size:20px; }
  .gid-engine.sf-root .sf-label { font-size:15px; min-width:90px; }
}

.gid-engine.sn-root[data-scene="football"] .sn-slots { flex-wrap:wrap; row-gap:5px; }
.gid-engine.sn-root[data-scene="football"] .sn-done-en { font-size:clamp(18px, 2.5vw, 26px); line-height:1.4; padding:0 12px; }
@media (max-width:600px) {
  .gid-engine.sn-root[data-scene="football"] .sn-slot { font-size:12px; padding:3px 6px; min-width:24px; }
  .gid-engine.sn-root[data-scene="football"] .sn-zh { font-size:14px; }
  .gid-engine.sn-root[data-scene="football"] .sn-done-zh { font-size:13px; padding:0 10px; }
}
