*{margin:0;padding:0;box-sizing:border-box}body{background:#000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden;color:#fff}#ar-container{width:100vw;height:100vh;position:relative}#ar-container video{object-fit:cover}.loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:auto;transition:opacity .18s ease}.loader.hidden{opacity:0;pointer-events:none}.loader-ring{width:72px;height:72px;border-radius:50%;border:5px solid rgba(255,255,255,.18);border-top-color:#2563eb;animation:loader-spin .9s linear infinite}.loader-pct{font-size:18px;font-weight:600;color:#fff;min-width:50px;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.6)}@keyframes loader-spin{to{transform:rotate(360deg)}}#ar-container.drag-over:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009;font-size:1.5rem;z-index:100;pointer-events:none}#lang-switcher{position:fixed;top:12px;right:12px;z-index:60;display:flex;gap:4px}#lang-switcher button{padding:4px 10px;border:1px solid rgba(255,255,255,.3);border-radius:6px;background:#00000080;color:#fff9;font-size:12px;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}#lang-switcher button.active{background:#2563eb;color:#fff;border-color:#2563eb}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:flex-end;justify-content:center;transition:opacity .25s}.sheet.hidden{opacity:0;pointer-events:none}.sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sheet-panel{position:relative;width:100%;max-width:560px;max-height:75vh;background:#12121af7;border-top-left-radius:16px;border-top-right-radius:16px;box-shadow:0 -8px 32px #00000080;display:flex;flex-direction:column;transform:translateY(0);transition:transform .25s ease}.sheet.hidden .sheet-panel{transform:translateY(100%)}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.08)}.sheet-header h3{font-size:16px;font-weight:600;color:#fff;margin:0}.sheet-close{width:32px;height:32px;padding:0;background:#ffffff14;color:#ffffffb3;border-radius:50%;font-size:13px;line-height:1;display:flex;align-items:center;justify-content:center}.sheet-close:hover{background:#ffffff26}.sheet-body{flex:1;overflow-y:auto;padding:12px 14px 18px;display:flex;flex-direction:column;gap:8px}.sheet-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:background .15s,border-color .15s}.sheet-item:hover{background:#ffffff14}.sheet-item.active{border-color:#2563eb;background:#2563eb1f}.sheet-item-icon{width:48px;height:48px;border-radius:8px;background:#ffffff14;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;overflow:hidden}.sheet-item-icon img{width:100%;height:100%;object-fit:contain}.sheet-item-text{flex:1;min-width:0}.sheet-item-title{font-size:14px;font-weight:500;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-item-sub{font-size:12px;color:#ffffff80;margin-top:2px}.sheet-upload{border-style:dashed;border-color:#2563eb66;background:#2563eb0f}.sheet-upload .sheet-item-icon{background:#2563eb26;color:#60a5fa}#catalog{display:flex;flex-direction:column;gap:8px}#controls{position:fixed;bottom:0;left:0;right:0;background:#000000b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 16px;z-index:50;display:flex;flex-direction:column;gap:10px}.controls-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}button,.file-btn{padding:8px 16px;border:none;border-radius:8px;background:#2563eb;color:#fff;font-size:14px;cursor:pointer;white-space:nowrap}button:hover,.file-btn:hover{background:#1d4ed8}button:active,.file-btn:active{background:#1e40af}.sliders{display:flex;gap:16px}.dials{display:none}@media(hover:none)and (pointer:coarse){.sliders{display:none}.dials{display:flex;justify-content:space-around;gap:16px;padding:4px 8px}}.dial-group{position:relative;flex:0 0 auto}.dial-btn{width:72px;height:72px;border-radius:50%;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:0;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background .15s,transform .15s,border-color .15s}.dial-group.active .dial-btn{background:#2563eb40;border-color:#2563eb;transform:scale(1.05)}.dial-label{font-size:10px;opacity:.7;text-transform:uppercase;letter-spacing:.5px}.dial-value{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.dial-popup{position:absolute;left:50%;bottom:calc(100% + 12px);transform:translate(-50%) translateY(8px);width:52px;opacity:0;pointer-events:none;transition:opacity .15s ease,transform .15s ease;display:flex;flex-direction:column;align-items:center;gap:6px}.dial-group.active .dial-popup{opacity:1;transform:translate(-50%) translateY(0)}.dial-popup-value{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:#fff;background:#2563eb;padding:2px 8px;border-radius:999px;min-width:44px;text-align:center}.dial-popup-track{position:relative;width:6px;height:180px;background:#ffffff26;border-radius:3px}.dial-popup-thumb{position:absolute;left:50%;top:50%;width:18px;height:18px;margin-left:-9px;margin-top:-9px;border-radius:50%;background:#2563eb;border:2px solid #fff;box-shadow:0 2px 8px #0006}.slider-group{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.slider-group label{font-size:12px;opacity:.7;white-space:nowrap}.slider-group input[type=range]{flex:1;min-width:60px;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;background:#ffffff26;border-radius:3px;outline:none;cursor:pointer}.slider-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:#2563eb;border:2px solid #fff;cursor:pointer;box-shadow:0 2px 6px #0006}.slider-group input[type=range]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#2563eb;border:2px solid #fff;cursor:pointer;box-shadow:0 2px 6px #0006}.slider-btn{width:32px;height:32px;padding:0;border-radius:8px;background:#ffffff1a;color:#fff;font-size:18px;font-weight:600;line-height:1;flex-shrink:0;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.slider-btn:hover{background:#ffffff26}.slider-btn:active{background:#2563eb;transform:scale(.95)}.slider-group span{font-size:12px;font-variant-numeric:tabular-nums;min-width:36px;text-align:right}@media(max-width:640px){.sliders{flex-direction:column;gap:10px}.slider-group{display:grid;grid-template-columns:64px 40px 1fr 40px 44px;align-items:center;gap:8px;width:100%}.slider-group label{font-size:13px;opacity:.9}.slider-group span{font-size:14px;font-weight:600;opacity:1}.slider-btn{width:40px;height:40px;font-size:22px}.slider-group input[type=range]::-webkit-slider-thumb{width:28px;height:28px}.slider-group input[type=range]::-moz-range-thumb{width:28px;height:28px}}#status{font-size:12px;opacity:.6}#btn-save-calib{background:#d97706}#btn-save-calib:hover{background:#b45309}.wt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;transition:opacity .3s}.wt-overlay.hidden{opacity:0;pointer-events:none}.wt-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.wt-card{position:relative;background:#14141ef2;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:28px 24px 20px;max-width:340px;width:88%;text-align:center;box-shadow:0 16px 48px #00000080;z-index:202;transition:transform .25s ease}.wt-illustration{margin:0 auto 14px;display:flex;align-items:center;justify-content:center;height:90px}.wt-illustration svg{width:140px;height:90px}.wt-title{font-size:17px;font-weight:600;margin-bottom:6px;color:#fff}.wt-text{font-size:13px;color:#ffffffa6;line-height:1.5;margin-bottom:18px}.wt-progress{display:flex;gap:6px;justify-content:center;margin-bottom:16px}.wt-dot{width:7px;height:7px;border-radius:50%;background:#fff3;transition:background .2s}.wt-dot.active{background:#2563eb}.wt-buttons{display:flex;justify-content:space-between;align-items:center}.wt-btn-group{display:flex;gap:8px}.wt-btn{padding:8px 18px;border:none;border-radius:8px;font-size:13px;cursor:pointer}.wt-btn-next{background:#2563eb;color:#fff}.wt-btn-next:hover{background:#1d4ed8}.wt-btn-back{background:#ffffff1a;color:#ffffffb3}.wt-btn-back:hover{background:#ffffff26}.wt-btn-skip{background:transparent;color:#fff6;padding:8px 12px}.wt-btn-skip:hover{color:#ffffffb3}.wt-arrow{position:fixed;z-index:203;pointer-events:none;transition:all .25s ease}.wt-arrow svg{display:block}.wt-highlight{position:relative;z-index:201;box-shadow:0 0 0 4px #2563eb99,0 0 20px #2563eb4d;border-radius:8px;animation:wt-pulse 1.5s ease-in-out infinite}@keyframes wt-pulse{0%,to{box-shadow:0 0 0 4px #2563eb99,0 0 20px #2563eb4d}50%{box-shadow:0 0 0 6px #2563eb66,0 0 30px #2563eb33}}.wt-overlay.wt-anchor-bottom{align-items:flex-end}.wt-overlay.wt-anchor-bottom .wt-card{margin-bottom:150px}
