:root{color-scheme:light;--ink:#263b36;--paper:#fff9e9;--yellow:#f4d958;--teal:#55b4bf;--line:3px solid var(--ink)}*{box-sizing:border-box}body{margin:0;background:#f7f3e9;color:var(--ink);font:17px/1.5 ui-rounded,"Avenir Next",system-ui,sans-serif}header{max-width:1180px;margin:auto;padding:25px 28px;display:flex;justify-content:space-between;gap:16px;align-items:center}a{color:inherit;font-weight:750;text-underline-offset:4px}.stamp{font-size:11px;font-weight:850;letter-spacing:2px;border:2px solid;padding:5px 10px;transform:rotate(2deg)}main{background:var(--yellow);padding:36px max(24px,calc((100vw - 1124px)/2)) 24px;min-height:calc(100vh - 85px);background-image:radial-gradient(#263b360c .8px,transparent .8px);background-size:5px 5px}.intro{margin-bottom:30px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:2px;margin:0 0 9px}h1{font-size:clamp(32px,4.3vw,55px);line-height:1.08;letter-spacing:-2px;margin:0 0 14px;font-weight:900}.intro>p:last-child{margin:0;font-size:18px}.dossier{background:var(--paper);border:var(--line);border-radius:16px;box-shadow:6px 7px 0 var(--ink);padding:26px;position:relative}.mission-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:20px;border-bottom:2px dashed #263b3640}h2{font-size:27px;line-height:1.2;margin:0}.move-tag{background:#f1e6ce;padding:8px 12px;border:2px solid;border-radius:8px;white-space:nowrap;font-weight:800}.play-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,1fr);gap:38px;margin-top:25px}.board-wrap{align-self:center}#board{display:grid;grid-template-columns:repeat(5,1fr);width:100%;aspect-ratio:5/4;border:var(--line);border-radius:10px;overflow:hidden;background:#c6ad85;box-shadow:0 5px 0 #263b3630}.tile{position:relative;aspect-ratio:1;border:1px solid #263b3624;min-width:0;padding:0;border-radius:0;background:#e4cf9f url('assets/floor.png') center/cover;box-shadow:none;isolation:isolate;cursor:pointer}.tile.wall{background:#7e8b80 url('assets/wall.png') center/cover;cursor:default}.tile.watched:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,#d3554555 0,#d3554555 7px,#e7998655 7px,#e7998655 15px);z-index:0}.tile img{position:absolute;inset:3%;width:94%;height:94%;object-fit:contain;pointer-events:none;z-index:1}.tile img.cat{inset:0;width:100%;height:100%;z-index:3}.tile.hidden-cat img.cat{width:62%;height:62%;left:20%;top:0}.tile.hidden-cat img.box{z-index:4;top:27%;height:73%}.facing{position:absolute;bottom:0;right:2px;z-index:5;background:var(--paper);border:1px solid;border-radius:50%;width:24px;height:24px;line-height:20px;font-size:22px}.tile:focus-visible{outline:4px solid #087da2;outline-offset:-5px;z-index:6}.legend{font-size:12px;display:flex;gap:8px;align-items:center}.swatch{width:18px;height:18px;flex-shrink:0;background:repeating-linear-gradient(135deg,#d3554566 0,#d3554566 4px,#edbfac 4px,#edbfac 8px);border:1px solid}h3{font-size:27px;line-height:1.15;margin:0 0 14px;letter-spacing:-.7px}aside>p{margin:0 0 16px}.note{font-size:14px;background:#eee7d5;border-left:4px solid var(--ink);padding:11px 14px;margin-bottom:18px}button,.button{font:inherit;font-weight:800;border:2px solid var(--ink);background:var(--paper);color:var(--ink);border-radius:9px;min-height:44px;padding:8px 15px;box-shadow:0 3px 0 var(--ink);cursor:pointer;text-align:center;text-decoration:none;touch-action:manipulation}button:hover:not(:disabled),.button:hover{background:#efe4c7}button:active:not(:disabled),.button:active{transform:translateY(2px);box-shadow:0 1px 0 var(--ink)}button:focus-visible,a:focus-visible{outline:3px solid #087da2;outline-offset:4px}button:disabled{opacity:.38;cursor:default;box-shadow:none}.primary{background:var(--teal)}.primary:hover:not(:disabled){background:#8acbd0}.dpad{display:grid;grid-template-columns:repeat(3,52px);grid-template-rows:repeat(2,46px);gap:7px;justify-content:center;margin-bottom:14px}.dpad button{font-size:26px;padding:0}.dpad [data-action=up]{grid-column:2}.dpad [data-action=left]{grid-row:2;grid-column:1}.dpad [data-action=down]{grid-row:2;grid-column:2}.dpad [data-action=right]{grid-row:2;grid-column:3}#hide{width:100%;margin:0 0 12px}.tools{display:flex;gap:8px}.tools button{flex:1;font-size:14px;padding:7px}#status{font-size:14px;font-weight:750;min-height:42px;margin:15px 0 4px}.keyboard{font-size:11px;opacity:.78;margin:0}.result{margin-top:24px;border:2px solid;background:#e0ebd8;border-radius:10px;padding:22px}.result.failure{background:#f2d7c5}.result p{margin-bottom:10px}.result-actions{display:flex;flex-wrap:wrap;gap:12px}footer{display:flex;justify-content:space-between;gap:20px;font-size:13px;padding-top:28px}.tile:hover:not(:disabled){background-color:#e4cf9f}.tile:active:not(:disabled){transform:none;box-shadow:none}@media(max-width:720px){header{padding:16px}.stamp{font-size:8px;letter-spacing:1px}main{padding:25px 14px}.intro{margin-bottom:23px}h1{letter-spacing:-1px}.intro>p:last-child{font-size:15px}.dossier{padding:16px;box-shadow:4px 5px 0}.play-layout{grid-template-columns:1fr;gap:12px;margin-top:18px}.board-wrap{width:min(100%,440px);margin:auto}h2{font-size:21px}.move-tag{font-size:13px;padding:6px 8px}aside>h3,aside>.eyebrow{display:none}aside>p{font-size:14px}.note{margin-bottom:14px}#controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center}.dpad{grid-column:1;grid-row:1/3;margin:0}#hide{margin:0}.tools{grid-column:2;flex-wrap:wrap}.tools button{min-width:45px}.keyboard{font-size:11px}footer{font-size:11px}.result-actions>*{flex:1}.legend{margin-bottom:0}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.tile:disabled{opacity:1}
@media(max-width:720px){.intro h1{font-size:27px}.intro>p:last-child{display:none}.intro{margin-bottom:20px}aside{display:flex;flex-direction:column}#controls{order:-2}#status{order:-1;margin:14px 0 8px;min-height:0}.note{font-size:12px}.keyboard{margin-top:8px}}
