: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}*{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: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:7px;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter: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:#e9456040;border-color:#e94560}.vp-btn:hover img{opacity:.85;filter:grayscale(0%)}.vp-btn.vp-btn-active{background:#e9456038;border-color:#e94560;box-shadow:0 0 8px #e9456080}.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:#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: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: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:8px;overflow:hidden;z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 20px #00000080;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:#e9456033;color:#fff}.camera-option-active{color:#e94560!important;font-weight:700;background:#e945601a!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:#e94560;color:#fff;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:calc(13px + var(--fs-bump));font-weight:600;transition:background .2s}.file-label:hover{background:#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}.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%;transform:translate(-50%);background:rgba(var(--th-vp-rgb),.97);border:1px solid var(--th-border2);border-radius:8px;padding:4px 0;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter: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:#e9456033;color:#fff}.bg-option-active{color:#e94560!important;font-weight:700;background:#e945601a!important}.bg-option+.bg-option{border-top:1px solid var(--th-border)}#sysMsgOverlay{position:absolute;top:0;right:260px;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:400;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}#sysMsgPopup{background:rgba(var(--th-vp-rgb),.97);border:1px solid #e94560;border-radius: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:0 8px 40px #e9456040,0 4px 20px #000000b3;animation:popupFadeIn .2s ease}#sysMsgIcon{font-size:calc(36px + var(--fs-bump));line-height:1;color:#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 #e94560;border-radius:20px;background:transparent;color:#e94560;font-size:calc(13px + var(--fs-bump));font-weight:600;cursor:pointer;transition:background .15s,color .15s}#sysMsgClose:hover{background:#e945602e;color:#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:#0000008c;display:flex;align-items:center;justify-content:center;z-index:300;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}#aboutPopup{position:relative;background:rgba(var(--th-vp-rgb),.97);border:1px solid var(--th-border2);border-radius:14px;width:340px;height:420px;display:flex;flex-direction:column;box-shadow:0 8px 40px #000000b3;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:#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:#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: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:#fff;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%;transform:translate(-50%);background:rgba(var(--th-vp-rgb),.92);border:1px solid var(--th-border2);border-radius:8px;overflow:hidden;z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 20px #00000080;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:#e9456033;color:#fff}.light-option-active{color:#e94560!important;font-weight:700;background:#e945601a!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:8px;overflow:hidden;z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 20px #00000080;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:#e9456033;color:#fff}.lang-option-active{color:#e94560!important;font-weight:700;background:#e945601a!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:10px;padding:14px 16px;min-width:220px;max-width:280px;z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 24px #00000080,0 0 0 1px #e9456033;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:#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:#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: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:#e94560;color:#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: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:#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:#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:#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:#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 #e94560;border-radius:6px;padding:6px 12px;font-size:calc(12px + var(--fs-bump));cursor:pointer;transition:background .2s;width:100%}button:hover{background:#e94560;color:#fff}#panelBackdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:49;-webkit-backdrop-filter:blur(2px);backdrop-filter: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: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:blur(6px);backdrop-filter:blur(6px);transition:border-color .15s,background .15s,top .28s,right .28s}#panelToggle:hover{background:#e9456040;border-color:#e94560;color:#fff}@media (max-width: 768px){.vp-btn{width:44px!important;height:44px;border-radius: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: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}#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:-6px 0 24px #0009;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: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:5px;color:var(--th-text);-webkit-backdrop-filter:none;backdrop-filter:none}.st-load:hover{background:#e9456040;border-color:#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:8px;z-index:9000;box-shadow:0 4px 20px #00000080;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:#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:7px;color:var(--th-text)}.st-pgbtn:hover{background:#e9456040;border-color:#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:#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: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:#b388e000;box-shadow:none;border-color:var(--th-border2)}50%{background-color:#b388e04d;box-shadow:inset 0 0 14px 5px #b388e08c,0 0 10px #b388e08c;border-color:#b388e0f2}}.ui-hint-blink{animation:uiHintBlink .5s ease-in-out var(--hint-repeat, 8)!important;border-radius: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:#000000a6;display:flex;align-items:center;justify-content:center;z-index:9600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}#sysMsgPopup{background:rgba(var(--th-card-rgb),.97);border:1px solid #e94560;border-radius: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:0 8px 40px #e9456040,0 4px 20px #000000b3;animation:popupFadeIn .2s ease}#sysMsgPopup.sysMsg-success{border-color:var(--b-3a9de9);box-shadow:0 8px 40px rgba(var(--b-3a9de9-rgb),.25),0 4px 20px #000000b3}#sysMsgIcon{font-size:calc(32px + var(--fs-bump));line-height:1;color:#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: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:#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:#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 #e94560;border-radius:20px;background:transparent;color:#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:#e945602e;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:#000000a6;display:flex;align-items:center;justify-content:center;z-index:9400;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}#confirmPopup{background:rgba(var(--th-card-rgb),.97);border:1px solid var(--b-4a90d9);border-radius: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:0 8px 40px rgba(var(--b-4a90d9-rgb),.25),0 4px 20px #000000b3;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: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:#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:#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:20px;font-size:calc(13px + var(--fs-bump));font-weight:600;cursor:pointer;transition:background .15s,color .15s}#confirmOk{border:1px solid #e94560;background:transparent;color:#e94560}#confirmOk:hover{background:#e945602e;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: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 #e94560;color:#e94560}.confirm-choice-btn.danger:hover:not(:disabled){background:#e945602e;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:#000000d1;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}
