/* A small scene caption; the world remains interactive outside its controls. */
.journal-island-response{position:absolute;z-index:var(--journal-response-z,15);left:50%;bottom:calc(max(110px,env(safe-area-inset-bottom) + 82px));transform:translateX(-50%);width:min(356px,calc(100% - 28px));padding:13px 16px 5px;border:0;border-radius:22px;background:radial-gradient(ellipse at 50% 42%,#fffbeeea 28%,#fffbeedb 67%,#fffbee52 100%);box-shadow:0 8px 24px #254c4c19;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);color:#365e58;pointer-events:none;animation:journal-response-arrive .5s ease-out both}
.journal-island-response[hidden]{display:none!important}
.journal-island-response-copy{padding-right:26px}
.journal-island-response-copy strong{display:block;font-size:14px;line-height:1.45;font-weight:500;letter-spacing:.04em}
.journal-island-response-copy p{margin:4px 0 0;font-size:12.5px;line-height:1.65;overflow-wrap:anywhere}
.journal-island-response-close,.journal-island-response-action{pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font:inherit;color:inherit;border:0;background:transparent;min-width:48px;min-height:48px}
.journal-island-response-close{position:absolute;top:0;right:0;padding:0;font-size:24px;font-weight:400;line-height:1;border-radius:20px}
.journal-island-response-action{display:block;margin:0 -6px 0 auto;padding:8px 12px;font-size:13px;border-radius:18px;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#678f7866}
.journal-island-response-action:hover{background:#e3ecd17a}
.journal-island-response-action:disabled{opacity:.55}
.journal-island-response button:focus-visible{outline:2px solid #4b867e;outline-offset:-4px}
#game[data-journal-response=visible] #tapHint{visibility:hidden}
#game[data-dialog=open] .journal-island-response,#game[data-mode=panel] .journal-island-response,#game[data-mode=place] .journal-island-response,#game[data-mode=rail] .journal-island-response,#game[data-mode=travel] .journal-island-response{visibility:hidden;pointer-events:none}
#game[data-dialog=open] .journal-island-response button,#game[data-mode=panel] .journal-island-response button,#game[data-mode=place] .journal-island-response button,#game[data-mode=rail] .journal-island-response button,#game[data-mode=travel] .journal-island-response button{pointer-events:none}
@media(min-width:850px){.journal-island-response{left:24px;transform:none;bottom:28px;width:min(350px,calc(100% - 260px));padding:14px 18px 5px}}
/* A rest caption temporarily takes the place of the existing scene heading,
   leaving the music player and its exit controls completely available. */
#game[data-rest]:not([data-rest=""]) .journal-island-response{left:50%;transform:translateX(-50%);top:max(104px,calc(env(safe-area-inset-top) + 92px));bottom:auto}
#game[data-journal-response=visible][data-rest]:not([data-rest=""]) #restScene .rest-heading{visibility:hidden}
@media(max-height:560px) and (min-width:650px) and (max-width:849px){.journal-island-response{left:16px;bottom:16px;transform:none;width:min(320px,calc(100% - 142px));padding:10px 13px 3px}.journal-island-response-copy strong{font-size:13px}.journal-island-response-copy p{font-size:12px;line-height:1.45}#game[data-rest]:not([data-rest=""]) .journal-island-response{top:max(86px,calc(env(safe-area-inset-top) + 72px));bottom:auto}}
@keyframes journal-response-arrive{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.journal-island-response{animation:none}}
.journal-island-response-actions{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.journal-island-response-actions .journal-island-response-action{margin:0}
.journal-island-response-actions [hidden]{display:none}
