/* Saebori navigation dialog: viewport-bounded header, scrolling choices, fixed controls. */
.savori-voice-root,.savori-voice-root *{box-sizing:border-box}
.savori-voice-root [hidden]{display:none!important}
.savori-voice-launch{position:fixed;left:max(14px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));z-index:470;width:58px;height:76px;border:0;padding:0;background:transparent;cursor:pointer;filter:drop-shadow(0 5px 10px #0006)}
.savori-voice-launch video{width:100%;height:100%;object-fit:contain;pointer-events:none}
.savori-voice-launch::after{content:'말 걸기';position:absolute;left:50%;bottom:-2px;transform:translateX(-50%);white-space:nowrap;font:700 10px/1.5 system-ui;padding:2px 7px;background:#102343;color:#ffdc8c;border:1px solid #cfad64;border-radius:20px}
html:lang(en) .savori-voice-launch::after{content:'Talk'}html:lang(ja) .savori-voice-launch::after{content:'話しかける'}html:lang(zh) .savori-voice-launch::after{content:'聊一聊'}
.savori-voice-root .savori-voice-panel{position:fixed!important;inset:auto auto 16px 16px!important;width:min(430px,calc(100vw - 32px))!important;max-width:calc(100vw - 32px)!important;height:min(660px,calc(100vh - 32px));height:min(660px,calc(100dvh - 32px));max-height:calc(100dvh - 32px)!important;margin:0!important;padding:0!important;border:1px solid #6884b0!important;border-radius:20px;background:#0b1932;color:#f1f5ff;box-shadow:0 18px 70px #0008;overflow:hidden!important;transform:none!important;font:14px/1.5 system-ui,-apple-system,'Noto Sans KR',sans-serif;color-scheme:dark}
.savori-voice-root .savori-voice-panel:not([open]){display:none!important}
.savori-voice-root .savori-voice-panel[open]{display:flex;flex-direction:column}
.savori-voice-panel::backdrop{background:#03091e80}
.savori-voice-root .savori-voice-head{position:relative;display:flex;flex-shrink:0;align-items:flex-start;justify-content:space-between;gap:12px;padding:15px;border-bottom:1px solid #3a5275;background:#122747}
.savori-voice-title{min-width:0}.savori-voice-root .savori-voice-title h2{font-size:19px;line-height:1.4;color:#fff;margin:0;word-break:keep-all}.savori-voice-root .savori-voice-title p{font-size:12px;color:#bfcfe8;margin:5px 0 0}
.savori-voice-root button,.savori-voice-root input{font:inherit}.savori-voice-root button{cursor:pointer}
.savori-voice-root .savori-voice-close{width:44px;min-width:44px;height:44px;flex-shrink:0;padding:0;border:1px solid #8098bd;border-radius:12px;background:#213a60;color:white;font-size:28px;line-height:1}
.savori-voice-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px;-webkit-overflow-scrolling:touch}
.savori-voice-root .savori-voice-status{margin:0 0 8px;font-size:13px;color:#ffe0a2;overflow-wrap:anywhere}
.savori-voice-root .savori-voice-transcript{font-size:12px;color:#d5e0f1;overflow-wrap:anywhere;margin:0 0 8px}.savori-voice-transcript:empty{display:none}
.savori-voice-form{margin:0 0 13px}.savori-voice-form label{font-size:12px;display:block;margin-bottom:5px;color:#dce6f7}.savori-voice-form>div{display:flex;gap:7px;min-width:0}
.savori-voice-root .savori-voice-form input{min-width:0;width:100%;height:46px;background:#081328;border:1px solid #7f9ac5;border-radius:10px;padding:9px;color:#fff;font-size:16px}.savori-voice-form input::placeholder{color:#aebfd9;font-size:12px}
.savori-voice-form button{min-height:46px;flex-shrink:0;border:0;border-radius:10px;background:#f3d483;color:#102343;padding:8px 12px;font-weight:700}
.savori-voice-examples{margin-bottom:14px;min-width:0}.savori-voice-root .savori-voice-examples h3{font-size:12px;color:#bdcde5;margin:0 0 7px}
.savori-example-rail{display:flex;overflow-x:auto;gap:7px;max-width:100%;padding-bottom:6px;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#8aabdf #14243d}
.savori-example-rail button{flex:0 0 82%;white-space:normal;text-align:left;scroll-snap-align:start;font-size:12px;line-height:1.5;min-height:44px;padding:8px 11px;border:1px solid #5776a5;border-radius:11px;color:#e8f0ff;background:#172f54}
.savori-voice-root .savori-voice-actions,.savori-voice-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:0}
.savori-voice-choices{margin-bottom:14px;padding:9px;border:1px solid #eccd86;border-radius:12px}
.savori-voice-actions button,.savori-voice-choices button{min-width:0;min-height:56px;display:flex;align-items:center;gap:8px;text-align:left;border:1px solid #506c96;border-radius:12px;background:#172d4e;color:#f4f7ff;font-size:12px;line-height:1.45;padding:10px;overflow-wrap:anywhere;word-break:keep-all}
.sv-menu-icon{display:grid;place-items:center;flex-shrink:0;width:26px;height:26px;color:#ffdf95;background:#263f66;border-radius:8px;font-size:20px}.sv-menu-label{min-width:0}
.savori-voice-actions button[data-savori-target=camera],.savori-voice-actions button[data-savori-target=spaces]{border-color:#a3bbdd;background:#214170}
.savori-voice-root .savori-voice-controls{display:flex;gap:8px;flex-shrink:0;padding:11px 14px max(11px,env(safe-area-inset-bottom));border-top:1px solid #476083;background:#102443}
.savori-voice-mic{flex:1;min-height:46px;padding:9px 12px;border:0;border-radius:12px;background:#f3d483;color:#0b1b35;font-weight:800}.savori-voice-mic.is-listening{background:#b5ead0}
.savori-voice-help{min-height:46px;padding:8px 11px;border:1px solid #9cb2d2;border-radius:12px;background:#203d64;color:white;font-size:12px}
.savori-voice-root :focus-visible{outline:3px solid #ffdf95;outline-offset:3px}
@media(max-width:760px){.savori-voice-root .savori-voice-panel{inset:auto 8px 8px 8px!important;width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;height:min(680px,calc(100vh - 16px));height:min(680px,calc(100dvh - 16px));max-height:calc(100dvh - 16px)!important;border-radius:16px}.savori-voice-launch{width:50px;height:66px}.savori-voice-root .savori-voice-head{padding:12px}.savori-voice-body{padding:12px}.savori-voice-title h2{font-size:18px}.savori-voice-actions button{font-size:12px;padding:9px 8px}.sv-menu-icon{width:23px;height:23px;font-size:18px}.savori-voice-controls{padding-inline:12px}}
@media(max-height:420px){.savori-voice-title p{display:none}.savori-voice-root .savori-voice-head{padding:8px 12px}.savori-voice-root .savori-voice-controls{padding:7px 12px}.savori-voice-examples{display:none}}
@media(prefers-reduced-motion:reduce){.savori-voice-root *{scroll-behavior:auto!important;animation:none!important}}

/* Saebori quick choices: the main menu, art rental and artwork stories. */
.savori-voice-root button[data-savori-target="products"],
.savori-voice-root button[data-savori-target="collection"],
.savori-voice-root button[data-savori-target="store"],
.savori-voice-root button[data-savori-target="frame"],
.savori-voice-root button[data-savori-target="memory"],
.savori-voice-root button[data-savori-target="studio"],
.savori-voice-root button[data-savori-target="my"],
.savori-voice-root button[data-savori-target="spaces"],
.savori-voice-root button[data-savori-target="rental"],
.savori-voice-root button[data-savori-target="story"]{background:#f3d483;color:#102343;border-color:#f3d483;font-weight:700;}
.savori-voice-root button[data-savori-target="products"] .sv-menu-icon,
.savori-voice-root button[data-savori-target="collection"] .sv-menu-icon,
.savori-voice-root button[data-savori-target="store"] .sv-menu-icon,
.savori-voice-root button[data-savori-target="frame"] .sv-menu-icon,
.savori-voice-root button[data-savori-target="memory"] .sv-menu-icon,
.savori-voice-root button[data-savori-target="studio"] .sv-menu-icon,
.savori-voice-root button[data-savori-target="my"] .sv-menu-icon,
.savori-voice-root button[data-savori-target="spaces"] .sv-menu-icon,
.savori-voice-root button[data-savori-target="rental"] .sv-menu-icon,
.savori-voice-root button[data-savori-target="story"] .sv-menu-icon{color:#102343;background:#e7c570;}
@media(hover:hover){
.savori-voice-root button[data-savori-target="products"]:hover,
.savori-voice-root button[data-savori-target="collection"]:hover,
.savori-voice-root button[data-savori-target="store"]:hover,
.savori-voice-root button[data-savori-target="frame"]:hover,
.savori-voice-root button[data-savori-target="memory"]:hover,
.savori-voice-root button[data-savori-target="studio"]:hover,
.savori-voice-root button[data-savori-target="my"]:hover,
.savori-voice-root button[data-savori-target="spaces"]:hover,
.savori-voice-root button[data-savori-target="rental"]:hover,
.savori-voice-root button[data-savori-target="story"]:hover{background:#ffe3a0;border-color:#ffe3a0;color:#102343;}
}
