.demo-page{margin:0;background:#f6f2e8;color:#203e45;font:16px/1.6 system-ui,sans-serif}.demo-page *{box-sizing:border-box}.demo-page [hidden]{display:none!important}.demo-page a{color:#285861;text-underline-offset:4px}.demo-page button:not([data-fl]),.demo-primary{min-height:44px;min-width:44px;font:inherit;cursor:pointer;border:1px solid #809392;border-radius:5px;background:#fffaf0;color:#203e45;padding:10px 16px}.demo-page :focus-visible{outline:3px solid #a65031;outline-offset:4px}.demo-primary{display:inline-flex;align-items:center;justify-content:center;background:#244c49!important;color:#fff7e5!important;text-decoration:none;font-weight:600}.demo-primary:disabled{opacity:.6;cursor:wait}.demo-preview{padding:7px 20px;background:#203e45;color:#f7e9cc;text-align:center;font-size:12px;letter-spacing:.07em}.demo-header{padding:22px 0;max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #c9cfbf}.demo-brand{font-size:15px;font-weight:750;letter-spacing:.1em;text-decoration:none}.demo-brand span{display:block;font-size:11px;font-weight:400;letter-spacing:.025em}.demo-page main{max-width:1180px;margin:auto}.demo-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:center;padding:50px 0 60px}.demo-kicker{font-size:11px;font-weight:700;letter-spacing:.15em;color:#677c77}.demo-intro h1{font:normal clamp(36px,4.2vw,58px)/1.08 Georgia,serif;letter-spacing:-.04em;margin:18px 0 24px}.demo-intro p{max-width:48ch}.demo-facts{font-size:13px;color:#566962}.demo-options{display:grid;gap:12px;margin:24px 0}.demo-options label{display:flex;align-items:center;gap:10px;cursor:pointer;min-height:32px;font-size:14px}.demo-options input{width:20px;height:20px;accent-color:#244c49}.demo-intro figure{margin:0}.demo-intro img{width:100%;height:auto;display:block;border-radius:9px}.demo-intro figcaption{font-size:12px;margin-top:12px}.demo-game{max-width:970px;margin:auto;padding:30px 0}.demo-game-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.demo-game h1,.demo-reward h1{font:normal clamp(32px,4vw,46px)/1.15 Georgia,serif;margin:8px 0 16px}.demo-game-top button{font-size:13px}.demo-goal{font-size:15px;max-width:75ch}.demo-game details:not(.fl26-help){font-size:14px;margin:10px 0}.demo-game>details summary{cursor:pointer;min-height:44px;padding:10px 0}.demo-game>details p{max-width:80ch}.demo-listen{display:flex;align-items:center;gap:16px;margin-bottom:18px}.demo-listen button{font-size:13px}.demo-listen p{font-size:12px}.demo-reward{max-width:940px;margin:auto;padding:35px 0 0}.demo-reward #reveal{max-width:800px;margin:25px auto 0}.demo-reward #reward-transcript{max-width:70ch}.demo-reward-actions{display:flex;flex-wrap:wrap;gap:10px}.demo-reward-actions button{font-size:13px}.demo-clue{padding:18px 22px;border-left:3px solid #ab8042;background:#eee5d2;font-size:17px}.demo-earned{padding:26px;background:#eee5d2;border:1px solid #b99d62;border-radius:8px;margin-top:22px}.demo-earned h2{font:normal 30px Georgia,serif}.demo-next{padding:35px 0;margin-top:32px;border-top:1px solid #c5ccbf}.demo-next h2{font:normal 34px/1.2 Georgia,serif}.demo-next p{max-width:65ch}.demo-next>a{margin-right:20px;margin-top:14px}.demo-save{font-size:12px;color:#607368;min-height:18px}.demo-save:empty{display:none}.demo-footer{max-width:1180px;margin:35px auto 0;border-top:1px solid #c5ccbf;padding:20px 0 40px;font-size:12px;color:#607368}.demo-footer nav{display:flex;gap:24px}.demo-skip{position:absolute;left:-10000px}.demo-skip:focus{left:16px;top:12px;z-index:10;background:#fff;padding:12px}.demo-page .fl26-panel .fl26-kicker{display:none}.demo-page .fl26 h2{font-size:24px}.demo-page .fl26 .fl26-work{grid-template-columns:minmax(230px,1fr) minmax(340px,1.4fr)}.demo-page .fl26-status{font-size:14px}.demo-page .fl26-panel{box-shadow:none}.demo-page .rd29-frame{border-radius:8px}.demo-page .rd29-state svg{aspect-ratio:1.5}.demo-page button[disabled]{cursor:default}.demo-game .fl26:has(.fl26-success) .fl26-turns{opacity:.7}
@media(max-width:1240px){.demo-header,.demo-page main,.demo-footer{margin-left:24px;margin-right:24px}}@media(max-width:780px){.demo-intro{grid-template-columns:1fr;gap:26px;padding-top:30px}.demo-intro h1{font-size:42px}.demo-intro figure{order:-1}.demo-intro img{max-height:280px;object-fit:cover}.demo-page .fl26 .fl26-work{grid-template-columns:1fr}.demo-header>a:last-child{font-size:12px;max-width:150px;text-align:right}.demo-game-top{align-items:start}.demo-game h1{font-size:32px}.demo-reward #reveal{margin-top:15px}}@media(max-width:430px){.demo-header,.demo-page main,.demo-footer{margin-left:16px;margin-right:16px}.demo-header{gap:10px}.demo-header>a:last-child{max-width:115px}.demo-brand{font-size:12px}.demo-brand span{font-size:10px}.demo-intro h1{font-size:36px}.demo-game-top h1{font-size:28px}.demo-game-top button{padding:9px}.demo-page .fl26-panel{padding:12px}.demo-page .fl26 .fl26-heading h2{font-size:23px}.demo-page .fl26 .fl26-facing{font-size:11px}.demo-page .fl26 .fl26-turns button{padding:8px;font-size:12px}.demo-page .fl26 .fl26-rim-key{font-size:11px}.demo-page .fl26 .fl26-status{font-size:13px}.demo-next h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.demo-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.demo-header-tools{display:flex;align-items:center;gap:20px}.demo-header-tools button{font-size:12px;flex-shrink:0}.demo-header-tools a{font-size:13px}.demo-header-tools:has(button:not([hidden])) a{max-width:140px;text-align:right}@media(max-width:500px){.demo-header-tools{gap:8px}.demo-header-tools:has(button:not([hidden])) a{display:none}.demo-header-tools button{padding:8px 10px}}

.demo-intro figure{position:relative}.demo-intro img.demo-clock{position:absolute;top:0;left:0;width:100%;height:auto;max-height:none;pointer-events:none;object-fit:contain}.demo-intro img:not(.demo-clock){max-height:none;object-fit:contain}

.demo-started .demo-header{position:sticky;top:0;z-index:20;background:#f6f2e8;box-shadow:0 8px 16px #203e450a}.demo-started #game-title,.demo-started #reward-title{scroll-margin-top:110px}

/* M41 presentation follows the same winter world as the full candidate. */
.demo-page{background:#edf4f6;color:#193f47}.demo-preview{background:#153f37;color:#eef7f1;border-bottom:2px solid #9a263d}.demo-header{border-color:#abc5ca}.demo-brand{color:#194c40}.demo-page .demo-primary{background:#98253c!important;border-color:#98253c!important;color:#fff!important}.demo-kicker{color:#8a2b42}.demo-facts,.demo-save,.demo-footer{color:#4d6b73}.demo-intro h1,.demo-game h1,.demo-reward h1,.demo-next h2{color:#17493d}.demo-options input{accent-color:#98253c}.demo-intro figure img:first-child{border:1px solid #a1bcc8}.demo-earned{background:#dfede7;border-color:#95b6a6}.demo-clue{background:#e0edf1;border-color:#9b2b43;color:#244e59}.demo-started .demo-header{background:#edf4f6}.demo-page .demo-goal{padding:13px 17px;border:1px solid #a8c3ba;border-left:5px solid #9b2942;border-radius:0 10px 10px 0;background:#e3eeea;color:#193f37}.demo-reward-actions button{background:#f7fcfb!important;border-color:#9ebbb0!important}.demo-next{border-color:#adc7c7}.demo-footer{border-color:#adc7c7}.demo-page .winter-snow{z-index:2}
.demo-start-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.demo-page #watch-intro{background:transparent;border-color:#9cbab0;color:#245345;font-size:14px}

/* M48: one instruction hierarchy, not duplicate engine headings. */
.demo-page #puzzle .fl26-heading{display:none}.demo-game-top h1{margin-bottom:12px}.demo-listen{margin-block:8px}.demo-game #demo-mission{font-weight:500}.demo-reward #demo-effect{padding:16px;border-left:4px solid #8c2e43;background:#edf5f0;color:#193f36;line-height:1.6}
