@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{color-scheme:dark;--bg:#121212;--panel:#1a1919;--gold:#d4b581;--text:#f3efe8;--muted:#bcb4aa;--line:#ffffff21;--wine:#3c1924}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 'DM Sans',Arial,sans-serif}a{color:inherit}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[hidden]{display:none!important}.shell{max-width:1200px;padding:0 40px;margin:auto}header{min-height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font:20px/1.4 'Playfair Display',Georgia,serif}.brand>span:first-child{font:36px Georgia;color:var(--gold)}.brand small{display:block;font:500 10px/1.6 'DM Sans',sans-serif;letter-spacing:2px;color:var(--muted);margin-top:5px}.home{font-size:14px;text-decoration:none;border-bottom:1px solid #ffffff50;padding:8px 0}.intro{padding:32px 0 25px}.eyebrow{font-size:11px;letter-spacing:1.6px;color:var(--gold);margin:0 0 12px;font-weight:500}.intro h1{font:400 clamp(36px,4.6vw,58px)/1.15 'Playfair Display',Georgia,serif;letter-spacing:-1.5px;margin:0 0 12px}em{font-weight:400;color:var(--gold)}.intro>p:last-child{margin:0;color:var(--muted)}.mode-row{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.mode-controls{display:flex;border:1px solid var(--line)}.mode-controls button{background:transparent;border:0;color:var(--muted);padding:12px 20px;font-size:14px}.mode-controls button[aria-pressed=true]{color:#181410;background:var(--gold)}#round-label{font-size:13px;color:var(--muted)}.notice{border:1px solid #d4b58160;background:var(--wine);padding:14px 20px;margin-bottom:20px;font-size:14px}.puzzle{display:grid;grid-template-columns:1fr 1.1fr;border:1px solid var(--line)}.clue-panel{position:relative;padding:28px;background:radial-gradient(ellipse at 40% 30%,#3c1924,#191616 85%);display:flex;flex-direction:column}.answer-panel{padding:28px;border-left:1px solid var(--line);background:linear-gradient(140deg,#211d1e,#171616)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-head .eyebrow{margin:0}.panel-head>span:last-child{font-size:12px;color:var(--muted);white-space:nowrap}.panel-head h2{font:400 25px/1.25 'Playfair Display',Georgia,serif;margin:0}.mystery{width:74px;height:104px;border:1px solid #b39a6c;border-radius:5px;background:linear-gradient(#12121240,#12121240),url('card-back.png') center/cover;margin:22px auto;display:grid;place-items:center;box-shadow:0 6px 24px #0005}.mystery span{font:46px Georgia;color:#f8e7c7;text-shadow:0 1px 12px #000;background:#191616b0;border-radius:30px;padding:0 12px}.clue-panel ol{list-style:none;padding:0;margin:0 0 24px;counter-reset:clue}.clue-panel li{counter-increment:clue;position:relative;padding:0 0 18px 32px;margin:0 0 18px;border-bottom:1px solid var(--line);font:400 22px/1.5 'Playfair Display',Georgia,serif}.clue-panel li:last-child{margin-bottom:0}.clue-panel li:before{content:'0' counter(clue);position:absolute;left:0;top:4px;font:12px 'DM Sans',sans-serif;color:var(--gold)}.hint-button{width:100%;padding:13px 18px;min-height:48px;border:1px solid #d4b58170;background:transparent;color:var(--gold);font-size:14px;margin-top:auto}.hint-button:disabled{opacity:.45}.hint-note{font-size:12px;color:var(--muted);margin:10px 0 0}.answer-note{font-size:14px;color:var(--muted);margin:10px 0 20px}.answers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.sign{min-height:80px;background:#ffffff03;border:1px solid var(--line);border-radius:3px;color:var(--text);padding:10px 5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:14px}.sign .glyph{font:29px/1 'Segoe UI Symbol',Georgia,serif;color:var(--gold)}.sign:hover:not(:disabled){border-color:var(--gold);background:#d4b58112}.sign.wrong{opacity:.45}.sign.correct{border:2px solid var(--gold);background:#d4b58119}.sign.correct:after{content:'✓';font-size:12px;color:var(--gold)}.sign:not(.correct):disabled{cursor:default}.feedback{font-size:14px;color:var(--gold);min-height:42px;margin:18px 0 8px}.quiet{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin:0}.result,.share-box{margin-top:24px;padding:26px;border:1px solid var(--line);background:var(--panel)}.result{background:linear-gradient(120deg,#3c1924,#20191b);border-color:#d4b58160}.result:focus{outline:none}h2{font:400 29px/1.25 'Playfair Display',Georgia,serif;margin:0 0 12px}.result p{color:var(--muted)}#explanation{border-top:1px solid var(--line);margin:18px 0;padding-top:16px}#explanation p{font-size:15px;margin:0 0 12px}#explanation strong{color:var(--gold);font-weight:500}#comparison{color:var(--gold)}.share-box{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}.share-box>div:first-child{max-width:530px}.share-box p:not(.eyebrow){font-size:14px;color:var(--muted);margin:0}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions button,.actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 18px;border:1px solid #d4b58160;background:transparent;color:var(--gold);text-decoration:none;font:500 14px/1.4 'DM Sans',sans-serif}.actions .primary{background:var(--gold);color:#191510}.actions button:disabled{opacity:.5}.actions button:hover:not(:disabled),.actions a:hover{filter:brightness(1.12)}#manual{flex-basis:100%}#manual label{display:block;font-size:14px;margin-bottom:8px}#share-url{background:var(--bg);border:1px solid var(--line);color:var(--text);padding:12px;width:100%}#share-status{flex-basis:100%}#share-status:empty{display:none}details{margin-top:24px;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}summary{cursor:pointer;color:var(--gold);padding:12px 0;font-size:16px}.disclaimer{font-size:12px;color:var(--muted);margin:22px 0;line-height:1.8}.disclaimer a{text-decoration:underline}footer{border-top:1px solid var(--line);padding:25px 0;margin-top:30px;display:flex;justify-content:space-between;gap:15px;font-size:12px;color:var(--muted)}footer>span:first-child{font:18px 'Playfair Display',Georgia,serif;color:var(--text)}
@media(max-width:780px){.shell{padding:0 22px}header{min-height:78px}.brand{font-size:17px}.brand small{font-size:9px;letter-spacing:1.5px}.puzzle{grid-template-columns:1fr}.answer-panel{border-left:0;border-top:1px solid var(--line)}.clue-panel,.answer-panel{padding:22px}.mystery{position:absolute;right:22px;top:55px;width:47px;height:66px;margin:0;opacity:.55}.mystery span{font-size:28px;padding:0 8px}.clue-panel ol{margin:25px 60px 20px 0}.clue-panel li{font-size:21px}.clue-panel .hint-button{margin-top:0}.sign{min-height:74px}.mode-row{align-items:flex-start;flex-direction:column;gap:10px}.share-box>.actions{width:100%}.share-box .actions button{flex:1}.intro{padding-top:25px}.intro h1{font-size:40px}.intro>p:last-child{font-size:15px}}
@media(max-width:420px){.shell{padding:0 14px}.brand small{display:none}.brand{font-size:16px;gap:7px}.brand>span:first-child{font-size:30px}.home{font-size:12px}.intro h1{font-size:34px}.eyebrow{font-size:10px}.panel-head .eyebrow{max-width:180px}.clue-panel,.answer-panel{padding:18px}.clue-panel li{font-size:19px}.clue-panel ol{margin-right:50px}.mystery{right:14px;width:40px;height:60px}.panel-head h2{font-size:24px}.sign{font-size:14px}.answers{gap:7px}.share-box,.result{padding:20px}.share-box .actions button{flex-basis:100%}.mode-controls{width:100%}.mode-controls button{flex:1;padding:12px}.share-box h2{font-size:26px}footer{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
