@font-face{font-family:Shrikhand;src:url(./house-display-DTHuXA8q.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Libre Caslon Text;src:url(./house-body-regular-Du7Pzekt.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Libre Caslon Text;src:url(./house-body-bold-BkvC98j9.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--ink:#0C0814;--night:#1D1430;--violet:#463366;--fir:#855839;--fern:#3B6E52;--pumpkin:#EB6B24;--oak:#B98A55;--bone:#C7BBA6;--ghost:#E4F6EA;--candle:#FFBE42;--font-body:"Libre Caslon Text", Georgia, "Times New Roman", serif;--font-display:Shrikhand, Georgia, serif}*{box-sizing:border-box}:root{--gold:#D9A441;--lost:#9BD6AE;--col:min( calc(100vw - 40px) , 600px);--edge:max(20px, calc((100vw - var(--col)) / 2));--job:15.5px;--counter:13.5px;--pill:15px;--pill-h:44px;--pill-pad:12px;--gap:8px;--band:15px;--floor-font:15.5px;--foot:24px}@media(max-width:400px){:root{--pill-pad:10px;--gap:6px}}@media(min-width:1024px)and (min-height:640px){:root{--col:min( calc(100vw - 80px) , 1200px);--job:clamp(22px, 2.6vh, 28px);--counter:clamp(17px, 2vh, 21px);--pill:clamp(18px, 2.1vh, 22px);--pill-h:clamp(52px, 5.8vh, 60px);--pill-pad:20px;--gap:12px;--band:clamp(18px, 1.4vw, 20px);--floor-font:clamp(18px, 1.4vw, 22px);--foot:16px}}html{touch-action:manipulation}html,body{margin:0;height:100%;background:var(--ink);color:var(--bone);font-family:var(--font-body)}#app{position:relative;height:100dvh;min-height:320px;overflow:hidden;background:linear-gradient(var(--night),#362554)}#sky{position:absolute;inset:0;width:100%;height:100%;display:block}#board{position:absolute;inset:0;touch-action:none}#mat{position:absolute;background:#0c08146b;border-radius:14px;pointer-events:none}#board canvas{display:block}p{margin:0 0 6px;line-height:1.35}#hud{position:absolute;top:0;left:var(--edge);right:var(--edge);padding:calc(14px + env(safe-area-inset-top)) 0 0;text-align:center;pointer-events:none}#hud .job{display:flex;justify-content:center;align-items:center;margin:0;font-weight:700;font-size:var(--job);line-height:1.4;color:var(--ghost)}.job-line{min-width:0}#sound{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;margin:calc((var(--job) * 1.4 - 44px) / 2) -14px calc((var(--job) * 1.4 - 44px) / 2) calc(6px - (44px - var(--job) * 1.35) / 2);padding:0;border-color:transparent;background:transparent;pointer-events:auto}#sound svg{width:calc(var(--job) * 1.35);height:calc(var(--job) * 1.35);fill:none;stroke:var(--oak);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#sound .waves,#sound .slash{display:none}#sound[aria-pressed=true] .waves,#sound[aria-pressed=false] .slash{display:inline}#count{margin:2px 0 0;font-size:var(--counter);line-height:1.4;color:var(--oak)}#band,#band-probe{position:absolute;left:var(--edge);right:var(--edge);padding:0 8px;text-align:center;overflow:hidden;pointer-events:none}#band p,#band-probe p{margin:0;font-size:var(--band);line-height:1.4;color:var(--bone);text-wrap:balance}#band h2,#band-probe h2{margin:0 0 6px;font-family:var(--font-display);font-weight:400;font-size:clamp(30px,min(9vw,4.6vh),40px);line-height:1.2;color:var(--lost)}body[data-state=won] #band h2,#band-probe h2{color:var(--gold)}@media(min-width:1024px)and (min-height:640px){#band h2,#band-probe h2{font-size:clamp(48px,6.6vh,76px);line-height:1.1;margin-bottom:8px}}nav{display:flex;gap:var(--gap);pointer-events:auto}#controls{position:absolute;left:var(--edge);right:var(--edge);bottom:calc(var(--foot) + env(safe-area-inset-bottom));justify-content:center}button{font:inherit;font-size:var(--pill);font-weight:700;min-width:var(--pill-h);min-height:var(--pill-h);padding:0 var(--pill-pad);border:1px solid var(--oak);border-radius:calc(var(--pill-h) / 2);color:var(--bone);background:#1d1430cc;white-space:nowrap;cursor:pointer}#controls button.lit{border-color:var(--ghost);background:var(--bone);color:var(--ink)}#controls :is([data-action=next],[data-action=menu]).lit{border-color:var(--ghost);background:var(--gold);color:var(--ink)}button:disabled{opacity:.6;cursor:default}#controls button:disabled{opacity:1;color:#c7bba68c;border-color:#b98a5566;background:#1d14308c}:focus,:focus-visible{outline:none}body.keyboard-input button:focus-visible,body.keyboard-input label:has(input:focus-visible){outline:2px solid var(--candle);outline-offset:2px}h2{margin:0 0 20px;font-size:32px;line-height:1.15;color:var(--ghost);font-family:var(--font-display);font-weight:400}.panel{position:absolute;z-index:10;bottom:calc(20px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:min(calc(100% - 40px),520px);max-height:72%;overflow:auto;padding:24px;background:var(--night);border-radius:4px}.panel.full{top:20px;max-height:none}.panel p{font-size:18px;line-height:1.5;margin-bottom:24px}#menu{position:absolute;inset:0;z-index:20;background:#070410b8}body[data-behind=title] #menu{background:#07041061}@media(max-width:639px){body[data-behind=title] #menu{background:#07041029}}body[data-behind=title] #sheet [data-action=title]{display:none}body[data-behind=title] #title .title-actions,body[data-behind=night] #night .title-actions,body[data-behind=title][data-foot=covered] #title #premise{visibility:hidden}#sheet{position:absolute;left:50%;top:8px;transform:translate(-50%);width:min(calc(100% - 16px),364px);max-height:calc(100% - 16px);display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--night);border:1px solid rgba(185,138,85,.35);box-shadow:0 8px 40px #070410cc;border-radius:24px}#sheet-body{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:10px;margin:-4px;padding:4px}#sheet button{font-size:var(--pill)}#sheet button:not(:disabled):hover{background:var(--violet);color:var(--ghost)}#back{flex:none;width:100%;background:var(--pumpkin);color:var(--ink);border-color:var(--ghost)}#sheet #back:not(:disabled):hover{background:var(--pumpkin);color:var(--ink)}#tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}#tiles .chapter{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;line-height:1.15;white-space:normal}#tiles .chapter[aria-expanded=true]{border-color:var(--candle);color:var(--ghost);background:var(--violet)}#tiles .chapter[aria-expanded]>span:first-child{display:inline-flex;align-items:center;gap:.4em}#tiles .chapter[aria-expanded]>span:first-child:after{content:"";width:.42em;height:.42em;border:solid currentColor;border-width:0 .14em .14em 0;transform:translateY(-.08em) rotate(-45deg);transition:transform .12s}#tiles .chapter[aria-expanded=true]>span:first-child:after{transform:translateY(-.22em) rotate(45deg);color:var(--candle)}#tiles .chapter:disabled{border-style:dashed;border-color:var(--violet);color:#c7bba68c;background:var(--ink);opacity:1}#tiles .chapter .rule{font-size:calc(var(--pill) - 3px);font-weight:400;color:#a39888}.house-tiles{grid-column:1 / -1;display:flex;justify-content:center;gap:4px;padding:2px 0 4px}.house-tiles button{flex:0 0 calc((100% - 36px)*.1);min-width:0;padding:0;color:var(--ghost)}.house-tiles button.done{border-color:var(--gold);color:var(--gold)}.house-tiles button.here{border-color:var(--ghost)}.house-tiles button:disabled{border-color:var(--violet);border-style:dashed;color:#c7bba680;background:var(--ink);opacity:1}.toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.toggles label{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:var(--pill-h);padding:0 10px;border:1px solid rgba(185,138,85,.55);border-radius:calc(var(--pill-h) / 2);background:var(--ink);color:#a39888;font-size:var(--pill);font-weight:700;white-space:nowrap;text-align:center;cursor:pointer}.toggles span:before{content:"";flex:none;width:.8em;height:.8em;border:2px solid currentColor;border-radius:3px;box-sizing:border-box}.toggles span{display:flex;align-items:center;gap:7px;pointer-events:none}.toggles label:has(input:checked){border-color:var(--gold);color:var(--ghost)}.toggles label:has(input:checked) span:before{border-color:var(--gold);background:var(--gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.5l2.3 2.2 4.7-5' fill='none' stroke='%230C0814' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 100% no-repeat}.toggles input{appearance:none;position:absolute;z-index:1;inset:0;width:100%;height:100%;margin:0;border-radius:inherit;opacity:0;cursor:pointer}#sheet{padding-bottom:17px}#credits{position:absolute;right:22px;bottom:3px;margin:0;font-size:11.5px;font-style:italic;line-height:1;color:#706759;pointer-events:none}#confirmation p{font-size:var(--band);margin:0 0 8px;text-align:center;text-wrap:balance}.pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}body[data-behind=title] #sheet .pair [data-action=forget]{grid-column:1 / -1}#confirmation [data-action=confirmForget]{border:2px solid var(--pumpkin);color:var(--pumpkin);background:transparent}#sheet #confirmation [data-action=confirmForget]:hover{background:transparent;color:var(--pumpkin)}#sheet-body:has(#confirmation:not([hidden]))>.pair{display:none}@media(min-width:640px){#sheet{width:min(calc(100% - 32px),600px);gap:12px;padding:18px 18px 22px}#credits{right:30px;bottom:5px;font-size:12px}#sheet-body{gap:12px}}#floor-labels{position:absolute;inset:0;pointer-events:none}.floor-name{position:absolute;transform:translateY(-100%);white-space:nowrap;font-size:var(--floor-font);line-height:1.2;font-variant:small-caps;letter-spacing:.06em;color:var(--bone)}.floor-name.away{opacity:.7}#room-labels{position:absolute;inset:0;pointer-events:none}.room-name{position:absolute;transform:translate(-50%,-50%);padding:0 3px;white-space:nowrap;font-size:13px;line-height:1.15;color:var(--bone);text-align:center;background:#0c0814c7;border-radius:3px}@media(min-width:1024px)and (min-height:640px){.room-name{padding:3px 6px;border-radius:4px}}.room-name.wrap{width:min-content;white-space:normal;line-height:1.05}.room-name.bedroom{color:var(--bone);font-weight:700}body:is([data-state=title],[data-state=loading],[data-state=night],[data-behind=title],[data-behind=night]) :is(#hud,#band,#controls,#room-labels,#floor-labels,#mat){visibility:hidden}body:is([data-state=title],[data-state=loading]) #board{visibility:hidden}#title{inset:0;width:auto;max-height:none;padding:0;overflow:hidden;background:transparent;border:0;border-radius:0;transform:none}body[data-state=title][data-art=ready] #board{visibility:visible}#night{inset:0;width:auto;max-height:none;padding:0;overflow:hidden;background:transparent;border:0;border-radius:0;transform:none}#title-heading{position:absolute;width:1px;height:1px;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#title .door{position:absolute;display:flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:0;background:transparent}#title .door:not(:disabled):hover{background:transparent}#title .foot,#night .foot{position:absolute;left:0;right:0;top:auto!important;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;padding:10px 16px calc(var(--foot) + env(safe-area-inset-bottom));text-align:center;background:linear-gradient(#0c081400,#0c0814e6 10px)}.title-actions{display:flex;justify-content:center;gap:12px}.title-actions button{min-width:120px}@media(min-width:1600px)and (min-height:900px){.title-actions{gap:20px}.title-actions button{min-width:200px;min-height:76px;border-radius:38px;font-size:28px;padding:0 32px}}.title-actions .primary{background:var(--pumpkin);color:var(--ink);border-color:var(--ghost)}#title #premise{max-width:none;margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(15px,calc((100vw - 32px) / 19.4),20px);line-height:1.3;letter-spacing:.01em;color:var(--ghost)}#title #premise span{display:block;white-space:nowrap}@media(min-width:1024px)and (min-height:640px){#title #premise{font-size:clamp(20px,2.8vh,26px)}}#night .foot{padding-top:26px}#night .foot.tight{gap:8px;padding-bottom:calc(16px + env(safe-area-inset-bottom))}#night .foot.tight #night-line{font-size:clamp(20px,min(5.6vw,4.2vh),38px)}#night #night-line{margin:0;text-wrap:balance;font-family:var(--font-display);font-size:clamp(22px,min(6.4vw,4.2vh),38px);line-height:1.2;color:var(--ghost)}#title #save-notice{max-width:560px;margin:0 0 4px;font-size:15px;color:var(--oak)}body[data-state=menu] :is(#band,#room-labels,#floor-labels){visibility:hidden}[hidden]{display:none!important}@media(max-width:370px){:root{--pill:14px;--pill-pad:8px;--gap:5px;--job:14.5px}}@media(max-width:400px){.toggles label{padding:0 4px;font-size:14px}.toggles span{gap:5px}#sheet .pair button{padding:0 6px;font-size:14px}}@media(max-width:370px){.toggles label,#sheet .pair button{font-size:13px}}
