@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";.home-container[data-v-5063160e]{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex;position:relative;overflow:hidden}.glow-orb[data-v-5063160e]{filter:blur(100px);opacity:.15;z-index:0;pointer-events:none;border-radius:50%;position:absolute}.primary-orb[data-v-5063160e]{background-color:var(--accent-primary);width:350px;height:350px;top:20%;left:20%}.secondary-orb[data-v-5063160e]{background-color:var(--accent-secondary);width:400px;height:400px;bottom:20%;right:20%}.search-card[data-v-5063160e]{z-index:10;border-radius:var(--border-radius-lg);width:100%;max-width:480px;box-shadow:var(--glass-shadow);text-align:center;padding:40px;animation:.6s cubic-bezier(.16,1,.3,1) fadeIn-5063160e;position:relative}@keyframes fadeIn-5063160e{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.brand-header[data-v-5063160e]{margin-bottom:32px}.logo-icon[data-v-5063160e]{background:radial-gradient(circle, var(--accent-primary) 0%, transparent 80%);width:64px;height:64px;color:var(--accent-secondary);border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;display:inline-flex;box-shadow:0 0 20px #06b6d433}.logo-icon svg[data-v-5063160e]{animation:4s ease-in-out infinite float-5063160e}@keyframes float-5063160e{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}h1[data-v-5063160e]{background:linear-gradient(135deg, var(--text-primary) 30%, var(--accent-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:6px;font-size:28px}.subtitle[data-v-5063160e]{color:var(--text-secondary);font-size:14px}.search-form[data-v-5063160e]{margin-bottom:24px}.input-wrapper[data-v-5063160e]{border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#0f162480;align-items:center;padding:0 16px;display:flex}.input-wrapper[data-v-5063160e]:focus-within{border-color:var(--glass-border-focus);box-shadow:0 0 0 4px var(--accent-primary-glow)}.url-prefix[data-v-5063160e]{color:var(--text-muted);-webkit-user-select:none;user-select:none;font-size:14px}.input-field[data-v-5063160e]{color:var(--text-primary);font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:1;padding:12px 8px;font-size:15px}.input-field[data-v-5063160e]:focus{box-shadow:none}.input-error[data-v-5063160e]{border-color:var(--color-danger)!important}.error-text[data-v-5063160e]{color:var(--color-danger);margin-top:6px;font-size:13px;display:block}.btn-block[data-v-5063160e]{width:100%;padding:12px 20px}.footer-note[data-v-5063160e]{border-top:1px solid #ffffff0d;padding-top:20px}.footer-note p[data-v-5063160e]{color:var(--text-muted);font-size:12px;line-height:1.6}.pin-wrapper[data-v-a72da08d]{z-index:10;justify-content:center;align-items:center;min-height:calc(100vh - 120px);padding:40px 20px;display:flex;position:relative}.pin-card[data-v-a72da08d]{border-radius:var(--border-radius-lg);width:100%;max-width:420px;box-shadow:var(--glass-shadow);text-align:center;padding:36px;animation:.5s cubic-bezier(.16,1,.3,1) scaleIn-a72da08d}@keyframes scaleIn-a72da08d{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.pin-header[data-v-a72da08d]{margin-bottom:24px}.lock-icon[data-v-a72da08d]{width:56px;height:56px;color:var(--text-secondary);background:#ffffff0a;border:1px solid #ffffff14;border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;transition:all .4s;display:inline-flex}.lock-icon.unlocked[data-v-a72da08d]{color:var(--color-success);background:#10b9811a;border-color:#10b9814d;transform:scale(1.1);box-shadow:0 0 20px #10b98133}h2[data-v-a72da08d]{margin-bottom:4px;font-size:22px}.project-title[data-v-a72da08d]{color:var(--accent-secondary);margin-bottom:8px;font-size:16px;font-weight:500}.instruction-text[data-v-a72da08d]{color:var(--text-secondary);font-size:13px}.dots-container[data-v-a72da08d]{justify-content:center;gap:16px;height:14px;margin:20px 0;display:flex}.dot[data-v-a72da08d]{border:2px solid var(--text-muted);background:0 0;border-radius:50%;width:12px;height:12px;transition:all .2s cubic-bezier(.4,0,.2,1)}.dot.active[data-v-a72da08d]{background:var(--text-primary);border-color:var(--text-primary);transform:scale(1.2);box-shadow:0 0 10px #ffffff80}.dot.success[data-v-a72da08d]{background:var(--color-success)!important;border-color:var(--color-success)!important;box-shadow:0 0 10px #10b98180!important}.dot.error[data-v-a72da08d]{background:var(--color-danger)!important;border-color:var(--color-danger)!important;box-shadow:0 0 10px #ef444480!important}.message-area[data-v-a72da08d]{height:24px;margin-bottom:20px}.error-message[data-v-a72da08d]{color:var(--color-danger);font-size:13px;font-weight:500}.success-message[data-v-a72da08d]{color:var(--color-success);font-size:13px;font-weight:500}.placeholder-msg[data-v-a72da08d]{-webkit-user-select:none;user-select:none}.keypad-grid[data-v-a72da08d]{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:28px;display:grid}.keypad-btn[data-v-a72da08d]{color:var(--text-primary);font-family:var(--font-sans);border-radius:var(--border-radius-sm);cursor:pointer;height:56px;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;background:#ffffff08;border:1px solid #ffffff0d;outline:none;justify-content:center;align-items:center;font-size:20px;font-weight:500;display:flex}.keypad-btn[data-v-a72da08d]:hover:not(:disabled){background:#ffffff14;border-color:#ffffff1f;transform:scale(1.05)}.keypad-btn[data-v-a72da08d]:active:not(:disabled){background:#ffffff26;transform:scale(.95)}.keypad-btn[data-v-a72da08d]:disabled{opacity:.3;cursor:not-allowed}.utility-btn[data-v-a72da08d]{color:var(--text-secondary);background:#ffffff03;font-size:15px}.utility-btn svg[data-v-a72da08d]{stroke-width:2.2px}.action-section[data-v-a72da08d]{flex-direction:column;gap:10px;display:flex}.text-btn[data-v-a72da08d]{color:var(--text-secondary);background:0 0;border:none;padding:8px;font-size:13px;text-decoration:underline}.text-btn[data-v-a72da08d]:hover{color:var(--text-primary);background:#ffffff08;transform:none}.viewer-container[data-v-4b1518cb]{border-radius:var(--border-radius-md);border:1px solid var(--glass-border);height:100%;transition:all var(--transition-normal);background:#0b0f19;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #0006}.viewer-container.is-fullscreen[data-v-4b1518cb]{z-index:9999;border:none;border-radius:0;width:100vw;position:fixed;inset:0;height:100vh!important}.model-tabs[data-v-4b1518cb]{z-index:100;background:#0f1624f2;border-bottom:1px solid #ffffff0d;gap:8px;padding:8px 12px;display:flex;overflow-x:auto}.model-tab-item[data-v-4b1518cb]{background:#ffffff05;border:1px solid #ffffff0d;border-radius:4px;align-items:center;display:inline-flex;overflow:hidden}.model-tab-btn[data-v-4b1518cb]{font-family:var(--font-sans);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:none;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;display:inline-flex}.model-tab-btn[data-v-4b1518cb]:hover{color:#fff;background:#ffffff0d}.model-tab-btn.active[data-v-4b1518cb]{color:#fff;background:var(--accent-secondary)}.model-tab-download-btn[data-v-4b1518cb]{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-left:1px solid #ffffff0f;justify-content:center;align-items:center;padding:6px 8px;display:inline-flex}.model-tab-download-btn[data-v-4b1518cb]:hover{color:#fff;background:var(--accent-primary)}.canvas-wrapper[data-v-4b1518cb]{-webkit-user-select:none;user-select:none;flex:1;width:100%;height:100%;position:relative;overflow:hidden;touch-action:none!important}.canvas-wrapper[data-v-4b1518cb] canvas{outline:none;touch-action:none!important}.canvas-loader-overlay[data-v-4b1518cb]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;color:var(--text-secondary);background:#0b0f19d9;flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:14px;display:flex;position:absolute;inset:0}.spinner-large[data-v-4b1518cb]{border:3px solid #ffffff0d;border-top-color:var(--accent-primary);border-radius:50%;width:36px;height:36px;animation:1s linear infinite spin-4b1518cb}.mobile-panel-toggles[data-v-4b1518cb]{z-index:22;gap:8px;display:none;position:absolute;top:12px;left:12px}.mobile-toggle-btn[data-v-4b1518cb]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#0f1624d9;border:1px solid #ffffff1a;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex;box-shadow:0 4px 12px #00000059}.mobile-toggle-btn.active[data-v-4b1518cb]{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 2px 10px var(--accent-primary-glow)}.control-panel[data-v-4b1518cb]{z-index:20;border-radius:var(--border-radius-md);width:250px;box-shadow:var(--glass-shadow);flex-direction:column;gap:18px;max-height:calc(100% - 40px);padding:20px;display:flex;position:absolute;top:20px;left:20px;overflow-y:auto}.panel-header-mobile-close[data-v-4b1518cb]{color:var(--text-primary);border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding-bottom:8px;font-size:13px;font-weight:700;display:none}.close-panel-btn[data-v-4b1518cb],.close-panel-btn-inline[data-v-4b1518cb]{color:var(--text-muted);cursor:pointer;width:24px;height:24px;transition:all var(--transition-fast);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;margin-left:auto;font-size:11px;display:inline-flex}.close-panel-btn[data-v-4b1518cb]:hover,.close-panel-btn-inline[data-v-4b1518cb]:hover{color:#fff;background:#ef444440;border-color:#ef444466}.panel-section h3[data-v-4b1518cb]{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:8px;font-size:11px;font-weight:700}.preset-selector[data-v-4b1518cb]{background:#ffffff08;border:1px solid #ffffff0d;border-radius:6px;gap:2px;padding:2px;display:flex}.preset-btn[data-v-4b1518cb]{font-family:var(--font-sans);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);text-align:center;background:0 0;border:none;border-radius:4px;flex:1;padding:6px;font-size:10px;font-weight:700}.preset-btn[data-v-4b1518cb]:hover{color:var(--text-primary)}.preset-btn.active[data-v-4b1518cb]{color:#fff;background:#ffffff14;border:1px solid #ffffff0d}.orientation-selector[data-v-4b1518cb]{margin-bottom:8px}.orientation-quick-actions[data-v-4b1518cb]{gap:6px;display:flex}.action-sub-btn[data-v-4b1518cb]{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#ffffff0a;border:1px solid #ffffff14;border-radius:4px;flex:1;justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-size:11px;font-weight:500;display:inline-flex}.action-sub-btn[data-v-4b1518cb]:hover{color:var(--text-primary);background:#ffffff14}.action-sub-btn.active[data-v-4b1518cb]{border-color:var(--accent-primary);color:#fff;background:#8b5cf633}.color-swatches[data-v-4b1518cb]{flex-wrap:wrap;gap:8px;display:flex}.swatch-btn[data-v-4b1518cb]{cursor:pointer;width:24px;height:24px;transition:transform var(--transition-fast), border-color var(--transition-fast);border:2px solid #0000;border-radius:50%}.swatch-btn[data-v-4b1518cb]:hover{transform:scale(1.15)}.swatch-btn.active[data-v-4b1518cb]{border-color:#fff;box-shadow:0 0 10px #fff3}.toggle-list[data-v-4b1518cb]{flex-direction:column;gap:12px;display:flex}.toggle-item[data-v-4b1518cb]{color:var(--text-secondary);cursor:pointer;justify-content:space-between;align-items:center;font-size:13px;display:flex}.toggle-item input[data-v-4b1518cb]{cursor:pointer;accent-color:var(--accent-primary)}.slider-wrapper[data-v-4b1518cb]{align-items:center;gap:8px;margin-top:4px;display:flex}.slider-label[data-v-4b1518cb]{color:var(--text-muted);font-size:10px}.slider[data-v-4b1518cb]{height:4px;accent-color:var(--accent-primary);background:#ffffff1a;border-radius:2px;outline:none;flex:1}.value-display[data-v-4b1518cb]{color:var(--text-muted);text-align:right;min-width:24px;font-size:11px}.dimensions-panel[data-v-4b1518cb]{z-index:20;border-radius:var(--border-radius-md);width:240px;box-shadow:var(--glass-shadow);padding:16px;position:absolute;top:20px;right:20px}.panel-header-inline[data-v-4b1518cb]{color:var(--accent-secondary);align-items:center;gap:8px;margin-bottom:12px;display:flex}.panel-header-inline h3[data-v-4b1518cb]{text-transform:none;letter-spacing:0;margin-bottom:0;font-size:13px;font-weight:600}.stats-grid[data-v-4b1518cb]{flex-direction:column;gap:8px;display:flex}.stat-row[data-v-4b1518cb]{justify-content:space-between;font-size:12px;display:flex}.stat-lbl[data-v-4b1518cb]{color:var(--text-secondary)}.stat-val[data-v-4b1518cb]{color:var(--text-primary);font-weight:500}.divider[data-v-4b1518cb]{background:#ffffff0d;height:1px;margin:4px 0}.stat-row.highlight[data-v-4b1518cb]{font-size:13px;font-weight:600}.stat-row.highlight .stat-lbl[data-v-4b1518cb]{color:var(--text-primary)}.stat-row.highlight .stat-val[data-v-4b1518cb]{color:var(--accent-secondary)}.stats-note[data-v-4b1518cb]{color:var(--text-muted);margin-top:10px;font-size:9px;line-height:1.3}.download-stl-panel-btn[data-v-4b1518cb]{color:#fff;width:100%;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);background:#8b5cf626;border:1px solid #8b5cf659;border-radius:6px;justify-content:center;align-items:center;gap:8px;margin-top:14px;padding:8px 12px;font-size:12px;font-weight:600;display:flex;box-shadow:0 2px 10px #8b5cf626}.download-stl-panel-btn[data-v-4b1518cb]:hover{background:var(--accent-primary);box-shadow:0 4px 14px var(--accent-primary-glow);transform:translateY(-1px)}.download-stl-panel-btn.loading[data-v-4b1518cb]{opacity:.75;pointer-events:none}.touch-mode-badge[data-v-4b1518cb]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-secondary);pointer-events:none;z-index:18;white-space:nowrap;background:#0b0f19d9;border:1px solid #ffffff14;border-radius:20px;align-items:center;gap:8px;padding:5px 14px;font-size:11px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0000004d}.mode-dot[data-v-4b1518cb]{background:var(--accent-primary);width:7px;height:7px;box-shadow:0 0 8px var(--accent-primary);transition:all var(--transition-fast);border-radius:50%}.mode-dot.pan[data-v-4b1518cb]{background:var(--accent-secondary);box-shadow:0 0 8px var(--accent-secondary)}.directional-nudge-pad[data-v-4b1518cb]{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:26;background:#0f1624eb;border:1px solid #ffffff1f;border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:10px 12px;display:flex;position:absolute;bottom:82px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0009}.nudge-title[data-v-4b1518cb]{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:4px;font-size:10px;font-weight:700}.nudge-row[data-v-4b1518cb]{gap:4px;display:flex}.nudge-btn[data-v-4b1518cb]{width:36px;height:36px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#ffffff0a;border:1px solid #ffffff14;border-radius:8px;justify-content:center;align-items:center;font-size:13px;display:inline-flex}.nudge-btn[data-v-4b1518cb]:hover,.nudge-btn[data-v-4b1518cb]:active{background:var(--accent-primary);color:#fff;transform:scale(1.05)}.nudge-btn.center-dot[data-v-4b1518cb]{color:var(--accent-secondary);font-size:11px}.mobile-touch-toolbar[data-v-4b1518cb]{z-index:25;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f1624e6;border:1px solid #ffffff1f;border-radius:36px;align-items:center;gap:8px;max-width:calc(100% - 24px);padding:6px 10px;display:flex;position:absolute;bottom:22px;left:50%;overflow-x:auto;transform:translate(-50%);box-shadow:0 8px 32px #0000008c,0 0 20px #8b5cf626}.mode-toggle-pill[data-v-4b1518cb]{background:#ffffff0d;border:1px solid #ffffff0f;border-radius:20px;gap:2px;padding:2px;display:flex}.mode-toggle-btn[data-v-4b1518cb]{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:18px;align-items:center;gap:5px;padding:7px 12px;font-size:12px;font-weight:600;display:inline-flex}.mode-toggle-btn.active[data-v-4b1518cb]{background:var(--accent-primary);color:#fff;box-shadow:0 2px 10px var(--accent-primary-glow)}.touch-btn-divider[data-v-4b1518cb]{background:#ffffff1f;width:1px;height:22px}.touch-actions-cluster[data-v-4b1518cb]{align-items:center;gap:6px;display:flex}.touch-action-btn[data-v-4b1518cb]{width:36px;min-width:36px;height:36px;min-height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#ffffff0a;border:1px solid #ffffff14;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.touch-action-btn[data-v-4b1518cb]:hover,.touch-action-btn[data-v-4b1518cb]:active{color:#fff;background:#ffffff1f;transform:scale(1.08)}.touch-action-btn.active[data-v-4b1518cb]{color:var(--accent-secondary);border-color:var(--accent-secondary);background:#06b6d42e;box-shadow:0 0 10px #06b6d44d}.touch-action-btn.download-action-btn[data-v-4b1518cb]{color:var(--accent-secondary)}.touch-action-btn.download-action-btn[data-v-4b1518cb]:hover{border-color:var(--accent-secondary);color:#fff;background:#06b6d433}.touch-action-btn.download-action-btn.loading[data-v-4b1518cb]{pointer-events:none;opacity:.8}.btn-spinner[data-v-4b1518cb]{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin-4b1518cb}.hud-hint[data-v-4b1518cb]{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--text-muted);z-index:10;pointer-events:none;text-align:center;white-space:nowrap;background:#0d111cbf;border:1px solid #ffffff0d;border-radius:20px;padding:4px 14px;font-size:11px;position:absolute;bottom:84px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0000004d}@media (width<=900px){.viewer-container[data-v-4b1518cb]{height:520px}.hud-hint[data-v-4b1518cb]{display:none}.mobile-panel-toggles[data-v-4b1518cb]{display:flex}.control-panel[data-v-4b1518cb]{z-index:30;width:260px;max-height:calc(100% - 130px);top:56px;bottom:auto;left:12px;overflow-y:auto}.dimensions-panel[data-v-4b1518cb]{z-index:30;width:260px;max-height:calc(100% - 130px);top:56px;bottom:auto;right:12px;overflow-y:auto}.panel-header-mobile-close[data-v-4b1518cb]{display:flex}}@media (width<=600px){.viewer-container[data-v-4b1518cb]{height:480px}.control-panel[data-v-4b1518cb],.dimensions-panel[data-v-4b1518cb]{z-index:35;width:auto;max-width:none;top:52px;left:8px;right:8px}.mobile-touch-toolbar[data-v-4b1518cb]{gap:6px;padding:5px 8px;bottom:14px}.mode-toggle-btn[data-v-4b1518cb]{padding:6px 10px;font-size:11px}.touch-action-btn[data-v-4b1518cb]{width:34px;min-width:34px;height:34px;min-height:34px}}@keyframes spin-4b1518cb{to{transform:rotate(360deg)}}.gallery-container[data-v-0369db80]{width:100%}.empty-gallery[data-v-0369db80]{text-align:center;color:var(--text-secondary);border-radius:var(--border-radius-md);flex-direction:column;justify-content:center;align-items:center;margin-top:20px;padding:80px 40px;display:flex}.empty-icon[data-v-0369db80]{color:var(--text-muted);stroke-width:1px;margin-bottom:16px}.empty-gallery h3[data-v-0369db80]{margin-bottom:8px;font-size:20px}.empty-gallery p[data-v-0369db80]{font-size:14px}.media-grid[data-v-0369db80]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-top:8px;display:grid}.media-card[data-v-0369db80]{border-radius:var(--border-radius-md);cursor:pointer;transition:transform var(--transition-fast), border-color var(--transition-fast);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 4px 20px #00000040}.media-card[data-v-0369db80]:hover{border-color:#8b5cf640;transform:translateY(-4px)}.media-preview[data-v-0369db80]{aspect-ratio:16/10;background:#090c15;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.media-preview img[data-v-0369db80]{object-fit:cover;width:100%;height:100%;transition:transform .5s}.media-card:hover .media-preview img[data-v-0369db80]{transform:scale(1.05)}.video-preview-wrapper[data-v-0369db80]{width:100%;height:100%;position:relative}.preview-video[data-v-0369db80]{object-fit:cover;width:100%;height:100%}.play-overlay-icon[data-v-0369db80]{width:48px;height:48px;color:var(--accent-secondary);background:#0d111cd9;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;padding-left:2px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 12px #0006}.hover-overlay[data-v-0369db80]{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;transition:opacity var(--transition-fast);background:#080c1599;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.media-card:hover .hover-overlay[data-v-0369db80]{opacity:1}.view-badge[data-v-0369db80]{background:var(--accent-primary);color:#fff;box-shadow:0 4px 12px var(--accent-primary-glow);transition:transform var(--transition-fast);border-radius:20px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:500;display:inline-flex;transform:translateY(8px)}.media-card:hover .view-badge[data-v-0369db80]{transform:translateY(0)}.media-info[data-v-0369db80]{background:#ffffff03;border-top:1px solid #ffffff08;flex-direction:column;flex-grow:1;justify-content:space-between;padding:16px;display:flex}.media-meta[data-v-0369db80]{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.media-type-badge[data-v-0369db80]{border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}.media-type-badge.image[data-v-0369db80]{color:#a78bfa;background:#8b5cf626;border:1px solid #8b5cf64d}.media-type-badge.video[data-v-0369db80]{color:#22d3ee;background:#06b6d426;border:1px solid #06b6d44d}.media-size[data-v-0369db80]{color:var(--text-muted);font-size:11px}.media-name[data-v-0369db80]{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;font-weight:500;overflow:hidden}.media-title-row[data-v-0369db80]{justify-content:space-between;align-items:center;gap:8px;display:flex}.card-download-btn[data-v-0369db80]{color:var(--text-secondary);cursor:pointer;width:28px;min-width:28px;height:28px;transition:all var(--transition-fast);background:#ffffff0a;border:1px solid #ffffff14;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.card-download-btn[data-v-0369db80]:hover{color:#fff;background:var(--accent-primary);border-color:var(--accent-primary);transform:scale(1.08)}.card-download-btn.loading[data-v-0369db80]{pointer-events:none;opacity:.8}.lightbox[data-v-0369db80]{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05070cf2;justify-content:center;align-items:center;padding:40px;display:flex;position:fixed;inset:0}.lightbox-header-actions[data-v-0369db80]{z-index:110;align-items:center;gap:12px;display:flex;position:absolute;top:24px;right:24px}.lightbox-download-action-btn[data-v-0369db80]{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all var(--transition-fast);background:#8b5cf633;border:1px solid #8b5cf666;border-radius:20px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;display:inline-flex;box-shadow:0 4px 14px #8b5cf640}.lightbox-download-action-btn[data-v-0369db80]:hover{background:var(--accent-primary);box-shadow:0 4px 18px var(--accent-primary-glow);transform:translateY(-2px)}.lightbox-download-action-btn.loading[data-v-0369db80]{opacity:.8;pointer-events:none}.lightbox-caption-download[data-v-0369db80]{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:4px;margin-left:6px;padding:4px 10px;font-size:11px;font-weight:500;display:inline-flex}.lightbox-caption-download[data-v-0369db80]:hover{color:#fff;background:var(--accent-primary)}.btn-spinner[data-v-0369db80]{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin-0369db80}.lightbox-close[data-v-0369db80]{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#ffffff08;border:1px solid #ffffff0f;border-radius:50%;justify-content:center;align-items:center;padding:8px;display:flex}.lightbox-close[data-v-0369db80]:hover{color:#fff;background:#ffffff14;transform:scale(1.05)}.nav-btn[data-v-0369db80]{color:var(--text-secondary);cursor:pointer;width:48px;height:48px;transition:all var(--transition-fast);z-index:100;background:#ffffff08;border:1px solid #ffffff0f;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.nav-btn[data-v-0369db80]:hover:not(:disabled){color:#fff;background:#ffffff14;transform:translateY(-50%)scale(1.05)}.nav-btn[data-v-0369db80]:disabled{opacity:.1;cursor:not-allowed}.prev-btn[data-v-0369db80]{left:24px}.next-btn[data-v-0369db80]{right:24px}.lightbox-content[data-v-0369db80]{justify-content:center;align-items:center;width:100%;max-width:1000px;max-height:80vh;display:flex}.lightbox-media-wrapper[data-v-0369db80]{flex-direction:column;align-items:center;max-width:100%;max-height:80vh;display:flex}.lightbox-img[data-v-0369db80],.lightbox-video[data-v-0369db80]{object-fit:contain;border-radius:var(--border-radius-sm);max-width:100%;max-height:70vh;box-shadow:0 10px 40px #0009}.lightbox-caption[data-v-0369db80]{background:#ffffff05;border:1px solid #ffffff0d;border-radius:20px;align-items:center;gap:12px;width:max-content;max-width:100%;margin-top:16px;padding:8px 16px;display:flex}.lightbox-title[data-v-0369db80]{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.lightbox-index[data-v-0369db80]{color:var(--text-muted);border-left:1px solid #ffffff1a;padding-left:12px;font-size:12px}.fade-enter-active[data-v-0369db80],.fade-leave-active[data-v-0369db80]{transition:opacity .25s}.fade-enter-from[data-v-0369db80],.fade-leave-to[data-v-0369db80]{opacity:0}.slide-fade-enter-active[data-v-0369db80]{transition:all .25s ease-out}.slide-fade-leave-active[data-v-0369db80]{transition:all .2s ease-in}.slide-fade-enter-from[data-v-0369db80]{opacity:0;transform:translate(10px)}.slide-fade-leave-to[data-v-0369db80]{opacity:0;transform:translate(-10px)}@keyframes spin-0369db80{to{transform:rotate(360deg)}}@media (width<=768px){.lightbox[data-v-0369db80]{padding:20px}.nav-btn[data-v-0369db80]{width:38px;height:38px}.prev-btn[data-v-0369db80]{left:8px}.next-btn[data-v-0369db80]{right:8px}.lightbox-header-actions[data-v-0369db80]{gap:8px;top:14px;right:14px}.lightbox-download-action-btn[data-v-0369db80]{padding:6px 12px;font-size:12px}}.portal-layout[data-v-28767151]{min-height:100vh;position:relative;overflow:hidden}.glow-orb[data-v-28767151]{filter:blur(140px);opacity:.12;z-index:0;pointer-events:none;border-radius:50%;position:absolute}.primary-orb[data-v-28767151]{background-color:var(--accent-primary);width:450px;height:450px;top:10%;right:15%}.secondary-orb[data-v-28767151]{background-color:var(--accent-secondary);width:400px;height:400px;bottom:10%;left:15%}.loading-container[data-v-28767151]{height:100vh;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.spinner-large[data-v-28767151]{border:3px solid #ffffff0d;border-top-color:var(--accent-secondary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin-28767151}.error-container[data-v-28767151]{text-align:center;border-radius:var(--border-radius-lg);z-index:10;max-width:480px;margin:120px auto;padding:40px;position:relative}.error-icon[data-v-28767151]{width:60px;height:60px;color:var(--color-danger);background:#ef44441a;border-radius:50%;justify-content:center;align-items:center;margin-bottom:20px;display:inline-flex}.error-container h2[data-v-28767151]{margin-bottom:12px;font-size:24px}.error-container p[data-v-28767151]{margin-bottom:24px;font-size:14px}.content-wrapper[data-v-28767151]{z-index:10;width:100%;position:relative}.dashboard-area[data-v-28767151]{max-width:1280px;margin:0 auto;padding:24px}.dashboard-header[data-v-28767151]{border-radius:var(--border-radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:20px 28px;display:flex}.project-info h1[data-v-28767151]{background:linear-gradient(to right, var(--text-primary), var(--text-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:4px 0;font-size:24px}.badge[data-v-28767151]{letter-spacing:.1em;color:var(--accent-primary);background:#8b5cf626;border:1px solid #8b5cf64d;border-radius:20px;padding:3px 8px;font-size:10px;font-weight:700}.meta-info[data-v-28767151]{color:var(--text-muted);font-size:12px}.navigation-controls[data-v-28767151]{align-items:center;gap:20px;display:flex}.tabs-nav[data-v-28767151]{border-radius:var(--border-radius-sm);background:#ffffff08;border:1px solid #ffffff0d;gap:4px;padding:4px;display:flex}.tab-btn[data-v-28767151]{font-family:var(--font-sans);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:500;display:inline-flex}.tab-btn[data-v-28767151]:hover:not(:disabled){color:var(--text-primary);background:#ffffff08}.tab-btn.active[data-v-28767151]{color:#fff;background:var(--accent-primary);box-shadow:0 2px 8px var(--accent-primary-glow)}.tab-btn[data-v-28767151]:disabled{opacity:.3;cursor:not-allowed}.lock-project-btn[data-v-28767151]{padding:8px 14px;font-size:14px}.dashboard-main[data-v-28767151]{min-height:calc(100vh - 180px)}.tab-panel[data-v-28767151]{width:100%}.tab-panel.height-full[data-v-28767151]{height:calc(100vh - 180px)}.animate-fade-in[data-v-28767151]{animation:.4s ease-out fadeIn}.animate-slide-up[data-v-28767151]{animation:.4s cubic-bezier(.16,1,.3,1) slideUp-28767151}@keyframes slideUp-28767151{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes spin-28767151{to{transform:rotate(360deg)}}@media (width<=768px){.dashboard-header[data-v-28767151]{flex-direction:column;align-items:stretch;padding:16px}.navigation-controls[data-v-28767151]{flex-direction:column;align-items:stretch;gap:12px}.tabs-nav[data-v-28767151]{flex-direction:column;width:100%}.tab-btn[data-v-28767151]{justify-content:center;width:100%}}:root{--font-sans:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--bg-primary:#080b11;--bg-secondary:#0f1624;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#475569;--accent-primary:#8b5cf6;--accent-primary-hover:#7c3aed;--accent-primary-glow:#8b5cf64d;--accent-secondary:#06b6d4;--accent-secondary-hover:#0891b2;--accent-secondary-glow:#06b6d44d;--color-success:#10b981;--color-danger:#ef4444;--color-warning:#f59e0b;--glass-bg:#0f162499;--glass-border:#ffffff0f;--glass-border-focus:#8b5cf666;--glass-shadow:0 12px 40px 0 #00000080;--glass-blur:16px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.3s cubic-bezier(.4, 0, .2, 1);--border-radius-sm:8px;--border-radius-md:14px;--border-radius-lg:24px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(at 0 0,#8b5cf61f 0,#0000 50%),radial-gradient(at 100% 100%,#06b6d414 0,#0000 50%);background-attachment:fixed;min-height:100vh;line-height:1.5}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;color:var(--text-primary);font-weight:600;line-height:1.25}p{color:var(--text-secondary)}a{color:var(--accent-secondary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-secondary-hover)}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--border-radius-md);box-shadow:var(--glass-shadow)}.glass-card{border-radius:var(--border-radius-sm);transition:transform var(--transition-fast), border-color var(--transition-fast), background-color var(--transition-fast);background:#ffffff05;border:1px solid #ffffff0a}.glass-card:hover{background:#ffffff0a;border-color:#ffffff14}.btn{font-family:var(--font-sans);border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:15px;font-weight:500;display:inline-flex}.btn-primary{background:var(--accent-primary);color:#fff;box-shadow:0 4px 14px var(--accent-primary-glow)}.btn-primary:hover{background:var(--accent-primary-hover);box-shadow:0 6px 20px var(--accent-primary-glow);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{color:var(--text-primary);background:#ffffff0f;border:1px solid #ffffff14}.btn-secondary:hover{background:#ffffff1a;border-color:#ffffff26;transform:translateY(-1px)}.btn-danger{background:var(--color-danger);color:#fff;box-shadow:0 4px 12px #ef444433}.btn-danger:hover{background:#dc2626;transform:translateY(-1px)}.btn-success{background:var(--color-success);color:#fff;box-shadow:0 4px 12px #10b98133}.btn-success:hover{background:#059669;transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.form-group{text-align:left;margin-bottom:20px}.form-label{color:var(--text-secondary);margin-bottom:6px;font-size:14px;font-weight:500;display:block}.input-field{width:100%;font-family:var(--font-sans);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#0f162480;outline:none;padding:12px 16px;font-size:15px}.input-field:focus{border-color:var(--glass-border-focus);box-shadow:0 0 0 4px var(--accent-primary-glow)}.input-field::placeholder{color:var(--text-muted)}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.animate-shake{animation:.4s ease-in-out shake}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2px solid #ffffff1a;border-top-color:currentColor;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#fff3}.container{max-width:1200px;margin:0 auto;padding:24px}
