.investigation{min-height:100vh;background:#d8c7a8;color:#17243a}.investigation-head{height:92px;padding:0 clamp(20px,4vw,60px);display:flex;align-items:center;justify-content:space-between;background:#0d1728;color:#fff}.investigation-head>a{color:#d6aa53;text-decoration:none;font:12px system-ui}.investigation-head>div{text-align:center}.investigation-head p{margin:0;color:#d6aa53;font:9px system-ui;letter-spacing:.2em}.investigation-head h1{margin:4px 0;font-size:25px}.investigation-head span{color:#aeb7c4;font:11px system-ui}.sound-toggle{width:38px;height:38px;border:1px solid #ffffff44;border-radius:50%;background:transparent;color:#fff}.investigation-workspace{max-width:1480px;margin:auto;padding:35px clamp(20px,4vw,60px) 80px;display:grid;grid-template-columns:minmax(560px,1fr) minmax(320px,430px);gap:40px}.sticky-board-column{min-width:0}.scene-meta{display:flex;justify-content:space-between;margin-bottom:12px;font:700 11px system-ui;letter-spacing:.13em}.board-frame{position:relative;width:min(100%,760px);margin:auto}.investigation-board{position:relative;aspect-ratio:1;display:grid;grid-template-columns:repeat(var(--columns),1fr);grid-template-rows:repeat(var(--rows),1fr);overflow:hidden;border:3px solid #17243a;background:#0d1728 var(--board-image) center/cover no-repeat;box-shadow:0 20px 55px #07101e4d}.game-cell{min-width:0;position:relative;padding:0;border:1px solid #eee0b438;background:#ffffff08;color:#fff;cursor:pointer}.game-cell:hover{box-shadow:inset 0 0 0 2px #d6aa53}.zone-label{position:absolute;left:3px;top:3px;z-index:2;padding:2px 4px;background:#08111ed9;color:#fff2ca;font:700 clamp(6px,.8vw,10px) system-ui}.hotspot{position:absolute;right:2px;bottom:2px;z-index:2;padding:2px 4px;border-radius:8px;background:#08111ed9;color:#ffe09b;font:700 clamp(5px,.7vw,9px) system-ui;white-space:nowrap}.board-person{position:absolute;z-index:4;inset:7%;background-position:center 16%;background-size:cover;border:2px solid #f3ead8;border-radius:7px;box-shadow:0 4px 12px #0009}.board-person b{position:absolute;left:50%;bottom:-5px;transform:translateX(-50%);padding:1px 3px;border-radius:5px;background:#08111ee6;color:#fff;font:700 clamp(5px,.7vw,9px) system-ui;white-space:nowrap}.grid-note{position:absolute;inset:0;z-index:5;display:grid;place-items:center;font:700 clamp(15px,3vw,35px) Arial;color:#ff745f}.grid-note.candidate{inset:auto 3px 3px auto;color:#ffe09b}.data-feature-overlay{position:absolute;z-index:8;display:grid;place-items:center;border:2px solid #ffd266;background:#ffd26622;color:#fff2c8;font:700 10px system-ui;box-shadow:0 0 0 999px #06101d80;pointer-events:none}.board-guidance{text-align:center;color:#625d55;font:12px system-ui}.mobile-person-strip{display:flex;justify-content:center;gap:8px}.person-card{width:min(130px,19%);padding:7px;border:1px solid #17243a38;background:#f5ead5}.person-card>span{display:block;width:42px;height:55px;margin:auto;background-position:center 16%;background-size:cover;border-radius:6px}.person-card b,.person-card small{display:block}.person-card b{margin-top:5px}.person-card small{font:10px system-ui;color:#696b6e}.person-card.selected{background:#17243a;color:#fff;outline:2px solid #d6aa53}.mobile-tool-row{display:flex;justify-content:center;gap:7px;margin:10px 0}.mobile-tool-row button{padding:8px 12px;border:1px solid #17243a38;background:#f3ead8}.mobile-tool-row button.active{background:#17243a;color:#fff}.inline-clues{padding:30px;background:#f3ead8;align-self:start}.inline-clues header h2{margin:8px 0}.inline-clues header p{color:#a74438;font:800 10px system-ui;letter-spacing:.16em}.inline-clues header span{color:#696b6e;font:12px/1.6 system-ui}.inline-clue-list{display:grid;gap:9px;margin-top:25px}.inline-clue{display:grid;grid-template-columns:32px 1fr;gap:10px;padding:13px;background:#fffaf0;border-left:2px solid #b29a73}.inline-clue>b{width:28px;height:28px;display:grid;place-items:center;border:1px solid #b29a73;border-radius:50%;color:#a74438;font:700 10px Arial}.inline-clue p{margin:2px 0;font:13px/1.65 system-ui}.object-term,.relation-term{padding:0;border:0;background:none;font:inherit;font-weight:800}.object-term{color:#a74438;border-bottom:2px solid #a7443844}.relation-term{color:#2d6370;border-bottom:1px dashed currentColor}.submit-panel{margin-top:20px;padding-top:20px;border-top:1px solid #17243a33;text-align:center}.submit-panel p{font:12px system-ui;color:#696b6e}.submit-case{width:100%;min-height:48px;border:0;background:#a74438;color:#fff;font-weight:800}.term-popover{position:fixed;z-index:50;left:50%;bottom:20px;transform:translateX(-50%);width:min(90vw,420px);padding:22px;background:#0d1728;color:#fff;box-shadow:0 15px 45px #0008}.term-popover[aria-hidden=true]{display:none}.term-popover button{float:right;border:0;background:none;color:#fff;font-size:22px}.term-popover p{color:#c5cbd3;font:13px/1.7 system-ui}.game-toast{position:fixed;z-index:60;left:50%;bottom:25px;transform:translate(-50%,20px);padding:10px 16px;background:#0d1728;color:#fff;opacity:0;pointer-events:none;font:12px system-ui;transition:.2s}.game-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:820px){.investigation-head{height:auto;min-height:76px;padding:10px 15px}.investigation-head>div{text-align:left}.investigation-head h1{font-size:20px}.investigation-head span{display:none}.investigation-workspace{display:block;padding:0 12px 70px}.sticky-board-column{position:sticky;z-index:15;top:0;padding-top:8px;background:linear-gradient(#d8c7a8 92%,transparent)}.scene-meta{margin:0 4px 6px}.board-frame{width:min(100%,46dvh)}.investigation-board{border-width:2px}.board-guidance{display:none}.mobile-tool-row{margin:6px 0;gap:4px}.mobile-tool-row button{padding:6px 9px;font:700 11px system-ui}.mobile-person-strip{justify-content:flex-start;overflow-x:auto;padding:0 2px 7px}.person-card{flex:0 0 68px;width:68px;padding:4px}.person-card>span{width:31px;height:39px}.person-card b{font-size:10px}.person-card small{display:none}.inline-clues{padding:20px 4px 10px;background:transparent}.inline-clues>header{padding:22px 8px 8px}.inline-clue{padding:12px 9px}.zone-label{font-size:5px;padding:1px 2px}.hotspot{font-size:5px;padding:1px 2px}.term-popover{bottom:72px}.submit-panel{padding-bottom:40px}}
