.game-shell{--cell-size: 52px;margin:0 auto;max-width:1800px;padding:1rem clamp(.6rem,1.5vw,1.5rem) 4rem}.case-header{align-items:center;display:grid;gap:.85rem;grid-template-columns:auto minmax(0,1fr) auto;margin:0 auto .9rem;max-width:1540px}.case-back{align-items:center;border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink-muted);display:inline-flex;font-size:.875rem;font-weight:750;gap:.35rem;min-height:2.75rem;padding:.45rem .65rem;text-decoration:none}.case-back:hover{background:var(--control-hover);color:var(--ink)}.case-heading{border-inline-start:.25rem solid var(--case-accent);min-width:0;padding-inline-start:.8rem}.case-header h1{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,3rem);letter-spacing:-.045em;line-height:.95;margin:.18rem 0 .25rem;overflow-wrap:break-word;text-wrap:balance}.case-details{color:var(--ink-muted);font-size:.8125rem;max-width:760px}.case-details summary{cursor:pointer;font-weight:800;width:max-content}.case-details p{line-height:1.45;margin:.45rem 0 0}.case-number{color:var(--teal-text);font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.case-status{align-items:center;background:var(--strong);border:1px solid var(--strong-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised);color:var(--on-strong);display:grid;grid-template-columns:auto auto;padding:.65rem .85rem;text-align:right}.case-status span{color:var(--teal-light);font-size:.75rem;font-weight:800;grid-column:1/-1;letter-spacing:.1em;text-transform:uppercase}.case-status strong{font-family:var(--font-display);font-size:1.45rem}.case-status small{font-size:.8125rem;margin-inline-start:.4rem}.header-map-tools,.mobile-more{display:none}.game-shell button:not(.board-cell),.game-shell summary,.game-shell select{min-height:2.75rem}.game-shell summary{align-items:center;display:flex}.game-layout{align-items:start;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(400px,420px)}.game-panel,.scene-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised);overflow:hidden}.investigation-rail{align-items:start;display:grid;gap:.75rem;max-height:calc(100dvh - 5rem);min-width:0;overflow-y:auto;position:sticky;scrollbar-color:var(--teal) transparent;top:.75rem}.game-panel{min-width:0}.panel-heading{align-items:center;background:color-mix(in srgb,var(--surface-subtle) 64%,transparent);border-bottom:1px solid var(--line);display:flex;gap:.6rem;padding:.7rem .8rem}.panel-heading span{align-items:center;background:var(--strong);border-radius:50%;color:var(--on-strong);display:flex;flex:0 0 auto;font-size:.66rem;height:1.9rem;justify-content:center;width:1.9rem}.panel-heading h2{font-family:var(--font-display);font-size:1.125rem;line-height:1;margin:0}.character-list{display:grid;gap:.35rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.55rem}.character-card{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--ink);cursor:pointer;display:flex;gap:.5rem;min-height:3.4rem;min-width:0;padding:.35rem;text-align:left;transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,transform var(--motion-fast) ease;width:100%}.character-card:hover{background:var(--control-hover);transform:translate(2px)}.character-card.selected{background:color-mix(in srgb,var(--case-accent) 14%,var(--surface));border-color:var(--case-accent);box-shadow:inset 3px 0 0 var(--case-accent)}.portrait{align-items:center;background:var(--portrait);border:2px solid color-mix(in srgb,var(--portrait),#000 20%);border-radius:42% 42% 50% 50%;color:#fff;display:flex;flex:0 0 auto;font-family:var(--font-display);font-size:.72rem;height:2.55rem;justify-content:center;text-shadow:0 1px 2px #0005;width:2.35rem}.portrait.has-art{background-color:var(--portrait);background-repeat:no-repeat;border-radius:.65rem;box-shadow:inset 0 0 0 1px #fff5}.character-card span:last-child{display:grid;min-width:0}.character-card strong{font-size:.875rem;line-height:1.15;overflow:visible;text-overflow:clip;white-space:normal}.character-card small{color:var(--ink-muted);font-size:.75rem;line-height:1.2;overflow:visible;text-overflow:clip;white-space:normal}.character-card em{color:var(--teal-text);font-size:.6875rem;font-style:normal;font-weight:800;overflow:visible;text-overflow:clip;text-transform:uppercase;white-space:normal}.scene-panel{container-type:inline-size;min-width:0;padding-bottom:.7rem}.scene-toolbar{align-items:end;background:color-mix(in srgb,var(--surface-subtle) 42%,transparent);border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;padding:.55rem .65rem .6rem}.tool-group{display:grid;gap:.28rem;min-width:0}.tool-label{color:var(--ink-muted);font-size:.6875rem;font-weight:850;letter-spacing:.1em;padding-inline-start:.25rem;text-transform:uppercase}.mode-switch,.display-switch,.zoom-tools{align-items:center;display:flex;flex-wrap:wrap;gap:.3rem}.scene-toolbar button,.action-bar button,.proof-controls button,.objective-card button{background:var(--control);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;font:inherit;font-size:.875rem;font-weight:750;min-height:2.75rem;padding:.45rem .68rem;transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,color var(--motion-fast) ease,transform var(--motion-fast) ease}.scene-toolbar button:hover,.action-bar button:hover:not(:disabled),.proof-controls button:hover:not(:disabled){background:var(--control-hover);border-color:var(--line-strong);transform:translateY(-1px)}.scene-toolbar button.active{background:var(--strong);border-color:var(--strong);color:var(--on-strong)}.scene-toolbar .focus-button{align-self:end;background:var(--strong);color:var(--on-strong)}.scene-toolbar .exit-focus{align-self:end;background:var(--amber);border-color:var(--amber-deep);color:#102b3f}.zoom-tools span{color:var(--ink-muted);font-size:.75rem;min-width:2.7rem;text-align:center}.selected-strip{align-items:center;background:color-mix(in srgb,var(--case-accent) 11%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--case-accent) 22%,var(--line));display:flex;flex-wrap:wrap;font-size:.875rem;gap:.5rem;min-height:2.65rem;padding:.55rem .85rem}.slot-intro{align-items:center;background:color-mix(in srgb,var(--amber) 18%,var(--surface-raised));border-block:1px solid color-mix(in srgb,var(--amber-deep) 42%,var(--line));display:grid;gap:.65rem;grid-template-columns:auto minmax(0,1fr) auto;padding:.6rem .8rem}.slot-intro>span:nth-child(2){display:grid;gap:.1rem}.slot-intro strong{font-size:.8125rem}.slot-intro small{color:var(--ink-muted);font-size:.75rem;line-height:1.35}.slot-intro button{background:var(--control);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);font-size:.875rem;font-weight:750;min-height:2.75rem;padding:.35rem .55rem}.slot-cue-example{--cell-size: 2rem;background:var(--paper-deep);border:1px solid var(--line-strong);display:inline-block;flex:0 0 auto;height:2rem;position:relative;width:2rem}.board-scroll{background:radial-gradient(circle at 24% 8%,color-mix(in srgb,var(--teal) 18%,var(--strong)),var(--blueprint) 60%);max-height:78vh;overflow:auto;padding:1rem;scrollbar-color:var(--teal) var(--strong)}.scene-caption{align-items:baseline;color:var(--on-strong-muted);display:flex;gap:.7rem;justify-content:center;margin:0 auto .8rem;max-width:780px;text-align:start}.scene-caption strong{color:var(--teal-light);flex:0 1 auto;font-family:var(--font-display);font-size:.9rem;letter-spacing:.02em;line-height:1.1}.scene-caption span{font-size:.75rem;line-height:1.35;opacity:.88}.board-workspace{align-items:start;display:grid;gap:1rem;grid-template-columns:auto minmax(11.5rem,13.5rem);justify-content:center}.board-stage{background:var(--paper-deep);border:7px solid #0c2630;box-shadow:0 14px 40px #03141d77,inset 0 0 0 2px #f4ead7;box-sizing:content-box;margin:0 auto;position:relative}.board-stage.has-outside{background:transparent;border:0;box-shadow:none}.board-grid{display:grid;inset:0;position:absolute;z-index:6}.board-cell{align-items:center;background:transparent;border:0;box-shadow:inset 0 0 0 1px color-mix(in srgb,#102b3f 38%,transparent);color:#102b3f;cursor:crosshair;display:flex;height:var(--cell-size);justify-content:center;padding:0;position:relative;transition:background-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease;width:var(--cell-size)}.board-cell:hover:not([aria-disabled=true]){background:#fff7;box-shadow:inset 0 0 0 2px var(--case-accent)}.board-cell:focus-visible{background:#fff9;box-shadow:inset 0 0 0 4px var(--focus);outline:3px solid var(--paper);outline-offset:-3px;z-index:8}.board-cell.is-blocked{cursor:not-allowed}.view-scene .board-cell.is-blocked{box-shadow:inset 0 0 0 max(2px,calc(var(--cell-size) / 30)) #102b3f99}.view-scene .board-cell.is-blocked:after{background:repeating-linear-gradient(135deg,transparent 0 7px,#102b3f24 7px 10px);content:"";inset:max(2px,calc(var(--cell-size) / 30));pointer-events:none;position:absolute;z-index:0}.board-cell.is-outside{background:transparent;box-shadow:none;cursor:default;pointer-events:none}.board-cell.is-outside.is-scene-surface{box-shadow:inset 0 0 0 1px color-mix(in srgb,#102b3f 38%,transparent)}.cell-coordinate{background:#fffaf1a8;border:1px solid #102b3f12;border-radius:3px;color:#294552bd;font-size:clamp(.42rem,calc(var(--cell-size) / 8),.62rem);left:3px;line-height:1;padding:1px 2px;position:absolute;top:2px}.view-scene .cell-coordinate{background:#fffaf1eb;border-color:#102b3f66;color:#102b3f;font-weight:850;opacity:1;transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,opacity var(--motion-fast) ease;z-index:5}.view-scene .board-cell:is(:hover,:focus-visible,[aria-selected=true],.has-character,.has-possible-notes,.note-eliminated) .cell-coordinate{background:#fffaf1d9;border-color:#102b3f20;opacity:1}.object-token{align-items:center;border:1px solid var(--ink);border-radius:.25rem;display:flex;font-size:calc(var(--cell-size) / 3.5);height:58%;justify-content:center;opacity:.8;width:58%}.view-scene .object-token.has-art{opacity:0}.object-token.blocked{background:var(--ink);color:var(--paper)}.object-token.slot{background:var(--amber);color:var(--ink)}.object-token.slot.rich-object{font-size:calc(var(--cell-size) / 5.2);height:32%;position:absolute;right:4%;top:4%;width:32%;z-index:4}.placement-slot-cue{--slot-cue: #183f4b;background:linear-gradient(var(--slot-cue),var(--slot-cue)) left top/36% max(2px,calc(var(--cell-size) / 28)) no-repeat,linear-gradient(var(--slot-cue),var(--slot-cue)) left top/max(2px,calc(var(--cell-size) / 28)) 36% no-repeat,linear-gradient(var(--slot-cue),var(--slot-cue)) right top/36% max(2px,calc(var(--cell-size) / 28)) no-repeat,linear-gradient(var(--slot-cue),var(--slot-cue)) right top/max(2px,calc(var(--cell-size) / 28)) 36% no-repeat,linear-gradient(var(--slot-cue),var(--slot-cue)) left bottom/36% max(2px,calc(var(--cell-size) / 28)) no-repeat,linear-gradient(var(--slot-cue),var(--slot-cue)) left bottom/max(2px,calc(var(--cell-size) / 28)) 36% no-repeat,linear-gradient(var(--slot-cue),var(--slot-cue)) right bottom/36% max(2px,calc(var(--cell-size) / 28)) no-repeat,linear-gradient(var(--slot-cue),var(--slot-cue)) right bottom/max(2px,calc(var(--cell-size) / 28)) 36% no-repeat;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 1px 1px #fff9);inset:10%;opacity:.72;pointer-events:none;position:absolute;transition:filter var(--motion-fast) ease,opacity var(--motion-fast) ease;z-index:1}.has-character-selection .placement-slot-cue{opacity:.88}.board-cell.has-object-slot:is(:hover,:focus-visible,[aria-selected=true],.has-character,.has-possible-notes) .placement-slot-cue{filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 3px var(--amber));opacity:1}.character-token{align-items:center;animation:token-arrive .18s ease-out;background:var(--token);border:2px solid white;border-radius:50% 50% 46% 46%;box-shadow:0 4px 9px #0005;color:#fff;display:flex;font-family:var(--font-display);font-size:calc(var(--cell-size) / 5.2);height:72%;justify-content:center;position:absolute;scale:var(--slot-scale);text-shadow:0 1px 1px #0007;translate:calc(var(--cell-size) * var(--slot-offset-x)) calc(var(--cell-size) * var(--slot-offset-y));width:66%;z-index:2}@keyframes token-arrive{0%{opacity:.45;transform:scale(.82)}to{opacity:1;transform:scale(1)}}.view-evidence .floor-tile{background-image:none!important;filter:saturate(.55) brightness(1.06)}.view-evidence .floor-tile.is-scene-surface{opacity:.42}.view-evidence .village-road-route .terrain-route-shoulder{opacity:.58;stroke:#294d58}.view-evidence .village-road-route .terrain-route-surface{opacity:.94;stroke:#d0b885}.view-evidence .village-road-route .terrain-route-rut-band{opacity:.82;stroke:#203e48}.view-evidence .village-road-route .terrain-route-rut-center{opacity:1;stroke:#ead8ad}.view-evidence .scene-sprite{opacity:.26}.view-evidence .decoration-art{display:none}.view-evidence .object-foreground{opacity:.3}.view-evidence .board-cell{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 58%,transparent)}.view-evidence .placement-slot-cue{--slot-cue: #102b3f;filter:drop-shadow(0 0 2px #fff);opacity:.9}.view-contrast .scene-furnishings,.view-contrast .scene-foregrounds,.view-evidence .scene-atmosphere,.view-contrast .scene-atmosphere{display:none}.view-contrast .floor-tile{background:#fff!important;background-image:none!important;box-shadow:none;filter:none}.view-contrast .floor-tile.is-scene-surface{background:#fff!important;box-shadow:none!important}.view-contrast .village-road-route .terrain-route-shoulder{opacity:1;stroke:#000;stroke-width:.9}.view-contrast .village-road-route .terrain-route-surface{opacity:1;stroke:#fff;stroke-width:.72}.view-contrast .village-road-route .terrain-route-rut-band{opacity:1;stroke:#000;stroke-width:.3}.view-contrast .village-road-route .terrain-route-rut-center{opacity:1;stroke:#fff;stroke-width:.12}.view-contrast .board-cell{box-shadow:inset 0 0 0 1px #000;color:#000}.view-evidence .board-cell.is-outside,.view-contrast .board-cell.is-outside{box-shadow:none}.view-contrast .cell-coordinate{background:#fff;border-color:#000;color:#000}.view-contrast .placement-slot-cue{--slot-cue: #000;filter:drop-shadow(0 0 2px #fff);opacity:1}.view-scene .board-cell:is(.has-character,.has-possible-notes) .object-token.slot.rich-object{opacity:.38}.view-contrast .room-label{background:#fff;border:2px solid #000;box-shadow:none;color:#000}.view-evidence .object-token,.view-contrast .object-token{display:none}.view-contrast .character-token{background:#000;border-color:#fff;box-shadow:0 0 0 2px #000;color:#fff;text-shadow:none}.view-contrast .note-mark{color:#000!important;text-shadow:0 0 2px #fff}.candidate-tray{align-content:center;display:grid;gap:clamp(1px,calc(var(--cell-size) / 34),2px);grid-template-columns:repeat(var(--candidate-columns),minmax(0,1fr));inset:20% 7% 7%;position:absolute;z-index:3}.candidate-token{align-items:center;background:color-mix(in srgb,var(--candidate) 10%,#fff);border:max(1px,calc(var(--cell-size) / 36)) dashed var(--candidate);border-radius:999px;box-shadow:0 1px 2px #0003;color:#102b3f;display:flex;font-family:var(--font-display);font-size:clamp(.34rem,calc(var(--cell-size) / 7),.58rem);font-weight:900;justify-content:center;letter-spacing:-.04em;line-height:1;min-width:0;padding:max(1px,calc(var(--cell-size) / 60));text-shadow:0 1px 0 #fff}.candidate-token.is-selected{background:var(--candidate);border-color:#fff;border-style:solid;box-shadow:0 0 0 1px var(--candidate),0 2px 4px #0005;color:#fff;text-shadow:0 1px 1px #0008}.view-contrast .candidate-token{background:#fff;border-color:#000;color:#000;text-shadow:none}.view-contrast .candidate-token.is-selected{background:#000;border-color:#fff;box-shadow:0 0 0 1px #000;color:#fff}.note-eliminated{background:#9f536025}.action-bar{display:flex;flex-wrap:wrap;gap:.4rem;padding:.7rem .7rem 0}.action-bar button:disabled,.proof-controls button:disabled{cursor:not-allowed;opacity:.4}.action-bar .hint-button{background:var(--amber);border-color:var(--amber-deep)}.action-bar .danger-link{color:var(--danger);margin-inline-start:auto}.clue-panel{min-height:0}.clue-list{display:grid;gap:.6rem;padding:.65rem}.clue-card{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);display:grid;gap:.52rem;grid-template-columns:1.65rem 1fr;padding:.82rem;transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,opacity var(--motion-fast) ease}.clue-card.resolved{background:color-mix(in srgb,var(--surface-subtle) 70%,var(--surface));border-color:transparent}.clue-card.resolved p{color:var(--ink-muted);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--ink-muted) 55%,transparent)}.clue-index{color:var(--teal-text);font-family:var(--font-display);font-size:.875rem}.clue-card strong{font-size:.875rem}.clue-card p{color:var(--ink-muted);font-size:.9375rem;line-height:1.55;margin:.22rem 0 0}.clue-card button{background:transparent;border:0;color:var(--teal-text);cursor:pointer;font-size:.875rem;font-weight:750;grid-column:2;justify-self:start;padding:0}.game-shell button.region-reference{border:0;border-bottom:1px dotted currentColor;border-radius:.2rem;color:inherit;display:inline;font:inherit;font-weight:850;line-height:inherit;min-height:0;padding:0 .12em;vertical-align:baseline}.game-shell button.region-reference[aria-pressed=true]{background:color-mix(in srgb,var(--amber) 28%,transparent);border:1px solid var(--amber-deep)}.game-shell button.group-reference{border-bottom-style:dashed}.game-shell button.group-reference[aria-pressed=true]{background:color-mix(in srgb,var(--teal) 26%,transparent);border-color:var(--teal)}.character-card.group-member{box-shadow:inset 0 0 0 2px var(--teal)}.character-card.group-member small{text-decoration:underline dashed currentColor 1.5px;text-underline-offset:2px}.character-card.group-member.selected{box-shadow:inset 3px 0 0 var(--case-accent),inset 0 0 0 2px var(--teal)}.character-token.group-member{outline:2px dashed var(--teal);outline-offset:1px}.objective-card{background:var(--strong);border:1px solid var(--strong-line);border-radius:var(--radius-md);color:var(--on-strong);margin:.7rem;padding:1rem}.objective-card.ready{box-shadow:inset 0 0 0 2px var(--amber)}.objective-card>span{color:var(--teal-light);font-size:.75rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.objective-card h3{font-family:var(--font-display);font-size:1.25rem;margin:.35rem 0 .55rem}.objective-card p,.objective-card label{color:var(--on-strong-muted);font-size:.8125rem}.objective-card select{border:0;border-radius:.4rem;display:block;font:inherit;margin:.3rem 0 .55rem;min-height:2.55rem;padding:.5rem;width:100%}.objective-card button{background:var(--amber);border-color:var(--amber);width:100%}.live-message{background:var(--surface-raised);border:1px solid var(--line);border-inline-start:4px solid var(--case-accent);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);font-size:.875rem;margin:1rem auto;max-width:780px;padding:.7rem 1rem;text-align:center}.solved-overlay{background:#06151da8;display:grid;inset:0;padding:1rem;place-items:center;position:fixed;z-index:130}.solved-banner{border:2px solid var(--amber);margin:0;width:min(100%,780px)}.proof-panel{background:var(--strong);border:1px solid var(--strong-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised);color:var(--on-strong);margin:1rem auto;max-width:760px;padding:clamp(1rem,4vw,2.5rem);text-align:center}.proof-kicker{color:var(--teal-light);font-size:.75rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.proof-panel h2{font-family:var(--font-display);font-size:clamp(1.8rem,5vw,3.4rem);margin:.4rem 0}.proof-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1rem}.proof-controls .share-button{background:var(--amber);margin-inline-start:1rem}.mobile-action-dock{display:none}.tools-dialog{background:transparent;border:0;color:var(--ink);margin:auto 0 0;max-height:90dvh;max-width:none;padding:0;width:100%}.tools-dialog::backdrop{background:#06151db0;backdrop-filter:blur(3px)}.tools-sheet{background:var(--surface-raised);border:1px solid var(--line);border-radius:1.25rem 1.25rem 0 0;box-shadow:0 -20px 60px #0004;display:grid;gap:1rem;max-height:90dvh;overflow-y:auto;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom))}.tools-sheet header{align-items:center;display:flex;justify-content:space-between}.tools-sheet h2{font-family:var(--font-display);margin:0}.tools-sheet button{background:var(--control);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);min-height:2.75rem;padding:.55rem .7rem}.tools-sheet header button{border-radius:50%;font-size:1.25rem;width:2.75rem}.sheet-shortcuts,.sheet-actions,.sheet-section>div{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-section{display:grid;gap:.4rem}.sheet-section>strong{color:var(--ink-muted);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.sheet-section>small{color:var(--ink-muted);font-size:.8125rem;line-height:1.4}.tools-sheet button.active{background:var(--strong);color:var(--on-strong)}.tools-sheet .hint-button{background:var(--amber);color:#102b3f}.tools-sheet .danger-link{color:var(--danger)}.scene-panel.focus-mode{border-radius:0;height:100dvh;inset:0;max-height:none;padding-bottom:0;position:fixed;width:100vw;z-index:100}.scene-panel.focus-mode .scene-toolbar{position:sticky;top:0;z-index:12}.scene-panel.focus-mode .board-scroll{height:calc(100dvh - 10.2rem);max-height:none}.scene-panel.focus-mode .action-bar{background:var(--surface);bottom:0;padding-bottom:max(.7rem,env(safe-area-inset-bottom));position:sticky;z-index:12}.children-cast-workspace{margin:0 auto .85rem;max-width:1540px}.children-cast-workspace .character-list{grid-template-columns:repeat(var(--character-count),minmax(0,1fr));padding:.7rem}.children-cast-workspace .character-card{gap:.7rem;min-height:5.35rem;padding:.5rem}.children-cast-workspace .portrait{height:4.35rem;width:4rem}.children-cast-workspace .character-card strong{font-size:clamp(.875rem,1vw,1rem);white-space:normal}.children-cast-workspace .character-card small{font-size:clamp(.75rem,.85vw,.8125rem);white-space:normal}.children-mode .character-card.placed:not(.selected){background:color-mix(in srgb,var(--teal) 9%,var(--surface));border-color:color-mix(in srgb,var(--teal) 48%,var(--line))}.children-mode .character-card.placed em:before{content:"✓ "}.children-mode .investigation-rail,.children-mode .children-evidence-workspace{min-height:0}.children-mode .children-evidence-workspace>.clue-panel{max-height:100%;overflow-y:auto}.children-primary-tools{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:.4rem}.children-primary-tools .primary-reasoning{background:var(--amber);border-color:var(--amber-deep);color:#102b3f}.contrast-toggle[aria-pressed=true]{background:#000!important;border-color:#000!important;color:#fff!important}.children-primary-tools button:last-child{margin-inline-start:auto}.children-play-tip{background:color-mix(in srgb,var(--teal) 11%,var(--surface-raised));border:1px solid color-mix(in srgb,var(--teal) 48%,var(--line));border-radius:var(--radius-md);margin:0 0 .6rem}.scene-panel>.children-play-tip{border-inline:0;border-radius:0;margin:0}.children-play-tip>span:first-child{color:var(--case-accent);font-size:1.2rem}.children-mode .clue-card.has-owner-portrait{grid-template-columns:1.65rem 3rem minmax(0,1fr)}.children-mode .clue-card.has-owner-portrait>button{grid-column:3}.clue-owner-portrait{align-self:start;height:3rem;width:2.75rem}.children-workspace-tabs,.children-selected-summary{display:none}.person-picker{margin-inline-start:auto;min-width:10rem}.person-action{background:var(--amber);border:1px solid var(--amber-deep);border-radius:var(--radius-sm);color:#102b3f;font-weight:800;min-height:2.75rem;padding:.4rem .65rem}@container (max-width: 700px){.scene-toolbar{align-items:end;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.zoom-group,.focus-button,.exit-focus{grid-column:1/-1}.zoom-tools{justify-content:flex-start}}@container (max-width: 900px){.board-workspace{grid-template-columns:minmax(0,1fr)}}@media(min-width:1180px){.investigation-rail{grid-template-rows:auto minmax(0,1fr);max-height:calc(100dvh - 1.5rem);overflow:hidden}.clue-panel{max-height:100%;overflow-y:auto;scrollbar-color:var(--teal) transparent}.children-mode .investigation-rail{grid-template-rows:minmax(0,1fr);height:calc(100dvh - 1.5rem)}.children-mode .children-evidence-workspace{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%}.children-mode .children-evidence-workspace>.clue-panel{min-height:0}}@media(max-width:1179px){.game-shell{max-width:1120px}.game-layout{grid-template-columns:1fr}.investigation-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;position:static}.character-list,.clue-list{grid-template-columns:repeat(2,minmax(0,1fr))}.children-cast-workspace .character-list{grid-template-columns:repeat(3,minmax(0,1fr))}.children-cast-workspace .character-card{min-height:5.05rem}.children-cast-workspace .portrait{height:4.05rem;width:3.75rem}.children-mode .investigation-rail{grid-template-columns:1fr}.children-mode .children-evidence-workspace>.clue-panel{max-height:none;overflow:hidden}}@media(max-width:899px)and (min-width:768px){.investigation-rail{grid-template-columns:1fr}}@media(max-width:767px),(max-height:520px)and (max-width:900px){.game-shell{padding:.5rem .25rem calc(5.5rem + env(safe-area-inset-bottom))}.case-header{gap:.45rem;grid-template-columns:auto minmax(0,1fr) auto;margin-bottom:.5rem}.case-back{font-size:1.1rem;min-height:2.75rem;padding:.3rem .55rem}.case-back span{display:none}.case-heading{padding-inline-start:.55rem}.case-number{display:none}.case-header h1{font-size:clamp(1.375rem,5.4vw,1.75rem);line-height:1.05;margin:0}.case-details{font-size:.75rem}.case-details p{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);inset-inline:.25rem;padding:.75rem;position:absolute;z-index:24}.case-status{display:none}.header-map-tools{display:flex;gap:.3rem}.mobile-more{background:var(--control);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);display:block;font-size:.7rem;font-weight:800;min-height:2.75rem;padding:.3rem .45rem}.game-layout{display:block}.scene-panel{border-radius:var(--radius-md);padding-bottom:0}.scene-toolbar{display:none}.selected-strip{min-height:2.5rem;padding:.45rem .6rem;position:relative;z-index:7}.slot-intro{gap:.45rem;padding:.5rem .6rem}.slot-intro small{font-size:.75rem}.selected-strip span:last-child{font-size:.75rem}.scene-caption{align-items:flex-start;flex-direction:column;gap:.15rem;margin-bottom:.4rem}.scene-caption strong{font-size:.78rem}.scene-caption span{font-size:.75rem}.board-scroll{max-height:none;padding:.25rem}.board-stage{margin-inline:auto}.board-workspace{gap:.45rem}.action-bar{display:none}.investigation-rail{display:block;margin-top:.6rem;max-height:none;overflow:visible;position:static}.game-panel{border-radius:var(--radius-md)}.cast-panel{scroll-margin-top:.5rem}.character-list{display:flex;gap:.45rem;overflow-x:auto;padding:.6rem;scroll-padding-inline:.6rem;scroll-snap-type:inline mandatory;scrollbar-color:var(--teal) transparent}.character-card{flex:0 0 10.5rem;min-height:4rem;scroll-snap-align:start}.character-card strong,.character-card small,.character-card em{overflow:visible;text-overflow:clip;white-space:normal}.portrait{height:2.9rem;width:2.65rem}.clue-panel{margin-top:.6rem;scroll-margin-top:.5rem}.clue-list{grid-template-columns:1fr}.clue-card{padding:.8rem}.objective-card{scroll-margin:4rem}.live-message{margin:.65rem .25rem}.mobile-action-dock{align-items:stretch;background:color-mix(in srgb,var(--surface-raised) 96%,transparent);border-top:1px solid var(--line);bottom:0;box-shadow:0 -10px 28px #06151d22;display:grid;gap:.3rem;grid-template-columns:.85fr .65fr .65fr .9fr 1.35fr;inset-inline:0;padding:.45rem .4rem max(.45rem,env(safe-area-inset-bottom));position:fixed;z-index:50}.mobile-action-dock button{background:var(--control);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);font-size:.75rem;font-weight:800;min-height:2.9rem;min-width:0;padding:.3rem;touch-action:manipulation}.mobile-action-dock button.active{background:var(--strong);color:var(--on-strong)}.mobile-action-dock button:disabled{opacity:.42}.mobile-action-dock .dock-primary{background:var(--amber);border-color:var(--amber-deep);color:#102b3f}.children-action-dock{grid-template-columns:repeat(6,minmax(0,1fr))}.children-action-dock .dock-mode{font-size:.75rem;grid-column:span 2}.children-action-dock .dock-undo{grid-column:span 2}.children-action-dock .dock-primary{grid-column:span 4}.children-mode .board-cell{touch-action:manipulation}.game-shell.children-mode{padding-bottom:calc(8.4rem + env(safe-area-inset-bottom))}.scene-panel.focus-mode{display:block}.scene-panel.focus-mode .scene-toolbar{display:flex}.scene-panel.focus-mode .scene-toolbar .tool-group,.scene-panel.focus-mode .scene-toolbar .focus-button{display:none}.scene-panel.focus-mode .scene-toolbar .zoom-group{display:block}.scene-panel.focus-mode .scene-toolbar .zoom-group .tool-label{display:none}.scene-panel.focus-mode .scene-toolbar .zoom-tools{display:flex}.scene-panel.focus-mode .scene-toolbar .exit-focus{display:block;margin-inline-start:auto}.scene-panel.focus-mode .board-scroll{height:calc(100dvh - 7.8rem)}.scene-panel.focus-mode .action-bar{display:none}}@media(max-width:1279px),(max-height:800px)and (max-width:1440px){.game-shell.children-mode{padding-inline:.25rem}.children-game-layout{display:block}.children-workspace-tabs{background:var(--surface-raised);display:block;margin-inline:-.25rem;padding:.35rem;position:sticky;top:0;z-index:40}.children-workspace-tabs>div{display:grid;gap:.35rem;grid-template-columns:repeat(3,1fr)}.children-workspace-tabs button{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--ink-muted);font-weight:850}.children-workspace-tabs button[aria-selected=true]{background:var(--strong);color:var(--on-strong)}.children-selected-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;margin:.4rem 0}.person-action{grid-column:1/-1}.person-picker,.children-mode .scene-panel>.selected-strip{display:none}.children-mode .board-scroll{padding-inline:0}.children-cast-workspace{margin:.4rem 0 0}.children-cast-workspace .character-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(13rem,100%),1fr));overflow:visible}.game-shell.children-mode [data-children-workspace-panel],.game-shell.children-mode .investigation-rail{display:none}.game-shell.children-mode[data-active-workspace=people] .children-cast-workspace,.game-shell.children-mode[data-active-workspace=map] .scene-panel,.game-shell.children-mode.has-focus .scene-panel,.game-shell.children-mode[data-active-workspace=evidence] .investigation-rail,.game-shell.children-mode[data-active-workspace=evidence] .children-evidence-workspace{display:block}}@media(max-width:420px){.case-header{grid-template-columns:auto minmax(0,1fr)}.case-back{grid-column:1;grid-row:1}.header-map-tools{grid-column:2;grid-row:1;justify-self:end}.case-heading{grid-column:1/-1;grid-row:2}.children-cast-workspace .portrait{height:3.55rem;width:3.2rem}}@media(max-width:340px){.mobile-action-dock button,.children-action-dock .dock-mode{font-size:.6875rem}.children-cast-workspace .portrait{height:3.3rem;width:3rem}.children-mode .clue-card.has-owner-portrait{grid-template-columns:1.25rem 2.5rem minmax(0,1fr);gap:.4rem}.clue-owner-portrait{height:2.7rem;width:2.4rem}}
