*{box-sizing:border-box} :root{color-scheme:dark;font-family:system-ui,sans-serif;background:#101f29;color:#eee9db}body{margin:0;background:radial-gradient(ellipse at 80% 30%,#23434b88,transparent 65%);min-height:100vh}header{max-width:1280px;margin:auto;padding:30px 46px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d6c19426}header span,.eyebrow{font-size:10px;letter-spacing:2.8px;color:#c6b38e}.brand{text-decoration:none;font-size:17px;letter-spacing:4px;color:#ead0a0}main{max-width:1200px;margin:45px auto;display:grid;grid-template-columns:340px 1fr;gap:80px;padding:0 36px}h1{font:normal 66px/1.06 Georgia,serif;letter-spacing:-2px;margin:22px 0}h1 em{color:#e7c18b;font-weight:normal}aside>p{color:#a4b4b8;font:17px/1.6 Georgia,serif}.instructions{margin-top:40px;border-top:1px solid #ffffff20;padding-top:24px;font-size:14px;line-height:1.7;color:#adbdc0}.instructions b{color:#e4cfaa;font-size:16px}.instructions strong{color:#ede6d8}small{font-size:11px;line-height:1.7}details{font-size:11px;color:#96a9af;line-height:1.7;margin-top:30px}summary{cursor:pointer}a{color:#e3c994}.play{background:#142a33;border:1px solid #cbb48038;border-radius:24px;padding:27px 30px;box-shadow:0 25px 80px #0004}.topline{display:flex;align-items:center;justify-content:space-between;gap:8px}h2{font:26px Georgia,serif;margin:8px 0 0}.levelLabel{font-size:11px;color:#adbcbf}select{display:block;margin-top:5px;background:#233e47;color:#fff;border:1px solid #cbb48055;padding:7px;border-radius:8px}.stats{display:flex;justify-content:space-between;margin:26px 0 18px;padding:16px 0;border-top:1px solid #ffffff18;border-bottom:1px solid #ffffff18}.stats small{display:block;color:#9bafb3;font-size:9px;letter-spacing:1.5px}.stats b{font-weight:500;font-size:24px}.stats .rule{font-size:14px;line-height:2}.rule i{color:#b9a888}.boardwrap{position:relative;max-width:430px;margin:auto}#board{display:grid;gap:9px;position:relative}#trail{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;overflow:visible}.tile{aspect-ratio:1;padding:0;position:relative;display:grid;place-items:center;border:1.5px solid color-mix(in srgb,var(--c) 65%,transparent);background:color-mix(in srgb,var(--c) 12%,#11232d);border-radius:16%;cursor:pointer;transition:transform .15s,box-shadow .15s;min-width:0;touch-action:manipulation}.tile:before{content:'';position:absolute;inset:4px;border:1px solid #ffffff10;border-radius:13%}.charm{width:70%;height:70%;background-image:url('charms.webp');background-size:200% 200%;mix-blend-mode:lighten;pointer-events:none}.tile .dot{position:absolute;bottom:5%;width:24%;height:4px;background:var(--c);border-radius:3px}.tile.selected{box-shadow:inset 0 0 0 2px var(--c);background:color-mix(in srgb,var(--c) 24%,#132630)}.tile.current{outline:2px solid #fff2cb;outline-offset:2px}.tile.legal{box-shadow:0 0 16px color-mix(in srgb,var(--c) 20%,transparent)}.tile.hinted{animation:pulse 1s infinite}.badge{position:absolute;z-index:3;top:3px;font-size:8px;letter-spacing:1px;background:#10232de8;padding:2px 5px;border-radius:4px;color:var(--c)}.step{position:absolute;right:4px;bottom:4px;background:#10212d;border-radius:50%;width:17px;height:17px;line-height:17px;font-size:10px;z-index:3;color:#fff}button{font:inherit}button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #f7dc9b;outline-offset:3px}#message{min-height:48px;display:flex;align-items:center;justify-content:center;font-size:13px;text-align:center;color:#d4c6a8;margin-top:12px}.actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.actions button{background:#243e47;color:#eae0c9;border:1px solid #a6b2aa3d;border-radius:10px;padding:11px 16px;font-size:12px;cursor:pointer}.actions button:hover{background:#35535b}.actions .primary{background:#dfc28e;color:#192c32}.legend{display:flex;gap:18px;justify-content:center;font-size:10px;color:#9fb4b9;margin-top:24px}.legend i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--c);margin-right:5px}footer{font:italic 13px Georgia,serif;color:#92a7ab;text-align:center;margin-top:20px}[hidden]{display:none!important}@keyframes pulse{50%{outline:3px solid #ffe0a0;outline-offset:4px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:850px){main{gap:28px;grid-template-columns:250px 1fr;padding:0 20px}h1{font-size:50px}.play{padding:22px 18px}}@media(max-width:650px){header{padding:22px}header span{display:none}main{display:flex;flex-direction:column;margin:25px auto;padding:0 15px;gap:20px}aside h1{font-size:42px;line-height:1.1;margin:12px 0}h1 br{display:none}aside>p{margin:0;font-size:14px}.instructions{margin-top:18px;padding-top:12px;font-size:13px}.instructions p{margin:8px 0}.instructions small{display:none}details{margin-top:12px}.play{padding:20px 15px}.stats{margin:20px 0 15px}#board{gap:7px}h2{font-size:23px}.legend{gap:13px}}
