@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.eco-app-icon[data-v-d25e597c]{background:var(--pill-hover-bg,#ffffff14);border-radius:12px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.eco-app-icon--sm[data-v-d25e597c]{border-radius:10px;width:34px;height:34px}.eco-app-icon--md[data-v-d25e597c]{width:40px;height:40px}.eco-app-icon--lg[data-v-d25e597c]{border-radius:16px;width:72px;height:72px}.eco-app-icon-img[data-v-d25e597c]{object-fit:contain;width:100%;height:100%;display:block}.eco-app-icon-fallback[data-v-d25e597c]{color:#fff;font-size:15px;font-weight:800}.eco-app-icon--lg .eco-app-icon-fallback[data-v-d25e597c]{font-size:28px}.eco-app-icon--sm .eco-app-icon-fallback[data-v-d25e597c]{font-size:14px}.app-brand[data-v-77d942a4]{align-items:center;gap:10px;min-width:0;display:flex}.app-brand-logo[data-v-77d942a4]{flex-shrink:0}.app-brand-text[data-v-77d942a4]{flex-direction:column;min-width:0;line-height:1.05;display:flex}.app-brand-floviqo[data-v-77d942a4]{letter-spacing:-.3px;color:var(--accent,#ab89f1);font-size:18px;font-weight:700}.app-brand-names[data-v-77d942a4]{letter-spacing:.04em;text-transform:lowercase;color:var(--text-mute,#9a9ab0);margin-top:1px;font-size:12px;font-weight:600}.app-brand--lg .app-brand-floviqo[data-v-77d942a4]{font-size:28px}.app-brand--lg .app-brand-names[data-v-77d942a4]{font-size:15px}.app-brand--sm .app-brand-floviqo[data-v-77d942a4]{font-size:16px}.app-brand--sm .app-brand-names[data-v-77d942a4]{font-size:11px}.eco-switcher[data-v-15491cae]{min-width:0}.eco-switcher-trigger[data-v-15491cae]{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;min-width:0;padding:0;display:block}.eco-switcher-trigger:hover .eco-switcher-chevron[data-v-15491cae]{color:var(--accent,#ab89f1)}.eco-switcher-row[data-v-15491cae]{align-items:center;gap:4px;min-width:0;display:flex}.eco-switcher-chevron[data-v-15491cae]{width:16px;height:16px;color:var(--text-mute,#9a9ab0);flex-shrink:0;margin-top:1px;transition:transform .2s,color .2s}.eco-switcher-chevron.open[data-v-15491cae]{color:var(--accent,#ab89f1);transform:rotate(180deg)}.eco-switcher-menu[data-v-15491cae]{z-index:9999;border:1px solid var(--hairline,#e8e1ff);background:var(--bg-elevated,#f3efff);min-width:290px;max-width:min(92vw,360px);color:var(--text,#1f2340);border-radius:16px;padding:10px;position:fixed;box-shadow:0 16px 48px #0000002e}.eco-switcher-kicker[data-v-15491cae]{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim,#7c82a5);margin:0 8px 8px;font-size:11px;font-weight:700}.eco-switcher-item[data-v-15491cae]{color:inherit;border-radius:12px;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:10px;text-decoration:none;display:grid}.eco-switcher-item[data-v-15491cae]:hover{background:var(--pill-hover-bg,#eee7ff)}.eco-switcher-item.current[data-v-15491cae]{background:var(--accent-soft,#7b5cff1f)}.eco-switcher-text[data-v-15491cae]{min-width:0}.eco-switcher-text strong[data-v-15491cae]{font-size:14px;display:block}.eco-switcher-text small[data-v-15491cae]{color:var(--text-mute,#5f668a);margin-top:2px;font-size:11px;display:block}.eco-switcher-here[data-v-15491cae]{color:var(--accent,#ab89f1);font-size:10px;font-weight:700}.eco-switcher-empty[data-v-15491cae]{color:var(--text-mute,#5f668a);margin:8px;font-size:12px}.eco-switcher-skeleton-row[data-v-15491cae]{background:var(--bg-soft,#fff);border-radius:12px;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.eco-switcher-skeleton-icon[data-v-15491cae]{background:#7b5cff2e;border-radius:12px;width:40px;height:40px;position:relative;overflow:hidden}.eco-switcher-skeleton-lines[data-v-15491cae]{flex-direction:column;gap:8px;display:flex}.eco-switcher-skeleton-line[data-v-15491cae]{background:#7b5cff24;border-radius:999px;height:10px;position:relative;overflow:hidden}.eco-switcher-skeleton-line--1[data-v-15491cae]{width:160px}.eco-switcher-skeleton-line--2[data-v-15491cae]{width:120px;height:9px}.eco-switcher-skeleton-icon[data-v-15491cae]:after,.eco-switcher-skeleton-line[data-v-15491cae]:after{content:"";background:linear-gradient(90deg,#0000,#fff9,#0000);width:60%;height:100%;animation:1.15s ease-in-out infinite eco-skel-shimmer-15491cae;position:absolute;top:0;left:-60%}@keyframes eco-skel-shimmer-15491cae{0%{transform:translate(0)}to{transform:translate(220%)}}.floviqo-auth[data-v-063a61ba]{align-items:center;display:inline-flex}.auth-login-btn[data-v-063a61ba],.auth-logout[data-v-063a61ba],.auth-primary[data-v-063a61ba],.auth-link[data-v-063a61ba],.oauth-apple[data-v-063a61ba],.oauth-google[data-v-063a61ba]{font:inherit;cursor:pointer;background:0 0;border:none}.auth-login-btn[data-v-063a61ba]{background:color-mix(in srgb, var(--accent,#7c5cff) 14%, transparent);color:var(--accent,#7c5cff);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.auth-overlay[data-v-063a61ba]{z-index:9999;background:var(--floviqo-auth-overlay,#0f172a73);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.auth-modal[data-v-063a61ba]{background:var(--floviqo-auth-modal-bg,#fff);width:min(100%,400px);color:var(--floviqo-auth-text,#1e293b);border:1px solid var(--floviqo-auth-border,transparent);border-radius:20px;padding:24px;box-shadow:0 24px 80px #0f172a2e}.auth-sub[data-v-063a61ba]{color:var(--floviqo-auth-muted,#64748b);margin:8px 0 16px;font-size:13px;line-height:1.45}.auth-form[data-v-063a61ba]{gap:12px;display:grid}.auth-form label[data-v-063a61ba]{color:var(--floviqo-auth-muted,#475569);gap:6px;font-size:12px;font-weight:700;display:grid}.auth-form input[data-v-063a61ba]{border:1px solid var(--floviqo-auth-border,#e2e8f0);background:var(--floviqo-auth-input-bg,#fff);color:var(--floviqo-auth-text,#1e293b);border-radius:12px;padding:12px 14px;font-size:16px}.auth-primary[data-v-063a61ba]{background:var(--accent,#7c5cff);color:#fff;border-radius:12px;padding:12px 16px;font-weight:800}.auth-link[data-v-063a61ba]{color:var(--floviqo-auth-muted,#64748b);text-align:center;font-size:12px}.auth-error[data-v-063a61ba]{color:#ef4444;margin:0;font-size:12px}.auth-hint[data-v-063a61ba]{color:var(--floviqo-auth-muted,#64748b);margin:0;font-size:13px}.auth-divider[data-v-063a61ba]{text-align:center;color:var(--floviqo-auth-muted,#94a3b8);text-transform:uppercase;letter-spacing:.08em;margin:12px 0;font-size:11px}.auth-tabs[data-v-063a61ba]{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:4px;display:grid}.auth-tabs button[data-v-063a61ba]{background:var(--floviqo-auth-input-bg,#f1f5f9);color:var(--floviqo-auth-muted,#64748b);cursor:pointer;border:none;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700}.auth-tabs button.active[data-v-063a61ba]{background:color-mix(in srgb, var(--accent,#7c5cff) 12%, var(--floviqo-auth-modal-bg,#fff));color:var(--accent,#7c5cff)}.oauth-stack[data-v-063a61ba]{justify-items:center;gap:10px;display:grid}.oauth-mount[data-v-063a61ba]{justify-content:center;width:100%;min-height:44px;display:flex}.oauth-apple[data-v-063a61ba],.oauth-google[data-v-063a61ba]{border-radius:999px;width:100%;max-width:320px;padding:12px 16px;font-size:14px;font-weight:700}.oauth-google[data-v-063a61ba]{color:#334155;background:#fff;border:1px solid #e2e8f0}.oauth-apple[data-v-063a61ba]{color:#fff;background:#111}.oauth-apple[data-v-063a61ba]:disabled,.oauth-google[data-v-063a61ba]:disabled{opacity:.6;cursor:not-allowed}.oauth-passkey[data-v-063a61ba]{background:color-mix(in srgb, var(--accent,#7c5cff) 10%, var(--floviqo-auth-modal-bg,#fff));width:100%;max-width:320px;color:var(--accent,#7c5cff);border:1px solid color-mix(in srgb, var(--accent,#7c5cff) 35%, transparent);border-radius:999px;padding:12px 16px;font-size:14px;font-weight:700}.oauth-passkey[data-v-063a61ba]:disabled{opacity:.6;cursor:not-allowed}.auth-bootstrap[data-v-063a61ba]{border:2px solid color-mix(in srgb, var(--accent,#7c5cff) 20%, transparent);border-top-color:var(--accent,#7c5cff);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite auth-spin-063a61ba;display:inline-block}@keyframes auth-spin-063a61ba{to{transform:rotate(360deg)}}.auth-passkey-add[data-v-063a61ba]{color:var(--accent,#7c5cff);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:10px;font-weight:700}.auth-passkey-ok[data-v-063a61ba]{font-size:12px}.auth-user[data-v-063a61ba]{align-items:center;gap:8px;font-size:12px;display:flex}.auth-name[data-v-063a61ba]{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-weight:700;overflow:hidden}.auth-logout[data-v-063a61ba]{color:#94a3b8;font-size:11px}.auth-chip[data-v-063a61ba]{border-radius:999px;padding:0;overflow:hidden}.auth-avatar[data-v-063a61ba]{background:var(--accent,#7c5cff);color:#fff;border-radius:999px;place-items:center;width:32px;height:32px;font-size:13px;font-weight:800;display:grid}.floviqo-security[data-v-73f00939]{display:inline-flex}.security-chip[data-v-73f00939]{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800}.security-chip.enabled[data-v-73f00939]{color:#15803d;background:#e4f8ec;border-color:#22c55e59}.security-overlay[data-v-73f00939]{z-index:9998;background:#0f172a73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.security-modal[data-v-73f00939]{background:#fff;border-radius:20px;width:min(100%,380px);padding:24px;box-shadow:0 24px 80px #0f172a2e}.security-title[data-v-73f00939]{margin:0 0 6px;font-size:18px}.security-sub[data-v-73f00939]{color:#64748b;margin:0 0 16px;font-size:13px}.security-body[data-v-73f00939]{gap:12px;display:grid}.security-muted[data-v-73f00939]{color:#64748b;margin:0;font-size:13px}.security-ok[data-v-73f00939]{color:#15803d;margin:0;font-size:13px;font-weight:700}.security-error[data-v-73f00939]{color:#ef4444;margin:0;font-size:12px}.security-label[data-v-73f00939]{color:#475569;gap:6px;font-size:12px;font-weight:700;display:grid}.security-label input[data-v-73f00939]{border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;font-size:16px}.security-primary[data-v-73f00939],.security-danger[data-v-73f00939],.security-link[data-v-73f00939]{font:inherit;cursor:pointer;border:none}.security-primary[data-v-73f00939]{background:var(--accent,#7c5cff);color:#fff;border-radius:12px;padding:12px 16px;font-weight:800}.security-danger[data-v-73f00939]{color:#dc2626;background:#fef2f2;border-radius:12px;padding:12px 16px;font-weight:800}.security-link[data-v-73f00939]{color:#64748b;text-align:center;background:0 0;font-size:12px}.security-qr[data-v-73f00939]{border:1px solid #e2e8f0;border-radius:12px;justify-self:center}.security-secret[data-v-73f00939]{word-break:break-all;text-align:center;background:#f8fafc;border-radius:10px;padding:10px 12px;font-size:12px;display:block}.floviqo-sessions[data-v-dbd3c0e3]{display:inline-flex}.sessions-chip[data-v-dbd3c0e3]{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800}.sessions-overlay[data-v-dbd3c0e3]{z-index:9996;background:#0f172a73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.sessions-modal[data-v-dbd3c0e3]{background:#fff;border-radius:20px;width:min(100%,420px);max-height:min(90vh,560px);padding:24px;overflow-y:auto;box-shadow:0 24px 80px #0f172a2e}.sessions-title[data-v-dbd3c0e3]{margin:0 0 6px;font-size:18px}.sessions-sub[data-v-dbd3c0e3]{color:#64748b;margin:0 0 16px;font-size:13px}.sessions-stats[data-v-dbd3c0e3]{color:#475569;background:#f8fafc;border-radius:12px;margin-bottom:14px;padding:12px 14px;font-size:12px}.sessions-stats p[data-v-dbd3c0e3]{margin:0 0 4px}.sessions-stats p[data-v-dbd3c0e3]:last-child{margin-bottom:0}.sessions-muted[data-v-dbd3c0e3]{color:#64748b;margin:0 0 12px;font-size:13px}.sessions-error[data-v-dbd3c0e3]{color:#ef4444;margin:0 0 12px;font-size:12px}.sessions-list[data-v-dbd3c0e3]{gap:10px;margin:0 0 12px;padding:0;list-style:none;display:grid}.session-row[data-v-dbd3c0e3]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px}.session-main[data-v-dbd3c0e3]{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:4px;display:flex}.session-device[data-v-dbd3c0e3]{color:#334155;font-size:13px;font-weight:700}.session-badge[data-v-dbd3c0e3]{color:#15803d;background:#e0f7e8;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:800}.session-app[data-v-dbd3c0e3]{background:color-mix(in srgb, var(--accent,#7c5cff) 10%, #fff);color:var(--accent,#7c5cff);border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.session-meta[data-v-dbd3c0e3]{color:#94a3b8;margin-bottom:8px;font-size:11px}.session-revoke[data-v-dbd3c0e3]{font:inherit;color:#ef4444;cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;font-weight:700}.session-revoke[data-v-dbd3c0e3]:disabled{opacity:.5;cursor:not-allowed}.sessions-link[data-v-dbd3c0e3]{color:#64748b;text-align:center;cursor:pointer;font-size:12px;font:inherit;background:0 0;border:none;margin-top:8px;display:block}.floviqo-family[data-v-5f9b12ef]{align-items:center;display:inline-flex}.family-btn[data-v-5f9b12ef]{cursor:pointer;font:inherit;background:color-mix(in srgb, var(--accent,#7c5cff) 10%, transparent);color:var(--accent,#7c5cff);border:none;border-radius:999px;align-items:center;gap:4px;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.family-btn.compact[data-v-5f9b12ef]{padding:6px 8px}.family-btn.has-family[data-v-5f9b12ef]{color:#059669;background:#10b98124}.family-icon[data-v-5f9b12ef]{font-size:14px;line-height:1}.family-label[data-v-5f9b12ef]{font-size:11px}.family-overlay[data-v-5f9b12ef]{z-index:10000;background:#0f172a73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.family-modal[data-v-5f9b12ef]{background:#fff;border-radius:20px;width:min(100%,420px);padding:24px;box-shadow:0 24px 80px #0f172a2e}.family-title[data-v-5f9b12ef]{margin:0;font-size:18px;font-weight:800}.family-sub[data-v-5f9b12ef]{color:#64748b;margin:6px 0 16px;font-size:13px;line-height:1.45}.family-name[data-v-5f9b12ef]{margin:0 0 12px;font-weight:700}.family-invite[data-v-5f9b12ef]{color:#475569;margin:0 0 16px;font-size:13px}.invite-code[data-v-5f9b12ef]{letter-spacing:.12em;font-family:ui-monospace,monospace}.copy-btn[data-v-5f9b12ef]{cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;margin-left:8px;padding:4px 8px;font-size:11px;font-weight:700}.member-list[data-v-5f9b12ef]{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.member-item[data-v-5f9b12ef]{background:#f8fafc;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.member-avatar[data-v-5f9b12ef]{background:var(--accent,#7c5cff);color:#fff;border-radius:999px;place-items:center;width:32px;height:32px;font-size:13px;font-weight:800;display:grid}.member-info[data-v-5f9b12ef]{gap:2px;min-width:0;display:grid}.member-name[data-v-5f9b12ef]{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.member-role[data-v-5f9b12ef]{color:#94a3b8;font-size:11px}.family-primary[data-v-5f9b12ef]{background:var(--accent,#7c5cff);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;padding:12px 16px;font-weight:800}.family-danger[data-v-5f9b12ef]{color:#dc2626;cursor:pointer;background:#fef2f2;border:none;border-radius:12px;width:100%;padding:10px;font-weight:700}.family-divider[data-v-5f9b12ef]{text-align:center;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin:14px 0;font-size:11px}.family-form[data-v-5f9b12ef]{gap:10px;display:grid}.join-input[data-v-5f9b12ef]{text-align:center;letter-spacing:.1em;text-transform:uppercase;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;font-size:16px}.family-error[data-v-5f9b12ef]{color:#ef4444;margin:12px 0 0;font-size:12px}.family-close[data-v-5f9b12ef]{color:#94a3b8;cursor:pointer;background:0 0;border:none;width:100%;margin-top:12px;padding:8px;font-size:12px}.family-loading[data-v-5f9b12ef]{color:#64748b;text-align:center;padding:24px 0;font-size:13px}.floviqo-premium[data-v-feecba34]{display:inline-flex}.premium-chip[data-v-feecba34]{color:#b45309;cursor:pointer;background:#fffbeb;border:1px solid #e2e8f0;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800}.premium-chip.active[data-v-feecba34]{color:#b45309;background:#fef1dd;border-color:#f59e0b66}.premium-overlay[data-v-feecba34]{z-index:9997;background:#0f172a73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.premium-modal[data-v-feecba34]{background:#fff;border-radius:20px;width:min(100%,400px);padding:24px;box-shadow:0 24px 80px #0f172a2e}.premium-title[data-v-feecba34]{margin:0 0 6px;font-size:18px}.premium-sub[data-v-feecba34]{color:#64748b;margin:0 0 16px;font-size:13px}.premium-muted[data-v-feecba34]{color:#64748b;margin:0 0 12px;font-size:13px}.premium-ok[data-v-feecba34]{color:#15803d;margin:0 0 12px;font-size:13px;font-weight:700}.premium-error[data-v-feecba34]{color:#ef4444;margin:0 0 12px;font-size:12px}.plan-grid[data-v-feecba34]{gap:8px;margin-bottom:12px;display:grid}.plan-card[data-v-feecba34]{cursor:pointer;text-align:left;font:inherit;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.plan-card.selected[data-v-feecba34]{border-color:color-mix(in srgb, var(--accent,#7c5cff) 50%, transparent);background:color-mix(in srgb, var(--accent,#7c5cff) 8%, #fff)}.plan-name[data-v-feecba34]{color:#334155;font-size:13px;font-weight:700}.plan-price[data-v-feecba34]{color:var(--accent,#7c5cff);font-size:14px;font-weight:800}.premium-label[data-v-feecba34]{color:#475569;gap:6px;margin-bottom:12px;font-size:12px;font-weight:700;display:grid}.premium-label input[data-v-feecba34]{border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;font-size:16px}.premium-primary[data-v-feecba34],.premium-link[data-v-feecba34]{font:inherit;cursor:pointer;border:none}.premium-primary[data-v-feecba34]{color:#fff;background:linear-gradient(135deg,#f59e0b,#f97316);border-radius:12px;width:100%;padding:12px 16px;font-weight:800}.premium-link[data-v-feecba34]{color:#64748b;text-align:center;background:0 0;margin-top:12px;font-size:12px;display:block}.floviqo-account[data-v-dffa9158]{align-items:center;display:inline-flex}.floviqo-account--embed[data-v-dffa9158]{width:100%;display:block}.account-chip[data-v-dffa9158]{border:1px solid var(--floviqo-auth-border,#e2e8f0);background:var(--floviqo-auth-modal-bg,#fff);color:var(--floviqo-auth-text,#334155);cursor:pointer;font:inherit;border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 4px;display:inline-flex}.account-chip.premium[data-v-dffa9158]{background:color-mix(in srgb, #f59e0b 8%, var(--floviqo-auth-modal-bg,#fff));border-color:#f59e0b66}.account-chip-avatar[data-v-dffa9158]{color:#fff;background:linear-gradient(135deg,#7c5cff,#ff6fae);border-radius:50%;place-items:center;width:26px;height:26px;font-size:11px;font-weight:800;display:grid}.account-chip-name[data-v-dffa9158]{color:var(--floviqo-auth-text,#334155);text-overflow:ellipsis;white-space:nowrap;max-width:88px;font-size:11px;font-weight:700;overflow:hidden}.account-overlay[data-v-dffa9158]{z-index:9995;background:var(--floviqo-auth-overlay,#0f172a73);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.account-modal[data-v-dffa9158],.account-card[data-v-dffa9158]{background:var(--floviqo-auth-modal-bg,#fff);width:min(100%,400px);color:var(--floviqo-auth-text,#1e293b);border:1px solid var(--floviqo-auth-border,transparent);border-radius:20px;padding:20px;box-shadow:0 24px 80px #0f172a2e}.account-card[data-v-dffa9158]{width:100%;box-shadow:none}.account-hero[data-v-dffa9158]{align-items:center;gap:12px;margin-bottom:14px;display:flex}.account-avatar[data-v-dffa9158]{color:#fff;background:linear-gradient(135deg,#7c5cff,#ff6fae);border-radius:14px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:18px;font-weight:800;display:grid}.account-hero-text[data-v-dffa9158]{gap:2px;min-width:0;display:grid}.account-hero-text strong[data-v-dffa9158]{color:var(--floviqo-auth-text,#0f172a);font-size:16px}.account-email[data-v-dffa9158]{color:var(--floviqo-auth-muted,#64748b);text-overflow:ellipsis;font-size:12px;overflow:hidden}.account-badge[data-v-dffa9158]{background:var(--floviqo-auth-input-bg,#f1f5f9);color:var(--floviqo-auth-muted,#64748b);border-radius:999px;width:fit-content;margin-top:4px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-block}.account-badge.active[data-v-dffa9158]{color:#b45309;background:#fffbeb}.account-meta[data-v-dffa9158]{background:var(--floviqo-auth-input-bg,#f8fafc);color:var(--floviqo-auth-muted,#475569);border-radius:12px;margin-bottom:12px;padding:10px 12px;font-size:12px}.account-meta p[data-v-dffa9158]{margin:0 0 4px}.account-meta p[data-v-dffa9158]:last-child{margin-bottom:0}.account-muted[data-v-dffa9158]{color:var(--floviqo-auth-muted,#94a3b8);margin:0 0 12px;font-size:12px}.account-menu[data-v-dffa9158]{gap:6px;display:grid}.account-row[data-v-dffa9158]{text-align:left;border:1px solid var(--floviqo-auth-border,#e2e8f0);background:var(--floviqo-auth-input-bg,#f8fafc);width:100%;font:inherit;color:var(--floviqo-auth-text,#334155);cursor:pointer;border-radius:12px;padding:12px 14px;font-size:13px;font-weight:700}.account-row--danger[data-v-dffa9158]{color:#ef4444;background:#fff5f5;border-color:#fecaca}.account-link[data-v-dffa9158]{color:var(--floviqo-auth-muted,#64748b);text-align:center;cursor:pointer;font-size:12px;font:inherit;background:0 0;border:none;width:100%;margin-top:12px;display:block}.account-bootstrap[data-v-dffa9158]{border:2px solid color-mix(in srgb, var(--accent,#7c5cff) 20%, transparent);border-top-color:var(--accent,#7c5cff);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite account-spin-dffa9158;display:inline-block}@keyframes account-spin-dffa9158{to{transform:rotate(360deg)}}html[data-vibe=feminine],html:not([data-vibe]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f2ff;--bg-soft:#fff;--bg-elevated:#ede9ff;--text:#18103b;--text-mute:#6b5fa0;--text-dim:#9c90cc;--accent:#7c3aed;--accent-2:#a855f7;--accent-soft:#ede9ff;--accent-contrast:#fff;--hairline:#ddd6ff;--pill-hover:#f0ebff;--error:#ec4899;--g1:linear-gradient(135deg, #7c3aed, #a855f7);--g2:linear-gradient(135deg, #6d28d9, #7c3aed);--g3:linear-gradient(135deg, #a855f7, #d946ef);--glow:#7c3aed24;--glow-xl:#7c3aed42;--card-bg:#fff9;--card-border:#7c3aed12;--card-hover-bg:#fffffff5;--card-shadow:0 4px 24px #7c3aed12;--card-shadow-hover:0 12px 40px #7c3aed26;--r-lg:24px;--r-md:16px;--r-sm:12px;--body-bg:radial-gradient(ellipse at 10% 15%, #7c3aed14 0%, transparent 45%), radial-gradient(ellipse at 90% 85%, #a855f70f 0%, #f4f2ff 55%);--topbar-bg:#f4f2ffd9;--tabbar-bg:#ffffffeb;--live-bg:#ffffff73;--live-border:#7c3aed12;--result-bg:linear-gradient(155deg, #18103b 0%, #2a1760 100%);--result-text:#f4f2ff;--result-bar-bg:#ffffff12;--result-bar:linear-gradient(90deg, #a855f7, #7c3aed);--rarity-c:#a855f7;--persona-bg:#7c3aed0d;--persona-border:#7c3aed1f}html[data-vibe=masculine]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#070b14;--bg-soft:#0f1520;--bg-elevated:#18213a;--text:#e2e8f8;--text-mute:#8898bf;--text-dim:#586285;--accent:#3b82f6;--accent-2:#60a5fa;--accent-soft:#172040;--accent-contrast:#fff;--hairline:#1e2d4f;--pill-hover:#1a2745;--error:#f43f5e;--g1:linear-gradient(135deg, #2563eb, #3b82f6);--g2:linear-gradient(135deg, #1d4ed8, #2563eb);--g3:linear-gradient(135deg, #3b82f6, #06b6d4);--glow:#3b82f624;--glow-xl:#3b82f647;--card-bg:#0f1520bf;--card-border:#3b82f61a;--card-hover-bg:#18213aeb;--card-shadow:0 4px 24px #00000047;--card-shadow-hover:0 12px 40px #00000080;--r-lg:12px;--r-md:10px;--r-sm:8px;--body-bg:radial-gradient(ellipse at 20% 10%, #2563eb1f 0%, transparent 45%), radial-gradient(ellipse at 80% 90%, #1e40af14 0%, #070b14 55%);--topbar-bg:#070b14ed;--tabbar-bg:#080d16f7;--live-bg:#0f15208c;--live-border:#3b82f61a;--result-bg:linear-gradient(155deg, #0c1425 0%, #0a1835 100%);--result-text:#e2e8f8;--result-bar-bg:#ffffff0d;--result-bar:linear-gradient(90deg, #2563eb, #3b82f6);--rarity-c:#3b82f6;--persona-bg:#3b82f60f;--persona-border:#3b82f624;--floviqo-auth-modal-bg:#0f1520;--floviqo-auth-text:#e2e8f8;--floviqo-auth-muted:#8898bf;--floviqo-auth-border:#1e2d4f;--floviqo-auth-input-bg:#18213a;--floviqo-auth-overlay:#040812b8}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}html,body,#app{background-color:var(--bg);background-image:var(--body-bg);min-height:100%;color:var(--text);background-attachment:fixed;transition:background-color .4s,color .4s}body{overscroll-behavior:none;-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,-apple-system,sans-serif}#app{min-height:100vh}.topbar{z-index:30;-webkit-backdrop-filter:blur(20px)saturate(1.6);background:var(--topbar-bg);border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;transition:background .4s,border-color .4s;display:flex;position:sticky;top:0}.topbar-brand{min-width:0}.topbar-right{align-items:center;gap:8px;display:flex}.fast-badge{color:#f59e0b;white-space:nowrap;background:#f59e0b1f;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.vibe-toggle{border:1px solid var(--hairline);background:var(--bg-soft);cursor:pointer;border-radius:999px;align-items:center;gap:2px;padding:3px;transition:all .2s;display:flex}.vibe-toggle-opt{opacity:.38;border-radius:999px;place-items:center;width:30px;height:26px;font-size:13px;transition:all .2s;display:grid}.vibe-toggle-opt.active{opacity:1;background:var(--pill-hover);transform:scale(1.06)}.page-content{min-height:calc(100vh - 56px);padding:0 16px 96px;position:relative;overflow:hidden}.dna-screen{min-height:calc(100vh - 140px);max-height:calc(100vh - 56px - env(safe-area-inset-bottom,0));flex-direction:column;display:flex;overflow:hidden}.dna-screen--game{min-height:0;max-height:calc(100vh - 56px - env(safe-area-inset-bottom,0))}.tab-fade-enter-active,.tab-fade-leave-active{transition:opacity .2s,transform .22s}.tab-fade-enter-from{opacity:0;transform:translate(20px)}.tab-fade-leave-to{opacity:0;transform:translate(-20px)}.card-swap-enter-active{transition:opacity .18s 50ms,transform .24s 50ms}.card-swap-leave-active{transition:opacity .12s,transform .14s}.card-swap-enter-from{opacity:0;transform:scale(.96)translateY(8px)}.card-swap-leave-to{opacity:0;transform:scale(1.02)translateY(-4px)}.dopamine-pop-enter-active,.dopamine-pop-leave-active{transition:all .22s}.dopamine-pop-enter-from,.dopamine-pop-leave-to{opacity:0;transform:translateY(-6px)scale(.88)}.metric-slide-enter-active,.metric-slide-leave-active{transition:all .3s}.metric-slide-enter-from,.metric-slide-leave-to{opacity:0;transform:translateY(14px)}.toast-enter-active,.toast-leave-active{transition:all .25s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%)translateY(14px)}.onboard-step-enter-active{transition:opacity .35s .1s,transform .4s cubic-bezier(.34,1.56,.64,1) .1s}.onboard-step-leave-active{transition:opacity .2s,transform .2s;position:absolute}.onboard-step-enter-from{opacity:0;transform:translateY(20px)scale(.95)}.onboard-step-leave-to{opacity:0;transform:translateY(-16px)scale(.97)}.tabbar{z-index:30;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0));background:var(--tabbar-bg);border-top:1px solid var(--hairline);-webkit-backdrop-filter:blur(20px)saturate(1.6);justify-content:space-around;transition:background .4s,border-color .4s;display:flex;position:fixed;bottom:0;left:0;right:0}.tab-btn{cursor:pointer;color:var(--text-dim);border-radius:var(--r-sm);background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;padding:5px 18px;font-size:10px;font-weight:600;transition:all .2s;display:flex;position:relative}.tab-btn.active{color:var(--accent);background:var(--accent-soft)}.tab-icon{width:22px;height:22px}.tab-badge{background:var(--error);color:#fff;text-align:center;border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-style:normal;font-weight:700;line-height:16px;position:absolute;top:0;right:4px}.onboard-wrap{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:24px;padding:24px 0;display:flex;position:relative}.onboard-glow{background:var(--glow-xl);filter:blur(80px);pointer-events:none;z-index:0;border-radius:50%;width:300px;height:300px;animation:3.5s ease-in-out infinite glow-pulse;position:absolute;top:0}.onboard-steps{width:100%;min-height:220px;position:relative}.onboard-step-list{position:relative}.onboard-card{text-align:center;z-index:1;flex-direction:column;align-items:center;gap:12px;padding:8px;display:flex;position:relative}.onboard-big-emoji{filter:drop-shadow(0 8px 20px var(--glow));font-size:64px;line-height:1;animation:3.5s ease-in-out infinite float}.onboard-title{letter-spacing:-.02em;color:var(--text);margin:0;font-size:28px;font-weight:800;line-height:1.15}.onboard-text{color:var(--text-mute);max-width:280px;margin:0;font-size:15px;font-weight:500;line-height:1.5}.onboard-dots{gap:6px;display:flex}.onboard-dot{background:var(--hairline);border-radius:50%;width:6px;height:6px;transition:all .25s}.onboard-dot.active{background:var(--accent);border-radius:3px;width:18px}.onboard-actions{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.home-hero{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:16px 0;display:flex;position:relative;overflow:hidden}.home-glow{background:var(--glow-xl);filter:blur(70px);pointer-events:none;z-index:0;border-radius:50%;width:280px;height:280px;animation:3.5s ease-in-out infinite glow-pulse;position:absolute;top:5%}@keyframes glow-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}.home-icon-wrap{z-index:1;animation:3.5s ease-in-out infinite float;position:relative}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.home-icon{background:var(--g1);width:84px;height:84px;box-shadow:0 12px 40px var(--glow-xl);border-radius:50%;justify-content:center;align-items:center;font-size:38px;display:flex}.home-title{color:var(--text);z-index:1;letter-spacing:-.02em;margin:0;font-size:36px;font-weight:800;line-height:1.1;position:relative}.home-sub{color:var(--text-mute);z-index:1;max-width:280px;margin:0;font-size:14px;font-weight:500;line-height:1.45;position:relative}.home-metrics-preview{z-index:1;flex-wrap:wrap;justify-content:center;gap:6px;max-width:300px;display:flex;position:relative}.home-metric-tag{background:var(--accent-soft);color:var(--accent);white-space:nowrap;border-radius:999px;padding:5px 12px;font-size:11px;font-weight:600}.home-metric-tag--more{background:var(--hairline);color:var(--text-dim)}.btn-primary{border-radius:var(--r-md);background:var(--g1);width:100%;max-width:300px;color:var(--accent-contrast);cursor:pointer;box-shadow:0 4px 24px var(--glow);border:0;justify-content:center;align-items:center;gap:8px;padding:16px 24px;font-size:17px;font-weight:700;transition:transform .15s,box-shadow .25s;display:flex;position:relative;overflow:hidden}.btn-primary:active{transform:scale(.96)}.btn-primary:disabled{opacity:.65;cursor:default;transform:none}.btn-shine{pointer-events:none;background:linear-gradient(90deg,#0000 0%,#ffffff24 50%,#0000 100%);animation:4.5s ease-in-out infinite shine-sweep;position:absolute;inset:0;transform:translate(-100%)}@keyframes shine-sweep{0%,to{transform:translate(-100%)}50%{transform:translate(100%)}}.btn-ghost{border:1px solid var(--hairline);border-radius:var(--r-sm);color:var(--text-mute);cursor:pointer;background:0 0;width:100%;max-width:280px;padding:12px 20px;font-size:14px;font-weight:600;transition:all .2s}.btn-ghost:active{background:var(--pill-hover);transform:scale(.97)}.btn-ghost--sm{padding:9px 16px;font-size:12px}.btn-skip{width:100%;color:var(--text-dim);cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:12px;font-weight:600;transition:color .2s}.btn-skip:hover{color:var(--text-mute)}.btn-skip:disabled{opacity:.4;cursor:default}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.progress-area{flex-direction:column;flex-shrink:0;gap:6px;padding:6px 0 4px;display:flex}.progress-top{align-items:center;gap:8px;min-height:24px;display:flex}.level-badge{color:var(--accent);white-space:nowrap;font-size:12px;font-weight:700}.dopamine-badge{color:var(--text-mute);background:var(--accent-soft);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:200px;padding:3px 10px;font-size:11px;font-weight:600;overflow:hidden}.level-bar{background:var(--hairline);border-radius:999px;height:4px;overflow:hidden}.level-bar-fill{background:var(--g1);border-radius:999px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.progress-bottom{justify-content:space-between;display:flex}.step-counter{color:var(--text-dim);font-size:11px;font-weight:500}.progress-pct{color:var(--accent);font-size:11px;font-weight:700}.game-area{flex-direction:column;flex:auto;justify-content:flex-start;min-height:0;padding:4px 0 0;display:flex;position:relative;overflow:hidden}.cards-row{flex-direction:column;flex:auto;justify-content:center;gap:4px;min-height:0;display:flex}.dna-card{border-radius:var(--r-lg);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--card-bg);-webkit-backdrop-filter:blur(20px)saturate(1.4);border:2px solid var(--card-border);min-height:88px;max-height:min(22vh,168px);box-shadow:var(--card-shadow);text-align:center;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:4px;padding:10px 12px;font-size:16px;font-weight:700;transition:transform .22s cubic-bezier(.34,1.56,.64,1),background .2s,border-color .2s,box-shadow .2s,opacity .18s;display:flex;position:relative;overflow:hidden}.dna-card--themed{color:var(--dna-card-text,var(--text))}.dna-card-bg{border-radius:inherit;background:var(--g1);opacity:0;pointer-events:none;transition:opacity .2s;position:absolute;inset:0}.dna-card:not(:disabled):hover .dna-card-bg{opacity:.04}.dna-card:not(:disabled):hover{background:var(--card-hover-bg);border-color:var(--accent);box-shadow:var(--card-shadow-hover);transform:translateY(-2px)}.dna-card:not(:disabled):active{transform:scale(.96)translateY(0)}.dna-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 4px var(--accent-soft), 0 8px 32px var(--glow-xl)!important;transform:scale(1.05)!important}.dna-card.dismissed{opacity:0!important;transition:transform .22s cubic-bezier(.4,0,.6,1),opacity .16s!important;transform:scale(.85)translateY(12px)!important}.dna-card-emoji{filter:drop-shadow(0 4px 12px #7c3aed33);font-size:36px;line-height:1;transition:filter .3s;display:block}.dna-card:hover .dna-card-emoji{filter:drop-shadow(0 4px 20px #7c3aed59)}.dna-card.selected .dna-card-emoji{filter:drop-shadow(0 4px 24px #7c3aed73)}.dna-card-label{color:var(--dna-card-text,inherit);-webkit-line-clamp:3;-webkit-box-orient:vertical;max-width:100%;font-size:15px;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.vs-divider{flex-shrink:0;justify-content:center;align-items:center;gap:10px;padding:2px 0;display:flex}.vs-dot{background:var(--text-dim);opacity:.35;border-radius:50%;width:4px;height:4px}.vs-text{letter-spacing:.18em;color:var(--text-dim);font-size:10px;font-weight:700}.confetti-layer{pointer-events:none;z-index:40;position:absolute;inset:0;overflow:hidden}.confetti-piece{animation:confetti-fly 1.5s var(--delay,0s) ease-out both;border-radius:2px;position:absolute;top:40%}@keyframes confetti-fly{0%{opacity:1;transform:translate(0)rotate(0)}to{opacity:0;transform:translate(var(--dx,0px), var(--dy,-80px)) rotate(var(--rot,360deg))}}.live-metrics{background:var(--live-bg);-webkit-backdrop-filter:blur(14px);border-radius:var(--r-md);border:1px solid var(--live-border);flex-shrink:0;max-height:28vh;margin-top:6px;padding:10px 12px;overflow-y:auto}.live-metrics-header{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.live-metrics-persona{color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.live-metrics-grid{flex-direction:column;gap:7px;display:flex}.live-metric-item{align-items:center;gap:8px;display:flex}.live-metric-head{flex-shrink:0;align-items:center;gap:4px;min-width:118px;display:flex}.live-metric-emoji{font-size:13px}.live-metric-label{color:var(--text-mute);white-space:nowrap;font-size:12px;font-weight:600}.live-metric-bar-track{background:var(--hairline);border-radius:999px;flex:1;height:4px;overflow:hidden}.live-metric-bar-fill{background:var(--g1);border-radius:999px;height:100%;transition:width .32s cubic-bezier(.4,0,.2,1)}.live-metric-val{color:var(--accent);text-align:right;min-width:28px;font-size:11px;font-weight:700}.result-wrap{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--hairline) transparent;flex-direction:column;align-items:center;gap:14px;max-height:calc(100% - 60px);padding:14px 0;display:flex;overflow-y:auto}.result-header{text-align:center;flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.result-avatar{background:var(--accent-soft);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 12px;transition:background .3s;display:flex;position:relative}.result-avatar-main{font-size:32px}.result-avatar-faction{filter:drop-shadow(0 2px 4px #0003);font-size:18px;position:absolute;top:-4px;right:-4px}.faction-badge{width:100%;padding:6px 0}.faction-badge-inner{border-radius:var(--r-md);color:#fff;align-items:center;gap:8px;padding:10px 14px;display:flex}.faction-badge-icon{font-size:24px}.faction-badge-text{flex-direction:column;display:flex}.faction-badge-label{text-transform:uppercase;opacity:.7;letter-spacing:.08em;font-size:8px;font-weight:700}.faction-badge-name{font-size:14px;font-weight:700}.result-title{color:var(--text);margin:0;font-size:22px;font-weight:800}.result-persona{border-radius:var(--r-md);background:var(--persona-bg);border:1px solid var(--persona-border);text-align:left;width:100%;padding:14px 16px}.persona-chip{background:var(--g1);color:#fff;border-radius:999px;margin-bottom:8px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-block}.persona-desc{color:var(--text-mute);margin:0 0 6px;font-size:14px;font-weight:500;line-height:1.5}.persona-pair-desc{color:var(--text-dim);border-top:1px solid var(--hairline);margin:0;padding-top:6px;font-size:13px;font-weight:500;line-height:1.45}.result-rarity{flex-direction:column;align-items:center;gap:4px;display:flex}.rarity-ring{background:conic-gradient(var(--rarity-c) var(--pct), var(--hairline) var(--pct));border-radius:50%;justify-content:center;align-items:center;width:62px;height:62px;display:flex;position:relative}.rarity-ring:before{content:"";background:var(--bg-soft);border-radius:50%;position:absolute;inset:5px}.rarity-ring-inner{z-index:1;color:var(--rarity-c);font-size:15px;font-weight:800;position:relative}.result-subtitle{color:var(--text-mute);margin:0;font-size:11px}.anti-badge{border-radius:var(--r-sm);background:var(--result-bar-bg);border:1px dashed var(--accent-soft);align-items:center;gap:8px;margin-top:4px;padding:6px 10px;animation:.4s ease-out .3s both anti-in;display:flex}.anti-badge-icon{font-size:16px}.anti-badge-text{flex-direction:column;gap:1px;display:flex}.anti-badge-label{color:var(--text-mute);font-size:9px;font-weight:700}.anti-badge-desc{color:var(--text-dim);font-size:10px}@keyframes anti-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.result-card{background:var(--persona-bg);border:1px solid var(--persona-border);border-radius:var(--r-sm);flex-direction:column;gap:6px;width:100%;padding:14px 16px;display:flex}.result-metric{padding:7px 0;animation:.35s ease-out both metric-in}@keyframes metric-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:none}}.result-metric-head{align-items:center;gap:6px;margin-bottom:4px;display:flex}.result-metric-emoji{font-size:14px}.result-metric-label{flex:1;font-size:13px;font-weight:600}.result-metric-pct{opacity:.65;font-size:13px;font-weight:700}.result-metric-bar{background:var(--result-bar-bg);border-radius:999px;height:4px;overflow:hidden}.result-metric-fill{background:var(--result-bar);border-radius:999px;height:100%;transition:width .65s cubic-bezier(.34,1.56,.64,1)}.result-meta{flex-wrap:wrap;justify-content:center;gap:8px;padding:6px 0;display:flex}.result-meta-item{color:var(--text-dim);background:var(--result-bar-bg);border-radius:999px;padding:3px 10px;font-size:10px;font-weight:600}.result-badge-wrap{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.badge-chip{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600}.result-bento{grid-template-columns:repeat(5,1fr);gap:4px;width:100%;padding:0;display:grid}.bento-cell{border-radius:var(--r-sm);background:var(--result-bar-bg);aspect-ratio:1;animation:.3s ease-out both bento-in;animation-delay:calc(var(--idx) * 30ms);flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:8px 4px;display:flex}@keyframes bento-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.bento-emoji{font-size:20px;line-height:1.2}.bento-pct{color:var(--text-mute);font-size:9px;font-weight:700;transition:opacity .3s}.dna-summary{text-align:center;color:var(--accent);padding:6px 0 0;font-size:14px;font-weight:600}.fast-mode-note{color:#f59e0b;text-align:center;font-size:11px;font-weight:600}.choice-history{width:100%;padding:8px 0 0}.choice-history-title{color:var(--text-mute);text-align:center;margin:0 0 8px;font-size:12px;font-weight:700}.choice-history-list{flex-direction:column;gap:4px;display:flex}.choice-history-item{border-radius:var(--r-sm);background:var(--result-bar-bg);justify-content:center;align-items:center;gap:8px;padding:6px 10px;animation:.3s ease-out both choice-item-in;display:flex}.chosen-emoji{filter:drop-shadow(0 0 6px var(--glow));font-size:22px}.other-emoji{opacity:.5;font-size:22px}.vs-mini{color:var(--text-dim);letter-spacing:.05em;font-size:9px;font-weight:700}@keyframes choice-item-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.result-actions{flex-direction:column;align-items:center;gap:10px;width:100%;max-width:300px;padding-top:4px;display:flex}.result-tabs{border-bottom:1px solid var(--hairline);gap:4px;width:100%;margin-bottom:8px;padding:6px 0 0;display:flex}.result-tab{color:var(--text-dim);cursor:pointer;border-radius:var(--r-sm) var(--r-sm) 0 0;background:0 0;border:0;flex:1;padding:8px 4px;font-size:11px;font-weight:600;transition:color .2s,background .2s}.result-tab.active{color:var(--accent);background:var(--accent-soft)}.result-tab-content{flex-direction:column;align-items:center;gap:6px;width:100%;display:flex}.result-tab-fade-enter-active{transition:all .2s ease-out}.result-tab-fade-leave-active{transition:all .1s ease-in}.result-tab-fade-enter-from{opacity:0;transform:translateY(10px)}.result-tab-fade-leave-to{opacity:0;transform:translateY(-10px)}.app-toast{left:50%;bottom:calc(88px + env(safe-area-inset-bottom,0));z-index:120;background:var(--text);max-width:min(340px,100vw - 32px);color:var(--bg);text-align:center;pointer-events:none;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:600;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #00000024}.undo-btn{border:1px solid var(--hairline);background:var(--bg-soft);width:32px;height:32px;color:var(--text-mute);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.undo-btn:active{background:var(--pill-hover);transform:scale(.92)}.swipe-hint{z-index:5;pointer-events:none;letter-spacing:.04em;opacity:0;justify-content:space-between;align-items:center;padding:0 20px;font-size:13px;font-weight:700;transition:opacity .2s;display:flex;position:absolute;inset:0}.swipe-hint--left,.swipe-hint--right{opacity:.7}.swipe-hint-left{color:var(--error)}.swipe-hint-right{color:#10b981}.card-swipe-left{border-color:var(--error)!important;transform:rotate(-2deg)translate(-8px)!important;box-shadow:0 0 0 3px #ec489926,0 8px 32px #ec489933!important}.card-swipe-right{border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-soft), 0 8px 32px var(--glow-xl)!important;transform:rotate(2deg)translate(8px)!important}.choice-footprint{width:100%;padding:8px 0 0}.choice-footprint-title{color:var(--text-mute);text-align:center;margin:0 0 8px;font-size:12px;font-weight:700}.choice-footprint-track{flex-wrap:wrap;justify-content:center;gap:3px;display:flex}.footprint-dot{background:var(--result-bar-bg);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:transform .15s;animation:.25s ease-out both footprint-in;display:flex}.footprint-dot:active{transform:scale(1.25)}.footprint-emoji{font-size:11px;line-height:1}@keyframes footprint-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.radar-wrap{justify-content:center;width:100%;padding:4px 0;display:flex}.radar-svg{width:200px;height:200px;overflow:visible}.radar-grid-ring{fill:none;stroke:var(--hairline);stroke-width:.5px;opacity:.45}.radar-axis{stroke:var(--hairline);stroke-width:.5px;opacity:.35}.radar-fill{fill:var(--accent);opacity:.15;transition:all .5s cubic-bezier(.34,1.56,.64,1)}.radar-stroke{fill:none;stroke:var(--accent);stroke-width:1.5px;opacity:.7;transition:all .5s cubic-bezier(.34,1.56,.64,1)}.radar-dot{fill:var(--accent);filter:drop-shadow(0 0 4px var(--glow))}.radar-label{fill:var(--text-mute);font-size:11px;font-weight:500}.midpoint-overlay{z-index:20;background:var(--bg);justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.midpoint-inner{text-align:center;flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.midpoint-emoji{font-size:52px;animation:3s ease-in-out infinite float}.midpoint-title{color:var(--text);margin:0;font-size:22px;font-weight:800}.midpoint-metrics{flex-direction:column;gap:10px;width:100%;display:flex}.midpoint-metric-item{background:var(--accent-soft);border-radius:var(--r-md);align-items:center;gap:10px;padding:10px 14px;animation:.4s ease-out both metric-in;display:flex}.midpoint-metric-emoji{flex-shrink:0;font-size:20px}.midpoint-metric-bar-wrap{text-align:left;flex-direction:column;flex:1;gap:4px;display:flex}.midpoint-metric-label{color:var(--text-mute);font-size:13px;font-weight:600}.midpoint-metric-bar{background:var(--hairline);border-radius:999px;height:5px;overflow:hidden}.midpoint-metric-fill{background:var(--g1);border-radius:999px;height:100%;transition:width .6s cubic-bezier(.34,1.56,.64,1) .2s}.midpoint-metric-pct{color:var(--accent);text-align:right;flex-shrink:0;min-width:36px;font-size:14px;font-weight:700}.midpoint-pop-enter-active{transition:opacity .25s,transform .3s cubic-bezier(.34,1.56,.64,1)}.midpoint-pop-leave-active{transition:opacity .2s,transform .2s}.midpoint-pop-enter-from,.midpoint-pop-leave-to{opacity:0;transform:scale(.94)translateY(12px)}.compare-block{border-radius:var(--r-md);background:var(--accent-soft);border:1px solid var(--hairline);width:100%;margin-top:4px;padding:14px 16px}.compare-title{color:var(--accent);margin:0 0 10px;font-size:13px;font-weight:700}.compare-grid{flex-direction:column;gap:8px;display:flex}.compare-row{align-items:center;gap:8px;font-size:13px;display:flex}.compare-bars{flex-direction:column;flex:1;gap:2px;display:flex}.compare-bar{border-radius:999px;min-width:4px;height:4px;transition:width .5s}.compare-bar.mine{background:var(--accent)}.compare-bar.friend{background:var(--error);opacity:.6}.compare-diff{text-align:right;min-width:34px;font-size:11px;font-weight:700}.compare-diff.pos{color:#10b981}.compare-diff.neg{color:var(--error)}.category-badge{background:var(--hairline);z-index:5;pointer-events:none;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;display:flex;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.category-badge-emoji{font-size:10px}.category-badge-label{color:var(--text-mute);letter-spacing:.02em;font-size:9px;font-weight:600}.num-pop-enter-active{transition:all .18s cubic-bezier(.34,1.56,.64,1)}.num-pop-leave-active{transition:all .12s;position:absolute}.num-pop-enter-from{opacity:0;transform:translateY(-10px)scale(.8)}.num-pop-leave-to{opacity:0;transform:translateY(10px)scale(.8)}.step-counter{align-items:baseline;gap:4px;display:inline-flex;position:relative}.ecosystem-recs{flex-direction:column;gap:8px;width:100%;padding:8px 0 0;display:flex}.ecosystem-recs-title{color:var(--text);text-align:center;margin:0;font-size:13px;font-weight:700}.ecosystem-rec-card{background:var(--accent-soft);border:1px solid var(--hairline);border-radius:var(--r-md);color:var(--text);cursor:pointer;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex}.ecosystem-rec-card:active{transform:scale(.97)}.ecosystem-rec-emoji{flex-shrink:0;font-size:24px}.ecosystem-rec-text{text-align:left;flex-direction:column;flex:1;gap:2px;display:flex}.ecosystem-rec-app{color:var(--accent);font-size:12px;font-weight:700}.ecosystem-rec-desc{color:var(--text-mute);font-size:11px;line-height:1.4}.ecosystem-rec-arrow{color:var(--text-mute);flex-shrink:0;font-size:14px;transition:transform .2s}.ecosystem-rec-card:active .ecosystem-rec-arrow{transform:translate(4px)}.persona-chip{align-items:center;gap:6px;display:inline-flex}.persona-chip-emoji{font-size:18px}.midpoint-persona-reveal{background:var(--accent-soft);border:1.5px solid var(--accent);border-radius:var(--r-md);align-items:center;gap:10px;width:100%;padding:10px 14px;animation:.4s ease-out .3s both metric-in;display:flex}.midpoint-persona-emoji{flex-shrink:0;font-size:28px}.midpoint-persona-info{text-align:left;flex-direction:column;flex:1;display:flex}.midpoint-persona-label{color:var(--text-mute);font-size:11px;font-weight:500}.midpoint-persona-name{color:var(--accent);font-size:16px;font-weight:800}.midpoint-unlock-icon{flex-shrink:0;font-size:20px;animation:1s ease-in-out .6s infinite bounce}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.insight-bubble{background:var(--accent-soft);border:1px solid var(--accent);border-radius:var(--r-md);box-shadow:0 8px 24px var(--glow);z-index:15;pointer-events:auto;align-items:center;gap:8px;max-width:min(280px,100vw - 40px);padding:10px 14px;animation:.3s ease-out .1s both insight-in;display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.insight-text{color:var(--text);font-size:12px;font-weight:600}.insight-close{color:var(--text-dim);cursor:pointer;flex-shrink:0;font-size:14px;line-height:1}.insight-pop-enter-active{transition:all .25s cubic-bezier(.34,1.56,.64,1)}.insight-pop-leave-active{transition:all .15s}.insight-pop-enter-from{opacity:0;transform:translate(-50%)translateY(12px)}.insight-pop-leave-to{opacity:0;transform:translate(-50%)translateY(-12px)}@keyframes insight-in{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.midpoint-timer{background:var(--result-bar-bg);color:var(--text-mute);border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:12px;font-weight:600;display:flex}.midpoint-timer-emoji{font-size:16px}.level-bar{position:relative}.level-checkpoint{background:var(--hairline);border:1.5px solid var(--bg-soft);z-index:2;border-radius:50%;width:8px;height:8px;transition:background .3s,transform .3s cubic-bezier(.34,1.56,.64,1);position:absolute;top:50%;transform:translate(-50%,-50%)}.level-checkpoint.reached{background:var(--accent);box-shadow:0 0 6px var(--glow);transform:translate(-50%,-50%)scale(1.3)}.level-flash{background:var(--g1);opacity:.25;pointer-events:none;border-radius:999px;animation:.3s ease-out flash-pulse;position:absolute;inset:0}@keyframes flash-pulse{0%{opacity:.35;transform:scale(1.02)}to{opacity:0;transform:scale(1)}}.flash-enter-active{transition:opacity .15s}.flash-leave-active{transition:opacity .2s}.flash-enter-from,.flash-leave-to{opacity:0}.streak-badge{color:#fff;letter-spacing:.02em;background:linear-gradient(135deg,#f59e0b,#ef4444);border-radius:999px;padding:3px 8px;font-size:11px;font-weight:800}.streak-pop-enter-active{transition:all .3s cubic-bezier(.34,1.56,.64,1)}.streak-pop-leave-active{transition:all .15s}.streak-pop-enter-from{opacity:0;transform:scale(.5)}.streak-pop-leave-to{opacity:0;transform:scale(.8)}.fun-facts{flex-direction:column;gap:4px;width:100%;padding:6px 0 0;display:flex}.fun-fact-row{border-radius:var(--r-sm);background:var(--result-bar-bg);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:8px 12px;transition:background .2s;animation:.3s ease-out both metric-in;display:flex}.fun-fact-row:active{background:var(--pill-hover)}.fun-fact-icon{flex-shrink:0;font-size:16px}.fun-fact-label{color:var(--text-mute);flex-shrink:0;font-size:11px;font-weight:600}.fun-fact-value{color:var(--accent);text-align:right;flex:1;margin-left:auto;font-size:12px;font-weight:700}.fun-fact-toggle{color:var(--text-dim);flex-shrink:0;font-size:8px;transition:transform .2s}.achievements-section{width:100%;padding:8px 0 0;animation:.4s ease-out both metric-in}.achievements-title{color:var(--text);text-align:center;margin:0 0 8px;font-size:13px;font-weight:700}.achievements-grid{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.achievement-chip{background:var(--accent-soft);border:1px solid var(--accent);color:var(--text);border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:600;transition:transform .15s;animation:.35s ease-out both metric-in;display:flex}.achievement-chip:active{transform:scale(.95)}.achievement-emoji{font-size:14px}.achievement-label{color:var(--text-mute)}
