/* Native scene buttons share the same actions for touch, pointer and keyboard. */
.story-bubble{display:flex;gap:12px;align-items:center;background:#fff9e8;border-radius:20px 20px 20px 5px;padding:12px;margin-top:14px;box-shadow:0 4px 16px #76572b10}
.story-bubble p{font:16px/1.5 Georgia;margin:0;flex:1}
.story-bubble small{display:block;font:11px/1.4 system-ui;color:#677351;margin-bottom:6px}
.story-portrait{flex:0 0 70px;height:92px;overflow:hidden;border-radius:35px;background:#e4e7ce}
.story-portrait svg{width:100%;height:100%;display:block}
.story-gifts{display:flex;gap:10px;margin-bottom:16px}
.story-gifts button{flex:1;font:13px system-ui}
.story-gifts svg{width:58px;height:58px;display:block;margin:auto auto 6px}
.rj .sticker-tool{display:flex;align-items:center;gap:12px;margin-bottom:14px;width:100%;font:14px system-ui}
.sticker-tool svg{width:48px;height:48px}
.sticker-placement .journey-target{font-size:11px}
.journey-play{max-width:1080px;margin:auto}
.journey-title{max-width:680px;margin:0 0 24px}
.journey-title h1{font-size:clamp(27px,4vw,42px);margin:6px 0 10px}
.journey-title>p:last-child{font-size:17px;line-height:1.5;margin:0}
.journey-play-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:28px;align-items:start}
.journey-board{position:relative;width:100%;border:6px solid #fff9e8;border-radius:24px;box-shadow:0 10px 24px #715b2920;overflow:visible;background:#efe4cd}
.journey-board>svg{display:block;width:100%;height:auto;border-radius:18px}
.rj .journey-target{position:absolute;transform:translate(-50%,-50%);width:48px;min-height:48px;padding:2px;border-radius:50%;background:#fff9e8ed;border:2px solid #78947c;box-shadow:0 3px 0 #65795435;font:600 14px system-ui;color:#304b39}
.rj .journey-target:disabled{opacity:.55;background:#f0e8d2;box-shadow:none}
.rj .journey-target.is-filled{background:#d2dfbf}
.rj .journey-board:is([data-kind=snackbox],[data-kind=exhibit],[data-kind=keepsake]) .journey-target.is-filled{background:transparent;border:1px dashed #78947c88;box-shadow:none;color:transparent;border-radius:10px}
.journey-board:is([data-kind=snackbox],[data-kind=exhibit],[data-kind=keepsake]) .journey-target.is-filled::after{content:'↻';position:absolute;right:-4px;bottom:-4px;width:19px;height:19px;background:#fff9e8;border-radius:50%;color:#375640;font:14px/19px system-ui}
.rj .journey-target:not(:disabled):hover{background:#f8e3a4;box-shadow:0 0 0 5px #d3ae5b35}
.journey-status{font:14px/1.6 system-ui;background:#e5e9d6;padding:14px 16px;border-radius:14px;margin:16px 0 0;min-height:70px}
.journey-tools{min-width:0}
.journey-tray{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:420px;overflow-y:auto;padding:5px}
.rj .journey-tray button{padding:8px;font:13px/1.4 system-ui;border-color:#c3b48f;background:#fffaf0;border-width:2px;min-width:0}
.rj .journey-tray button[aria-pressed=true]{background:#e6edda;border-color:#58774e;box-shadow:0 0 0 2px #a8be9255}
.journey-tray button>span:last-child{display:block;overflow-wrap:anywhere}
.journey-token{display:block;height:76px;overflow:hidden}
.journey-token svg{display:block;width:100%;height:100%}
.journey-selection{font:13px/1.5 system-ui;margin:10px 5px}
.journey-picks>span{font:12px system-ui;text-transform:uppercase;letter-spacing:.1em}
.journey-picks .actions{margin:8px 0 20px}
.journey-ending{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.journey-ending button{flex:1;font:14px/1.4 system-ui}
.rj #quest-finish:not(:disabled){background:#355b44;color:#fff9e8}
.journey-tools details{font-size:14px;margin:16px 0 0}
.journey-tools details p{line-height:1.6}
.rj .chapter-invitation{position:absolute;z-index:9;left:5%;top:27%;width:90%;max-width:510px;display:flex;align-items:center;text-align:left;gap:12px;padding:8px 14px 8px 8px;background:#fff7e6f2;border:1px solid #e5d7b4;border-radius:12px 22px 22px 12px;box-shadow:0 5px 22px #26341e33;color:#38523c}
.chapter-invitation>span:first-child{display:block;flex:0 0 96px;height:66px;overflow:hidden;border-radius:8px;background:#e5dfc7}
.chapter-invitation svg{height:100%;width:100%;display:block}
.chapter-invitation strong{display:block;font:500 clamp(16px,2vw,21px)/1.2 Georgia;margin:5px 0}
.chapter-invitation small{font:10px/1.4 system-ui;text-transform:uppercase;letter-spacing:.07em;display:block}
.chapter-invitation>span:last-child{font:22px Georgia;margin-left:auto}
@media(max-width:740px){
 .rj[data-screen=journey] main{padding:20px 14px}
 .journey-play-layout{grid-template-columns:minmax(0,1fr);gap:16px}
 .journey-title{margin-bottom:16px}.journey-title>p:last-child{font-size:15px}
 .journey-board{max-width:540px;margin:auto}
 .journey-tray{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:4px;max-height:280px}
 .rj .journey-tray button{font-size:11px;padding:5px 3px}.journey-token{height:53px}
 .journey-picks{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center}.journey-picks .actions{margin:0}.journey-picks button{flex:1;padding:8px;font-size:14px}
 .journey-status{margin-top:12px;min-height:0;padding:12px 14px;font-size:13px}
 .rj .chapter-invitation{gap:9px}.chapter-invitation>span:first-child{flex-basis:82px;height:60px}
}
