/* Local Three.js enhancement. Existing image/gallery/layout remains the fallback. */
.uya-voyage-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.uya-page .uya-voyage-entry[hidden],.uya-voyage-dialog [hidden]{display:none!important}
.uya-page footer .uya-voyage-entry{display:inline-flex;align-items:center;gap:5px;margin-right:8px;vertical-align:middle}
.uya-page .uya-voyage-entry-button{display:inline-flex;align-items:center;justify-content:center;min-height:26px;margin:0;padding:3px 7px;border:1px solid #dbd0e9;border-radius:5px;background:#eee7f580;color:#705491;font:inherit;font-size:11px;line-height:1.4;white-space:nowrap;cursor:pointer}
.uya-page .uya-voyage-entry-button:hover{background:#e8ddf3}
.uya-voyage-desktop-stage{display:none;pointer-events:none}
.uya-voyage-host{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.uya-voyage-host canvas{display:block;width:100%;height:100%;touch-action:pan-y}
.uya-voyage-desktop-caption{position:absolute;z-index:2;left:15px;right:15px;bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:7px;color:#ccc9e2;font-size:10px;letter-spacing:.5px}
.uya-voyage-desktop-caption button{padding:7px 10px;background:#161a2dbb;border:1px solid #d9d4ff33;border-radius:5px;color:#e2daf6;font:inherit;font-size:10px;backdrop-filter:blur(12px);cursor:pointer}
@media(min-width:1200px){
 body.is-desktop-template .uya-voyage-desktop-stage{display:block;position:fixed;z-index:0;top:0;right:0;bottom:var(--uya-background-floor,104px);width:var(--uya-background-lane,clamp(320px,26vw,480px));overflow:hidden;opacity:0}
 body.is-desktop-template .uya-voyage-desktop-stage.is-ready{opacity:1;pointer-events:auto;background:#10182b}
 body.is-desktop-template .uya-voyage-desktop-stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#171c2614,transparent 12%),linear-gradient(0deg,#10142d66,transparent 25%)}
 body.is-desktop-template.has-uya-voyage #uya_background .uya-background__character{visibility:hidden}
 body.is-desktop-template.has-uya-voyage #uya_background .uya-background__image{opacity:0!important}
 body.is-desktop-template.has-uya-voyage #uya_background{background:linear-gradient(135deg,#dce6ef,#d7d6ec)}
}
@media(max-width:1199px){.uya-page .uya-voyage-mode{display:none!important}}
.uya-page dialog.uya-voyage-dialog{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;color:#ece9fb;background:#10172a;box-shadow:none;isolation:isolate;animation:none!important}
.uya-page dialog.uya-voyage-dialog::backdrop{background:#080d20;backdrop-filter:none}
.uya-voyage-dialog:not([open]){display:none}
.uya-voyage-dialog[open]{display:block}
.uya-voyage-modal-stage{position:absolute;inset:0}
.uya-voyage-dialog-heading{position:absolute;z-index:3;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:max(22px,env(safe-area-inset-top)) 28px 35px;background:linear-gradient(#090e275c,transparent);pointer-events:none}
.uya-voyage-dialog-heading h2{margin:0;font:400 17px/1.5 "Segoe UI","Microsoft YaHei",sans-serif;letter-spacing:1.5px;color:#eee8ff}
.uya-page .uya-voyage-close{flex:none;pointer-events:auto;min-height:44px;padding:9px 16px;border:1px solid #d8d7f638;border-radius:6px;background:#151a2bbd;color:#e1def4;font:12px/1.4 inherit;cursor:pointer;backdrop-filter:blur(14px)}
.uya-voyage-dialog-controls{position:absolute;z-index:2;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(560px,calc(100% - 32px));padding:17px 20px 13px;border:1px solid #cec7ea36;border-radius:12px;background:linear-gradient(120deg,#161d31ed,#11192cd9);box-shadow:0 18px 70px #01071544;backdrop-filter:blur(20px)}
.uya-voyage-progress-row{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#c9c3de;letter-spacing:.5px}
.uya-voyage-progress-row output{font:10px/1 ui-monospace,Consolas,monospace;color:#cdb8ef;letter-spacing:1px}
.uya-voyage-progress{display:block;appearance:none;-webkit-appearance:none;width:100%;height:20px;margin:8px 0 9px;border:0;border-radius:0;outline-offset:2px;background:transparent;cursor:pointer;--uya-voyage-progress:6%}
.uya-voyage-progress::-webkit-slider-runnable-track{height:2px;background:linear-gradient(90deg,#c0a5ec var(--uya-voyage-progress),#a9afcf40 var(--uya-voyage-progress));border-radius:4px}
.uya-voyage-progress::-moz-range-track{height:2px;background:#a9afcf40}
.uya-voyage-progress::-moz-range-progress{height:2px;background:#c0a5ec}
.uya-voyage-progress::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:9px;height:9px;margin-top:-3.5px;border-radius:50%;background:#e0d2f9;box-shadow:0 0 9px #c4a7fc66}
.uya-voyage-progress::-moz-range-thumb{width:9px;height:9px;border:0;border-radius:50%;background:#e0d2f9}
.uya-voyage-dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}
.uya-page .uya-voyage-dialog-actions button,.uya-page .uya-voyage-dialog-actions select,.uya-page .uya-voyage-retry{min-height:36px;border:1px solid #c5b9e333;border-radius:5px;background:#c9b5f112;color:#d9cbed;padding:8px 12px;font:11px/1.3 "Segoe UI","Microsoft YaHei",sans-serif;white-space:nowrap;cursor:pointer}
.uya-page .uya-voyage-dialog-actions button:first-child{background:#d2bff0;color:#2a2440;border-color:#d2bff0}
.uya-page .uya-voyage-dialog-actions button:disabled{opacity:.5;cursor:default}
.uya-voyage-quality option{background:#191b31;color:#ddd7ed}
.uya-voyage-dialog button:hover:not(:disabled){filter:brightness(1.1)}
.uya-voyage-note,.uya-voyage-modal-status{font-size:10px;line-height:1.6;letter-spacing:.3px;color:#8e92ac;margin:11px 0 0}
.uya-voyage-modal-status{color:#b2aac6;margin-top:4px;font-size:9px}
.uya-voyage-modal-status:empty{display:none}
.uya-voyage-fallback{position:absolute;inset:10% 25% 25%;width:50%;height:65%;object-fit:contain;filter:drop-shadow(0 5px 30px #0005)}
body.uya-page.uya-voyage-open{overflow:hidden!important}
@media(max-width:600px){
 .uya-page.uya-compact footer .uya-voyage-entry{gap:0;margin-right:0}
 .uya-page.uya-compact .uya-voyage-entry-button{height:28px;min-height:28px;font-size:10px;padding:3px 8px}
 .uya-voyage-dialog-heading{padding:max(12px,env(safe-area-inset-top)) 16px 28px;gap:10px}
 .uya-voyage-dialog-heading h2{font-size:14px;letter-spacing:.7px}
 .uya-page .uya-voyage-close{min-height:44px;padding:9px 12px;font-size:11px}
 .uya-voyage-dialog-controls{width:calc(100% - 24px);bottom:max(13px,env(safe-area-inset-bottom));padding:14px 13px 11px;border-radius:10px}
 .uya-voyage-dialog-actions{gap:5px}
 .uya-page .uya-voyage-dialog-actions button,.uya-page .uya-voyage-dialog-actions select{font-size:10px;min-height:40px;padding:7px 8px;min-width:0}
 .uya-page .uya-voyage-dialog-actions select{max-width:85px;padding-left:5px;padding-right:0}
 .uya-voyage-note{font-size:9px;margin-top:10px}.uya-voyage-modal-status{font-size:8px}
}
@media(max-width:350px){.uya-page .uya-voyage-dialog-actions button{font-size:9px;padding:7px 6px}.uya-page .uya-voyage-dialog-actions select{font-size:9px;max-width:76px}.uya-voyage-dialog-controls{padding-left:11px;padding-right:11px}}
