@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Text:ital,wght@0,400;0,700;1,400&display=swap');
:root{color-scheme:light;--paper:#f3eedf;--ink:#283c32;--muted:#626657;--line:#d9d2bf;--forest:#1b3028;--serif:'Libre Caslon Text',Georgia,serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px 'DM Sans',Arial,sans-serif}button,input{font:inherit}button{cursor:pointer;color:inherit;background:transparent;border:1px solid var(--line);border-radius:3px;padding:12px 16px}button:hover{background:#e7e0cf}button:focus-visible,input:focus-visible{outline:3px solid #ad743e;outline-offset:3px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}#app{display:grid;grid-template-columns:264px 1fr;min-height:100dvh}.house{background:var(--forest);color:#f0e6ce;padding:44px 25px;display:flex;flex-direction:column;border-right:5px solid #b39b6e}.brand .eyebrow{color:#c3b58e;font-size:9px;letter-spacing:2px}h1{font-size:26px;line-height:1.4;margin-top:16px}.rule{display:block;width:37px;border-bottom:1px solid #ad9566;margin:25px 0 39px}.house-label{color:#b7c0af;font-size:9px;letter-spacing:2px;margin:0 10px 15px}.room{display:flex;gap:13px;align-items:center;width:100%;border:0;text-align:left;padding:17px 10px;color:#d4d9c9;border-bottom:1px solid #35483a;border-radius:0;font-size:12px}.room.active{background:#31483a;color:#fff5d9;border-left:2px solid #c5ab72}.room:hover{background:#34483b}.room-no{font-size:9px;color:#b4ba9e}.room-mark{margin-left:auto;color:#c7af7a}.case-note{font:italic 12px/1.9 var(--serif);margin-top:auto;padding:45px 10px 22px;color:#e3d8bb}.case-note span{font:10px Arial,sans-serif;color:#b9c1b1}.file-button{color:#e4dbc3;border-color:#61705a;font-size:11px}main{width:100%;max-width:1250px;padding:30px 48px 15px;margin:0 auto}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:23px;gap:10px}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:600;text-transform:uppercase;color:var(--muted)}.tools{display:flex;align-items:center;gap:8px}.tools button{font-size:11px;padding:9px 11px}.board-button{background:var(--forest);color:#f5eedb;border-color:var(--forest)}.board-button:hover{background:#40583f}.count{font-size:9px;margin-left:7px}.room-heading{display:flex;justify-content:space-between;align-items:end;padding:28px 0 23px}.room-heading h2{font-size:38px;margin-top:9px;letter-spacing:-1px}.chapter{color:var(--muted);font-size:10px;letter-spacing:2px;margin-bottom:5px}.scene{position:relative;background:#23332b;overflow:hidden;box-shadow:0 3px 12px #282c2320}.scene svg{display:block;width:100%;max-height:410px;object-fit:cover}.scene-caption{position:absolute;bottom:17px;left:24px;color:#e4d6b8;font-size:8px;letter-spacing:2px;background:#192a22;padding:7px 10px}.room-desc{font:14px/1.8 var(--serif);margin:21px 0 25px;max-width:700px}.investigation{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;border-top:1px solid var(--line);padding-top:22px}h3{font-size:17px}.objects{display:flex;flex-direction:column;margin-top:12px}.objects button{text-align:left;display:flex;gap:10px;align-items:center;border:0;border-bottom:1px solid var(--line);padding:11px 0;border-radius:0;font-size:12px}.objects small{margin-left:auto;color:var(--muted);font-size:9px}.objects button>span{font-size:17px;color:#81673f}.resident h3{margin-bottom:17px}.person{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:13px 10px}.person>span:last-child{margin-left:auto;font-size:10px}.person strong{font-size:12px;font-weight:500}.person small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.portrait{background:var(--portrait);width:46px;height:57px;display:grid;place-items:center;color:white;font-family:var(--serif);font-size:17px;border-radius:40% 40% 4px 4px}.quiet-card p{font:italic 13px/1.8 var(--serif);color:#626659;max-width:260px}footer{color:var(--muted);font-size:9px;padding-top:30px;min-height:40px}dialog{color:var(--ink);background:var(--paper);border:1px solid #9c8c68;box-shadow:0 20px 100px #0008;max-width:690px;width:calc(100% - 30px);max-height:88dvh;padding:44px;border-radius:5px}dialog::backdrop{background:#10241ed6;backdrop-filter:blur(4px)}.close{position:absolute;right:12px;top:9px;font-size:23px;padding:3px 10px;border:0}dialog h2{font-size:29px;line-height:1.4;margin:11px 0 21px}dialog p{font:15px/1.9 var(--serif);margin:15px 0}dialog h3{line-height:1.5}dialog button{margin-top:10px;font-size:12px}.primary{background:var(--forest);color:#f4edd9;border-color:var(--forest);margin-top:22px}.primary:hover{background:#3c5544}.stamp{font-size:9px;letter-spacing:1.5px;color:#6c673f;border-top:1px solid var(--line);padding-top:20px;margin:23px 0 7px}.topics,.accusations{display:flex;flex-direction:column;margin-top:20px;gap:1px}.topics button,.accusations button{text-align:left}.locked-topic{font-size:11px;color:var(--muted);margin:12px 0}.text-button{border:0;text-decoration:underline;text-underline-offset:4px}.dialogue{border-left:2px solid #b39c6e;padding-left:20px}.recorded{display:block;font:10px Arial,sans-serif;color:#50633e;margin-top:15px}.notebook article{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.notebook p{font-size:13px}.deductions{display:grid;grid-template-columns:1fr 1fr;gap:13px}.deduction{padding:18px;border:1px solid var(--line);background:#eae4d4}.deduction h3{font-size:17px;margin-top:9px}.deduction p{font-size:12px}.deduction.solved{background:#e0e7d6;border-color:#a1ad8e}.feedback{background:#e7ddc5;padding:12px;font-size:13px!important}.evidence-picks{display:flex;gap:8px;flex-wrap:wrap}.evidence-picks button{font-size:11px;margin:0}.evidence-picks .picked{background:var(--forest);color:#fff5db;border-color:var(--forest)}.small{font:11px/1.8 Arial,sans-serif!important;color:var(--muted)}.import-button{border:1px solid var(--line);border-radius:3px;padding:12px 16px;font-size:12px;cursor:pointer;margin-top:10px}.import-button input{display:block;width:100%;margin-top:10px;font-size:11px}
@media(max-width:1000px){#app{grid-template-columns:210px 1fr}.house{padding:32px 15px}h1{font-size:23px}main{padding:25px}.investigation{gap:20px}.tools button{padding:9px 7px}header>.eyebrow{max-width:100px;line-height:1.8}}
@media(max-width:700px){#app{display:block}.house{padding:21px 20px 0;border-right:0;border-bottom:3px solid #b39b6e;display:block}.brand{display:flex;align-items:center;gap:15px;padding-right:28px}.brand h1{font-size:20px;line-height:1.25;margin:0}.brand>.eyebrow{font-size:8px;line-height:1.9;max-width:95px}.rule,.house-label,.case-note{display:none}.house nav{display:flex;overflow-x:auto;margin-top:20px;gap:2px;padding-bottom:10px}.room{width:auto;flex-shrink:0;padding:11px 12px;border:1px solid #52614e;font-size:11px;gap:7px}.room-no,.room-mark{display:none}.room.active{border:1px solid #bea36d}.file-button{position:absolute;right:18px;top:26px;width:34px;overflow:hidden;padding:7px 5px;font-size:0}.file-button::after{content:'☰';font-size:17px}main{padding:19px 20px 15px}header{padding-bottom:17px;display:block}header>.eyebrow{display:none}.tools{justify-content:space-between;gap:6px}.tools button{font-size:11px;padding:10px;min-height:44px}.room-heading{padding:23px 0 19px}.room-heading h2{font-size:32px}.room-heading .eyebrow{font-size:8px;letter-spacing:1.4px}.chapter{font-size:9px}.scene{margin:0 -5px}.scene svg{height:240px;object-fit:cover}.scene-caption{font-size:6px;left:14px;bottom:12px;letter-spacing:1px}.room-desc{font-size:13px;margin:18px 0 22px}.investigation{grid-template-columns:1fr;gap:25px}.objects button{padding:13px 0;font-size:12px}.resident{padding-bottom:5px}.quiet-card p{max-width:100%}dialog{padding:35px 24px;max-height:90dvh}dialog h2{font-size:25px}.deductions{grid-template-columns:1fr}.deduction{padding:17px}footer{padding-top:20px}.evidence-picks button{padding:13px 10px}}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--paper:#202d27;--ink:#f0e7d2;--muted:#bbc2ad;--line:#56604e}.house{background:#14271f}.board-button,.primary,.evidence-picks .picked{background:#cad5b6;color:#17291f}.board-button:hover,.primary:hover{background:#e3e8d3}button:hover{background:#3c493a}.deduction{background:#303b30}.deduction.solved{background:#3b4d37}.feedback{background:#544e33}.stamp{color:#d8c79e}.quiet-card p{color:#c3c8b5}.recorded{color:#c1d0ab}.objects button>span{color:#d0b17d}.import-button{background:#303b30;color:#f0e7d2}}
