@font-face{font-family:Poppins;src:url(/fonts/v1/poppins-latin-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;src:url(/fonts/v1/poppins-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;src:url(/fonts/v1/poppins-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Open Sans;src:url(/fonts/v1/open-sans-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Open Sans;src:url(/fonts/v1/open-sans-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Open Sans;src:url(/fonts/v1/open-sans-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans KR;src:url(/fonts/v1/noto-sans-kr-korean-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+1100-11FF,U+3000-303F,U+3130-318F,U+A960-A97F,U+AC00-D7AF,U+D7B0-D7FF,U+FF00-FFEF}@font-face{font-family:Noto Sans KR;src:url(/fonts/v1/noto-sans-kr-korean-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+1100-11FF,U+3000-303F,U+3130-318F,U+A960-A97F,U+AC00-D7AF,U+D7B0-D7FF,U+FF00-FFEF}@font-face{font-family:Noto Sans KR;src:url(/fonts/v1/noto-sans-kr-korean-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+1100-11FF,U+3000-303F,U+3130-318F,U+A960-A97F,U+AC00-D7AF,U+D7B0-D7FF,U+FF00-FFEF}:root{--fs-bump: 0px}html[lang^=ja],html[lang^=zh]{--fs-bump: 1px}:root{--th-app: #0d1b2a;--th-panel: #16213e;--th-sec: #0f3460;--th-form: #0a1e3a;--th-border: #1a3a5c;--th-border2: #335580;--th-text-hi: #a0c4ff;--th-text: #cce0ff;--th-text-dim: #607b96;--th-text-mute: #8fa8c8;--th-white: #fff;--b-4a90d9: #4a90d9;--b-4a90d9-rgb: 74, 144, 217;--th-app-rgb: 10, 20, 40;--th-vp-rgb: 10, 20, 40;--th-sec-rgb: 15, 52, 96;--th-accent: #e94560;--th-text-soft: #c8daf0;--th-card-rgb: 10, 18, 35;--b-3a9de9: #3a9de9;--b-3a9de9-rgb: 58, 157, 233;--b-0a2240: #0a2240;--b-7eb8f7: #7eb8f7;--b-4a7aaa: #4a7aaa;--b-4a6a8a: #4a6a8a;--b-b0c4de: #b0c4de}html[data-theme=gray]{--th-app: #141414;--th-panel: #1e1e1e;--th-sec: #2b2b2b;--th-form: #191919;--th-border: #3a3a3a;--th-border2: #5c5c5c;--th-text-hi: #d6d6d6;--th-text: #e4e4e4;--th-text-dim: #8e8e8e;--th-text-mute: #adadad;--b-4a90d9: #838383;--b-4a90d9-rgb: 131, 131, 131;--th-app-rgb: 20, 20, 20;--th-vp-rgb: 28, 28, 28;--b-0a2240: #1e1e1e;--b-7eb8f7: #aeaeae;--b-4a7aaa: #717171;--b-4a6a8a: #646464;--b-b0c4de: #c1c1c1;--th-sec-rgb: 58, 58, 58;--th-text-soft: #dadada;--th-card-rgb: 24, 24, 24;--b-3a9de9: #888888;--b-3a9de9-rgb: 136, 136, 136}html[data-theme=light]{--th-app: #eef2f8;--th-panel: #e4eaf3;--th-sec: #d7e2f0;--th-form: #f5f8fc;--th-border: #b4c4d8;--th-border2: #8aa4c2;--th-text-hi: #1d4e96;--th-text: #22354f;--th-text-dim: #647892;--th-text-mute: #4e6a8e;--th-white: #182a44;--b-4a90d9: #266cb5;--b-4a90d9-rgb: 38, 108, 181;--th-app-rgb: 238, 242, 248;--th-vp-rgb: 238, 243, 250;--b-0a2240: #bfd7f5;--b-7eb8f7: #084281;--b-4a7aaa: #5585b5;--b-4a6a8a: #7595b5;--b-b0c4de: #21354f;--th-sec-rgb: 215, 226, 240;--th-text-soft: #2a3f5c;--th-card-rgb: 245, 248, 252;--b-3a9de9: #1679c5;--b-3a9de9-rgb: 22, 121, 197}html[data-theme=lightpink]{--th-app: #fbeef3;--th-panel: #f7e3eb;--th-sec: #f3d7e2;--th-form: #fdf4f8;--th-border: #dcb8c8;--th-border2: #c890a8;--th-text-hi: #a02c5c;--th-text: #4e2236;--th-text-dim: #96647a;--th-text-mute: #8e4e6a;--th-white: #44182e;--b-4a90d9: #b52659;--b-4a90d9-rgb: 181, 38, 89;--th-app-rgb: 251, 238, 243;--th-vp-rgb: 250, 238, 244;--b-0a2240: #f5bfd2;--b-7eb8f7: #810834;--b-4a7aaa: #b55578;--b-4a6a8a: #b5758c;--b-b0c4de: #4f2132;--th-sec-rgb: 243, 215, 226;--th-text-soft: #5c2a40;--th-card-rgb: 253, 244, 248;--b-3a9de9: #c51655;--b-3a9de9-rgb: 197, 22, 85}html[data-theme=ds-light]{color-scheme:light;--th-accent: #1f2a44;--th-app: #f4f4f5;--th-app-rgb: 244, 244, 245;--th-base-text: #1f2a44;--th-border: #e4e7ec;--th-border2: #cfd4dc;--th-card-rgb: 255, 255, 255;--th-card2-rgb: 244, 244, 245;--th-deep: #eef0f3;--th-form: #ffffff;--th-glow-rgb: 31, 42, 68;--th-panel: #ffffff;--th-sec: #eef0f3;--th-sec-rgb: 238, 240, 243;--th-tabbar: #eef0f3;--th-text: #1f2a44;--th-text-dim: #596173;--th-text-hi: #1f2a44;--th-text-mute: #596173;--th-text-soft: #2a3756;--th-vp-rgb: 255, 255, 255;--th-white: #1f2a44;--ds-accent: #1f2a44;--ds-accent-hover: #1f2a44;--ds-accent-hover-rgb: 31, 42, 68;--ds-accent-rgb: 31, 42, 68;--ds-backdrop: rgba(29, 40, 66, .8);--ds-bg: #f4f4f5;--ds-blur: none;--ds-c-000000: #1d2842;--ds-c-000000-rgb: 29, 40, 66;--ds-c-0a1e3a: #ffffff;--ds-c-0a1e3a-rgb: 255, 255, 255;--ds-c-1a3a5c: #cfd4dc;--ds-c-1a3a5c-rgb: 207, 212, 220;--ds-c-607b96: #596173;--ds-c-607b96-rgb: 89, 97, 115;--ds-c-b388e0: #7a4fc0;--ds-c-b388e0-rgb: 122, 79, 192;--ds-c-c73652: #c22d4a;--ds-c-c73652-rgb: 194, 45, 74;--ds-c-ffffff: #ffffff;--ds-c-ffffff-rgb: 255, 255, 255;--ds-card: #ffffff;--ds-curve-grid: rgba(31, 42, 68, .18);--ds-curve-point: #1f8a5b;--ds-danger: #c22d4a;--ds-danger-bg: #fde8ec;--ds-danger-line: #f2b8c4;--ds-danger-rgb: 194, 45, 74;--ds-disabled-bg: #eef0f3;--ds-disabled-text: #8a93a5;--ds-focus: #fbbd3a;--ds-font: "Open Sans", "Noto Sans KR", "Segoe UI", "Malgun Gothic", "Apple SD Gothic Neo", "Yu Gothic UI", "Meiryo", "Microsoft YaHei", "Noto Sans CJK KR", system-ui, sans-serif;--ds-font-head: "Poppins", "Noto Sans KR", "Segoe UI", "Malgun Gothic", "Apple SD Gothic Neo", "Yu Gothic UI", "Meiryo", "Microsoft YaHei", "Noto Sans CJK KR", system-ui, sans-serif;--ds-glow: none;--ds-head: #ffffff;--ds-hover: #f4f4f5;--ds-info: #2f6fb0;--ds-info-bg: #e6f0fa;--ds-info-line: #b5cfec;--ds-label-hi: #1747c8;--ds-line: #e4e7ec;--ds-line-strong: #cfd4dc;--ds-link: #1f2a44;--ds-na: #596173;--ds-na-bg: #f4f4f5;--ds-na-line: #e4e7ec;--ds-ok: #17734b;--ds-ok-bg: #e3f4ec;--ds-ok-line: #a7dcc3;--ds-on-info: #ffffff;--ds-on-primary: #1f2a44;--ds-on-select: #ffffff;--ds-orange: #9a5000;--ds-orange-bg: #fdeedd;--ds-orange-line: #f1c79a;--ds-paid: #9a6f08;--ds-panel: #ffffff;--ds-press: #e4e7ec;--ds-primary: #fbbd3a;--ds-primary-hover: #ffcb5e;--ds-primary-rgb: 251, 189, 58;--ds-r: 0;--ds-select: #1f2a44;--ds-select-rgb: 31, 42, 68;--ds-select-tint: #fff6e0;--ds-shadow-card: 0 1px 2px rgba(20, 30, 60, .09);--ds-shadow-pop: 0 18px 40px rgba(10, 18, 36, .25);--ds-switch-off: #cfd4dc;--ds-teal: #1a6e63;--ds-teal-bg: #e0f3f0;--ds-teal-line: #a8d9d1;--ds-text: #1f2a44;--ds-text-2: #596173;--ds-text-3: #596173;--ds-tip-bg: #1f2a44;--ds-tip-line: #1f2a44;--ds-tip-text: #ffffff;--ds-topbar-bg: #11182a;--ds-topbar-btn: #fbbd3a;--ds-topbar-btn-text: #1f2a44;--ds-topbar-line: #11182a;--ds-topbar-text: #c9d0dd;--ds-topbar-x: #9aa4b8;--ds-warn: #9a6400;--ds-warn-bg: #fff6e0;--ds-warn-line: #f1d48a;--ds-win-bg: #ffffff;--ds-win-line: #e4e7ec;--ds-win-sec: #eef0f3;--ds-win-sec-rgb: 238, 240, 243;--ds-win-shadow: 0 18px 40px rgba(10, 18, 36, .25);--b-0a2240: #d3d8e1;--b-3a9de9: #445d97;--b-3a9de9-rgb: 68, 93, 151;--b-4a6a8a: #828fa8;--b-4a7aaa: #5772b3;--b-4a90d9: #445d97;--b-4a90d9-rgb: 68, 93, 151;--b-7eb8f7: #2a3a5f;--b-b0c4de: #232f4d}html[data-theme=ds-gray]{color-scheme:dark;--th-accent: #fbbd3a;--th-app: #232323;--th-app-rgb: 35, 35, 35;--th-base-text: #ededed;--th-border: #3c3c3c;--th-border2: #4b4b4b;--th-card-rgb: 42, 42, 42;--th-card2-rgb: 37, 37, 37;--th-deep: #1c1c1c;--th-form: #303030;--th-glow-rgb: 251, 189, 58;--th-panel: #2a2a2a;--th-sec: #383838;--th-sec-rgb: 56, 56, 56;--th-tabbar: #232323;--th-text: #ededed;--th-text-dim: #a4a4a4;--th-text-hi: #ffffff;--th-text-mute: #b3b3b3;--th-text-soft: #d0d0d0;--th-vp-rgb: 35, 35, 35;--th-white: #ffffff;--ds-accent: #fbbd3a;--ds-accent-hover: #4b4b4b;--ds-accent-hover-rgb: 75, 75, 75;--ds-accent-rgb: 251, 189, 58;--ds-backdrop: rgba(8, 8, 8, .8);--ds-bg: #232323;--ds-blur: none;--ds-c-000000: #121212;--ds-c-000000-rgb: 18, 18, 18;--ds-c-0a1e3a: #262626;--ds-c-0a1e3a-rgb: 38, 38, 38;--ds-card: #303030;--ds-curve-grid: rgba(208, 208, 208, .18);--ds-curve-point: #5fd39a;--ds-danger: #ff7a8f;--ds-danger-bg: rgba(194, 45, 74, .22);--ds-danger-line: rgba(255, 122, 143, .45);--ds-danger-rgb: 255, 122, 143;--ds-disabled-bg: #343434;--ds-disabled-text: #7a7a7a;--ds-focus: #fbbd3a;--ds-font: "Open Sans", "Noto Sans KR", "Segoe UI", "Malgun Gothic", "Apple SD Gothic Neo", "Yu Gothic UI", "Meiryo", "Microsoft YaHei", "Noto Sans CJK KR", system-ui, sans-serif;--ds-font-head: "Poppins", "Noto Sans KR", "Segoe UI", "Malgun Gothic", "Apple SD Gothic Neo", "Yu Gothic UI", "Meiryo", "Microsoft YaHei", "Noto Sans CJK KR", system-ui, sans-serif;--ds-glow: none;--ds-head: #2a2a2a;--ds-hover: #383838;--ds-info: #7fb2ff;--ds-info-bg: rgba(127, 178, 255, .14);--ds-info-line: rgba(127, 178, 255, .4);--ds-label-hi: #ffffff;--ds-line: #3c3c3c;--ds-line-strong: #4b4b4b;--ds-link: #ffcb5e;--ds-na: #a4a4a4;--ds-na-bg: #303030;--ds-na-line: #4b4b4b;--ds-ok: #5fd39a;--ds-ok-bg: rgba(95, 211, 154, .15);--ds-ok-line: rgba(95, 211, 154, .4);--ds-on-info: #2a2a2a;--ds-on-primary: #2a2a2a;--ds-on-select: #2a2a2a;--ds-orange: #ffb070;--ds-orange-bg: rgba(255, 176, 112, .14);--ds-orange-line: rgba(255, 176, 112, .4);--ds-paid: #f0c15c;--ds-panel: #2a2a2a;--ds-press: #424242;--ds-primary: #fbbd3a;--ds-primary-hover: #ffcb5e;--ds-primary-rgb: 251, 189, 58;--ds-r: 0;--ds-select: #fbbd3a;--ds-select-rgb: 251, 189, 58;--ds-select-tint: rgba(251, 189, 58, .14);--ds-shadow-card: 0 1px 2px rgba(31, 31, 31, .09);--ds-shadow-pop: 0 18px 40px rgba(18, 18, 18, .25);--ds-switch-off: #4b4b4b;--ds-teal: #6fd6c6;--ds-teal-bg: rgba(111, 214, 198, .14);--ds-teal-line: rgba(111, 214, 198, .4);--ds-text: #ededed;--ds-text-2: #d0d0d0;--ds-text-3: #a4a4a4;--ds-tip-bg: #161616;--ds-tip-line: #4b4b4b;--ds-tip-text: #ffffff;--ds-topbar-bg: #181818;--ds-topbar-btn: #fbbd3a;--ds-topbar-btn-text: #2a2a2a;--ds-topbar-line: #181818;--ds-topbar-text: #d0d0d0;--ds-topbar-x: #a4a4a4;--ds-warn: #fbbd3a;--ds-warn-bg: rgba(251, 189, 58, .14);--ds-warn-line: rgba(251, 189, 58, .4);--ds-win-bg: #383838;--ds-win-line: #585858;--ds-win-sec: #434343;--ds-win-sec-rgb: 67, 67, 67;--ds-win-shadow: 0 24px 60px rgba(0, 0, 0, .6);--b-0a2240: #1e1e1e;--b-3a9de9: #888888;--b-3a9de9-rgb: 136, 136, 136;--b-4a6a8a: #646464;--b-4a7aaa: #717171;--b-4a90d9: #838383;--b-4a90d9-rgb: 131, 131, 131;--b-7eb8f7: #aeaeae;--b-b0c4de: #c1c1c1}*{margin:0;padding:0;box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}html,body{width:100%;height:100%;overflow:hidden;background:var(--th-app);font-family:var(--ds-font, "Segoe UI", sans-serif);color:var(--th-text)}body{display:flex;flex-direction:column}#viewer-toolbar{flex:0 0 auto;height:44px;display:flex;align-items:center;gap:6px;padding:0 10px;background:var(--th-tabbar);border-bottom:1px solid var(--th-border);position:relative;z-index:65}#topLeftBtns{display:flex;align-items:center;gap:6px}#toolbarRight{margin-left:auto;display:flex;align-items:center;gap:6px}#modelInfoBtnWrap,#aboutBtnWrap{position:relative}body.panel-open #topLeftBtns,body.panel-open #toolbarRight{pointer-events:none;opacity:.4}#app{width:100%;flex:1;min-height:0;display:flex;position:relative}#canvas{flex:1;display:block;min-width:0;min-height:0;width:100%;height:100%}#viewportBtns{position:absolute;top:12px;right:272px;display:flex;gap:8px;z-index:20}.vp-btn{position:relative;height:30px;padding:0;background:rgba(var(--th-vp-rgb),.75);border:1px solid var(--th-border2);border-radius:var(--ds-r, 7px);cursor:pointer;-webkit-backdrop-filter:var(--ds-blur, blur(6px));backdrop-filter:var(--ds-blur, blur(6px));display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s,box-shadow .15s;overflow:visible;width:auto;width:30px}.of-inline{width:16px;height:16px;object-fit:contain}.vp-btn img{width:22px;height:22px;object-fit:contain;opacity:.45;transition:opacity .15s,filter .15s;filter:grayscale(60%);display:block}.vp-btn:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.25);border-color:var(--ds-accent-hover, #e94560)}.vp-btn:hover img{opacity:.85;filter:grayscale(0%)}.vp-btn.vp-btn-active{background:rgba(var(--ds-select-rgb, 233,69,96),.22);border-color:var(--ds-select, #e94560);box-shadow:var(--ds-glow, 0 0 8px rgba(233, 69, 96, .5))}html[data-theme=light]{--vp-under: #d1d1e5}html[data-theme=lightpink]{--vp-under: #e5d1d8}html:is([data-theme=light],[data-theme=lightpink]) :is(#viewportBtns .vp-btn){background:color-mix(in srgb,rgb(var(--th-vp-rgb)) 75%,var(--vp-under))}html:is([data-theme=light],[data-theme=lightpink]) :is(#viewportBtns .vp-btn):hover{background:color-mix(in srgb,rgb(var(--ds-accent-hover-rgb, 233,69,96)) 25%,var(--vp-under))}html:is([data-theme=light],[data-theme=lightpink]) :is(#viewportBtns .vp-btn).vp-btn-active{background:color-mix(in srgb,rgb(var(--ds-select-rgb, 233,69,96)) 22%,var(--vp-under))}.vp-btn.vp-btn-active img{opacity:1;filter:grayscale(0%)}.vp-btn.vp-btn-active:after{content:"";position:absolute;bottom:-4px;right:-4px;width:8px;height:8px;background:var(--ds-select, #e94560);border-radius:50%;border:1px solid var(--th-app)}.vp-label{position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%);background:rgba(var(--th-vp-rgb),.92);color:var(--th-text-hi);font-size:calc(11px + var(--fs-bump));font-weight:600;white-space:nowrap;padding:3px 7px;border-radius:var(--ds-r, 4px);border:1px solid var(--th-border2);pointer-events:none;opacity:0;transition:opacity .15s}.vp-btn:hover .vp-label{opacity:1}#panel{width:260px;min-width:260px;height:100%;background:var(--th-panel);border-left:1px solid var(--th-sec);overflow:hidden;padding:0 0 16px;display:flex;flex-direction:column;gap:0;z-index:10}#panelBody{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:8px;padding:10px 16px 16px}.section{background:var(--th-sec);border-radius:var(--ds-r, 8px);padding:12px;display:flex;flex-direction:column;gap:8px;flex-shrink:0}#cameraBtnWrap{position:relative}#cameraDropdown{position:absolute;top:calc(100% + 8px);left:0;background:rgba(var(--th-vp-rgb),.92);border:1px solid var(--th-border2);border-radius:var(--ds-r, 8px);overflow:hidden;z-index:40;-webkit-backdrop-filter:var(--ds-blur, blur(8px));backdrop-filter:var(--ds-blur, blur(8px));box-shadow:var(--ds-shadow-pop, 0 4px 20px rgba(0,0,0,.5));animation:popupFadeIn .15s ease;min-width:110px}.camera-option{display:flex;align-items:center;gap:6px;width:100%;padding:8px 14px;background:transparent;border:none;border-radius:0;color:var(--th-text-dim);font-size:calc(12px + var(--fs-bump));font-weight:500;cursor:pointer;text-align:left;transition:background .12s,color .12s;white-space:nowrap}.camera-option:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.2);color:var(--ds-c-ffffff, #fff)}.camera-option-active{color:var(--ds-select, #e94560)!important;font-weight:700;background:rgba(var(--ds-select-rgb, 233,69,96),.1)!important}.camera-option+.camera-option{border-top:1px solid var(--th-border)}#btnCamera:active img{opacity:1;filter:grayscale(0%) brightness(1.3)}.section h3{font-size:calc(13px + var(--fs-bump));font-weight:600;color:var(--th-text-hi);text-transform:uppercase;letter-spacing:.05em}.file-label{display:flex;align-items:center;gap:8px;background:var(--ds-accent, #e94560);color:#fff;padding:8px 12px;border-radius:var(--ds-r, 6px);cursor:pointer;font-size:calc(13px + var(--fs-bump));font-weight:600;transition:background .2s}.file-label:hover{background:var(--ds-c-c73652, #c73652)}.file-label span[data-i18n=fileOpen]{white-space:pre-line;line-height:1.3;text-align:left}.file-label input[type=file]{display:none}#viewportHint{position:absolute;top:50%;left:0;right:260px;transform:translateY(-50%);font-size:calc(13px + var(--fs-bump));color:var(--th-text-dim);text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none;--th-text-dim: #8e8e8e}.meta-mi-header{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px}.meta-thumb-wrap{width:30px;height:30px;flex-shrink:0;background:rgba(var(--th-vp-rgb),.8);border:1px solid var(--th-border);border-radius:4px;overflow:hidden}.meta-thumbnail{width:30px;height:30px;object-fit:cover;display:block}.meta-header-info{flex:1}.meta-ver-label{font-size:calc(10px + var(--fs-bump));font-weight:700;color:var(--th-text-dim)}.meta-ver-val{font-size:calc(11px + var(--fs-bump));font-weight:600;color:var(--b-7eb8f7)}#metaInfo{font-size:calc(12px + var(--fs-bump));color:var(--th-text-dim);line-height:1.7;word-break:break-all}#lightBtnWrap,#langBtnWrap,#themeBtnWrap,#bgBtnWrap{position:relative}#bgDropdown{position:absolute;top:calc(100% + 8px);left:50%;translate:-50% 0;background:rgba(var(--th-vp-rgb),.97);border:1px solid var(--th-border2);border-radius:var(--ds-r, 8px);padding:4px 0;z-index:100;-webkit-backdrop-filter:var(--ds-blur, blur(8px));backdrop-filter:var(--ds-blur, blur(8px));min-width:110px}.bg-option{display:flex;align-items:center;width:100%;padding:7px 14px;background:transparent;border:none;color:var(--th-text);font-size:calc(12px + var(--fs-bump));cursor:pointer;white-space:nowrap}.bg-option:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.2);color:var(--ds-c-ffffff, #fff)}.bg-option-active{color:var(--ds-select, #e94560)!important;font-weight:700;background:rgba(var(--ds-select-rgb, 233,69,96),.1)!important}.bg-option+.bg-option{border-top:1px solid var(--th-border)}#sysMsgOverlay{position:absolute;top:0;right:260px;bottom:0;left:0;background:rgba(var(--ds-c-000000-rgb, 0,0,0),.65);display:flex;align-items:center;justify-content:center;z-index:400;-webkit-backdrop-filter:var(--ds-blur, blur(4px));backdrop-filter:var(--ds-blur, blur(4px))}#sysMsgPopup{background:rgba(var(--th-vp-rgb),.97);border:1px solid var(--ds-accent, #e94560);border-radius:var(--ds-r, 14px);width:auto;min-width:340px;max-width:min(90vw,640px);padding:36px 32px 28px;display:flex;flex-direction:column;align-items:center;gap:18px;box-shadow:var(--ds-shadow-pop, 0 8px 40px rgba(233, 69, 96, .25), 0 4px 20px rgba(0,0,0,.7));animation:popupFadeIn .2s ease}#sysMsgIcon{font-size:calc(36px + var(--fs-bump));line-height:1;color:var(--ds-accent, #e94560)}#sysMsgText{font-size:calc(14px + var(--fs-bump));color:var(--th-text);text-align:center;line-height:1.7;word-break:keep-all}#sysMsgClose{width:auto;min-width:100px;padding:7px 24px;border:1px solid var(--ds-danger, #e94560);border-radius:var(--ds-r, 20px);background:transparent;color:var(--ds-danger, #e94560);font-size:calc(13px + var(--fs-bump));font-weight:600;cursor:pointer;transition:background .15s,color .15s}#sysMsgClose:hover{background:rgba(var(--ds-danger-rgb, 233,69,96),.18);color:var(--ds-c-ffffff, #fff)}@media (max-width: 768px){#tbLogoSlot{display:none}#sysMsgOverlay{top:0;right:0;bottom:0;left:0}#sysMsgPopup{width:auto;min-width:0;max-width:88vw}}#aboutOverlay{position:absolute;top:0;right:260px;bottom:0;left:0;background:rgba(var(--ds-c-000000-rgb, 0,0,0),.55);display:flex;align-items:center;justify-content:center;z-index:300;-webkit-backdrop-filter:var(--ds-blur, blur(3px));backdrop-filter:var(--ds-blur, blur(3px))}#aboutPopup{position:relative;background:rgba(var(--th-vp-rgb),.97);border:1px solid var(--th-border2);border-radius:var(--ds-r, 14px);width:340px;height:420px;display:flex;flex-direction:column;box-shadow:var(--ds-shadow-pop, 0 8px 40px rgba(0,0,0,.7));overflow:hidden}#aboutContent{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}#aboutHeader{flex-shrink:0;padding:24px 28px 16px;border-bottom:1px solid var(--th-border)}#aboutBody{flex:1;overflow-y:auto;padding:0 28px 20px}#aboutBody::-webkit-scrollbar{width:4px}#aboutBody::-webkit-scrollbar-track{background:transparent}#aboutBody::-webkit-scrollbar-thumb{background:var(--th-border2);border-radius:2px}#aboutTitle{font-size:calc(20px + var(--fs-bump));font-weight:800;color:var(--th-text-hi);letter-spacing:.04em;text-align:center;margin-bottom:0}#aboutSubtitle{font-size:calc(13px + var(--fs-bump));font-weight:700;color:var(--th-text-hi);opacity:.85;letter-spacing:.04em;text-align:center;margin-bottom:4px}#aboutVersion{font-size:calc(12px + var(--fs-bump));color:var(--th-text-dim);text-align:center;margin-bottom:10px}.about-divider{height:1px;background:var(--th-border);margin:12px 0}.about-section-title{font-size:calc(10px + var(--fs-bump));color:var(--th-text-dim);letter-spacing:.08em;margin-bottom:8px}.about-link-list{list-style:none;display:flex;flex-direction:column;gap:6px}.about-link-list li{font-size:calc(12px + var(--fs-bump));display:flex;align-items:center;gap:6px}.about-link-list a{color:var(--th-text-hi);text-decoration:none}.about-link-list a:hover{text-decoration:underline;color:var(--ds-accent-hover, #e94560)}.about-link-list span{color:var(--th-text-dim);font-size:calc(11px + var(--fs-bump))}.about-plain{color:var(--th-text);font-size:calc(12px + var(--fs-bump))}#aboutCopyright{font-size:calc(10px + var(--fs-bump));color:var(--th-text-dim);text-align:center;margin-top:8px}#aboutCopyright a{color:var(--th-text-hi);text-decoration:none}#aboutCopyright a:hover{color:var(--ds-accent-hover, #e94560);text-decoration:underline}#aboutDonate{margin-top:14px;padding-top:12px;border-top:1px solid var(--th-border);display:flex;flex-direction:column;align-items:center;gap:8px}#aboutDonateLabel{font-size:calc(10px + var(--fs-bump));color:var(--th-text-dim);letter-spacing:.06em}#aboutDonateBtnWrap{display:flex;gap:8px}#aboutDonateBtn{background:var(--th-border);color:var(--th-text-hi);border:1px solid var(--th-border2);border-radius:var(--ds-r, 20px);padding:6px 18px;font-size:calc(12px + var(--fs-bump));font-weight:600;cursor:pointer;transition:background .15s,color .15s,border-color .15s}#aboutDonateBtn:hover{background:var(--th-sec);color:var(--th-white);border-color:var(--b-4a7aaa)}#viewportCopyright{position:absolute;bottom:8px;left:8px;font-size:calc(10px + var(--fs-bump));color:var(--ds-c-ffffff, #ffffff);z-index:20;pointer-events:none;-webkit-user-select:none;user-select:none}.vp-label-up{top:auto;bottom:calc(100% + 7px)}.vp-label-down{top:calc(100% + 7px);bottom:auto;left:50%;transform:translate(-50%)}#lightDropdown{position:absolute;top:calc(100% + 8px);left:50%;translate:-50% 0;background:rgba(var(--th-vp-rgb),.92);border:1px solid var(--th-border2);border-radius:var(--ds-r, 8px);overflow:hidden;z-index:40;-webkit-backdrop-filter:var(--ds-blur, blur(8px));backdrop-filter:var(--ds-blur, blur(8px));box-shadow:var(--ds-shadow-pop, 0 4px 20px rgba(0,0,0,.5));animation:popupFadeIn .15s ease;min-width:100px}.light-option{display:flex;align-items:center;gap:6px;width:100%;padding:8px 14px;background:transparent;border:none;border-radius:0;color:var(--th-text-dim);font-size:calc(12px + var(--fs-bump));font-weight:500;cursor:pointer;text-align:left;transition:background .12s,color .12s;white-space:nowrap}.light-option:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.2);color:var(--ds-c-ffffff, #fff)}.light-option-active{color:var(--ds-select, #e94560)!important;font-weight:700;background:rgba(var(--ds-select-rgb, 233,69,96),.1)!important}.light-option+.light-option{border-top:1px solid var(--th-border)}#langDropdown,#themeDropdown{position:absolute;top:calc(100% + 8px);bottom:auto;right:0;left:auto;background:rgba(var(--th-vp-rgb),.92);border:1px solid var(--th-border2);border-radius:var(--ds-r, 8px);overflow:hidden;z-index:40;-webkit-backdrop-filter:var(--ds-blur, blur(8px));backdrop-filter:var(--ds-blur, blur(8px));box-shadow:var(--ds-shadow-pop, 0 4px 20px rgba(0,0,0,.5));animation:popupFadeIn .15s ease;min-width:110px}.lang-option{display:flex;align-items:center;width:100%;padding:8px 14px;background:transparent;border:none;border-radius:0;color:var(--th-text-dim);font-size:calc(12px + var(--fs-bump));font-weight:500;cursor:pointer;text-align:left;transition:background .12s,color .12s;white-space:nowrap}.lang-option:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.2);color:var(--ds-c-ffffff, #fff)}.lang-option-active{color:var(--ds-select, #e94560)!important;font-weight:700;background:rgba(var(--ds-select-rgb, 233,69,96),.1)!important}.lang-option+.lang-option{border-top:1px solid var(--th-border)}.lang-option-flag{width:18px;height:18px;object-fit:cover;border-radius:2px;margin-right:8px;flex-shrink:0}.lang-btn-flag{display:block}.lang-btn-flag-img{width:18px;height:18px;object-fit:cover;border-radius:2px;display:block}#metaPopup{position:absolute;bottom:12px;right:272px;background:rgba(var(--th-vp-rgb),.92);border:1px solid var(--th-border2);border-radius:var(--ds-r, 10px);padding:14px 16px;min-width:220px;max-width:280px;z-index:30;-webkit-backdrop-filter:var(--ds-blur, blur(8px));backdrop-filter:var(--ds-blur, blur(8px));box-shadow:var(--ds-shadow-pop, 0 4px 24px rgba(0,0,0,.5), 0 0 0 1px rgba(233,69,96,.2));animation:popupFadeIn .15s ease}@keyframes popupFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}#metaPopupTitle{font-size:calc(12px + var(--fs-bump));font-weight:700;color:var(--ds-accent, #e94560);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--th-border)}#metaInfo{font-size:calc(12px + var(--fs-bump));color:var(--th-text-dim);line-height:1.8;word-break:break-all}#metaInfo strong{color:var(--th-text-hi)}.sample-list{display:flex;flex-direction:column;gap:4px;max-height:160px;overflow-y:auto;overflow-x:hidden}.sample-list::-webkit-scrollbar{width:4px}.sample-list::-webkit-scrollbar-track{background:transparent}.sample-list::-webkit-scrollbar-thumb{background:var(--th-border2);border-radius:2px}.sample-list::-webkit-scrollbar-thumb:hover{background:var(--ds-accent-hover, #e94560)}.sample-item{display:flex;align-items:center;gap:6px;padding:5px 8px;background:var(--b-0a2240);border:1px solid var(--th-border);border-radius:var(--ds-r, 5px);cursor:pointer;font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);transition:background .15s,border-color .15s,color .15s;text-align:left;word-break:break-all;line-height:1.3}.sample-item:hover{background:var(--th-border);border-color:var(--th-text-hi);color:var(--th-text)}.sample-item.active{background:var(--th-sec);border-color:var(--ds-select, #e94560);color:var(--ds-select, #e94560)}.sample-item .sample-icon{flex-shrink:0;font-size:calc(13px + var(--fs-bump))}.sample-empty{font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);text-align:left;padding:8px 0}#animSelect{width:100%;padding:5px 8px;background:var(--th-app);border:1px solid var(--th-border2);border-radius:var(--ds-r, 5px);color:var(--th-text);font-size:calc(12px + var(--fs-bump));cursor:pointer;outline:none;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}#animSelect:hover{border-color:var(--th-text-hi)}#animSelect:focus{border-color:var(--ds-select, #e94560)}#animSelect option{background:var(--th-app);color:var(--th-text)}#animControls{display:flex;flex-direction:column;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--th-border)}.anim-time-row{display:flex;justify-content:space-between;font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);font-family:Consolas,monospace}#animSeek{width:100%;accent-color:var(--ds-accent, #e94560);cursor:pointer}.anim-btn-row{display:flex;gap:4px}.anim-btn-row button{flex:1;padding:5px 4px;font-size:calc(11px + var(--fs-bump))}#blendShapeSection{flex:1;min-height:0;display:flex;flex-direction:column}#blendShapes{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:6px;padding-right:4px}#blendShapes::-webkit-scrollbar{width:4px}#blendShapes::-webkit-scrollbar-track{background:transparent}#blendShapes::-webkit-scrollbar-thumb{background:var(--th-border2);border-radius:2px}#blendShapes::-webkit-scrollbar-thumb:hover{background:var(--ds-accent-hover, #e94560)}.blend-item{display:flex;flex-direction:column;gap:2px}.blend-item label{font-size:calc(11px + var(--fs-bump));color:var(--th-text-hi);display:flex;justify-content:space-between}.blend-item input[type=range]{width:100%;accent-color:var(--ds-accent, #e94560);cursor:pointer}.blend-item-disabled label{color:var(--th-text-dim)}.blend-item-disabled input[type=range]{opacity:.25;cursor:not-allowed;accent-color:var(--th-text-dim)}button{background:var(--th-sec);color:var(--th-text);border:1px solid var(--ds-accent, #e94560);border-radius:var(--ds-r, 6px);padding:6px 12px;font-size:calc(12px + var(--fs-bump));cursor:pointer;transition:background .2s;width:100%}button:hover{background:var(--ds-accent-hover, #e94560);color:#fff}#panelBackdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(var(--ds-c-000000-rgb, 0,0,0),.55);z-index:49;-webkit-backdrop-filter:var(--ds-blur, blur(2px));backdrop-filter:var(--ds-blur, blur(2px))}#panelToggle{display:none;position:fixed;top:12px;right:12px;width:30px;height:30px;padding:0;background:rgba(var(--th-vp-rgb),.75);border:1px solid var(--th-border2);border-radius:var(--ds-r, 7px);color:var(--th-text);font-size:calc(15px + var(--fs-bump));line-height:1;cursor:pointer;z-index:60;align-items:center;justify-content:center;-webkit-backdrop-filter:var(--ds-blur, blur(6px));backdrop-filter:var(--ds-blur, blur(6px));transition:border-color .15s,background .15s,top .28s,right .28s}#panelToggle:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.25);border-color:var(--ds-accent-hover, #e94560);color:var(--ds-c-ffffff, #fff)}@media (max-width: 768px){.vp-btn{width:44px!important;height:44px;border-radius:var(--ds-r, 10px)}.vp-btn img{width:26px;height:26px}.vp-btn.vp-btn-active:after{bottom:-3px;right:-3px;width:9px;height:9px}#panelToggle{display:flex;position:absolute;width:44px;height:44px;font-size:calc(18px + var(--fs-bump));border-radius:var(--ds-r, 10px);top:12px;right:max(12px,env(safe-area-inset-right))}#langDropdown,#themeDropdown{max-width:calc(100vw - 20px)}body.panel-open #panelToggle{top:6px;right:6px}#viewportBtns{flex-direction:column;top:64px;right:max(12px,env(safe-area-inset-right));left:auto;gap:6px}#cameraDropdown,#bgDropdown,#lightDropdown{top:0;left:auto;right:calc(100% + 8px);transform:none;translate:none}#viewportCopyright{bottom:max(8px,calc(env(safe-area-inset-bottom) + 4px));left:max(8px,env(safe-area-inset-left))}#aboutOverlay{top:0;right:0;bottom:0;left:0}#aboutPopup{width:90vw;height:80vh;max-width:340px;max-height:420px}#metaPopup{bottom:max(12px,calc(env(safe-area-inset-bottom) + 6px));right:max(12px,env(safe-area-inset-right));top:auto;left:auto;max-width:calc(100vw - 80px)}#panel{position:fixed;top:0;right:0;height:100%;min-width:0;width:280px;transform:translate(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);z-index:50;box-shadow:var(--ds-shadow-pop, -6px 0 24px rgba(0, 0, 0, .6));overflow:hidden}body.panel-open #panel{transform:translate(0)}body.panel-open #panelBackdrop{display:block}#panelBody{padding-bottom:max(16px,calc(env(safe-area-inset-bottom) + 12px));-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.vp-label,#viewportHint{display:none}#blendShapes,.sample-list{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.section button,.file-label,#animSelect,.sample-item{min-height:40px;font-size:calc(13px + var(--fs-bump))}.blend-item input[type=range]{height:28px}}@media (max-width: 480px){#viewportBtns{align-items:flex-end;gap:6px}#panel{width:min(280px,88vw)}#aboutPopup{width:94vw;height:85vh;max-width:none;max-height:none}}@media (max-width: 480px) and (orientation: portrait){#viewportBtns{top:62px;gap:5px}#metaPopup{bottom:max(14px,calc(env(safe-area-inset-bottom) + 8px));right:8px;top:auto;left:8px;max-width:none;min-width:0}.sample-list{max-height:200px}#blendShapeSection{min-height:120px}}#adBanner{position:absolute;bottom:22px;left:0;right:260px;display:flex;justify-content:center;align-items:flex-end;pointer-events:none;z-index:15}#adBannerInner{width:min(1200px,calc(100% - 24px));min-width:600px;height:70px;background:rgba(var(--th-vp-rgb),.72);border:1.5px dashed var(--th-border2);border-radius:var(--ds-r, 8px);display:flex;align-items:center;justify-content:center;pointer-events:all;overflow:hidden}#adBannerLabel{font-size:calc(13px + var(--fs-bump));font-weight:600;letter-spacing:.12em;color:var(--b-4a6a8a);text-transform:uppercase;pointer-events:none}@media (max-width: 768px){#adBanner{right:0;bottom:54px}#adBannerInner{min-width:0;width:calc(100% - 16px)}}@media (max-width: 480px){#adBanner{bottom:50px}}#loading{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(var(--th-vp-rgb),.8);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;z-index:100;pointer-events:none;opacity:0;transition:opacity .3s}#loading.visible{opacity:1;pointer-events:all}.loading-spin-img{width:100px;height:100px;object-fit:contain;animation:initSpin 2s linear infinite}@keyframes initSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-label{font-size:calc(15px + var(--fs-bump));font-weight:600;color:var(--th-text-hi);letter-spacing:.1em}.st-row{display:flex;align-items:center;gap:6px;padding:2px 0}.st-name{flex:1;min-width:0;font-size:calc(11px + var(--fs-bump));color:var(--th-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-load{flex:none;width:auto;height:auto;padding:3px 10px;font-size:calc(11px + var(--fs-bump));cursor:pointer;background:rgba(var(--th-vp-rgb),.75);border:1px solid var(--th-border2);border-radius:var(--ds-r, 5px);color:var(--th-text);-webkit-backdrop-filter:none;backdrop-filter:none}.st-load:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.25);border-color:var(--ds-accent-hover, #e94560)}.st-load:disabled{opacity:.5;cursor:default}.st-note{font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);line-height:1.6}#storageBtnWrap{position:relative}#storageDropdown{position:absolute;top:calc(100% + 8px);left:0;width:400px;height:335px;padding:8px;box-sizing:border-box;background:rgba(var(--th-vp-rgb),.92);border:1px solid var(--th-border2);border-radius:var(--ds-r, 8px);z-index:9000;box-shadow:var(--ds-shadow-pop, 0 4px 20px rgba(0,0,0,.5));animation:popupFadeIn .15s ease;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}#storageDropdown>*{flex:0 0 auto}#storageDropdown::-webkit-scrollbar{width:4px}#storageDropdown::-webkit-scrollbar-thumb{background:var(--th-border2);border-radius:2px}#storageDropdown::-webkit-scrollbar-thumb:hover{background:var(--ds-accent-hover, #e94560)}.of-icon{display:block;width:20px;height:20px;object-fit:contain}.st-pager{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:auto;padding-top:6px}.st-pgbtn{width:30px;height:30px;padding:2px 10px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;font-size:calc(11px + var(--fs-bump));cursor:pointer;background:rgba(var(--th-vp-rgb),.75);border:1px solid var(--th-border2);border-radius:var(--ds-r, 7px);color:var(--th-text)}.st-pgbtn:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.25);border-color:var(--ds-accent-hover, #e94560)}.st-pgbtn:disabled{opacity:.4;cursor:default}.st-pglabel{font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);min-width:34px;text-align:center}.um-scrollbox::-webkit-scrollbar{width:4px;height:4px}.um-scrollbox::-webkit-scrollbar-track{background:transparent}.um-scrollbox::-webkit-scrollbar-thumb{background:var(--th-border2);border-radius:2px}.um-scrollbox::-webkit-scrollbar-thumb:hover{background:var(--ds-accent-hover, #e94560)}.um-scrollbox{scrollbar-width:thin;scrollbar-color:var(--th-border2) transparent}.um-btn{background:transparent;border:1px solid var(--b-4a90d9);color:var(--th-text-hi);border-radius:var(--ds-r, 12px);font-size:calc(11px + var(--fs-bump));cursor:pointer;transition:border-color .15s,color .15s,background .15s}.um-btn:hover{border-color:var(--th-text-hi);color:var(--th-white);background:rgba(var(--b-4a90d9-rgb),.2)}.um-btn:disabled{opacity:.5;cursor:default}.dl-stack{position:relative;width:183px;height:183px}.dl-out,.dl-in{position:absolute;object-fit:contain}.dl-in{top:calc(25% - 10px);left:25%;width:50%;height:50%;transform-origin:50% 70%;animation:dlTilt 1s ease-in-out infinite}.dl-out{top:-10%;left:-10%;width:120%;height:120%;animation:dlSpin 4s linear infinite}@keyframes dlSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dlTilt{0%,to{transform:rotate(-9deg)}50%{transform:rotate(9deg)}}@media (pointer: coarse){#tbLogoSlot{display:none}}@keyframes uiHintBlink{0%,to{background-color:rgba(var(--ds-c-b388e0-rgb, 179,136,224),0);box-shadow:none;border-color:var(--th-border2)}50%{background-color:rgba(var(--ds-c-b388e0-rgb, 179,136,224),.3);box-shadow:var(--ds-shadow-pop, inset 0 0 14px 5px rgba(179,136,224,.55), 0 0 10px rgba(179,136,224,.55));border-color:rgba(var(--ds-c-b388e0-rgb, 179,136,224),.95)}}.ui-hint-blink{animation:uiHintBlink .5s ease-in-out var(--hint-repeat, 8)!important;border-radius:var(--ds-r, 6px)}.ui-fadeout{opacity:0!important;transition:opacity .22s ease;pointer-events:none}@keyframes popupFadeIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}#sysMsgOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(var(--ds-c-000000-rgb, 0,0,0),.65);display:flex;align-items:center;justify-content:center;z-index:9600;-webkit-backdrop-filter:var(--ds-blur, blur(4px));backdrop-filter:var(--ds-blur, blur(4px))}#sysMsgPopup{background:rgba(var(--th-card-rgb),.97);border:1px solid var(--ds-accent, #e94560);border-radius:var(--ds-r, 14px);width:auto;min-width:300px;max-width:min(90vw,640px);padding:32px 28px 24px;display:flex;flex-direction:column;align-items:center;gap:16px;box-shadow:var(--ds-shadow-pop, 0 8px 40px rgba(233,69,96,.25), 0 4px 20px rgba(0,0,0,.7));animation:popupFadeIn .2s ease}#sysMsgPopup.sysMsg-success{border-color:var(--b-3a9de9);box-shadow:var(--ds-shadow-pop, 0 8px 40px rgba(var(--b-3a9de9-rgb),.25), 0 4px 20px rgba(0,0,0,.7))}#sysMsgIcon{font-size:calc(32px + var(--fs-bump));line-height:1;color:var(--ds-accent, #e94560)}#sysMsgPopup.sysMsg-success #sysMsgIcon{color:var(--b-3a9de9)}#sysMsgPopup.sysMsg-info{border-color:var(--th-border2)}#sysMsgPopup.sysMsg-info #sysMsgIcon{color:var(--th-text-hi)}#sysMsgText{font-size:calc(13px + var(--fs-bump));color:var(--th-text-soft);text-align:center;line-height:1.7;word-break:keep-all;white-space:pre-line}#sysMsgList{list-style:none;margin:0;padding:0;width:100%;background:var(--th-form);border:1px solid var(--th-border);border-radius:var(--ds-r, 6px);max-height:112px;overflow-y:auto;overflow-x:hidden}#sysMsgList::-webkit-scrollbar{width:4px;height:4px}#sysMsgList::-webkit-scrollbar-track{background:transparent}#sysMsgList::-webkit-scrollbar-thumb{background:var(--th-border2);border-radius:2px}#sysMsgList::-webkit-scrollbar-thumb:hover{background:var(--ds-accent-hover, #e94560)}#sysMsgList li{padding:6px 12px;font-size:calc(11px + var(--fs-bump));color:var(--th-text-hi);border-bottom:1px solid var(--th-border);display:flex;align-items:center;gap:6px;text-align:left}#sysMsgList li:last-child{border-bottom:none}#sysMsgList li:before{content:"•";color:var(--ds-accent, #e94560);font-size:calc(14px + var(--fs-bump));line-height:1;flex:0 0 auto}#sysMsgClose{min-width:90px;padding:6px 22px;border:1px solid var(--ds-danger, #e94560);border-radius:var(--ds-r, 20px);background:transparent;color:var(--ds-danger, #e94560);font-size:calc(13px + var(--fs-bump));font-weight:600;cursor:pointer;transition:background .15s,color .15s}#sysMsgPopup.sysMsg-success #sysMsgClose{border-color:var(--b-3a9de9);color:var(--b-3a9de9)}#sysMsgPopup.sysMsg-info #sysMsgClose{border-color:var(--th-border2);color:var(--th-text-hi)}#sysMsgClose:hover{background:rgba(var(--ds-danger-rgb, 233,69,96),.18);color:var(--th-white)}#sysMsgPopup.sysMsg-success #sysMsgClose:hover{background:rgba(var(--b-3a9de9-rgb),.18);color:var(--th-white)}@media (max-width: 768px){#sysMsgPopup{width:auto;min-width:0;max-width:88vw}}#confirmOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(var(--ds-c-000000-rgb, 0,0,0),.65);display:flex;align-items:center;justify-content:center;z-index:9400;-webkit-backdrop-filter:var(--ds-blur, blur(4px));backdrop-filter:var(--ds-blur, blur(4px))}#confirmPopup:focus,#confirmPopup:focus-visible{outline:none}#confirmPopup{background:rgba(var(--th-card-rgb),.97);border:1px solid var(--b-4a90d9);border-radius:var(--ds-r, 14px);width:auto;min-width:340px;max-width:min(560px,92vw);padding:32px 28px 24px;display:flex;flex-direction:column;align-items:center;gap:16px;box-shadow:var(--ds-shadow-pop, 0 8px 40px rgba(var(--b-4a90d9-rgb),.25), 0 4px 20px rgba(0,0,0,.7));animation:popupFadeIn .2s ease}#confirmIcon{font-size:calc(32px + var(--fs-bump));line-height:1;color:var(--b-4a90d9)}#confirmIcon:not(.show){display:none}#confirmText{font-size:calc(13px + var(--fs-bump));color:var(--th-text-soft);text-align:center;line-height:1.7;word-break:keep-all;white-space:pre-line}#confirmList,.confirm-list{list-style:none;margin:0;padding:0;width:100%;background:var(--th-form);border:1px solid var(--th-border);border-radius:var(--ds-r, 6px);max-height:140px;overflow-y:auto;overflow-x:hidden}#confirmList::-webkit-scrollbar,.confirm-list::-webkit-scrollbar{width:4px;height:4px}#confirmList::-webkit-scrollbar-track,.confirm-list::-webkit-scrollbar-track{background:transparent}#confirmList::-webkit-scrollbar-thumb,.confirm-list::-webkit-scrollbar-thumb{background:var(--th-border2);border-radius:2px}#confirmList::-webkit-scrollbar-thumb:hover,.confirm-list::-webkit-scrollbar-thumb:hover{background:var(--ds-accent-hover, #e94560)}#confirmList li,.confirm-list li{padding:6px 12px;font-size:calc(11px + var(--fs-bump));color:var(--th-text-hi);border-bottom:1px solid var(--th-border);display:flex;align-items:center;gap:6px}#confirmList li:last-child,.confirm-list li:last-child{border-bottom:none}#confirmList li:before,.confirm-list li:before{content:"•";color:var(--ds-primary, #e94560);font-size:calc(14px + var(--fs-bump));line-height:1}#confirmBtns{display:flex;gap:10px}#confirmOk,#confirmCancel{min-width:80px;padding:6px 18px;border-radius:var(--ds-r, 20px);font-size:calc(13px + var(--fs-bump));font-weight:600;cursor:pointer;transition:background .15s,color .15s}#confirmOk{border:1px solid var(--ds-primary, #e94560);background:transparent;color:var(--ds-primary, #e94560)}#confirmOk:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.18);color:var(--th-white)}#confirmCancel{border:1px solid var(--b-4a90d9);background:transparent;color:var(--b-4a90d9)}#confirmCancel:hover{background:rgba(var(--b-4a90d9-rgb),.18);color:var(--th-white)}#confirmChoiceBtns{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}#confirmChoiceBtns{flex-wrap:nowrap}#confirmChoiceBtns .confirm-choice-btn{min-width:0;padding:6px 14px;white-space:nowrap}.confirm-choice-btn{min-width:80px;flex:0 0 auto;white-space:nowrap;padding:6px 18px;border-radius:var(--ds-r, 20px);font-size:calc(13px + var(--fs-bump));font-weight:600;cursor:pointer;background:transparent;transition:background .15s,color .15s}.confirm-choice-btn.primary{border:1px solid var(--b-4a90d9);color:var(--th-text-hi)}.confirm-choice-btn.primary:hover:not(:disabled){background:rgba(var(--b-4a90d9-rgb),.18);color:var(--th-white)}.confirm-choice-btn.danger{border:1px solid var(--ds-danger, #e94560);color:var(--ds-danger, #e94560)}.confirm-choice-btn.danger:hover:not(:disabled){background:rgba(var(--ds-danger-rgb, 233,69,96),.18);color:var(--th-white)}.confirm-choice-btn.ghost{border:1px solid var(--th-border2);color:var(--th-text-dim)}.confirm-choice-btn:disabled{opacity:.4;cursor:default}.global-drop-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;box-sizing:border-box;border:3px dashed var(--th-accent);background:rgba(var(--ds-c-000000-rgb, 0,0,0),.82);align-items:center;justify-content:center;pointer-events:none}.global-drop-overlay.visible{display:flex;pointer-events:all}.global-drop-content{text-align:center;color:var(--th-accent);pointer-events:none}.global-drop-icon{font-size:52px;margin-bottom:14px}.global-drop-label{font-size:18px;font-weight:700;letter-spacing:.04em}html[data-theme^=ds-] ::selection{background:rgba(var(--ds-primary-rgb),.35);color:var(--ds-text)}html[data-theme^=ds-] :is(input,textarea,[contenteditable]){caret-color:var(--ds-text)}html[data-theme^=ds-] input:is([type=checkbox],[type=radio]){accent-color:var(--ds-select)}html[data-theme^=ds-] ::placeholder{color:var(--ds-text-3);opacity:1}html[data-theme^=ds-] :focus-visible{outline:2px solid var(--ds-focus);outline-offset:2px}html[data-theme^=ds-] :is(.camera-option,.bg-option,.light-option,.lang-option):focus-visible{outline-offset:-2px}html[data-theme^=ds-] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea):focus{border-color:var(--ds-focus)}html[data-theme^=ds-] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea):focus-visible{outline:none}html[data-theme^=ds-] #viewer-toolbar{background:var(--ds-head);border-bottom-color:var(--ds-line)}html[data-theme^=ds-] .vp-btn{background:var(--ds-card);border-color:var(--ds-line-strong);color:var(--ds-text);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme^=ds-] .vp-btn:hover{background:var(--ds-hover);border-color:var(--ds-line-strong)}html[data-theme^=ds-] .vp-label{background:var(--ds-tip-bg);color:var(--ds-tip-text);border-color:var(--ds-tip-line);-webkit-backdrop-filter:none;backdrop-filter:none}:where(html[data-theme^=ds-]) button{background:var(--ds-card);color:var(--ds-text-2);border-color:var(--ds-line-strong)}:where(html[data-theme^=ds-]) button:hover{background:var(--ds-hover);color:var(--ds-text)}html[data-theme^=ds-] :is(.um-btn,.st-load,.st-pgbtn,.confirm-choice-btn.ghost,#aboutDonateBtn):not(:disabled),html[data-theme^=ds-] #confirmCancel:not(:disabled){background:var(--ds-card);border-color:var(--ds-line-strong);color:var(--ds-text-2)}html[data-theme^=ds-] :is(.um-btn,.st-load,.st-pgbtn,.confirm-choice-btn.ghost,#aboutDonateBtn):hover:not(:disabled),html[data-theme^=ds-] #confirmCancel:hover:not(:disabled){background:var(--ds-hover);border-color:var(--ds-line-strong);color:var(--ds-text)}html[data-theme^=ds-] :is(.confirm-choice-btn.primary,.um-btn.ds-primary):not(:disabled),html[data-theme^=ds-] #confirmOk:not(:disabled),html[data-theme^=ds-] #sysMsgPopup #sysMsgClose{background:var(--ds-primary);border-color:var(--ds-primary);color:var(--ds-on-primary);font-weight:600}html[data-theme^=ds-] :is(.confirm-choice-btn.primary,.um-btn.ds-primary):hover:not(:disabled),html[data-theme^=ds-] #confirmOk:hover:not(:disabled),html[data-theme^=ds-] #sysMsgPopup #sysMsgClose:hover{background:var(--ds-primary-hover);border-color:var(--ds-primary-hover);color:var(--ds-on-primary)}html[data-theme^=ds-] .confirm-choice-btn.danger:not(:disabled){background:transparent;border-color:var(--ds-danger);color:var(--ds-danger)}html[data-theme^=ds-] .confirm-choice-btn.danger:hover:not(:disabled){background:var(--ds-danger);border-color:var(--ds-danger);color:#fff}html[data-theme^=ds-] :where(button,select,textarea,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color])):disabled,html[data-theme^=ds-] #confirmOk:disabled,html[data-theme^=ds-] #confirmCancel:disabled{opacity:1;background:var(--ds-disabled-bg);color:var(--ds-disabled-text);border-color:var(--ds-line);cursor:not-allowed}html[data-theme^=ds-] :is(.camera-option,.bg-option,.light-option,.lang-option,.vp-btn):disabled{background:transparent}html[data-theme^=ds-] #confirmPopup{background:var(--ds-win-bg);border-color:var(--ds-win-line);box-shadow:inset 0 4px 0 var(--ds-primary),var(--ds-win-shadow)}html[data-theme^=ds-] #sysMsgPopup{background:var(--ds-win-bg);border-color:var(--ds-win-line);box-shadow:inset 0 4px 0 var(--ds-danger),var(--ds-win-shadow)}html[data-theme^=ds-] #sysMsgPopup.sysMsg-success{border-color:var(--ds-win-line);box-shadow:inset 0 4px 0 var(--ds-ok),var(--ds-win-shadow)}html[data-theme^=ds-] #sysMsgPopup.sysMsg-info{border-color:var(--ds-win-line);box-shadow:inset 0 4px 0 var(--ds-info),var(--ds-win-shadow)}html[data-theme^=ds-] #sysMsgIcon{color:var(--ds-danger)}html[data-theme^=ds-] #sysMsgPopup.sysMsg-success #sysMsgIcon{color:var(--ds-ok)}html[data-theme^=ds-] #sysMsgPopup.sysMsg-info #sysMsgIcon{color:var(--ds-info)}html[data-theme^=ds-] #confirmIcon{color:var(--ds-warn)}html[data-theme^=ds-] :is(#confirmText,#sysMsgText){color:var(--ds-text)}html[data-theme^=ds-] #sysMsgList li:before{color:var(--ds-text-3)}html[data-theme^=ds-] :is(#confirmList,.confirm-list) li{color:var(--ds-text)}html[data-theme^=ds-] :is(#confirmOverlay,#sysMsgOverlay,#aboutOverlay){background:var(--ds-backdrop)}html[data-theme^=ds-] :is(#cameraDropdown,#bgDropdown,#lightDropdown,#langDropdown,#themeDropdown){background:var(--ds-panel);border-color:var(--ds-line);border-top:3px solid var(--ds-primary);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme^=ds-] #storageDropdown{background:var(--ds-panel);border-color:var(--ds-line);box-shadow:inset 0 3px 0 var(--ds-primary),var(--ds-shadow-pop);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme^=ds-] :is(.camera-option,.bg-option,.light-option,.lang-option){color:var(--ds-text-2)}html[data-theme^=ds-] :is(.camera-option,.bg-option,.light-option,.lang-option):hover:not(:disabled){background:var(--ds-hover);color:var(--ds-text)}html[data-theme^=ds-] :is(.camera-option-active,.bg-option-active,.light-option-active,.lang-option-active){color:var(--ds-text)!important;background:var(--ds-select-tint)!important;box-shadow:inset 3px 0 0 var(--ds-primary)}html[data-theme^=ds-] .lang-option-flag{box-shadow:0 0 0 1px var(--ds-line)}html[data-theme^=ds-] .ds-win-ov{background:var(--ds-backdrop)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}html[data-theme^=ds-] .ds-win{background:var(--ds-win-bg)!important;border-color:var(--ds-win-line)!important;border-top:4px solid var(--ds-primary)!important;color:var(--ds-text)!important;box-shadow:var(--ds-win-shadow)!important}html[data-theme^=ds-] :is(.ds-win,#confirmPopup,#sysMsgPopup,#aboutPopup,#metaPopup){--th-sec: var(--ds-win-sec);--th-sec-rgb: var(--ds-win-sec-rgb)}html[data-theme^=ds-] .ds-win-head{color:var(--ds-text)!important;font-family:var(--ds-font-head)!important}html[data-theme^=ds-] #aboutPopup{background:var(--ds-win-bg);border-color:var(--ds-win-line);box-shadow:inset 0 4px 0 var(--ds-primary),var(--ds-win-shadow);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme^=ds-] #aboutTitle{color:var(--ds-text);font-family:var(--ds-font-head)}html[data-theme^=ds-] :is(.about-link-list a,#aboutCopyright a):hover{color:var(--ds-text)}html[data-theme^=ds-] input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:16px;background:none;overflow:hidden;cursor:pointer}html[data-theme^=ds-] input[type=range]::-webkit-slider-runnable-track{height:16px;background:none}html[data-theme^=ds-] input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;margin-top:2px;border-radius:50%;background:var(--ds-primary);box-shadow:inset 0 0 0 1px var(--ds-on-primary, #1f2a44);border-image:linear-gradient(90deg,var(--ds-select) 50%,var(--ds-line-strong) 0) 0 1 / 4px 100vw / 0 100vw}html[data-theme^=ds-] input[type=range]::-moz-range-track{height:4px;background:var(--ds-line-strong);border:none;border-radius:0}html[data-theme^=ds-] input[type=range]::-moz-range-progress{height:4px;background:var(--ds-select)}html[data-theme^=ds-] input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--ds-primary);border:1px solid var(--ds-on-primary, #1f2a44);box-sizing:border-box}html[data-theme^=ds-] input[type=range]:disabled{cursor:not-allowed}html[data-theme^=ds-] input[type=range]:disabled::-webkit-slider-thumb{background:var(--ds-disabled-bg);box-shadow:inset 0 0 0 1px var(--ds-line-strong);border-image:linear-gradient(90deg,var(--ds-disabled-text) 50%,var(--ds-line) 0) 0 1 / 4px 100vw / 0 100vw}html[data-theme^=ds-] .vp-btn img{opacity:.7}html[data-theme^=ds-] .vp-btn.vp-btn-active{background:var(--ds-select-tint);border-color:var(--ds-select);box-shadow:none}html[data-theme^=ds-] .vp-btn.vp-btn-active:after{background:var(--ds-primary);border-color:var(--ds-on-primary)}html[data-theme^=ds-] #panelToggle{background:var(--ds-card);border-color:var(--ds-line-strong);color:var(--ds-text);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme^=ds-] #panelToggle:hover{background:var(--ds-hover);border-color:var(--ds-line-strong);color:var(--ds-text)}html[data-theme^=ds-] .file-label{background:var(--ds-primary);color:var(--ds-on-primary)}html[data-theme^=ds-] .file-label:hover{background:var(--ds-primary-hover)}html[data-theme^=ds-] .file-label .of-inline{filter:brightness(0);opacity:.8}html[data-theme^=ds-] .sample-item{background:var(--ds-card);border-color:var(--ds-line);color:var(--ds-text-2)}html[data-theme^=ds-] .sample-item:hover{background:var(--ds-card);border-color:var(--ds-line-strong);color:var(--ds-text)}html[data-theme^=ds-] .sample-item.active,html[data-theme^=ds-] .sample-item.active:hover{background:var(--ds-card);border-color:var(--ds-select);color:var(--ds-text)}html[data-theme^=ds-] #metaPopup{background:var(--ds-panel);border-color:var(--ds-line);box-shadow:inset 0 3px 0 var(--ds-primary),var(--ds-shadow-pop);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme^=ds-] #metaPopupTitle{color:var(--ds-text);font-family:var(--ds-font-head)}
