*,:before,:after{box-sizing:border-box}html,body{cursor:default;background:#000;width:100%;height:100%;margin:0;padding:0;overflow:hidden}#app{width:100%;height:100%}.projector-canvas[data-v-e4556ab4]{background:#000;width:100vw;height:100vh;display:block;position:fixed;top:0;left:0}.sp[data-v-45526f71]{z-index:9000;pointer-events:none;height:100vh;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,system-ui,sans-serif;font-size:12px;display:flex;position:fixed;top:0;left:0}.sp-tab[data-v-45526f71]{pointer-events:auto;z-index:9001;color:#a1a1aa;cursor:pointer;background:#09090b;border:1px solid #27272a;border-left:none;border-radius:0 8px 8px 0;justify-content:center;align-items:center;width:28px;height:52px;transition:background .15s,color .15s,left .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:50%;left:0;transform:translateY(-50%)}.sp.open .sp-tab[data-v-45526f71]{left:268px}.sp-tab[data-v-45526f71]:hover{color:#fafafa;background:#18181b}.sp-body[data-v-45526f71]{pointer-events:auto;color:#e4e4e7;background:#09090b;border-right:1px solid #27272a;flex-direction:column;width:268px;height:100vh;padding:24px 0;display:flex;overflow:hidden auto}.sp-body[data-v-45526f71]::-webkit-scrollbar{width:4px}.sp-body[data-v-45526f71]::-webkit-scrollbar-thumb{background:#27272a;border-radius:2px}.sp-header[data-v-45526f71]{justify-content:space-between;align-items:center;padding:0 16px 12px;display:flex}.sp-title[data-v-45526f71]{color:#fafafa;letter-spacing:-.01em;font-size:13px;font-weight:600}.sp-status[data-v-45526f71]{letter-spacing:.04em;text-transform:uppercase;border:1px solid #27272a;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:500}.sp-status.idle[data-v-45526f71]{color:#52525b;border-color:#27272a}.sp-status.loading[data-v-45526f71]{color:#a16207;background:#1c1003;border-color:#451a03;animation:1.2s infinite pulse-text-45526f71}.sp-status.running[data-v-45526f71]{color:#16a34a;background:#052e16;border-color:#14532d}.sp-status.error[data-v-45526f71]{color:#dc2626;background:#1a0505;border-color:#7f1d1d}@keyframes pulse-text-45526f71{0%,to{opacity:1}50%{opacity:.4}}.sp-stats[data-v-45526f71]{gap:0;padding:0 16px 14px;display:flex}.sp-stat[data-v-45526f71]{flex-direction:column;flex:1;align-items:center;gap:1px;display:flex}.sp-stat span[data-v-45526f71]{color:#fafafa;letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:20px;font-weight:300;line-height:1}.sp-stat label[data-v-45526f71]{color:#52525b;text-transform:uppercase;letter-spacing:.06em;font-size:10px}.sp-divider[data-v-45526f71]{background:#18181b;flex-shrink:0;height:1px;margin:0}.sp-section[data-v-45526f71]{flex-direction:column;gap:6px;padding:12px 16px;display:flex}.sp-section-label[data-v-45526f71]{text-transform:uppercase;letter-spacing:.08em;color:#52525b;margin:0 0 2px;font-size:10px;font-weight:600}.sp-group-label[data-v-45526f71]{text-transform:uppercase;letter-spacing:.08em;color:#3f3f46;margin:8px 0 4px;font-size:10px;font-weight:600}.sp-row[data-v-45526f71]{justify-content:space-between;align-items:center;height:28px;display:flex}.sp-row span[data-v-45526f71]{color:#a1a1aa;font-size:12px}.sp-btn[data-v-45526f71]{color:#e4e4e7;cursor:pointer;text-align:center;background:#18181b;border:1px solid #27272a;border-radius:6px;width:100%;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:500;transition:background .12s,color .12s}.sp-btn[data-v-45526f71]:hover:not(:disabled){color:#fafafa;background:#27272a}.sp-btn[data-v-45526f71]:disabled{opacity:.3;cursor:default}.sp-btn.ghost[data-v-45526f71]{color:#71717a;background:0 0;border-color:#27272a}.sp-btn.ghost[data-v-45526f71]:hover:not(:disabled){color:#e4e4e7;background:#18181b}.sp-btn.destructive[data-v-45526f71]{color:#71717a;background:0 0;border-color:#27272a}.sp-btn.destructive[data-v-45526f71]:hover:not(:disabled){color:#fca5a5;background:#1a0505;border-color:#7f1d1d}.sp-btn-group[data-v-45526f71]{grid-template-columns:1fr 1fr;gap:6px;display:grid}.sp-ghost-pill[data-v-45526f71]{color:#52525b;cursor:pointer;background:0 0;border:1px solid #27272a;border-radius:999px;align-self:flex-start;padding:3px 10px;font-family:inherit;font-size:11px;transition:color .12s,border-color .12s}.sp-ghost-pill[data-v-45526f71]:hover{color:#a1a1aa;border-color:#3f3f46}.sp-ghost-pill[data-v-45526f71]:disabled{opacity:.4;cursor:not-allowed}.sp-color-row[data-v-45526f71]{color:#a1a1aa;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;display:flex}.sp-color-right[data-v-45526f71]{align-items:center;gap:8px;display:flex}.sp-color-swatch[data-v-45526f71]{border:1px solid #3f3f46;border-radius:4px;width:18px;height:18px}.sp-toggle[data-v-45526f71]{cursor:pointer;background:#18181b;border:1px solid #3f3f46;border-radius:999px;flex-shrink:0;width:32px;height:18px;padding:0;transition:background .2s,border-color .2s;position:relative}.sp-toggle[data-v-45526f71]:after{content:"";background:#52525b;border-radius:50%;width:12px;height:12px;transition:transform .2s,background .2s;position:absolute;top:2px;left:2px}.sp-toggle.on[data-v-45526f71]{background:#fafafa;border-color:#fafafa}.sp-toggle.on[data-v-45526f71]:after{background:#09090b;transform:translate(14px)}.sp-slider[data-v-45526f71]{flex-direction:column;gap:4px;display:flex}.sp-slider-meta[data-v-45526f71]{justify-content:space-between;align-items:center;display:flex}.sp-slider-meta span[data-v-45526f71]:first-child{color:#71717a}.sp-slider-meta span:first-child:hover .sp-info[data-v-45526f71]{color:#a1a1aa;border-color:#52525b}.sp-slider-meta span:first-child:hover .sp-tooltip[data-v-45526f71]{opacity:1;pointer-events:none}.sp-info[data-v-45526f71]{color:#0000;cursor:default;vertical-align:middle;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;margin-left:2px;padding:0;font-family:inherit;font-size:10px;font-style:normal;line-height:1;display:inline-flex;position:relative}.sp-tooltip[data-v-45526f71]{opacity:0;color:#d4d4d8;z-index:9999;white-space:normal;pointer-events:none;background:#18181b;border:1px solid #27272a;border-radius:6px;width:180px;padding:6px 8px;font-family:-apple-system,BlinkMacSystemFont,Inter,system-ui,sans-serif;font-size:11px;font-style:normal;line-height:1.4;transition:opacity .15s;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.sp-slider-val[data-v-45526f71]{font-variant-numeric:tabular-nums;color:#a1a1aa;text-align:right;min-width:40px;font-size:11px}.sp-slider input[type=range][data-v-45526f71]{appearance:none;cursor:pointer;background:#27272a;border-radius:2px;outline:none;width:100%;height:3px}.sp-slider input[type=range][data-v-45526f71]::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#09090b;border:1.5px solid #71717a;border-radius:50%;width:13px;height:13px;transition:border-color .15s,transform .12s}.sp-slider input[type=range][data-v-45526f71]::-webkit-slider-thumb:hover{border-color:#a1a1aa;transform:scale(1.15)}.sp-slider input[type=range][data-v-45526f71]::-moz-range-thumb{cursor:pointer;background:#09090b;border:1.5px solid #71717a;border-radius:50%;width:13px;height:13px}.sp-slider input[type=range][data-v-45526f71]::-moz-range-track{background:#27272a;border:none;border-radius:2px;height:3px}.sp-progress[data-v-45526f71]{flex-direction:column;gap:4px;display:flex}.sp-progress-bar[data-v-45526f71]{background:#27272a;border-radius:2px;height:3px;overflow:hidden}.sp-progress-fill[data-v-45526f71]{background:#fafafa;border-radius:2px;height:100%;transition:width .3s}.sp-progress-msg[data-v-45526f71]{color:#52525b;font-size:11px}.sp-calib-ok[data-v-45526f71]{color:#4ade80;align-items:center;gap:5px;font-size:11px;display:flex}.sp-collapse-btn[data-v-45526f71]{cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:0;font-family:inherit;display:flex}.sp-collapse-btn:hover .sp-section-label[data-v-45526f71]{color:#71717a}.sp-chevron[data-v-45526f71]{color:#3f3f46;transition:transform .2s}.sp-chevron.open[data-v-45526f71]{transform:rotate(180deg)}.sp-video-wrap[data-v-45526f71]{border:1px solid #27272a;border-radius:6px;overflow:hidden}.sp-video-wrap video[data-v-45526f71]{background:#000;width:100%;display:block}.sp-footer[data-v-45526f71]{color:#3f3f46;text-align:center;margin:auto 0 0;padding:12px 16px 0;font-size:10px}.sp-footer kbd[data-v-45526f71]{background:#18181b;border:1px solid #27272a;border-radius:3px;padding:1px 4px;font-family:inherit;font-size:10px}.app-root[data-v-c32165f8]{background:#000;width:100vw;height:100vh;overflow:hidden}.pick-overlay[data-v-c32165f8]{z-index:9999;cursor:crosshair;justify-content:center;align-items:flex-end;padding-bottom:40px;display:flex;position:fixed;inset:0}.pick-hint[data-v-c32165f8]{color:#fff;pointer-events:none;background:#000000bf;border-radius:8px;padding:8px 18px;font-size:13px}.status-overlay[data-v-c32165f8]{pointer-events:none;z-index:100;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.status-box[data-v-c32165f8]{text-align:center;pointer-events:auto;background:#000000bf;border:1px solid #ffffff26;border-radius:10px;padding:24px 36px;font-family:system-ui,sans-serif}.start-btn[data-v-c32165f8]{color:#000;cursor:pointer;background:#fff;border:none;border-radius:8px;padding:12px 32px;font-family:system-ui,sans-serif;font-size:18px;font-weight:600;transition:background .15s}.start-btn[data-v-c32165f8]:hover{background:#e0e0e0}.status-text[data-v-c32165f8]{color:#e0e0e0;font-size:20px;font-weight:500}.sub[data-v-c32165f8]{color:#ffffff73;margin-top:8px;font-size:13px;font-weight:400}.fade-enter-active[data-v-c32165f8],.fade-leave-active[data-v-c32165f8]{transition:opacity .4s}.fade-enter-from[data-v-c32165f8],.fade-leave-to[data-v-c32165f8]{opacity:0}
