*{box-sizing:border-box}body{margin:0;background:#1e3031;color:#ede5d7;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background-image:radial-gradient(ellipse at 90% 0,#698d8555,transparent 55%)}button,select{font:inherit}button{cursor:pointer;border:1px solid #6b5c70;background:#304a4b;color:#e9e2d8;border-radius:8px;padding:10px 13px;transition:background .15s}button:hover{background:#466464}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #ecc480;outline-offset:3px}button:disabled{opacity:.4;cursor:default}main{max-width:1150px;padding:0 40px;margin:auto}header{display:flex;height:86px;align-items:center;gap:24px;border-bottom:1px solid #ffffff1a}.brand{letter-spacing:.15em;font-weight:750;font-size:15px;color:#edc48e;text-decoration:none}header>.eyebrow{flex:1}header button{font-size:11px;background:transparent}.eyebrow{letter-spacing:.19em;font-weight:700;font-size:9px;color:#b7a8b9}.intro{display:flex;align-items:center;justify-content:space-between;padding:32px 0}.intro .eyebrow{color:#dfb77e}h1{font:500 clamp(35px,4.8vw,53px)/1.04 Georgia,serif;letter-spacing:-.035em;margin:12px 0 16px}.lead{font-size:13px;line-height:1.8;color:#bcb0bd;margin:0}.seal{width:154px;height:154px;border:1px solid #d5ae7b55;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;transform:rotate(8deg)}.seal span{font:32px Georgia,serif;color:#ecc893}.seal small{font-size:8px;letter-spacing:.17em}.layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:28px;align-items:start}.play{background:#243d3e;border:1px solid #75607155;border-radius:17px;padding:25px;box-shadow:0 20px 70px #100d1c55}.board-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.board-top .eyebrow{margin:0}.board-top h2{font:25px Georgia,serif;margin:7px 0 0}.pill{font-size:10px;white-space:nowrap;color:#c3b8ca;border:1px solid #706173;border-radius:25px;padding:7px 10px}.census{display:flex;gap:8px;margin:20px 0 14px}.census>div{flex:1;border:1px solid #74607855;border-radius:8px;padding:9px 5px;text-align:center;color:#bcb0c3;font-size:9px}.census strong{font:20px Georgia,serif;display:block;color:#eee2c6;margin-top:4px}.census .good{border-color:#8ebda488;background:#34493d}.census .bad{border-color:#df8e8a;background:#704148}.board-wrap{position:relative;width:100%;aspect-ratio:1}#board{position:absolute;inset:0;display:grid;gap:3px;user-select:none;touch-action:manipulation}#ray{position:absolute;inset:0;pointer-events:none;width:100%;height:100%;filter:drop-shadow(0 0 3px #edbf6f66)}.cell{min-width:0;min-height:0;padding:0;border-radius:5px;position:relative;display:flex;align-items:center;justify-content:center;font:20px Georgia,serif;background:#3c5757;border:1px solid #75627a66}.cell:hover{background:#516d6b}.cell.mirror{background:#1d2734;border-color:#566779;color:#93b6c8;cursor:default}.cell.mirror svg{width:80%;height:80%;pointer-events:none}.cell.clue{font:14px system-ui;background:transparent;border:1px solid transparent;color:#b8adbf}.cell.clue:hover{border-color:#edc58777}.cell.clue.good{color:#a8d3ba}.cell.clue.bad{color:#ffb2a5;background:#78444b77}.cell.clue.active{color:#f4cf8c;border-color:#edc587;background:#58442e}.cell.blank{background:none;border:none}.cell.selected{outline:2px solid #f4d6a6;outline-offset:-3px}.cell.last{box-shadow:inset 0 0 0 2px #a6d5b7}.cell.ray-cell{background-color:#66523c}.cell .portrait{width:73%;height:73%;font-size:clamp(13px,2vw,22px);border-radius:7px}.portrait{display:inline-flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-weight:700;flex-shrink:0}.portrait.g{background:#e8e2d0;color:#464254;border-radius:45% 45% 10% 10%;box-shadow:inset 0 -5px #cfcbbd}.portrait.v{background:#b486a6;color:#2e243d;clip-path:polygon(0 0,50% 18%,100% 0,100% 100%,0 100%)}.portrait.z{background:#a5ba8b;color:#2e4636;border-radius:6px;box-shadow:inset 0 -5px #899e74}.note-set{display:flex;gap:2px;font:10px system-ui;color:#debd85}.palette{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:6px;margin-top:10px}.palette button{padding:10px 3px;font-size:11px}.toolbar{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.toolbar button{font-size:11px;padding:8px 11px}#notes{margin-right:auto}#notes[aria-pressed=true]{background:#e8c18a;color:#2a2130}#status{min-height:40px;margin-top:16px;font-size:11px;line-height:1.6;color:#c5b9cb}#status.win{color:#b6e1bd;font-weight:650}#status.error{color:#ffc1b5}.keys{font-size:9px;text-align:center;color:#a693b1;line-height:1.8;margin:18px 0 0}#next{width:100%;background:#e8bd7e;color:#322538;border:0;margin-top:15px}.guide{padding:23px;background:#d8ddc8;color:#2b3c37;border-radius:16px}.guide .eyebrow{color:#6d5c62;margin:0}.guide h2{font:28px Georgia,serif;letter-spacing:-.03em;margin:12px 0 16px}.guide p{font-size:11px;line-height:1.7}.guest{display:flex;align-items:center;gap:13px;padding:12px 0;border-top:1px solid #81717e33}.guest .portrait{width:37px;height:39px;font-size:22px}.guest strong{font:18px Georgia,serif}.guest p{margin:3px 0 0;font-size:10px}.guide.flash{box-shadow:0 0 0 3px #efbd74}.rooms{margin-top:25px}.rooms h2{font:24px Georgia,serif;margin:0 0 17px}.rooms label{display:block;font-size:10px;color:#b5a8be;margin-bottom:7px}select{width:100%;background:#293f40;color:#e6dddc;border:1px solid #706076;border-radius:7px;padding:10px;font-size:11px}#room-list{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:12px}#room-list button{font-size:11px;padding:9px 0}#room-list .current{border-color:#eac188;color:#eac188}#room-list .done{background:#355142;color:#c3e5c6}.rooms>p{font-size:10px;color:#a999b2;line-height:1.7}.view{border:1px solid #705b7455;border-radius:10px;padding:16px;margin-top:20px}.view .eyebrow{margin:0}.view p:last-child{font-size:11px;color:#c9bccb;line-height:1.7;margin-bottom:0}footer{display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#aa99b3;padding:30px 0}footer details{max-width:55%;overflow-wrap:anywhere;line-height:1.7}summary{cursor:pointer}footer a{color:#ebc78d}[hidden]{display:none!important}@media(max-width:760px){main{padding:0 17px}header{height:69px;gap:6px}header>.eyebrow{display:none}header button{margin-left:auto;font-size:10px;padding:8px}.brand{font-size:12px}.intro{padding:24px 0}.intro .eyebrow{font-size:7px}h1{font-size:35px}.lead{font-size:11px}.seal{width:94px;height:94px;gap:7px;flex-shrink:0}.seal span{font-size:23px}.seal small{font-size:5px}.layout{grid-template-columns:1fr}.play{padding:17px}.cell .portrait{font-size:clamp(13px,5vw,22px)}.cell.clue{font-size:12px}.board-top h2{font-size:23px}.pill{font-size:9px;padding:6px 8px}.census>div{font-size:8px}.palette button{font-size:10px}.toolbar button{font-size:10px}footer{flex-direction:column}footer details{max-width:100%}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.intro{padding:25px 0}h1{font-size:45px}.board-wrap{max-width:450px;margin:auto}#board{gap:5px}.cell{font-family:system-ui;font-weight:600;font-size:25px;aspect-ratio:1}.cell.fixed{color:#f3d594;background:#3e5248;border:1px solid #beaa6d88}.cell .arrow{position:absolute;right:7%;bottom:4%;font-size:.65em;color:#b6ceca}.cell .num{position:relative;z-index:1}.cell.selected{outline:3px solid #f5d69c;outline-offset:-3px;background:#5c715c}.cell.target{box-shadow:inset 0 0 0 2px #b9d7a688;background:#405d4e}.cell.bad{border-color:#f69d8e;background:#74494b}.cell.last{box-shadow:inset 0 0 0 2px #cce4ba}#connections{position:absolute;inset:0;pointer-events:none;width:100%;height:100%;opacity:.28}#status{min-height:37px}.progress{display:flex;justify-content:space-between;font-size:10px;color:#b4c7bd;margin:17px 0}.entry{display:flex;gap:7px;align-items:center;margin-top:13px}.entry label{font-size:10px;margin-right:auto}.entry input{width:76px;min-width:0;background:#1b3031;border:1px solid #80998d;color:#f5dfb7;border-radius:6px;padding:8px;font:14px system-ui}.entry button{font-size:11px;padding:9px}.bank{margin-top:24px}.bank h2{font:23px Georgia;margin:0 0 12px}.bank p{font-size:10px;color:#b1c3ba;line-height:1.7}#number-bank{display:grid;grid-template-columns:repeat(8,1fr);gap:5px}#number-bank button{padding:8px 0;font-size:11px}#number-bank .used{opacity:.48}#number-bank .active{outline:2px solid #edd094}#room-list{grid-template-columns:repeat(6,1fr)}#link-mode{margin-right:auto}#link-mode[aria-pressed=true]{background:#e7c88f;color:#273b34}.guide ol{padding-left:18px}.guide li{font-size:11px;line-height:1.7;margin:12px 0}.guide strong{display:block}.guide p{margin-bottom:0}.seal{width:135px;height:135px}.seal small{font-size:7px}.keys{color:#afc2b8}.eyebrow{color:#b0c3bd}footer{color:#a9bcb2}.rooms>p{color:#a9bcb2}.rooms label{color:#b4c6bb}@media(max-width:760px){h1{font-size:35px}.seal{width:92px;height:92px}.seal small{font-size:5px}.board-wrap{max-width:420px}.cell{font-size:clamp(18px,6vw,26px)}.entry{gap:5px}.entry label{font-size:9px}.entry input{width:60px}.entry button{padding:8px;font-size:10px}.intro{padding:23px 0}.guide p,.guide li{font-size:11px}.guide strong{font-size:12px}}