.root[data-v-fc61b049]{min-height:100vh;min-height:100dvh}.code-entry[data-v-e7b02a4a]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--sh-1);text-align:center}.ce-title[data-v-e7b02a4a]{font-size:17px;font-weight:700;color:var(--fg);margin-bottom:4px}.ce-sub[data-v-e7b02a4a]{font-size:13px;color:var(--fg-muted);margin-bottom:16px}.otp[data-v-e7b02a4a]{display:flex;gap:10px;justify-content:center;margin-bottom:14px}.otp-cell[data-v-e7b02a4a]{width:56px;height:64px;text-align:center;font-size:28px;font-weight:700;font-family:ui-monospace,SF Mono,monospace;color:var(--fg);background:var(--bg);border:1.5px solid var(--border);border-radius:var(--r-md);min-height:0;padding:0;caret-color:var(--primary);-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield;transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.otp-cell[data-v-e7b02a4a]::-webkit-outer-spin-button,.otp-cell[data-v-e7b02a4a]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.otp-cell[data-v-e7b02a4a]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #6366f12e;transform:translateY(-1px)}.otp-cell[data-v-e7b02a4a]:disabled{opacity:.6}.ce-status[data-v-e7b02a4a]{font-size:13px;color:var(--fg-muted);margin-bottom:8px}.ce-error[data-v-e7b02a4a]{font-size:13px;color:#b91c1c;background:#fef2f2;padding:8px 12px;border-radius:var(--r-sm);margin-bottom:8px}.ce-actions[data-v-e7b02a4a]{display:flex;gap:8px;justify-content:center}.fade-enter-active[data-v-e7b02a4a],.fade-leave-active[data-v-e7b02a4a]{transition:opacity .18s ease}.fade-enter-from[data-v-e7b02a4a],.fade-leave-to[data-v-e7b02a4a]{opacity:0}@media(max-width:380px){.otp-cell[data-v-e7b02a4a]{width:48px;height:56px;font-size:24px}.otp[data-v-e7b02a4a]{gap:6px}}.landing[data-v-2690bf30]{min-height:100dvh;display:flex;flex-direction:column;padding-bottom:var(--safe-bottom)}.lhead[data-v-2690bf30]{display:flex;align-items:center;justify-content:space-between;padding:calc(12px + var(--safe-top)) 20px 4px}.brand[data-v-2690bf30]{font-weight:700;font-size:16px;display:flex;align-items:center;gap:10px;letter-spacing:-.01em}.brand-logo[data-v-2690bf30]{width:32px;height:32px;border-radius:8px;object-fit:contain;background:#fff;box-shadow:0 2px 8px #0f172a1a}.head-actions[data-v-2690bf30]{display:flex;align-items:center;gap:6px}.icon-btn[data-v-2690bf30]{width:40px;height:40px;display:grid;place-items:center;background:var(--bg-card);color:var(--fg-2);border:1px solid var(--border);border-radius:var(--r-pill);cursor:pointer;padding:0;min-height:0;transition:background var(--t-fast) var(--ease),transform var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease);box-shadow:var(--sh-1)}.icon-btn[data-v-2690bf30]:hover{border-color:var(--primary);color:var(--primary)}.icon-btn[data-v-2690bf30]:active{transform:scale(.94)}.cab-btn[data-v-2690bf30]{display:inline-flex;align-items:center;gap:8px}.count-badge[data-v-2690bf30]{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 7px;background:var(--primary-grad);color:#fff;border-radius:var(--r-pill);font-size:11px;font-weight:700}.hero[data-v-2690bf30]{position:relative;padding:28px 20px 36px;overflow:hidden}.hero-bg[data-v-2690bf30]{position:absolute;inset:-40px -20px auto -20px;height:380px;background:radial-gradient(circle at 25% 0%,rgba(99,102,241,.3),transparent 55%),radial-gradient(circle at 80% 30%,rgba(168,85,247,.25),transparent 50%);pointer-events:none;z-index:0}.hero-content[data-v-2690bf30]{position:relative;z-index:1;max-width:var(--max-w);margin:0 auto}.hero-logo-wrap[data-v-2690bf30]{display:flex;justify-content:center;margin-bottom:16px}.hero-logo[data-v-2690bf30]{width:clamp(140px,36vw,200px);height:auto;filter:drop-shadow(0 18px 28px rgba(15,23,42,.18));animation:float-2690bf30 5s ease-in-out infinite}@keyframes float-2690bf30{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.tag[data-v-2690bf30]{display:inline-block;padding:4px 12px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#ffffffb3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--border);color:var(--primary);border-radius:var(--r-pill);margin-bottom:16px}.hero-title[data-v-2690bf30]{font-size:clamp(34px,9vw,48px);font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0 0 14px;color:var(--fg)}.grad[data-v-2690bf30]{background:var(--primary-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-sub[data-v-2690bf30]{font-size:16px;line-height:1.5;color:var(--fg-2);max-width:480px;margin:0 0 24px}.hero-actions[data-v-2690bf30]{display:flex;flex-direction:column;gap:10px}.code-modal[data-v-2690bf30]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0f172a8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px}.code-modal-card[data-v-2690bf30]{position:relative;width:100%;max-width:420px;border-radius:var(--r-lg);overflow:visible}.modal-close[data-v-2690bf30]{position:absolute;top:-10px;right:-10px;width:36px;height:36px;border-radius:50%;background:#fff;color:var(--fg);border:1px solid var(--border);display:grid;place-items:center;cursor:pointer;padding:0;min-height:0;box-shadow:var(--sh-2);z-index:1}.modal-close[data-v-2690bf30]:active{transform:scale(.94)}.modal-enter-active[data-v-2690bf30],.modal-leave-active[data-v-2690bf30]{transition:opacity var(--t-med),transform var(--t-med)}.modal-enter-from[data-v-2690bf30],.modal-leave-to[data-v-2690bf30]{opacity:0;transform:scale(.96)}.last-thumb-wrap[data-v-2690bf30]{position:relative;margin:24px auto 0;max-width:var(--max-w);border-radius:var(--r-lg);overflow:hidden;cursor:pointer;box-shadow:var(--sh-2);border:1px solid var(--border);background:var(--bg-card)}.last-thumb-wrap img[data-v-2690bf30]{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.last-thumb-label[data-v-2690bf30]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;font-size:14px;color:var(--fg-2);background:var(--bg-card)}.features[data-v-2690bf30]{padding:32px 20px 8px;max-width:var(--max-w);margin:0 auto;width:100%}.features h2[data-v-2690bf30]{margin-bottom:16px}.feature-grid[data-v-2690bf30]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.feature[data-v-2690bf30]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:16px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--sh-1)}.feature h3[data-v-2690bf30]{font-size:15px}.feature p[data-v-2690bf30]{line-height:1.4}.f-icon[data-v-2690bf30]{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:#fff;margin-bottom:4px}.lfoot[data-v-2690bf30]{margin-top:auto;padding:24px 20px calc(24px + var(--safe-bottom));text-align:center}.version-tag[data-v-2690bf30]{margin-top:4px;opacity:.5;font-family:ui-monospace,SF Mono,monospace}.app-bar[data-v-03fbdfd8]{position:sticky;top:0;z-index:50;padding-top:var(--safe-top);background:#f8fafcd9;backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--border)}.bar-row[data-v-03fbdfd8]{height:var(--bar-h);padding:0 12px;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;max-width:var(--max-w);margin:0 auto}.ico-btn[data-v-03fbdfd8]{width:44px;height:44px;display:grid;place-items:center;background:transparent;color:var(--fg-2);border:0;border-radius:var(--r-pill);cursor:pointer;padding:0;min-height:0;transition:background var(--t-fast) var(--ease)}.ico-btn[data-v-03fbdfd8]:active{background:var(--bg-soft)}.ico-btn.placeholder[data-v-03fbdfd8]{pointer-events:none}.center-block[data-v-03fbdfd8]{text-align:center;min-width:0}.brand[data-v-03fbdfd8]{font-weight:700;font-size:15px;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:8px;color:var(--fg);text-decoration:none;cursor:pointer;padding:6px 10px;border-radius:var(--r-pill);transition:background var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.brand[data-v-03fbdfd8]:active{transform:scale(.96);background:var(--bg-soft)}.brand[data-v-03fbdfd8]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.brand-logo[data-v-03fbdfd8]{width:24px;height:24px;border-radius:6px;object-fit:contain;background:#fff}.contractor[data-v-03fbdfd8]{font-size:12px;color:var(--fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-track[data-v-03fbdfd8]{height:3px;background:var(--bg-soft);overflow:hidden}.progress-fill[data-v-03fbdfd8]{height:100%;background:var(--primary-grad);border-radius:999px;transition:width var(--t-slow) var(--ease-out)}.offline-pill[data-v-03fbdfd8]{position:absolute;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fef3c7;pointer-events:auto}.off-dot[data-v-03fbdfd8]{width:8px;height:8px;border-radius:50%;background:#f59e0b;animation:blink-03fbdfd8 1.4s var(--ease) infinite}@keyframes blink-03fbdfd8{0%,to{opacity:1}50%{opacity:.3}}.fade-enter-active[data-v-03fbdfd8],.fade-leave-active[data-v-03fbdfd8]{transition:opacity .2s ease}.fade-enter-from[data-v-03fbdfd8],.fade-leave-to[data-v-03fbdfd8]{opacity:0}.bottom-bar[data-v-9a534407]{position:fixed;left:0;right:0;bottom:0;z-index:40;padding-bottom:var(--safe-bottom);background:#ffffffeb;backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-top:1px solid var(--border)}.inner[data-v-9a534407]{max-width:var(--max-w);margin:0 auto;padding:12px 16px 16px;display:flex;gap:10px}.ar[data-v-7b8b6205]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;z-index:9999;overflow:hidden;-webkit-touch-callout:none}.video[data-v-7b8b6205]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none;z-index:1;--stab-x: 0px;--stab-y: 0px;transform:scale(1.08) translate(var(--stab-x),var(--stab-y));transform-origin:center center;will-change:transform}.tap-layer[data-v-7b8b6205]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:transparent;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.geo-lines-wrap[data-v-7b8b6205]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3;transform-origin:center center;will-change:transform}.geo-line.pinned[data-v-7b8b6205]{height:4.5px;background:#f43f5efa;box-shadow:0 0 12px #f43f5ee6,0 0 20px #f43f5e80;border-radius:2.5px;z-index:4}.pinned-badge[data-v-7b8b6205]{position:absolute;left:-14px;top:-10px;width:22px;height:22px;border-radius:50%;background:#f43f5e;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000080}.pin-hint[data-v-7b8b6205]{position:absolute;top:64px;left:50%;transform:translate(-50%);padding:6px 12px;background:#f43f5eeb;color:#fff;font-size:12px;font-weight:600;border-radius:14px;box-shadow:0 2px 8px #0006;z-index:50;pointer-events:none;white-space:nowrap}.vp-ray[data-v-7b8b6205]{position:absolute;height:2px;transform-origin:0 50%;pointer-events:none;background:repeating-linear-gradient(to right,#fb7185d9 0,#fb7185d9 6px,#fb718500 6px,#fb718500 12px);box-shadow:0 0 4px #fb718566;z-index:3;transition:opacity .28s ease,transform .24s cubic-bezier(.22,.61,.36,1),left .24s cubic-bezier(.22,.61,.36,1),top .24s cubic-bezier(.22,.61,.36,1),width .24s cubic-bezier(.22,.61,.36,1)}.pin-handle[data-v-7b8b6205]{position:absolute;width:26px;height:26px;border-radius:50%;background:#fffffff5;border:3px solid rgba(244,63,94,1);box-shadow:0 2px 10px #f43f5e99,0 0 0 8px #f43f5e2e;transform:translate(-50%,-50%);pointer-events:auto;cursor:grab;touch-action:none;z-index:6;-webkit-tap-highlight-color:transparent}.pin-handle[data-v-7b8b6205]:active{cursor:grabbing;background:#f43f5e;box-shadow:0 2px 14px #f43f5ee6,0 0 0 14px #f43f5e40}.btn-geometry[data-v-7b8b6205]{position:absolute;bottom:calc(110px + var(--safe-bottom, 0px));left:16px;padding:10px 16px;border-radius:999px;background:linear-gradient(135deg,#f43f5ef2,#be185df2);color:#fff;font-size:13px;font-weight:600;border:0;box-shadow:0 3px 10px #0006;z-index:100;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.btn-geometry[data-v-7b8b6205]:active{transform:scale(.96)}.geo-line[data-v-7b8b6205]{position:absolute;height:2.5px;transform-origin:0 50%;pointer-events:none;z-index:3;border-radius:1.5px;transition:opacity .32s ease,transform .26s cubic-bezier(.22,.61,.36,1),left .26s cubic-bezier(.22,.61,.36,1),top .26s cubic-bezier(.22,.61,.36,1),width .26s cubic-bezier(.22,.61,.36,1)}.geo-line.vertical[data-v-7b8b6205]{background:#22c55ee6;box-shadow:0 0 6px #22c55eb3}.geo-line.horizontal[data-v-7b8b6205]{background:#38bdf8e6;box-shadow:0 0 6px #38bdf8b3}.geo-line.oblique[data-v-7b8b6205]{background:#fbbf24e6;box-shadow:0 0 6px #fbbf24b3}.hint[data-v-7b8b6205]{position:absolute;left:12px;right:12px;bottom:calc(140px + var(--safe-bottom, 0px));text-align:center;font-size:14px;line-height:1.4;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.85);pointer-events:none;z-index:3}.counter[data-v-7b8b6205]{position:absolute;top:calc(14px + var(--safe-top, 0px));left:50%;transform:translate(-50%);background:#0009;color:#fff;padding:6px 14px;border-radius:999px;font-size:13px;font-weight:600;text-shadow:0 1px 4px rgba(0,0,0,.5);z-index:50;pointer-events:none}.level[data-v-7b8b6205]{position:absolute;top:calc(70px + var(--safe-top, 0px));right:16px;width:56px;height:56px;pointer-events:none;z-index:50}.level-track[data-v-7b8b6205]{position:absolute;background:#00000080;border-radius:999px}.level-track.h[data-v-7b8b6205]{top:50%;left:0;right:0;height:6px;transform:translateY(-50%)}.level-track.v[data-v-7b8b6205]{left:50%;top:0;bottom:0;width:6px;transform:translate(-50%)}.level-mark[data-v-7b8b6205]{position:absolute;top:50%;left:50%;width:2px;height:14px;background:#ffffffd9;transform:translate(-50%,-50%)}.level-track.v .level-mark[data-v-7b8b6205]{width:14px;height:2px}.level-bubble[data-v-7b8b6205]{position:absolute;top:50%;left:50%;width:12px;height:12px;border-radius:50%;background:#fbbf24;box-shadow:0 0 6px #fbbf24bf}.btn-level-on[data-v-7b8b6205]{position:absolute;top:calc(70px + var(--safe-top, 0px));right:16px;width:44px;height:44px;border-radius:50%;background:#0000008c;color:#fff;border:0;font-size:20px;line-height:1;cursor:pointer;padding:0;display:grid;place-items:center;-webkit-tap-highlight-color:rgba(255,255,255,.2);touch-action:manipulation;z-index:100}.btn-level-on[data-v-7b8b6205]:active{background:#ffffff2e;transform:scale(.92)}.btn-level-on[data-v-7b8b6205]:disabled{opacity:.5}.flash[data-v-7b8b6205]{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;opacity:.85;z-index:80;pointer-events:none;animation:flash-fade-7b8b6205 .14s ease-out forwards}@keyframes flash-fade-7b8b6205{0%{opacity:.85}to{opacity:0}}.btn-close[data-v-7b8b6205]{position:absolute;top:calc(12px + var(--safe-top, 0px));left:12px;width:48px;height:48px;border-radius:50%;background:#0000008c;color:#fff;border:0;font-size:28px;line-height:1;display:grid;place-items:center;cursor:pointer;padding:0;-webkit-tap-highlight-color:rgba(255,255,255,.2);touch-action:manipulation;z-index:100}.btn-close[data-v-7b8b6205]:active{background:#ffffff2e}.btn-done[data-v-7b8b6205]{position:absolute;top:calc(12px + var(--safe-top, 0px));right:12px;min-height:44px;padding:0 18px;border-radius:999px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:0;font:inherit;font-weight:700;font-size:14px;cursor:pointer;box-shadow:0 4px 16px #6366f166;-webkit-tap-highlight-color:rgba(255,255,255,.2);touch-action:manipulation;z-index:100}.btn-done[data-v-7b8b6205]:active{transform:scale(.95)}.bottom[data-v-7b8b6205]{position:absolute;left:0;right:0;bottom:0;padding:12px 16px calc(20px + var(--safe-bottom, 0px));background:linear-gradient(to top,rgba(0,0,0,.6),transparent);z-index:100}.bottom-row[data-v-7b8b6205]{display:flex;align-items:center;justify-content:center;gap:10px;width:100%}.thumbs-side[data-v-7b8b6205]{flex:1 1 0;display:flex;flex-wrap:nowrap;gap:4px;min-width:0;overflow:hidden}.thumbs-side.left[data-v-7b8b6205]{flex-direction:row-reverse;justify-content:flex-start}.thumbs-side.right[data-v-7b8b6205]{flex-direction:row;justify-content:flex-start}.thumb[data-v-7b8b6205]{flex:0 1 56px;min-width:24px;height:auto;aspect-ratio:1;max-height:56px;border-radius:8px;object-fit:cover;border:1.5px solid rgba(255,255,255,.55);background:#000;display:block;transition:flex-basis .18s ease}.shutter[data-v-7b8b6205]{width:74px;height:74px;border-radius:50%;border:3px solid #fff;background:#ffffff0d;cursor:pointer;padding:0;display:grid;place-items:center;-webkit-tap-highlight-color:rgba(255,255,255,.2);touch-action:manipulation;justify-self:center}.shutter[data-v-7b8b6205]:disabled{opacity:.5}.shutter-core[data-v-7b8b6205]{width:56px;height:56px;border-radius:50%;background:#fff;transition:transform 80ms;pointer-events:none}.shutter:active .shutter-core[data-v-7b8b6205]{transform:scale(.85)}.state[data-v-7b8b6205]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;gap:14px;background:#111;color:#fff;text-align:center;padding:24px;z-index:90}.loader[data-v-7b8b6205]{width:40px;height:40px;border-radius:50%;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;animation:spin-7b8b6205 .9s linear infinite;margin:0 auto}@keyframes spin-7b8b6205{to{transform:rotate(360deg)}}.warn[data-v-7b8b6205]{font-size:36px}.msg[data-v-7b8b6205]{max-width:320px;color:#ffffffd9;line-height:1.45;margin:0 auto}.btn-fallback[data-v-7b8b6205]{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.5);padding:12px 20px;border-radius:12px;font:inherit;font-weight:600;cursor:pointer;touch-action:manipulation}.start[data-v-08df60b5]{min-height:100dvh;padding-bottom:calc(var(--bottom-h) + var(--safe-bottom))}.content[data-v-08df60b5]{max-width:var(--max-w);margin:0 auto;padding:20px 16px 28px;display:flex;flex-direction:column;gap:18px}.content.saving[data-v-08df60b5]{align-items:center;justify-content:center;min-height:50vh}.grid[data-v-08df60b5]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.card[data-v-08df60b5]{display:flex;flex-direction:column;gap:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:16px;text-align:left;cursor:pointer;min-height:0;box-shadow:var(--sh-1);transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.card[data-v-08df60b5]:active{transform:scale(.97);box-shadow:var(--sh-2)}.ic[data-v-08df60b5]{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#fff}.lbl[data-v-08df60b5]{font-weight:700;font-size:14px;line-height:1.25;color:var(--fg)}.sub[data-v-08df60b5]{font-size:12px;color:var(--fg-muted);line-height:1.3}.proto-head[data-v-08df60b5]{display:flex;align-items:center;gap:12px;margin-bottom:4px}.proto-ic[data-v-08df60b5]{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;color:#fff;flex-shrink:0}.proto-head h2[data-v-08df60b5]{margin:0;line-height:1.2}.proto-title[data-v-08df60b5]{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);font-weight:700;margin-top:8px}.proto-list[data-v-08df60b5]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.proto-list li[data-v-08df60b5]{display:flex;gap:12px;align-items:flex-start;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:12px 14px;font-size:14px;line-height:1.4;color:var(--fg-2)}.proto-list .num[data-v-08df60b5]{width:26px;height:26px;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-weight:700;font-size:13px;display:grid;place-items:center;flex-shrink:0}.ar-tease[data-v-08df60b5]{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;border-radius:var(--r-lg);padding:14px 16px;display:flex;flex-direction:column;gap:6px;box-shadow:0 8px 24px #0f172a2e}.ar-tease-head[data-v-08df60b5]{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px}.ar-tease-head+.muted[data-v-08df60b5]{color:#ffffffb8}.ar-pulse[data-v-08df60b5]{width:8px;height:8px;border-radius:50%;background:#fbbf24;animation:arpulse-08df60b5 1.4s ease infinite}@keyframes arpulse-08df60b5{0%,to{box-shadow:0 0 #fbbf24bf}50%{box-shadow:0 0 0 6px #fbbf2400}}.loader[data-v-08df60b5]{width:38px;height:38px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--primary);animation:spin-08df60b5 .9s linear infinite}@keyframes spin-08df60b5{to{transform:rotate(360deg)}}.step-enter-active[data-v-08df60b5],.step-leave-active[data-v-08df60b5]{transition:opacity var(--t-med),transform var(--t-med)}.step-enter-from[data-v-08df60b5]{opacity:0;transform:translate(16px)}.step-leave-to[data-v-08df60b5]{opacity:0;transform:translate(-16px)}.fade-enter-active[data-v-08df60b5],.fade-leave-active[data-v-08df60b5]{transition:opacity .18s ease}.fade-enter-from[data-v-08df60b5],.fade-leave-to[data-v-08df60b5]{opacity:0}.annotator[data-v-4be6400f]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000;display:flex;flex-direction:column;color:#fff}.anno-head[data-v-4be6400f]{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:calc(8px + var(--safe-top)) 12px 8px;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hbtn[data-v-4be6400f]{width:44px;height:44px;display:grid;place-items:center;background:transparent;color:#fff;border:0;padding:0;min-height:0;border-radius:var(--r-pill);cursor:pointer;transition:background var(--t-fast) var(--ease)}.hbtn[data-v-4be6400f]:active{background:#ffffff1a}.hbtn.danger[data-v-4be6400f]{color:#fca5a5}.hcenter[data-v-4be6400f]{text-align:center;min-width:0}.htitle[data-v-4be6400f]{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hsub[data-v-4be6400f]{font-size:11px;color:#fff9}.tool-bar[data-v-4be6400f]{display:flex;gap:6px;padding:8px 12px;background:#000000a6;border-bottom:1px solid rgba(255,255,255,.08)}.tool[data-v-4be6400f]{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;min-height:40px;background:transparent;color:#ffffffb3;border:1px solid rgba(255,255,255,.15);border-radius:var(--r-md);font:inherit;font-weight:600;font-size:13px;cursor:pointer;transition:all var(--t-fast) var(--ease)}.tool.active[data-v-4be6400f]{background:var(--primary-grad);color:#fff;border-color:transparent;box-shadow:0 4px 12px #6366f166}.stage[data-v-4be6400f]{flex:1;position:relative;overflow:hidden;display:grid;place-items:center;cursor:crosshair;touch-action:manipulation}.line-svg[data-v-4be6400f]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.line-shape[data-v-4be6400f]{stroke:#22d3ee;stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6));pointer-events:stroke;cursor:pointer}.line-shape.active[data-v-4be6400f]{stroke:#fbbf24;stroke-width:4}.pin.line-end[data-v-4be6400f]{width:16px;height:16px;margin:-8px 0 0 -8px;background:#22d3ee;border-width:2px;font-size:0}.pin.line-end.active[data-v-4be6400f]{background:#fbbf24}.pin.pending[data-v-4be6400f]{width:22px;height:22px;margin:-11px 0 0 -11px;background:#fff;color:#000;font-size:18px;font-weight:900;animation:pulse-pending-4be6400f 1s var(--ease) infinite}@keyframes pulse-pending-4be6400f{0%,to{box-shadow:0 0 #ffffffb3,0 4px 12px #00000080}50%{box-shadow:0 0 0 12px #fff0,0 4px 12px #00000080}}.stage img[data-v-4be6400f]{max-width:100%;max-height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.pin[data-v-4be6400f]{position:absolute;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:50%;background:var(--primary-grad);color:#fff;border:3px solid #fff;box-shadow:0 4px 12px #00000080;display:grid;place-items:center;cursor:pointer;font-weight:700;font-size:14px;transition:transform var(--t-fast) var(--ease);padding:0;min-height:0;z-index:5}.pin[data-v-4be6400f]:active{transform:scale(.92)}.pin.active[data-v-4be6400f]{transform:scale(1.18);box-shadow:0 0 0 4px #6366f173,0 4px 12px #00000080}.pin.pin-audio[data-v-4be6400f]{background:linear-gradient(135deg,#a855f7,#ec4899)}.pin.pin-text[data-v-4be6400f]{background:linear-gradient(135deg,#0ea5e9,#6366f1)}.pin.pin-empty[data-v-4be6400f]{background:linear-gradient(135deg,#94a3b8,#64748b)}.hint[data-v-4be6400f]{position:absolute;bottom:24px;left:50%;transform:translate(-50%);pointer-events:none}.hint-pill[data-v-4be6400f]{background:#000000a6;color:#fff;padding:10px 16px;border-radius:var(--r-pill);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.sheet[data-v-4be6400f]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;background:#0000008c;display:flex;align-items:flex-end}.sheet-card[data-v-4be6400f]{background:var(--bg);color:var(--fg);width:100%;max-width:var(--max-w);margin:0 auto;border-radius:var(--r-xl) var(--r-xl) 0 0;padding:8px 20px calc(20px + var(--safe-bottom));display:flex;flex-direction:column;gap:14px;box-shadow:0 -12px 40px #0000004d}.sheet-handle[data-v-4be6400f]{align-self:center;width:40px;height:4px;background:var(--border-strong);border-radius:2px;margin-bottom:4px}.sheet-head[data-v-4be6400f]{display:flex;align-items:center;justify-content:space-between}.sheet-head h3[data-v-4be6400f]{font-size:17px}.ghost-x[data-v-4be6400f]{background:transparent;border:0;padding:8px;color:var(--danger);cursor:pointer;display:grid;place-items:center;border-radius:var(--r-pill);min-height:0}.ghost-x[data-v-4be6400f]:active{background:var(--bg-soft)}.audio-block[data-v-4be6400f]{display:flex;flex-direction:column;gap:8px}.audio-hint[data-v-4be6400f]{background:var(--bg-tinted);color:var(--fg-2);padding:12px 14px;border-radius:var(--r-md);font-size:13px;border-left:3px solid var(--primary)}.audio-player[data-v-4be6400f]{display:flex;flex-direction:column;gap:6px;background:var(--bg-soft);padding:12px;border-radius:var(--r-md)}.audio-player audio[data-v-4be6400f]{width:100%}.recording[data-v-4be6400f]{background:linear-gradient(135deg,#ef4444,#f97316);color:#fff;box-shadow:0 8px 24px #ef444459}.rec-dot[data-v-4be6400f]{width:10px;height:10px;border-radius:50%;background:#ef4444}.btn-outline .rec-dot[data-v-4be6400f]{background:#ef4444}.recording .rec-dot[data-v-4be6400f]{background:#fff}.rec-dot.pulse[data-v-4be6400f]{animation:pulse-4be6400f 1.2s var(--ease) infinite}@keyframes pulse-4be6400f{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.5}}.audio-err[data-v-4be6400f]{font-size:12px;color:var(--danger);margin-top:4px}.page[data-v-83c328c6]{min-height:100dvh;padding-bottom:calc(var(--bottom-h) + var(--safe-bottom))}.content[data-v-83c328c6]{max-width:var(--max-w);margin:0 auto;padding:24px 20px 32px}.step-wrap[data-v-83c328c6]{position:relative;min-height:60vh}.step[data-v-83c328c6]{display:flex;flex-direction:column;gap:20px}.state[data-v-83c328c6]{min-height:60vh;display:grid;place-items:center;gap:12px;padding:24px}.state.error[data-v-83c328c6]{color:var(--danger);text-align:center}.state.invalid-link[data-v-83c328c6]{max-width:var(--max-w);margin:0 auto;align-content:center;text-align:center}.state.invalid-link h2[data-v-83c328c6]{margin:0;font-size:22px;font-weight:700}.state.invalid-link p[data-v-83c328c6]{max-width:380px;line-height:1.45}.state.invalid-link .btn[data-v-83c328c6]{margin-top:12px;min-width:200px}.invalid-icon[data-v-83c328c6]{width:72px;height:72px;border-radius:50%;background:#ef44441f;color:#ef4444;display:grid;place-items:center;font-size:38px;line-height:1;margin-bottom:4px}.spinner[data-v-83c328c6]{width:38px;height:38px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--primary);animation:spin-83c328c6 .9s linear infinite}@keyframes spin-83c328c6{to{transform:rotate(360deg)}}.hero[data-v-83c328c6]{position:relative;align-self:center;margin-top:12px;display:grid;place-items:center}.hero-glow[data-v-83c328c6]{position:absolute;top:-30px;right:-30px;bottom:-30px;left:-30px;background:radial-gradient(closest-side,rgba(99,102,241,.35),transparent 70%);pointer-events:none}.hero-glow.ok[data-v-83c328c6]{background:radial-gradient(closest-side,rgba(16,185,129,.35),transparent 70%)}.hero-icon[data-v-83c328c6]{position:relative;width:110px;height:110px;border-radius:32px;background:var(--primary-grad);color:#fff;display:grid;place-items:center;box-shadow:var(--sh-glow)}.hero-logo[data-v-83c328c6]{position:relative;width:140px;height:140px;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(15,23,42,.18));animation:heroFloat-83c328c6 5s ease-in-out infinite}@keyframes heroFloat-83c328c6{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.lead[data-v-83c328c6]{color:var(--fg-2);font-size:17px;line-height:1.5}.bullets[data-v-83c328c6]{display:flex;flex-direction:column;gap:10px;margin-top:8px}.bullet[data-v-83c328c6]{display:flex;align-items:center;gap:14px;padding:14px;background:var(--bg-card);border-radius:var(--r-md);border:1px solid var(--border);font-size:15px;color:var(--fg-2)}.dot[data-v-83c328c6]{width:28px;height:28px;border-radius:50%;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;font-weight:700;font-size:13px;flex-shrink:0}.photo-grid[data-v-83c328c6]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.photo-card[data-v-83c328c6]{position:relative;aspect-ratio:4/3;border-radius:var(--r-md);overflow:hidden;background:var(--bg-soft);border:0;padding:0;min-height:0;cursor:pointer;box-shadow:var(--sh-1);transition:transform var(--t-fast) var(--ease)}.photo-card[data-v-83c328c6]:active{transform:scale(.97)}.photo-card img[data-v-83c328c6]{width:100%;height:100%;object-fit:cover;display:block}.img-fade[data-v-83c328c6]{position:absolute;inset:auto 0 0 0;height:50%;background:linear-gradient(to top,rgba(0,0,0,.55),transparent);pointer-events:none}.img-name[data-v-83c328c6]{position:absolute;left:8px;right:8px;bottom:6px;color:#fff;font-size:11px;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.badge-pin[data-v-83c328c6]{position:absolute;top:8px;right:8px;background:var(--primary-grad);color:#fff;display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--r-pill);font-size:11px;font-weight:700;box-shadow:0 2px 8px #00000040}.empty-photos[data-v-83c328c6]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;background:var(--bg-card);border:2px dashed var(--border);border-radius:var(--r-lg);color:var(--fg-muted)}.empty-icon[data-v-83c328c6]{width:64px;height:64px;border-radius:50%;background:var(--bg-soft);display:grid;place-items:center;color:var(--fg-subtle)}.capture-row[data-v-83c328c6]{display:block;cursor:pointer}.capture-btn[data-v-83c328c6]{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px 20px;border-radius:var(--r-md);background:var(--bg-card);border:1.5px solid var(--border);color:var(--fg);font-weight:600;font-size:15px;transition:all var(--t-fast) var(--ease)}.capture-btn.primary[data-v-83c328c6]{background:var(--primary-grad);color:#fff;border-color:transparent;box-shadow:var(--sh-glow)}.capture-row:active .capture-btn[data-v-83c328c6]{transform:scale(.98)}.field[data-v-83c328c6]{display:flex;flex-direction:column;gap:8px}.field label[data-v-83c328c6]{font-size:14px;font-weight:600;color:var(--fg-2)}.pills[data-v-83c328c6]{display:flex;flex-wrap:wrap;gap:8px}.pill[data-v-83c328c6]{font:inherit;font-weight:600;font-size:14px;cursor:pointer;border:1.5px solid var(--border);background:var(--bg-card);color:var(--fg);padding:10px 16px;min-height:44px;border-radius:var(--r-pill);transition:all var(--t-fast) var(--ease)}.pill.active[data-v-83c328c6]{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 4px 12px #6366f159}.pill[data-v-83c328c6]:active{transform:scale(.96)}.q-card[data-v-83c328c6]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--sh-1)}.q-text[data-v-83c328c6]{font-weight:600;font-size:15px;color:var(--fg)}.q-options[data-v-83c328c6]{display:flex;gap:8px}.q-opt[data-v-83c328c6]{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 8px;min-height:48px;border:1.5px solid var(--border);background:var(--bg);color:var(--fg-2);border-radius:var(--r-md);font:inherit;font-weight:600;font-size:14px;cursor:pointer;transition:all var(--t-fast) var(--ease)}.q-icon[data-v-83c328c6]{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:var(--bg-soft);font-weight:800;font-size:13px;line-height:1}.q-opt.active.yes[data-v-83c328c6]{background:#ecfdf5;color:#047857;border-color:#10b981}.q-opt.active.yes .q-icon[data-v-83c328c6]{background:#10b981;color:#fff}.q-opt.active.no[data-v-83c328c6]{background:#fef2f2;color:#b91c1c;border-color:#ef4444}.q-opt.active.no .q-icon[data-v-83c328c6]{background:#ef4444;color:#fff}.q-opt.active.not_sure[data-v-83c328c6]{background:#fffbeb;color:#92400e;border-color:#f59e0b}.q-opt.active.not_sure .q-icon[data-v-83c328c6]{background:#f59e0b;color:#fff}.q-opt[data-v-83c328c6]:active{transform:scale(.97)}.sum-card[data-v-83c328c6]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:4px 16px;box-shadow:var(--sh-1)}.sum-row[data-v-83c328c6]{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}.sum-row[data-v-83c328c6]:last-child{border-bottom:0}.sum-row.vertical[data-v-83c328c6]{flex-direction:column;align-items:stretch;gap:6px}.sum-row em[data-v-83c328c6]{font-style:normal;color:var(--fg-2);font-size:15px}.sum-row strong[data-v-83c328c6]{font-size:16px;color:var(--fg);font-weight:700}.success[data-v-83c328c6]{text-align:center;align-items:center}.success>h1[data-v-83c328c6],.success>p[data-v-83c328c6],.success>div[data-v-83c328c6]{width:100%}.ok-icon[data-v-83c328c6]{position:relative;width:110px;height:110px;border-radius:32px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;display:grid;place-items:center;box-shadow:0 8px 32px #10b98166;animation:pop-83c328c6 .6s var(--ease-out)}.ok-icon.ready[data-v-83c328c6]{animation:pop-83c328c6 .6s var(--ease-out),bounce-83c328c6 1.6s var(--ease) infinite .6s}@keyframes pop-83c328c6{0%{transform:scale(0)}60%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes bounce-83c328c6{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.status-card[data-v-83c328c6]{display:flex;gap:14px;align-items:center;text-align:left;padding:16px;background:var(--bg-card);border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--sh-1)}.status-card.ready[data-v-83c328c6]{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#6ee7b7}.status-card.offline[data-v-83c328c6]{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fcd34d}.warn-card[data-v-83c328c6]{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:12px 14px;border-radius:var(--r-lg);text-align:left}.warn-card strong[data-v-83c328c6]{display:block;margin-bottom:4px}.status-card strong[data-v-83c328c6]{display:block}.dot-spinner[data-v-83c328c6]{width:28px;height:28px;border-radius:50%;border:3px solid #cbd5e1;border-top-color:var(--primary);animation:spin-83c328c6 .9s linear infinite;flex-shrink:0}.check-circle[data-v-83c328c6]{width:36px;height:36px;border-radius:50%;background:var(--success);color:#fff;display:grid;place-items:center;flex-shrink:0}.mt[data-v-83c328c6]{margin-top:8px;text-align:center}.mt2[data-v-83c328c6]{margin-top:16px}.small-spin[data-v-83c328c6]{width:18px;height:18px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff}.identify[data-v-83c328c6]{text-align:left;display:flex;flex-direction:column;gap:12px}.identify h3[data-v-83c328c6]{font-size:17px}.id-fields[data-v-83c328c6]{display:flex;flex-direction:column;gap:8px}.id-err[data-v-83c328c6]{color:var(--danger);font-size:13px;padding:6px 10px;background:#fef2f2;border-radius:8px}.saved[data-v-83c328c6]{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#6ee7b7;color:#065f46;text-align:left;padding:14px 16px;font-weight:600}.merge-modal[data-v-83c328c6]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:flex-end;justify-content:center;padding:16px;padding-bottom:calc(16px + var(--safe-bottom, 0px))}@media(min-width:540px){.merge-modal[data-v-83c328c6]{align-items:center}}.merge-modal__card[data-v-83c328c6]{width:100%;max-width:460px;background:#fff;border-radius:20px;padding:22px 20px 18px;box-shadow:0 20px 60px #00000059;display:flex;flex-direction:column;gap:14px}.merge-modal__title[data-v-83c328c6]{margin:0;font-size:18px;font-weight:700;color:#0f172a}.merge-modal__sub[data-v-83c328c6]{margin:0;font-size:13.5px;line-height:1.5;color:#475569}.merge-modal__list[data-v-83c328c6]{list-style:none;margin:4px 0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:240px;overflow-y:auto}.merge-cand[data-v-83c328c6]{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;border:1.5px solid #e2e8f0;background:#f8fafc;cursor:pointer;transition:border-color .12s ease,background .12s ease;-webkit-tap-highlight-color:transparent}.merge-cand--selected[data-v-83c328c6]{border-color:#6366f1;background:#eef2ff}.merge-cand__radio[data-v-83c328c6]{flex:none;width:18px;height:18px;border-radius:50%;border:2px solid #cbd5e1;position:relative;transition:border-color .12s ease}.merge-cand--selected .merge-cand__radio[data-v-83c328c6]{border-color:#6366f1}.merge-cand--selected .merge-cand__radio[data-v-83c328c6]:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:#6366f1}.merge-cand__body[data-v-83c328c6]{flex:1;min-width:0}.merge-cand__title[data-v-83c328c6]{font-size:14.5px;font-weight:600;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.merge-cand__meta[data-v-83c328c6]{font-size:12px;color:#64748b;margin-top:2px}.merge-modal__actions[data-v-83c328c6]{display:flex;flex-direction:column;gap:8px;margin-top:4px}.merge-modal__actions .btn-primary[data-v-83c328c6],.merge-modal__actions .btn-secondary[data-v-83c328c6]{width:100%;min-height:48px;border-radius:12px;font-weight:600;font-size:15px;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.merge-modal__actions .btn-primary[data-v-83c328c6]{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.merge-modal__actions .btn-primary[data-v-83c328c6]:disabled{opacity:.5;cursor:not-allowed}.merge-modal__actions .btn-secondary[data-v-83c328c6]{background:#f1f5f9;color:#334155}.merge-modal__actions .btn-secondary[data-v-83c328c6]:active{background:#e2e8f0}.cab-page[data-v-7afbb12b]{min-height:100dvh;padding-bottom:calc(120px + var(--safe-bottom))}.cab[data-v-7afbb12b]{max-width:var(--max-w);margin:0 auto;padding:24px 20px}.cab-head[data-v-7afbb12b]{margin-bottom:20px}.cab-head h1[data-v-7afbb12b]{margin-bottom:4px}.state[data-v-7afbb12b]{padding:48px;text-align:center;color:var(--fg-muted)}.state.error[data-v-7afbb12b]{color:var(--danger)}.spinner[data-v-7afbb12b]{width:38px;height:38px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--primary);animation:spin-7afbb12b .9s linear infinite}@keyframes spin-7afbb12b{to{transform:rotate(360deg)}}.empty[data-v-7afbb12b]{text-align:center;padding:36px 24px;display:flex;flex-direction:column;gap:10px;align-items:center}.empty-icon[data-v-7afbb12b]{font-size:36px}.sub-list[data-v-7afbb12b]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.sub-card[data-v-7afbb12b]{display:flex;gap:14px;padding:12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1);align-items:center;cursor:pointer;transition:transform .12s,border-color .12s}.sub-card[data-v-7afbb12b]:hover{border-color:var(--primary)}.sub-card[data-v-7afbb12b]:active{transform:scale(.98)}.thumb[data-v-7afbb12b]{position:relative;width:64px;height:64px;border-radius:var(--r-md);overflow:hidden;background:var(--bg-soft);flex-shrink:0}.thumb img[data-v-7afbb12b]{width:100%;height:100%;object-fit:cover}.thumb-placeholder[data-v-7afbb12b]{width:100%;height:100%;display:grid;place-items:center;color:var(--fg-subtle)}.stat-dot[data-v-7afbb12b]{position:absolute;bottom:4px;right:4px;width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:var(--fg-subtle)}.stat-dot.uploaded[data-v-7afbb12b]{background:var(--warn)}.stat-dot.in_annotation[data-v-7afbb12b]{background:var(--accent)}.stat-dot.scene_ready[data-v-7afbb12b]{background:var(--success)}.stat-dot.rejected[data-v-7afbb12b]{background:var(--danger)}.info[data-v-7afbb12b]{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.row1[data-v-7afbb12b]{display:flex;justify-content:space-between;align-items:center;gap:8px}.mono[data-v-7afbb12b]{font-family:ui-monospace,monospace;font-size:12px;color:var(--fg-2)}.stat[data-v-7afbb12b]{font-size:11px;font-weight:700;padding:2px 8px;border-radius:var(--r-pill);background:var(--bg-soft);color:var(--fg-2)}.stat.uploaded[data-v-7afbb12b]{background:#fef3c7;color:#92400e}.stat.in_annotation[data-v-7afbb12b]{background:#dbeafe;color:#1e40af}.stat.scene_ready[data-v-7afbb12b]{background:#d1fae5;color:#065f46}.stat.rejected[data-v-7afbb12b]{background:#fee2e2;color:#991b1b}.stat.pending_sync[data-v-7afbb12b]{background:#e0e7ff;color:#4338ca}.stat.syncing[data-v-7afbb12b]{background:#ddd6fe;color:#5b21b6}.stat.synced[data-v-7afbb12b]{background:#d1fae5;color:#065f46}.stat.failed[data-v-7afbb12b]{background:#fee2e2;color:#991b1b}.sub-card.local[data-v-7afbb12b]{border-style:dashed}.local-mark[data-v-7afbb12b]{color:var(--primary);font-weight:600}.banner[data-v-7afbb12b]{display:flex;align-items:center;gap:8px;margin-top:10px;padding:8px 12px;border-radius:var(--r-md);font-size:13px}.offline-banner[data-v-7afbb12b]{background:#fef3c7;color:#92400e}.sync-banner[data-v-7afbb12b]{background:#eef2ff;color:#4338ca;cursor:pointer}.banner .dot[data-v-7afbb12b]{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.8}.spin-mini[data-v-7afbb12b]{width:12px;height:12px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin-7afbb12b .9s linear infinite;opacity:.7}.fab-wrap[data-v-7afbb12b]{position:fixed;left:0;right:0;bottom:calc(20px + var(--safe-bottom));display:grid;place-items:center;pointer-events:none;z-index:60}.fab[data-v-7afbb12b]{width:60px;height:60px;border-radius:50%;background:var(--primary-grad);color:#fff;border:0;padding:0;min-height:0;cursor:pointer;display:grid;place-items:center;box-shadow:0 12px 32px #6366f173;pointer-events:auto;transition:transform var(--t-fast) var(--ease)}.fab[data-v-7afbb12b]:active{transform:scale(.92)}.page[data-v-2de23bcf]{min-height:100dvh;padding-bottom:var(--safe-bottom)}.content[data-v-2de23bcf]{max-width:var(--max-w);margin:0 auto;padding:16px 20px 32px}.state[data-v-2de23bcf]{padding:48px;text-align:center;color:var(--fg-muted)}.state.error[data-v-2de23bcf]{color:var(--danger)}.spinner[data-v-2de23bcf]{width:38px;height:38px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--primary);animation:spin-2de23bcf .9s linear infinite}.spinner-small[data-v-2de23bcf]{width:22px;height:22px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--accent);animation:spin-2de23bcf .9s linear infinite;flex-shrink:0}@keyframes spin-2de23bcf{to{transform:rotate(360deg)}}.hero[data-v-2de23bcf]{margin-bottom:24px}.hero h1[data-v-2de23bcf]{margin:0 0 8px;font-size:22px;line-height:1.2}.meta-row[data-v-2de23bcf]{display:flex;gap:10px;align-items:center;margin-bottom:14px}.status-pill[data-v-2de23bcf]{font-size:11px;font-weight:700;padding:4px 10px;border-radius:var(--r-pill, 999px);background:var(--bg-soft);color:var(--fg-2)}.status-pill.uploaded[data-v-2de23bcf]{background:#fef3c7;color:#92400e}.status-pill.in_annotation[data-v-2de23bcf]{background:#dbeafe;color:#1e40af}.status-pill.scene_ready[data-v-2de23bcf]{background:#d1fae5;color:#065f46}.status-pill.rejected[data-v-2de23bcf]{background:#fee2e2;color:#991b1b}.ready-banner[data-v-2de23bcf],.progress-banner[data-v-2de23bcf]{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:var(--r-md, 10px);background:var(--bg-card);border:1px solid var(--border)}.ready-banner[data-v-2de23bcf]{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#6ee7b7}.ready-banner strong[data-v-2de23bcf]{color:#065f46}.progress-banner strong[data-v-2de23bcf]{color:var(--fg)}.ready-banner .check[data-v-2de23bcf]{width:32px;height:32px;border-radius:50%;background:#10b981;color:#fff;display:grid;place-items:center;font-weight:700;font-size:16px;flex-shrink:0}.muted[data-v-2de23bcf]{color:var(--fg-muted)}.small[data-v-2de23bcf]{font-size:12px}.block[data-v-2de23bcf]{margin-bottom:24px}.sect-title[data-v-2de23bcf]{margin:0 0 10px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted)}.photo-grid[data-v-2de23bcf]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.photo[data-v-2de23bcf]{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md, 10px);overflow:hidden;display:flex;flex-direction:column}.photo img[data-v-2de23bcf]{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.seg-badge[data-v-2de23bcf]{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:#10b981;color:#fff;display:grid;place-items:center;box-shadow:0 2px 6px #0000004d}.photo-meta[data-v-2de23bcf]{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;font-size:11px}.photo-meta .name[data-v-2de23bcf]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg-muted);font-family:ui-monospace,monospace}.dl[data-v-2de23bcf]{background:transparent;color:var(--primary);border:0;padding:2px 6px;min-height:0;cursor:pointer;font-size:14px;font-weight:700;border-radius:4px}.dl[data-v-2de23bcf]:hover{background:var(--bg-soft)}.kv-grid[data-v-2de23bcf]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.kv[data-v-2de23bcf]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md, 10px);padding:10px 12px}.kv .k[data-v-2de23bcf]{display:block;font-size:11px;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.kv .v[data-v-2de23bcf]{display:block;font-weight:700;font-size:16px;color:var(--fg);font-variant-numeric:tabular-nums}.comment[data-v-2de23bcf]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md, 10px);padding:12px 14px;font-style:italic;color:var(--fg-2);line-height:1.4}.nf[data-v-3acb0a40]{padding:48px 20px;text-align:center}.nf h1[data-v-3acb0a40]{font-size:64px;margin:0}:root{--bg: #f8fafc;--bg-card: #ffffff;--bg-soft: #f1f5f9;--bg-tinted: #eef2ff;--fg: #0f172a;--fg-2: #334155;--fg-muted: #64748b;--fg-subtle: #94a3b8;--primary: #4f46e5;--primary-2: #7c3aed;--primary-fg: #ffffff;--primary-soft: #eef2ff;--primary-grad: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #a855f7 100%);--accent: #0ea5e9;--success: #10b981;--warn: #f59e0b;--danger: #ef4444;--audio: #a855f7;--note: #0ea5e9;--border: #e2e8f0;--border-strong: #cbd5e1;--r-sm: 8px;--r-md: 14px;--r-lg: 20px;--r-xl: 28px;--r-pill: 999px;--sh-1: 0 1px 2px rgba(15, 23, 42, .06);--sh-2: 0 4px 12px rgba(15, 23, 42, .08);--sh-3: 0 12px 32px rgba(15, 23, 42, .12);--sh-glow: 0 8px 32px rgba(99, 102, 241, .35);--ease: cubic-bezier(.32, .72, 0, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--t-fast: .14s;--t-med: .24s;--t-slow: .42s;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--bar-h: 64px;--bottom-h: 96px;--max-w: 560px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#app{margin:0;padding:0;min-height:100vh;min-height:100dvh;background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,system-ui,sans-serif;font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;overscroll-behavior-y:contain}body{background:linear-gradient(180deg,#eef2ff 0%,var(--bg) 240px)}img{max-width:100%;display:block}h1{font-size:clamp(28px,7vw,36px);font-weight:800;letter-spacing:-.02em;line-height:1.15;margin:0}h2{font-size:clamp(22px,5.5vw,28px);font-weight:700;letter-spacing:-.015em;line-height:1.2;margin:0}h3{font-size:18px;font-weight:600;letter-spacing:-.01em;margin:0}p{margin:0}.muted{color:var(--fg-muted)}.subtle{color:var(--fg-subtle)}.small{font-size:13px}.tiny{font-size:11px;letter-spacing:.04em;text-transform:uppercase;font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:600;cursor:pointer;border:0;border-radius:var(--r-md);padding:14px 22px;min-height:52px;background:var(--bg-soft);color:var(--fg);transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease),background var(--t-fast) var(--ease),opacity var(--t-fast) var(--ease);-webkit-user-select:none;user-select:none;text-decoration:none}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--primary-grad);color:var(--primary-fg);box-shadow:var(--sh-glow)}.btn-primary:active{box-shadow:0 4px 14px #6366f14d}.btn-ghost{background:transparent;color:var(--fg-2)}.btn-ghost:active{background:var(--bg-soft)}.btn-outline{background:var(--bg-card);border:1.5px solid var(--border);color:var(--fg)}.btn-block{width:100%}.btn-lg{min-height:60px;font-size:17px;padding:16px 24px}.btn-sm{min-height:40px;padding:8px 14px;font-size:14px}input,textarea,select{font:inherit;width:100%;padding:16px 18px;border:1.5px solid var(--border);border-radius:var(--r-md);background:var(--bg-card);color:var(--fg);min-height:56px;transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #6366f11f}textarea{min-height:96px;resize:vertical;line-height:1.4}.card{background:var(--bg-card);border-radius:var(--r-lg);padding:20px;box-shadow:var(--sh-1);border:1px solid var(--border)}.step-enter-active,.step-leave-active{transition:opacity var(--t-med) var(--ease-out),transform var(--t-med) var(--ease-out)}.step-enter-from{opacity:0;transform:translate(24px)}.step-leave-to{opacity:0;transform:translate(-24px);position:absolute;left:0;right:0;top:0}.sheet-enter-active,.sheet-leave-active{transition:transform var(--t-med) var(--ease-out),opacity var(--t-med) var(--ease-out)}.sheet-enter-from,.sheet-leave-to{transform:translateY(100%);opacity:.5}.fade-enter-active,.fade-leave-active{transition:opacity var(--t-fast) var(--ease)}.fade-enter-from,.fade-leave-to{opacity:0}.update-banner{position:fixed;left:12px;right:12px;bottom:calc(12px + var(--safe-bottom) + var(--bottom-h));background:var(--fg);color:#fff;padding:14px 16px;border-radius:var(--r-md);display:flex;gap:12px;align-items:center;justify-content:space-between;box-shadow:var(--sh-3);z-index:110}.update-banner button{background:#fff;color:var(--fg);padding:8px 14px;min-height:0;border:0;border-radius:var(--r-sm);font:inherit;font-weight:600}.row{display:flex;gap:12px}.col{display:flex;flex-direction:column;gap:12px}.flex-1{flex:1}.center{display:grid;place-items:center}
