/* Design Standard Wave S: shared structural shell for legacy game tools. */
html.style-ws-2-page .quarto-title-block,
html.style-ws-2-page #title-block-header,
html.style-ws-2-page h1.title,
html.style-ws-2-page .quarto-categories,
html.style-ws-2-page .quarto-title-meta { display: none !important; }

:is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell {
  --ids-teal:#197F8D; --ids-blue:#3E68A6; --ids-green:#2F8D57;
  --ids-amber:#B96824; --ids-red:#B9484D; --ids-ink:#20343D;
  --ids-muted:#526A73; --ids-line:#D8E3E8;
  --ids-pc:var(--pc-main,#607D8B);
  --ids-pc-tint:color-mix(in srgb,var(--ids-pc) 7%,white);
  --ids-pc-tint-strong:color-mix(in srgb,var(--ids-pc) 13%,white);
  --ids-pc-border:color-mix(in srgb,var(--ids-pc) 40%,white);
  width:min(1180px,calc(100vw - 32px)) !important; max-width:none !important;
  margin:0 0 32px 50% !important; padding:16px !important;
  transform:translateX(-50%); color:var(--ids-ink) !important;
  background:var(--ids-pc-tint) !important; border:1px solid var(--ids-pc-border) !important;
  border-radius:8px !important; box-shadow:none !important;
  font:16px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}
:is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell * { box-sizing:border-box; }
.ids-hero { padding:24px; margin-bottom:12px; background:var(--ids-pc-tint-strong); border:1px solid var(--ids-pc-border); border-radius:8px; box-shadow:0 14px 34px rgba(32,52,61,.10); }
.ids-kicker,.ids-legend { display:flex; flex-wrap:wrap; gap:8px 12px; }
.ids-kicker { margin-bottom:14px; }
.ids-pill { display:inline-flex; align-items:center; min-height:26px; padding:4px 10px; color:var(--ids-ink); background:#fff; border:1px solid var(--ids-pc-border); border-radius:999px; font-size:12px; font-weight:850; letter-spacing:.05em; text-transform:uppercase; }
.ids-hero :is(h1,h2) { margin:0 0 10px !important; color:var(--ids-ink) !important; font-size:clamp(32px,4vw,40px) !important; line-height:1.08 !important; letter-spacing:-.025em !important; }
.ids-hero p { max-width:850px; margin:0 !important; color:#38515B !important; font-size:17px !important; line-height:1.5 !important; }
.ids-hero-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; max-width:850px; margin-top:18px; }
.ids-hero-metric { padding:10px 12px; background:#fff; border:1px solid var(--ids-pc-border); border-radius:8px; }
.ids-hero-metric strong,.ids-hero-metric span { display:block; }
.ids-hero-metric strong { color:var(--ids-ink); font-size:16px; }
.ids-hero-metric span { margin-top:2px; color:var(--ids-muted); font-size:12px; }
.ids-ramp { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:12px 0; }
.ids-ramp-card,.ids-boundaries { padding:12px 14px; background:#fff; border:1px solid var(--ids-line); border-radius:8px; }
.ids-ramp-card strong,.ids-ramp-card span { display:block; }
.ids-ramp-card strong { color:var(--ids-teal); font-size:12px; font-weight:850; letter-spacing:.05em; text-transform:uppercase; }
.ids-ramp-card span { margin-top:4px; color:#38515B; font-size:14px; line-height:1.45; }
.ids-legend { margin:10px 0 14px; padding:10px 12px; color:var(--ids-muted); background:#fff; border:1px solid var(--ids-line); border-radius:8px; font-size:12px; font-weight:750; }
.ids-legend i { display:inline-block; width:10px; height:10px; margin-right:5px; border-radius:50%; }
.ids-legend .identity { background:var(--ids-pc-tint-strong); border:1px solid var(--ids-pc); }
.ids-legend .current { background:var(--ids-teal); } .ids-legend .reference { background:var(--ids-blue); }
.ids-legend .success { background:var(--ids-green); } .ids-legend .caution { background:var(--ids-amber); } .ids-legend .error { background:var(--ids-red); }
.ids-boundaries { margin-top:14px; color:#38515B; font-size:14px; line-height:1.5; }

:is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell :is(.game-controls,.difficulty-buttons) { padding:12px !important; margin:0 0 12px !important; background:#fff !important; border:1px solid var(--ids-line) !important; border-radius:8px !important; }
:is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell :is(.difficulty-btn,.diff-btn,.restart-btn) { min-height:40px !important; padding:7px 12px !important; color:var(--ids-ink) !important; background:#fff !important; border:1px solid var(--ids-pc-border) !important; border-radius:999px !important; box-shadow:none !important; font-size:14px !important; font-weight:750 !important; }
:is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell :is(.difficulty-btn,.diff-btn).active { color:var(--ids-ink) !important; background:var(--ids-pc-tint-strong) !important; border-color:var(--ids-pc) !important; box-shadow:0 4px 12px rgba(32,52,61,.10) !important; }
:is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell :is(.action-btn.submit,.action-btn-primary) { background:var(--ids-teal) !important; border-color:var(--ids-teal) !important; }
:is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell :is(.action-btn.next) { background:var(--ids-blue) !important; border-color:var(--ids-blue) !important; }
:is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell :is(.progress-fill) { background:var(--ids-teal) !important; }
#calibGame.ids-shell[data-iot-interactive-theme="flat"][data-iot-recolor-pilot="true"] .difficulty-btn { color:var(--ids-ink) !important; background:#fff !important; border-color:var(--ids-pc-border) !important; }
#calibGame.ids-shell[data-iot-interactive-theme="flat"][data-iot-recolor-pilot="true"] .difficulty-btn.active { color:var(--ids-ink) !important; background:var(--ids-pc-tint-strong) !important; border-color:var(--ids-pc) !important; }
#calibGame.ids-shell[data-iot-interactive-theme="flat"][data-iot-recolor-pilot="true"] .action-btn.submit { color:#fff !important; background:var(--ids-teal) !important; border-color:var(--ids-teal) !important; }
#calibGame.ids-shell[data-iot-interactive-theme="flat"][data-iot-recolor-pilot="true"] .action-btn.next { color:#fff !important; background:var(--ids-blue) !important; border-color:var(--ids-blue) !important; }
:is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell :is(.game-stats,.score-panel) { background:transparent !important; box-shadow:none !important; }
:is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell :is(.stat-card,.score-item,.scenario-card,.product-details,.mockup-container,.threat-question,.mitigation-section,.results-card) { background:#fff !important; border:1px solid var(--ids-line) !important; border-radius:8px !important; box-shadow:none !important; }

@media (max-width:700px) {
  :is(#privacyGame,#calibGame,#threatGame,#uxGame).ids-shell { width:calc(100vw - 32px) !important; padding:10px !important; }
  #calibGame.ids-shell[data-iot-interactive-theme="flat"][data-iot-recolor-pilot="true"] { width:calc(100vw - 32px) !important; max-width:none !important; margin-left:auto !important; margin-right:auto !important; transform:none !important; }
  .ids-hero { padding:18px; }
  .ids-hero-metrics,.ids-ramp { grid-template-columns:1fr; }
}
