:root{color-scheme:dark;--bg:#1c0c28;--plum:#35133d;--gold:#e9c77f;--text:#f4ebdf;--muted:#c6b3ca;--line:#e9c77f40}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,sans-serif;line-height:1.65}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}a{color:var(--gold);text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ffe5ac;outline-offset:4px}[hidden]{display:none!important}.hero{text-align:center;padding:36px 20px 64px;background:radial-gradient(ellipse at 50% 15%,#5a205f 0%,#321237 50%,var(--bg) 80%)}.brand{font-size:10px;letter-spacing:3px;text-decoration:none}.star{font-size:42px;color:var(--gold);margin:28px 0 16px}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:700;color:var(--gold);text-transform:uppercase}h1,h2{font-family:Georgia,serif;line-height:1.14;font-weight:400}h1{font-size:clamp(42px,6vw,76px);margin:28px 0 24px;color:var(--gold)}h1 em{font-weight:400}.intro{font-size:19px;color:#e6d8e5;line-height:1.6}.meta{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-top:28px;font-size:11px;letter-spacing:.4px;color:var(--muted)}.meta span+span:before{content:'✦';padding-right:20px;color:var(--gold)}main{max-width:1080px;margin:auto;padding:0 24px}.steps{display:flex;align-items:center;justify-content:center;gap:20px;margin:0 0 42px;color:#927e9d;font-size:13px}.steps span{white-space:nowrap}.steps b{font-weight:400;margin-left:8px}.steps i{width:90px;height:1px;background:var(--line)}.steps .current{color:var(--gold)}.card{max-width:760px;margin:0 auto 56px;padding:40px 48px;background:linear-gradient(140deg,#40204790,#281131);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 80px #0a041624}.card h2{font-size:38px;margin:14px 0 22px}.card p{color:#d9cbdc}.start-card{text-align:center}.start-card .gold{margin:14px 0 0;min-width:230px}.gold,.outline{border:1px solid var(--gold);border-radius:8px;padding:15px 26px;font-size:14px;font-weight:700;transition:background .2s,transform .2s}.gold{background:var(--gold);color:#291030}.gold:not(:disabled):hover{background:#ffdda0;transform:translateY(-2px)}.outline{background:transparent;color:var(--gold)}.fine{font-size:12px;line-height:1.6;color:var(--muted)!important}.start-card .fine{max-width:460px;margin:20px auto 0}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.dots{color:var(--gold);letter-spacing:6px}.quiz-card label{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}.answer-row{display:flex;gap:10px}.answer-row input{background:#180a24;border:1px solid #e9c77f50;color:var(--text);border-radius:8px;padding:14px 16px;min-width:0;flex:1}.feedback{min-height:26px;font-size:14px}.text-button{border:0;background:none;color:var(--gold);font-size:13px;text-decoration:underline;text-underline-offset:4px;padding:0}.hint{font-size:14px;border-left:2px solid var(--gold);padding-left:14px}.wheel-section{text-align:center;padding:12px 0 60px}.wheel-heading h2{font-size:48px;color:var(--gold);margin:12px 0}.wheel-heading>p:last-child{font-size:14px;color:var(--muted)}.wheel-wrap{position:relative;width:min(100%,500px);margin:42px auto 32px;filter:drop-shadow(0 0 44px #8f3d8e25)}#wheel{display:block;width:100%;border-radius:50%;border:5px solid var(--gold);box-shadow:0 0 0 10px #54254d,0 0 0 11px #e9c77f60;transition:transform 5.2s cubic-bezier(.16,.65,.08,1)}.pointer{position:absolute;z-index:3;top:-17px;left:calc(50% - 13px);border-left:13px solid transparent;border-right:13px solid transparent;border-top:32px solid #ffe2a5;filter:drop-shadow(0 3px 3px #0008)}.wheel-seal{position:absolute;left:calc(50% - 51px);top:calc(50% - 51px);width:102px;height:102px;border:2px solid var(--gold);border-radius:50%;background:radial-gradient(#6e355f,#29102e);color:var(--gold);font:40px Georgia;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 6px 20px #0009}.wheel-seal small{font:9px Arial;letter-spacing:2px}.spin{min-width:280px}.wheel-section .fine{max-width:500px;margin:16px auto}.result{text-align:center;border-color:var(--gold);background:radial-gradient(ellipse at top,#55224f,#281131 65%)}.result h2{color:var(--gold);font-size:44px}.result-badge{display:inline-block;border:1px solid var(--line);border-radius:100px;padding:4px 16px;color:var(--gold);font-size:12px;letter-spacing:2px}.coupon{padding:24px 16px;margin:28px 0 16px;border-block:1px dashed #e9c77f88;display:flex;flex-direction:column;gap:8px}.coupon span{font-size:12px;color:var(--muted)}.coupon strong{font-family:monospace;font-size:clamp(16px,3.8vw,26px);color:var(--gold);overflow-wrap:anywhere}.actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.claim{display:inline-block;margin:24px 0 10px;font-weight:700}.status{font-size:13px}.prize-section{border-top:1px solid var(--line);padding:54px 0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.section-title h2{font-size:40px;margin:10px 0}.stock-badge{border:1px solid var(--line);border-radius:50%;width:120px;height:120px;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center}.stock-badge strong{font:38px Georgia;color:var(--gold)}.stock-badge span{font-size:10px;color:var(--muted)}.prize-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.prize-card{display:grid;grid-template-columns:42px 1fr;gap:12px;border:1px solid #e9c77f25;border-radius:12px;padding:20px;background:#2d1336}.prize-num{font:24px Georgia;color:var(--gold);opacity:.75}.prize-card h3{font-size:15px;margin:0 0 8px}.prize-card p{margin:0;font-size:12px;color:var(--muted)}.prize-card .prize-stock{font-size:11px;margin-top:9px;color:var(--gold)}.prize-card.empty{opacity:.5}.rules{padding:30px 0 48px;border-top:1px solid var(--line)}.rules h2{font-size:32px}.rules ol{padding-left:22px;font-size:13px;color:var(--muted);max-width:880px}.rules li{padding:0 0 10px 5px}.footer-links{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;margin-top:24px}.art{height:clamp(240px,54vw,650px);background:url('/art.png') center bottom/cover no-repeat;mask-image:linear-gradient(transparent,#000 25%)}footer{padding:30px 20px;text-align:center;font-size:10px;letter-spacing:2px;color:var(--muted)}.notice{max-width:760px;border:1px solid #bc7593;padding:14px 20px;border-radius:10px;color:#ffcee0;margin:0 auto 24px;font-size:14px}.demo{background:#e9c77f;color:#25102e;text-align:center;padding:10px 16px;font-size:12px;position:sticky;top:0;z-index:10}.demo button{border:0;border-bottom:1px solid currentColor;background:none;margin-left:16px;color:inherit;font-size:12px}.staff-body{max-width:860px;margin:auto;padding:28px 22px}.staff-body h1{font-size:38px}.staff-body input{width:100%;margin:6px 0 16px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#291333;color:white}.staff-body label{display:block}.staff-body .card{margin:24px auto;padding:24px}.staff-body pre{white-space:pre-wrap;font-family:Arial;font-size:14px}.staff-body table{width:100%;border-collapse:collapse;font-size:13px}.staff-body td,.staff-body th{padding:10px;text-align:left;border-bottom:1px solid var(--line)}@media(max-width:600px){.hero{padding:25px 18px 38px}.brand{font-size:8px;letter-spacing:2px}.star{margin:18px 0;font-size:32px}.eyebrow{font-size:10px;letter-spacing:2px}h1{font-size:42px}.intro{font-size:16px}.meta{gap:9px;font-size:10px}.meta span+span:before{padding-right:9px}main{padding:0 18px}.steps{gap:8px;margin-bottom:28px;font-size:11px}.steps i{width:18px}.steps b{margin-left:3px}.card{padding:26px 22px;border-radius:16px;margin-bottom:36px}.card h2{font-size:29px}.card p{font-size:14px}.answer-row{flex-direction:column}.wheel-heading h2{font-size:36px}.wheel-wrap{width:calc(100% - 22px);margin:34px auto}.wheel-seal{width:76px;height:76px;left:calc(50% - 38px);top:calc(50% - 38px);font-size:30px}.wheel-seal small{font-size:8px}.spin{min-width:0;width:100%}.prize-grid{grid-template-columns:1fr}.section-title h2{font-size:28px}.stock-badge{width:84px;height:84px}.stock-badge strong{font-size:28px}.stock-badge span{font-size:8px}.prize-card{padding:16px}.result h2{font-size:32px}.actions button{width:100%}.demo{font-size:10px}.demo button{font-size:10px}.footer-links{gap:12px}.art{height:290px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{body>*:not(main),main>*:not(#result),#result .actions,#result .claim{display:none!important}#result{display:block!important;color:black;background:white;box-shadow:none;border:1px solid #444}#result p,#result h2,#result strong,#result span{color:black!important}}
/* Rotation must not create horizontal page overflow on small screens. */
.wheel-section{overflow:hidden}.result{overflow-wrap:anywhere}
/* Detective chapters */
.hero{background:linear-gradient(#190a25b8,#1c0c28f5),url('/art.png') center 42%/cover}.hero h1{font-size:clamp(38px,6vw,72px)}.story-card{max-width:850px;scroll-margin-top:22px}.story-card h2{color:var(--gold);outline-offset:8px}.scene-lead{font-family:Georgia,serif;font-size:19px;line-height:1.75}.progress{white-space:nowrap;color:var(--gold);font:16px Georgia}.scene-prompt{font-weight:bold;margin:26px 0 18px}.objects{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.object{color:var(--gold);background:linear-gradient(150deg,#4e2455,#200d2d);border:1px solid #e9c77f60;border-radius:13px;min-height:146px;padding:18px 8px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px}.object-symbol{font:52px Georgia}.object strong{font-size:13px;font-weight:400}.object.selected{border-color:var(--gold);box-shadow:inset 0 0 30px #e9c77f17}.object-description{min-height:82px;border-left:2px solid var(--gold);padding:14px 18px;background:#180b2380;font-size:14px}.tarot .object{min-height:195px;border-radius:48% 48% 10px 10px}.choice{display:flex;align-items:center;gap:18px;width:100%;border:1px solid #e9c77f45;background:#210f2e;color:var(--text);text-align:left;padding:18px;margin:10px 0;border-radius:10px;font-size:14px;line-height:1.6}.choice:hover{background:#47234e;border-color:var(--gold)}.choice-number{font:18px Georgia;color:var(--gold)}.choice-arrow{margin-left:auto;color:var(--gold)}.receipt-paper{max-width:380px;margin:28px auto;padding:30px;background:#ecdfc4;color:#352535;box-shadow:0 12px 40px #0005;transform:rotate(-1deg);border-bottom:5px dotted #34133c;font-family:monospace}.receipt-paper p{color:#352535;margin:8px 0}.receipt-paper small{display:block;font-size:10px;letter-spacing:1px;border-block:1px dashed #705d68;padding:12px 0}.receipt-paper small:last-child{margin-top:20px}.story-card label{display:block;margin-bottom:8px;font-size:12px;color:var(--muted)}.slots,.symbols{display:flex;justify-content:center;gap:12px;margin:20px 0}.slot{display:flex;align-items:center;justify-content:center;border:1px solid var(--gold);border-radius:50%;width:72px;height:72px;color:var(--gold);font:36px Georgia;background:#1b0c27}.symbol-button{padding:14px 18px;background:#3c1a47;border:1px solid var(--line);color:var(--gold);border-radius:9px}.sequence~#scene-prompt{text-align:center}#sequence-submit{display:block;margin:24px auto 14px}#sequence-submit+.text-button{display:block;margin:auto}.notebook{border-top:1px solid var(--line);margin-top:26px;padding-top:20px;font-size:13px;color:var(--muted)}.notebook summary{cursor:pointer;color:var(--gold);padding:8px 0}.notebook li{margin:12px 0}.first-clue{margin:18px 0;padding:16px;background:#160a2280}.first-clue small{font-size:9px;letter-spacing:2px}.first-clue p{font-family:Georgia,serif;color:var(--gold);font-size:20px;margin:8px 0}.history{display:flex;flex-wrap:wrap;gap:18px}.print-clue{margin:24px auto;padding:24px;border-block:1px solid var(--line);max-width:320px}.print-clue small{font-size:9px;letter-spacing:3px;color:var(--muted)}.print-clue p{font:29px/1.4 Georgia;color:var(--gold);margin:12px 0}.locked-fate{text-align:center;padding:0 20px 55px;color:var(--muted)}.locked-fate>span{font:40px Georgia;color:var(--gold)}.locked-fate p{font:26px/1.4 Georgia;color:var(--gold)}.locked-fate small{font-size:11px}.case-closed{text-align:center;border-block:1px solid var(--line);padding:26px 0;color:var(--gold);font-size:12px;letter-spacing:3px}
@media(max-width:600px){.story-card{padding:26px 20px}.story-card h2{font-size:31px}.scene-lead{font-size:17px}.objects{gap:8px}.object{min-height:120px;padding:12px 6px}.object-symbol{font-size:40px}.object strong{font-size:11px}.tarot .object{min-height:150px}.row .eyebrow{font-size:9px;letter-spacing:1.8px}.choice{padding:14px;gap:12px}.symbols{gap:7px}.symbol-button{padding:12px 9px;font-size:12px}.scene-prompt{font-size:14px}.story-card .answer-row{flex-direction:column}.receipt-paper{padding:22px 16px;font-size:12px}.meta{gap:12px}.meta span+span:before{padding-right:12px}}

/* Late guest: readable prose and distinct bad endings. */
.scene-lead p{font-family:Georgia,serif;font-size:18px;line-height:1.72;margin:0 0 16px}.scene-lead p:last-child{margin-bottom:25px}.failed{border-color:#c77e81;background:radial-gradient(ellipse at top,#492139,#210f29)}.failed .eyebrow,.failed h2,.failed .progress{color:#f0b5ac}.failed .scene-prompt{border-top:1px solid #bc727a55;padding-top:20px}.recipe .objects{grid-template-columns:repeat(4,1fr)}.recipe .object-symbol{font-size:25px}.receipt-paper p:last-of-type{letter-spacing:5px;font-size:27px;font-weight:bold;text-align:center;padding:16px 0}.history .text-button{text-align:left;max-width:100%}.story-card .scene-prompt{color:var(--gold)}
@media(max-width:600px){.scene-lead p{font-size:16px;line-height:1.7}.recipe .objects{grid-template-columns:repeat(2,1fr)}.recipe .object{min-height:96px}.recipe .object-symbol{font-size:28px}}

.age-choices{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0 18px}.age-choice{display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center;padding:28px 18px;border:1px solid var(--gold);border-radius:14px;background:#271232;color:var(--text)}.age-choice:hover{background:#49224e}.age-choice strong{font:48px Georgia;color:var(--gold)}.age-choice span{font-size:15px}.age-choice small{font-size:12px;color:var(--muted)}.wheel-section{scroll-margin-top:70px}#read-ending{margin:5px 0 12px}.junior{padding:8px 0}
@media(max-width:600px){.age-choices{grid-template-columns:1fr}.age-choice{padding:18px}.age-choice strong{font-size:36px}.age-choice small{font-size:11px}}

.choosing-age .hero{padding:20px 18px 22px}.choosing-age .hero .star,.choosing-age .hero .intro,.choosing-age .hero .meta,.choosing-age .steps{display:none}.choosing-age .hero h1{font-size:clamp(30px,4vw,46px);margin:18px 0 0}.choosing-age .hero .eyebrow{margin-top:18px}.choosing-age .start-card{margin-top:0}
