@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-tabbar: #0a1525;--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-sec-rgb: 15, 52, 96;--th-vp-rgb: 10, 20, 40;--th-accent: #e94560;--th-text-soft: #c8daf0;--th-card-rgb: 10, 18, 35;--b-3a9de9: #3a9de9;--b-3a9de9-rgb: 58, 157, 233}html[data-theme=gray]{--th-app: #141414;--th-panel: #1e1e1e;--th-sec: #2b2b2b;--th-form: #191919;--th-tabbar: #101010;--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-sec-rgb: 58, 58, 58;--th-vp-rgb: 28, 28, 28;--th-card-rgb: 24, 24, 24}html[data-theme=light]{--th-app: #eef2f8;--th-panel: #e4eaf3;--th-sec: #d7e2f0;--th-form: #f5f8fc;--th-tabbar: #dce4ee;--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-sec-rgb: 215, 226, 240;--th-vp-rgb: 238, 243, 250;--th-card-rgb: 245, 248, 252}html[data-theme=lightpink]{--th-app: #fbeef3;--th-panel: #f7e3eb;--th-sec: #f3d7e2;--th-form: #fdf4f8;--th-tabbar: #f3dce6;--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-sec-rgb: 243, 215, 226;--th-vp-rgb: 250, 238, 244;--th-card-rgb: 253, 244, 248}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-0f3460: #eef0f3;--ds-c-0f3460-rgb: 238, 240, 243;--ds-c-1a1a2e: #1d2842;--ds-c-1a1a2e-rgb: 29, 40, 66;--ds-c-1a3a5c: #cfd4dc;--ds-c-1a3a5c-rgb: 207, 212, 220;--ds-c-335580: #cfd4dc;--ds-c-335580-rgb: 207, 212, 220;--ds-c-37d67a: #17734b;--ds-c-37d67a-rgb: 23, 115, 75;--ds-c-4a90d9: #1f2a44;--ds-c-4a90d9-rgb: 31, 42, 68;--ds-c-6bb6ff: #2f6fb0;--ds-c-6bb6ff-rgb: 47, 111, 176;--ds-c-7cfc9a: #17734b;--ds-c-7cfc9a-rgb: 23, 115, 75;--ds-c-a0c4ff: #2f6fb0;--ds-c-a0c4ff-rgb: 47, 111, 176;--ds-c-b388e0: #7a4fc0;--ds-c-b388e0-rgb: 122, 79, 192;--ds-c-cce0ff: #1f2a44;--ds-c-cce0ff-rgb: 31, 42, 68;--ds-c-e0a33a: #9a6400;--ds-c-e0a33a-rgb: 154, 100, 0;--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-4a90d9: #445d97;--b-4a90d9-rgb: 68, 93, 151}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-c-0f3460: #303030;--ds-c-0f3460-rgb: 48, 48, 48;--ds-c-1a1a2e: #232323;--ds-c-1a1a2e-rgb: 35, 35, 35;--ds-c-335580: #4b4b4b;--ds-c-335580-rgb: 75, 75, 75;--ds-c-4a90d9: #7fb2ff;--ds-c-4a90d9-rgb: 127, 178, 255;--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-3a9de9: #3a9de9;--b-3a9de9-rgb: 58, 157, 233;--b-4a90d9: #838383;--b-4a90d9-rgb: 131, 131, 131}*{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);color:var(--th-text);font-family:var(--ds-font, "Segoe UI", "Malgun Gothic", sans-serif);font-size:calc(12px + var(--fs-bump))}html:has(body.obs-mode),body.obs-mode{background:transparent}body.obs-mode #toolbar,body.obs-mode #sidePanel,body.obs-mode #emptyHint{display:none}body.obs-mode #layout{height:calc(100% - var(--topbar-h, 0px))}#loginGate .launcher-modal{width:440px}#loginGate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9500;background:rgba(var(--ds-c-000000-rgb, 0,0,0),.85);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:var(--ds-blur, blur(4px));backdrop-filter:var(--ds-blur, blur(4px))}.launcher-modal{background:var(--ds-c-0a1e3a, #0a1e3a);border:1px solid var(--ds-c-335580, #335580);border-radius:var(--ds-r, 10px);width:380px;max-width:92vw;max-height:86vh;overflow:auto;padding:20px;display:flex;flex-direction:column;gap:12px;color:var(--ds-c-cce0ff, #cce0ff);box-shadow:var(--ds-shadow-pop, 0 8px 40px rgba(0,0,0,.6))}.launcher-modal-title{font-size:calc(15px + var(--fs-bump));font-weight:800;color:var(--ds-c-a0c4ff, #a0c4ff)}.gate-note{font-size:calc(12px + var(--fs-bump));color:var(--ds-c-cce0ff, #cce0ff);line-height:1.7}.login-social-row{display:flex;flex-direction:column;gap:10px;margin-top:4px}.login-social-btn{display:flex;align-items:center;justify-content:center;gap:9px;width:70%;margin:0 auto;padding:11px 14px;box-sizing:border-box;border-radius:var(--ds-r, 8px);font-size:calc(13px + var(--fs-bump));font-weight:700;cursor:pointer;border:1px solid rgba(var(--ds-c-000000-rgb, 0,0,0),.15)}.login-social-btn img{width:18px;height:18px;object-fit:contain;flex:none}.login-social-google{background:var(--ds-c-ffffff, #ffffff);color:var(--ds-c-3c4043, #3c4043)}.login-social-line{background:var(--ds-c-06c755, #06C755);color:var(--ds-c-ffffff, #ffffff)}.login-social-naver{background:var(--ds-c-03c75a, #03C75A);color:var(--ds-c-ffffff, #ffffff)}.login-social-kakao{background:var(--ds-c-fee500, #FEE500);color:var(--ds-c-391b1b, #391B1B)}.login-social-apple,.login-social-x{background:var(--ds-c-000000, #000000);color:var(--ds-c-ffffff, #ffffff)}.login-social-twitcasting{background:var(--ds-c-00a0dc, #00A0DC);color:var(--ds-c-ffffff, #ffffff)}.launcher-modal-close{min-width:160px;width:auto;margin:0 auto;padding:6px 14px;border-radius:var(--ds-r, 20px);font-size:calc(13px + var(--fs-bump));font-weight:600;cursor:pointer;background:transparent;border:1px solid var(--ds-c-4a90d9, #4a90d9);color:var(--ds-c-a0c4ff, #a0c4ff)}.launcher-modal-close:hover{border-color:var(--ds-c-a0c4ff, #a0c4ff);color:var(--ds-c-ffffff, #fff);background:rgba(var(--ds-c-4a90d9-rgb, 74,144,217),.2)}.gate-card{background:var(--th-form);border:1px solid var(--th-border2);border-radius:var(--ds-r, 6px);padding:24px 32px;display:flex;flex-direction:column;align-items:center;gap:14px}.gate-msg{font-size:calc(12px + var(--fs-bump));color:var(--th-text);text-align:center;line-height:1.7}#toolbar{position:relative;z-index:300;display:flex;align-items:center;justify-content:space-between;height:42px;padding:0 10px;background:var(--th-tabbar);border-bottom:1px solid var(--th-border)}#topLeftBtns,#tbRight{display:flex;align-items:center;gap:6px}.tb-sep{width:1px;height:20px;background:var(--th-border2);margin:0 4px;flex:none}#langBtnWrap,#themeBtnWrap,#aboutBtnWrap,#storageBtnWrap{position:relative}.lang-btn-flag{display:block}.lang-btn-flag-img{width:18px;height:18px;object-fit:cover;border-radius:2px;display:block}.vp-btn{position:relative;width:30px;height:30px;padding:0;background:rgba(var(--th-vp-rgb),.75);color:var(--th-text);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;font-size:calc(14px + var(--fs-bump))}.vp-icon{font-size:calc(15px + var(--fs-bump));line-height:1;display:block}.vp-btn:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.25);border-color:var(--ds-accent-hover, #e94560)}.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;z-index:40}.vp-btn:hover .vp-label{opacity:1}.btn-capsule{flex:none;padding:4px 12px;border-radius:12px;cursor:pointer;font-size:calc(11px + var(--fs-bump));line-height:1.5;white-space:nowrap;background:transparent;border:1px solid var(--th-border2);color:var(--th-text-hi);transition:border-color .15s,color .15s}.btn-capsule:hover:not(:disabled){border-color:var(--ds-accent-hover, #e94560);color:var(--ds-accent-hover, #e94560)}.btn-capsule:disabled{opacity:.4;cursor:default}.of-icon{display:block;width:20px;height:20px;object-fit:contain}.ns-icon{display:block;width:20px;height:20px;background:var(--th-text);-webkit-mask:url(/images/new-scene.svg) center / contain no-repeat;mask:url(/images/new-scene.svg) center / contain no-repeat}.vp-btn:hover .ns-icon{background:var(--th-text-hi)}.vp-btn.cam-on{border-color:var(--th-accent);color:var(--th-accent)}#cameraSelect{background:rgba(var(--th-sec-rgb),.7);color:var(--th-text);border:1px solid var(--th-border);border-radius:var(--ds-r, 5px);padding:5px 6px;font-size:calc(11px + var(--fs-bump));max-width:220px}@keyframes popupFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}#langDropdown,#themeDropdown,#aboutDropdown,#storageDropdown{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:9000;box-shadow:var(--ds-shadow-pop, 0 4px 20px rgba(0,0,0,.5));animation:popupFadeIn .15s ease;min-width:140px}#storageDropdown{width:400px;height:335px;min-width:0;padding:8px;box-sizing:border-box;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)}.lang-option,.about-menu-item{display:flex;align-items:center;width:100%;padding:8px 14px;background:transparent;border:none;border-radius:0;color:var(--th-text);font-size:calc(12px + var(--fs-bump));font-weight:500;cursor:pointer;text-align:left;white-space:nowrap}.lang-option:hover,.about-menu-item:hover{background:rgba(var(--ds-accent-hover-rgb, 233,69,96),.2);color:var(--th-text-hi)}.lang-option-active{color:var(--th-accent)!important;font-weight:700;background:rgba(var(--ds-select-rgb, 233,69,96),.1)!important}.lang-option+.lang-option,.about-menu-item+.about-menu-item{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}#aboutOverlay{position:fixed;top:0;right:0;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:9300;-webkit-backdrop-filter:var(--ds-blur, blur(3px));backdrop-filter:var(--ds-blur, blur(3px))}#aboutPopup{position:relative;background:var(--th-form);border:1px solid var(--th-border2);border-radius:var(--ds-r, 14px);width:340px;height:360px;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;height: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}#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}#aboutDesc{font-size:calc(12px + var(--fs-bump));color:var(--th-text);text-align:center}#aboutCopyright{font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);text-align:center;margin-top:8px}.about-divider{height:1px;background:var(--th-border);margin:12px 0}.about-section-title{font-size:calc(11px + 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(--th-accent)}#layout{display:flex;width:100%;height:calc(100% - 42px - var(--topbar-h, 0px))}#viewport{position:relative;flex:1;min-width:0}#liveCanvas{width:100%;height:100%;display:block}#emptyHint{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--th-text-dim);font-size:calc(13px + var(--fs-bump));pointer-events:none;white-space:pre-line;text-align:center;line-height:1.8}#sidePanel{width:300px;flex:none;overflow-y:auto;background:var(--th-panel);border-left:1px solid var(--th-border);padding:8px;display:flex;flex-direction:column;gap:8px}#sidePanel::-webkit-scrollbar{width:4px}#sidePanel::-webkit-scrollbar-thumb{background:var(--th-border2)}#sidePanel::-webkit-scrollbar-thumb:hover{background:var(--th-accent)}.live-section{background:var(--th-form);border:1px solid var(--th-border);border-radius:var(--ds-r, 6px);padding:8px}.live-section-title{font-size:calc(12px + var(--fs-bump));color:var(--th-text-hi);margin-bottom:7px}.live-section-head{display:flex;align-items:center;justify-content:space-between}.skel-toggle{display:flex;align-items:center;gap:4px;font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);cursor:pointer;margin-bottom:7px}.skel-toggle input{accent-color:var(--th-text-hi);cursor:pointer}#videoWrap{position:relative;width:100%;aspect-ratio:4 / 3;background:var(--ds-c-000000, #000);border-radius:var(--ds-r, 4px);overflow:hidden}#camVideo{width:100%;height:100%;object-fit:cover;transform:scaleX(-1);display:none}#overlayCanvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transform:scaleX(-1);pointer-events:none}#calibGuide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none;display:none;opacity:.85;filter:drop-shadow(0 0 2px rgba(var(--ds-c-000000-rgb, 0,0,0),.9))}#calibGuide.show{display:block}#calibGuide.ok{filter:drop-shadow(0 0 2px rgba(var(--ds-c-000000-rgb, 0,0,0),.9)) sepia(1) saturate(8) hue-rotate(70deg)}#videoOff{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--ds-c-ff6b81, #ff6b81);font-size:calc(11px + var(--fs-bump))}#videoOff.cam-on{color:var(--ds-c-6bb6ff, #6bb6ff)}#camError{margin-top:6px;font-size:calc(11px + var(--fs-bump));color:var(--th-accent);white-space:pre-line}.cam-retry{margin-top:6px}.ctl-row{display:flex;align-items:center;gap:8px;padding:3px 0}.ctl-label{flex:none;width:var(--ctl-label-w, 100px);white-space:nowrap;font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);text-align:right}.ctl-row input[type=range]{flex:1 1 auto;min-width:0;width:100%;accent-color:var(--th-text-hi);cursor:pointer}.ctl-row input[type=checkbox]{accent-color:var(--th-text-hi);cursor:pointer}.ctl-val{flex:none;min-width:34px;width:auto;text-align:right;font-size:calc(11px + var(--fs-bump));color:var(--th-text-hi);font-variant-numeric:tabular-nums}.ctl-val-input{flex:none;width:calc(48px + var(--fs-bump) * 4);box-sizing:border-box;text-align:right;font-size:calc(11px + var(--fs-bump));color:var(--th-text-hi);font-variant-numeric:tabular-nums;background:rgba(var(--th-sec-rgb),.7);border:1px solid var(--th-border);border-radius:var(--ds-r, 3px);padding:1px 4px;cursor:pointer;-moz-appearance:textfield}.ctl-val-input::-webkit-outer-spin-button,.ctl-val-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ctl-val-input:focus{outline:none;border-color:var(--th-text-hi)}.ctl-select{flex:1;min-width:0;cursor:pointer;background:rgba(var(--th-sec-rgb),.7);color:var(--th-text);border:1px solid var(--th-border2);border-radius:var(--ds-r, 4px);padding:4px 6px;font-size:calc(11px + var(--fs-bump));outline:none;overflow:hidden;text-overflow:ellipsis}.ctl-select:focus{border-color:var(--th-text-hi)}.ctl-select option{background:var(--th-app)}.ctl-btn{flex:1;width:auto;height:auto;justify-content:center;background:var(--th-sec);color:var(--th-text-hi);border:1px solid var(--th-accent);border-radius:var(--ds-r, 6px);padding:6px 10px;font-size:calc(12px + var(--fs-bump));font-weight:600;-webkit-backdrop-filter:none;backdrop-filter:none;transition:background .2s,color .2s}.ctl-btn:hover{background:var(--th-accent);color:var(--ds-c-ffffff, #fff);border-color:var(--th-accent)}.ctl-reset{flex:none;width:20px;height:20px;padding:0;display:flex;align-items:center;justify-content:center;background:rgba(var(--th-sec-rgb),.7);color:var(--th-text-dim);border:1px solid var(--th-border2);border-radius:var(--ds-r, 4px);font-size:calc(12px + var(--fs-bump));line-height:1;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.ctl-reset:hover{background:var(--th-accent);color:var(--ds-c-ffffff, #fff);border-color:var(--th-accent)}#liveToast{position:absolute;top:14px;left:50%;transform:translate(-50%) translateY(-6px);max-width:80%;padding:8px 14px;border-radius:var(--ds-r, 8px);background:rgba(var(--th-vp-rgb),.95);color:var(--th-text-hi);border:1px solid var(--th-accent);font-size:calc(12px + var(--fs-bump));font-weight:600;white-space:pre-line;text-align:center;pointer-events:none;opacity:0;transition:opacity .2s,transform .2s;z-index:60}#liveToast.show{opacity:1;transform:translate(-50%) translateY(0)}@keyframes camBlink{0%,to{background:rgba(var(--th-vp-rgb),.75);border-color:var(--th-border2);box-shadow:none}50%{background:rgba(var(--ds-accent-rgb, 233,69,96),.35);border-color:var(--th-accent);box-shadow:var(--ds-glow, 0 0 10px rgba(233,69,96,.7))}}#btnCamera.blink{animation:camBlink .6s ease-in-out infinite}#calibOverlay{position:absolute;top:0;right:0;bottom:0;left:0;display:none;flex-direction:column;align-items:center;justify-content:center;gap:12px;pointer-events:none;z-index:70}#calibOverlay.show{display:flex;background:rgba(var(--ds-c-000000-rgb, 0,0,0),.72);-webkit-backdrop-filter:var(--ds-blur, blur(2px));backdrop-filter:var(--ds-blur, blur(2px))}.calib-ring{position:relative;width:120px;height:120px}.calib-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.calib-track{fill:none;stroke:rgba(var(--ds-c-ffffff-rgb, 255,255,255),.18);stroke-width:6}.calib-prog{fill:none;stroke:var(--th-accent);stroke-width:6;stroke-linecap:round;stroke-dasharray:276.5;stroke-dashoffset:276.5}.calib-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:calc(46px + var(--fs-bump));font-weight:700;color:var(--ds-c-ffffff, #fff);text-shadow:0 2px 8px rgba(var(--ds-c-000000-rgb, 0,0,0),.6)}.calib-msg{font-size:calc(14px + var(--fs-bump));font-weight:600;color:var(--ds-c-ffffff, #fff);background:rgba(var(--th-vp-rgb),.85);padding:5px 12px;border-radius:var(--ds-r, 8px);text-shadow:0 1px 4px rgba(var(--ds-c-000000-rgb, 0,0,0),.6)}.calib-ready .calib-prog{stroke-dashoffset:0;stroke:var(--th-text-hi);opacity:.35}.calib-ready .calib-ring{animation:calibPulse 1s ease-in-out infinite}@keyframes calibPulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.calib-capture .calib-prog{transition:stroke-dashoffset .12s linear}.calib-items{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;font-size:calc(12px + var(--fs-bump));font-weight:600;color:var(--ds-c-ffffff, #fff);background:rgba(var(--th-vp-rgb),.85);padding:4px 10px;border-radius:var(--ds-r, 8px)}.calib-items:empty{display:none}.calib-items .ok{color:var(--ds-c-37d67a, #37d67a)}.calib-items .no{color:var(--th-accent)}.ctl-calib-status{flex:1 1 60px;min-width:60px;font-size:calc(11px + var(--fs-bump));line-height:1.25;color:var(--th-text-dim);white-space:normal;word-break:keep-all;overflow-wrap:anywhere}.ctl-calib-status:empty{display:none}.ctl-calib-status.busy{color:var(--ds-c-e0a33a, #e0a33a)}.ctl-calib-status.ok{color:var(--ds-c-37d67a, #37d67a)}.ctl-calib-status.no{color:var(--th-accent)}.calib-done .calib-prog{stroke-dashoffset:0;stroke:var(--ds-c-37d67a, #37d67a)}.calib-done .calib-center{color:var(--ds-c-37d67a, #37d67a)}.calib-fail .calib-prog{stroke-dashoffset:0;stroke:var(--th-accent)}.calib-fail .calib-center{color:var(--th-accent)}.stat-row{display:flex;justify-content:space-between;padding:2px 0}.stat-label{font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim)}.stat-val{font-size:calc(11px + var(--fs-bump));color:var(--th-text)}.stat-val.ok{color:var(--ds-c-7cfc9a, #7cfc9a)}.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));border-radius:var(--ds-r, 5px);-webkit-backdrop-filter:none;backdrop-filter:none}.st-note{font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);line-height:1.6}#hudOverlay{position:absolute;top:10px;right:12px;z-index:50;display:flex;flex-direction:column;gap:12px;width:195px;pointer-events:none;text-shadow:0 1px 3px rgba(var(--ds-c-000000-rgb, 0,0,0),.55)}.hud-title{font-size:calc(11px + var(--fs-bump));font-weight:700;color:var(--th-text-hi);letter-spacing:.06em;margin-bottom:3px;opacity:.9}#hudOverlay .stat-row{padding:1px 0}:is(#hudOverlay,#emptyHint){--th-text-hi: #d6d6d6;--th-text: #e4e4e4;--th-text-dim: #8e8e8e;--th-sec-rgb: 58, 58, 58;--th-accent: #e94560;--ds-c-7cfc9a: #7cfc9a}body.obs-mode #hudOverlay{display:none}.bs-row{display:flex;align-items:center;gap:6px;padding:1px 0}.bs-name{width:calc(118px + var(--fs-bump) * 6);flex:none;font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bs-bar-wrap{flex:1;height:6px;background:rgba(var(--th-sec-rgb),.5);border-radius:var(--ds-r, 3px);overflow:hidden}.bs-bar{height:100%;width:0%;background:var(--th-accent);border-radius:var(--ds-r, 3px)}.bs-val{min-width:32px;width:auto;flex:none;text-align:right;font-size:calc(11px + var(--fs-bump));color:var(--th-text)}#hudOverlay .bs-name{width:92px}#btnMenu{display:none}@media (max-width: 768px){#tbLogoSlot{display:none}#topLeftBtns{display:flex;flex-direction:column;align-items:flex-start;gap:6px;position:absolute;left:10px;top:48px}.tb-sep{display:none}#tbRight{width:100%;justify-content:flex-end}#cameraSelect{flex:1;min-width:0;max-width:none}#btnMenu{display:flex}#sidePanel{position:fixed;top:42px;right:0;bottom:0;z-index:400;width:min(320px,88vw);transform:translate(100%);transition:transform .2s ease;box-shadow:var(--ds-shadow-pop, -6px 0 24px rgba(0,0,0,.45))}body.menu-open #sidePanel{transform:translate(0)}}.st-pager{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:auto;padding-top:6px}.st-pgbtn{padding:2px 10px;font-size:calc(11px + var(--fs-bump))}.st-pglabel{font-size:calc(11px + var(--fs-bump));color:var(--th-text-dim);min-width:34px;text-align:center}#pinBtn{position:absolute;right:12px;bottom:12px;z-index:60;background:none;border:none;padding:0;cursor:pointer;font-size:calc(18px + var(--fs-bump));line-height:1;opacity:.75;transition:opacity .15s,transform .2s}#pinBtn:hover{opacity:1}body.ui-hidden #pinBtn{opacity:.35;transform:rotate(45deg)}body.obs-mode #pinBtn{display:none}#toolbar{transition:margin-top .25s ease}#layout{transition:height .25s ease}#sidePanel{transition:margin-right .25s ease,transform .25s ease}body.ui-hidden #toolbar{margin-top:-43px;visibility:hidden;transition:margin-top .25s ease,visibility 0s linear .25s}body.ui-hidden #layout{height:calc(100% - var(--topbar-h, 0px))}body.ui-hidden #sidePanel{margin-right:-301px;transform:translate(30px)}@media (max-width: 768px){body.ui-hidden #sidePanel{transform:translate(100%);margin-right:0}}.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}#modelLoading{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(var(--ds-c-1a1a2e-rgb, 26,26,46),.8);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;z-index:9550;pointer-events:none;opacity:0;transition:opacity .3s}#modelLoading.visible{opacity:1;pointer-events:all}.model-loading-img{width:100px;height:100px;object-fit:contain;animation:modelLoadSpin 2s linear infinite}.model-loading-label{font-size:calc(15px + var(--fs-bump));font-weight:600;color:var(--th-text-hi);letter-spacing:.1em}@keyframes modelLoadSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.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}.ctl-calib{flex:0 0 auto;width:22px;height:22px;margin-left:6px;padding:0;border:1px solid var(--th-border2);border-radius:var(--ds-r, 5px);background:transparent;color:var(--th-text-dim);font-size:calc(12px + var(--fs-bump));line-height:1;cursor:pointer}.ctl-calib:hover:not(:disabled){border-color:var(--th-text-hi);color:var(--th-text-hi)}.ctl-calib:disabled{opacity:.35;cursor:default}.ctl-calib.done{background:var(--ds-c-2f855a, #2f855a);border-color:var(--ds-c-2f855a, #2f855a);color:var(--ds-c-ffffff, #fff)}.ctl-calib.busy{border-color:var(--ds-c-e0a33a, #e0a33a);color:var(--ds-c-e0a33a, #e0a33a)}#dbgLog{position:absolute;left:12px;bottom:12px;width:340px;max-width:calc(100% - 24px);max-height:46%;display:flex;flex-direction:column;z-index:60;background:rgba(var(--th-vp-rgb),.92);border:1px solid var(--th-border2);border-radius:var(--ds-r, 8px);color:var(--th-text);font-size:calc(11px + var(--fs-bump));line-height:1.35;font-family:ui-monospace,Consolas,Courier New,monospace;box-shadow:var(--ds-shadow-pop, 0 4px 16px rgba(0,0,0,.45))}.dbg-head{display:flex;align-items:center;justify-content:space-between;padding:3px 8px;cursor:move;-webkit-user-select:none;user-select:none;touch-action:none;background:rgba(var(--th-sec-rgb),.75);border-bottom:1px solid var(--th-border);border-radius:var(--ds-r, 8px 8px 0 0);color:var(--th-text-hi);font-weight:700}.dbg-btns{display:flex;align-items:center;gap:6px}.dbg-copy,.dbg-close{background:transparent;border:none;color:var(--th-text-dim);font-size:calc(14px + var(--fs-bump));line-height:1;cursor:pointer;padding:0 2px}.dbg-copy{font-size:calc(12px + var(--fs-bump))}.dbg-copy:hover{color:var(--th-text-hi)}.dbg-close:hover{color:var(--th-accent)}.dbg-resize{position:absolute;right:0;bottom:0;width:14px;height:14px;cursor:nwse-resize;touch-action:none;background:linear-gradient(135deg,transparent 50%,var(--th-border2) 50%,var(--th-border2) 62%,transparent 62%,transparent 75%,var(--th-border2) 75%,var(--th-border2) 87%,transparent 87%);border-radius:var(--ds-r, 0 0 8px 0)}.dbg-diag{padding:4px 8px;white-space:pre-wrap;color:var(--th-text-hi);border-bottom:1px solid var(--th-border)}.dbg-diag:empty{display:none}.dbg-lines{flex:1;min-height:36px;overflow:auto;padding:4px 8px}.dbg-lines::-webkit-scrollbar,.dbg-diag::-webkit-scrollbar{width:4px;height:4px}.dbg-lines::-webkit-scrollbar-track,.dbg-diag::-webkit-scrollbar-track{background:transparent}.dbg-lines::-webkit-scrollbar-thumb,.dbg-diag::-webkit-scrollbar-thumb{background:var(--th-border2);border-radius:2px}.dbg-lines::-webkit-scrollbar-thumb:hover,.dbg-diag::-webkit-scrollbar-thumb:hover{background:var(--ds-accent-hover, #e94560)}.dbg-lines,.dbg-diag{scrollbar-width:thin;scrollbar-color:var(--th-border2) transparent}.dbg-line{white-space:pre-wrap;word-break:break-all}.dbg-line.warn{color:var(--ds-c-e0a33a, #e0a33a)}.dbg-line.error{color:var(--th-accent)}.obs-mode #dbgLog{display:none!important}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(.lang-option,.about-menu-item):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-] #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,.btn-capsule,.ctl-btn,.ctl-reset,.launcher-modal-close,.confirm-choice-btn.ghost):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,.btn-capsule,.ctl-btn,.ctl-reset,.launcher-modal-close,.confirm-choice-btn.ghost):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(.lang-option,.about-menu-item,.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(#langDropdown,#themeDropdown,#aboutDropdown){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(.lang-option,.about-menu-item){color:var(--ds-text-2)}html[data-theme^=ds-] :is(.lang-option,.about-menu-item):hover:not(:disabled){background:var(--ds-hover);color:var(--ds-text)}html[data-theme^=ds-] :is(.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,.launcher-modal){--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.cam-on{background:var(--ds-select-tint);border-color:var(--ds-select);color:var(--ds-text)}html[data-theme^=ds-] .ns-icon{background:var(--ds-text)}html[data-theme^=ds-] .live-section{background:var(--ds-card);border-color:var(--ds-line)}html[data-theme^=ds-] .live-section-title{font-family:var(--ds-font-head);color:var(--ds-text)}html[data-theme^=ds-] :is(.ctl-select,.ctl-val-input,#cameraSelect){background:var(--ds-bg);border-color:var(--ds-line-strong);color:var(--ds-text)}html[data-theme^=ds-] .ctl-select option{background:var(--ds-panel)}html[data-theme^=ds-] #loginGate{background:var(--ds-backdrop);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme^=ds-] :is(.launcher-modal,.gate-card){background:var(--ds-win-bg);border-color:var(--ds-win-line);box-shadow:inset 0 4px 0 var(--ds-primary),var(--ds-win-shadow);color:var(--ds-text)}html[data-theme^=ds-] .launcher-modal-title{color:var(--ds-text);font-family:var(--ds-font-head)}html[data-theme^=ds-] :is(.gate-note,.gate-msg){color:var(--ds-text-2)}html[data-theme^=ds-] #liveToast{background:var(--ds-tip-bg);border-color:var(--ds-tip-line);color:var(--ds-tip-text)}
