/* R16 experiment: HUD, journal and finding notice only. */
body>.topbar,.floor-view .topbar{padding:18px 22px;gap:24px;align-items:flex-start}
.game-location{padding:0 18px 0 0;gap:16px;min-height:58px;max-width:calc(100% - 420px);background:#080f1ef5;border:1px solid #a4b7d05c;border-left:3px solid #d4deeb;box-shadow:0 3px 0 #020711a6}
.game-location>div{padding:9px 0}
.game-location small{font-size:9px;letter-spacing:1.3px;text-transform:uppercase;color:#a8bdd7}
.topbar #view-title,.floor-view .topbar #view-title{font-size:17px;font-weight:650;letter-spacing:.15px;line-height:1.2}
.topbar .back{align-self:stretch;min-height:56px;padding:0 15px;background:transparent;border-right:1px solid #a4b7d033;color:#e8edf5;font-size:12px;font-weight:550}
.topbar .back:hover{background:#243249;color:#fff}
.game-location:has(.back[hidden]){padding-left:18px}
.game-actions{position:relative;gap:0;min-height:58px;padding:0 4px;background:#080f1ef5;border:1px solid #a4b7d05c;box-shadow:0 3px 0 #020711a6}
.game-actions button,.game-actions .inspect-journal{position:relative;min-height:56px;min-width:48px;gap:10px;padding:0 16px;border:0;border-bottom:3px solid transparent;background:transparent;color:#dce5f2;box-shadow:none;font:600 12px/1.2 "Segoe UI",Arial,sans-serif;letter-spacing:.1px}
.game-actions button+button{border-left:1px solid #a4b7d02b}
.game-actions button:hover,.game-actions .inspect-journal:hover{background:#243249;color:#fff}
.game-actions button[aria-pressed=true]{background:#182741;border-bottom-color:#0033FF;color:#fff}
.shell-icon{display:block;width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:square;stroke-linejoin:miter}
.game-actions .inspect-journal[data-unread=true]{color:#fff;border-bottom-color:#0033FF}
.game-actions .inspect-journal[data-unread=true]::after{position:absolute;top:9px;right:10px;width:5px;height:5px;background:#0033FF;box-shadow:0 0 0 2px #b8ccff}
.topbar :is(a,button):focus-visible{outline:2px solid #dae7ff;outline-offset:-4px}

/* The journal is a readable case record; room numbers are existing scene identities. */
.case-journal{width:min(820px,calc(100vw - 40px));border:1px solid #d1d5d4;border-left:7px solid #0033FF;background:#f5f3eb;box-shadow:6px 6px 0 #07101cd9,0 24px 100px #0008}
.case-journal>header{padding:28px 32px 22px;margin:0 26px;background:#f5f3eb;border-bottom:2px solid #18243a}
.case-journal .journal-eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:10px}
.case-journal h2{font:800 34px/1.05 "Segoe UI",Arial,sans-serif;letter-spacing:1.2px;text-transform:uppercase;color:#172236}
.case-journal .journal-close{align-self:center;border:1px solid #17223633;font-size:24px;width:40px;min-width:40px;height:40px;min-height:40px}
.case-journal .journal-close:hover{background:#172236;color:#fff}
.case-journal .journal-summary{padding:17px 32px;margin:0 26px;border-bottom:1px solid #17223633;font-size:12px;font-weight:600;letter-spacing:.2px;color:#42506a}
.case-journal .journal-entries{padding:0 58px 8px}
.case-journal .journal-entries section{padding:26px 0 8px;border-bottom:1px solid #17223630}
.case-journal .journal-entries h3{gap:12px;margin:0 0 22px;align-items:center;font-size:17px;font-weight:650}
.case-journal .journal-room-code{font:500 24px/1 "Segoe UI",Arial,sans-serif;font-variant-numeric:tabular-nums;color:#647188;padding-right:12px;border-right:1px solid #17223633}
.case-journal .journal-entries h3 a{color:#172236;text-decoration:none}
.case-journal .journal-entries h3 a:hover{color:#0033FF;text-decoration:underline;text-underline-offset:4px}
.case-journal .journal-entries h3 small{font-size:10px;letter-spacing:.3px;color:#315e53}
.case-journal .journal-entry{gap:12px;margin:0 0 24px}
.case-journal .journal-entry>div{min-width:0;flex:1}
.case-journal .journal-mark{width:22px;height:22px;margin-top:19px;background:transparent;border:1px solid #688f81;color:#315e53;font-size:14px}
.case-journal .journal-entry-label{display:block;margin:0 0 6px;font-size:9px;font-weight:650;letter-spacing:1.1px;text-transform:uppercase;color:#52617a}
.case-journal .journal-entry h4{font-size:19px;font-weight:650;line-height:1.3;margin:0 0 10px}
.case-journal .journal-entry p{padding:0 0 0 13px;border-left:2px solid #0033FF;font-size:15px;line-height:1.65;color:#33425b;max-width:60ch}
.case-journal .journal-empty{padding:35px 0 32px;max-width:52ch}
.case-journal .journal-empty strong{font-size:23px;font-weight:600;letter-spacing:-.3px;margin-bottom:16px}
.case-journal .journal-empty p{font-size:15px;line-height:1.7;color:#52617a}
.case-journal>footer{padding:22px 58px 28px;gap:24px}
.case-journal .journal-resume{min-height:46px;padding:12px 19px;border:1px solid #0033FF;box-shadow:0 3px 0 #0c1d69;font-size:12px}
.case-journal .journal-restart{color:#52617a;font-size:11px}

.finding-notice{position:absolute;right:22px;top:calc(100% + 10px);width:304px;pointer-events:auto;animation:finding-arrive 180ms ease-out}
.finding-notice[hidden]{display:none}
.finding-notice button{display:flex;width:100%;min-height:64px;padding:13px 16px;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;border:1px solid #a4b7d080;border-left:3px solid #0033FF;background:#080f1ef5;color:#e8edf5;text-align:left;box-shadow:0 4px 18px #02071166;cursor:pointer}
.finding-notice button:hover{background:#243249}
.finding-notice strong{font:600 12px/1.3 "Segoe UI",Arial,sans-serif}
.finding-notice small{font:11px/1.35 "Segoe UI",Arial,sans-serif;color:#b7c6db}
@keyframes finding-arrive{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:701px) and (max-width:1000px){
  body>.topbar,.floor-view .topbar{padding:14px 16px;gap:12px}
  .game-location{max-width:calc(100% - 354px);gap:10px;padding-right:12px}
  .topbar #view-title,.floor-view .topbar #view-title{font-size:15px}
  .topbar .back{padding:0 10px}
  .game-actions button,.game-actions .inspect-journal{padding:0 11px;gap:7px;font-size:11px}
  .shell-icon{width:18px;height:18px}
  .finding-notice{right:16px}
}
@media(prefers-reduced-motion:reduce){.finding-notice{animation:none}}
