/* The playable surface extends the original catalogue without replacing it. */
.format-intro{max-width:900px;margin-bottom:32px}.format-intro .detail-description{max-width:60ch}.format-explainer{border-top:1px solid var(--line);padding-top:36px;margin-top:40px;align-items:center}.format-explainer h2{margin-top:0}.format-explainer .format-visual{max-width:420px;justify-self:end}.round-demo{background:#fffdf8;border:1px solid #d7d6c8;border-radius:24px;padding:32px;box-shadow:0 12px 40px #25272005;scroll-margin-top:20px}.round-heading{display:flex;justify-content:space-between;gap:18px;align-items:center}.round-demo .round-heading h2{font-size:30px;letter-spacing:-1px;margin:10px 0 0}.round-length{font-size:11px;border:1px solid #ddd7e9;color:#61517f;border-radius:30px;padding:9px 12px;white-space:nowrap}.round-goal{font-size:17px;line-height:1.6;max-width:75ch;margin:20px 0 12px}.round-mode{font-size:13px;line-height:1.6;color:#65665b;margin:0;max-width:90ch}.round-stage{margin-top:26px;padding-top:26px;border-top:1px solid var(--line)}.round-demo h3{font-size:21px;line-height:1.35;letter-spacing:-.4px;margin:0 0 15px}.round-demo h4{font-size:16px;margin:0 0 10px;line-height:1.5}.round-demo p{line-height:1.6}.round-demo ul,.round-demo ol{padding-left:23px;line-height:1.7}.round-demo button,.round-demo input,.round-demo select,.round-demo textarea{font:inherit}.round-demo button{min-height:44px;cursor:pointer;touch-action:manipulation;line-height:1.4}.round-demo button:focus-visible,.round-demo input:focus-visible,.round-demo select:focus-visible,.round-demo textarea:focus-visible,.round-demo summary:focus-visible{outline:3px solid #7054ab;outline-offset:4px}.round-demo button:disabled{cursor:default;opacity:.62}.round-action{display:inline-flex;align-items:center;justify-content:center;gap:18px;color:#fff;background:#62508d;border:1px solid #62508d;border-radius:12px;padding:13px 21px;font-weight:700}.round-action:hover:not(:disabled){background:#4f3f77}.round-secondary{color:#4c453a;background:transparent;border:1px solid #cbcabc;border-radius:12px;padding:11px 17px}.round-secondary:hover:not(:disabled){background:#eeeee3}.round-controls{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:26px}.round-local{font-size:11px;color:var(--muted)}.round-panel{padding:22px;border-radius:16px;background:#f2f1e8;border:1px solid #deded1;margin:14px 0}.round-panel>*:last-child{margin-bottom:0}.round-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:14px;margin:16px 0}.round-options{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.round-option{border:1px solid #ceccbd;background:#fffef8;color:#302f29;border-radius:12px;padding:13px 16px;text-align:left;max-width:100%}.round-option:hover:not(:disabled){border-color:#8a76af;background:#f2eef8}.round-option[aria-pressed=true],.round-option.selected,.round-option.is-selected{border-color:#79629f;background:#e9e2f4;box-shadow:inset 0 0 0 1px #79629f}.round-option strong,.round-option small,.round-option span{max-width:100%}.round-option small{display:block;color:#66645b;line-height:1.5;margin-top:5px}.round-clue{border-left:3px solid #a5af71;padding:14px 18px;background:#f0f2e3;margin:12px 0;border-radius:0 10px 10px 0;line-height:1.6}.round-note{font-size:13px;color:#66665e;line-height:1.6}.round-field{display:block;margin:15px 0;font-size:14px;line-height:1.6}.round-demo label{line-height:1.6}.round-demo input:not([type=radio]):not([type=checkbox]):not([type=range]),.round-demo select,.round-demo textarea{max-width:100%;width:100%;min-height:46px;padding:11px 13px;border:1px solid #c9c8b9;border-radius:10px;background:#fffefb;color:#292921}.round-demo input[type=number]{width:130px!important}.round-demo textarea{resize:vertical;min-height:100px}.round-demo input[type=radio],.round-demo input[type=checkbox]{min-width:20px;min-height:20px;accent-color:#6b58ad;vertical-align:middle}.round-demo input[type=range]{accent-color:#6b58ad;width:100%;max-width:400px}.round-feedback{font-size:14px;color:#6a4d2c;line-height:1.6;min-height:1.5em}.round-meter{font-variant-numeric:tabular-nums;font-size:14px;padding:10px 14px;background:#e8ecd6;border-radius:10px;line-height:1.5}.round-result{margin-top:24px;padding:24px;background:#e9efd9;border:1px solid #c8d39e;border-radius:16px;scroll-margin:24px}.round-result:focus{outline:none}.round-result-label{font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:1px;color:#526138}.round-demo .round-result h3{font-size:25px;margin:10px 0}.round-result p{margin:0;white-space:pre-line;max-width:90ch}.round-demo details{margin:14px 0;padding:14px 16px;background:#f1eee7;border-radius:12px;font-size:14px;line-height:1.6}.round-demo summary{cursor:pointer;font-weight:600}.round-library{display:inline-block;margin-top:24px;border-bottom:1px solid #807095;padding-bottom:5px;color:#5d4781;font-size:14px}.round-demo [role=status]:empty{display:none}.round-demo .round-stage img{max-width:100%}.round-demo progress{accent-color:#6b58ad;width:100%}.round-demo output{font-weight:700}.round-demo button,.round-demo p,.round-demo li{overflow-wrap:anywhere}.round-demo .round-grid .round-panel{margin:0}.round-demo .round-grid>button{width:100%}.round-demo fieldset{border:1px solid #d4d3c4;border-radius:12px;padding:15px;margin:16px 0}.round-demo legend{font-size:14px;font-weight:600;padding:0 7px}.round-demo table{width:100%;border-collapse:collapse;font-size:14px}.round-demo th,.round-demo td{text-align:left;padding:10px;border-bottom:1px solid #dddccc}.round-demo .round-stage h3:focus{outline:none}@media(max-width:900px){.round-demo{padding:25px}.round-heading{align-items:flex-start}.round-length{white-space:normal;max-width:130px;text-align:center}}@media(max-width:600px){.format-intro{margin-bottom:24px}.round-demo{padding:20px 16px;border-radius:18px;margin:0 -4px}.round-heading{display:block}.round-demo .round-heading h2{font-size:25px}.round-length{display:inline-block;max-width:none;margin-top:15px;font-size:10px}.round-goal{font-size:16px}.round-mode{font-size:12px}.round-stage{padding-top:20px;margin-top:20px}.round-panel{padding:16px}.round-demo h3{font-size:19px}.round-options{gap:8px}.round-option{padding:12px 13px;font-size:14px}.round-demo .round-result h3{font-size:22px}.round-result{padding:19px 16px}.round-controls{gap:13px}.round-local{width:100%}.round-grid{grid-template-columns:1fr}.format-explainer{padding-top:28px;gap:25px}.format-explainer .format-visual{justify-self:stretch;max-width:none}.round-demo th,.round-demo td{padding:8px 4px;font-size:12px}}@media(prefers-reduced-motion:reduce){.round-demo *{scroll-behavior:auto!important;transition:none!important}}
/* Keep nested grids and native controls inside narrow phones. */
.round-demo,.round-panel,.round-stage,.round-grid>*{min-width:0}.round-grid>*{max-width:100%}.round-demo button{max-width:100%;white-space:normal}.round-options>*{min-width:0}.round-action{max-width:100%}.round-clue button{display:block;width:100%}
.round-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.round-demo button{appearance:none;height:auto}.round-grid>button{display:block}@media(max-width:600px){.round-grid{grid-template-columns:minmax(0,1fr)}}
/* V5: the catalogue stays calm; each working reference has its own game stage. */
.round-reference{display:flex;flex-wrap:wrap;gap:5px 14px;font-size:11px;line-height:1.6;margin:12px 0 0;color:var(--muted)}.round-reference a{font-weight:700;text-decoration:underline;text-underline-offset:3px}.round-reference span{opacity:.9}.format-intro{margin-bottom:26px}.format-intro h1{margin-bottom:15px}.round-stage{isolation:isolate}.round-stage svg{max-width:100%}.round-stage [aria-pressed=true]{font-weight:700}@media(max-width:600px){.round-reference{font-size:11px;display:block}.round-reference span{display:block;margin-top:4px}.format-intro h1{font-size:34px}.round-demo .round-heading h2{font-size:24px}}

.round-demo details.round-reference{display:block;background:transparent;padding:0;border-radius:0;margin:12px 0 0;font-size:11px}.round-reference summary{font-size:11px;color:var(--muted)}.round-reference[open] summary{margin-bottom:7px}.round-reference a{display:inline-block;margin-right:12px}.round-reference span{display:block;margin-top:4px}.round-demo[data-state="playing"] .round-heading{margin-bottom:12px}.round-demo[data-state="playing"] .round-length{display:none}
/* Match native disclosure visibility in static renderers too. */
.round-demo details:not([open])>:not(summary){display:none}
