/* FLAGS — a travel card on a tactile tabletop. Palette supplied by arcade themes. */
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game {
  --flags-ink: var(--arcade-text, #233a3a);
  --flags-muted: var(--arcade-muted, #687979);
  --flags-paper: var(--arcade-surface-raised, #fffdf5);
  --flags-surface: var(--arcade-surface, #f3f3e9);
  --flags-line: var(--arcade-border, #d6ded3);
  --flags-accent: var(--arcade-accent, #d56445);
  --flags-accent-ink: var(--arcade-accent-ink, #fffdf5);
  --flags-felt: var(--arcade-felt, #507f73);
  --flags-felt-ink: var(--arcade-felt-text, #f8fbef);
  width: min(1260px, 100%) !important;
  margin: 0 auto;
  color: var(--flags-ink);
  font-family: inherit;
}
.flags-game *, .flags-game *::before, .flags-game *::after { box-sizing: border-box; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-layout { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 22px; align-items: start; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-panel,
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score {
  padding: 25px;
  border: 1px solid var(--flags-line);
  border-radius: 22px;
  background: var(--flags-paper);
  color: var(--flags-ink);
  box-shadow: 0 5px 0 color-mix(in srgb, var(--flags-line) 75%, transparent), 0 16px 35px #00000012;
  overflow: visible;
}
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-panel::before,
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score::before { display: none; }
.flags-game .flags-panel > *, .flags-game .flags-score > * { position: relative; z-index: auto; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-head { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:0 0 21px; }
.flags-game .flags-title { min-width: 0; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-head .game-kicker { display:flex; align-items:center; gap:7px; margin:0 0 8px; color:var(--flags-accent); font-size:12px; font-weight:850; line-height:1.1; letter-spacing:.13em; }
.flags-game .game-kicker > span:last-child { margin:0 0 0 7px; color:var(--flags-muted); font-size:10px; font-weight:650; letter-spacing:.04em; }
.flags-game .flags-globe { margin:0; color:var(--flags-accent); font-size:23px; font-weight:400; line-height:.7; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-head h1 { margin:0; color:var(--flags-ink); font-family:inherit; font-size:clamp(23px,2.6vw,34px); font-weight:850; line-height:1.12; letter-spacing:-.05em; text-shadow:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-status { display:block; margin-top:8px; color:var(--flags-muted); font-size:11px; font-weight:500; line-height:1.5; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-timer-card { flex:0 0 auto; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; min-width:104px; padding:13px 14px; border:1px solid var(--flags-line); border-radius:14px; background:var(--flags-surface); box-shadow:inset 0 2px 0 var(--flags-paper); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-timer-card small { display:block; margin:0; color:var(--flags-muted); font-size:9px; font-weight:750; line-height:1.2; letter-spacing:.09em; white-space:nowrap; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-timer { display:block; padding:0; min-width:0; height:auto; border:0; border-radius:0; background:none; color:var(--flags-ink); font-family:inherit; font-size:29px; font-weight:750; font-variant-numeric:tabular-nums; line-height:1; letter-spacing:-.06em; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-timer-card.is-urgent { border-color:var(--arcade-danger, #b84b38); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .is-urgent #flags-timer { color:var(--arcade-danger, #b84b38); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-board { margin:0; padding:17px 24px 0; border:1px solid color-mix(in srgb,var(--flags-felt) 60%,#000); border-radius:15px; background:radial-gradient(ellipse at 50% 0%,#ffffff0d,transparent 75%),var(--flags-felt); box-shadow:inset 0 2px 6px #00000016; overflow:hidden; }
.flags-game .flags-board::before { display:none; }
.flags-game .flags-board-caption { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:15px; color:var(--flags-felt-ink); opacity:.8; font-size:9px; font-weight:650; letter-spacing:.16em; }
.flags-game .flags-board-caption span:first-child { display:flex; align-items:center; gap:7px; }
.flags-game .flags-board-caption i { width:6px; height:6px; border:1px solid currentColor; border-radius:50%; }
.flags-game .flags-flag-mount { position:relative; max-width:540px; margin:0 auto; padding:9px; border-radius:8px; background:var(--arcade-card,#fffdf5); box-shadow:0 4px 1px #0000000d,0 10px 20px #00000020; transform:rotate(-.65deg); }
.flags-game .flags-flag-mount::before, .flags-game .flags-flag-mount::after { content:""; position:absolute; width:41px; height:12px; z-index:2; top:-4px; background:#f6e9c5bf; box-shadow:0 1px 2px #0000000a; transform:rotate(-28deg); pointer-events:none; }
.flags-game .flags-flag-mount::before { left:7px; }
.flags-game .flags-flag-mount::after { left:auto; right:7px; transform:rotate(28deg); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-grid { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(0,1fr)); gap:0; width:100%; padding:0; aspect-ratio:3/2; border:0; border-radius:2px; background:#faf9f4; overflow:hidden; filter:none; }
.flags-game .flags-source-image { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; user-select:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile { position:relative; min-width:0; min-height:0; border:0; border-radius:0; background:none; box-shadow:none; animation:none; overflow:visible; transform:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile b { position:absolute; inset:-.5px; display:grid; place-items:center; padding:0; border:1px solid color-mix(in srgb,var(--flags-felt-ink) 17%,transparent); border-radius:0; background:var(--flags-felt); color:var(--flags-felt-ink); box-shadow:inset 0 0 24px #0000000a; transform:none; transition:opacity .32s ease,transform .42s cubic-bezier(.2,.8,.2,1); }
.flags-game .flags-tile b::before { content:""; position:absolute; inset:7px; border:1px solid color-mix(in srgb,var(--flags-felt-ink) 14%,transparent); border-radius:0; }
.flags-game .flags-tile b::after { display:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile b em { position:absolute; left:13px; top:12px; color:var(--flags-felt-ink); opacity:.45; font-family:inherit; font-size:10px; font-weight:600; font-style:normal; letter-spacing:.04em; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile b strong { color:var(--flags-felt-ink); opacity:.23; font-family:Georgia,serif; font-size:50px; font-weight:400; line-height:1; letter-spacing:0; }
.flags-game .flags-tile-corner { position:absolute; right:12px; bottom:9px; color:var(--flags-felt-ink); opacity:.35; font-size:11px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile.is-revealed b { opacity:0; transform:scale(.94); pointer-events:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile.is-new { animation:flagsPremiumReveal .48s ease-out both; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; margin:18px -24px 0; padding:13px 15px; border-top:1px solid color-mix(in srgb,var(--flags-felt-ink) 16%,transparent); background:#00000007; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row div { display:grid; justify-items:center; gap:3px; margin:0; padding:0 10px; border:0; border-right:1px solid color-mix(in srgb,var(--flags-felt-ink) 18%,transparent); border-radius:0; background:none; box-shadow:none; }
.flags-game .flags-intel-row div:last-child { border-right:0 !important; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row span { color:var(--flags-felt-ink); opacity:.65; font-size:8px; font-weight:550; text-transform:uppercase; letter-spacing:.08em; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row b { display:block; margin:0; color:var(--flags-felt-ink); font-family:inherit; font-size:15px; font-weight:700; line-height:1.4; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-answer-zone { margin:20px 0 0; padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-answer-zone > header { display:flex; justify-content:space-between; align-items:center; gap:10px; margin:0 0 8px; }
.flags-game .flags-answer-zone > header label { color:var(--flags-ink); font-size:12px; font-weight:700; letter-spacing:0; text-transform:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-answer-zone > header small { color:var(--flags-muted); font-size:10px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:9px; margin:0; padding:0; align-items:stretch; }
.flags-game .flags-combobox { position:relative; display:block; min-width:0; }
.flags-game .flags-combobox svg { position:absolute; z-index:1; left:15px; top:50%; width:18px; height:18px; transform:translateY(-50%); color:var(--flags-muted); stroke:currentColor; stroke-width:1.7; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form input { width:100%; height:49px; margin:0; padding:0 14px 0 43px; border:1px solid var(--flags-line); border-radius:10px; background:var(--flags-surface); color:var(--flags-ink); box-shadow:inset 0 2px 2px #00000005; font-family:inherit; font-size:14px; font-weight:500; letter-spacing:0; text-transform:none; }
.flags-game .flags-guess-form input::placeholder { color:var(--flags-muted); opacity:.8; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form input:focus { outline:none; border-color:var(--flags-accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--flags-accent) 18%,transparent); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form > button { display:flex; align-items:center; justify-content:center; gap:14px; min-width:155px; height:49px; margin:0; padding:0 15px; border:1px solid color-mix(in srgb,var(--flags-accent) 80%,#000); border-radius:10px; background:var(--flags-accent); color:var(--flags-accent-ink); box-shadow:0 3px 0 color-mix(in srgb,var(--flags-accent) 76%,#000); font-family:inherit; font-size:12px; text-shadow:none; animation:none; transition:transform .16s,box-shadow .16s,filter .16s; }
.flags-game .flags-guess-form > button b { font-size:12px; }
.flags-game .flags-guess-form > button span { margin:0; font-size:18px; opacity:.75; }
.flags-game .flags-guess-form > button:hover:not(:disabled) { filter:brightness(1.06); transform:translateY(-1px); }
.flags-game .flags-guess-form > button:active:not(:disabled) { transform:translateY(2px); box-shadow:0 1px 0 color-mix(in srgb,var(--flags-accent) 76%,#000); }
.flags-game .flags-guess-form > button:disabled, .flags-game .flags-guess-form input:disabled { opacity:.5; cursor:default; }
.flags-game :is(button,summary):focus-visible { outline:3px solid var(--flags-accent); outline-offset:4px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-hint { margin:11px 0 0; color:var(--flags-muted); font-size:10px; font-weight:500; line-height:1.5; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestions { position:absolute; z-index:15; left:0; top:calc(100% + 8px); width:100%; display:none; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; max-height:252px; min-height:0; margin:0; padding:6px; border:1px solid var(--flags-line); border-radius:12px; background:var(--flags-paper); box-shadow:var(--arcade-shadow,0 10px 30px #0003); overflow-y:auto; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestions.is-open { display:grid; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestion-card { display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; height:auto; min-height:51px; margin:0; padding:10px; border:1px solid transparent; border-radius:7px; background:none; color:var(--flags-ink); text-align:left; box-shadow:none; animation:none; transform:none; }
.flags-game .flags-suggestion-copy { display:grid; gap:3px; min-width:0; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestion-copy b { color:var(--flags-ink); font-size:12px; font-weight:700; line-height:1.3; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestion-copy small { color:var(--flags-muted); font-size:10px; font-weight:500; line-height:1.3; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestion-card em { display:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestion-card:hover,
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestion-card.is-highlighted { border-color:var(--flags-line); background:var(--flags-surface); transform:none; }
.flags-game .flags-empty-suggest { display:grid; grid-column:1/-1; gap:4px; padding:13px; color:var(--flags-muted); font-size:11px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-feedback-slot { min-height:0; margin:0; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-feedback { display:flex; gap:7px; margin:14px 0 0; padding:11px 13px; border:1px solid var(--flags-line); border-left:3px solid var(--flags-accent); border-radius:8px; background:var(--flags-surface); color:var(--flags-ink); font-size:11px; line-height:1.4; box-shadow:none; animation:flagsPremiumFeedback .2s ease-out; }
.flags-game .flags-feedback[hidden] { display:none !important; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-feedback.is-danger { border-left-color:var(--arcade-danger,#b84b38); }
.flags-game .flags-feedback.is-fading { opacity:0; transition:opacity .2s; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score { padding:23px 20px 18px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score > header { display:flex; justify-content:space-between; align-items:center; gap:10px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score > header small { color:var(--flags-muted); font-size:9px; font-weight:600; letter-spacing:.03em; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score h2 { margin:5px 0 0; color:var(--flags-ink); font-family:inherit; font-size:25px; font-weight:800; letter-spacing:-.05em; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score > header .flags-score-mark { display:grid; place-items:center; width:43px; height:43px; border:1px solid var(--flags-line); border-radius:50%; background:var(--flags-surface); color:var(--flags-accent); font-family:Georgia,serif; font-size:24px; font-weight:400; }
.flags-game .flags-score-subline { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:18px; padding-bottom:13px; border-bottom:1px solid var(--flags-line); color:var(--flags-muted); font-size:9px; }
.flags-game .flags-live { display:flex; align-items:center; gap:5px; font-size:8px; font-weight:700; letter-spacing:.11em; }
.flags-game .flags-live i { width:5px; height:5px; border-radius:50%; background:var(--arcade-secondary,#6a9878); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players { display:grid; gap:8px; margin:15px 0 20px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article { position:relative; display:grid; grid-template-columns:17px 36px minmax(0,1fr) auto; align-items:center; gap:9px; min-height:69px; margin:0; padding:10px 9px; border:1px solid var(--flags-line); border-radius:11px; background:var(--flags-paper); box-shadow:0 2px 0 var(--flags-surface); overflow:visible; }
.flags-game #flags-players article::before { display:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article.rank-1 { background:var(--flags-surface); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players .flags-rank { position:static; display:block; width:auto; height:auto; border:0; border-radius:0; background:none; color:var(--flags-muted); font-size:12px; font-weight:650; line-height:1; font-style:normal; box-shadow:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players img { width:36px; height:36px; border:1px solid var(--flags-line); border-radius:50%; background:var(--flags-surface); object-fit:cover; box-shadow:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article > div:not(.flags-score-cell) { display:grid; gap:3px; min-width:0; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article b { display:block; color:var(--flags-ink); font-family:inherit; font-size:12px; font-weight:750; line-height:1.3; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article span { color:var(--flags-muted); font-size:9px; font-weight:450; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article i { position:relative; display:block; width:100%; height:3px; margin:2px 0 0; border:0; border-radius:5px; background:var(--flags-line); overflow:hidden; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article i::after { content:""; position:absolute; inset:0 auto 0 0; width:var(--progress,0%); border-radius:inherit; background:var(--arcade-secondary,#6a9878); transition:width .4s ease; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-cell { display:grid; position:relative; justify-items:end; align-items:center; min-width:34px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article strong { color:var(--flags-ink); font-family:inherit; font-size:16px; font-weight:750; white-space:nowrap; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-gain { position:absolute; right:0; top:-17px; padding:2px 5px; border:0; border-radius:4px; background:var(--arcade-secondary,#6a9878); color:var(--flags-felt-ink); font-family:inherit; font-size:10px; font-weight:750; font-style:normal; animation:flagsPremiumFeedback .24s ease-out; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article.is-correct,
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article.is-finished { border-color:var(--arcade-secondary,#6a9878); box-shadow:0 2px 0 var(--flags-surface); }
.flags-game .flags-discovery { margin-top:14px; padding:14px; border:1px dashed var(--flags-line); border-radius:10px; background:var(--flags-surface); }
.flags-game .flags-discovery > div:first-child { display:flex; justify-content:space-between; gap:8px; align-items:baseline; }
.flags-game .flags-discovery b { color:var(--flags-ink); font-size:10px; font-weight:700; }
.flags-game .flags-discovery small { color:var(--flags-muted); font-size:8px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-reveal-track { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:5px; margin:11px 0 0; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-reveal-track span { height:28px; border:1px solid var(--flags-line); border-radius:5px; background:var(--flags-paper); color:var(--flags-muted); font-family:inherit; font-size:9px; font-weight:650; box-shadow:0 2px 0 var(--flags-line); animation:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-reveal-track span.is-on { border-color:var(--flags-felt); background:var(--flags-felt); color:var(--flags-felt-ink); box-shadow:0 2px 0 color-mix(in srgb,var(--flags-felt) 75%,#000); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-guide { margin:19px 0 0; padding:0; border:0; border-top:1px solid var(--flags-line); border-radius:0; background:none; box-shadow:none; }
.flags-game .flags-score-guide summary { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:46px; color:var(--flags-muted); font-size:11px; font-weight:650; cursor:pointer; list-style:none; }
.flags-game .flags-score-guide summary::-webkit-details-marker { display:none; }
.flags-game .flags-score-guide summary span { font-size:19px; font-weight:400; transition:transform .2s; }
.flags-game .flags-score-guide[open] summary span { transform:rotate(45deg); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-guide ol { display:grid; gap:12px; margin:0 0 16px; padding-left:19px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-guide li { display:list-item; color:var(--flags-accent); font-size:10px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-guide li::before { display:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-guide li b { display:block; color:var(--flags-ink); font-size:10px; font-weight:650; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-guide li small { display:block; margin-top:3px; color:var(--flags-muted); font-size:9px; font-weight:400; line-height:1.6; }
.flags-game .flags-score-actions { display:grid; grid-template-columns:1fr; gap:8px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-actions button { min-height:38px; height:auto; padding:9px; border:1px solid var(--flags-line); border-radius:8px; background:var(--flags-paper); color:var(--flags-muted); font-family:inherit; font-size:10px; font-weight:600; box-shadow:0 2px 0 var(--flags-surface); }
.flags-game .flags-score-actions button span { margin-right:6px; font-size:14px; }
.flags-game .flags-table-note { display:flex; justify-content:center; align-items:center; gap:7px; margin:20px 0 0; color:var(--flags-muted); opacity:.8; font-family:Georgia,serif; font-size:10px; font-style:italic; text-align:center; }
.flags-game .flags-table-note span { color:var(--flags-accent); font-size:13px; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-success-reveal { position:fixed; z-index:110; inset:0; display:grid; place-items:center; padding:20px; background:#102a2b38; backdrop-filter:blur(3px); pointer-events:none; opacity:0; transition:opacity .2s; }
.flags-game .flags-success-reveal[hidden] { display:none !important; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-success-reveal.is-visible { opacity:1; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-success-reveal article { position:relative; display:grid; justify-items:center; gap:10px; width:min(370px,100%); padding:30px; border:5px solid var(--flags-paper); outline:1px solid var(--flags-line); border-radius:19px; background:var(--flags-surface); color:var(--flags-ink); box-shadow:0 6px 0 var(--flags-line),0 20px 70px #0003; transform:translateY(12px) rotate(-2deg) scale(.96); transition:transform .25s ease-out; overflow:hidden; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-success-reveal.is-visible article { transform:translateY(0) rotate(-2deg) scale(1); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-success-reveal article > span:not(.flags-success-seal) { color:var(--flags-muted); font-size:10px; font-weight:750; letter-spacing:.18em; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-success-reveal .flags-success-seal { display:grid; place-items:center; width:49px; height:49px; margin-bottom:5px; border:1px solid var(--flags-felt); border-radius:50%; outline:1px solid var(--flags-felt); outline-offset:4px; color:var(--flags-felt); font-size:29px; font-weight:650; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-success-country { color:var(--flags-ink); font-family:inherit; font-size:31px; font-weight:800; line-height:1.15; letter-spacing:-.04em; text-align:center; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-success-points { padding:7px 14px; border-radius:6px; background:var(--flags-felt); color:var(--flags-felt-ink); font-family:inherit; font-size:16px; font-weight:700; }
.flags-game .flags-success-reveal article > i { display:none; }
@keyframes flagsPremiumReveal { from { filter:brightness(1.12); } to { filter:brightness(1); } }
@keyframes flagsPremiumFeedback { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:none; } }
@media (min-width:1600px) {
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game { width:min(1320px,100%) !important; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-layout { grid-template-columns:minmax(0,1fr) 330px; }
  .flags-game .flags-flag-mount { max-width:590px; }
}
@media (max-width:1000px) {
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-layout { grid-template-columns:minmax(0,1fr) 270px; gap:16px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-panel { padding:20px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score { padding:20px 15px 16px; }
  .flags-game .game-kicker > span:last-child { display:none; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-board { padding:15px 17px 0; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row { margin-left:-17px; margin-right:-17px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form > button { min-width:126px; padding:0 11px; gap:8px; }
  .flags-game .flags-guess-form > button span { display:none; }
}
@media (max-width:760px) {
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-layout { grid-template-columns:minmax(0,1fr); gap:18px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-panel { padding:18px; border-radius:17px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-head { gap:12px; margin-bottom:17px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-head h1 { font-size:25px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-head .game-kicker { font-size:10px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-status { max-width:32em; font-size:10px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-timer-card { min-width:85px; padding:12px 10px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-timer { font-size:26px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-board { padding:14px 20px 0; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row { margin-left:-20px; margin-right:-20px; padding:12px 8px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score { padding:20px; border-radius:17px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .flags-game .flags-discovery { margin-top:5px; }
  .flags-game .flags-table-note { margin-top:15px; }
}
@media (max-width:480px) {
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-panel { padding:15px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-head h1 { font-size:21px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-head .game-kicker { margin-bottom:7px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-timer-card { min-width:77px; padding:11px 8px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-timer-card small { font-size:8px; letter-spacing:.03em; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-timer { font-size:24px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-board { padding:13px 13px 0; border-radius:11px; }
  .flags-game .flags-board-caption { font-size:7px; letter-spacing:.1em; margin-bottom:13px; }
  .flags-game .flags-flag-mount { padding:6px; }
  .flags-game .flags-tile b::before { inset:5px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile b em { left:9px; top:9px; font-size:8px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile b strong { font-size:36px; }
  .flags-game .flags-tile-corner { right:9px; bottom:7px; font-size:9px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row { margin:14px -13px 0; padding:10px 4px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row span { font-size:7px; letter-spacing:.03em; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row b { font-size:13px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-answer-zone { margin-top:17px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-answer-zone > header small { font-size:9px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form { gap:7px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form input { height:48px; padding-left:34px; font-size:16px; }
  .flags-game .flags-combobox svg { width:15px; height:15px; left:11px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form > button { height:48px; min-width:105px; padding:0 10px; }
  .flags-game .flags-guess-form > button b { font-size:10px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestions { grid-template-columns:minmax(0,1fr); max-height:235px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players { grid-template-columns:minmax(0,1fr); gap:7px; }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score h2 { font-size:23px; }
  .flags-game .flags-feedback { flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) {
  .flags-game *, .flags-game *::before, .flags-game *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
/* Clear the prior theme's structural treatment without changing game visibility. */
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form > button b { margin:0; color:inherit; font-family:inherit; font-size:12px; font-weight:750; line-height:1.2; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form > button span { color:inherit; font-family:inherit; text-transform:none; letter-spacing:0; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestion-card { background:var(--flags-paper) !important; color:var(--flags-ink) !important; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-suggestion-card:is(:hover,.is-highlighted) { background:var(--flags-surface) !important; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players article strong { display:block; min-width:0; height:auto; padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-success-reveal,
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-success-reveal.is-visible { width:auto; height:auto; transform:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-success-reveal article { grid-template-columns:minmax(0,1fr); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-success-reveal article > * { grid-column:1; grid-row:auto; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-success-country { white-space:normal; overflow:visible; text-overflow:clip; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-success-points { border:0; box-shadow:none; }
body[data-arcade-design="retro"].is-controller-device .flags-game .flags-panel { padding:20px !important; border:1px solid var(--flags-line) !important; border-radius:17px !important; background:var(--flags-paper) !important; color:var(--flags-ink) !important; box-shadow:0 5px 0 var(--flags-line) !important; }
@media (max-width:480px) { body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-guess-form > button b { font-size:10px; } }
body[data-arcade-design="retro"] .arcade-main.page-play.play-flags { background:transparent !important; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-head { min-height:0; padding:0; border:0; border-radius:0; background:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-board { display:block; height:auto; min-height:0; aspect-ratio:auto; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-grid { width:100% !important; height:auto; max-height:none; }
.flags-game .flags-flag-mount { width:100%; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile b em { display:block; width:auto; height:auto; padding:0; border:0; border-radius:0; background:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile b strong { display:block; padding:0; border:0; border-radius:0; background:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score { max-height:none; overflow:visible !important; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score > header { margin:0; padding:0; border:0; border-radius:0; background:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game #flags-players { max-height:none; overflow:visible; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-reveal-track { padding-top:0; border-top:0; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-reveal-track::before { display:none; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-guide ol { list-style:decimal; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-score-guide li { padding:0 0 0 2px; min-height:0; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-timer-card { width:auto; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-board { place-items:normal; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-board-caption { width:100%; }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row { width:calc(100% + 48px); }
body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile b::before { inset:7px; border:1px solid color-mix(in srgb,var(--flags-felt-ink) 14%,transparent); border-radius:0; }
@media (max-width:1000px) { body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row { width:calc(100% + 34px); } }
@media (max-width:760px) { body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row { width:calc(100% + 40px); } }
@media (max-width:480px) {
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-intel-row { width:calc(100% + 26px); }
  body[data-arcade-design="retro"] .arcade-main.page-play .flags-game .flags-tile b::before { inset:5px; }
}
