:root{--color-primary:#5d7a52;--color-primary-deep:#3d5a35;--color-primary-pressed:#2f4a28;--color-on-primary:#fff;--color-brand-green:#3d5a35;--color-brand-green-dark:#2c4426;--color-brand-green-mid:#5d7a52;--color-brand-green-soft:#e3fcef;--color-brand-teal-deep:#2c4426;--color-brand-teal:#3d5a35;--color-brand-teal-mid:#5d7a52;--color-accent-purple:#5d7a52;--color-accent-orange:#71a563;--color-accent-pink:#5d7a52;--color-accent-blue:#5d7a52;--color-semantic-warning-bg:#fff8e0;--color-semantic-warning-text:#946f3f;--color-error:#e74c3c;--color-error-deep:#c0392b;--color-canvas:#fff;--color-canvas-dark:#001e2b;--color-surface:#f9fbfa;--color-surface-soft:#f4f7f6;--color-surface-feature:#e3fcef;--color-hairline:#e1e5e8;--color-hairline-soft:#eceff1;--color-hairline-strong:#c1ccd6;--color-hairline-dark:#1c2d38;--color-ink:#001e2b;--color-charcoal:#1c2d38;--color-slate:#3d4f5b;--color-steel:#5c6c7a;--color-stone:#7c8c9a;--color-muted:#a8b3bc;--color-on-dark:#fff;--color-on-dark-muted:#a8b3bc;--font-family-primary:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-code:"Source Code Pro", "SF Mono", Menlo, Consolas, monospace;--typography-heading-1-size:48px;--typography-heading-1-weight:500;--typography-heading-1-line:1.2;--typography-heading-1-spacing:-.5px;--typography-heading-2-size:36px;--typography-heading-2-weight:500;--typography-heading-2-line:1.25;--typography-heading-2-spacing:-.5px;--typography-heading-3-size:28px;--typography-heading-3-weight:500;--typography-heading-3-line:1.3;--typography-heading-4-size:22px;--typography-heading-4-weight:500;--typography-heading-4-line:1.35;--typography-heading-5-size:18px;--typography-heading-5-weight:600;--typography-heading-5-line:1.4;--typography-subtitle-size:18px;--typography-subtitle-weight:400;--typography-subtitle-line:1.5;--typography-body-md-size:16px;--typography-body-md-weight:400;--typography-body-md-line:1.55;--typography-body-md-medium-size:16px;--typography-body-md-medium-weight:500;--typography-body-md-medium-line:1.55;--typography-body-sm-size:14px;--typography-body-sm-weight:400;--typography-body-sm-line:1.5;--typography-body-sm-medium-size:14px;--typography-body-sm-medium-weight:500;--typography-body-sm-medium-line:1.5;--typography-caption-size:13px;--typography-caption-weight:400;--typography-caption-line:1.4;--typography-caption-bold-size:13px;--typography-caption-bold-weight:600;--typography-caption-bold-line:1.4;--typography-micro-size:12px;--typography-micro-weight:500;--typography-micro-line:1.4;--typography-micro-uppercase-size:11px;--typography-micro-uppercase-weight:600;--typography-micro-uppercase-line:1.4;--typography-micro-uppercase-spacing:1px;--typography-button-md-size:14px;--typography-button-md-weight:600;--typography-button-md-line:1.3;--typography-code-md-size:14px;--typography-code-md-weight:400;--typography-code-md-line:1.55;--spacing-xxs:4px;--spacing-xs:8px;--spacing-sm:12px;--spacing-md:16px;--spacing-lg:20px;--spacing-xl:5px;--spacing-xxl:32px;--spacing-xxxl:40px;--spacing-section-sm:48px;--spacing-section:64px;--spacing-section-lg:96px;--spacing-hero:120px;--rounded-xs:4px;--rounded-sm:6px;--rounded-md:8px;--rounded-lg:12px;--rounded-xl:16px;--rounded-xxl:24px;--rounded-full:9999px;--elevation-0:none;--elevation-1:0px 1px 2px 0px #001e2b0a;--elevation-2:0px 4px 12px 0px #001e2b14;--elevation-3:0px 12px 24px -4px #001e2b1f;--elevation-4:0px 16px 48px -8px #001e2b29;--btn-primary-bg:var(--color-brand-green);--btn-primary-color:var(--color-on-primary);--btn-primary-font-size:var(--typography-button-md-size);--btn-primary-font-weight:var(--typography-button-md-weight);--btn-primary-line-height:var(--typography-button-md-line);--btn-primary-padding:10px 22px;--btn-primary-radius:var(--rounded-full);--btn-primary-pressed-bg:var(--color-primary-pressed);--btn-primary-disabled-bg:var(--color-hairline);--btn-primary-disabled-color:var(--color-muted);--btn-secondary-bg:transparent;--btn-secondary-color:var(--color-ink);--btn-secondary-border:1px solid var(--color-hairline-strong);--btn-secondary-font-size:var(--typography-button-md-size);--btn-secondary-font-weight:var(--typography-button-md-weight);--btn-secondary-line-height:var(--typography-button-md-line);--btn-secondary-padding:10px 22px;--btn-secondary-radius:var(--rounded-full);--btn-on-dark-bg:var(--color-brand-green);--btn-on-dark-color:var(--color-on-primary);--btn-on-dark-font-size:var(--typography-button-md-size);--btn-on-dark-font-weight:var(--typography-button-md-weight);--btn-on-dark-line-height:var(--typography-button-md-line);--btn-on-dark-padding:10px 22px;--btn-on-dark-radius:var(--rounded-full);--btn-secondary-on-dark-bg:transparent;--btn-secondary-on-dark-color:var(--color-on-dark);--btn-secondary-on-dark-border:1px solid var(--color-hairline-dark);--btn-secondary-on-dark-font-size:var(--typography-button-md-size);--btn-secondary-on-dark-font-weight:var(--typography-button-md-weight);--btn-secondary-on-dark-line-height:var(--typography-button-md-line);--btn-secondary-on-dark-padding:10px 22px;--btn-secondary-on-dark-radius:var(--rounded-full);--btn-ghost-bg:transparent;--btn-ghost-color:var(--color-ink);--btn-ghost-font-size:var(--typography-button-md-size);--btn-ghost-font-weight:var(--typography-button-md-weight);--btn-ghost-padding:8px 12px;--btn-ghost-radius:var(--rounded-md);--btn-link-bg:transparent;--btn-link-color:var(--color-brand-green-dark);--btn-link-font-size:var(--typography-body-sm-medium-size);--btn-link-font-weight:var(--typography-body-sm-medium-weight);--btn-link-padding:0;--card-base-bg:var(--color-canvas);--card-base-radius:var(--rounded-lg);--card-base-padding:var(--spacing-xl);--card-base-border:1px solid var(--color-hairline);--card-feature-bg:var(--color-canvas);--card-feature-radius:var(--rounded-lg);--card-feature-padding:var(--spacing-xxl);--card-feature-border:1px solid var(--color-hairline);--card-feature-dark-bg:var(--color-brand-teal-deep);--card-feature-dark-color:var(--color-on-dark);--card-feature-dark-radius:var(--rounded-lg);--card-feature-dark-padding:var(--spacing-xxl);--card-course-bg:var(--color-canvas);--card-course-radius:var(--rounded-lg);--card-course-padding:var(--spacing-xl);--card-course-border:1px solid var(--color-hairline);--pricing-card-bg:var(--color-canvas);--pricing-card-radius:var(--rounded-lg);--pricing-card-padding:var(--spacing-xxl);--pricing-card-border:1px solid var(--color-hairline);--pricing-card-featured-bg:var(--color-surface-feature);--pricing-card-featured-radius:var(--rounded-lg);--pricing-card-featured-padding:var(--spacing-xxl);--pricing-card-featured-border:2px solid var(--color-brand-green);--text-input-bg:var(--color-canvas);--text-input-color:var(--color-ink);--text-input-font-size:var(--typography-body-md-size);--text-input-radius:var(--rounded-md);--text-input-padding:var(--spacing-sm) var(--spacing-md);--text-input-border:1px solid var(--color-hairline-strong);--text-input-height:44px;--text-input-focus-border:2px solid var(--color-brand-green-dark);--search-pill-bg:var(--color-surface);--search-pill-color:var(--color-steel);--search-pill-font-size:var(--typography-body-md-size);--search-pill-radius:var(--rounded-md);--search-pill-padding:var(--spacing-sm) var(--spacing-md);--search-pill-height:44px;--search-pill-border:1px solid var(--color-hairline-strong);--pill-tab-bg:transparent;--pill-tab-color:var(--color-steel);--pill-tab-font-size:var(--typography-body-sm-medium-size);--pill-tab-font-weight:var(--typography-body-sm-medium-weight);--pill-tab-radius:var(--rounded-full);--pill-tab-padding:var(--spacing-xs) var(--spacing-md);--pill-tab-border:1px solid var(--color-hairline);--pill-tab-active-bg:var(--color-ink);--pill-tab-active-color:var(--color-on-dark);--pill-tab-active-border:1px solid var(--color-ink);--segmented-tab-bg:transparent;--segmented-tab-color:var(--color-steel);--segmented-tab-font-size:var(--typography-body-sm-medium-size);--segmented-tab-font-weight:var(--typography-body-sm-medium-weight);--segmented-tab-padding:var(--spacing-sm) var(--spacing-md);--segmented-tab-active-color:var(--color-brand-green-dark);--segmented-tab-active-border:0 0 2px var(--color-brand-green-dark) solid;--badge-green-bg:var(--color-brand-green);--badge-green-color:var(--color-on-primary);--badge-green-font-size:var(--typography-caption-bold-size);--badge-green-font-weight:var(--typography-caption-bold-weight);--badge-green-radius:var(--rounded-sm);--badge-green-padding:2px 8px;--badge-green-soft-bg:var(--color-brand-green-soft);--badge-green-soft-color:var(--color-brand-green-dark);--badge-green-soft-font-size:var(--typography-caption-bold-size);--badge-green-soft-font-weight:var(--typography-caption-bold-weight);--badge-green-soft-radius:var(--rounded-full);--badge-green-soft-padding:4px 10px;--badge-purple-bg:var(--color-accent-purple);--badge-purple-color:var(--color-on-dark);--badge-purple-font-size:var(--typography-caption-bold-size);--badge-purple-font-weight:var(--typography-caption-bold-weight);--badge-purple-radius:var(--rounded-sm);--badge-purple-padding:2px 8px;--badge-orange-bg:var(--color-accent-orange);--badge-orange-color:var(--color-on-dark);--badge-orange-font-size:var(--typography-caption-bold-size);--badge-orange-font-weight:var(--typography-caption-bold-weight);--badge-orange-radius:var(--rounded-sm);--badge-orange-padding:2px 8px;--badge-popular-bg:var(--color-brand-teal-deep);--badge-popular-color:var(--color-brand-green);--badge-popular-font-size:var(--typography-caption-bold-size);--badge-popular-font-weight:var(--typography-caption-bold-weight);--badge-popular-radius:var(--rounded-full);--badge-popular-padding:4px 10px;--promo-banner-bg:var(--color-brand-teal-deep);--promo-banner-color:var(--color-on-dark);--promo-banner-font-size:var(--typography-body-sm-medium-size);--promo-banner-font-weight:var(--typography-body-sm-medium-weight);--promo-banner-padding:var(--spacing-sm) var(--spacing-md);--hero-band-dark-bg:var(--color-brand-teal-deep);--hero-band-dark-color:var(--color-on-dark);--hero-band-dark-padding:var(--spacing-hero);--code-block-bg:var(--color-canvas-dark);--code-block-color:var(--color-on-dark);--code-block-font-family:var(--font-family-code);--code-block-font-size:var(--typography-code-md-size);--code-block-line-height:var(--typography-code-md-line);--code-block-radius:var(--rounded-md);--code-block-padding:var(--spacing-md);--comparison-table-bg:var(--color-canvas);--comparison-table-color:var(--color-ink);--comparison-table-font-size:var(--typography-body-sm-size);--comparison-table-radius:var(--rounded-md);--comparison-table-border:1px solid var(--color-hairline);--comparison-row-padding:var(--spacing-md) var(--spacing-lg);--comparison-row-border:0 0 1px var(--color-hairline-soft) solid;--footer-region-bg:var(--color-brand-teal-deep);--footer-region-color:var(--color-on-dark);--footer-region-font-size:var(--typography-body-sm-size);--footer-region-padding:var(--spacing-section) var(--spacing-xxl);--footer-link-bg:transparent;--footer-link-color:var(--color-on-dark-muted);--footer-link-font-size:var(--typography-body-sm-size);--footer-link-padding:var(--spacing-xxs) 0;--faq-accordion-bg:var(--color-canvas);--faq-accordion-radius:var(--rounded-md);--faq-accordion-padding:var(--spacing-xl);--faq-accordion-border:0 0 1px var(--color-hairline) solid;--service-tile-bg:var(--color-canvas);--service-tile-radius:var(--rounded-lg);--service-tile-padding:var(--spacing-xl);--service-tile-border:1px solid var(--color-hairline);--testimonial-card-bg:var(--color-canvas);--testimonial-card-radius:var(--rounded-lg);--testimonial-card-padding:var(--spacing-xxl);--testimonial-card-border:1px solid var(--color-hairline);--ant-primary-color:var(--color-primary);--ant-primary-color-hover:var(--color-primary-deep);--ant-primary-color-active:var(--color-primary-pressed);--ant-primary-1:var(--color-surface-feature);--ant-primary-2:var(--color-brand-green-soft);--ant-primary-5:var(--color-primary);--ant-primary-6:var(--color-primary-deep);--ant-primary-7:var(--color-primary-pressed);--ant-body-background:var(--color-surface);--ant-component-background:var(--color-canvas);--ant-border-color-base:var(--color-hairline);--ant-border-color-split:var(--color-hairline-soft);--ant-text-color:var(--color-ink);--ant-text-color-secondary:var(--color-slate);--ant-text-color-disabled:var(--color-muted);--ant-border-radius-base:var(--rounded-md);--layout-header-height:3rem;--layout-header-bg:var(--color-brand-teal-deep);--layout-header-color:var(--color-on-dark);--layout-sider-width:260px;--layout-sider-bg:var(--color-canvas);--layout-content-bg:var(--color-surface);--sidebar-bg:var(--color-canvas);--sidebar-item-color:var(--color-slate);--sidebar-item-hover-bg:var(--color-surface);--sidebar-item-active-bg:var(--color-surface-feature);--sidebar-item-active-color:var(--color-brand-green-dark);--sidebar-divider-color:var(--color-hairline);--sidebar-section-title-color:var(--color-steel);--sidebar-icon-color:var(--color-brand-green-mid)}.avatar-upload-container[data-v-6a447baf]{display:inline-block;position:relative}.avatar-preview[data-v-6a447baf]{cursor:default;border:2px solid var(--color-hairline);border-radius:50%;width:2.5rem;height:2.5rem;transition:all .3s;position:relative;overflow:hidden}.avatar-preview.is-interactive[data-v-6a447baf]{cursor:pointer}.avatar-preview.is-interactive[data-v-6a447baf]:hover{border-color:var(--color-primary);transform:scale(1.05)}.avatar-image[data-v-6a447baf]{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.avatar-placeholder[data-v-6a447baf]{background:var(--color-surface);width:100%;height:100%;color:var(--color-steel);justify-content:center;align-items:center;display:flex}.avatar-placeholder svg[data-v-6a447baf]{width:1.25rem;height:1.25rem}.avatar-overlay[data-v-6a447baf]{color:var(--color-on-dark);opacity:0;text-align:center;background:#00000080;flex-direction:column;justify-content:center;align-items:center;padding:.25rem;transition:opacity .3s;display:flex;position:absolute;inset:0}.avatar-preview:hover .avatar-overlay[data-v-6a447baf]{opacity:1}.avatar-overlay svg[data-v-6a447baf]{flex-shrink:0;width:1rem;height:1rem;margin-bottom:.125rem}.avatar-overlay span[data-v-6a447baf]{word-break:break-all;font-size:.625rem;line-height:1.2}.file-input[data-v-6a447baf]{display:none}.loading-overlay[data-v-6a447baf]{z-index:10;background:#ffffffe6;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.loading-spinner[data-v-6a447baf]{border:2px solid var(--color-hairline-soft);border-top:2px solid var(--color-primary);border-radius:50%;width:1rem;height:1rem;margin-bottom:.25rem;animation:1s linear infinite spin-6a447baf}@keyframes spin-6a447baf{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-overlay span[data-v-6a447baf]{color:var(--color-ink);font-size:.625rem}.error-message[data-v-6a447baf]{color:var(--color-on-dark);white-space:nowrap;z-index:20;background:#ff4d4f;border-radius:.25rem;margin-top:.25rem;padding:.25rem .5rem;font-size:.625rem;position:absolute;top:100%;left:50%;transform:translate(-50%)}[data-v-6a447baf] .header-green .avatar-preview{border-color:#ffffff80}[data-v-6a447baf] .header-green .avatar-preview:hover{border-color:var(--color-on-dark)}[data-v-6a447baf] .header-green .avatar-placeholder{color:var(--color-on-dark);background:#fff3}.header-bar[data-v-c039d456]{z-index:1000;background:#fff;justify-content:space-between;align-items:center;height:3rem;padding:0 1rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 8px #00000014}.theme-green[data-v-c039d456]{color:#fff;background:#4caf50}.theme-green .header-btn[data-v-c039d456],.theme-green .user-trigger[data-v-c039d456]{color:#fff}.header-left[data-v-c039d456]{align-items:center;gap:.75rem;display:flex}.toggle-btn[data-v-c039d456]{width:2.25rem;height:2.25rem;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:.375rem;justify-content:center;align-items:center;transition:background .2s;display:flex}.toggle-btn[data-v-c039d456]:hover{background:#ffffff26}.toggle-btn svg[data-v-c039d456]{width:1.25rem;height:1.25rem}.header-title[data-v-c039d456]{white-space:nowrap;font-size:1rem;font-weight:600}.header-center[data-v-c039d456]{flex:1;justify-content:center;max-width:50%;display:flex}.header-right[data-v-c039d456]{align-items:center;gap:.5rem;display:flex;position:relative}.header-btn[data-v-c039d456]{height:2.25rem;color:inherit;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:.375rem;align-items:center;gap:.375rem;padding:0 .75rem;font-size:.875rem;transition:background .2s;display:flex}.header-btn[data-v-c039d456]:hover{background:#fff3}.header-btn svg[data-v-c039d456]{width:1rem;height:1rem}.user-menu[data-v-c039d456]{position:relative}.user-trigger[data-v-c039d456]{max-width:14rem;height:2.5rem;color:inherit;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff3d;border-radius:1.25rem;align-items:center;gap:.5rem;padding:.2rem .5rem .2rem .25rem;transition:background .2s,border-color .2s;display:flex}.user-trigger[data-v-c039d456]:hover,.user-trigger[aria-expanded=true][data-v-c039d456]{background:#ffffff38;border-color:#fff6}.user-trigger[data-v-c039d456] .avatar-preview{border-color:#ffffffa6;width:2rem;height:2rem}.user-trigger[data-v-c039d456] .avatar-placeholder{color:#fff;background:#fff3}.user-name[data-v-c039d456]{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:8rem;font-size:.875rem;font-weight:500;overflow:hidden}.user-chevron[data-v-c039d456]{width:.7rem;height:.7rem;transition:transform .2s}.user-chevron.open[data-v-c039d456]{transform:rotate(180deg)}.user-dropdown[data-v-c039d456]{color:#334155;z-index:1100;background:#fff;border:1px solid #e5e7eb;border-radius:.625rem;width:10rem;padding:.375rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 12px 30px #0f172a2e}.user-dropdown button[data-v-c039d456]{width:100%;height:2.25rem;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:.4rem;align-items:center;gap:.625rem;padding:0 .625rem;font-size:.875rem;display:flex}.user-dropdown button[data-v-c039d456]:hover{background:#f1f5f9}.user-dropdown .logout-item[data-v-c039d456]{color:#dc2626}.user-dropdown-enter-active[data-v-c039d456],.user-dropdown-leave-active[data-v-c039d456]{transform-origin:100% 0;transition:opacity .16s,transform .16s}.user-dropdown-enter-from[data-v-c039d456],.user-dropdown-leave-to[data-v-c039d456]{opacity:0;transform:translateY(-.25rem)scale(.98)}@media (width<=48rem){.header-title[data-v-c039d456],.user-name[data-v-c039d456]{display:none}.user-trigger[data-v-c039d456]{padding-right:.375rem}}.login-modal-overlay[data-v-eafb8dbf]{z-index:9999;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.login-modal[data-v-eafb8dbf]{background:var(--color-canvas);border-radius:12px;width:100%;max-width:380px;max-height:85vh;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.login-modal[data-v-eafb8dbf]::-webkit-scrollbar{display:none}.login-modal[data-v-eafb8dbf]{-ms-overflow-style:none;scrollbar-width:none}.modal-close[data-v-eafb8dbf]{cursor:pointer;width:28px;height:28px;color:var(--color-steel);z-index:1;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background-color .18s,color .18s,transform .18s;display:flex;position:absolute;top:16px;right:16px}.modal-close[data-v-eafb8dbf]:hover{background:var(--color-surface);color:var(--color-ink);transform:rotate(90deg)}.modal-close svg[data-v-eafb8dbf]{width:20px;height:20px}.modal-header[data-v-eafb8dbf]{text-align:center;padding:24px 24px 16px}.modal-logo[data-v-eafb8dbf]{width:48px;height:48px;margin-bottom:8px}.modal-brand[data-v-eafb8dbf]{color:var(--color-ink);margin:0;font-size:20px;font-weight:700}.modal-tabs[data-v-eafb8dbf]{border-bottom:1px solid var(--color-hairline);padding:0 24px;display:flex;position:relative}.tab-btn[data-v-eafb8dbf]{color:var(--color-steel);cursor:pointer;background:0 0;border:none;flex:1;padding:12px 0;font-size:15px;font-weight:500;transition:color .2s,transform .18s;position:relative}.tab-btn[data-v-eafb8dbf]:hover{color:var(--color-slate)}.tab-btn.active[data-v-eafb8dbf]{color:var(--color-brand-green-dark);font-weight:600}.tab-btn.active[data-v-eafb8dbf]:after{content:"";background:linear-gradient(90deg, var(--color-brand-green), var(--color-brand-green-dark));border-radius:2px 2px 0 0;width:60%;height:2px;animation:.28s cubic-bezier(.4,0,.2,1) tab-slide-in-eafb8dbf;position:absolute;bottom:-1px;left:50%;transform:translate(-50%)}@keyframes tab-slide-in-eafb8dbf{0%{opacity:0;width:0}to{opacity:1;width:60%}}.form-container[data-v-eafb8dbf]{padding:24px}.form-title[data-v-eafb8dbf]{color:var(--color-ink);margin:0 0 6px;font-size:18px;font-weight:600}.form-subtitle[data-v-eafb8dbf]{color:var(--color-steel);margin:0 0 20px;font-size:13px}.auth-form[data-v-eafb8dbf]{flex-direction:column;gap:10px;display:flex}.form-row[data-v-eafb8dbf]{gap:10px;display:flex}.form-row>.form-group[data-v-eafb8dbf]{flex:1;min-width:0}.form-group[data-v-eafb8dbf]{flex-direction:column;gap:6px;display:flex}.form-label[data-v-eafb8dbf]{color:var(--color-ink);font-size:13px;font-weight:500}.form-input[data-v-eafb8dbf]{border:1px solid var(--color-hairline-strong);border-radius:var(--rounded-md);height:var(--text-input-height);background:var(--color-canvas);outline:none;padding:10px 14px;font-size:14px;transition:border-color .18s,box-shadow .18s,background-color .18s}.form-input[data-v-eafb8dbf]:hover{border-color:var(--color-brand-green-mid)}.form-input[data-v-eafb8dbf]:focus{border-color:var(--color-brand-green-dark);box-shadow:0 0 0 3px var(--color-surface-feature);background:var(--color-canvas)}.form-input[data-v-eafb8dbf]::placeholder{color:var(--color-stone)}.form-options[data-v-eafb8dbf]{justify-content:space-between;align-items:center;font-size:14px;display:flex}.checkbox-label[data-v-eafb8dbf]{cursor:pointer;color:var(--color-slate);align-items:center;gap:6px;display:flex}.checkbox-label input[type=checkbox][data-v-eafb8dbf]{cursor:pointer;width:16px;height:16px}.forgot-link[data-v-eafb8dbf],.link[data-v-eafb8dbf]{color:var(--color-brand-green-dark);text-decoration:none;transition:color .2s}.forgot-link[data-v-eafb8dbf]:hover,.link[data-v-eafb8dbf]:hover{color:var(--color-primary-deep);text-decoration:underline}.submit-btn[data-v-eafb8dbf]{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-deep) 100%);color:var(--color-on-primary);border-radius:var(--rounded-full);cursor:pointer;border:none;margin-top:6px;padding:12px;font-size:15px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 2px 8px #3b5a354d}.submit-btn[data-v-eafb8dbf]:before{content:"";pointer-events:none;background:linear-gradient(135deg,#0000 0%,#ffffff26 50%,#0000 100%);transition:transform .5s;position:absolute;inset:0;transform:translate(-100%)}.submit-btn[data-v-eafb8dbf]:hover:not(:disabled){background:linear-gradient(135deg, var(--color-primary-deep) 0%, var(--color-primary-pressed) 100%);transform:translateY(-2px);box-shadow:0 6px 20px #3b5a3573}.submit-btn[data-v-eafb8dbf]:hover:not(:disabled):before{transform:translate(100%)}.submit-btn[data-v-eafb8dbf]:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #3b5a354d}.email-code-row[data-v-eafb8dbf]{gap:8px;display:flex}.email-code-input[data-v-eafb8dbf]{flex:1}.send-code-btn[data-v-eafb8dbf]{border:1px solid var(--color-primary);border-radius:var(--rounded-full);background:var(--color-canvas);color:var(--color-primary);cursor:pointer;white-space:nowrap;padding:10px 14px;font-size:13px;transition:all .2s}.send-code-btn[data-v-eafb8dbf]:hover:not(:disabled){background:var(--color-primary);color:var(--color-on-primary)}.send-code-btn[data-v-eafb8dbf]:disabled{border-color:var(--color-muted);color:var(--color-steel);cursor:not-allowed}.gender-row[data-v-eafb8dbf]{gap:12px;display:flex}.gender-label[data-v-eafb8dbf]{border:1px solid var(--color-hairline);border-radius:var(--rounded-md);cursor:pointer;color:var(--color-slate);align-items:center;gap:6px;padding:8px 16px;font-size:14px;transition:border-color .18s,color .18s,background-color .18s,transform .18s;display:flex}.gender-label[data-v-eafb8dbf]:hover{border-color:var(--color-brand-green-mid);color:var(--color-brand-green-dark)}.gender-label input[type=radio][data-v-eafb8dbf]{display:none}.gender-label.active[data-v-eafb8dbf]{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-surface-feature);font-weight:600;transform:scale(1.02)}.error-message-login[data-v-eafb8dbf],.error-message-register[data-v-eafb8dbf]{color:#f5222d;border-radius:var(--rounded-md);background:#fff2f0;border:1px solid #ffccc7;margin-bottom:12px;padding:10px;font-size:13px;line-height:1.4}.submit-btn[data-v-eafb8dbf]:disabled{background:var(--color-muted);cursor:not-allowed;box-shadow:none;transform:none}.submit-btn[data-v-eafb8dbf]:disabled:hover{background:var(--color-muted);box-shadow:none;transform:none}.login-modal[data-v-eafb8dbf]::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}.modal-enter-active[data-v-eafb8dbf],.modal-leave-active[data-v-eafb8dbf]{transition:opacity .3s cubic-bezier(.4,0,.2,1)}.modal-enter-active .login-modal[data-v-eafb8dbf],.modal-leave-active .login-modal[data-v-eafb8dbf]{transition:transform .32s cubic-bezier(.34,1.56,.64,1)}.modal-enter-from[data-v-eafb8dbf],.modal-leave-to[data-v-eafb8dbf]{opacity:0}.modal-enter-from .login-modal[data-v-eafb8dbf]{transform:scale(.9)translateY(-20px)}.modal-leave-to .login-modal[data-v-eafb8dbf]{transform:scale(.92)translateY(-10px)}.message-modal-wrapper[data-v-bab2c30c]{z-index:10000;pointer-events:none;justify-content:center;padding-top:60px;display:flex;position:fixed;top:0;left:0;right:0}.message-modal-overlay[data-v-bab2c30c]{z-index:10000;background:#0000004d;justify-content:center;align-items:flex-start;padding-top:60px;display:flex;position:fixed;inset:0}.message-modal[data-v-bab2c30c]{background:var(--color-canvas);pointer-events:auto;border-radius:12px;align-items:flex-start;gap:12px;min-width:420px;max-width:600px;padding:16px 24px;animation:.3s cubic-bezier(.34,1.56,.64,1) slideDown-bab2c30c;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000001f}.message-modal[data-v-bab2c30c]:before{content:"";background:var(--color-primary);height:3px;position:absolute;top:0;left:0;right:0}.message-modal.success[data-v-bab2c30c]:before{background:#52c41a}.message-modal.error[data-v-bab2c30c]:before{background:#ff4d4f}.message-modal.warning[data-v-bab2c30c]:before{background:#faad14}.message-modal.info[data-v-bab2c30c]:before{background:#1890ff}.message-modal.has-actions[data-v-bab2c30c]{flex-direction:column;align-items:stretch;padding:16px 24px 18px}.message-modal.has-actions .message-content[data-v-bab2c30c]{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.message-modal.has-actions .message-icon[data-v-bab2c30c]{align-self:center;width:36px;height:36px;margin-bottom:2px}@keyframes slideDown-bab2c30c{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.message-icon[data-v-bab2c30c]{flex-shrink:0;width:24px;height:24px}.message-icon svg[data-v-bab2c30c]{width:100%;height:100%}.message-icon.success .svg-inline--fa[data-v-bab2c30c]{animation:.48s cubic-bezier(.34,1.56,.64,1) icon-pop-in-bab2c30c}.message-icon.error .svg-inline--fa[data-v-bab2c30c]{animation:.48s ease-out icon-shake-bab2c30c}.message-icon.warning .svg-inline--fa[data-v-bab2c30c],.message-icon.info .svg-inline--fa[data-v-bab2c30c]{animation:.48s cubic-bezier(.34,1.56,.64,1) icon-pop-in-bab2c30c}@keyframes icon-pop-in-bab2c30c{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes icon-shake-bab2c30c{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.message-modal.success .message-icon[data-v-bab2c30c]{color:#52c41a}.message-modal.error .message-icon[data-v-bab2c30c]{color:#ff4d4f}.message-modal.warning .message-icon[data-v-bab2c30c]{color:#faad14}.message-modal.info .message-icon[data-v-bab2c30c]{color:#1890ff}.message-content[data-v-bab2c30c]{flex:1;min-width:0}.message-title[data-v-bab2c30c]{color:var(--color-ink);margin-bottom:2px;font-size:16px;font-weight:600}.message-text[data-v-bab2c30c]{color:var(--color-slate);font-size:13px;line-height:1.4}.message-close[data-v-bab2c30c]{cursor:pointer;width:20px;height:20px;color:var(--color-steel);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .2s;display:flex}.message-close[data-v-bab2c30c]:hover{color:var(--color-ink)}.message-close svg[data-v-bab2c30c]{width:100%;height:100%}.message-actions[data-v-bab2c30c]{justify-content:center;gap:12px;margin-top:10px;display:flex}.action-btn[data-v-bab2c30c]{border-radius:var(--rounded-full);cursor:pointer;border:none;flex:1;padding:7px 24px;font-size:14px;font-weight:500;transition:background-color .18s,color .18s,transform .18s,box-shadow .18s}.cancel-btn[data-v-bab2c30c]{background:var(--color-surface);color:var(--color-slate)}.cancel-btn[data-v-bab2c30c]:hover{background:var(--color-hairline)}.confirm-btn[data-v-bab2c30c]{background:var(--color-primary);color:var(--color-on-primary)}.confirm-btn[data-v-bab2c30c]:hover{background:var(--color-primary-deep);transform:translateY(-1px);box-shadow:0 2px 8px #00ed644d}.message-modal.error .confirm-btn[data-v-bab2c30c]{background:#ff4d4f}.message-modal.error .confirm-btn[data-v-bab2c30c]:hover{background:#ff3838;box-shadow:0 2px 8px #ff4d4f4d}.message-modal.warning .confirm-btn[data-v-bab2c30c]{background:#faad14}.message-modal.warning .confirm-btn[data-v-bab2c30c]:hover{background:#e69d0a;box-shadow:0 2px 8px #faad144d}.modal-fade-enter-active[data-v-bab2c30c],.modal-fade-leave-active[data-v-bab2c30c]{transition:opacity .3s}.modal-fade-enter-from[data-v-bab2c30c],.modal-fade-leave-to[data-v-bab2c30c]{opacity:0}@media (width<=85.375rem){.message-modal-wrapper[data-v-bab2c30c],.message-modal-overlay[data-v-bab2c30c]{padding-top:50px}.message-modal[data-v-bab2c30c]{min-width:360px;max-width:500px;padding:14px 20px}.message-modal.has-actions[data-v-bab2c30c]{padding:14px 20px 16px}.message-modal.has-actions .message-icon[data-v-bab2c30c]{width:32px;height:32px}.message-title[data-v-bab2c30c]{font-size:15px}.message-text[data-v-bab2c30c]{font-size:12px}.action-btn[data-v-bab2c30c]{padding:6px 20px;font-size:13px}}@media (width>=120rem){.message-modal-wrapper[data-v-bab2c30c],.message-modal-overlay[data-v-bab2c30c]{padding-top:80px}.message-modal[data-v-bab2c30c]{min-width:480px;max-width:680px}.message-modal.has-actions .message-icon[data-v-bab2c30c]{width:40px;height:40px}.message-title[data-v-bab2c30c]{font-size:17px}.message-text[data-v-bab2c30c]{font-size:14px}}.auth-loading-overlay[data-v-b6cf1d6b]{z-index:99999;background:#f5f7fa;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-loading-spinner[data-v-b6cf1d6b]{color:#4caf50;font-size:2rem}.auth-loading-spinner[data-v-b6cf1d6b] .svg-inline--fa{width:2rem;height:2rem}.layout-wrapper[data-v-b6cf1d6b]{min-height:100vh}.content-wrapper[data-v-b6cf1d6b]{margin-top:3rem}.tongue-search-wrapper[data-v-b6cf1d6b]{width:100%;max-width:32rem;padding:0 1rem;position:absolute;left:50%;transform:translate(-50%)}.tongue-search[data-v-b6cf1d6b]{background:#fffffff2;border-radius:1.25rem;align-items:center;gap:.5rem;height:2.25rem;padding:.375rem .875rem;display:flex}.tongue-search svg[data-v-b6cf1d6b]:first-child{color:#999;flex-shrink:0;width:1rem;height:1rem}.tongue-search input[data-v-b6cf1d6b]{color:#333;background:0 0;border:none;outline:none;flex:1;font-size:.875rem}.tongue-search input[data-v-b6cf1d6b]::placeholder{color:#999}.tongue-search .search-btn[data-v-b6cf1d6b]{cursor:pointer;background:#4caf50;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;padding:0;transition:all .3s;display:flex}.tongue-search .search-btn[data-v-b6cf1d6b]:hover{background:#45a049;transform:scale(1.05)}.tongue-search .search-btn svg[data-v-b6cf1d6b]{color:#fff;width:.875rem;height:.875rem}.history-btn[data-v-b6cf1d6b]{cursor:pointer;background:#fffffff2;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;margin-left:auto;padding:0;transition:all .3s;display:flex}.history-btn[data-v-b6cf1d6b]:hover{background:#fff;transform:scale(1.05)}.history-btn svg[data-v-b6cf1d6b]{color:#4caf50;width:1.25rem;height:1.25rem}.layout-sider[data-v-b6cf1d6b]{z-index:100;height:calc(100vh - 3rem);position:fixed;top:3rem;left:0;overflow:hidden}.layout-sider[data-v-b6cf1d6b] .ant-layout-sider-children{overflow:hidden}.main-layout[data-v-b6cf1d6b]{min-height:calc(100vh - 3rem);margin-left:260px;transition:margin-left .2s}.main-layout-collapsed[data-v-b6cf1d6b]{margin-left:0}.layout-content[data-v-b6cf1d6b]{background:#fff;height:100%;min-height:calc(100vh - 3rem);margin:0;padding:0}.sidebar-content[data-v-b6cf1d6b]{box-sizing:border-box;background:#fafafa;flex-direction:column;width:100%;height:100%;padding:.625rem;display:flex;overflow:hidden}.menu-section[data-v-b6cf1d6b]{margin-bottom:.625rem}.menu-item[data-v-b6cf1d6b]{cursor:pointer;border-radius:.375rem;align-items:center;gap:.5rem;margin-bottom:.125rem;padding:.5rem .625rem;transition:all .2s;display:flex}.menu-item[data-v-b6cf1d6b]:hover{background:#f0f0f0}.menu-item.active[data-v-b6cf1d6b]{color:#1976d2;background:#e3f2fd}.menu-icon[data-v-b6cf1d6b]{color:#66bb6a;flex-shrink:0;width:1.25rem;height:1.25rem;transition:all .2s}.menu-icon-img[data-v-b6cf1d6b]{object-fit:cover;border-radius:50%;flex-shrink:0;width:1.5rem;height:1.5rem;transition:all .2s}.menu-item:hover .menu-icon-img[data-v-b6cf1d6b]{transform:scale(1.1)}.menu-item:hover .menu-icon[data-v-b6cf1d6b]{color:#4caf50;transform:scale(1.1)}.menu-item.active .menu-icon[data-v-b6cf1d6b]{color:#1976d2}.menu-label[data-v-b6cf1d6b]{flex:1;font-size:.8125rem}.arrow-icon[data-v-b6cf1d6b]{color:#999;width:.875rem;height:.875rem}.history-section[data-v-b6cf1d6b]{flex:1;min-height:0;margin-bottom:.75rem;overflow-y:auto}.section-title[data-v-b6cf1d6b]{color:#999;margin-bottom:.25rem;padding:.375rem .75rem;font-size:.75rem}.history-item[data-v-b6cf1d6b]{color:#666;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:.5rem;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.125rem;padding:.5rem .75rem;font-size:.8125rem;transition:all .2s;display:flex;overflow:hidden}.history-label[data-v-b6cf1d6b]{text-overflow:ellipsis;white-space:nowrap;pointer-events:none;flex:1;overflow:hidden}.delete-chat-btn[data-v-b6cf1d6b]{cursor:pointer;opacity:0;background:0 0;border:none;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;padding:0;transition:all .2s;display:flex}.history-item:hover .delete-chat-btn[data-v-b6cf1d6b]{opacity:1}.delete-chat-btn[data-v-b6cf1d6b]:hover{background:#fee2e2}.delete-chat-btn svg[data-v-b6cf1d6b]{color:#ef4444;width:.875rem;height:.875rem}.history-item[data-v-b6cf1d6b]:hover{color:#333;background:#f0f0f0}.history-item.active[data-v-b6cf1d6b]{color:#1976d2;background:#e3f2fd}.view-all[data-v-b6cf1d6b]{color:#999;cursor:pointer;text-align:left;padding:.5rem .75rem;font-size:.8125rem}.view-all[data-v-b6cf1d6b]:hover{color:#666}.new-chat-btn[data-v-b6cf1d6b]{color:#1976d2;cursor:pointer;background:#eef7ff;border:1px solid #bbdefb;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;width:calc(100% - 1.5rem);height:2.25rem;margin:.25rem .75rem 0;padding:0 .75rem;font-size:.8125rem;font-weight:500;transition:background .2s,border-color .2s;display:flex}.new-chat-btn[data-v-b6cf1d6b]:hover{background:#e3f2fd;border-color:#90caf9}.new-chat-btn svg[data-v-b6cf1d6b]{width:.875rem;height:.875rem}.bottom-section[data-v-b6cf1d6b]{border-top:1px solid #e0e0e0;flex-shrink:0;padding-top:.75rem}.section-divider[data-v-b6cf1d6b]{color:#999;word-break:keep-all;white-space:nowrap;text-overflow:ellipsis;margin-bottom:.375rem;padding:.375rem .75rem;font-size:.75rem;overflow:hidden}.bottom-menu-item[data-v-b6cf1d6b]{cursor:pointer;color:#4caf50;border-radius:.5rem;align-items:center;gap:.625rem;margin-bottom:.125rem;padding:.5rem .75rem;font-size:.8125rem;transition:all .2s;display:flex}.bottom-menu-item[data-v-b6cf1d6b]:hover{background:#f0f0f0}.bottom-icon[data-v-b6cf1d6b]{flex-shrink:0;width:1.125rem;height:1.125rem}.history-section[data-v-b6cf1d6b]::-webkit-scrollbar{width:.375rem}.history-section[data-v-b6cf1d6b]::-webkit-scrollbar-track{background:0 0}.history-section[data-v-b6cf1d6b]::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:.1875rem}.history-section[data-v-b6cf1d6b]::-webkit-scrollbar-thumb:hover{background:#b0b0b0}@media (width>=120rem){.sidebar-content[data-v-b6cf1d6b]{padding:1rem}.menu-item[data-v-b6cf1d6b]{gap:.75rem;padding:.75rem 1rem}.menu-icon[data-v-b6cf1d6b]{width:1.5rem;height:1.5rem}.menu-label[data-v-b6cf1d6b]{font-size:.9375rem}.history-item[data-v-b6cf1d6b]{padding:.625rem 1rem;font-size:.875rem}.section-title[data-v-b6cf1d6b]{padding:.5rem 1rem;font-size:.8125rem}.bottom-menu-item[data-v-b6cf1d6b]{padding:.625rem 1rem;font-size:.875rem}.user-info[data-v-b6cf1d6b]{padding:.75rem 1rem}.user-avatar[data-v-b6cf1d6b]{width:2.25rem;height:2.25rem}.user-name[data-v-b6cf1d6b]{font-size:.875rem}}@media (width<=85.375rem){.sidebar-content[data-v-b6cf1d6b]{padding:.625rem}.menu-item[data-v-b6cf1d6b]{padding:.5rem .625rem}.menu-label[data-v-b6cf1d6b]{font-size:.8125rem}.history-item[data-v-b6cf1d6b]{padding:.4375rem .625rem;font-size:.75rem}}.submenu-popup[data-v-b6cf1d6b]{z-index:9999;background:#fff;border-radius:.75rem;min-width:11.25rem;padding:.5rem;position:fixed;overflow:visible;box-shadow:0 .25rem 1.25rem #00000026}.submenu-item[data-v-b6cf1d6b]{cursor:pointer;color:#4caf50;border-radius:.5rem;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.9375rem;transition:all .2s;display:flex}.submenu-item[data-v-b6cf1d6b]:hover{background:#f0f0f0}.submenu-icon[data-v-b6cf1d6b]{flex-shrink:0;width:1.375rem;height:1.375rem}.qrcode-item[data-v-b6cf1d6b]{justify-content:center;align-items:center;padding:1rem;display:flex}.qrcode-container[data-v-b6cf1d6b]{flex-direction:column;align-items:center;gap:.75rem;display:flex}.qrcode-image[data-v-b6cf1d6b]{object-fit:contain;width:150px;height:150px}.qrcode-title[data-v-b6cf1d6b]{color:#333;text-align:center;margin-top:.5rem;font-size:.875rem}.popup-enter-active[data-v-b6cf1d6b],.popup-leave-active[data-v-b6cf1d6b]{transition:all .2s}.popup-enter-from[data-v-b6cf1d6b],.popup-leave-to[data-v-b6cf1d6b]{opacity:0;transform:translate(-.625rem)}*{scrollbar-width:thin;scrollbar-color:var(--color-hairline-strong) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-hairline-strong);border-radius:3px;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}.chat-messages[data-v-5a7c57a1]{flex-direction:column;flex:1;display:flex;position:relative;overflow-y:auto}.chat-messages.no-scroll-animation[data-v-5a7c57a1]{scroll-behavior:auto}.messages-list[data-v-5a7c57a1]{flex:1;width:100%;max-width:900px;margin:0 auto;padding:32px 20px}@media (width>=1920px){.messages-list[data-v-5a7c57a1]{max-width:1200px;padding:40px 32px}}@media (width<=1366px){.messages-list[data-v-5a7c57a1]{max-width:800px;padding:10px 16px}}.message-item[data-v-5a7c57a1]{margin-bottom:20px;animation:.3s ease-out slideIn-5a7c57a1}.message-item.no-animation[data-v-5a7c57a1]{animation:none}@keyframes slideIn-5a7c57a1{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-item.user .message-wrapper[data-v-5a7c57a1]{flex-direction:row-reverse}.message-item.user .message-content[data-v-5a7c57a1]{align-items:flex-end}.message-item.user .message-files[data-v-5a7c57a1]{justify-content:flex-end}.message-wrapper[data-v-5a7c57a1]{align-items:flex-start;gap:12px;display:flex}.message-avatar[data-v-5a7c57a1]{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:14px;font-weight:600;display:flex;overflow:hidden;box-shadow:0 2px 8px #0000001a}.message-item.ai .message-avatar[data-v-5a7c57a1]{background:#f0f0f0;padding:4px}.message-item.ai .message-avatar img[data-v-5a7c57a1]{object-fit:contain;width:100%;height:100%}.message-item.user .message-avatar[data-v-5a7c57a1]{background:#ff6b6b}.message-item.user .message-avatar img[data-v-5a7c57a1]{object-fit:cover;width:100%;height:100%}.message-content[data-v-5a7c57a1]{flex-direction:column;flex:1;min-width:0;display:flex}.message-text[data-v-5a7c57a1]{color:#1f2937;word-wrap:break-word;white-space:pre-wrap;background:#fff;border-radius:18px 18px 18px 4px;max-width:85%;padding:14px 18px;font-size:15px;line-height:1.7;box-shadow:0 2px 8px #00000014}.message-text[data-v-5a7c57a1] .tool-normal-text{margin-bottom:10px}.message-text[data-v-5a7c57a1] .tool-normal-text:last-child{margin-bottom:0}.message-text[data-v-5a7c57a1] .tool-step{background:linear-gradient(#f8fdf9 0%,#f3fbf5 100%);border:1px solid #d8f0db;border-radius:10px;margin:10px 0;overflow:hidden}.message-text[data-v-5a7c57a1] .tool-step>summary{cursor:pointer;color:#1f7a33;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-weight:600;list-style:none;display:flex}.message-text[data-v-5a7c57a1] .tool-step>summary::-webkit-details-marker{display:none}.message-text[data-v-5a7c57a1] .tool-step-title{word-break:break-word;font-size:13px}.message-text[data-v-5a7c57a1] .tool-step-badge{color:#278642;background:#e0f2e4;border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:11px}.message-text[data-v-5a7c57a1] .tool-step-body{color:#374151;border-top:1px dashed #cde7d3;padding:10px 12px 12px;font-size:14px}.message-text[data-v-5a7c57a1] .tool-payload-empty{color:#6b7280;font-size:13px}.message-text[data-v-5a7c57a1] .tool-search-results{gap:8px;display:grid}.message-text[data-v-5a7c57a1] .tool-search-item{background:#fff;border:1px solid #d9e8dc;border-radius:8px;padding:10px;text-decoration:none;transition:all .2s;display:block}.message-text[data-v-5a7c57a1] .tool-search-item:hover{border-color:#9cd0a6;transform:translateY(-1px);box-shadow:0 2px 8px #4caf501f}.message-text[data-v-5a7c57a1] .tool-search-title{color:#1f7a33;margin-bottom:4px;font-size:14px;font-weight:600;line-height:1.45}.message-text[data-v-5a7c57a1] .tool-search-meta{color:#6b7280;margin-bottom:4px;font-size:12px}.message-text[data-v-5a7c57a1] .tool-search-snippet{color:#374151;font-size:13px;line-height:1.5}.message-text[data-v-5a7c57a1] .tool-json,.message-text[data-v-5a7c57a1] .tool-html{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;margin:0;padding:10px;overflow-x:auto}.message-text[data-v-5a7c57a1] .tool-json code,.message-text[data-v-5a7c57a1] .tool-html code{color:#374151;white-space:pre;background:0 0;padding:0;font-size:12px;line-height:1.5}.message-text[data-v-5a7c57a1] .tool-plain{color:#374151}.message-text[data-v-5a7c57a1] strong{color:#111827;font-weight:600}.message-text[data-v-5a7c57a1] em{color:#4b5563;font-style:italic}.message-text[data-v-5a7c57a1] li{margin-bottom:4px;margin-left:20px}.message-text[data-v-5a7c57a1] blockquote{color:#6b7280;border-left:3px solid #4caf50;margin:8px 0;padding-left:12px;font-style:italic}.message-text[data-v-5a7c57a1] pre{background:#f3f4f6;border-radius:6px;margin:8px 0;padding:12px;overflow-x:auto}.message-text[data-v-5a7c57a1] code{color:#dc2626;background:#f3f4f6;border-radius:4px;padding:2px 6px;font-family:Consolas,Monaco,monospace;font-size:14px}.message-text[data-v-5a7c57a1] pre code{color:inherit;background:0 0;padding:0}.message-text[data-v-5a7c57a1] a{color:#4caf50;text-decoration:underline}.message-text[data-v-5a7c57a1] a:hover{color:#45a049}.web-search-steps-container[data-v-5a7c57a1]{max-width:85%;margin-bottom:10px}.web-search-steps-container .search-steps-details[data-v-5a7c57a1]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #0000000f}.web-search-steps-container .search-steps-summary[data-v-5a7c57a1]{cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:1px solid #bbf7d0;align-items:center;gap:8px;padding:10px 14px;list-style:none;transition:background .2s;display:flex}.web-search-steps-container .search-steps-summary[data-v-5a7c57a1]:hover{background:linear-gradient(135deg,#dcfce7 0%,#bbf7d0 100%)}.web-search-steps-container .search-steps-summary[data-v-5a7c57a1]::-webkit-details-marker{display:none}.web-search-steps-container .summary-icon[data-v-5a7c57a1]{color:#16a34a;font-size:14px}.web-search-steps-container .summary-text[data-v-5a7c57a1]{color:#15803d;flex:1;font-size:13px;font-weight:600}.web-search-steps-container .steps-count[data-v-5a7c57a1]{color:#16a34a;background:#fff;border:1px solid #bbf7d0;border-radius:12px;padding:2px 10px;font-size:11px}.web-search-steps-container .search-steps-list[data-v-5a7c57a1]{flex-direction:column;gap:8px;max-height:280px;padding:10px;display:flex;overflow:hidden auto}.web-search-steps-container .search-steps-list[data-v-5a7c57a1]::-webkit-scrollbar{width:5px}.web-search-steps-container .search-steps-list[data-v-5a7c57a1]::-webkit-scrollbar-track{background:#f0fdf4;border-radius:3px}.web-search-steps-container .search-steps-list[data-v-5a7c57a1]::-webkit-scrollbar-thumb{background:#86efac;border-radius:3px}.web-search-steps-container .search-steps-list[data-v-5a7c57a1]::-webkit-scrollbar-thumb:hover{background:#4ade80}.web-search-steps-container .search-step-card[data-v-5a7c57a1]{background:#fafbfc;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;transition:all .2s;display:flex;overflow:hidden}.web-search-steps-container .search-step-card[data-v-5a7c57a1]:hover{border-color:#bbf7d0;box-shadow:0 2px 6px #16a34a14}.web-search-steps-container .step-card-header[data-v-5a7c57a1]{cursor:pointer;-webkit-user-select:none;user-select:none;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 12px;list-style:none;transition:background .2s;display:flex}.web-search-steps-container .step-card-header[data-v-5a7c57a1]::-webkit-details-marker{display:none}.web-search-steps-container .step-card-header[data-v-5a7c57a1]:hover{background:#f0fdf4}.web-search-steps-container .step-card-title[data-v-5a7c57a1]{color:#475569;font-size:12px;font-weight:600}.web-search-steps-container .step-type-badge[data-v-5a7c57a1]{border-radius:10px;align-items:center;gap:4px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.web-search-steps-container .search-badge[data-v-5a7c57a1]{color:#1e40af;background:#dbeafe}.web-search-steps-container .step-card-content[data-v-5a7c57a1]{color:#374151;max-height:200px;padding:10px 12px;font-size:12px;line-height:1.6;overflow-y:auto}.web-search-steps-container .step-card-content[data-v-5a7c57a1]::-webkit-scrollbar{width:4px}.web-search-steps-container .step-card-content[data-v-5a7c57a1]::-webkit-scrollbar-track{background:#f0fdf4;border-radius:2px}.web-search-steps-container .step-card-content[data-v-5a7c57a1]::-webkit-scrollbar-thumb{background:#86efac;border-radius:2px}.web-search-steps-container .step-card-content[data-v-5a7c57a1]::-webkit-scrollbar-thumb:hover{background:#4ade80}.web-search-steps-container .step-card-content[data-v-5a7c57a1] .tool-search-results{flex-direction:column;gap:6px;display:flex}.web-search-steps-container .step-card-content[data-v-5a7c57a1] .tool-search-item{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:8px 10px;text-decoration:none;transition:all .2s;display:block}.web-search-steps-container .step-card-content[data-v-5a7c57a1] .tool-search-item:hover{border-color:#3b82f6;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f61f}.web-search-steps-container .step-card-content[data-v-5a7c57a1] .tool-search-title{color:#1e40af;margin-bottom:3px;font-size:12px;font-weight:600;line-height:1.4}.web-search-steps-container .step-card-content[data-v-5a7c57a1] .tool-search-meta{color:#6b7280;margin-bottom:3px;font-size:10px}.web-search-steps-container .step-card-content[data-v-5a7c57a1] .tool-search-snippet{color:#374151;font-size:11px;line-height:1.5}.web-search-conclusion-box[data-v-5a7c57a1]{background:#fff;border:1px solid #e5e7eb;border-radius:18px 18px 18px 4px;flex-direction:column;max-width:85%;padding:16px 18px;display:flex;box-shadow:0 2px 8px #00000014}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1]{color:#1f2937;font-size:15px;line-height:1.7}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] p{margin:8px 0}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] strong{color:#111827;font-weight:600}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] em{color:#4b5563;font-style:italic}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] ul,.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] ol{margin-bottom:8px;margin-left:20px}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] li{margin-bottom:4px}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] a{color:#4caf50;text-decoration:underline}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] a:hover{color:#45a049}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] code{color:#dc2626;background:#f3f4f6;border-radius:4px;padding:2px 6px;font-family:Consolas,Monaco,monospace;font-size:14px}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] pre{background:#f9fafb;border-radius:6px;margin:8px 0;padding:12px;overflow-x:auto}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] pre code{background:0 0;padding:0}.web-search-conclusion-box .conclusion-content[data-v-5a7c57a1] blockquote{color:#6b7280;border-left:3px solid #4caf50;margin:8px 0;padding-left:12px;font-style:italic}.thinking-placeholder[data-v-5a7c57a1]{background:#f0fdf4;border:1px dashed #bbf7d0;border-radius:10px;align-items:center;gap:10px;padding:12px 16px;display:flex}.thinking-placeholder .thinking-indicator[data-v-5a7c57a1]{align-items:center;gap:4px;display:flex}.thinking-placeholder .thinking-dot[data-v-5a7c57a1]{background:#16a34a;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite thinking-bounce-5a7c57a1}.thinking-placeholder .thinking-dot[data-v-5a7c57a1]:first-child{animation-delay:-.32s}.thinking-placeholder .thinking-dot[data-v-5a7c57a1]:nth-child(2){animation-delay:-.16s}@keyframes thinking-bounce-5a7c57a1{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.thinking-placeholder .thinking-text[data-v-5a7c57a1]{color:#15803d;font-size:13px;font-weight:500}.thinking-process[data-v-5a7c57a1]{border-radius:18px 18px 18px 4px;flex-direction:column;align-items:flex-start;gap:12px;max-width:85%;padding:16px 20px;display:flex;position:relative;box-shadow:0 2px 12px #64b5f626}.thinking-header[data-v-5a7c57a1]{align-items:center;gap:10px;display:flex}.thinking-indicator[data-v-5a7c57a1]{align-items:center;gap:6px;display:flex}.thinking-dot[data-v-5a7c57a1]{background:#e8f5e9;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite both pulse-5a7c57a1}.thinking-dot[data-v-5a7c57a1]:first-child{animation-delay:-.32s}.thinking-dot[data-v-5a7c57a1]:nth-child(2){animation-delay:-.16s}@keyframes pulse-5a7c57a1{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.thinking-text[data-v-5a7c57a1]{color:#3ea146;font-size:14px;font-style:italic;font-weight:600}.thinking-content[data-v-5a7c57a1]{border-top:1px dashed #90caf9;width:100%;padding-top:12px}.thinking-content[data-v-5a7c57a1] .tool-step{background:linear-gradient(#fff 0%,#f5f9ff 100%);border:1px solid #90caf9;border-radius:10px;margin:10px 0;overflow:hidden}.thinking-content[data-v-5a7c57a1] .tool-step>summary{cursor:pointer;color:#1565c0;background:#fff9;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-weight:600;list-style:none;display:flex}.thinking-content[data-v-5a7c57a1] .tool-step>summary::-webkit-details-marker{display:none}.thinking-content[data-v-5a7c57a1] .tool-step-title{word-break:break-word;font-size:13px}.thinking-content[data-v-5a7c57a1] .tool-step-badge{color:#1976d2;background:#e3f2fd;border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:11px}.thinking-content[data-v-5a7c57a1] .tool-step-body{color:#374151;background:#fffc;border-top:1px dashed #90caf9;padding:10px 12px 12px;font-size:14px}.thinking-content[data-v-5a7c57a1] .tool-search-results{gap:8px;display:grid}.thinking-content[data-v-5a7c57a1] .tool-search-item{background:#fff;border:1px solid #bbdefb;border-radius:8px;padding:10px;text-decoration:none;transition:all .2s;display:block}.thinking-content[data-v-5a7c57a1] .tool-search-item:hover{border-color:#64b5f6;transform:translateY(-1px);box-shadow:0 2px 8px #2196f31f}.thinking-content[data-v-5a7c57a1] .tool-search-title{color:#1565c0;margin-bottom:4px;font-size:14px;font-weight:600;line-height:1.45}.thinking-content[data-v-5a7c57a1] .tool-search-meta{color:#6b7280;margin-bottom:4px;font-size:12px}.thinking-content[data-v-5a7c57a1] .tool-search-snippet{color:#374151;font-size:13px;line-height:1.5}.message-files[data-v-5a7c57a1]{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.message-file-image[data-v-5a7c57a1]{cursor:pointer;border-radius:12px;max-width:200px;max-height:200px;transition:transform .2s}.message-file-image[data-v-5a7c57a1]:hover{transform:scale(1.02)}.message-file-doc[data-v-5a7c57a1]{color:#6b7280;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.message-file-doc svg[data-v-5a7c57a1]{width:20px;height:20px}.message-item.user .message-text[data-v-5a7c57a1]{color:#333;background:#e8f5e9;border-radius:18px 18px 4px;box-shadow:0 2px 8px #00000014}.message-actions[data-v-5a7c57a1]{opacity:0;gap:6px;margin-top:10px;transition:opacity .2s;display:flex}.message-item:hover .message-actions[data-v-5a7c57a1]{opacity:1}.action-btn[data-v-5a7c57a1]{cursor:pointer;color:#6b7280;background:#fff;border:1px solid #e5e7eb;border-radius:6px;justify-content:center;align-items:center;padding:6px 8px;transition:all .2s;display:flex;box-shadow:0 1px 3px #0000000d}.action-btn[data-v-5a7c57a1]:hover{color:#4caf50;background:#f9fafb;border-color:#4caf50;transform:translateY(-1px);box-shadow:0 2px 6px #0000001a}.action-btn svg[data-v-5a7c57a1]{width:16px;height:16px}.action-btn.speaking[data-v-5a7c57a1]{color:#4caf50;background:#e8f5e9;border-color:#4caf50;animation:1.5s infinite pulse-animation-5a7c57a1}@keyframes pulse-animation-5a7c57a1{0%{box-shadow:0 0 #4caf5066}70%{box-shadow:0 0 0 10px #4caf5000}to{box-shadow:0 0 #4caf5000}}.load-more-section[data-v-5a7c57a1]{justify-content:center;width:100%;max-width:900px;margin:0 auto;padding:16px 20px;display:flex}.load-more-btn[data-v-5a7c57a1]{cursor:pointer;color:#6b7280;background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;transition:all .2s;display:flex;box-shadow:0 1px 3px #0000000d}.load-more-btn[data-v-5a7c57a1]:hover:not(:disabled){color:#4caf50;background:#f9fafb;border-color:#4caf50;transform:translateY(-1px);box-shadow:0 2px 6px #0000001a}.load-more-btn[data-v-5a7c57a1]:disabled{cursor:not-allowed;opacity:.6}.load-more-btn svg[data-v-5a7c57a1]{width:18px;height:18px}.empty-state[data-v-5a7c57a1]{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px 20px;display:flex}.empty-title[data-v-5a7c57a1]{color:#1f2937;background:linear-gradient(135deg,#4caf50 0%,#45a049 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 8px;font-size:24px;font-weight:600;animation:.5s ease-out fadeInDown-5a7c57a1}.empty-subtitle[data-v-5a7c57a1]{color:#6b7280;margin:0 0 32px;font-size:15px;font-weight:400;animation:.5s ease-out .1s both fadeInDown-5a7c57a1}.login-tip[data-v-5a7c57a1]{background:linear-gradient(135deg,#4caf5014 0%,#45a04914 100%);border:1px solid #4caf5033;border-radius:12px;justify-content:center;align-items:center;gap:8px;max-width:500px;margin:0 auto 32px;padding:12px 24px;animation:.6s ease-out .3s both fadeInUp-5a7c57a1;display:flex}.tip-icon[data-v-5a7c57a1]{color:#4caf50;justify-content:center;align-items:center;font-size:20px;animation:2s infinite bounce-5a7c57a1;display:flex}.tip-icon[data-v-5a7c57a1] .svg-inline--fa{width:20px;height:20px}@keyframes bounce-5a7c57a1{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.tip-text[data-v-5a7c57a1]{color:#4caf50;margin:0;font-size:14px;font-weight:500}@keyframes fadeInDown-5a7c57a1{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.quick-messages[data-v-5a7c57a1]{grid-template-columns:repeat(2,1fr);gap:16px;width:100%;max-width:800px;padding:0 20px;animation:.6s ease-out .2s both fadeInUp-5a7c57a1;display:grid}@keyframes fadeInUp-5a7c57a1{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.quick-message-btn[data-v-5a7c57a1]{cursor:pointer;color:#374151;text-align:left;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;align-items:center;gap:12px;padding:16px 20px;font-size:15px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 2px 4px #0000000a}.quick-message-btn[data-v-5a7c57a1]:before{content:"";opacity:0;background:linear-gradient(135deg,#4caf500d 0%,#45a0490d 100%);transition:opacity .3s;position:absolute;inset:0}.quick-message-btn[data-v-5a7c57a1]:hover:before{opacity:1}.quick-message-btn[data-v-5a7c57a1]:hover{border-color:#4caf50;transform:translateY(-2px);box-shadow:0 4px 12px #4caf5026}.quick-message-icon[data-v-5a7c57a1]{filter:grayscale(.3);flex-shrink:0;font-size:20px;transition:all .3s}.quick-message-btn:hover .quick-message-icon[data-v-5a7c57a1]{filter:grayscale(0);transform:scale(1.1)}.quick-message-text[data-v-5a7c57a1]{z-index:1;flex:1;line-height:1.5;position:relative}@media (width<=768px){.quick-messages[data-v-5a7c57a1]{grid-template-columns:1fr;padding:0 16px}.quick-message-btn[data-v-5a7c57a1]{padding:10px 14px;font-size:13px}.empty-state[data-v-5a7c57a1]{padding:40px 16px 30px}.empty-header[data-v-5a7c57a1]{margin-bottom:32px}.empty-title[data-v-5a7c57a1]{font-size:22px}.empty-subtitle[data-v-5a7c57a1]{font-size:14px}.quick-messages[data-v-5a7c57a1]{grid-template-columns:1fr;gap:12px;padding:0 16px}.quick-message-btn[data-v-5a7c57a1]{gap:10px;padding:14px 16px;font-size:14px}.quick-message-icon[data-v-5a7c57a1]{font-size:18px}}@media (width>=769px) and (width<=1024px){.empty-title[data-v-5a7c57a1]{font-size:24px}.quick-messages[data-v-5a7c57a1]{gap:14px;max-width:700px}}.loading-state[data-v-5a7c57a1]{text-align:center;color:#6b7280;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px 20px;display:flex}.loading-state .loading-icon[data-v-5a7c57a1]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin-bottom:20px;animation:1s linear infinite spin-5a7c57a1;display:flex}.loading-state .loading-icon svg[data-v-5a7c57a1]{color:#4caf50;width:30px;height:30px}.loading-text[data-v-5a7c57a1]{color:#6b7280;font-size:14px}@keyframes spin-5a7c57a1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.generation-error-banner[data-v-5a7c57a1]{background:linear-gradient(135deg,#fef2f2 0%,#fef3c7 100%);border:1px solid #fecaca;border-left:4px solid #ef4444;border-radius:12px 12px 12px 4px;justify-content:space-between;align-items:center;gap:12px;max-width:85%;margin-bottom:6px;padding:14px 18px;display:flex}.generation-error-content[data-v-5a7c57a1]{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.error-status-icon[data-v-5a7c57a1]{color:#ef4444;flex-shrink:0;font-size:22px}.error-status-text[data-v-5a7c57a1]{flex-direction:column;gap:2px;display:flex}.error-title[data-v-5a7c57a1]{color:#dc2626;font-size:14px;font-weight:600}.error-hint[data-v-5a7c57a1]{color:#9ca3af;font-size:12px}.generation-pending-banner[data-v-5a7c57a1]{background:linear-gradient(135deg,#f0fdf4 0%,#ecfdf5 100%);border:1px dashed #bbf7d0;border-radius:12px 12px 12px 4px;justify-content:space-between;align-items:center;gap:12px;max-width:85%;margin-bottom:6px;padding:14px 18px;display:flex}.pending-status-content[data-v-5a7c57a1]{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.pending-text[data-v-5a7c57a1]{color:#15803d;font-size:13px;font-weight:500}.retry-btn[data-v-5a7c57a1]{color:#fff;cursor:pointer;white-space:nowrap;background:#ef4444;border:none;border-radius:9999px;flex-shrink:0;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.retry-btn[data-v-5a7c57a1]:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.retry-btn.warning[data-v-5a7c57a1]{background:#f59e0b}.retry-btn.warning[data-v-5a7c57a1]:hover{background:#d97706;box-shadow:0 4px 12px #f59e0b4d}.retry-btn svg[data-v-5a7c57a1]{width:14px;height:14px}@media (width<=768px){.empty-state[data-v-5a7c57a1],.loading-state[data-v-5a7c57a1]{padding:30px 16px}.empty-icon[data-v-5a7c57a1]{width:60px;height:60px}.empty-icon svg[data-v-5a7c57a1]{width:30px;height:30px}.empty-title[data-v-5a7c57a1]{font-size:16px}.empty-description[data-v-5a7c57a1]{font-size:13px}.loading-state .loading-icon[data-v-5a7c57a1]{width:50px;height:50px}.loading-state .loading-icon svg[data-v-5a7c57a1]{width:24px;height:24px}.generation-error-banner[data-v-5a7c57a1],.generation-pending-banner[data-v-5a7c57a1]{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 14px}.retry-btn[data-v-5a7c57a1]{justify-content:center;width:100%}}.attachment-btn[data-v-3a339224]{background:var(--color-surface);border-radius:var(--rounded-full);cursor:pointer;color:var(--color-steel);border:none;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.attachment-btn[data-v-3a339224]:hover{background:var(--color-primary);color:var(--color-on-dark);transform:translateY(-2px);box-shadow:0 2px 8px #00ed644d}.attachment-btn svg[data-v-3a339224]{width:20px;height:20px}.chat-input[data-v-53cff278]{background:0 0;width:100%;padding:0 20px 20px;position:relative}.chat-input.centered[data-v-53cff278]{width:100%;max-width:900px;padding:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.input-container[data-v-53cff278]{max-width:900px;margin:0 auto;transition:all .6s cubic-bezier(.4,0,.2,1)}.chat-input.centered .input-container[data-v-53cff278]{transform:translateY(0)}.chat-input:not(.centered) .input-container[data-v-53cff278]{animation:.6s cubic-bezier(.4,0,.2,1) slideDown-53cff278}.chat-input.no-animation:not(.centered) .input-container[data-v-53cff278]{animation:none}@keyframes slideDown-53cff278{0%{transform:translateY(-50vh)}to{transform:translateY(0)}}.centered-title[data-v-53cff278]{text-align:center;margin-bottom:32px;animation:.6s ease-out fadeIn-53cff278}.chat-input:not(.centered) .centered-title[data-v-53cff278]{animation:.3s ease-out forwards fadeOut-53cff278}@keyframes fadeIn-53cff278{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut-53cff278{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}.title-header[data-v-53cff278]{justify-content:center;align-items:center;gap:16px;margin-bottom:12px;display:flex}.title-logo[data-v-53cff278]{object-fit:contain;width:48px;height:48px}.title-text[data-v-53cff278]{color:#333;letter-spacing:2px;margin:0;font-size:42px;font-weight:600}.title-desc[data-v-53cff278]{color:#6b7280;margin:0;font-size:16px;line-height:1.8}@media (width>=1920px){.input-container[data-v-53cff278]{max-width:1200px}.title-text[data-v-53cff278]{font-size:48px}.title-desc[data-v-53cff278]{font-size:18px}}@media (width<=1366px){.input-container[data-v-53cff278]{max-width:800px}.title-text[data-v-53cff278]{font-size:36px}.title-desc[data-v-53cff278]{font-size:15px}}.input-wrapper[data-v-53cff278]{background:#fff;border:2px solid #e5e7eb;border-radius:16px;padding:16px;transition:all .3s;box-shadow:0 2px 8px #0000000d}.input-wrapper[data-v-53cff278]:focus-within{border-color:#4caf50;box-shadow:0 4px 16px #4caf5026}.files-preview[data-v-53cff278]{border-bottom:1px solid #f3f4f6;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding-bottom:12px;display:flex}.file-item[data-v-53cff278]{position:relative}.file-preview-image[data-v-53cff278]{border:2px solid #e5e7eb;border-radius:8px;width:80px;height:80px;position:relative;overflow:hidden}.file-preview-image img[data-v-53cff278]{object-fit:cover;width:100%;height:100%}.file-preview-doc[data-v-53cff278]{background:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;align-items:center;gap:8px;max-width:200px;padding:8px 12px;display:flex}.file-icon[data-v-53cff278]{color:#6b7280;flex-shrink:0;width:24px;height:24px}.file-icon svg[data-v-53cff278]{width:100%;height:100%}.file-info[data-v-53cff278]{flex:1;min-width:0}.file-name[data-v-53cff278]{color:#1f2937;white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.file-size[data-v-53cff278]{color:#9ca3af;margin-top:2px;font-size:11px}.remove-file-btn[data-v-53cff278]{color:#fff;cursor:pointer;z-index:10;background:#ef4444;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex;position:absolute;top:-8px;right:-8px;box-shadow:0 2px 6px #0003}.file-preview-doc .remove-file-btn[data-v-53cff278]{color:#6b7280;background:#f3f4f6;border:1px solid #e5e7eb;margin-left:auto;position:relative;top:0;right:0}.remove-file-btn[data-v-53cff278]:hover{background:#dc2626;transform:scale(1.15);box-shadow:0 3px 8px #ef444466}.file-preview-doc .remove-file-btn[data-v-53cff278]:hover{color:#fff;background:#ef4444;border-color:#ef4444}.remove-file-btn svg[data-v-53cff278]{stroke-width:2.5px;width:14px;height:14px}.input-field[data-v-53cff278]{color:#1f2937;resize:none;background:0 0;border:none;outline:none;width:100%;min-height:28px;max-height:200px;padding:8px 0;font-family:inherit;font-size:15px;line-height:1.6}.input-field[data-v-53cff278]::placeholder{color:#9ca3af}.input-bottom[data-v-53cff278]{border-top:1px solid #f3f4f6;justify-content:space-between;align-items:center;gap:12px;padding-top:8px;display:flex}.input-tools[data-v-53cff278]{gap:6px;display:flex}.tool-btn[data-v-53cff278]{cursor:pointer;color:#6b7280;background:#f9fafb;border:none;border-radius:8px;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.tool-btn[data-v-53cff278]:hover{color:#fff;background:#4caf50;transform:translateY(-2px);box-shadow:0 2px 8px #4caf504d}.tool-btn svg[data-v-53cff278]{width:20px;height:20px}.tool-btn.rag-toggle[data-v-53cff278]{position:relative}.tool-btn.rag-toggle.active[data-v-53cff278]{color:#fff;background:#4caf50}.tool-btn.rag-toggle.active[data-v-53cff278]:hover{background:#45a049}.tool-btn.rag-toggle[data-v-53cff278]:after,.tool-btn.web-search-toggle[data-v-53cff278]:after,.tool-btn.speech-toggle[data-v-53cff278]:after{content:attr(title);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;z-index:100;background:#1f2937;border-radius:4px;padding:4px 8px;font-size:11px;transition:opacity .2s;position:absolute;bottom:-28px;left:50%;transform:translate(-50%)}.tool-btn.rag-toggle[data-v-53cff278]:hover:after,.tool-btn.web-search-toggle[data-v-53cff278]:hover:after,.tool-btn.speech-toggle[data-v-53cff278]:hover:after{opacity:1}.tool-btn.web-search-toggle[data-v-53cff278]{position:relative}.tool-btn.web-search-toggle.active[data-v-53cff278]{color:#fff;background:#2196f3}.tool-btn.web-search-toggle.active[data-v-53cff278]:hover{background:#1976d2}.tool-btn.web-search-toggle.disabled[data-v-53cff278],.tool-btn.rag-toggle.disabled[data-v-53cff278]{opacity:.4;cursor:not-allowed}.tool-btn.web-search-toggle.disabled[data-v-53cff278]:hover,.tool-btn.rag-toggle.disabled[data-v-53cff278]:hover{color:#6b7280;box-shadow:none;background:#f9fafb;transform:none}.tool-btn.speech-toggle.active[data-v-53cff278]{color:#fff;background:#4caf50}.tool-btn.speech-toggle.active[data-v-53cff278]:hover{background:#45a049}.tool-btn.lam-toggle[data-v-53cff278]{position:relative}.tool-btn.lam-toggle.active[data-v-53cff278]{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2)}.tool-btn.lam-toggle.active[data-v-53cff278]:hover{background:linear-gradient(135deg,#5a6fd6,#6a42a0)}.tool-btn.lam-toggle.disabled[data-v-53cff278]{opacity:.4;cursor:not-allowed}.tool-btn.lam-toggle.disabled[data-v-53cff278]:hover{color:#6b7280;box-shadow:none;background:#f9fafb;transform:none}.tool-btn.lam-toggle[data-v-53cff278]:after{content:attr(title);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;z-index:100;background:#1f2937;border-radius:4px;padding:4px 8px;font-size:11px;transition:opacity .2s;position:absolute;bottom:-28px;left:50%;transform:translate(-50%)}.tool-btn.lam-toggle[data-v-53cff278]:hover:after{opacity:1}.input-actions[data-v-53cff278]{justify-content:flex-end;align-items:center;gap:10px;display:flex}.send-btn[data-v-53cff278]{cursor:pointer;color:#9ca3af;background:#e5e7eb;border:none;border-radius:10px;justify-content:center;align-items:center;padding:10px 20px;font-weight:600;transition:all .3s;display:flex}.send-btn.active[data-v-53cff278]{color:#fff;background:#4caf50;box-shadow:0 4px 12px #4caf5066}.send-btn.active[data-v-53cff278]:hover{transform:translateY(-2px);box-shadow:0 6px 16px #4caf5080}.send-btn[data-v-53cff278]:disabled{cursor:not-allowed}.send-btn svg[data-v-53cff278]{width:20px;height:20px}.stop-btn[data-v-53cff278]{background:var(--color-primary);color:var(--color-canvas);border-radius:var(--rounded-full);cursor:pointer;border:none;justify-content:center;align-items:center;padding:10px 20px;font-weight:600;transition:background-color .18s,transform .18s,box-shadow .18s;display:flex;box-shadow:0 4px 12px #70976666}.stop-btn[data-v-53cff278]:hover{transform:translateY(-2px);box-shadow:0 8px 20px #70976680}.stop-btn[data-v-53cff278]:active{transform:translateY(0);box-shadow:0 2px 8px #7097664d}.stop-btn svg[data-v-53cff278]{width:18px;height:18px}.loading[data-v-53cff278]{animation:1s linear infinite spin-53cff278}@keyframes spin-53cff278{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.input-hint[data-v-53cff278]{color:#9ca3af;text-align:center;margin-top:10px;font-size:13px}[data-v-54a97885]{box-sizing:border-box}.chat-container[data-v-54a97885]{background:linear-gradient(#f8f9fa 0%,#fff 100%);flex-direction:column;height:calc(100vh - 3rem);display:flex;position:relative}.chat-container.lam-layout[data-v-54a97885]{flex-direction:row}.avatar-panel[data-v-54a97885]{background:linear-gradient(#667eea0f 0%,#764ba20a 100%);border-right:1px solid #667eea1f;flex-direction:column;flex-shrink:0;justify-content:flex-start;align-items:center;gap:0;width:42%;min-width:360px;max-width:520px;padding:20px 20px 16px;display:flex;overflow-y:auto}.avatar-panel[data-v-54a97885]::-webkit-scrollbar{width:5px}.avatar-panel[data-v-54a97885]::-webkit-scrollbar-track{background:0 0}.avatar-panel[data-v-54a97885]::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.avatar-stage[data-v-54a97885]{background:#1a1a2e;border:1px solid #667eea1f;border-radius:16px;flex-shrink:0;width:380px;max-width:100%;height:380px;max-height:45vh;position:relative;overflow:hidden;box-shadow:0 8px 32px #667eea26}#digital-human-container[data-v-54a97885]{background:#1a1a2e;width:100%;height:100%}.avatar-overlay[data-v-54a97885]{z-index:10;color:#6b7280;background:#ffffffe0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex;position:absolute;inset:0}.avatar-overlay.avatar-init[data-v-54a97885]{cursor:pointer}.avatar-overlay.avatar-init[data-v-54a97885]:hover{background:#fffffff2}.avatar-spinner[data-v-54a97885]{border:3px solid #667eea26;border-top-color:#667eea;border-radius:50%;width:40px;height:40px;animation:1s linear infinite avatar-spin-54a97885}@keyframes avatar-spin-54a97885{to{transform:rotate(360deg)}}.avatar-init-icon[data-v-54a97885]{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:26px;transition:transform .3s;display:flex;box-shadow:0 8px 24px #667eea59}.avatar-overlay.avatar-init:hover .avatar-init-icon[data-v-54a97885]{transform:scale(1.08)}.avatar-error-hint[data-v-54a97885]{color:#9ca3af;font-size:12px}.retry-btn[data-v-54a97885]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:20px;margin-top:8px;padding:8px 28px;font-size:14px;font-weight:600;transition:opacity .2s}.retry-btn[data-v-54a97885]:hover{opacity:.85}.voice-bars[data-v-54a97885]{opacity:.35;justify-content:center;align-items:flex-end;gap:4px;height:28px;margin-top:10px;transition:opacity .3s;display:flex}.voice-bars.active[data-v-54a97885]{opacity:1}.voice-bar[data-v-54a97885]{background:linear-gradient(#667eea,#764ba2);border-radius:2px;width:4px;min-height:6px;display:block}.voice-bars.active .voice-bar[data-v-54a97885]{animation:.6s ease-in-out infinite alternate voice-bounce-54a97885}.voice-bars.listening .voice-bar[data-v-54a97885]{background:linear-gradient(#43e97b,#38f9d7)}@keyframes voice-bounce-54a97885{0%{height:6px}to{height:24px}}.avatar-info-bar[data-v-54a97885]{text-align:center;width:100%;max-width:420px;margin-top:12px}.avatar-name[data-v-54a97885]{color:#1f2937;letter-spacing:1px;margin-bottom:6px;font-size:18px;font-weight:600}.avatar-status-row[data-v-54a97885]{justify-content:center;align-items:center;gap:6px;margin-bottom:10px;display:flex}.avatar-status-dot[data-v-54a97885]{background:#9ca3af;border-radius:50%;width:8px;height:8px;transition:all .3s}.avatar-status-dot.idle[data-v-54a97885]{background:#9ca3af}.avatar-status-dot.loading[data-v-54a97885]{background:#f59e0b;box-shadow:0 0 8px #f59e0b80}.avatar-status-dot.ready[data-v-54a97885]{background:#43e97b;box-shadow:0 0 8px #43e97b80}.avatar-status-dot.listening[data-v-54a97885]{background:#43e97b;animation:.8s infinite dot-pulse-54a97885;box-shadow:0 0 8px #43e97b80}.avatar-status-dot.thinking[data-v-54a97885]{background:#f59e0b;box-shadow:0 0 8px #f59e0b80}.avatar-status-dot.speaking[data-v-54a97885]{background:#3b82f6;animation:.8s infinite dot-pulse-54a97885;box-shadow:0 0 8px #3b82f680}.avatar-status-dot.error[data-v-54a97885]{background:#ef4444;box-shadow:0 0 8px #ef444480}@keyframes dot-pulse-54a97885{0%,to{transform:scale(1)}50%{transform:scale(1.8)}}.avatar-status-label[data-v-54a97885]{color:#6b7280;font-size:12px}.avatar-controls[data-v-54a97885]{justify-content:center;gap:8px;display:flex}.avatar-ctrl-btn[data-v-54a97885]{color:#6b7280;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:6px 10px;font-size:14px;transition:all .2s}.avatar-ctrl-btn[data-v-54a97885]:hover:not(:disabled){color:#667eea;background:#f5f3ff;border-color:#667eea}.avatar-ctrl-btn[data-v-54a97885]:disabled{opacity:.4;cursor:not-allowed}.avatar-ctrl-btn.active[data-v-54a97885]{color:#fff;background:#667eea;border-color:#667eea}.stop-btn[data-v-54a97885]:not(:disabled){color:#ef4444;border-color:#ef4444}.stop-btn[data-v-54a97885]:not(:disabled):hover{color:#dc2626;background:#fef2f2;border-color:#dc2626}.mic-btn[data-v-54a97885]:not(:disabled){color:#fff;background:#16a34a;border-color:#16a34a}.mic-btn[data-v-54a97885]:not(:disabled):hover{background:#15803d;border-color:#15803d}.mic-btn.active[data-v-54a97885]{color:#fff;background:#dc2626;border-color:#dc2626;animation:1.1s ease-in-out infinite mic-pulse-54a97885}@keyframes mic-pulse-54a97885{0%,to{box-shadow:0 0 #dc26268c}50%{box-shadow:0 0 0 7px #dc262600}}.chat-panel[data-v-54a97885]{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.chat-panel.lam-active[data-v-54a97885]{border-left:none}.lam-chat-header[data-v-54a97885]{background:#fafbfc;border-bottom:1px solid #f3f4f6;flex-shrink:0;align-items:center;gap:12px;padding:12px 20px;display:flex}.lam-chat-title[data-v-54a97885]{color:#374151;font-size:14px;font-weight:600}.lam-chat-hint[data-v-54a97885]{color:#9ca3af;font-size:12px}.chat-main[data-v-54a97885]{flex-direction:column;flex:1;display:flex;position:relative;overflow-y:auto}@media (width<=900px){.chat-container.lam-layout[data-v-54a97885]{flex-direction:column}.avatar-panel[data-v-54a97885]{width:100%;min-width:unset;max-width:unset;border-bottom:1px solid #667eea1f;border-right:none;flex-shrink:0;max-height:420px;padding:12px 16px}.avatar-stage[data-v-54a97885]{max-width:300px;height:260px;max-height:35vh}.chat-panel[data-v-54a97885]{min-height:0}}#digital-human-container{display:block;overflow:hidden}#digital-human-container video,#digital-human-container canvas{object-fit:contain;background:#1a1a2e;width:100%;height:100%;display:block}.login-tip-container[data-v-2c2e2a3f]{justify-content:center;align-items:center;min-height:calc(100vh - 3rem);padding:2rem;display:flex}.login-tip[data-v-2c2e2a3f]{background:var(--color-canvas);text-align:center;border:1px solid #00ed6433;border-radius:16px;max-width:500px;padding:3rem;box-shadow:0 4px 20px #00000014}.tip-icon[data-v-2c2e2a3f]{color:var(--color-primary);justify-content:center;align-items:center;margin-bottom:1.5rem;font-size:48px;animation:2s infinite bounce-2c2e2a3f;display:flex}.tip-icon[data-v-2c2e2a3f] .svg-inline--fa{width:48px;height:48px}@keyframes bounce-2c2e2a3f{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.tip-title[data-v-2c2e2a3f]{color:var(--color-ink);margin:0 0 1rem;font-size:24px;font-weight:600}.tip-text[data-v-2c2e2a3f]{color:var(--color-slate);margin:0;font-size:15px;line-height:1.6}.question-btn.marked[data-v-5680ac8b]{position:relative}.mark-icon[data-v-5680ac8b]{background:var(--color-primary);width:16px;height:16px;color:var(--color-canvas);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-4px;right:-4px}.mark-icon[data-v-5680ac8b] .svg-inline--fa{width:10px;height:10px;font-size:10px}.question-nav[data-v-5680ac8b]{padding:var(--spacing-xl) var(--spacing-lg);flex-direction:column;height:100%;display:flex}.nav-title[data-v-5680ac8b]{font-size:var(--typography-body-md-size);color:var(--color-slate);margin:0 0 var(--spacing-lg) 0;flex-shrink:0;font-weight:600}.question-grid[data-v-5680ac8b]{gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);flex-shrink:0;grid-template-columns:repeat(6,1fr);display:grid}.question-btn[data-v-5680ac8b]{aspect-ratio:1;border-radius:var(--rounded-full);background:var(--color-canvas);color:var(--color-slate);font-size:var(--typography-body-sm-size);cursor:pointer;border:none;border:2px solid var(--color-hairline);min-width:0;padding:0;font-weight:500;transition:all .3s}.question-btn[data-v-5680ac8b]:hover{border-color:var(--color-primary);transform:scale(1.05)}.question-btn.answered[data-v-5680ac8b]{background:var(--color-primary);color:var(--color-canvas);border-color:var(--color-primary)}.question-btn.current[data-v-5680ac8b]{border-color:var(--color-primary);border-width:3px;box-shadow:0 0 0 2px #00ed6433}.stats[data-v-5680ac8b]{border-top:1px solid var(--color-hairline);padding-top:var(--spacing-md);flex-shrink:0}.stat-item[data-v-5680ac8b]{padding:var(--spacing-xs) 0;font-size:var(--typography-body-sm-size);justify-content:space-between;align-items:center;display:flex}.stat-label[data-v-5680ac8b]{color:var(--color-steel)}.stat-value[data-v-5680ac8b]{font-weight:600;font-size:var(--typography-heading-5-size)}.stat-value.answered[data-v-5680ac8b],.stat-value.unanswered[data-v-5680ac8b]{color:var(--color-primary)}.stat-value.marked[data-v-5680ac8b]{color:var(--color-accent-blue)}.question-content[data-v-762d019d]{height:100%;padding:var(--spacing-xl) var(--spacing-xxxl);box-sizing:border-box;flex-direction:column;display:flex}@media (width>=1920px){.question-content[data-v-762d019d]{padding:var(--spacing-xxl) 3.5rem}}@media (width<=1440px){.question-content[data-v-762d019d]{padding:var(--spacing-lg) var(--spacing-xxl)}}@media (width<=1024px){.question-content[data-v-762d019d]{padding:var(--spacing-md) var(--spacing-xl)}}@media (width<=768px){.question-content[data-v-762d019d]{padding:var(--spacing-md)}}.question-header[data-v-762d019d]{margin-bottom:var(--spacing-sm);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.question-info[data-v-762d019d]{align-items:center;gap:var(--spacing-xs);display:flex}.question-number[data-v-762d019d]{font-size:var(--typography-heading-5-size);color:var(--color-ink);font-weight:600}.question-total[data-v-762d019d]{font-size:var(--typography-body-sm-size);color:var(--color-steel)}.question-type[data-v-762d019d]{padding:var(--spacing-xxs) var(--spacing-sm);background:var(--color-primary);color:var(--color-canvas);border-radius:var(--rounded-xl);font-size:var(--typography-micro-size);font-weight:500}.mark-btn[data-v-762d019d]{align-items:center;gap:var(--spacing-xxs);padding:var(--spacing-xs) var(--spacing-md);background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--rounded-full);color:var(--color-slate);font-size:var(--typography-body-sm-size);cursor:pointer;transition:all .3s;display:flex}.mark-btn svg[data-v-762d019d]{width:1rem;height:1rem}.mark-btn[data-v-762d019d]:hover{border-color:var(--color-primary);color:var(--color-primary)}.mark-btn.marked[data-v-762d019d]{background:var(--color-surface-feature);border-color:var(--color-primary);color:var(--color-primary)}.progress-bar[data-v-762d019d]{background:var(--color-hairline);border-radius:var(--rounded-xs);height:.5rem;margin-bottom:var(--spacing-xxs);flex-shrink:0;overflow:hidden}.progress-fill[data-v-762d019d]{background:var(--color-primary);height:100%;transition:width .3s}.progress-text[data-v-762d019d]{font-size:var(--typography-micro-size);color:var(--color-steel);margin-bottom:var(--spacing-xl);flex-shrink:0;justify-content:space-between;display:flex}.question-body[data-v-762d019d]{min-height:0;margin-bottom:var(--spacing-xl);flex:1;overflow-y:auto}.question-title[data-v-762d019d]{font-size:var(--typography-body-md-medium-size);color:var(--color-ink);margin:0 0 var(--spacing-xxl) 0;font-weight:500;line-height:1.6}.options-list[data-v-762d019d]{gap:var(--spacing-lg);flex-direction:column;display:flex}.option-item[data-v-762d019d]{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-canvas);border:2px solid var(--color-hairline);border-radius:var(--rounded-lg);cursor:pointer;transition:all .3s;display:flex}.option-item[data-v-762d019d]:hover{border-color:var(--color-primary);background:var(--color-brand-green-soft)}.option-item.selected[data-v-762d019d]{border-color:var(--color-primary);background:var(--color-surface-feature)}.option-item input[type=radio][data-v-762d019d]{cursor:pointer;width:1.25rem;height:1.25rem;accent-color:var(--color-primary)}.option-label[data-v-762d019d]{color:var(--color-ink);font-weight:600;font-size:var(--typography-body-md-size)}.option-text[data-v-762d019d]{color:var(--color-slate);font-size:var(--typography-body-sm-medium-size);flex:1}.question-footer[data-v-762d019d]{padding-top:var(--spacing-xl);border-top:1px solid var(--color-hairline);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.nav-btn[data-v-762d019d]{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-xl);border:1px solid var(--color-hairline);border-radius:var(--rounded-full);background:var(--color-canvas);color:var(--color-slate);font-size:var(--typography-body-sm-medium-size);cursor:pointer;transition:all .3s;display:flex}.nav-btn svg[data-v-762d019d]{width:1.125rem;height:1.125rem}.nav-btn[data-v-762d019d]:hover{border-color:var(--color-primary);color:var(--color-primary)}.next-btn[data-v-762d019d]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-canvas)}.next-btn[data-v-762d019d]:hover{background:var(--color-primary-deep);border-color:var(--color-primary-deep);color:var(--color-canvas)}.submit-btn[data-v-762d019d]{color:var(--color-on-dark);background:#f44336;border-color:#f44336}.submit-btn[data-v-762d019d]:hover{color:var(--color-on-dark);background:#d32f2f;border-color:#d32f2f}.save-btn[data-v-762d019d]:hover{border-color:var(--color-accent-blue);color:var(--color-accent-blue)}.test-btn[data-v-762d019d]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-canvas)}.test-btn[data-v-762d019d]:hover{background:var(--color-primary-pressed);border-color:var(--color-primary-pressed);color:var(--color-canvas)}.report-content[data-v-810a6614]{padding:var(--spacing-xxl) var(--spacing-section-sm);background:linear-gradient(135deg, var(--color-canvas) 0%, var(--color-brand-green-soft) 100%)}.report-section[data-v-810a6614]{margin-bottom:var(--spacing-section-sm);background:var(--color-canvas);border-radius:var(--rounded-xl);padding:var(--spacing-xxl);border:var(--card-base-border)}.section-title[data-v-810a6614]{font-size:var(--typography-heading-3-size);font-weight:var(--typography-heading-3-weight);color:var(--color-brand-teal-mid);margin:0 0 var(--spacing-xl) 0;padding-bottom:var(--spacing-sm);border-bottom:3px solid var(--color-brand-green);text-shadow:0 1px 2px #0000001a}.constitution-grid[data-v-810a6614]{gap:var(--spacing-xl);grid-template-columns:repeat(3,1fr);display:grid}.constitution-card[data-v-810a6614]{background:var(--color-canvas);border:var(--card-base-border);border-radius:var(--rounded-xl);padding:var(--spacing-xl);transition:all .3s;position:relative;overflow:hidden}.constitution-card[data-v-810a6614]:before{content:"";background:linear-gradient(90deg, var(--color-brand-green), var(--color-brand-green-mid));transform-origin:0;height:4px;transition:transform .3s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.constitution-card[data-v-810a6614]:hover{transform:translateY(-5px)}.constitution-card[data-v-810a6614]:hover:before{transform:scaleX(1)}.constitution-card.highlighted[data-v-810a6614]{border-color:var(--color-primary);background:var(--color-surface-feature)}.constitution-card.highlighted[data-v-810a6614]:before{background:linear-gradient(90deg, var(--color-brand-green), var(--color-accent-orange));transform:scaleX(1)}.card-header[data-v-810a6614]{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.card-name[data-v-810a6614]{font-size:var(--typography-heading-5-size);font-weight:var(--typography-heading-5-weight);color:var(--color-brand-teal-mid);text-shadow:0 1px 1px #0000000d}.card-score[data-v-810a6614]{color:var(--color-brand-green);text-shadow:0 2px 4px #00e6764d;font-family:Courier New,monospace;font-size:1.8rem;font-weight:700}.card-bar[data-v-810a6614]{border-radius:var(--rounded-sm);height:.75rem;margin-bottom:var(--spacing-sm);background:#00e6761a;position:relative;overflow:hidden}.card-bar[data-v-810a6614]:before{content:"";background:linear-gradient(90deg,#0000,#00e67633,#0000);animation:2s infinite shimmer-810a6614;position:absolute;inset:0}@keyframes shimmer-810a6614{0%{transform:translate(-100%)}to{transform:translate(100%)}}.card-bar-fill[data-v-810a6614]{border-radius:var(--rounded-sm);background:linear-gradient(90deg, var(--color-brand-green), var(--color-brand-green-mid));height:100%;transition:width .8s;box-shadow:0 0 10px #00e67680}.card-tag[data-v-810a6614]{padding:var(--spacing-xxs) var(--spacing-md);background:linear-gradient(90deg, var(--color-brand-green), var(--color-brand-green-mid));color:var(--color-canvas);border-radius:var(--rounded-xxl);font-size:var(--typography-caption-size);font-weight:var(--typography-caption-bold-weight);text-shadow:0 1px 1px #0003;display:inline-block;box-shadow:0 2px 8px #00e6764d}.charts-row[data-v-810a6614]{gap:var(--spacing-xxl);grid-template-columns:repeat(2,1fr);display:grid}.chart-card[data-v-810a6614]{background:var(--color-canvas);border:var(--card-base-border);border-radius:var(--rounded-xl);padding:var(--spacing-xl);transition:all .3s}.chart-card[data-v-810a6614]:hover{transform:translateY(-2px)}.chart-title[data-v-810a6614]{font-size:var(--typography-heading-5-size);font-weight:var(--typography-heading-5-weight);color:var(--color-brand-teal-mid);margin:0 0 var(--spacing-lg) 0;text-shadow:0 1px 1px #0000000d}.chart-placeholder[data-v-810a6614]{justify-content:center;align-items:center;min-height:280px;display:flex}.radar-chart[data-v-810a6614],.bar-chart[data-v-810a6614]{width:100%;height:320px}.development-tag[data-v-810a6614]:before{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%2300e676' d='M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:contain;width:1rem;height:1rem;display:inline-block}.trend-chart[data-v-810a6614]{background:var(--color-canvas);border:var(--card-base-border);border-radius:var(--rounded-xl);padding:var(--spacing-xl);position:relative;overflow:hidden}.trend-chart[data-v-810a6614]:before{content:"开发中";top:var(--spacing-md);right:var(--spacing-md);color:var(--color-brand-teal-mid);padding:var(--spacing-xxs) var(--spacing-sm);border-radius:var(--rounded-xl);font-size:var(--typography-micro-size);font-weight:var(--typography-micro-weight);background:#00e6761a;position:absolute}.line-chart[data-v-810a6614]{width:100%;height:300px}.no-data[data-v-810a6614]{min-height:280px;color:var(--color-brand-teal-mid);font-size:var(--typography-heading-5-size);font-weight:var(--typography-heading-5-weight);justify-content:center;align-items:center;display:flex}.details-table[data-v-810a6614]{background:var(--color-canvas);border-radius:var(--rounded-xl);border:var(--card-base-border);overflow:hidden}.table-header[data-v-810a6614]{background:linear-gradient(90deg, var(--color-brand-green), var(--color-brand-green-mid));color:var(--color-canvas);grid-template-columns:12rem 1fr;display:grid;box-shadow:0 2px 8px #00e6764d}.header-cell[data-v-810a6614]{padding:var(--spacing-lg) var(--spacing-xl);text-shadow:0 1px 1px #0003;font-weight:600}.table-row[data-v-810a6614]{border-bottom:1px solid #00e6761a;grid-template-columns:12rem 1fr;transition:all .2s;display:grid}.table-row[data-v-810a6614]:hover{background:#00e6760d}.table-row[data-v-810a6614]:last-child{border-bottom:none}.row-label[data-v-810a6614]{padding:var(--spacing-lg) var(--spacing-xl);color:var(--color-brand-teal-mid);text-shadow:0 1px 1px #0000000d;background:#00e67614;font-weight:600}.row-content[data-v-810a6614]{padding:var(--spacing-lg) var(--spacing-xl);color:var(--color-ink);line-height:var(--typography-body-md-line);font-size:var(--typography-body-md-size)}.optimization-grid[data-v-810a6614]{gap:var(--spacing-xxl);grid-template-columns:repeat(4,1fr);display:grid}.optimization-card[data-v-810a6614]{background:var(--color-canvas);border:var(--card-base-border);border-radius:var(--rounded-xl);cursor:pointer;transition:all .3s;position:relative;overflow:hidden}.optimization-card[data-v-810a6614]:before{content:"";background:linear-gradient(90deg, var(--color-brand-green), var(--color-brand-green-mid));transform-origin:0;height:4px;transition:transform .3s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.optimization-card[data-v-810a6614]:hover{transform:translateY(-8px)}.optimization-card[data-v-810a6614]:hover:before{transform:scaleX(1)}.card-image[data-v-810a6614]{object-fit:cover;width:100%;height:10rem;transition:transform .3s}.optimization-card:hover .card-image[data-v-810a6614]{transform:scale(1.05)}.card-body[data-v-810a6614]{padding:var(--spacing-xl);text-align:center;z-index:1;position:relative}.card-icon[data-v-810a6614]{margin-bottom:var(--spacing-sm);color:var(--color-brand-green);font-size:2.5rem;transition:transform .3s;display:block}.card-icon[data-v-810a6614] .svg-inline--fa{width:2.5rem;height:2.5rem}.optimization-card:hover .card-icon[data-v-810a6614]{transform:scale(1.1)rotate(5deg)}.card-title[data-v-810a6614]{font-size:var(--typography-heading-5-size);font-weight:var(--typography-heading-5-weight);color:var(--color-brand-teal-mid);margin:0 0 var(--spacing-sm) 0;text-shadow:0 1px 1px #0000000d}.card-desc[data-v-810a6614]{font-size:var(--typography-body-sm-size);color:var(--color-slate);line-height:var(--typography-body-sm-line);margin:0}.action-buttons[data-v-810a6614]{gap:var(--spacing-xl);flex-wrap:wrap;justify-content:center;display:flex}.action-btn[data-v-810a6614]{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg) var(--spacing-xxxl);border-radius:var(--rounded-full);font-size:var(--typography-body-md-size);font-weight:var(--typography-body-md-medium-weight);cursor:pointer;text-shadow:0 1px 1px #0000001a;border:none;transition:all .3s;display:flex;position:relative;overflow:hidden}.action-btn[data-v-810a6614]:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.action-btn[data-v-810a6614]:hover:before{left:100%}.action-btn svg[data-v-810a6614]{width:1.25rem;height:1.25rem;transition:transform .3s}.action-btn:hover svg[data-v-810a6614]{transform:scale(1.1)rotate(5deg)}.action-btn.primary[data-v-810a6614]{background:linear-gradient(90deg, var(--color-brand-green), var(--color-brand-green-mid));color:var(--color-canvas);box-shadow:0 4px 16px #00e67666}.action-btn.primary[data-v-810a6614]:hover{transform:translateY(-3px);box-shadow:0 6px 24px #00e67699}.action-btn.secondary[data-v-810a6614]{background:linear-gradient(145deg, var(--color-canvas) 0%, var(--color-canvas) 100%);color:var(--color-brand-teal-mid);border:2px solid #00e6764d;box-shadow:0 2px 8px #00e67633}.action-btn.secondary[data-v-810a6614]:hover{border-color:var(--color-brand-green);transform:translateY(-3px);box-shadow:0 4px 16px #00e67666}@media (width<=1440px){.report-content[data-v-810a6614]{padding:var(--spacing-xl) var(--spacing-xxl)}.report-section[data-v-810a6614]{padding:var(--spacing-xl)}.constitution-grid[data-v-810a6614],.optimization-grid[data-v-810a6614]{grid-template-columns:repeat(2,1fr)}.radar-chart[data-v-810a6614],.bar-chart[data-v-810a6614]{height:280px}}@media (width<=1024px){.charts-row[data-v-810a6614]{grid-template-columns:1fr}.section-header[data-v-810a6614]{align-items:flex-start;gap:var(--spacing-xs);flex-direction:column}.constitution-grid[data-v-810a6614],.optimization-grid[data-v-810a6614]{grid-template-columns:1fr}.radar-chart[data-v-810a6614],.bar-chart[data-v-810a6614],.line-chart[data-v-810a6614]{height:300px}}@media (width<=768px){.report-content[data-v-810a6614]{padding:var(--spacing-md)}.report-section[data-v-810a6614]{padding:var(--spacing-lg)}.section-title[data-v-810a6614]{font-size:var(--typography-heading-4-size)}.action-buttons[data-v-810a6614]{flex-direction:column;align-items:center}.action-btn[data-v-810a6614]{justify-content:center;width:100%}}.body-report-view[data-v-e84a5979]{background:var(--color-surface);flex-direction:column;height:calc(100vh - 3rem);min-height:calc(100vh - 3rem);display:flex;position:relative}.report-layout[data-v-e84a5979]{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.left-sidebar[data-v-e84a5979]{background:var(--color-surface-soft);border-right:1px solid var(--color-hairline);width:16rem;height:100%;padding:var(--spacing-xl) var(--spacing-md);z-index:10;scrollbar-width:none;-ms-overflow-style:none;flex-shrink:0;overflow-y:auto}.left-sidebar[data-v-e84a5979]::-webkit-scrollbar{display:none}.sidebar-title[data-v-e84a5979]{font-size:var(--typography-body-md-size);color:var(--color-ink);margin:0 0 var(--spacing-md) 0;padding:0 var(--spacing-xs);font-weight:600}.report-nav[data-v-e84a5979]{gap:var(--spacing-xxs);margin-bottom:var(--spacing-xxl);flex-direction:column;display:flex}.nav-item[data-v-e84a5979]{padding:var(--spacing-sm) var(--spacing-sm);color:var(--color-slate);border-radius:var(--rounded-md);font-size:var(--typography-body-sm-size);cursor:pointer;text-decoration:none;transition:all .3s}.nav-item[data-v-e84a5979]:hover{background:var(--color-surface-feature);color:var(--color-primary)}.nav-item.active[data-v-e84a5979]{background:var(--color-primary);color:var(--color-canvas);font-weight:500}.constitution-summary[data-v-e84a5979]{border-top:1px solid var(--color-hairline);padding-top:var(--spacing-xl)}.summary-title[data-v-e84a5979]{font-size:var(--typography-body-sm-size);color:var(--color-slate);margin:0 0 var(--spacing-md) 0;padding:0 var(--spacing-xs);font-weight:600}.summary-item[data-v-e84a5979]{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--typography-caption-size);justify-content:space-between;align-items:center;display:flex}.item-name[data-v-e84a5979]{color:var(--color-slate)}.item-score[data-v-e84a5979]{color:var(--color-primary);font-weight:600}.right-content[data-v-e84a5979]{background:var(--color-canvas);scrollbar-width:none;-ms-overflow-style:none;flex:1;height:100%;overflow-y:auto}.right-content[data-v-e84a5979]::-webkit-scrollbar{display:none}@media (width<=1024px){.left-sidebar[data-v-e84a5979]{width:14rem}}@media (width<=768px){.report-layout[data-v-e84a5979]{flex-direction:column}.left-sidebar[data-v-e84a5979]{border-right:none;border-bottom:1px solid var(--color-hairline);width:100%;height:auto;max-height:40vh}}.body-view[data-v-6e0db4e6]{height:100%;padding:var(--spacing-lg);background:linear-gradient(180deg, var(--color-surface) 0%, var(--color-surface-soft) 100%);overflow-y:auto}.body-layout[data-v-6e0db4e6]{box-sizing:border-box;grid-template-columns:1fr;height:100%;display:grid}.main-panel[data-v-6e0db4e6]{flex-direction:column;height:100%;display:flex;position:relative;overflow-y:auto}.test-content[data-v-6e0db4e6]{flex:1;grid-template-columns:minmax(16rem,18rem) 1fr;gap:0;height:100%;display:grid}.fade-enter-active[data-v-6e0db4e6],.fade-leave-active[data-v-6e0db4e6]{transition:opacity .5s}.fade-enter-from[data-v-6e0db4e6],.fade-leave-to[data-v-6e0db4e6]{opacity:0}.slide-up-enter-active[data-v-6e0db4e6]{transition:all .5s}.slide-up-enter-from[data-v-6e0db4e6]{opacity:0;transform:translateY(20px)}.welcome-cover[data-v-6e0db4e6]{background:var(--color-canvas);z-index:10;border-radius:var(--rounded-lg);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.welcome-content[data-v-6e0db4e6]{text-align:center;max-width:40rem;padding:var(--spacing-xxl) var(--spacing-lg)}.welcome-icon[data-v-6e0db4e6]{width:5rem;height:5rem;margin:0 auto var(--spacing-lg);background:linear-gradient(135deg, var(--color-primary-deep) 0%, var(--color-primary) 100%);box-shadow:var(--elevation-3);border-radius:50%;justify-content:center;align-items:center;display:flex}.welcome-icon svg[data-v-6e0db4e6]{width:3rem;height:3rem;color:var(--color-canvas)}.welcome-title[data-v-6e0db4e6]{font-size:var(--typography-heading-2-size);font-weight:var(--typography-heading-2-weight);color:var(--color-brand-green-dark);margin:0 0 var(--spacing-md) 0;display:inline-block;position:relative}.welcome-title[data-v-6e0db4e6]:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--color-primary) 50%, transparent 100%);border-radius:2px;width:48px;height:3px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.welcome-desc[data-v-6e0db4e6]{font-size:var(--typography-heading-5-size);color:var(--color-slate);margin:var(--spacing-lg) 0 var(--spacing-xxl) 0;line-height:1.8}.welcome-info[data-v-6e0db4e6]{justify-content:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-xxl);flex-wrap:wrap;display:flex}.info-item[data-v-6e0db4e6]{align-items:center;gap:var(--spacing-sm);background:var(--color-surface-soft);border:1px solid var(--color-hairline-soft);border-radius:var(--rounded-full);color:var(--color-slate);font-size:var(--typography-body-sm-medium-size);padding:8px 16px;transition:all .2s;display:flex}.info-item[data-v-6e0db4e6]:hover{background:var(--color-canvas);border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px)}.info-item svg[data-v-6e0db4e6]{width:1.125rem;height:1.125rem;color:var(--color-primary)}.start-btn[data-v-6e0db4e6]{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xxl);background:linear-gradient(135deg, var(--color-primary-deep) 0%, var(--color-primary) 100%);color:var(--color-canvas);border-radius:var(--rounded-full);font-size:var(--typography-heading-5-size);font-weight:var(--typography-button-md-weight);cursor:pointer;box-shadow:var(--elevation-2);border:none;transition:all .25s;display:inline-flex;position:relative;overflow:hidden}.start-btn[data-v-6e0db4e6]:before{content:"";background:linear-gradient(135deg,#0000 0%,#ffffff26 50%,#0000 100%);transition:transform .6s;position:absolute;inset:0;transform:translate(-100%)}.start-btn[data-v-6e0db4e6]:hover{box-shadow:var(--elevation-3);transform:translateY(-3px)}.start-btn[data-v-6e0db4e6]:hover:before{transform:translate(100%)}.welcome-tip[data-v-6e0db4e6]{margin-top:var(--spacing-lg);font-size:var(--typography-body-sm-size);color:var(--color-steel)}.gender-select-cover[data-v-6e0db4e6]{background:var(--color-canvas);z-index:11;border-radius:var(--rounded-lg);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.gender-select-content[data-v-6e0db4e6]{text-align:center;max-width:32rem;padding:var(--spacing-xxl) var(--spacing-lg)}.gender-icon[data-v-6e0db4e6]{width:5rem;height:5rem;margin:0 auto var(--spacing-lg);background:linear-gradient(135deg, var(--color-primary-deep) 0%, var(--color-primary) 100%);box-shadow:var(--elevation-3);border-radius:50%;justify-content:center;align-items:center;display:flex}.gender-icon svg[data-v-6e0db4e6]{width:3rem;height:3rem;color:var(--color-canvas)}.gender-title[data-v-6e0db4e6]{font-size:var(--typography-heading-3-size);font-weight:var(--typography-heading-3-weight);color:var(--color-brand-teal);margin:0 0 var(--spacing-md) 0}.gender-desc[data-v-6e0db4e6]{font-size:var(--typography-body-md-size);color:var(--color-slate);margin:0 0 var(--spacing-xxl) 0}.gender-buttons[data-v-6e0db4e6]{gap:var(--spacing-xl);flex-wrap:wrap;justify-content:center;display:flex}.gender-btn[data-v-6e0db4e6]{align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xxl);border:2px solid var(--color-hairline);border-radius:var(--rounded-md);background:var(--color-canvas);cursor:pointer;box-shadow:var(--elevation-1);min-width:10rem;color:var(--color-primary);flex-direction:column;transition:all .25s;display:flex}.gender-btn svg[data-v-6e0db4e6]{width:3rem;height:3rem;transition:transform .3s}.gender-btn span[data-v-6e0db4e6]{font-size:var(--typography-heading-4-size);font-weight:var(--typography-heading-4-weight)}.gender-btn.male[data-v-6e0db4e6],.gender-btn.female[data-v-6e0db4e6]{color:var(--color-primary)}.gender-btn[data-v-6e0db4e6]:hover{border-color:var(--color-primary);background:var(--color-surface-soft);box-shadow:var(--elevation-3);transform:translateY(-3px)}.gender-btn:hover svg[data-v-6e0db4e6]{transform:scale(1.1)}@media (width>=1920px){.body-layout[data-v-6e0db4e6]{max-width:1200px;margin:0 auto}}@media (width<=1024px){.body-layout[data-v-6e0db4e6]{grid-template-columns:1fr;overflow-y:auto}}@media (width<=768px){.body-view[data-v-6e0db4e6]{padding:var(--spacing-md)}}.image-upload-container[data-v-13dc486c]{padding:var(--spacing-xl);gap:var(--spacing-md);flex-direction:column;height:100%;display:flex;overflow-y:auto}.upload-header[data-v-13dc486c]{text-align:center;padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-surface-feature);position:relative}.upload-header[data-v-13dc486c]:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--color-primary) 50%, transparent 100%);width:60px;height:2px;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.upload-header h2[data-v-13dc486c]{font-size:var(--typography-heading-4-size);color:var(--color-brand-green-dark);margin:0 0 .375rem;font-weight:600}.upload-subtitle[data-v-13dc486c]{font-size:var(--typography-body-sm-size);color:var(--color-slate);margin:0;line-height:1.4}.content-wrapper[data-v-13dc486c]{gap:var(--spacing-md);flex:1;grid-template-columns:1fr 1fr;max-height:280px;display:grid}.left-section[data-v-13dc486c],.right-section[data-v-13dc486c]{flex-direction:column;gap:.625rem;display:flex}.section-label[data-v-13dc486c]{font-size:var(--typography-body-sm-size);color:var(--color-primary);align-items:center;gap:.5rem;margin-bottom:.375rem;font-weight:600;display:flex}.section-label svg[data-v-13dc486c]{width:1rem;height:1rem}.camera-placeholder[data-v-13dc486c]{background:linear-gradient(135deg, var(--color-brand-green-soft) 0%, var(--color-surface-feature) 100%);border-radius:var(--rounded-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.625rem;height:180px;max-height:180px;display:flex;position:relative;overflow:hidden}.camera-placeholder[data-v-13dc486c]:before{content:"";background:radial-gradient(circle,#00ed641a 0%,#0000 70%);width:200%;height:200%;animation:20s linear infinite rotate-13dc486c;position:absolute;top:-50%;left:-50%}@keyframes rotate-13dc486c{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.camera-icon-wrapper[data-v-13dc486c]{z-index:1;justify-content:center;align-items:center;display:flex;position:relative}.camera-icon[data-v-13dc486c]{width:3rem;height:3rem;color:var(--color-primary);z-index:2;filter:drop-shadow(0 4px 12px #00ed644d);position:relative}.pulse-ring[data-v-13dc486c]{background:radial-gradient(circle,#00ed644d 0%,#00ed6400 70%);border-radius:50%;width:4.5rem;height:4.5rem;animation:2s ease-in-out infinite pulse-13dc486c;position:absolute}@keyframes pulse-13dc486c{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.3)}}.camera-text[data-v-13dc486c]{font-size:var(--typography-body-sm-size);color:var(--color-charcoal);z-index:1;letter-spacing:.3px;margin:0;font-weight:600}.dev-badge[data-v-13dc486c]{font-size:var(--typography-micro-size);color:var(--color-on-dark);background:var(--color-primary);z-index:1;border-radius:1rem;padding:.25rem .75rem}.camera-actions[data-v-13dc486c]{gap:.5rem;width:100%;display:flex}.capture-btn[data-v-13dc486c]{background:var(--color-primary);color:var(--color-on-dark);border-radius:var(--rounded-full);font-size:var(--typography-body-sm-medium-size);cursor:pointer;border:none;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-weight:500;transition:all .3s;display:flex}.capture-btn.stop-camera[data-v-13dc486c]{background:#f44336}.capture-btn.stop-camera[data-v-13dc486c]:hover{background:#d32f2f}.capture-btn.start-camera[data-v-13dc486c],.capture-btn.take-photo[data-v-13dc486c]{background:var(--color-primary)}.capture-btn[data-v-13dc486c]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #00ed644d}.capture-btn.stop-camera[data-v-13dc486c]:hover:not(:disabled){box-shadow:0 4px 12px #f443364d}.capture-btn[data-v-13dc486c]:disabled{opacity:.6;cursor:not-allowed}.capture-btn svg[data-v-13dc486c]{width:1.125rem;height:1.125rem}.camera-view[data-v-13dc486c]{border-radius:var(--rounded-lg);background:#000;flex:1;width:100%;height:180px;max-height:180px;position:relative;overflow:hidden}.camera-view video[data-v-13dc486c]{object-fit:contain;width:100%;height:100%;transform:scaleX(-1)}.camera-overlay[data-v-13dc486c]{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.face-guide[data-v-13dc486c]{border:2px dashed #ffffff80;border-radius:50% 50% 40% 40%/60% 60% 40% 40%;width:60%;height:70%;margin-bottom:.5rem;position:relative;box-shadow:0 0 0 9999px #0000004d}.guide-corner[data-v-13dc486c]{border-color:var(--color-primary);border-style:solid;border-width:0;width:1.5rem;height:1.5rem;position:absolute}.guide-corner.top-left[data-v-13dc486c]{border-top-width:3px;border-left-width:3px;border-top-left-radius:.5rem;top:-2px;left:-2px}.guide-corner.top-right[data-v-13dc486c]{border-top-width:3px;border-right-width:3px;border-top-right-radius:.5rem;top:-2px;right:-2px}.guide-corner.bottom-left[data-v-13dc486c]{border-bottom-width:3px;border-left-width:3px;border-bottom-left-radius:.5rem;bottom:-2px;left:-2px}.guide-corner.bottom-right[data-v-13dc486c]{border-bottom-width:3px;border-right-width:3px;border-bottom-right-radius:.5rem;bottom:-2px;right:-2px}.overlay-text[data-v-13dc486c]{color:var(--color-on-dark);font-size:var(--typography-caption-size);text-shadow:0 1px 4px #000c;background:#00000080;border-radius:1rem;margin:0;padding:.25rem .75rem;font-weight:500}.preview-area[data-v-13dc486c]{border-radius:var(--rounded-lg);border:3px solid var(--color-primary);background:#000;flex:1;width:100%;height:180px;max-height:180px;position:relative;overflow:hidden}.preview-area img[data-v-13dc486c]{object-fit:contain;width:100%;height:100%}.preview-info[data-v-13dc486c]{color:var(--color-on-dark);font-size:var(--typography-body-sm-size);background:linear-gradient(#0000,#00ed64f2);justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-weight:500;display:flex;position:absolute;bottom:0;left:0;right:0}.preview-info svg[data-v-13dc486c]{width:1.125rem;height:1.125rem}.remove-btn[data-v-13dc486c]{width:2.5rem;height:2.5rem;color:var(--color-on-dark);cursor:pointer;z-index:2;background:#000000b3;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .3s;display:flex;position:absolute;top:.75rem;right:.75rem}.remove-btn[data-v-13dc486c]:hover{background:#f44336f2;transform:scale(1.1)}.remove-btn svg[data-v-13dc486c]{width:1.25rem;height:1.25rem}.upload-area[data-v-13dc486c]{border:2px dashed var(--color-primary);border-radius:var(--rounded-lg);text-align:center;cursor:pointer;background:linear-gradient(135deg, var(--color-surface) 0%, var(--color-surface-soft) 100%);flex-direction:column;flex:1;justify-content:center;align-items:center;height:180px;max-height:180px;padding:1.5rem 1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.upload-area[data-v-13dc486c]:before{content:"";opacity:0;pointer-events:none;background:radial-gradient(circle,#70976614 0%,#0000 70%);transition:opacity .3s;position:absolute;inset:0}.upload-area[data-v-13dc486c]:hover{border-color:var(--color-primary-deep);background:linear-gradient(135deg, var(--color-brand-green-soft) 0%, var(--color-surface-feature) 100%);transform:translateY(-2px);box-shadow:0 6px 18px #7097662e}.upload-area[data-v-13dc486c]:hover:before{opacity:1}.upload-icon-wrapper[data-v-13dc486c]{background:var(--color-surface-feature);border-radius:50%;margin-bottom:.625rem;padding:.75rem;display:inline-block}.upload-icon[data-v-13dc486c]{width:2rem;height:2rem;color:var(--color-primary)}.upload-text[data-v-13dc486c]{color:var(--color-ink);margin:0 0 .5rem;font-size:1rem;font-weight:500}.upload-hint[data-v-13dc486c]{font-size:var(--typography-caption-size);color:var(--color-slate);margin:0}.analyze-btn[data-v-13dc486c]{background:var(--color-primary);width:100%;color:var(--color-on-dark);border-radius:var(--rounded-full);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.875rem;font-size:1rem;font-weight:500;transition:all .3s;display:flex}.analyze-btn[data-v-13dc486c]:hover:not(:disabled){background:var(--color-primary-deep);transform:translateY(-2px);box-shadow:0 4px 12px #00ed644d}.analyze-btn[data-v-13dc486c]:disabled{opacity:.5;cursor:not-allowed}.analyze-btn.is-analyzing[data-v-13dc486c]{opacity:1;cursor:progress;background:var(--color-primary-deep);animation:1.4s ease-in-out infinite analyzePulse-13dc486c}@keyframes analyzePulse-13dc486c{0%,to{box-shadow:0 0 #70976673}50%{box-shadow:0 0 0 10px #70976600}}.analyze-btn svg[data-v-13dc486c]{width:1.125rem;height:1.125rem}.tips-section[data-v-13dc486c]{background:linear-gradient(135deg, var(--color-surface-feature) 0%, var(--color-brand-green-soft) 100%);border-radius:var(--rounded-lg);border:1px solid var(--color-hairline-soft);padding:1rem 1.25rem;position:relative;overflow:hidden}.tips-section[data-v-13dc486c]:before{content:"";background:linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary-deep) 100%);width:4px;position:absolute;top:0;bottom:0;left:0}.tips-list[data-v-13dc486c]{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.tip-item[data-v-13dc486c]{font-size:var(--typography-body-sm-size);color:var(--color-charcoal);align-items:center;gap:.625rem;line-height:1.5;display:flex}.tip-item svg[data-v-13dc486c]{width:1.125rem;height:1.125rem;color:var(--color-primary);flex-shrink:0}.error-message[data-v-13dc486c]{color:#f44336;font-size:var(--typography-body-sm-size);text-align:center;background:var(--color-semantic-warning-bg);border-radius:var(--rounded-sm);margin:0;padding:.75rem}.info-cards[data-v-13dc486c]{gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);margin-top:1rem;display:grid}.info-card[data-v-13dc486c]{background:var(--color-canvas);border:var(--card-base-border);border-radius:var(--rounded-md);text-align:center;padding:1rem;transition:all .3s}.info-card[data-v-13dc486c]:hover{box-shadow:var(--elevation-1);border-color:var(--color-primary);transform:translateY(-4px)}.card-icon[data-v-13dc486c]{background:linear-gradient(135deg, var(--color-surface-feature) 0%, var(--color-brand-green-soft) 100%);border-radius:50%;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;margin:0 auto .75rem;display:flex}.card-icon svg[data-v-13dc486c]{width:1.25rem;height:1.25rem;color:var(--color-primary)}.info-card h4[data-v-13dc486c]{font-size:var(--typography-body-sm-size);color:var(--color-ink);margin:0 0 .375rem;font-weight:600}.info-card p[data-v-13dc486c]{font-size:var(--typography-micro-size);color:var(--color-slate);margin:0;line-height:1.5}@media (width<=1400px){.content-wrapper[data-v-13dc486c]{max-height:260px}.camera-view[data-v-13dc486c],.camera-placeholder[data-v-13dc486c],.upload-area[data-v-13dc486c],.preview-area[data-v-13dc486c]{height:160px;max-height:160px}}@media (width<=1200px){.info-cards[data-v-13dc486c]{grid-template-columns:repeat(3,1fr);gap:.75rem}.info-card[data-v-13dc486c]{padding:.875rem}.card-icon[data-v-13dc486c]{width:2.25rem;height:2.25rem}}@media (width<=768px){.content-wrapper[data-v-13dc486c]{grid-template-columns:1fr;max-height:none}.camera-view[data-v-13dc486c],.camera-placeholder[data-v-13dc486c],.upload-area[data-v-13dc486c],.preview-area[data-v-13dc486c]{height:200px;max-height:200px}.tips-section[data-v-13dc486c]{padding:.625rem .875rem}.tips-list[data-v-13dc486c]{grid-template-columns:1fr;gap:.5rem}.info-cards[data-v-13dc486c]{grid-template-columns:1fr;gap:.75rem}}@media (width>=1600px){.content-wrapper[data-v-13dc486c]{max-height:320px}.camera-view[data-v-13dc486c],.camera-placeholder[data-v-13dc486c],.upload-area[data-v-13dc486c],.preview-area[data-v-13dc486c]{height:220px;max-height:220px}.info-cards[data-v-13dc486c]{gap:1.25rem}.info-card[data-v-13dc486c]{padding:1.25rem}}.analysis-display-container[data-v-3d01069b]{height:100%;padding:var(--spacing-lg);gap:var(--spacing-md);scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;display:flex;overflow-y:auto}.analysis-display-container[data-v-3d01069b]::-webkit-scrollbar{display:none}.loading-state[data-v-3d01069b]{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:480px;padding:3rem 2rem;animation:.4s ease-out fadeIn-3d01069b;display:flex}.loading-animation[data-v-3d01069b]{justify-content:center;align-items:center;width:5rem;height:5rem;margin-bottom:2rem;display:flex;position:relative}.loading-ring[data-v-3d01069b]{border:3px solid var(--color-surface-feature);border-top-color:var(--color-primary);border-radius:50%;animation:.9s linear infinite spin-3d01069b;position:absolute;inset:0}.loading-icon[data-v-3d01069b]{width:2rem;height:2rem;color:var(--color-primary);animation:1.5s ease-in-out infinite pulseScale-3d01069b}@keyframes spin-3d01069b{to{transform:rotate(360deg)}}@keyframes pulseScale-3d01069b{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.loading-title[data-v-3d01069b]{font-size:var(--typography-heading-4-size);color:var(--color-ink);margin:0 0 .5rem;font-weight:600}.loading-desc[data-v-3d01069b]{font-size:var(--typography-body-sm-medium-size);color:var(--color-slate);margin:0 0 2.5rem;line-height:1.6}.loading-steps[data-v-3d01069b]{gap:var(--spacing-md);flex-wrap:wrap;justify-content:center;max-width:420px;display:flex}.loading-step[data-v-3d01069b]{background:var(--color-surface-feature);border-radius:var(--rounded-full);font-size:var(--typography-body-sm-size);color:var(--color-primary-deep);align-items:center;gap:.5rem;padding:.625rem 1.125rem;font-weight:500;animation:.5s ease-out both stepFadeIn-3d01069b;display:flex}.loading-step[data-v-3d01069b]:first-child{animation-delay:.2s}.loading-step[data-v-3d01069b]:nth-child(2){animation-delay:.5s}.loading-step[data-v-3d01069b]:nth-child(3){animation-delay:.8s}.loading-step svg[data-v-3d01069b]{width:1rem;height:1rem;color:var(--color-primary)}@keyframes stepFadeIn-3d01069b{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.analysis-header[data-v-3d01069b]{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.analysis-header h2[data-v-3d01069b]{font-size:var(--typography-heading-5-size);color:var(--color-ink);margin:0;font-weight:600}.analysis-content[data-v-3d01069b]{gap:var(--spacing-md);flex-direction:column;display:flex}.result-layout[data-v-3d01069b]{gap:var(--spacing-md);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch;display:grid}.result-left[data-v-3d01069b]{gap:var(--spacing-md);flex-direction:column;min-width:0;display:flex}.result-right[data-v-3d01069b]{gap:var(--spacing-sm);flex-direction:column;min-width:0;display:flex}.tongue-image[data-v-3d01069b]{border-radius:var(--rounded-lg);background:var(--color-ink);aspect-ratio:4/3;border:1px solid var(--color-hairline-soft);width:100%;box-shadow:var(--elevation-1);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.tongue-image img[data-v-3d01069b]{object-fit:contain;width:100%;height:100%}.image-placeholder[data-v-3d01069b]{background:var(--color-surface);width:100%;height:100%;color:var(--color-steel);justify-content:center;align-items:center;gap:var(--spacing-sm);flex-direction:column;display:flex}.image-placeholder svg[data-v-3d01069b]{width:3rem;height:3rem;stroke:var(--color-steel)}.image-placeholder span[data-v-3d01069b]{font-size:var(--typography-body-md-size);font-weight:500}.annotation-mode[data-v-3d01069b]{border-radius:var(--rounded-sm);font-size:var(--typography-caption-size);color:var(--color-slate);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffff2;padding:.375rem .75rem;position:absolute;top:.75rem;right:.75rem}.score-cards[data-v-3d01069b]{flex-direction:column;gap:.5rem;display:flex}.score-card[data-v-3d01069b]{align-items:stretch;gap:var(--spacing-sm);background:var(--color-canvas);border:1px solid var(--color-hairline-soft);border-radius:var(--rounded-md);box-shadow:var(--elevation-1);opacity:0;padding:.625rem .875rem;transition:transform .25s,box-shadow .25s;animation:.6s forwards fadeInUp-3d01069b;display:flex}.score-card[data-v-3d01069b]:hover{box-shadow:var(--elevation-2);transform:translateY(-2px)}@keyframes fadeInUp-3d01069b{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.score-card-icon[data-v-3d01069b]{border-radius:var(--rounded-sm);background:var(--color-surface-feature);width:2.25rem;height:2.25rem;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.score-card-icon svg[data-v-3d01069b]{width:.875rem;height:.875rem}.score-card-body[data-v-3d01069b]{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.score-card-header[data-v-3d01069b]{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.score-label[data-v-3d01069b]{font-size:var(--typography-body-sm-medium-size);color:var(--color-slate);font-weight:500}.score-value[data-v-3d01069b]{font-size:var(--typography-heading-5-size);color:var(--color-ink);letter-spacing:-.02em;font-weight:700;line-height:1}.score-progress[data-v-3d01069b]{background:var(--color-surface-feature);border-radius:var(--rounded-full);width:100%;height:4px;overflow:hidden}.score-progress-bar[data-v-3d01069b]{border-radius:var(--rounded-full);height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.score-desc[data-v-3d01069b]{font-size:var(--typography-caption-size);color:var(--color-steel);font-weight:400}.syndrome-analysis[data-v-3d01069b]{background:var(--color-canvas);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-hairline-soft);border-radius:var(--rounded-md);box-shadow:var(--elevation-1);flex-direction:column;flex:1;min-height:0;display:flex}.diagnosis-highlight[data-v-3d01069b]{background:var(--color-brand-green-soft);border:1px solid var(--color-primary);border-radius:var(--rounded-md);padding:var(--spacing-sm) var(--spacing-md);box-shadow:var(--elevation-1)}.diagnosis-header[data-v-3d01069b]{font-size:var(--typography-body-sm-medium-size);color:var(--color-primary);align-items:center;gap:.5rem;margin-bottom:.5rem;font-weight:600;display:flex}.diagnosis-header svg[data-v-3d01069b]{width:1rem;height:1rem}.diagnosis-content[data-v-3d01069b]{font-size:var(--typography-body-sm-size);color:var(--color-ink);line-height:1.6}.analysis-details[data-v-3d01069b]{background:var(--color-canvas);border:1px solid var(--color-hairline-soft);border-radius:var(--rounded-md);padding:var(--spacing-sm) var(--spacing-md);box-shadow:var(--elevation-1);flex-direction:column;flex:1;min-height:0;display:flex}.details-title[data-v-3d01069b]{font-size:var(--typography-body-sm-medium-size);color:var(--color-ink);align-items:center;gap:.5rem;margin-bottom:.5rem;font-weight:600;display:flex}.details-title svg[data-v-3d01069b]{width:1rem;height:1rem;color:var(--color-primary)}.details-list[data-v-3d01069b]{scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;flex:1;gap:.5rem;display:flex;overflow-y:auto}.details-list[data-v-3d01069b]::-webkit-scrollbar{display:none}.detail-item[data-v-3d01069b]{border-bottom:1px solid var(--color-hairline-soft);flex-direction:column;gap:.25rem;padding:.5rem 0;display:flex}.detail-item[data-v-3d01069b]:last-child{border-bottom:none}.detail-label[data-v-3d01069b]{font-size:var(--typography-caption-size);color:var(--color-slate);align-items:center;gap:.375rem;font-weight:500;display:flex}.detail-label svg[data-v-3d01069b]{width:.75rem;height:.75rem;color:var(--color-primary)}.detail-content[data-v-3d01069b]{font-size:var(--typography-caption-size);color:var(--color-steel);line-height:1.5}.action-buttons[data-v-3d01069b]{gap:var(--spacing-sm);padding:var(--spacing-md) 0 var(--spacing-lg);display:flex}.action-btn[data-v-3d01069b]{background:var(--color-canvas);border:1px solid var(--color-primary);border-radius:var(--rounded-md);font-size:var(--typography-body-sm-medium-size);color:var(--color-primary);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-weight:500;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.action-btn[data-v-3d01069b]:hover{background:var(--color-primary);color:var(--color-on-primary);transform:translateY(-1px);box-shadow:0 4px 12px #3b5a3540}.action-btn[data-v-3d01069b]:active{transform:translateY(0)}.action-btn svg[data-v-3d01069b]{width:1rem;height:1rem}@media (width>=1920px){.analysis-display-container[data-v-3d01069b]{padding:var(--spacing-lg)}.tongue-image[data-v-3d01069b]{aspect-ratio:3/2}}@media (width<=1440px){.analysis-display-container[data-v-3d01069b]{padding:var(--spacing-sm)}.tongue-image[data-v-3d01069b]{aspect-ratio:4/3}}@media (width<=1024px){.result-layout[data-v-3d01069b]{grid-template-columns:1fr}.tongue-image[data-v-3d01069b]{aspect-ratio:16/9;flex:none;max-height:420px}}@media (width<=640px){.tongue-image[data-v-3d01069b]{aspect-ratio:4/3;max-height:360px}}.fade-slide-enter-active[data-v-3d01069b],.fade-slide-leave-active[data-v-3d01069b]{transition:all .3s}.fade-slide-enter-from[data-v-3d01069b]{opacity:0;transform:translateY(20px)}.fade-slide-leave-to[data-v-3d01069b]{opacity:0;transform:translateY(-20px)}.empty-state[data-v-3d01069b]{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:500px;padding:3rem 2rem;display:flex}.empty-illustration[data-v-3d01069b]{margin-bottom:2rem;animation:.8s ease-out floatUp-3d01069b}@keyframes floatUp-3d01069b{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.empty-svg[data-v-3d01069b]{width:200px;height:200px}.float-1[data-v-3d01069b]{animation:3s ease-in-out infinite float-3d01069b}.float-2[data-v-3d01069b]{animation:4s ease-in-out .5s infinite float-3d01069b}.float-3[data-v-3d01069b]{animation:3.5s ease-in-out 1s infinite float-3d01069b}@keyframes float-3d01069b{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-content[data-v-3d01069b]{max-width:480px;animation:.8s ease-out .2s both fadeIn-3d01069b}@keyframes fadeIn-3d01069b{0%{opacity:0}to{opacity:1}}.empty-title[data-v-3d01069b]{font-size:var(--typography-heading-3-size);color:var(--color-ink);margin:0 0 .75rem;font-weight:600}.empty-desc[data-v-3d01069b]{font-size:var(--typography-body-md-size);color:var(--color-slate);margin:0 0 2rem;line-height:1.6}.empty-tips[data-v-3d01069b]{text-align:left;flex-direction:column;gap:1rem;margin-bottom:2rem;display:flex}.tip-item[data-v-3d01069b]{align-items:center;gap:var(--spacing-sm);background:var(--color-brand-green-soft);border-radius:var(--rounded-md);border-left:3px solid var(--color-primary);padding:.875rem 1.25rem;transition:all .3s;display:flex}.tip-item[data-v-3d01069b]:hover{background:var(--color-surface-feature);transform:translate(4px)}.tip-item svg[data-v-3d01069b]{width:1.25rem;height:1.25rem;color:var(--color-primary);flex-shrink:0}.tip-item span[data-v-3d01069b]{font-size:var(--typography-body-sm-medium-size);color:var(--color-slate)}.empty-action[data-v-3d01069b]{justify-content:center;display:flex}.upload-guide-btn[data-v-3d01069b]{background:var(--color-canvas);color:var(--color-primary);border:2px solid var(--color-primary);border-radius:var(--rounded-full);font-size:var(--typography-body-sm-medium-size);cursor:pointer;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:500;transition:all .3s;display:inline-flex}.upload-guide-btn[data-v-3d01069b]:hover{background:var(--color-primary);color:var(--color-on-dark);transform:translateY(-2px);box-shadow:0 4px 12px #00ed644d}.upload-guide-btn svg[data-v-3d01069b]{width:1.125rem;height:1.125rem}@media (width<=768px){.empty-state[data-v-3d01069b]{min-height:400px;padding:2rem 1rem}.empty-illustration[data-v-3d01069b]{margin-bottom:1.5rem}.empty-svg[data-v-3d01069b]{width:150px;height:150px}.empty-title[data-v-3d01069b]{font-size:var(--typography-heading-4-size)}.empty-desc[data-v-3d01069b]{font-size:var(--typography-body-sm-medium-size)}.tip-item[data-v-3d01069b]{padding:.75rem 1rem}.tip-item span[data-v-3d01069b]{font-size:var(--typography-body-sm-size)}}.recommendation-panel[data-v-dce84011]{gap:var(--spacing-xl);padding:var(--spacing-lg);scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;height:100%;display:flex;overflow-y:auto}.recommendation-panel[data-v-dce84011]::-webkit-scrollbar{display:none}.diagnosis-section[data-v-dce84011]{background:var(--color-canvas);border:var(--card-base-border);border-radius:var(--rounded-lg);padding:var(--spacing-xl);flex-shrink:0}.section-header[data-v-dce84011]{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.header-left[data-v-dce84011]{align-items:center;gap:.5rem;display:flex}.header-left svg[data-v-dce84011]{width:1.5rem;height:1.5rem}.header-left span[data-v-dce84011]{font-size:var(--typography-heading-5-size);color:var(--color-ink);font-weight:600}.edit-btn[data-v-dce84011]{border-radius:var(--rounded-full);color:var(--color-primary);font-size:var(--typography-body-sm-size);cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;padding:.375rem .75rem;transition:all .2s;display:flex}.edit-btn[data-v-dce84011]:hover{color:var(--color-primary-deep)}.edit-btn svg[data-v-dce84011]{width:1rem;height:1rem}.diagnosis-content p[data-v-dce84011]{font-size:var(--typography-body-sm-size);color:var(--color-ink);margin:0;line-height:1.8}.recommendations-section[data-v-dce84011]{flex-direction:column;flex:1;min-height:0;display:flex}.section-title[data-v-dce84011]{font-size:var(--typography-heading-4-size);color:var(--color-ink);margin-bottom:var(--spacing-md);font-weight:600}.tabs[data-v-dce84011]{margin-bottom:var(--spacing-xl);border-bottom:2px solid var(--color-hairline-soft);gap:2rem;display:flex}.tab[data-v-dce84011]{font-size:var(--typography-body-sm-medium-size);color:var(--color-steel);cursor:pointer;padding:.5rem 0;transition:all .3s;position:relative}.tab.active[data-v-dce84011]{color:var(--color-primary);font-weight:500}.tab.active[data-v-dce84011]:after{content:"";background:var(--color-primary);height:2px;animation:.3s slideIn-dce84011;position:absolute;bottom:-2px;left:0;right:0}@keyframes slideIn-dce84011{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.recommendation-list[data-v-dce84011]{margin-bottom:var(--spacing-md);flex-direction:column;flex:1;gap:.625rem;display:flex}.recommendation-item[data-v-dce84011]{background:var(--color-canvas);border:1px solid var(--color-hairline-soft);border-left:3px solid var(--color-primary);border-radius:var(--rounded-md);opacity:0;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;transition:transform .2s,box-shadow .2s;animation:.5s forwards fadeInUp-dce84011;display:flex}.recommendation-item[data-v-dce84011]:hover{box-shadow:var(--elevation-1);transform:translate(2px)}@keyframes fadeInUp-dce84011{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-enter-active[data-v-dce84011],.fade-leave-active[data-v-dce84011]{transition:opacity .3s}.fade-enter-from[data-v-dce84011],.fade-leave-to[data-v-dce84011]{opacity:0}.item-number[data-v-dce84011]{background:var(--color-primary);width:1.5rem;height:1.5rem;color:var(--color-on-primary);font-size:var(--typography-caption-size);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:.125rem;font-weight:600;display:flex}.item-content[data-v-dce84011]{flex:1;min-width:0}.item-title[data-v-dce84011]{font-size:var(--typography-body-sm-medium-size);color:var(--color-ink);margin-bottom:.25rem;font-weight:600}.item-desc[data-v-dce84011]{font-size:var(--typography-caption-size);color:var(--color-slate);line-height:1.6}.history-btn[data-v-dce84011]{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-deep) 100%);width:100%;color:var(--color-on-primary);border-radius:var(--rounded-full);font-size:var(--typography-body-md-size);cursor:pointer;margin-bottom:var(--spacing-lg);border:none;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;padding:1rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 2px 8px #3b5a354d}.history-btn[data-v-dce84011]:before{content:"";pointer-events:none;background:linear-gradient(135deg,#0000 0%,#ffffff26 50%,#0000 100%);transition:transform .5s;position:absolute;inset:0;transform:translate(-100%)}.history-btn[data-v-dce84011]:hover{background:linear-gradient(135deg, var(--color-primary-deep) 0%, var(--color-primary-pressed) 100%);transform:translateY(-2px);box-shadow:0 6px 20px #3b5a3573}.history-btn[data-v-dce84011]:hover:before{transform:translate(100%)}.history-btn[data-v-dce84011]:active{transform:translateY(0)}.history-btn svg[data-v-dce84011]{width:1.125rem;height:1.125rem}.empty-recommendation[data-v-dce84011]{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:3rem 2rem;display:flex}.empty-icon[data-v-dce84011]{margin-bottom:2rem;animation:.6s ease-out fadeInScale-dce84011}@keyframes fadeInScale-dce84011{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.empty-icon svg[data-v-dce84011]{width:120px;height:120px}.twinkle-1[data-v-dce84011]{animation:2s ease-in-out infinite twinkle-dce84011}.twinkle-2[data-v-dce84011]{animation:2.5s ease-in-out .5s infinite twinkle-dce84011}.twinkle-3[data-v-dce84011]{animation:2.2s ease-in-out 1s infinite twinkle-dce84011}@keyframes twinkle-dce84011{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.5)}}.empty-title[data-v-dce84011]{font-size:var(--typography-heading-4-size);color:var(--color-ink);margin:0 0 .75rem;font-weight:600;animation:.6s ease-out .2s both fadeIn-dce84011}.empty-desc[data-v-dce84011]{font-size:var(--typography-body-sm-medium-size);color:var(--color-slate);margin:0 0 2rem;line-height:1.6;animation:.6s ease-out .3s both fadeIn-dce84011}@keyframes fadeIn-dce84011{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.empty-features[data-v-dce84011]{flex-direction:column;gap:1rem;width:100%;max-width:280px;display:flex}.feature-item[data-v-dce84011]{background:var(--color-brand-green-soft);border-radius:var(--rounded-md);border-left:3px solid var(--color-primary);align-items:center;gap:.75rem;padding:.875rem 1.25rem;animation:.5s ease-out both slideInRight-dce84011;display:flex}.feature-item[data-v-dce84011]:first-child{animation-delay:.4s}.feature-item[data-v-dce84011]:nth-child(2){animation-delay:.5s}.feature-item[data-v-dce84011]:nth-child(3){animation-delay:.6s}@keyframes slideInRight-dce84011{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.feature-item svg[data-v-dce84011]{width:1.125rem;height:1.125rem;color:var(--color-primary);flex-shrink:0}.feature-item span[data-v-dce84011]{font-size:var(--typography-body-sm-medium-size);color:var(--color-ink);font-weight:500}@media (width<=768px){.empty-recommendation[data-v-dce84011]{padding:2rem 1rem}.empty-icon svg[data-v-dce84011]{width:100px;height:100px}.empty-title[data-v-dce84011]{font-size:var(--typography-heading-5-size)}.empty-desc[data-v-dce84011]{font-size:var(--typography-body-sm-size)}.feature-item[data-v-dce84011]{padding:.75rem 1rem}}.tongue-view[data-v-b813b67d]{height:100%;padding:var(--spacing-lg);background:linear-gradient(180deg, var(--color-surface) 0%, var(--color-surface-soft) 100%);overflow-y:auto}.tongue-layout[data-v-b813b67d]{box-sizing:border-box;gap:var(--spacing-lg);grid-template-columns:1fr 22rem;height:100%;display:grid}.middle-panel[data-v-b813b67d],.right-panel[data-v-b813b67d]{scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;height:100%;min-height:0;display:flex;overflow-y:auto}.middle-panel[data-v-b813b67d]::-webkit-scrollbar{display:none}.right-panel[data-v-b813b67d]::-webkit-scrollbar{display:none}.middle-panel[data-v-b813b67d],.right-panel[data-v-b813b67d]{background:var(--color-canvas);border-radius:var(--rounded-lg);border:1px solid var(--color-hairline-soft);box-shadow:var(--elevation-1)}@media (width>=1920px){.tongue-layout[data-v-b813b67d]{gap:var(--spacing-xl);grid-template-columns:1fr 26rem}}@media (width>=1600px) and (width<=1919px){.tongue-layout[data-v-b813b67d]{gap:var(--spacing-lg);grid-template-columns:1fr 24rem}}@media (width<=1440px){.tongue-layout[data-v-b813b67d]{grid-template-columns:1fr 20rem}}@media (width<=1280px){.tongue-layout[data-v-b813b67d]{gap:var(--spacing-md);grid-template-columns:1fr 18rem}}@media (width<=1024px){.tongue-layout[data-v-b813b67d]{grid-template-rows:1fr auto;grid-template-columns:1fr;overflow-y:auto}.right-panel[data-v-b813b67d]{max-height:300px}}@media (width<=768px){.tongue-layout[data-v-b813b67d]{padding:0}.right-panel[data-v-b813b67d]{max-height:250px}}.medicine-upload-container[data-v-6c4633a3]{background:#fff;border-radius:.5rem;flex-direction:column;gap:1rem;height:100%;padding:1.5rem;display:flex;overflow-y:auto}.upload-header[data-v-6c4633a3]{text-align:center;border-bottom:2px solid #e8f5e9;padding-bottom:.75rem}.upload-header h2[data-v-6c4633a3]{color:#2e7d32;margin:0 0 .375rem;font-size:1.25rem;font-weight:600}.upload-subtitle[data-v-6c4633a3]{color:#666;margin:0;font-size:.8125rem;line-height:1.4}.content-wrapper[data-v-6c4633a3]{flex:1;grid-template-columns:1fr 1fr;gap:1rem;max-height:280px;display:grid}.left-section[data-v-6c4633a3],.right-section[data-v-6c4633a3]{flex-direction:column;gap:.625rem;display:flex}.section-label[data-v-6c4633a3]{color:#4caf50;align-items:center;gap:.5rem;margin-bottom:.375rem;font-size:.875rem;font-weight:600;display:flex}.section-label svg[data-v-6c4633a3]{width:1rem;height:1rem}.camera-placeholder[data-v-6c4633a3]{background:linear-gradient(135deg,#f0f9f0 0%,#e8f5e9 100%);border-radius:.75rem;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.625rem;height:180px;max-height:180px;display:flex;position:relative;overflow:hidden}.camera-placeholder[data-v-6c4633a3]:before{content:"";background:radial-gradient(circle,#4caf501a 0%,#0000 70%);width:200%;height:200%;animation:20s linear infinite rotate-6c4633a3;position:absolute;top:-50%;left:-50%}@keyframes rotate-6c4633a3{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.camera-icon-wrapper[data-v-6c4633a3]{z-index:1;justify-content:center;align-items:center;display:flex;position:relative}.pulse-ring[data-v-6c4633a3]{background:radial-gradient(circle,#4caf504d 0%,#4caf5000 70%);border-radius:50%;width:4.5rem;height:4.5rem;animation:2s ease-in-out infinite pulse-6c4633a3;position:absolute}@keyframes pulse-6c4633a3{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.3)}}.camera-text[data-v-6c4633a3]{color:#4caf50;z-index:1;margin:0;font-size:.8125rem;font-weight:500}.camera-actions[data-v-6c4633a3]{gap:.5rem;width:100%;display:flex}.capture-btn[data-v-6c4633a3]{color:#fff;cursor:pointer;background:#4caf50;border:none;border-radius:.5rem;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-size:.9375rem;font-weight:500;transition:all .3s;display:flex}.capture-btn.stop-camera[data-v-6c4633a3]{background:#f44336}.capture-btn.stop-camera[data-v-6c4633a3]:hover{background:#d32f2f}.capture-btn.start-camera[data-v-6c4633a3],.capture-btn.take-photo[data-v-6c4633a3]{background:#4caf50}.capture-btn[data-v-6c4633a3]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.capture-btn.stop-camera[data-v-6c4633a3]:hover:not(:disabled){box-shadow:0 4px 12px #f443364d}.capture-btn[data-v-6c4633a3]:disabled{opacity:.6;cursor:not-allowed}.capture-btn svg[data-v-6c4633a3]{width:1.125rem;height:1.125rem}.camera-view[data-v-6c4633a3]{background:#000;border-radius:.75rem;flex:1;width:100%;height:180px;max-height:180px;position:relative;overflow:hidden}.camera-view video[data-v-6c4633a3]{object-fit:contain;width:100%;height:100%;transform:scaleX(-1)}.camera-overlay[data-v-6c4633a3]{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.focus-guide[data-v-6c4633a3]{border:2px dashed #ffffffb3;border-radius:.5rem;width:70%;height:70%;margin-bottom:.5rem;position:relative;box-shadow:0 0 0 9999px #0006}.focus-guide[data-v-6c4633a3]:before,.focus-guide[data-v-6c4633a3]:after{content:"";background:#4caf50;position:absolute}.focus-guide[data-v-6c4633a3]:before{width:20px;height:2px;top:50%;left:50%;transform:translate(-50%,-50%)}.focus-guide[data-v-6c4633a3]:after{width:2px;height:20px;top:50%;left:50%;transform:translate(-50%,-50%)}.overlay-text[data-v-6c4633a3]{color:#fff;text-shadow:0 1px 4px #000c;background:#00000080;border-radius:1rem;margin:0;padding:.25rem .75rem;font-size:.8125rem;font-weight:500}.preview-area[data-v-6c4633a3]{background:#000;border:3px solid #4caf50;border-radius:.75rem;flex:1;width:100%;height:180px;max-height:180px;position:relative;overflow:hidden}.preview-area img[data-v-6c4633a3]{object-fit:contain;width:100%;height:100%}.preview-info[data-v-6c4633a3]{color:#fff;background:linear-gradient(#0000,#4caf50f2);justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-size:.875rem;font-weight:500;display:flex;position:absolute;bottom:0;left:0;right:0}.preview-info svg[data-v-6c4633a3]{width:1.125rem;height:1.125rem}.remove-btn[data-v-6c4633a3]{color:#fff;cursor:pointer;z-index:2;background:#000000b3;border:none;border-radius:50%;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;transition:all .3s;display:flex;position:absolute;top:.75rem;right:.75rem}.remove-btn[data-v-6c4633a3]:hover{background:#f44336f2;transform:scale(1.1)}.remove-btn svg[data-v-6c4633a3]{width:1.25rem;height:1.25rem}.upload-area[data-v-6c4633a3]{text-align:center;cursor:pointer;background:linear-gradient(135deg,#fafafa 0%,#f5f5f5 100%);border:2px dashed #4caf50;border-radius:.75rem;flex-direction:column;flex:1;justify-content:center;align-items:center;height:180px;max-height:180px;padding:1.5rem 1.25rem;transition:all .3s;display:flex}.upload-area[data-v-6c4633a3]:hover{background:linear-gradient(135deg,#f1f8e9 0%,#e8f5e9 100%);border-color:#388e3c;transform:translateY(-2px);box-shadow:0 4px 12px #4caf5026}.upload-icon-wrapper[data-v-6c4633a3]{background:#e8f5e9;border-radius:50%;margin-bottom:.625rem;padding:.75rem;display:inline-block}.upload-text[data-v-6c4633a3]{color:#333;margin:0 0 .5rem;font-size:1rem;font-weight:500}.upload-hint[data-v-6c4633a3]{color:#999;margin:0;font-size:.8125rem}.analyze-btn[data-v-6c4633a3]{color:#fff;cursor:pointer;background:#4caf50;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.875rem;font-size:1rem;font-weight:500;transition:all .3s;display:flex}.analyze-btn[data-v-6c4633a3]:hover:not(:disabled){background:#388e3c;transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.analyze-btn[data-v-6c4633a3]:disabled{opacity:.5;cursor:not-allowed}.analyze-btn svg[data-v-6c4633a3]{width:1.125rem;height:1.125rem}.tips-section[data-v-6c4633a3]{background:#f1f8e9;border-left:4px solid #4caf50;border-radius:.75rem;padding:1rem 1.25rem}.tips-list[data-v-6c4633a3]{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.tip-item[data-v-6c4633a3]{color:#555;align-items:center;gap:.625rem;font-size:.875rem;line-height:1.5;display:flex}.tip-item svg[data-v-6c4633a3]{color:#4caf50;flex-shrink:0;width:1.125rem;height:1.125rem}.error-message[data-v-6c4633a3]{color:#f44336;text-align:center;background:#ffebee;border-radius:.375rem;margin:0;padding:.75rem;font-size:.875rem}.info-cards[data-v-6c4633a3]{grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:.5rem;display:grid}.info-card[data-v-6c4633a3]{text-align:center;background:#fff;border:1px solid #e8f5e9;border-radius:.5rem;padding:1rem;transition:all .3s}.info-card[data-v-6c4633a3]:hover{border-color:#4caf50;transform:translateY(-4px);box-shadow:0 4px 12px #4caf5026}.card-icon[data-v-6c4633a3]{background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%);border-radius:50%;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;margin:0 auto .75rem;display:flex}.card-icon svg[data-v-6c4633a3]{color:#4caf50;width:1.25rem;height:1.25rem}.info-card h4[data-v-6c4633a3]{color:#333;margin:0 0 .375rem;font-size:.875rem;font-weight:600}.info-card p[data-v-6c4633a3]{color:#666;margin:0;font-size:.75rem;line-height:1.5}@media (width<=1400px){.content-wrapper[data-v-6c4633a3]{max-height:260px}.camera-view[data-v-6c4633a3],.camera-placeholder[data-v-6c4633a3],.upload-area[data-v-6c4633a3],.preview-area[data-v-6c4633a3]{height:160px;max-height:160px}}@media (width<=1200px){.info-cards[data-v-6c4633a3]{grid-template-columns:repeat(3,1fr);gap:.75rem}.info-card[data-v-6c4633a3]{padding:.875rem}.card-icon[data-v-6c4633a3]{width:2.25rem;height:2.25rem}}@media (width<=768px){.content-wrapper[data-v-6c4633a3]{grid-template-columns:1fr;max-height:none}.camera-view[data-v-6c4633a3],.camera-placeholder[data-v-6c4633a3],.upload-area[data-v-6c4633a3],.preview-area[data-v-6c4633a3]{height:200px;max-height:200px}.tips-list[data-v-6c4633a3]{grid-template-columns:1fr;gap:.5rem}.info-cards[data-v-6c4633a3]{grid-template-columns:1fr;gap:.75rem}}@media (width>=1600px){.content-wrapper[data-v-6c4633a3]{max-height:320px}.camera-view[data-v-6c4633a3],.camera-placeholder[data-v-6c4633a3],.upload-area[data-v-6c4633a3],.preview-area[data-v-6c4633a3]{height:220px;max-height:220px}.info-cards[data-v-6c4633a3]{gap:1.25rem}.info-card[data-v-6c4633a3]{padding:1.25rem}}.medicine-results[data-v-7697817b]{height:100%;padding:var(--spacing-lg);gap:var(--spacing-lg);scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;display:flex;overflow-y:auto}.medicine-results[data-v-7697817b]::-webkit-scrollbar{display:none}.result-content[data-v-7697817b]{gap:var(--spacing-md);flex-direction:column;display:flex}.result-header-section[data-v-7697817b]{gap:var(--spacing-xl);grid-template-columns:240px 1fr;align-items:start;display:grid}.medicine-image-wrapper[data-v-7697817b]{position:relative}.medicine-image[data-v-7697817b]{aspect-ratio:1;border-radius:var(--rounded-lg);background:var(--color-surface);border:1px solid var(--color-hairline-soft);width:100%;box-shadow:var(--elevation-2);justify-content:center;align-items:center;display:flex;overflow:hidden}.medicine-image img[data-v-7697817b]{object-fit:cover;width:100%;height:100%}.image-placeholder[data-v-7697817b]{background:var(--color-surface-feature);width:100%;height:100%;color:var(--color-steel);justify-content:center;align-items:center;gap:var(--spacing-sm);flex-direction:column;display:flex}.image-placeholder svg[data-v-7697817b]{width:2.5rem;height:2.5rem;color:var(--color-primary)}.image-placeholder span[data-v-7697817b]{font-size:var(--typography-caption-size);font-weight:500}.medicine-info-header[data-v-7697817b]{gap:var(--spacing-sm);flex-direction:column;display:flex}.name-row[data-v-7697817b]{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.herb-name[data-v-7697817b]{font-size:var(--typography-heading-3-size);color:var(--color-primary-deep);letter-spacing:-.01em;margin:0;font-weight:600}.confidence-tag[data-v-7697817b]{background:var(--color-surface-feature);color:var(--color-primary-deep);border-radius:var(--rounded-full);font-size:var(--typography-caption-size);white-space:nowrap;align-items:center;gap:.375rem;padding:.25rem .625rem;font-weight:600;display:inline-flex}.confidence-tag[data-v-7697817b]:before{content:"";background:var(--color-primary);border-radius:50%;width:.375rem;height:.375rem}.alias-tags[data-v-7697817b]{flex-wrap:wrap;gap:.375rem;display:flex}.alias-tag[data-v-7697817b]{background:var(--color-surface-soft);border:1px solid var(--color-hairline-soft);border-radius:var(--rounded-sm);font-size:var(--typography-caption-size);color:var(--color-slate);padding:.25rem .625rem;transition:all .2s}.alias-tag[data-v-7697817b]:hover{border-color:var(--color-hairline-strong);color:var(--color-ink);background:var(--color-canvas)}.properties-card[data-v-7697817b]{background:var(--color-surface-feature);border:1px solid var(--color-primary);border-left:3px solid var(--color-primary);border-radius:var(--rounded-sm);font-size:var(--typography-caption-size);color:var(--color-primary-deep);align-items:center;gap:.5rem;width:fit-content;padding:.625rem .875rem;font-weight:500;line-height:1.5;display:flex}.properties-icon[data-v-7697817b]{width:1rem;height:1rem;color:var(--color-primary);flex-shrink:0}.details-grid[data-v-7697817b]{gap:var(--spacing-sm);grid-template-columns:1fr 1fr;display:grid}.detail-card[data-v-7697817b]{background:var(--color-canvas);border:1px solid var(--color-hairline-soft);border-left:3px solid var(--color-primary);border-radius:var(--rounded-md);padding:var(--spacing-md) var(--spacing-lg);box-shadow:var(--elevation-1);flex-direction:column;gap:.5rem;transition:transform .25s,box-shadow .25s;display:flex}.detail-card[data-v-7697817b]:hover{box-shadow:var(--elevation-2);transform:translateY(-1px)}.card-header[data-v-7697817b]{align-items:center;gap:.5rem;display:flex}.card-header.warning .card-icon[data-v-7697817b]{color:#f57c00}.card-header.warning .card-title[data-v-7697817b]{color:#e65100}.card-icon[data-v-7697817b]{width:1rem;height:1rem;color:var(--color-primary);flex-shrink:0}.card-title[data-v-7697817b]{font-size:var(--typography-caption-bold-size);color:var(--color-ink);margin:0;font-weight:600}.card-text[data-v-7697817b]{font-size:var(--typography-caption-size);color:var(--color-slate);margin:0;line-height:1.6}.precaution-card[data-v-7697817b]{background:var(--color-semantic-warning-bg);border-color:#ffcc02 #ffcc02 #ffcc02 #f57c00}.precaution-card .card-text[data-v-7697817b]{color:var(--color-semantic-warning-text)}.action-bar[data-v-7697817b]{gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--color-hairline-soft);display:flex}.action-btn[data-v-7697817b]{border-radius:var(--rounded-md);font-size:var(--typography-body-sm-medium-size);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex}.action-btn.primary[data-v-7697817b]{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-deep) 100%);color:var(--color-on-primary);box-shadow:0 2px 8px #3b5a3540}.action-btn.primary[data-v-7697817b]:hover{transform:translateY(-1px);box-shadow:0 4px 16px #3b5a3559}.action-btn.primary[data-v-7697817b]:active{transform:translateY(0)}.action-btn svg[data-v-7697817b]{width:1rem;height:1rem}.loading-state[data-v-7697817b]{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:400px;padding:2.5rem 2rem;animation:.4s ease-out fadeIn-7697817b;display:flex}.loading-animation[data-v-7697817b]{justify-content:center;align-items:center;width:4rem;height:4rem;margin-bottom:1.5rem;display:flex;position:relative}.loading-ring[data-v-7697817b]{border:2.5px solid var(--color-surface-feature);border-top-color:var(--color-primary);border-radius:50%;animation:.9s linear infinite spin-7697817b;position:absolute;inset:0}.loading-icon[data-v-7697817b]{width:1.5rem;height:1.5rem;color:var(--color-primary);animation:1.5s ease-in-out infinite pulseScale-7697817b}@keyframes spin-7697817b{to{transform:rotate(360deg)}}@keyframes pulseScale-7697817b{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.loading-title[data-v-7697817b]{font-size:var(--typography-heading-5-size);color:var(--color-ink);margin:0 0 .375rem;font-weight:600}.loading-desc[data-v-7697817b]{font-size:var(--typography-body-sm-size);color:var(--color-slate);margin:0 0 2rem;line-height:1.5}.loading-steps[data-v-7697817b]{gap:var(--spacing-sm);flex-wrap:wrap;justify-content:center;max-width:400px;display:flex}.loading-step[data-v-7697817b]{background:var(--color-surface-feature);border-radius:var(--rounded-full);font-size:var(--typography-caption-size);color:var(--color-primary-deep);align-items:center;gap:.375rem;padding:.5rem .875rem;font-weight:500;animation:.5s ease-out both stepFadeIn-7697817b;display:flex}.loading-step[data-v-7697817b]:first-child{animation-delay:.2s}.loading-step[data-v-7697817b]:nth-child(2){animation-delay:.5s}.loading-step[data-v-7697817b]:nth-child(3){animation-delay:.8s}.loading-step svg[data-v-7697817b]{width:.875rem;height:.875rem;color:var(--color-primary)}@keyframes stepFadeIn-7697817b{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.error-state[data-v-7697817b]{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:360px;padding:2rem;animation:.4s ease-out fadeIn-7697817b;display:flex}.error-icon[data-v-7697817b]{width:3.5rem;height:3.5rem;color:var(--color-error);margin-bottom:1.25rem}.error-title[data-v-7697817b]{font-size:var(--typography-heading-5-size);color:var(--color-ink);margin:0 0 .375rem;font-weight:600}.error-desc[data-v-7697817b]{font-size:var(--typography-body-sm-size);color:var(--color-slate);margin:0;line-height:1.5}.empty-state[data-v-7697817b]{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:400px;padding:2.5rem 2rem;display:flex}.empty-illustration[data-v-7697817b]{margin-bottom:1.5rem;animation:.8s ease-out floatUp-7697817b}@keyframes floatUp-7697817b{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.empty-icon[data-v-7697817b]{width:4rem;height:4rem;color:var(--color-primary)}@keyframes fadeIn-7697817b{0%{opacity:0}to{opacity:1}}.empty-content[data-v-7697817b]{max-width:380px;animation:.8s ease-out .2s both fadeIn-7697817b}.empty-title[data-v-7697817b]{font-size:var(--typography-heading-5-size);color:var(--color-ink);margin:0 0 .5rem;font-weight:600}.empty-desc[data-v-7697817b]{font-size:var(--typography-body-sm-size);color:var(--color-slate);margin:0;line-height:1.5}.fade-slide-enter-active[data-v-7697817b],.fade-slide-leave-active[data-v-7697817b]{transition:all .3s}.fade-slide-enter-from[data-v-7697817b]{opacity:0;transform:translateY(20px)}.fade-slide-leave-to[data-v-7697817b]{opacity:0;transform:translateY(-20px)}@media (width>=1920px){.result-header-section[data-v-7697817b]{grid-template-columns:300px 1fr}.herb-name[data-v-7697817b]{font-size:var(--typography-heading-2-size)}}@media (width>=1200px) and (width<=1919px){.result-header-section[data-v-7697817b]{grid-template-columns:220px 1fr}}@media (width<=1024px){.result-header-section[data-v-7697817b]{grid-template-columns:1fr}.medicine-image-wrapper[data-v-7697817b]{max-width:320px;margin:0 auto}.details-grid[data-v-7697817b]{grid-template-columns:1fr}.precaution-card[data-v-7697817b]{grid-column:1/-1}}@media (width<=768px){.medicine-results[data-v-7697817b]{padding:var(--spacing-md);gap:var(--spacing-md)}.result-header-section[data-v-7697817b]{gap:var(--spacing-md)}.herb-name[data-v-7697817b]{font-size:var(--typography-heading-4-size)}.alias-tags[data-v-7697817b]{gap:.25rem}.alias-tag[data-v-7697817b]{padding:.125rem .5rem;font-size:.75rem}.details-grid[data-v-7697817b]{gap:var(--spacing-xs)}.detail-card[data-v-7697817b]{padding:var(--spacing-sm) var(--spacing-md)}.empty-state[data-v-7697817b]{min-height:320px;padding:1.5rem 1rem}.loading-state[data-v-7697817b]{min-height:300px;padding:1.5rem 1rem}}.medicine-atlas[data-v-b3d3cccc]{background:var(--color-surface);flex-direction:column;height:100%;display:flex;overflow:hidden}.atlas-header[data-v-b3d3cccc]{flex-shrink:0;align-items:flex-start;gap:.75rem;padding:1.25rem 1.25rem .75rem;display:flex}.header-icon-wrap[data-v-b3d3cccc]{background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%);border-radius:.625rem;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;margin-top:.125rem;display:flex}.header-icon-wrap svg[data-v-b3d3cccc]{color:#2e7d32;width:1.1rem;height:1.1rem}.header-text[data-v-b3d3cccc]{min-width:0}.section-title[data-v-b3d3cccc]{color:var(--color-ink);letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:700}.header-subtitle[data-v-b3d3cccc]{color:#5a8f5e;margin:.2rem 0 0;font-size:.8125rem;font-weight:500;line-height:1.4}.empty-notice[data-v-b3d3cccc]{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}.empty-visual[data-v-b3d3cccc]{background:linear-gradient(135deg,#e8f5e9 40%,#f1f8e9 100%);border-radius:50%;justify-content:center;align-items:center;width:5rem;height:5rem;margin-bottom:1.25rem;display:flex}.empty-icon[data-v-b3d3cccc]{color:#4caf50;opacity:.55;width:2rem;height:2rem}.empty-title[data-v-b3d3cccc]{color:#5a6d5e;margin:0 0 .375rem;font-size:.95rem;font-weight:600}.empty-desc[data-v-b3d3cccc]{color:#8a9b8d;margin:0;font-size:.8125rem;line-height:1.5}.atlas-content[data-v-b3d3cccc]{flex-direction:column;flex:1;gap:.875rem;padding:0 1.25rem 1.25rem;display:flex;overflow-y:auto}.atlas-content[data-v-b3d3cccc]::-webkit-scrollbar{width:4px}.atlas-content[data-v-b3d3cccc]::-webkit-scrollbar-thumb{background:#c8d6c9;border-radius:2px}.chart-card[data-v-b3d3cccc]{background:var(--color-canvas);border:1px solid #e8efe8;border-radius:.75rem;padding:1rem .75rem}.chart-empty[data-v-b3d3cccc]{text-align:center;color:#8a9b8d;justify-content:center;align-items:center;gap:.5rem;padding:1.5rem;font-size:.8125rem;display:flex}.empty-chart-icon[data-v-b3d3cccc]{color:#a5c8a7;width:1rem;height:1rem}.chart-grid[data-v-b3d3cccc]{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.chart-item[data-v-b3d3cccc]{flex:none}.ring-wrap[data-v-b3d3cccc]{width:5rem;height:5rem}.ring-wrap svg[data-v-b3d3cccc]{width:100%;height:100%}.progress-ring[data-v-b3d3cccc]{filter:drop-shadow(0 2px 4px #0000001a);transition:stroke-dasharray .8s cubic-bezier(.4,0,.2,1)}.warn-card[data-v-b3d3cccc]{background:#fffbf8;border:1px solid #fce4d6;border-radius:.75rem;padding:.875rem 1rem}.warn-title[data-v-b3d3cccc]{color:#e65100;align-items:center;gap:.5rem;margin-bottom:.625rem;font-size:.875rem;font-weight:700;display:flex}.warn-title svg[data-v-b3d3cccc]{width:.9rem;height:.9rem}.warn-list[data-v-b3d3cccc]{flex-wrap:wrap;gap:.375rem;display:flex}.warn-tag[data-v-b3d3cccc]{border-radius:.375rem;align-items:center;padding:.3rem .7rem;font-size:.75rem;font-weight:500;line-height:1.4;transition:transform .15s;display:inline-flex}.warn-tag[data-v-b3d3cccc]:hover{transform:translateY(-1px)}.warn-tag.danger[data-v-b3d3cccc]{color:#b71c1c;background:#ffebee;border:1px solid #ffcdd2}.warn-tag.caution[data-v-b3d3cccc]{color:#bf5b00;background:#fff3e0;border:1px solid #ffe0b2}.warn-tag.severe[data-v-b3d3cccc]{color:#880e4f;background:#fce4ec;border:1px solid #f8bbd0}.warn-tag.info[data-v-b3d3cccc]{color:#33691e;background:#f1f8e9;border:1px solid #dcedc8}.info-card[data-v-b3d3cccc]{background:var(--color-canvas);border:1px solid #e8efe8;border-radius:.75rem;padding:.875rem 1rem}.info-title[data-v-b3d3cccc]{color:#2e5a32;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;font-weight:700;display:flex}.info-title svg[data-v-b3d3cccc]{color:#4caf50;width:.9rem;height:.9rem}.info-text[data-v-b3d3cccc]{color:#4a5c4d;margin:0;font-size:.8125rem;line-height:1.7}.dosage-text[data-v-b3d3cccc]{color:#2e5a32;background:#f1f8e9;border-radius:.5rem;padding:.5rem .75rem;font-weight:600}.history-list-component[data-v-76144d7b]{background:var(--color-canvas);border-radius:var(--rounded-lg);border:var(--card-base-border);flex-direction:column;height:100%;padding:1rem;display:flex}.history-header[data-v-76144d7b]{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.history-header h3[data-v-76144d7b]{color:var(--v01bfa34d);margin:0;font-size:.875rem;font-weight:500}.refresh-btn[data-v-76144d7b]{color:var(--v01bfa34d);cursor:pointer;background:0 0;border:none;padding:.25rem;transition:all .3s}.refresh-btn[data-v-76144d7b]:hover{opacity:.7;transform:rotate(180deg)}.refresh-btn svg[data-v-76144d7b]{width:1rem;height:1rem}.loading-state[data-v-76144d7b],.error-state[data-v-76144d7b],.empty-state[data-v-76144d7b]{color:var(--color-steel);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:2rem 1rem;font-size:.875rem;display:flex}.loading-state svg[data-v-76144d7b],.error-state svg[data-v-76144d7b],.empty-state svg[data-v-76144d7b]{width:2rem;height:2rem;color:var(--color-muted)}.spinner[data-v-76144d7b]{border:3px solid var(--color-hairline-soft);border-top:3px solid var(--v01bfa34d);border-radius:50%;width:2rem;height:2rem;animation:1s linear infinite spin-76144d7b}@keyframes spin-76144d7b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-state[data-v-76144d7b],.error-state svg[data-v-76144d7b]{color:#f44336}.retry-btn[data-v-76144d7b]{background:var(--v01bfa34d);color:var(--color-on-dark);border-radius:var(--rounded-full);cursor:pointer;border:none;margin-top:.5rem;padding:.375rem 1rem;font-size:.8125rem;transition:all .3s}.retry-btn[data-v-76144d7b]:hover{opacity:.8}.history-items[data-v-76144d7b]{flex:1;min-height:0;margin-bottom:.75rem;overflow-y:auto}.history-item[data-v-76144d7b]{border-bottom:1px solid var(--color-hairline-soft);cursor:pointer;border-left:3px solid #0000;border-radius:.25rem;justify-content:space-between;align-items:center;gap:.5rem;padding:.625rem .5rem;transition:all .3s;display:flex}.item-content[data-v-76144d7b]{flex:1;min-width:0}.delete-icon-btn[data-v-76144d7b]{color:var(--color-muted);cursor:pointer;border-radius:var(--rounded-full);opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:.25rem;transition:all .3s;display:flex}.history-item:hover .delete-icon-btn[data-v-76144d7b]{opacity:1}.delete-icon-btn[data-v-76144d7b]:hover{color:#ff4d4f;background:#fff1f0}.delete-icon-btn svg[data-v-76144d7b]{width:1.125rem;height:1.125rem}.history-item[data-v-76144d7b]:hover{background:var(--color-surface)}.history-item.is-selected[data-v-76144d7b]{background-color:var(--v40af2110);border-left:3px solid var(--v01bfa34d)}.history-item[data-v-76144d7b]:last-child{border-bottom:none}.item-date[data-v-76144d7b]{color:var(--color-steel);margin-bottom:.25rem;font-size:.75rem}.item-name[data-v-76144d7b]{color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.25rem;font-size:.8125rem;font-weight:500;overflow:hidden}.item-confidence[data-v-76144d7b]{color:var(--v01bfa34d);font-size:.75rem}.view-all-btn[data-v-76144d7b]{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--rounded-full);width:100%;color:var(--color-slate);cursor:pointer;flex-shrink:0;padding:.5rem;font-size:.8125rem;transition:all .3s}.view-all-btn[data-v-76144d7b]:hover{background:var(--color-surface);border-color:var(--v01bfa34d);color:var(--v01bfa34d)}.history-items[data-v-76144d7b]::-webkit-scrollbar{width:.25rem}.history-items[data-v-76144d7b]::-webkit-scrollbar-track{background:0 0}.history-items[data-v-76144d7b]::-webkit-scrollbar-thumb{background:var(--color-hairline-strong);border-radius:.125rem}.history-items[data-v-76144d7b]::-webkit-scrollbar-thumb:hover{background:var(--color-stone)}.medicine-view[data-v-88023d5e]{background:#f5f5f5;flex-direction:column;height:calc(100vh - 3rem);display:flex;overflow:hidden}.medicine-layout[data-v-88023d5e]{box-sizing:border-box;flex:1;grid-template-columns:18rem 1fr 22rem;gap:1rem;height:100%;padding:1rem;display:grid}.left-panel[data-v-88023d5e],.middle-panel[data-v-88023d5e],.right-panel[data-v-88023d5e]{flex-direction:column;height:100%;display:flex;overflow-y:auto}.middle-panel[data-v-88023d5e]{gap:1rem}@media (width>=1920px){.medicine-layout[data-v-88023d5e]{grid-template-columns:20rem 1fr 26rem;gap:1.5rem;padding:1.5rem}}@media (width>=1600px) and (width<=1919px){.medicine-layout[data-v-88023d5e]{grid-template-columns:19rem 1fr 24rem;gap:1.25rem}}@media (width<=1440px){.medicine-layout[data-v-88023d5e]{grid-template-columns:16rem 1fr 20rem}}@media (width<=1280px){.medicine-layout[data-v-88023d5e]{grid-template-columns:15rem 1fr 18rem;gap:.875rem}}@media (width<=1024px){.medicine-layout[data-v-88023d5e]{grid-template-rows:auto 1fr auto;grid-template-columns:1fr;overflow-y:auto}.left-panel[data-v-88023d5e],.right-panel[data-v-88023d5e]{max-height:300px}}@media (width<=768px){.medicine-layout[data-v-88023d5e]{gap:.75rem;padding:.75rem}.left-panel[data-v-88023d5e],.right-panel[data-v-88023d5e]{max-height:250px}}.upload-card[data-v-21f0c7dc]{background:#fff;border-radius:.5rem;padding:1.5rem}.card-header[data-v-21f0c7dc]{color:#4caf50;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.875rem;font-weight:500;display:flex}.card-header svg[data-v-21f0c7dc]{width:1.25rem;height:1.25rem}.preview-area[data-v-21f0c7dc]{background:#000;border-radius:.5rem;width:100%;height:280px;margin-bottom:1rem;position:relative;overflow:hidden}.preview-area img[data-v-21f0c7dc]{object-fit:contain;width:100%;height:100%}.result-image[data-v-21f0c7dc]{margin-top:0;margin-bottom:1rem}.remove-btn[data-v-21f0c7dc]{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;transition:all .3s;display:flex;position:absolute;top:.5rem;right:.5rem}.remove-btn[data-v-21f0c7dc]:hover{background:#f44336e6;transform:scale(1.1)}.remove-btn svg[data-v-21f0c7dc]{width:1.25rem;height:1.25rem}.upload-area[data-v-21f0c7dc]{text-align:center;cursor:pointer;border:2px dashed #4caf50;border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;height:280px;margin-bottom:1rem;padding:2rem 1rem;transition:all .3s;display:flex}.upload-area[data-v-21f0c7dc]:hover{background:#e8f5e9;border-color:#388e3c}.upload-icon[data-v-21f0c7dc]{color:#4caf50;width:3rem;height:3rem;margin:0 auto 1rem}.upload-text[data-v-21f0c7dc]{color:#666;margin:0 0 .5rem;font-size:.875rem}.upload-hint[data-v-21f0c7dc]{color:#999;margin:0 0 .25rem;font-size:.75rem}.upload-size[data-v-21f0c7dc]{color:#999;margin:0;font-size:.75rem}.upload-actions[data-v-21f0c7dc]{gap:.5rem;display:flex}.upload-btn[data-v-21f0c7dc]{color:#666;cursor:pointer;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:.375rem;flex:1;justify-content:center;align-items:center;gap:.375rem;padding:.625rem;font-size:.8125rem;transition:all .3s;display:flex}.upload-btn[data-v-21f0c7dc]:hover:not(:disabled){background:#eee}.upload-btn.primary[data-v-21f0c7dc],.upload-btn.capture-camera[data-v-21f0c7dc]{color:#fff;background:#4caf50;border-color:#4caf50}.upload-btn.primary[data-v-21f0c7dc]:hover:not(:disabled),.upload-btn.capture-camera[data-v-21f0c7dc]:hover:not(:disabled){background:#388e3c}.upload-btn.cancel-camera[data-v-21f0c7dc]{color:#fff;background:#f44336;border-color:#f44336}.upload-btn.cancel-camera[data-v-21f0c7dc]:hover{background:#d32f2f}.upload-btn[data-v-21f0c7dc]:disabled{opacity:.5;cursor:not-allowed}.upload-btn svg[data-v-21f0c7dc]{width:1rem;height:1rem}.camera-view[data-v-21f0c7dc]{background:#000;border:2px solid #4caf50;border-radius:.5rem;width:100%;height:280px;margin-bottom:1rem;position:relative;overflow:hidden}.camera-view video[data-v-21f0c7dc]{object-fit:contain;width:100%;height:100%}.camera-overlay[data-v-21f0c7dc]{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.focus-guide[data-v-21f0c7dc]{border:2px dashed #ffffffb3;border-radius:.5rem;width:80%;height:80%;margin-bottom:1rem;position:relative;box-shadow:0 0 0 9999px #0006}.overlay-text[data-v-21f0c7dc]{color:#fff;text-shadow:0 1px 4px #000c;background:#00000080;border-radius:1rem;margin:0;padding:.375rem 1rem;font-size:.875rem;font-weight:500}.upload-error[data-v-21f0c7dc]{color:#f44336;text-align:center;margin-top:.5rem;font-size:.75rem}.result-view[data-v-21f0c7dc]{flex-direction:column;gap:1rem;display:flex}.result-header[data-v-21f0c7dc]{border-bottom:2px solid #e0e0e0;justify-content:space-between;align-items:center;padding-bottom:1rem;display:flex}.result-title[data-v-21f0c7dc]{color:#4caf50;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;display:flex}.result-title svg[data-v-21f0c7dc]{width:1.25rem;height:1.25rem}.reupload-btn[data-v-21f0c7dc]{color:#4caf50;cursor:pointer;background:#fff;border:1px solid #4caf50;border-radius:.375rem;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.8125rem;transition:all .3s;display:flex}.reupload-btn[data-v-21f0c7dc]:hover{color:#fff;background:#4caf50}.reupload-btn svg[data-v-21f0c7dc]{width:1rem;height:1rem}.result-confidence[data-v-21f0c7dc]{color:#666;text-align:center;background:#e8f5e9;border-radius:.375rem;padding:.75rem 1rem;font-size:.875rem}.result-content[data-v-21f0c7dc]{flex-direction:column;gap:1rem;display:flex}.result-item[data-v-21f0c7dc]{flex-direction:column;gap:.5rem;display:flex}.item-label[data-v-21f0c7dc]{color:#4caf50;font-size:.8125rem;font-weight:600}.item-value[data-v-21f0c7dc]{color:#333;background:#fafafa;border-left:3px solid #4caf50;border-radius:.375rem;padding:.75rem;font-size:.875rem;line-height:1.6}.manual-input-card[data-v-9dfb8d68]{background:var(--color-canvas);border-radius:var(--rounded-lg);border:1px solid var(--color-hairline-soft);box-shadow:var(--elevation-1);padding:var(--spacing-lg)}.card-header[data-v-9dfb8d68]{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-surface-feature);display:flex;position:relative}.card-header[data-v-9dfb8d68]:after{content:"";background:linear-gradient(90deg, var(--color-primary) 0%, transparent 100%);width:60px;height:2px;position:absolute;bottom:-2px;left:0}.header-icon[data-v-9dfb8d68]{border-radius:var(--rounded-md);background:var(--color-surface-feature);width:2.25rem;height:2.25rem;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.header-icon svg[data-v-9dfb8d68]{width:1.1rem;height:1.1rem}.header-text[data-v-9dfb8d68]{flex-direction:column;gap:2px;min-width:0;display:flex}.header-title[data-v-9dfb8d68]{font-size:var(--typography-body-md-size);color:var(--color-primary);margin:0;font-weight:600;line-height:1.3}.header-subtitle[data-v-9dfb8d68]{font-size:var(--typography-caption-size);color:var(--color-slate);margin:0;line-height:1.4}.form-section[data-v-9dfb8d68],.form-section[data-v-9dfb8d68]:last-of-type{margin-bottom:var(--spacing-md)}.section-header[data-v-9dfb8d68]{align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);display:flex}.section-icon[data-v-9dfb8d68]{width:.85rem;height:.85rem;color:var(--color-primary)}.section-title[data-v-9dfb8d68]{font-size:var(--typography-body-sm-medium-size);color:var(--color-ink);font-weight:600}.section-hint[data-v-9dfb8d68]{font-size:var(--typography-micro-size);color:var(--color-slate);opacity:.85;margin-left:auto}.input-section[data-v-9dfb8d68]{margin-bottom:var(--spacing-sm)}.input-label[data-v-9dfb8d68]{font-size:var(--typography-micro-size);color:var(--color-slate);margin-bottom:var(--spacing-xs);font-weight:500;display:block}.required-mark[data-v-9dfb8d68]{color:#d64545;margin-left:2px}.input-field[data-v-9dfb8d68]{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:var(--text-input-border);border-radius:var(--text-input-radius);height:var(--text-input-height);font-size:var(--typography-caption-size);box-sizing:border-box;background:var(--color-canvas);color:var(--color-ink);outline:none;transition:all .25s}.input-field[data-v-9dfb8d68]::placeholder,.textarea-field[data-v-9dfb8d68]::placeholder{color:var(--color-slate);opacity:.55}.input-field[data-v-9dfb8d68]:hover{border-color:var(--color-primary)}.input-field[data-v-9dfb8d68]:focus{border:var(--text-input-focus-border);box-shadow:0 0 0 3px #7097661f}.herb-list[data-v-9dfb8d68]{gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);flex-direction:column;display:flex}.herb-row[data-v-9dfb8d68]{align-items:center;gap:var(--spacing-xs);display:flex}.herb-index[data-v-9dfb8d68]{border-radius:var(--rounded-full);background:var(--color-primary);width:1.5rem;height:1.5rem;color:var(--color-canvas);font-size:var(--typography-micro-size);flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.herb-name[data-v-9dfb8d68]{flex:1;min-width:0}.amount-wrapper[data-v-9dfb8d68]{flex-shrink:0;width:4.5rem;position:relative}.herb-amount[data-v-9dfb8d68]{text-align:left;padding-right:1.5rem}.amount-unit[data-v-9dfb8d68]{right:var(--spacing-sm);font-size:var(--typography-micro-size);color:var(--color-slate);pointer-events:none;font-weight:500;position:absolute;top:50%;transform:translateY(-50%)}.remove-herb-btn[data-v-9dfb8d68]{width:1.75rem;height:1.75rem;color:var(--color-hairline-strong);cursor:pointer;border-radius:var(--rounded-full);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex}.remove-herb-btn svg[data-v-9dfb8d68]{width:1.1rem;height:1.1rem;transition:all .2s}.remove-herb-btn[data-v-9dfb8d68]:hover{color:#d64545;background:#d6454514;transform:scale(1.08)}.remove-herb-btn[data-v-9dfb8d68]:active{transform:scale(.95)}.add-btn[data-v-9dfb8d68]{justify-content:center;align-items:center;gap:var(--spacing-xs);width:100%;padding:var(--spacing-sm);background:var(--color-canvas);border:1px dashed var(--color-hairline);border-radius:var(--rounded-full);font-size:var(--typography-body-sm-size);color:var(--color-primary);cursor:pointer;font-weight:500;transition:all .25s;display:flex}.add-btn[data-v-9dfb8d68]:hover{background:var(--color-surface-feature);border-color:var(--color-primary);color:var(--color-primary-deep);transform:translateY(-1px)}.add-btn svg[data-v-9dfb8d68]{width:1rem;height:1rem}.textarea-field[data-v-9dfb8d68]{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:var(--text-input-border);border-radius:var(--text-input-radius);font-size:var(--typography-caption-size);resize:vertical;box-sizing:border-box;background:var(--color-canvas);color:var(--color-ink);outline:none;font-family:inherit;line-height:1.5;transition:all .25s}.textarea-field[data-v-9dfb8d68]:hover{border-color:var(--color-primary)}.textarea-field[data-v-9dfb8d68]:focus{border:var(--text-input-focus-border);box-shadow:0 0 0 3px #7097661f}.submit-btn[data-v-9dfb8d68]{justify-content:center;align-items:center;gap:var(--spacing-xs);width:100%;padding:var(--spacing-sm) var(--spacing-md);height:var(--text-input-height);background:var(--color-primary);border-radius:var(--rounded-full);font-size:var(--typography-body-sm-medium-size);color:var(--color-canvas);cursor:pointer;border:none;font-weight:600;transition:all .25s;display:flex;box-shadow:0 4px 12px #70976640}.submit-btn[data-v-9dfb8d68]:hover{background:var(--color-primary-deep);transform:translateY(-2px);box-shadow:0 6px 16px #70976659}.submit-btn[data-v-9dfb8d68]:active{background:var(--color-primary-pressed);transform:translateY(0);box-shadow:0 2px 6px #70976633}.submit-btn svg[data-v-9dfb8d68]{width:1rem;height:1rem}.detail-container[data-v-5e4de3b0]{gap:var(--spacing-md);flex-direction:column;display:flex}.detail-card[data-v-5e4de3b0]{background:var(--color-canvas);border-radius:var(--rounded-lg);padding:var(--spacing-lg);border:1px solid var(--color-hairline-soft);box-shadow:var(--elevation-1)}.card-header[data-v-5e4de3b0]{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);color:var(--color-primary);font-size:var(--typography-body-md-size);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-surface-feature);font-weight:600;display:flex;position:relative}.card-header[data-v-5e4de3b0]:after{content:"";background:linear-gradient(90deg, var(--color-primary) 0%, transparent 100%);width:60px;height:2px;position:absolute;bottom:-2px;left:0}.card-header.warning[data-v-5e4de3b0]{color:var(--color-primary)}.header-icon[data-v-5e4de3b0]{flex-shrink:0;width:1.25rem;height:1.25rem}.herb-carousel[data-v-5e4de3b0]{text-align:left}.herb-image[data-v-5e4de3b0]{object-fit:cover;border-radius:var(--rounded-md);width:100%;height:12.5rem;margin-bottom:var(--spacing-md)}.herb-info[data-v-5e4de3b0]{margin-bottom:var(--spacing-md)}.herb-name[data-v-5e4de3b0]{font-size:var(--typography-body-md-medium-size);color:var(--color-ink);margin:0 0 var(--spacing-xxs) 0;font-weight:600}.herb-latin[data-v-5e4de3b0]{font-size:var(--typography-caption-size);color:var(--color-steel);margin:0 0 var(--spacing-sm) 0;font-style:italic}.herb-meta[data-v-5e4de3b0]{gap:var(--spacing-xxs);flex-direction:column;display:flex}.herb-meta p[data-v-5e4de3b0]{font-size:var(--typography-caption-size);color:var(--color-slate);align-items:center;gap:.375rem;margin:0;display:flex}.meta-icon[data-v-5e4de3b0]{width:.875rem;height:.875rem;color:var(--color-primary);flex-shrink:0}.herb-index-info[data-v-5e4de3b0]{color:var(--color-steel)!important}.carousel-controls[data-v-5e4de3b0]{justify-content:center;align-items:center;gap:var(--spacing-md);padding-top:var(--spacing-xs);display:flex}.carousel-btn[data-v-5e4de3b0]{background:var(--color-surface-feature);border-radius:var(--rounded-full);cursor:pointer;border:none;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.carousel-btn[data-v-5e4de3b0]:hover{background:var(--color-primary);transform:scale(1.1)}.carousel-btn:hover svg[data-v-5e4de3b0]{color:var(--color-on-primary)}.carousel-btn svg[data-v-5e4de3b0]{width:1.125rem;height:1.125rem;color:var(--color-primary)}.carousel-dots[data-v-5e4de3b0]{gap:var(--spacing-xs);align-items:center;display:flex}.dot[data-v-5e4de3b0]{background:var(--color-hairline);cursor:pointer;border-radius:50%;width:.5rem;height:.5rem;transition:all .3s}.dot.active[data-v-5e4de3b0]{background:var(--color-primary);border-radius:var(--rounded-xs);width:1.5rem}.info-list[data-v-5e4de3b0]{margin:0 0 var(--spacing-lg) 0;padding:0;list-style:none}.info-item[data-v-5e4de3b0]{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;font-size:var(--typography-body-sm-size);display:flex}.info-item.success[data-v-5e4de3b0]{color:var(--color-primary)}.item-icon[data-v-5e4de3b0]{flex-shrink:0;width:1.125rem;height:1.125rem}.subsection[data-v-5e4de3b0]{margin-bottom:var(--spacing-md)}.subsection[data-v-5e4de3b0]:last-child{margin-bottom:0}.subsection-title[data-v-5e4de3b0]{font-size:var(--typography-body-sm-size);color:var(--color-ink);margin:0 0 var(--spacing-sm) 0;font-weight:600}.warning-points[data-v-5e4de3b0]{margin:0;padding:0;list-style:none}.warning-points li[data-v-5e4de3b0]{padding:var(--spacing-xxs) 0;padding-left:var(--spacing-lg);font-size:var(--typography-caption-size);color:var(--color-primary);line-height:1.5;position:relative}.warning-points li[data-v-5e4de3b0]:before{content:"●";font-size:var(--typography-micro-uppercase-size);position:absolute;top:.5rem;left:0}.recommendation-section[data-v-5e4de3b0]{margin-bottom:var(--spacing-lg)}.recommendation-section[data-v-5e4de3b0]:last-child{margin-bottom:0}.rec-title[data-v-5e4de3b0]{font-size:var(--typography-body-sm-size);color:var(--color-ink);margin:0 0 var(--spacing-sm) 0;font-weight:600}.rec-list[data-v-5e4de3b0]{margin:0;padding:0;list-style:none}.rec-list li[data-v-5e4de3b0]{padding:var(--spacing-xxs) 0;padding-left:var(--spacing-lg);font-size:var(--typography-caption-size);color:var(--color-primary);line-height:1.5;position:relative}.rec-list li[data-v-5e4de3b0]:before{content:"●";font-size:var(--typography-micro-uppercase-size);position:absolute;top:.5rem;left:0}.info-text[data-v-5e4de3b0]{font-size:var(--typography-body-sm-size);color:var(--color-slate);margin:var(--spacing-xs) 0;line-height:1.6}.empty-hint[data-v-5e4de3b0]{font-size:var(--typography-caption-size);color:var(--color-muted);margin-top:var(--spacing-xs)}.subsection-icon[data-v-5e4de3b0]{width:.875rem;height:.875rem;color:var(--color-primary);flex-shrink:0;margin-right:.25rem}.detail-empty[data-v-5e4de3b0]{flex-direction:column;gap:3.5px;display:flex}.guide-card[data-v-5e4de3b0]{background:var(--color-canvas);border-radius:var(--rounded-md);padding:var(--spacing-lg);border:var(--card-base-border)}.intro-card[data-v-5e4de3b0]{background:var(--color-surface-feature);border:1px solid var(--color-primary)}.guide-header[data-v-5e4de3b0]{text-align:center;margin-bottom:var(--spacing-sm);flex-direction:column;align-items:center;display:flex}.icon-wrapper[data-v-5e4de3b0]{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-deep) 100%);width:4rem;height:4rem;margin-bottom:var(--spacing-sm);border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 12px #00ed644d}.guide-icon[data-v-5e4de3b0]{width:2rem;height:2rem;color:var(--color-on-dark)}.guide-header h3[data-v-5e4de3b0]{font-size:var(--typography-heading-4-size);color:var(--color-ink);margin:0 0 var(--spacing-xs) 0;font-weight:600}.guide-desc[data-v-5e4de3b0]{font-size:var(--typography-caption-size);color:var(--color-slate);text-align:center;margin:0;line-height:1.6}.card-title[data-v-5e4de3b0]{align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-md);color:var(--color-primary);font-size:var(--typography-body-sm-medium-size);font-weight:600;display:flex}.card-title svg[data-v-5e4de3b0]{flex-shrink:0;width:1.125rem;height:1.125rem}.steps-list[data-v-5e4de3b0]{gap:var(--spacing-md);flex-direction:column;display:flex}.step-item[data-v-5e4de3b0]{align-items:flex-start;gap:var(--spacing-sm);display:flex}.step-number[data-v-5e4de3b0]{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-deep) 100%);width:2rem;height:2rem;color:var(--color-on-dark);font-size:var(--typography-body-sm-size);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex;box-shadow:0 2px 8px #00ed6440}.step-content h4[data-v-5e4de3b0]{font-size:var(--typography-body-sm-size);color:var(--color-ink);margin:0 0 var(--spacing-xxs) 0;font-weight:600}.step-content p[data-v-5e4de3b0]{font-size:var(--typography-caption-size);color:var(--color-slate);margin:0;line-height:1.5}.features-list[data-v-5e4de3b0]{gap:var(--spacing-sm);flex-direction:column;display:flex}.feature-item[data-v-5e4de3b0]{align-items:center;gap:var(--spacing-sm);font-size:var(--typography-caption-size);color:var(--color-steel);padding:var(--spacing-xs);background:var(--color-surface-soft);border-radius:var(--rounded-sm);transition:all .3s;display:flex}.feature-item[data-v-5e4de3b0]:hover{background:var(--color-surface-feature);transform:translate(4px)}.feature-item svg[data-v-5e4de3b0]{width:1.125rem;height:1.125rem;color:var(--color-primary);flex-shrink:0}.tips-card[data-v-5e4de3b0]{background:var(--color-surface-feature);border:1px solid var(--color-primary)}.tips-list[data-v-5e4de3b0]{gap:var(--spacing-sm);flex-direction:column;display:flex}.tip-item[data-v-5e4de3b0]{align-items:center;gap:var(--spacing-sm);font-size:var(--typography-caption-size);color:var(--color-brand-green-dark);padding:var(--spacing-xs);border-radius:var(--rounded-sm);background:#ffffffb3;display:flex}.tip-item svg[data-v-5e4de3b0]{width:1.125rem;height:1.125rem;color:var(--color-primary);flex-shrink:0}@media (width<=1400px){.guide-card[data-v-5e4de3b0]{padding:var(--spacing-md)}.steps-list[data-v-5e4de3b0],.features-list[data-v-5e4de3b0],.tips-list[data-v-5e4de3b0]{gap:var(--spacing-sm)}}@media (width<=1200px){.icon-wrapper[data-v-5e4de3b0]{width:3.5rem;height:3.5rem}.guide-icon[data-v-5e4de3b0]{width:1.75rem;height:1.75rem}.guide-header h3[data-v-5e4de3b0]{font-size:var(--typography-heading-5-size)}.step-number[data-v-5e4de3b0]{width:1.75rem;height:1.75rem;font-size:var(--typography-caption-size)}}@media (width<=768px){.detail-empty[data-v-5e4de3b0]{gap:var(--spacing-sm)}.guide-card[data-v-5e4de3b0]{padding:var(--spacing-sm)}.card-title[data-v-5e4de3b0]{font-size:var(--typography-body-sm-size)}}@media (width>=1600px){.guide-card[data-v-5e4de3b0]{padding:var(--spacing-xl)}.icon-wrapper[data-v-5e4de3b0]{width:4.5rem;height:4.5rem}.guide-icon[data-v-5e4de3b0]{width:2.25rem;height:2.25rem}.steps-list[data-v-5e4de3b0]{gap:var(--spacing-lg)}}.prescription-view[data-v-95a84055]{height:100%;padding:var(--spacing-lg);background:linear-gradient(180deg, var(--color-surface) 0%, var(--color-surface-soft) 100%);flex-direction:column;display:flex;overflow:hidden}.prescription-layout[data-v-95a84055]{box-sizing:border-box;gap:var(--spacing-lg);flex:1;grid-template-columns:1fr 22rem;min-height:0;display:grid;overflow:hidden}.center-panel[data-v-95a84055]{gap:var(--spacing-lg);scrollbar-width:none;-ms-overflow-style:none;background:var(--color-canvas);border-radius:var(--rounded-lg);border:1px solid var(--color-hairline-soft);min-height:0;box-shadow:var(--elevation-1);padding:var(--spacing-md);flex-direction:column;display:flex;overflow-y:auto}.right-panel[data-v-95a84055]{scrollbar-width:none;-ms-overflow-style:none;background:var(--color-canvas);border-radius:var(--rounded-lg);border:1px solid var(--color-hairline-soft);min-height:0;box-shadow:var(--elevation-1);padding:var(--spacing-md);flex-shrink:0;overflow-y:auto}.center-panel[data-v-95a84055]::-webkit-scrollbar{width:0;height:0;display:none}.right-panel[data-v-95a84055]::-webkit-scrollbar{width:0;height:0;display:none}.bottom-actions[data-v-95a84055]{justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);background:var(--color-canvas);border:1px solid var(--color-hairline-soft);border-radius:var(--rounded-lg);box-shadow:var(--elevation-2);margin-top:var(--spacing-md);flex-shrink:0;display:flex}.action-btn[data-v-95a84055]{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--rounded-full);font-size:var(--typography-body-sm-size);color:var(--color-slate);cursor:pointer;font-weight:500;transition:all .25s;display:flex;position:relative;overflow:hidden}.action-btn[data-v-95a84055]:before{content:"";pointer-events:none;background:linear-gradient(135deg,#0000 0%,#ffffff1f 50%,#0000 100%);transition:transform .5s;position:absolute;inset:0;transform:translate(-100%)}.action-btn[data-v-95a84055]:hover{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 6px 16px #3b5a3559}.action-btn[data-v-95a84055]:hover:before{transform:translate(100%)}.action-btn[data-v-95a84055]:active{box-shadow:none;transform:translateY(0)}.action-btn svg[data-v-95a84055]{width:1.125rem;height:1.125rem;transition:transform .25s}.action-btn:hover svg[data-v-95a84055]{transform:scale(1.1)}@media (width<=1024px){.prescription-layout[data-v-95a84055]{grid-template-columns:1fr}.right-panel[data-v-95a84055]{max-height:300px}.bottom-actions[data-v-95a84055]{gap:var(--spacing-md);flex-wrap:wrap}.action-btn[data-v-95a84055]{flex:1;min-width:calc(50% - .375rem)}}@media (width<=768px){.prescription-layout[data-v-95a84055]{padding:var(--spacing-md);gap:var(--spacing-md)}.bottom-actions[data-v-95a84055]{padding:var(--spacing-md)}.action-btn[data-v-95a84055]{justify-content:center;min-width:100%}}@media (width>=1600px){.prescription-layout[data-v-95a84055]{grid-template-columns:1fr 24rem}}.history-view[data-v-3d80a3d7]{height:100%;padding:var(--spacing-xl);background:var(--color-surface);box-sizing:border-box;overflow-y:auto}.login-tip-container[data-v-3d80a3d7]{justify-content:center;align-items:center;min-height:100%;padding:2rem;display:flex}.login-tip[data-v-3d80a3d7]{background:var(--color-canvas);text-align:center;border:var(--card-base-border);border-radius:16px;max-width:500px;padding:3rem}.tip-icon[data-v-3d80a3d7]{color:var(--color-primary);justify-content:center;align-items:center;margin-bottom:1.5rem;font-size:48px;animation:2s infinite bounce-3d80a3d7;display:flex}.tip-icon[data-v-3d80a3d7] .svg-inline--fa{width:48px;height:48px}@keyframes bounce-3d80a3d7{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.tip-title[data-v-3d80a3d7]{color:var(--color-ink);margin:0 0 1rem;font-size:24px;font-weight:600}.tip-text[data-v-3d80a3d7]{color:var(--color-slate);margin:0;font-size:15px;line-height:1.6}.search-section[data-v-3d80a3d7]{width:100%;max-width:56rem;margin:0 auto 1.5rem}.search-box[data-v-3d80a3d7]{background:var(--color-canvas);border-radius:var(--text-input-radius);border:var(--text-input-border);height:var(--text-input-height);align-items:center;gap:.75rem;padding:.75rem 1.25rem;display:flex}.search-box svg[data-v-3d80a3d7]{width:1.25rem;height:1.25rem;color:var(--color-steel);flex-shrink:0}.search-box input[data-v-3d80a3d7]{color:var(--color-ink);border:none;outline:none;flex:1;min-width:0;font-size:.9375rem}.search-box input[data-v-3d80a3d7]::placeholder{color:var(--color-steel)}.category-tabs[data-v-3d80a3d7]{flex-wrap:wrap;gap:.75rem;width:100%;max-width:56rem;margin:0 auto 1.5rem;display:flex}.tab-btn[data-v-3d80a3d7]{background:var(--color-canvas);border:1px solid var(--color-hairline);color:var(--color-slate);border-radius:var(--rounded-full);cursor:pointer;white-space:nowrap;padding:.5rem 1.25rem;font-size:.875rem;transition:all .3s}.tab-btn[data-v-3d80a3d7]:hover{border-color:var(--color-primary);color:var(--color-primary)}.tab-btn.active[data-v-3d80a3d7]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.list-header[data-v-3d80a3d7]{justify-content:space-between;align-items:center;width:100%;max-width:56rem;margin:0 auto 1rem;display:flex}.year-title[data-v-3d80a3d7]{color:var(--color-steel);margin:0;font-size:.875rem;font-weight:500}.clear-btn[data-v-3d80a3d7]{background:var(--color-canvas);color:#ff4d4f;border-radius:var(--rounded-full);cursor:pointer;border:1px solid #ff4d4f;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;transition:all .3s;display:flex}.clear-btn[data-v-3d80a3d7]:hover{color:#fff;background:#ff4d4f}.clear-btn svg[data-v-3d80a3d7]{width:1rem;height:1rem}.item-actions[data-v-3d80a3d7]{align-items:center;gap:.75rem;display:flex}.delete-btn[data-v-3d80a3d7]{color:var(--color-muted);cursor:pointer;border-radius:var(--rounded-full);background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;transition:all .3s;display:flex}.delete-btn[data-v-3d80a3d7]:hover{color:#ff4d4f;background:#fff1f0}.delete-btn svg[data-v-3d80a3d7]{width:1.125rem;height:1.125rem}.history-list[data-v-3d80a3d7]{flex-direction:column;gap:1rem;width:100%;max-width:56rem;margin:0 auto;display:flex}.history-item[data-v-3d80a3d7]{background:var(--color-canvas);border:var(--card-base-border);cursor:pointer;border-radius:.5rem;gap:1rem;padding:1.25rem;transition:all .3s;display:flex}.history-item[data-v-3d80a3d7]:hover{box-shadow:var(--elevation-2);transform:translateY(-2px)}.history-item.is-selected[data-v-3d80a3d7]{border-left:4px solid var(--color-primary);background:linear-gradient(to right, #00ed6414, var(--color-canvas))}.item-icon[data-v-3d80a3d7]{border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;width:3rem;height:3rem;display:flex}.item-avatar[data-v-3d80a3d7]{background-color:var(--color-surface-soft);border-radius:.5rem;flex-shrink:0;width:3rem;height:3rem;overflow:hidden}.item-avatar img[data-v-3d80a3d7]{object-fit:cover;width:100%;height:100%}.item-icon svg[data-v-3d80a3d7]{color:#fff;width:1.5rem;height:1.5rem}.item-content[data-v-3d80a3d7]{flex:1;min-width:0}.item-header[data-v-3d80a3d7]{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem;display:flex}.item-title[data-v-3d80a3d7]{color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;font-size:1rem;font-weight:600;overflow:hidden}.item-date[data-v-3d80a3d7]{color:var(--color-steel);white-space:nowrap;font-size:.8125rem}.item-description[data-v-3d80a3d7]{color:var(--color-slate);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .75rem;font-size:.875rem;line-height:1.6;display:-webkit-box;overflow:hidden}.attachments[data-v-3d80a3d7]{flex-wrap:wrap;gap:.75rem;display:flex}.attachment-item[data-v-3d80a3d7]{background:var(--color-surface);border-radius:.375rem;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.file-icon[data-v-3d80a3d7]{background:#ff6b6b;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.file-icon span[data-v-3d80a3d7]{color:#fff;font-size:.625rem;font-weight:700}.file-info[data-v-3d80a3d7]{flex-direction:column;gap:.125rem;min-width:0;display:flex}.file-name[data-v-3d80a3d7]{color:var(--color-ink);font-size:.8125rem;font-weight:500}.file-size[data-v-3d80a3d7]{color:var(--color-steel);font-size:.75rem}@media (width>=1920px){.history-view[data-v-3d80a3d7]{padding:2rem}.search-section[data-v-3d80a3d7],.category-tabs[data-v-3d80a3d7],.list-header[data-v-3d80a3d7],.history-list[data-v-3d80a3d7]{max-width:70rem}}@media (width<=768px){.history-view[data-v-3d80a3d7]{padding:1rem}.history-item[data-v-3d80a3d7]{flex-direction:column}.item-header[data-v-3d80a3d7]{flex-direction:column;gap:.5rem}.item-date[data-v-3d80a3d7]{align-self:flex-start}}.library-header[data-v-346a7b3c]{background:var(--color-surface);padding:1rem}.header-content[data-v-346a7b3c]{justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;display:flex}.search-section[data-v-346a7b3c]{flex:1;align-items:center;gap:.75rem;max-width:600px;display:flex}.search-input[data-v-346a7b3c]{border:none;border-radius:4px;outline:none;flex:1;padding:.625rem 1rem;font-size:.875rem}.search-btn[data-v-346a7b3c]{background:var(--color-primary-deep);color:#fff;border-radius:var(--rounded-full);cursor:pointer;border:none;padding:.625rem 1.25rem;font-size:.875rem;transition:background .3s}.search-btn[data-v-346a7b3c]:hover{background:var(--color-primary-pressed)}.sort-section[data-v-346a7b3c]{align-items:center;gap:.5rem;display:flex}.sort-label[data-v-346a7b3c]{font-size:.875rem}.sort-select[data-v-346a7b3c]{background:var(--color-primary-deep);color:#fff;border:none;border-radius:4px;outline:none;padding:.5rem;font-size:.875rem}@media (width<=768px){.header-content[data-v-346a7b3c]{flex-direction:column;align-items:stretch;gap:1rem}.search-section[data-v-346a7b3c]{max-width:none}.sort-section[data-v-346a7b3c]{justify-content:flex-end}}.category-sidebar[data-v-6f6cabef]{background:var(--color-canvas);min-width:20vh;box-shadow:var(--elevation-1);border-radius:.5rem;flex-shrink:0;overflow:hidden}.sidebar-title[data-v-6f6cabef]{color:var(--color-ink);border-bottom:1px solid var(--color-hairline-soft);padding:1rem;font-size:1rem;font-weight:500}.category-list[data-v-6f6cabef]{padding:.5rem 0}.category-item[data-v-6f6cabef]{cursor:pointer;justify-content:space-between;align-items:center;padding:.75rem 1rem;font-size:.875rem;transition:all .2s;display:flex}.category-item[data-v-6f6cabef]:hover{background:var(--color-surface)}.category-item.active[data-v-6f6cabef]{background:var(--color-surface-feature);color:var(--color-primary)}.category-name[data-v-6f6cabef]{flex:1}.category-count[data-v-6f6cabef]{color:var(--color-steel);font-size:.75rem}.category-item.active .category-count[data-v-6f6cabef]{color:var(--color-brand-green-mid)}@media (width<=1200px){.category-sidebar[data-v-6f6cabef]{width:100%;margin-bottom:1rem}.category-list[data-v-6f6cabef]{flex-wrap:wrap;padding:.5rem;display:flex}.category-item[data-v-6f6cabef]{border-radius:4px;flex:0 0 calc(50% - .5rem);margin:.25rem;padding:.5rem}}@media (width<=768px){.category-item[data-v-6f6cabef]{flex:0 0 calc(33.333% - .5rem)}}.book-card[data-v-1783b733]{background:var(--color-canvas);border:var(--card-base-border);cursor:pointer;border-radius:.5rem;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .22s,border-color .22s;overflow:hidden}.book-card[data-v-1783b733]:hover{box-shadow:var(--elevation-3);border-color:var(--color-brand-green-soft);transform:translateY(-4px)}.book-cover[data-v-1783b733]{background:var(--color-surface);height:200px;position:relative;overflow:hidden}.cover-image[data-v-1783b733]{object-fit:cover;width:100%;height:100%;transition:transform .4s}.book-card:hover .cover-image[data-v-1783b733]{transform:scale(1.05)}.book-icon[data-v-1783b733]{width:48px;height:48px;color:var(--color-primary);background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.book-icon svg[data-v-1783b733]{width:24px;height:24px}.book-info[data-v-1783b733]{padding:1rem}.book-title[data-v-1783b733]{color:var(--color-ink);margin:0 0 .5rem;font-size:1rem;font-weight:500}.book-category[data-v-1783b733]{color:var(--color-brand-green-mid);margin-bottom:.75rem;font-size:.75rem}.book-rating[data-v-1783b733]{margin-bottom:.75rem}.stars[data-v-1783b733]{gap:2px;display:flex}.star[data-v-1783b733]{color:var(--color-hairline);font-size:.875rem}.star.filled[data-v-1783b733]{color:#ffc107}.read-progress[data-v-1783b733]{margin-bottom:1rem}.progress-bar[data-v-1783b733]{background:var(--color-surface-soft);border-radius:2px;height:4px;overflow:hidden}.progress-fill[data-v-1783b733]{background:var(--color-primary);border-radius:2px;height:100%;transition:width .3s}.book-actions[data-v-1783b733]{align-items:center;gap:.75rem;display:flex}.read-btn[data-v-1783b733]{background:var(--color-primary);color:#fff;border-radius:var(--rounded-full);cursor:pointer;border:none;flex:1;padding:.5rem;font-size:.875rem;transition:background-color .18s,transform .18s,box-shadow .18s}.read-btn[data-v-1783b733]:hover{background:var(--color-primary-deep);transform:translateY(-1px);box-shadow:0 4px 10px #00ed644d}.read-btn[data-v-1783b733]:active{transform:translateY(0)}.action-icons[data-v-1783b733]{gap:.5rem;display:flex}.action-btn[data-v-1783b733]{background:var(--color-surface);border-radius:var(--rounded-full);cursor:pointer;width:28px;height:28px;color:var(--color-steel);border:none;justify-content:center;align-items:center;transition:background-color .18s,color .18s,transform .18s;display:flex}.action-btn[data-v-1783b733]:hover{background:var(--color-hairline);color:var(--color-slate);transform:scale(1.1)}.action-btn.active[data-v-1783b733]{background:var(--color-surface-feature);color:var(--color-primary)}.action-btn.active[data-v-1783b733]:hover{background:var(--color-brand-green-soft);color:var(--color-brand-green-dark)}.action-btn[data-v-1783b733] .svg-inline--fa{width:16px;height:16px}.book-list[data-v-3f28371e]{flex:1;min-height:0}.books-grid[data-v-3f28371e]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.loading-container[data-v-3f28371e]{flex-direction:column;justify-content:center;align-items:center;gap:1rem;height:300px;display:flex}.loading-spinner[data-v-3f28371e]{border:3px solid var(--color-hairline-soft);border-top:3px solid var(--color-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin-3f28371e}@keyframes spin-3f28371e{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text[data-v-3f28371e]{color:var(--color-slate);font-size:.875rem}.empty-container[data-v-3f28371e]{flex-direction:column;justify-content:center;align-items:center;gap:1rem;height:300px;display:flex}.empty-icon[data-v-3f28371e]{width:64px;height:64px;color:var(--color-hairline);justify-content:center;align-items:center;display:flex}.empty-icon[data-v-3f28371e] .svg-inline--fa{width:48px;height:48px}.empty-text[data-v-3f28371e]{color:var(--color-steel);font-size:1rem}@media (width<=768px){.books-grid[data-v-3f28371e]{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}}@media (width<=480px){.books-grid[data-v-3f28371e]{grid-template-columns:1fr}}.pagination[data-v-f68da13b]{align-items:center;gap:.5rem;display:flex}.page-btn[data-v-f68da13b]{background:var(--color-surface-soft);border-radius:var(--rounded-full);cursor:pointer;color:var(--color-slate);border:none;justify-content:center;align-items:center;padding:.5rem;transition:all .3s;display:flex}.page-btn[data-v-f68da13b]:hover:not(:disabled){background:var(--color-hairline);color:var(--color-ink)}.page-btn[data-v-f68da13b]:disabled{opacity:.5;cursor:not-allowed}.page-numbers[data-v-f68da13b]{gap:.25rem;display:flex}.page-number[data-v-f68da13b]{background:var(--color-surface-soft);border-radius:var(--rounded-full);cursor:pointer;color:var(--color-slate);border:none;padding:.5rem .75rem;font-size:.875rem;transition:all .3s}.page-number[data-v-f68da13b]:hover{background:var(--color-hairline);color:var(--color-ink)}.page-number.active[data-v-f68da13b]{background:var(--color-primary);color:#fff}.library-view[data-v-7b1e8ba2]{background:var(--color-surface);min-height:calc(100vh - 3rem)}.login-tip-container[data-v-7b1e8ba2]{justify-content:center;align-items:center;min-height:calc(100vh - 3rem);padding:2rem;display:flex}.login-tip[data-v-7b1e8ba2]{background:var(--color-canvas);text-align:center;border:var(--card-base-border);border-radius:16px;max-width:500px;padding:3rem}.tip-icon[data-v-7b1e8ba2]{color:var(--color-primary);justify-content:center;align-items:center;margin-bottom:1.5rem;font-size:48px;animation:2s infinite bounce-7b1e8ba2;display:flex}.tip-icon[data-v-7b1e8ba2] .svg-inline--fa{width:48px;height:48px}@keyframes bounce-7b1e8ba2{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.tip-title[data-v-7b1e8ba2]{color:var(--color-ink);margin:0 0 1rem;font-size:24px;font-weight:600}.tip-text[data-v-7b1e8ba2]{color:var(--color-slate);margin:0;font-size:15px;line-height:1.6}.library-content[data-v-7b1e8ba2]{gap:1rem;min-height:100vh;padding:1rem;display:flex}.library-main[data-v-7b1e8ba2]{flex-direction:column;flex:1;min-height:0;display:flex}.library-footer[data-v-7b1e8ba2]{background:var(--color-canvas);box-shadow:var(--elevation-1);color:var(--color-slate);border-radius:.5rem;justify-content:space-between;align-items:flex-start;margin-top:1.5rem;padding:1rem;font-size:.875rem;display:flex}.pagination-container[data-v-7b1e8ba2]{flex:1}.stats-container[data-v-7b1e8ba2]{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}@media (width<=1200px){.library-content[data-v-7b1e8ba2]{flex-direction:column}}@media (width<=768px){.library-footer[data-v-7b1e8ba2]{flex-direction:column;align-items:flex-start;gap:1rem}.stats-container[data-v-7b1e8ba2]{align-items:flex-start}}.book-view[data-v-a50cf610]{background:var(--color-canvas);min-height:calc(100vh - 3rem)}.book-header[data-v-a50cf610]{border-bottom:1px solid var(--color-hairline);color:#fff;align-items:center;padding:1rem;display:flex}.back-btn[data-v-a50cf610]{color:#000;cursor:pointer;border-radius:var(--rounded-full);background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem 1rem;transition:background-color .3s;display:flex}.back-btn[data-v-a50cf610]:hover{background:#fff3}.back-btn svg[data-v-a50cf610]{width:1.25rem;height:1.25rem}.book-title[data-v-a50cf610]{text-align:center;flex:1}.book-title h1[data-v-a50cf610]{margin:0;font-size:1.5rem;font-weight:600}.book-content[data-v-a50cf610]{gap:2rem;min-height:0;padding:2rem;display:flex}.book-info[data-v-a50cf610]{flex:1;gap:2rem;min-height:0;display:flex}.book-cover[data-v-a50cf610]{width:200px;height:280px;box-shadow:var(--elevation-2);border-radius:.5rem;flex-shrink:0;overflow:hidden}.book-cover img[data-v-a50cf610]{object-fit:cover;width:100%;height:100%}.book-meta[data-v-a50cf610]{flex:1;min-height:0}.book-meta h2[data-v-a50cf610]{color:var(--color-ink);margin:0 0 .5rem;font-size:1.75rem;font-weight:600}.book-subtitle[data-v-a50cf610]{color:var(--color-slate);margin:0 0 1rem;font-size:1.125rem}.book-author[data-v-a50cf610],.book-era[data-v-a50cf610],.book-category[data-v-a50cf610],.book-words[data-v-a50cf610]{color:var(--color-slate);margin:.5rem 0;font-size:.875rem}.book-rating[data-v-a50cf610]{align-items:center;gap:.5rem;margin:1rem 0;display:flex}.rating-stars[data-v-a50cf610]{color:#ffc107}.rating-stars svg[data-v-a50cf610]{fill:currentColor;width:1rem;height:1rem}.rating-score[data-v-a50cf610]{color:var(--color-ink);font-size:1.125rem;font-weight:600}.rating-count[data-v-a50cf610]{color:var(--color-steel);font-size:.875rem}.book-actions[data-v-a50cf610]{flex-wrap:wrap;gap:1rem;margin:1.5rem 0;display:flex}.action-btn[data-v-a50cf610]{border:1px solid var(--color-hairline);border-radius:var(--rounded-full);background:var(--color-canvas);cursor:pointer;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.875rem;transition:all .3s;display:flex}.action-btn[data-v-a50cf610]:hover{background:var(--color-surface);box-shadow:var(--elevation-2);transform:translateY(-2px)}.action-btn svg[data-v-a50cf610]{width:1rem;height:1rem}.action-btn.add-bookshelf[data-v-a50cf610]{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.action-btn.add-bookshelf[data-v-a50cf610]:hover{background:var(--color-primary-deep);box-shadow:0 2px 8px #4caf504d}.action-btn.start-reading[data-v-a50cf610]{color:#fff;background:#2196f3;border-color:#2196f3}.action-btn.start-reading[data-v-a50cf610]:hover{background:#0b7dda;box-shadow:0 2px 8px #2196f34d}.book-description[data-v-a50cf610]{margin:2rem 0}.book-description h3[data-v-a50cf610]{color:var(--color-ink);margin:0 0 1rem;font-size:1.125rem;font-weight:600}.book-description p[data-v-a50cf610]{color:var(--color-slate);margin:0;font-size:.875rem;line-height:1.6}.book-tags[data-v-a50cf610]{margin:2rem 0}.book-tags h3[data-v-a50cf610]{color:var(--color-ink);margin:0 0 1rem;font-size:1.125rem;font-weight:600}.tags[data-v-a50cf610]{flex-wrap:wrap;gap:.5rem;display:flex}.tag[data-v-a50cf610]{background:var(--color-surface-feature);color:var(--color-primary);border-radius:1rem;padding:.25rem .75rem;font-size:.75rem}.book-sidebar[data-v-a50cf610]{flex-direction:column;flex-shrink:0;gap:2rem;width:320px;display:flex}.book-outline[data-v-a50cf610]{background:var(--color-surface);border:var(--card-base-border);border-radius:.5rem;padding:1.5rem}.book-outline h3[data-v-a50cf610]{color:var(--color-ink);margin:0 0 1rem;font-size:1.125rem;font-weight:600}.outline-list[data-v-a50cf610]{color:var(--color-slate);font-size:.875rem}.outline-item[data-v-a50cf610]{margin-bottom:1rem}.outline-title[data-v-a50cf610]{color:var(--color-ink);margin-bottom:.5rem;font-weight:600}.outline-chapters[data-v-a50cf610]{flex-direction:column;gap:.25rem;margin-left:1rem;display:flex}.outline-chapter[data-v-a50cf610]{color:var(--color-slate);font-size:.8125rem}.outline-more[data-v-a50cf610]{color:var(--color-primary);cursor:pointer;text-align:center;margin-top:1rem;font-size:.8125rem}.outline-more[data-v-a50cf610]:hover{text-decoration:underline}.book-notes[data-v-a50cf610]{background:var(--color-surface);border:var(--card-base-border);border-radius:.5rem;padding:1.5rem}.book-notes h3[data-v-a50cf610]{color:var(--color-ink);justify-content:space-between;align-items:center;margin:0 0 .5rem;font-size:1.125rem;font-weight:600;display:flex}.notes-count[data-v-a50cf610]{color:var(--color-steel);font-size:.75rem;font-weight:400}.notes-list[data-v-a50cf610]{margin-top:1rem}.note-item[data-v-a50cf610]{border-bottom:1px solid var(--color-hairline);margin-bottom:1rem;padding-bottom:1rem}.note-item[data-v-a50cf610]:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.note-content[data-v-a50cf610]{color:var(--color-slate);margin:0 0 .5rem;font-size:.875rem;line-height:1.5}.note-meta[data-v-a50cf610]{color:var(--color-steel);justify-content:space-between;font-size:.75rem;display:flex}.view-all-notes[data-v-a50cf610]{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--rounded-full);cursor:pointer;width:100%;color:var(--color-primary);margin-top:1rem;padding:.5rem;font-size:.875rem;transition:all .3s}.view-all-notes[data-v-a50cf610]:hover{background:var(--color-surface)}.book-recommendations[data-v-a50cf610]{background:var(--color-surface);border:var(--card-base-border);border-radius:.5rem;padding:1.5rem}.book-recommendations h3[data-v-a50cf610]{color:var(--color-ink);margin:0 0 1rem;font-size:1.125rem;font-weight:600}.recommendations-list[data-v-a50cf610]{flex-direction:column;gap:1rem;display:flex}.recommendation-item[data-v-a50cf610]{cursor:pointer;border-radius:.5rem;gap:1rem;padding:.5rem;transition:all .3s;display:flex}.recommendation-item[data-v-a50cf610]:hover{background:#4caf501a}.recommendation-cover[data-v-a50cf610]{border-radius:.25rem;flex-shrink:0;width:60px;height:80px;overflow:hidden}.recommendation-cover img[data-v-a50cf610]{object-fit:cover;width:100%;height:100%}.recommendation-info[data-v-a50cf610]{flex:1;min-width:0}.recommendation-title[data-v-a50cf610]{color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.25rem;font-size:.875rem;font-weight:500;overflow:hidden}.recommendation-author[data-v-a50cf610]{color:var(--color-slate);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}@media (width<=1200px){.book-content[data-v-a50cf610]{flex-direction:column}.book-info[data-v-a50cf610]{text-align:center;flex-direction:column;align-items:center}.book-cover[data-v-a50cf610]{margin-bottom:2rem}.book-sidebar[data-v-a50cf610]{width:100%;margin-top:2rem}}@media (width<=768px){.book-header[data-v-a50cf610],.book-content[data-v-a50cf610]{padding:1rem}.book-actions[data-v-a50cf610]{justify-content:center}.book-sidebar[data-v-a50cf610]{width:100%}}.diary-container[data-v-1daaf5c4]{background:var(--color-surface);min-height:calc(100vh - 3rem);padding:20px}.diary-header[data-v-1daaf5c4]{background:var(--color-canvas);border:var(--card-base-border);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:20px;display:flex}.header-left[data-v-1daaf5c4]{align-items:center;gap:16px;display:flex}.add-diary-btn[data-v-1daaf5c4]{background:var(--color-primary);color:#fff;border-radius:var(--rounded-full);cursor:pointer;border:none;padding:10px 20px;font-size:14px;font-weight:500;transition:all .3s}.add-diary-btn[data-v-1daaf5c4]:hover{background:var(--color-primary-deep);transform:translateY(-1px)}.filter-group[data-v-1daaf5c4]{gap:8px;display:flex}.filter-select[data-v-1daaf5c4]{border:1px solid var(--color-hairline);background:#fff;border-radius:4px;padding:8px 12px;font-size:14px}.search-box[data-v-1daaf5c4]{position:relative}.search-input[data-v-1daaf5c4]{border:1px solid var(--color-hairline);border-radius:20px;width:200px;padding:8px 40px 8px 12px;font-size:14px}.search-btn[data-v-1daaf5c4]{background:var(--color-primary);color:#fff;border-radius:var(--rounded-full);cursor:pointer;border:none;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.search-btn svg[data-v-1daaf5c4]{width:16px;height:16px}.header-right[data-v-1daaf5c4]{gap:12px;display:flex}.statistics-btn[data-v-1daaf5c4]{background:var(--color-surface-soft);color:var(--color-ink);border:1px solid var(--color-hairline);border-radius:var(--rounded-full);cursor:pointer;padding:8px 16px;font-size:14px;transition:all .3s}.statistics-btn[data-v-1daaf5c4]:hover{background:var(--color-hairline)}.diary-content[data-v-1daaf5c4]{grid-template-columns:280px 1fr;gap:24px;width:100%;margin:0 auto;display:grid}.left-sidebar[data-v-1daaf5c4]{flex-direction:column;gap:20px;display:flex}.right-section[data-v-1daaf5c4]{flex:1}.stats-card[data-v-1daaf5c4],.tags-card[data-v-1daaf5c4],.calendar-card[data-v-1daaf5c4]{background:var(--color-canvas);border:var(--card-base-border);border-radius:8px;padding:16px}.stats-card h3[data-v-1daaf5c4],.tags-card h3[data-v-1daaf5c4],.calendar-card h3[data-v-1daaf5c4]{color:var(--color-ink);margin-bottom:16px;font-size:16px;font-weight:600}.stats-item[data-v-1daaf5c4]{border-bottom:1px solid var(--color-hairline-soft);justify-content:space-between;padding:8px 0;display:flex}.stats-item[data-v-1daaf5c4]:last-child{border-bottom:none}.stats-label[data-v-1daaf5c4]{color:var(--color-slate);font-size:14px}.stats-value[data-v-1daaf5c4]{color:var(--color-primary);font-size:14px;font-weight:600}.tags-list[data-v-1daaf5c4]{flex-wrap:wrap;gap:8px;display:flex}.tag-item[data-v-1daaf5c4]{color:#0288d1;background:#f0f9ff;border-radius:12px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;display:flex}.tag-count[data-v-1daaf5c4]{opacity:.8;font-size:10px}.calendar-header[data-v-1daaf5c4]{text-align:center;margin-bottom:12px;font-size:14px;font-weight:600}.calendar-weekdays[data-v-1daaf5c4]{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px;display:grid}.calendar-weekdays span[data-v-1daaf5c4]{text-align:center;color:var(--color-steel);padding:4px 0;font-size:12px}.calendar-days[data-v-1daaf5c4]{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.day[data-v-1daaf5c4]{text-align:center;cursor:pointer;border-radius:4px;padding:8px 0;font-size:14px;transition:all .3s}.day[data-v-1daaf5c4]:hover{background:var(--color-surface-soft)}.day.active[data-v-1daaf5c4]{background:var(--color-primary);color:#fff}.day-empty[data-v-1daaf5c4]{padding:8px 0}.right-content[data-v-1daaf5c4]{flex-direction:column;gap:20px;display:flex}.month-header[data-v-1daaf5c4]{color:var(--color-ink);text-align:left;margin-bottom:8px;font-size:18px;font-weight:600}.diary-item[data-v-1daaf5c4]{background:var(--color-canvas);border:var(--card-base-border);border-radius:8px;padding:24px;transition:all .3s}.diary-item[data-v-1daaf5c4]:hover{box-shadow:var(--elevation-2);transform:translateY(-2px)}.diary-date[data-v-1daaf5c4]{text-align:left;align-items:center;gap:12px;margin-bottom:12px;display:flex}.date-day[data-v-1daaf5c4]{color:var(--color-ink);font-size:24px;font-weight:600}.date-week[data-v-1daaf5c4]{color:var(--color-slate);font-size:12px}.date-sun[data-v-1daaf5c4]{background:#ffeb3b;border-radius:50%;width:20px;height:20px}.date-cloud[data-v-1daaf5c4]{background:var(--color-hairline);border-radius:8px;width:24px;height:16px}.diary-main[data-v-1daaf5c4]{flex:1}.diary-title[data-v-1daaf5c4]{color:var(--color-ink);margin-bottom:12px;font-size:16px;font-weight:600}.diary-text[data-v-1daaf5c4]{max-width:1200px;color:var(--color-slate);margin-bottom:16px;font-size:14px;line-height:1.6}.diary-images[data-v-1daaf5c4]{gap:12px;margin-bottom:16px;display:flex}.diary-images img[data-v-1daaf5c4]{object-fit:cover;border-radius:8px;width:120px;height:120px}.diary-tags[data-v-1daaf5c4]{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.diary-tag[data-v-1daaf5c4]{background:var(--color-surface-feature);color:var(--color-primary);border-radius:12px;align-items:center;gap:4px;padding:4px 12px;font-size:12px;display:flex}.diary-actions[data-v-1daaf5c4]{gap:8px;display:flex}.action-btn[data-v-1daaf5c4]{background:var(--color-surface-soft);color:var(--color-slate);border-radius:var(--rounded-full);cursor:pointer;border:none;padding:4px 12px;font-size:12px;transition:all .3s}.action-btn[data-v-1daaf5c4]:hover{background:var(--color-hairline);color:var(--color-ink)}.diary-footer[data-v-1daaf5c4]{justify-content:center;gap:16px;margin-top:8px;padding:20px;display:flex}.footer-btn[data-v-1daaf5c4]{background:var(--color-canvas);color:var(--color-ink);border:1px solid var(--color-hairline);border-radius:var(--rounded-full);cursor:pointer;padding:8px 16px;font-size:14px;transition:all .3s}.footer-btn[data-v-1daaf5c4]:hover{background:var(--color-hairline);transform:translateY(-1px)}@media (width<=1200px){.diary-content[data-v-1daaf5c4]{grid-template-columns:1fr}.left-sidebar[data-v-1daaf5c4]{flex-direction:row;grid-template-columns:repeat(3,1fr)}.stats-card[data-v-1daaf5c4],.tags-card[data-v-1daaf5c4],.calendar-card[data-v-1daaf5c4]{flex:1}}@media (width<=768px){.diary-header[data-v-1daaf5c4]{flex-direction:column;align-items:flex-start;gap:16px}.header-left[data-v-1daaf5c4]{flex-wrap:wrap}.left-sidebar[data-v-1daaf5c4]{flex-direction:column}.diary-item[data-v-1daaf5c4]{flex-direction:column;gap:12px}.diary-date[data-v-1daaf5c4]{text-align:left;justify-content:space-between;align-items:center;display:flex}.date-sun[data-v-1daaf5c4],.date-cloud[data-v-1daaf5c4]{margin:0}}.diary-detail-container[data-v-849e096a]{background:var(--color-surface);min-height:calc(100vh - 3rem);padding:20px}.diary-detail-header[data-v-849e096a]{background:var(--color-canvas);border:var(--card-base-border);border-radius:0 0 8px 8px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px 20px;display:flex}.back-btn[data-v-849e096a]{color:var(--color-primary);cursor:pointer;border-radius:var(--rounded-full);background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;font-size:14px;transition:all .3s;display:flex}.back-btn[data-v-849e096a]:hover{background:var(--color-surface-feature)}.header-right[data-v-849e096a]{color:var(--color-slate);align-items:center;gap:16px;font-size:14px;display:flex}.auto-save[data-v-849e096a]{align-items:center;gap:4px;display:flex}.diary-detail-content[data-v-849e096a]{margin:0 auto}.title-section[data-v-849e096a]{text-align:center;background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-deep) 100%);color:#fff;box-shadow:var(--elevation-2);border-radius:0;margin-bottom:0;padding:40px 0}.title-section h1[data-v-849e096a]{color:#fff;margin-bottom:12px;font-size:28px;font-weight:600}.title-section p[data-v-849e096a]{color:#ffffffe6;margin:0;font-size:16px;font-weight:400}.edit-section[data-v-849e096a]{background:var(--color-canvas);border:var(--card-base-border);border-radius:8px;padding:24px}.form-group[data-v-849e096a]{margin-bottom:20px}.form-group label[data-v-849e096a]{color:var(--color-ink);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.title-input[data-v-849e096a]{border:1px solid var(--color-hairline);background:var(--color-surface);border-radius:8px;width:100%;padding:12px 16px;font-size:18px;transition:all .3s}.title-input[data-v-849e096a]:focus{border-color:var(--color-primary);background:#fff;outline:none;box-shadow:0 0 0 2px #4caf501a}.meta-section[data-v-849e096a]{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.date-info[data-v-849e096a]{flex:1}.date-info label[data-v-849e096a]{color:var(--color-ink);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.date-info span[data-v-849e096a]{color:var(--color-slate);font-size:14px}.tags-section[data-v-849e096a]{flex:2}.tags-section label[data-v-849e096a]{color:var(--color-ink);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.tags-container[data-v-849e096a]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tag-item[data-v-849e096a]{background:var(--color-primary);color:#fff;border-radius:16px;align-items:center;gap:6px;padding:4px 10px;font-size:14px;font-weight:500;display:flex}.remove-tag[data-v-849e096a]{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;padding:2px;transition:all .3s;display:flex}.remove-tag[data-v-849e096a]:hover{background:#ffffff4d}.add-tag-btn[data-v-849e096a]{background:var(--color-surface);color:var(--color-primary);border:1px dashed var(--color-primary);border-radius:var(--rounded-full);cursor:pointer;padding:4px 12px;font-size:14px;font-weight:500;transition:all .3s}.add-tag-btn[data-v-849e096a]:hover{background:var(--color-surface-feature);border-color:var(--color-primary-deep)}.add-tag-popup[data-v-849e096a]{background:var(--color-surface);box-shadow:var(--elevation-2);border-radius:8px;align-items:center;gap:8px;margin-top:8px;padding:12px;display:flex;position:relative}.add-tag-popup input[data-v-849e096a]{border:1px solid var(--color-hairline);border-radius:4px;flex:1;padding:6px 10px;font-size:14px}.add-tag-popup button[data-v-849e096a]{cursor:pointer;border:none;border-radius:4px;padding:6px 12px;font-size:14px;transition:all .3s}.add-tag-popup button[data-v-849e096a]:first-of-type{background:var(--color-primary);color:#fff}.add-tag-popup button[data-v-849e096a]:last-of-type{background:var(--color-surface-soft);color:var(--color-slate)}.editor-toolbar[data-v-849e096a]{background:var(--color-surface);border:1px solid var(--color-hairline);border-bottom:none;border-radius:4px 4px 0 0;align-items:center;gap:8px;padding:12px;display:flex}.toolbar-btn[data-v-849e096a]{border-radius:var(--rounded-full);color:var(--color-slate);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:6px 10px;font-size:14px;transition:all .3s;display:flex}.toolbar-btn[data-v-849e096a]:hover{background:var(--color-hairline);color:var(--color-ink)}.toolbar-divider[data-v-849e096a]{background:var(--color-hairline);width:1px;height:20px;margin:0 8px}.editor-content[data-v-849e096a]{margin-bottom:24px}.content-textarea[data-v-849e096a]{border:1px solid var(--color-hairline);width:100%;color:var(--color-ink);resize:vertical;border-radius:0 0 4px 4px;min-height:300px;padding:16px;font-family:inherit;font-size:14px;line-height:1.6}.content-textarea[data-v-849e096a]:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #4caf501a}.image-attachment[data-v-849e096a]{margin-bottom:24px}.image-attachment h3[data-v-849e096a]{color:var(--color-ink);margin-bottom:12px;font-size:16px;font-weight:600}.image-upload-area[data-v-849e096a]{flex-wrap:wrap;gap:12px;margin-bottom:8px;display:flex}.upload-placeholder[data-v-849e096a]{border:2px dashed var(--color-primary);cursor:pointer;background:var(--color-surface);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;width:150px;height:120px;transition:all .3s;display:flex}.upload-placeholder[data-v-849e096a]:hover{border-color:var(--color-primary-deep);background:var(--color-surface-feature)}.upload-icon[data-v-849e096a]{color:var(--color-primary);margin-bottom:8px;font-size:32px;font-weight:300}.upload-placeholder span[data-v-849e096a]{color:var(--color-slate);font-size:14px;font-weight:500}.image-preview[data-v-849e096a]{border:1px solid var(--color-hairline);width:150px;height:120px;box-shadow:var(--elevation-2);border-radius:8px;position:relative;overflow:hidden}.image-preview img[data-v-849e096a]{object-fit:cover;width:100%;height:100%}.remove-image[data-v-849e096a]{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .3s;display:flex;position:absolute;top:4px;right:4px}.remove-image[data-v-849e096a]:hover{background:#000c}.upload-hint[data-v-849e096a]{color:var(--color-steel);margin:0;font-size:12px}.health-data-section[data-v-849e096a]{margin-bottom:24px}.health-data-section h3[data-v-849e096a]{color:var(--color-ink);margin-bottom:12px;font-size:16px;font-weight:600}.health-data-grid[data-v-849e096a]{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.data-item[data-v-849e096a]{flex-direction:column;gap:6px;display:flex}.data-item label[data-v-849e096a]{color:var(--color-slate);font-size:14px;font-weight:500}.data-item input[data-v-849e096a]{border:1px solid var(--color-primary);background:var(--color-surface);border-radius:8px;padding:10px 14px;font-size:14px;transition:all .3s}.data-item input[data-v-849e096a]:focus{border-color:var(--color-primary-deep);background:#fff;outline:none;box-shadow:0 0 0 2px #4caf501a}.action-buttons[data-v-849e096a]{border-top:1px solid var(--color-hairline-soft);justify-content:center;gap:12px;padding-top:20px;display:flex}.action-buttons button[data-v-849e096a]{border-radius:var(--rounded-full);cursor:pointer;border:none;min-width:100px;padding:12px 24px;font-size:14px;font-weight:500;transition:all .3s}.save-btn[data-v-849e096a]{background:var(--color-primary);color:#fff;box-shadow:0 2px 4px #4caf5033}.save-btn[data-v-849e096a]:hover{background:var(--color-primary-deep);transform:translateY(-1px);box-shadow:0 4px 8px #4caf504d}.save-draft-btn[data-v-849e096a]{background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-hairline)}.save-draft-btn[data-v-849e096a]:hover{background:var(--color-surface-soft);border-color:var(--color-hairline-strong)}.cancel-btn[data-v-849e096a]{background:var(--color-surface);color:var(--color-slate);border:1px solid var(--color-hairline)}.cancel-btn[data-v-849e096a]:hover{background:var(--color-surface-soft);border-color:var(--color-hairline-strong)}.set-cover-btn[data-v-849e096a]{background:var(--color-surface);color:var(--color-slate);border:1px solid var(--color-hairline)}.set-cover-btn[data-v-849e096a]:hover{background:var(--color-surface-soft);border-color:var(--color-hairline-strong)}@media (width<=768px){.meta-section[data-v-849e096a]{flex-direction:column;align-items:stretch}.health-data-grid[data-v-849e096a]{grid-template-columns:repeat(2,1fr)}.action-buttons[data-v-849e096a]{flex-wrap:wrap}.action-buttons button[data-v-849e096a]{flex:1;min-width:120px}}@media (width<=480px){.health-data-grid[data-v-849e096a]{grid-template-columns:1fr}.action-buttons[data-v-849e096a]{flex-direction:column}.action-buttons button[data-v-849e096a]{width:100%}}.settings-container[data-v-1607e10f]{height:100%;padding:var(--spacing-xl);background:var(--color-canvas);overflow-y:auto}.settings-panel[data-v-1607e10f]{background:var(--color-canvas);border:var(--card-base-border);border-radius:8px;flex-direction:column;width:100%;max-width:900px;min-height:80vh;margin:0 auto;display:flex;overflow:hidden}.settings-header[data-v-1607e10f]{border-bottom:1px solid var(--color-hairline-soft);background:var(--color-surface);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.header-left[data-v-1607e10f]{align-items:center;gap:12px;display:flex}.logo[data-v-1607e10f]{object-fit:contain;width:32px;height:32px}.header-left h1[data-v-1607e10f]{color:var(--color-ink);margin:0;font-size:18px;font-weight:600}.close-btn[data-v-1607e10f]{color:var(--color-steel);cursor:pointer;border-radius:var(--rounded-full);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;transition:all .3s;display:flex}.close-btn[data-v-1607e10f]:hover{background:var(--color-surface-soft);color:var(--color-slate)}.settings-body[data-v-1607e10f]{flex:1;display:flex;overflow:hidden}.sidebar-menu[data-v-1607e10f]{border-right:1px solid var(--color-hairline-soft);background:var(--color-canvas);flex-direction:column;width:200px;padding:8px 0;display:flex;overflow-y:auto}.menu-item[data-v-1607e10f]{cursor:pointer;color:var(--color-slate);align-items:center;gap:10px;padding:12px 16px;font-size:14px;transition:all .3s;display:flex}.menu-item[data-v-1607e10f]:hover{background:var(--color-surface-soft);color:var(--color-ink)}.menu-item.active[data-v-1607e10f]{color:#1890ff;background:#e6f7ff;border-right:3px solid #1890ff}.settings-content[data-v-1607e10f]{flex:1;padding:32px;overflow-y:auto}@media (width<=768px){.settings-container[data-v-1607e10f]{padding:10px}.settings-body[data-v-1607e10f]{flex-direction:column}.sidebar-menu[data-v-1607e10f]{border-right:none;border-bottom:1px solid var(--color-hairline-soft);flex-direction:row;width:100%;max-height:120px;padding:0;overflow:auto hidden}.menu-item[data-v-1607e10f]{white-space:nowrap;border-bottom:3px solid #0000;border-right:none}.menu-item.active[data-v-1607e10f]{border-bottom:3px solid #1890ff;border-right:none}.settings-content[data-v-1607e10f]{padding:20px}.action-buttons[data-v-1607e10f]{flex-direction:column;gap:8px}.action-btn[data-v-1607e10f]{text-align:center;width:100%}.account-actions[data-v-1607e10f]{flex-direction:column;gap:8px}.switch-account-btn[data-v-1607e10f],.logout-btn[data-v-1607e10f]{text-align:center;width:100%}.storage-info[data-v-1607e10f],.cache-info[data-v-1607e10f]{padding:16px}.clear-cache-btn[data-v-1607e10f],.export-data-btn[data-v-1607e10f],.delete-data-btn[data-v-1607e10f]{justify-content:center;width:100%}}.tab-content h3[data-v-1607e10f]{color:var(--color-ink);margin-bottom:24px;font-size:18px;font-weight:600}.setting-group[data-v-1607e10f]{margin-bottom:32px}.setting-group h4[data-v-1607e10f]{color:var(--color-slate);margin-bottom:12px;font-size:14px;font-weight:600}.radio-group[data-v-1607e10f]{flex-direction:column;gap:12px;display:flex}.radio-item[data-v-1607e10f]{cursor:pointer;color:var(--color-ink);align-items:center;gap:8px;font-size:14px;display:flex}.radio-item input[type=radio][data-v-1607e10f]{width:16px;height:16px}.select-input[data-v-1607e10f]{border:var(--text-input-border);border-radius:var(--text-input-radius);width:200px;height:var(--text-input-height);background:var(--color-canvas);cursor:pointer;padding:8px 12px;font-size:14px;transition:all .3s}.select-input[data-v-1607e10f]:hover{border-color:var(--color-primary)}.select-input[data-v-1607e10f]:focus{border:var(--text-input-focus-border);outline:none}.checkbox-item[data-v-1607e10f]{cursor:pointer;color:var(--color-ink);align-items:center;gap:8px;font-size:14px;display:flex}.checkbox-item input[type=checkbox][data-v-1607e10f]{width:16px;height:16px}.setting-actions[data-v-1607e10f]{margin-top:40px}.save-btn[data-v-1607e10f]{background:var(--color-primary);color:#fff;border-radius:var(--rounded-full);cursor:pointer;border:none;padding:10px 24px;font-size:14px;font-weight:500;transition:all .3s}.save-btn[data-v-1607e10f]:hover{background:var(--color-primary-deep);transform:translateY(-1px);box-shadow:0 2px 8px #00ed644d}.info-card[data-v-1607e10f]{background:var(--color-surface);border:var(--card-base-border);border-radius:8px;padding:20px}.info-item[data-v-1607e10f]{margin-bottom:12px;font-size:14px}.info-item[data-v-1607e10f]:last-child{margin-bottom:0}.info-label[data-v-1607e10f]{color:var(--color-slate);margin-right:12px}.info-value[data-v-1607e10f]{color:var(--color-ink);font-weight:500}.action-buttons[data-v-1607e10f]{gap:12px;display:flex}.action-btn[data-v-1607e10f]{background:var(--color-primary);color:#fff;border-radius:var(--rounded-full);cursor:pointer;border:none;padding:8px 16px;font-size:14px;transition:all .3s}.action-btn[data-v-1607e10f]:hover{background:var(--color-primary-deep);transform:translateY(-1px)}.device-list[data-v-1607e10f]{background:var(--color-surface);border:var(--card-base-border);border-radius:8px;margin-bottom:16px;padding:20px}.device-item[data-v-1607e10f]{color:var(--color-ink);align-items:center;gap:10px;margin-bottom:12px;font-size:14px;display:flex}.device-item[data-v-1607e10f]:last-child{margin-bottom:0}.manage-devices-btn[data-v-1607e10f]{background:var(--color-surface-soft);color:var(--color-slate);border-radius:var(--rounded-full);cursor:pointer;border:none;padding:8px 16px;font-size:14px;transition:all .3s}.manage-devices-btn[data-v-1607e10f]:hover{background:var(--color-hairline);color:var(--color-ink)}.account-actions[data-v-1607e10f]{gap:16px;margin-top:40px;display:flex}.switch-account-btn[data-v-1607e10f],.logout-btn[data-v-1607e10f]{border-radius:var(--rounded-full);cursor:pointer;border:none;padding:10px 24px;font-size:14px;transition:all .3s}.switch-account-btn[data-v-1607e10f]{background:var(--color-surface-soft);color:var(--color-slate)}.switch-account-btn[data-v-1607e10f]:hover{background:var(--color-hairline);color:var(--color-ink)}.logout-btn[data-v-1607e10f]{color:#fff;background:#ff4d4f}.logout-btn[data-v-1607e10f]:hover{background:#ff7875;transform:translateY(-1px)}.storage-info[data-v-1607e10f]{background:var(--color-surface);border:var(--card-base-border);border-radius:8px;padding:20px}.storage-header[data-v-1607e10f]{color:var(--color-slate);margin-bottom:12px;font-size:14px}.storage-bar[data-v-1607e10f]{background:var(--color-hairline);border-radius:4px;height:8px;margin-bottom:12px;overflow:hidden}.storage-used[data-v-1607e10f]{background:var(--color-primary);border-radius:4px;height:100%;transition:width .3s}.storage-footer[data-v-1607e10f]{color:var(--color-steel);font-size:12px}.cache-info[data-v-1607e10f]{background:var(--color-surface);border:var(--card-base-border);border-radius:8px;margin-bottom:16px;padding:20px}.cache-info p[data-v-1607e10f]{color:var(--color-slate);margin-bottom:12px;font-size:14px}.cache-size[data-v-1607e10f]{color:var(--color-slate);text-align:right;margin-bottom:16px;font-size:14px}.clear-cache-btn[data-v-1607e10f],.export-data-btn[data-v-1607e10f]{background:var(--color-primary);color:#fff;border-radius:var(--rounded-full);cursor:pointer;border:none;align-items:center;gap:8px;padding:10px 24px;font-size:14px;transition:all .3s;display:flex}.clear-cache-btn[data-v-1607e10f]:hover,.export-data-btn[data-v-1607e10f]:hover{background:var(--color-primary-deep);transform:translateY(-1px);box-shadow:0 2px 8px #00ed644d}.delete-data-btn[data-v-1607e10f]{color:#fff;border-radius:var(--rounded-full);cursor:pointer;background:#ff4d4f;border:none;padding:10px 24px;font-size:14px;transition:all .3s}.delete-data-btn[data-v-1607e10f]:hover{background:#ff7875;transform:translateY(-1px);box-shadow:0 2px 8px #ff4d4f4d}@media (width<=768px){.settings-panel[data-v-1607e10f]{max-height:90vh}.settings-body[data-v-1607e10f]{flex-direction:column}.settings-sidebar[data-v-1607e10f]{border-right:none;border-bottom:1px solid var(--color-hairline-soft);width:100%;max-height:200px}.sidebar-menu[data-v-1607e10f]{flex-direction:row;display:flex;overflow:auto hidden}.menu-item[data-v-1607e10f]{white-space:nowrap;border-bottom:3px solid #0000;border-right:none}.menu-item.active[data-v-1607e10f]{border-bottom:3px solid #1890ff;border-right:none}.settings-content[data-v-1607e10f]{padding:20px}.action-buttons[data-v-1607e10f]{flex-direction:column}.action-btn[data-v-1607e10f]{text-align:center;width:100%}.account-actions[data-v-1607e10f]{flex-direction:column}.switch-account-btn[data-v-1607e10f],.logout-btn[data-v-1607e10f]{text-align:center;width:100%}}.not-logged-in[data-v-1607e10f]{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.not-logged-in svg[data-v-1607e10f]{color:var(--color-muted);margin-bottom:20px}.not-logged-in p[data-v-1607e10f]{color:var(--color-slate);margin-bottom:24px;font-size:16px}.not-logged-in .login-btn[data-v-1607e10f]{background:var(--color-primary);color:#fff;border-radius:var(--rounded-full);cursor:pointer;border:none;padding:12px 32px;font-size:14px;transition:all .3s}.not-logged-in .login-btn[data-v-1607e10f]:hover{background:var(--color-primary-deep);transform:translateY(-1px);box-shadow:0 2px 8px #00ed644d}.device-item[data-v-1607e10f]{position:relative}.device-current[data-v-1607e10f]{color:#1890ff;background:#e6f7ff;border-radius:4px;margin-left:auto;padding:2px 8px;font-size:12px}.action-btn[data-v-1607e10f]:disabled,.manage-devices-btn[data-v-1607e10f]:disabled{opacity:.5;cursor:not-allowed}.action-btn[data-v-1607e10f]:disabled:hover,.manage-devices-btn[data-v-1607e10f]:disabled:hover{background:var(--color-primary);transform:none}.modal-overlay[data-v-1607e10f]{z-index:9999;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content[data-v-1607e10f]{background:var(--color-canvas);border-radius:12px;width:100%;max-width:480px;box-shadow:0 20px 60px #0000004d}.modal-header[data-v-1607e10f]{border-bottom:1px solid var(--color-hairline-soft);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3[data-v-1607e10f]{color:var(--color-ink);margin:0;font-size:18px;font-weight:600}.modal-close[data-v-1607e10f]{cursor:pointer;width:32px;height:32px;color:var(--color-steel);border-radius:var(--rounded-full);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex}.modal-close[data-v-1607e10f]:hover{background:var(--color-surface);color:var(--color-ink)}.modal-close svg[data-v-1607e10f]{width:20px;height:20px}.modal-body[data-v-1607e10f]{padding:24px}.form-group[data-v-1607e10f]{margin-bottom:20px}.form-group label[data-v-1607e10f]{color:var(--color-ink);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-input[data-v-1607e10f]{border:var(--text-input-border);border-radius:var(--text-input-radius);width:100%;height:var(--text-input-height);box-sizing:border-box;padding:10px 12px;font-size:14px;transition:all .3s}.form-input[data-v-1607e10f]:focus{border:var(--text-input-focus-border);outline:none}.error-message[data-v-1607e10f]{color:#f5222d;background:#fff2f0;border:1px solid #ffccc7;border-radius:4px;margin-bottom:16px;padding:12px;font-size:14px}.modal-footer[data-v-1607e10f]{border-top:1px solid var(--color-hairline-soft);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.cancel-btn[data-v-1607e10f],.confirm-btn[data-v-1607e10f]{border-radius:var(--rounded-full);cursor:pointer;border:none;padding:8px 20px;font-size:14px;transition:all .3s}.cancel-btn[data-v-1607e10f]{background:var(--color-surface-soft);color:var(--color-slate)}.cancel-btn[data-v-1607e10f]:hover{background:var(--color-hairline);color:var(--color-ink)}.confirm-btn[data-v-1607e10f]{background:var(--color-primary);color:#fff}.confirm-btn[data-v-1607e10f]:hover{background:var(--color-primary-deep);transform:translateY(-1px);box-shadow:0 2px 8px #00ed644d}.modal-enter-active[data-v-1607e10f],.modal-leave-active[data-v-1607e10f]{transition:opacity .3s}.modal-enter-active .modal-content[data-v-1607e10f],.modal-leave-active .modal-content[data-v-1607e10f]{transition:transform .3s}.modal-enter-from[data-v-1607e10f],.modal-leave-to[data-v-1607e10f]{opacity:0}.modal-enter-from .modal-content[data-v-1607e10f],.modal-leave-to .modal-content[data-v-1607e10f]{transform:scale(.9)translateY(-20px)}.modal-overlay[data-v-6909fcb8]{z-index:9999;background:#0009;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.modal-content[data-v-6909fcb8]{background:var(--color-canvas);border:var(--card-base-border);border-radius:12px;width:420px;max-width:100%;max-height:85vh;padding-bottom:4rem;animation:.3s ease-out modalSlideIn-6909fcb8;position:relative;overflow-y:auto}@keyframes modalSlideIn-6909fcb8{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.close-btn[data-v-6909fcb8]{width:2rem;height:2rem;color:var(--color-steel);cursor:pointer;border-radius:var(--rounded-full);z-index:10;border:var(--card-base-border);background:#ffffffe6;justify-content:center;align-items:center;font-size:1.5rem;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.close-btn[data-v-6909fcb8]:hover{background:var(--color-surface);color:var(--color-ink);transform:scale(1.1)}.loading-state[data-v-6909fcb8]{color:var(--color-slate);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 0;font-size:.75rem;display:flex}.loading-spinner[data-v-6909fcb8]{border:2px solid var(--color-hairline-soft);border-top:2px solid var(--color-brand-green-mid);border-radius:50%;width:1.5rem;height:1.5rem;animation:.8s linear infinite spin-6909fcb8}@keyframes spin-6909fcb8{to{transform:rotate(360deg)}}.error-state[data-v-6909fcb8]{color:var(--color-slate);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 0;font-size:.75rem;display:flex}.retry-btn[data-v-6909fcb8]{border:1px solid var(--color-brand-green-mid);color:var(--color-brand-green-mid);background:var(--color-canvas);border-radius:var(--rounded-full);cursor:pointer;padding:.25rem .75rem;font-size:.75rem;transition:all .2s}.retry-btn[data-v-6909fcb8]:hover{background:var(--color-brand-green-mid);color:var(--color-on-dark)}.detail-content[data-v-6909fcb8]{flex-direction:column;gap:1rem;display:flex}.detail-image[data-v-6909fcb8]{background:var(--color-surface);border-radius:8px;width:100%;height:220px;margin-bottom:1rem;overflow:hidden}.detail-image img[data-v-6909fcb8]{object-fit:cover;width:100%;height:100%}.detail-info[data-v-6909fcb8]{flex-direction:column;gap:1rem;padding:0 1rem 1rem;display:flex}.detail-name[data-v-6909fcb8]{color:var(--color-ink);font-size:1.25rem;font-weight:600;line-height:1.3}.detail-desc[data-v-6909fcb8]{color:var(--color-slate);font-size:.875rem;line-height:1.5}.info-grid[data-v-6909fcb8]{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.info-item[data-v-6909fcb8]{flex-direction:column;gap:.25rem;display:flex}.info-label[data-v-6909fcb8]{color:var(--color-slate);font-size:.625rem}.info-value[data-v-6909fcb8]{color:var(--color-ink);font-size:.875rem;font-weight:600}.info-value.price[data-v-6909fcb8]{color:var(--color-accent-orange);font-size:1rem}.info-value.sold[data-v-6909fcb8]{color:var(--color-brand-green-dark)}.detail-status[data-v-6909fcb8]{margin-top:.5rem}.status-on[data-v-6909fcb8]{color:var(--color-brand-green-dark);background:var(--color-surface-feature);border-radius:4px;padding:.25rem .5rem;font-size:.625rem;display:inline-block}.status-off[data-v-6909fcb8]{color:var(--color-steel);background:var(--color-surface);border-radius:4px;padding:.25rem .5rem;font-size:.625rem;display:inline-block}.fade-enter-active[data-v-6909fcb8],.fade-leave-active[data-v-6909fcb8]{transition:opacity .3s}.fade-enter-from[data-v-6909fcb8],.fade-leave-to[data-v-6909fcb8]{opacity:0}.modal-content[data-v-6909fcb8]::-webkit-scrollbar{width:6px}.modal-content[data-v-6909fcb8]::-webkit-scrollbar-track{background:var(--color-surface-soft);border-radius:3px}.modal-content[data-v-6909fcb8]::-webkit-scrollbar-thumb{background:var(--color-hairline-strong);border-radius:3px}.modal-content[data-v-6909fcb8]::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}.order-bar[data-v-6909fcb8]{background:var(--color-canvas);border-top:1px solid var(--color-hairline-soft);border-radius:0 0 12px 12px;justify-content:center;align-items:center;height:4rem;padding:0 1rem;display:flex;position:absolute;bottom:0;left:0;right:0}.order-btn[data-v-6909fcb8]{background:linear-gradient(135deg, var(--color-brand-green-dark) 0%, var(--color-brand-green-mid) 100%);width:100%;max-width:300px;height:2.5rem;color:var(--color-on-dark);border-radius:var(--rounded-full);cursor:pointer;border:none;font-size:1rem;font-weight:600;transition:all .3s;box-shadow:0 4px 12px #00684a4d}.order-btn[data-v-6909fcb8]:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00684a66}.order-btn[data-v-6909fcb8]:active{transform:translateY(0)}@media (width<=768px){.modal-content[data-v-6909fcb8]{width:100%;max-height:95vh}}.section[data-v-57cf849e]{background-color:var(--color-canvas);border-radius:var(--rounded-lg);padding:var(--spacing-xs);margin-bottom:var(--spacing-md);border:1px solid var(--color-hairline);height:calc(33.33% - .67rem);box-shadow:var(--elevation-1);flex-direction:column;min-height:0;transition:box-shadow .25s;display:flex}.section[data-v-57cf849e]:last-child{margin-bottom:0}.section[data-v-57cf849e]:hover{box-shadow:var(--elevation-2)}.title-row[data-v-57cf849e]{margin-bottom:var(--spacing-xs);padding:0 var(--spacing-xxs);justify-content:space-between;align-items:center;display:flex}.section-title[data-v-57cf849e]{font-size:var(--typography-heading-5-size);color:var(--color-brand-green-mid);padding-left:var(--spacing-xs);margin:0;font-weight:500;position:relative}.section-title[data-v-57cf849e]:before{content:"";background:var(--color-primary);border-radius:2px;width:3px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.section-content[data-v-57cf849e]{border-radius:var(--rounded-sm);background-color:#0000;flex:1;min-height:0;overflow:hidden}.product-grid[data-v-57cf849e]{gap:var(--spacing-xs);grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;height:100%;display:grid}.product-card[data-v-57cf849e]{border-radius:var(--rounded-sm);background:var(--color-surface-soft);cursor:pointer;border:1px solid var(--color-hairline-soft);flex-direction:column;min-height:0;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.product-card[data-v-57cf849e]:hover{box-shadow:var(--elevation-3);border-color:var(--color-primary);transform:translateY(-3px)}.product-card[data-v-57cf849e]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.product-image[data-v-57cf849e]{background:linear-gradient(135deg, var(--color-surface-soft), var(--color-surface));flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative;overflow:hidden}.product-image img[data-v-57cf849e]{object-fit:cover;width:100%;height:100%;transition:transform .4s}.product-card:hover .product-image img[data-v-57cf849e]{transform:scale(1.06)}.product-image-placeholder[data-v-57cf849e]{width:100%;height:100%;color:var(--color-stone);background:var(--color-surface-soft);justify-content:center;align-items:center;font-size:28px;display:flex}.product-overlay[data-v-57cf849e]{padding:var(--spacing-xs) var(--spacing-xs) var(--spacing-xxs);pointer-events:none;background:linear-gradient(#0000 0%,#001e2b66 40%,#001e2bd9 100%);transition:opacity .25s;position:absolute;bottom:0;left:0;right:0}.product-name[data-v-57cf849e]{color:var(--color-on-dark);font-size:var(--typography-micro-size);text-align:center;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 2px #001e2b66;font-weight:500;overflow:hidden}.section[data-v-f8a51990]{background-color:var(--color-canvas);border-radius:var(--rounded-lg);padding:var(--spacing-xs);margin-bottom:var(--spacing-md);border:1px solid var(--color-hairline);height:calc(33.33% - .67rem);box-shadow:var(--elevation-1);flex-direction:column;min-height:0;transition:box-shadow .25s;display:flex}.section[data-v-f8a51990]:last-child{margin-bottom:0}.section[data-v-f8a51990]:hover{box-shadow:var(--elevation-2)}.title-row[data-v-f8a51990]{margin-bottom:var(--spacing-xs);padding:0 var(--spacing-xxs);justify-content:space-between;align-items:center;display:flex}.section-title[data-v-f8a51990]{font-size:var(--typography-heading-5-size);color:var(--color-brand-green-mid);padding-left:var(--spacing-xs);margin:0;font-weight:500;position:relative}.section-title[data-v-f8a51990]:before{content:"";background:var(--color-primary);border-radius:2px;width:3px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.section-content[data-v-f8a51990]{border-radius:var(--rounded-sm);background-color:#0000;flex:1;min-height:0;overflow:hidden}.product-grid[data-v-f8a51990]{gap:var(--spacing-xs);grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;height:100%;display:grid}.product-card[data-v-f8a51990]{border-radius:var(--rounded-sm);background:var(--color-surface-soft);cursor:pointer;border:1px solid var(--color-hairline-soft);flex-direction:column;min-height:0;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.product-card[data-v-f8a51990]:hover{box-shadow:var(--elevation-3);border-color:var(--color-primary);transform:translateY(-3px)}.product-card[data-v-f8a51990]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.product-image[data-v-f8a51990]{background:linear-gradient(135deg, var(--color-surface-soft), var(--color-surface));flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative;overflow:hidden}.product-image img[data-v-f8a51990]{object-fit:cover;width:100%;height:100%;transition:transform .4s}.product-card:hover .product-image img[data-v-f8a51990]{transform:scale(1.06)}.product-image-placeholder[data-v-f8a51990]{width:100%;height:100%;color:var(--color-stone);background:var(--color-surface-soft);justify-content:center;align-items:center;font-size:28px;display:flex}.product-overlay[data-v-f8a51990]{padding:var(--spacing-xs) var(--spacing-xs) var(--spacing-xxs);pointer-events:none;background:linear-gradient(#0000 0%,#001e2b66 40%,#001e2bd9 100%);transition:opacity .25s;position:absolute;bottom:0;left:0;right:0}.product-name[data-v-f8a51990]{color:var(--color-on-dark);font-size:var(--typography-micro-size);text-align:center;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 2px #001e2b66;font-weight:500;overflow:hidden}.section[data-v-90627111]{background-color:var(--color-canvas);border-radius:var(--rounded-lg);padding:var(--spacing-xs);margin-bottom:var(--spacing-md);border:1px solid var(--color-hairline);height:calc(33.33% - .67rem);box-shadow:var(--elevation-1);flex-direction:column;min-height:0;transition:box-shadow .25s;display:flex}.section[data-v-90627111]:last-child{margin-bottom:0}.section[data-v-90627111]:hover{box-shadow:var(--elevation-2)}.title-row[data-v-90627111]{margin-bottom:var(--spacing-xs);padding:0 var(--spacing-xxs);justify-content:space-between;align-items:center;display:flex}.section-title[data-v-90627111]{font-size:var(--typography-heading-5-size);color:var(--color-brand-green-mid);padding-left:var(--spacing-xs);margin:0;font-weight:500;position:relative}.section-title[data-v-90627111]:before{content:"";background:var(--color-primary);border-radius:2px;width:3px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.section-content[data-v-90627111]{border-radius:var(--rounded-sm);background-color:#0000;flex:1;min-height:0;overflow:hidden}.product-grid[data-v-90627111]{gap:var(--spacing-xs);grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;height:100%;display:grid}.product-card[data-v-90627111]{border-radius:var(--rounded-sm);background:var(--color-surface-soft);cursor:pointer;border:1px solid var(--color-hairline-soft);flex-direction:column;min-height:0;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.product-card[data-v-90627111]:hover{box-shadow:var(--elevation-3);border-color:var(--color-primary);transform:translateY(-3px)}.product-card[data-v-90627111]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.product-image[data-v-90627111]{background:linear-gradient(135deg, var(--color-surface-soft), var(--color-surface));flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative;overflow:hidden}.product-image img[data-v-90627111]{object-fit:cover;width:100%;height:100%;transition:transform .4s}.product-card:hover .product-image img[data-v-90627111]{transform:scale(1.06)}.product-image-placeholder[data-v-90627111]{width:100%;height:100%;color:var(--color-stone);background:var(--color-surface-soft);justify-content:center;align-items:center;font-size:28px;display:flex}.product-overlay[data-v-90627111]{padding:var(--spacing-xs) var(--spacing-xs) var(--spacing-xxs);pointer-events:none;background:linear-gradient(#0000 0%,#001e2b66 40%,#001e2bd9 100%);transition:opacity .25s;position:absolute;bottom:0;left:0;right:0}.product-name[data-v-90627111]{color:var(--color-on-dark);font-size:var(--typography-micro-size);text-align:center;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 2px #001e2b66;font-weight:500;overflow:hidden}.category-section[data-v-1e44c878]{border-radius:var(--rounded-lg);gap:var(--spacing-sm);background-color:#0000;flex-direction:column;height:100%;display:flex}.intro-section[data-v-11810ad7]{padding:var(--spacing-xs);flex-direction:column;height:30%;min-height:0;display:flex}.intro-section[data-v-11810ad7]:last-child{margin-bottom:0}.section-title[data-v-11810ad7]{font-size:var(--typography-body-md-size);color:var(--color-brand-teal);padding-left:var(--spacing-xs);margin:0;font-weight:500;position:relative}.section-title[data-v-11810ad7]:before{content:"";background:var(--color-primary);border-radius:2px;width:3px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.title-row[data-v-11810ad7]{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.section-content[data-v-11810ad7]{gap:var(--spacing-xs);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.villa-image-full[data-v-11810ad7]{aspect-ratio:16/9;border-radius:var(--rounded-sm);background:var(--color-surface-soft);flex:none;width:100%;max-height:140px;position:relative;overflow:hidden}.villa-image-full[data-v-11810ad7]:after{content:"";pointer-events:none;background:linear-gradient(#0000 60%,#001e2b0a 100%);position:absolute;inset:0}.villa-image-full img[data-v-11810ad7]{object-fit:cover;width:100%;height:100%;transition:transform .4s}.intro-section:hover .villa-image-full img[data-v-11810ad7]{transform:scale(1.04)}.villa-intro[data-v-11810ad7]{font-size:var(--typography-body-sm-size);color:var(--color-slate);flex-direction:column;gap:2px;line-height:1.5;display:flex}.villa-intro h4[data-v-11810ad7]{font-size:var(--typography-body-sm-medium-size);color:var(--color-ink);margin:0;font-weight:600}.villa-intro p[data-v-11810ad7]{font-size:var(--typography-micro-size);color:var(--color-slate);margin:0;line-height:1.5}.villa-buttons[data-v-11810ad7]{gap:var(--spacing-xs);margin-top:auto;display:flex}.villa-btn[data-v-11810ad7]{padding:6px var(--spacing-xs);background:var(--color-canvas);border:1px solid var(--color-primary);border-radius:var(--rounded-full);color:var(--color-primary);font-size:var(--typography-micro-size);cursor:pointer;white-space:nowrap;flex:1;font-weight:500;transition:all .2s}.villa-btn[data-v-11810ad7]:hover{background:var(--color-primary);color:var(--color-on-dark);box-shadow:var(--elevation-2);transform:translateY(-1px)}.villa-btn[data-v-11810ad7]:active{background:var(--color-primary-deep);border-color:var(--color-primary-deep);transform:translateY(0)}.intro-section[data-v-65d5a779]{padding:var(--spacing-xs);flex-direction:column;height:20%;min-height:0;display:flex}.intro-section[data-v-65d5a779]:last-child{margin-bottom:0}.section-title[data-v-65d5a779]{font-size:var(--typography-body-md-size);color:var(--color-brand-teal);padding-left:var(--spacing-xs);margin:0;font-weight:500;position:relative}.section-title[data-v-65d5a779]:before{content:"";background:var(--color-primary);border-radius:2px;width:3px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.title-row[data-v-65d5a779]{margin-bottom:var(--spacing-xs);justify-content:space-between;align-items:center;display:flex}.refresh-icon-btn[data-v-65d5a779]{cursor:pointer;color:var(--color-slate);border-radius:var(--rounded-full);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:inline-flex}.refresh-icon-btn[data-v-65d5a779]:hover:not(:disabled){background:var(--color-surface-soft);color:var(--color-primary)}.refresh-icon-btn[data-v-65d5a779]:active:not(:disabled){background:#7097661f;transform:scale(.95)}.refresh-icon-btn[data-v-65d5a779]:disabled{color:var(--color-steel);cursor:not-allowed;opacity:.6}.refresh-icon[data-v-65d5a779]{width:18px;height:18px}.refresh-icon.spinning[data-v-65d5a779]{animation:1s linear infinite spin-65d5a779}@keyframes spin-65d5a779{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.section-content[data-v-65d5a779]{gap:var(--spacing-sm);flex-direction:column;flex:1;display:flex;overflow:hidden}.top-buttons[data-v-65d5a779]{gap:var(--spacing-sm);flex-shrink:0;display:flex}.action-btn[data-v-65d5a779]{padding:4px var(--spacing-sm);color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--rounded-full);font-size:var(--typography-button-md-size);font-weight:var(--typography-button-md-weight);cursor:pointer;background:0 0;flex:1;line-height:1.2;transition:all .2s}.action-btn[data-v-65d5a779]:hover{background:var(--color-primary);color:var(--color-on-dark)}.action-btn[data-v-65d5a779]:active{background:var(--color-primary-deep)}.health-cards[data-v-65d5a779]{gap:var(--spacing-sm);flex:1;min-height:0;display:flex}.constitution-card[data-v-65d5a779],.tongue-card[data-v-65d5a779]{background:var(--color-surface-soft);border:1px solid var(--color-hairline);border-radius:var(--rounded-md);min-width:0;padding:4px var(--spacing-xs);text-align:center;cursor:pointer;box-shadow:inset 0 2px 0 0 var(--color-primary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;transition:all .2s;display:flex}.constitution-card[data-v-65d5a779]:hover,.tongue-card[data-v-65d5a779]:hover{background:var(--color-canvas);border-color:var(--color-primary);box-shadow:inset 0 2px 0 0 var(--color-primary), var(--elevation-2);transform:translateY(-1px)}.constitution-card[data-v-65d5a779]:focus-visible,.tongue-card[data-v-65d5a779]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.constitution-card.updating[data-v-65d5a779],.tongue-card.updating[data-v-65d5a779]{animation:.6s ease-in-out pulse-65d5a779}@keyframes pulse-65d5a779{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.card-title[data-v-65d5a779]{color:var(--color-brand-green-mid);letter-spacing:.5px;font-size:11px;font-weight:500;line-height:1.2}.card-value[data-v-65d5a779]{font-size:var(--typography-body-sm-medium-size);color:var(--color-primary-deep);word-break:break-all;flex-wrap:wrap;justify-content:center;align-items:center;min-height:0;font-weight:600;line-height:1.2;display:flex}.empty-pill[data-v-65d5a779]{background:var(--color-canvas);border:1px dashed var(--color-hairline-strong);border-radius:var(--rounded-full);color:var(--color-steel);white-space:nowrap;padding:1px 8px;font-size:11px;font-weight:400;line-height:1.3;display:inline-block}.card-value.loading[data-v-65d5a779]{color:var(--color-steel)}.card-value.error[data-v-65d5a779]{color:#f44336}.constitution-card.loading[data-v-65d5a779],.tongue-card.loading[data-v-65d5a779]{pointer-events:none}.skeleton-loader[data-v-65d5a779]{justify-content:center;align-items:center;width:100%;min-height:16px;display:flex}.skeleton-bar[data-v-65d5a779]{background:linear-gradient(90deg, var(--color-hairline-soft) 25%, var(--color-surface-feature) 50%, var(--color-hairline-soft) 75%);border-radius:var(--rounded-sm);background-size:200% 100%;width:60%;height:14px;animation:1.5s ease-in-out infinite skeleton-shimmer-65d5a779}@keyframes skeleton-shimmer-65d5a779{0%{background-position:200% 0}to{background-position:-200% 0}}.intro-section[data-v-49f6258b]{padding:var(--spacing-xs);flex-direction:column;height:48%;min-height:0;margin-bottom:0;display:flex}.title-row[data-v-49f6258b]{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.section-title[data-v-49f6258b]{font-size:var(--typography-body-md-size);color:var(--color-brand-teal);padding-left:var(--spacing-xs);margin:0;font-weight:500;position:relative}.section-title[data-v-49f6258b]:before{content:"";background:var(--color-primary);border-radius:2px;width:3px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.section-content[data-v-49f6258b]{gap:var(--spacing-sm);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.featured-plan[data-v-49f6258b]{border-radius:var(--rounded-md);min-height:0;box-shadow:var(--elevation-1);cursor:pointer;flex:6;transition:box-shadow .25s,transform .25s;position:relative;overflow:hidden}.featured-plan[data-v-49f6258b]:hover{box-shadow:var(--elevation-3);transform:translateY(-2px)}.small-plans[data-v-49f6258b]{gap:var(--spacing-sm);flex:4;min-height:0;display:flex}.small-plan[data-v-49f6258b]{border-radius:var(--rounded-md);min-width:0;min-height:0;box-shadow:var(--elevation-1);cursor:pointer;flex:1;transition:box-shadow .25s,transform .25s;position:relative;overflow:hidden}.small-plan[data-v-49f6258b]:hover{box-shadow:var(--elevation-2);transform:translateY(-2px)}.plan-image[data-v-49f6258b]{width:100%;height:100%;position:relative}.plan-image img[data-v-49f6258b]{object-fit:cover;width:100%;height:100%;transition:transform .4s}.featured-plan:hover .plan-image img[data-v-49f6258b],.small-plan:hover .plan-image img[data-v-49f6258b]{transform:scale(1.05)}.plan-overlay[data-v-49f6258b]{padding:var(--spacing-sm) var(--spacing-xs) var(--spacing-xs);pointer-events:none;background:linear-gradient(#0000 0%,#001e2b8c 40%,#001e2bd9 100%);flex-direction:column;gap:2px;display:flex;position:absolute;bottom:0;left:0;right:0}.featured-plan .plan-overlay[data-v-49f6258b]{padding:var(--spacing-sm);gap:var(--spacing-xxs)}.plan-title[data-v-49f6258b]{font-size:var(--typography-body-sm-size);color:var(--color-on-dark);text-shadow:0 1px 2px #001e2b4d;font-weight:600;line-height:1.3}.featured-plan .plan-title[data-v-49f6258b]{font-size:var(--typography-body-md-medium-size);font-weight:700}.plan-content[data-v-49f6258b]{font-size:var(--typography-micro-size);color:#ffffffe0;text-shadow:0 1px 1px #001e2b40;font-weight:400;line-height:1.4}.plan-content-wrapper[data-v-49f6258b]{justify-content:space-between;align-items:flex-end;gap:var(--spacing-xs);width:100%;margin-top:2px;display:flex}.plan-info[data-v-49f6258b]{flex:1;min-width:0}.plan-price[data-v-49f6258b]{font-size:var(--typography-body-md-medium-size);color:var(--color-accent-orange);text-shadow:0 1px 2px #001e2b66;font-weight:700;line-height:1.2}.featured-plan .plan-price[data-v-49f6258b]{font-size:var(--typography-body-md-size);font-weight:700}.plan-btn[data-v-49f6258b]{background:var(--color-accent-orange);color:var(--color-on-dark);border-radius:var(--rounded-full);font-size:var(--typography-micro-size);cursor:pointer;pointer-events:auto;white-space:nowrap;border:none;padding:4px 10px;font-weight:600;transition:all .2s;box-shadow:0 2px 6px #001e2b26}.plan-btn[data-v-49f6258b]:hover{background:var(--color-primary-deep);transform:translateY(-1px);box-shadow:0 4px 10px #001e2b40}.plan-btn[data-v-49f6258b]:active{background:var(--color-primary-deep);transform:translateY(0);box-shadow:0 1px 3px #001e2b33}.introduction-section[data-v-d95cd3b5]{background-color:var(--color-canvas);border-radius:var(--rounded-lg);gap:var(--spacing-sm);height:100%;padding:var(--spacing-sm);flex-direction:column;display:flex}.footer-content[data-v-079d61a3]{padding:var(--spacing-sm) var(--spacing-md);justify-content:space-between;align-items:center;min-height:3rem;display:flex}.footer-left[data-v-079d61a3],.footer-right[data-v-079d61a3]{align-items:center;gap:var(--spacing-md);display:flex}.business-name[data-v-079d61a3]{font-size:var(--typography-body-md-size);color:var(--color-brand-teal);font-weight:600}.business-address[data-v-079d61a3]{font-size:var(--typography-micro-size);color:var(--color-slate)}.contact-phone[data-v-079d61a3],.contact-email[data-v-079d61a3]{align-items:center;gap:var(--spacing-xxs);font-size:var(--typography-micro-size);display:flex}.contact-label[data-v-079d61a3]{color:var(--color-slate);font-weight:500}.contact-value[data-v-079d61a3]{color:var(--color-ink);font-weight:600}@media (width<=768px){.footer-content[data-v-079d61a3]{text-align:center;gap:var(--spacing-xs);flex-direction:column}.footer-left[data-v-079d61a3],.footer-right[data-v-079d61a3]{text-align:center;gap:var(--spacing-xxs);flex-direction:column}}.production-view[data-v-4448b169]{height:100%;padding:var(--spacing-lg);background:linear-gradient(180deg, var(--color-surface) 0%, var(--color-surface-soft) 100%);gap:var(--spacing-md);flex-direction:column;display:flex;overflow-y:auto}.production-content[data-v-4448b169]{gap:var(--spacing-lg);flex:1;min-height:0;display:flex}.main-content[data-v-4448b169]{flex:0 0 70%;min-width:0}.side-content[data-v-4448b169]{background:var(--color-canvas);border-radius:var(--rounded-lg);border:1px solid var(--color-hairline-soft);box-shadow:var(--elevation-1);flex:0 0 30%;overflow:hidden}.footer-container[data-v-4448b169]{flex-shrink:0}@media (width<=968px){.production-content[data-v-4448b169]{gap:var(--spacing-md);flex-direction:column}.main-content[data-v-4448b169],.side-content[data-v-4448b169]{flex:none;width:100%;min-height:400px}}@media (width<=768px){.production-view[data-v-4448b169]{padding:var(--spacing-sm)}.production-content[data-v-4448b169]{gap:var(--spacing-sm)}}:root,:host{--fa-font-solid:normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular:normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular:normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-slab-duo-regular:normal 400 1em/1 "Font Awesome 7 Slab Duo";--fa-font-slab-press-duo-regular:normal 400 1em/1 "Font Awesome 7 Slab Press Duo";--fa-font-pixel-regular:normal 400 1em/1 "Font Awesome 7 Pixel";--fa-font-mosaic-solid:normal 900 1em/1 "Font Awesome 7 Mosaic";--fa-font-vellum-solid:normal 900 1em/1 "Font Awesome 7 Vellum";--fa-font-whiteboard-semibold:normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light:normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid:normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid:normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid:normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-graphite-thin:normal 100 1em/1 "Font Awesome 7 Graphite";--fa-font-jelly-regular:normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular:normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular:normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular:normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold:normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold:normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold:normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:var(--fa-display,inline-block);vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);overflow:visible}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714286em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left,.svg-inline--fa .fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-pull-right,.svg-inline--fa .fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);inset-block-start:.25em;inset-inline-start:calc(-1 * var(--fa-li-width,2em))}.fa-layers-counter,.fa-layers-text{text-align:center;display:inline-block;position:absolute}.fa-layers{text-align:center;vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);display:inline-block;position:relative}.fa-layers .svg-inline--fa{transform-origin:50%;margin:auto;position:absolute;inset:0}.fa-layers-text{transform-origin:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);transform:scale(var(--fa-counter-scale,.25));transform-origin:100% 0;overflow:hidden}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 100%;top:auto}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 100%;top:auto;right:auto}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 0}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 0}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{vertical-align:.225em;font-size:.625em;line-height:.1em}.fa-xs{vertical-align:.125em;font-size:.75em;line-height:.0833333em}.fa-sm{vertical-align:.0535715em;font-size:.875em;line-height:.0714286em}.fa-lg{vertical-align:-.075em;font-size:1.25em;line-height:.05em}.fa-xl{vertical-align:-.125em;font-size:1.5em;line-height:.0416667em}.fa-2xl{vertical-align:-.1875em;font-size:2em;line-height:.03125em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-canvas-square{margin-block-end:-.125em;padding-block:.125em}.fa-canvas-roomy{box-sizing:content-box;margin-block-end:-.25em;padding-block:.25em;padding-inline:.125em}.fa-ul{margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0;list-style-type:none}.fa-ul>li{position:relative}.fa-li{text-align:center;width:var(--fa-li-width,2em);line-height:inherit;position:absolute;inset-inline-start:calc(-1 * var(--fa-li-width,2em))}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.0625em);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-right,.fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28, .84, .42, 1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1.5s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-flip-360{animation-name:fa-flip-360;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,.75s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}.fa-spin-snap{animation-name:fa-spin-snap;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,3s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-snap-4{animation-name:fa-spin-snap-4;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,2.4s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-snap-8{animation-name:fa-spin-snap-8;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,4s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-buzz{animation-name:fa-buzz;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,.6s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-wag{animation-name:fa-wag;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,.9s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-out);transform-origin:bottom}.fa-float{animation-name:fa-float;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,3s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out);will-change:transform}.fa-swing{animation-name:fa-swing;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1.2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-out);transform-origin:top}.fa-jello{animation-name:fa-jello;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,.9s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-out)}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-flip-360,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse,.fa-buzz,.fa-float,.fa-jello,.fa-spin-snap,.fa-spin-snap-4,.fa-spin-snap-8,.fa-swing,.fa-wag{transition:none!important;animation:none!important}}@keyframes fa-beat{0%{transform:scale(1)}25%{transform:scale(calc(1.25 * var(--fa-beat-scale,1.25)))}45%{transform:scale(calc(1.22 * var(--fa-beat-scale,1.22)))}65%{transform:scale(calc(1.25 * var(--fa-beat-scale,1.25)))}90%{transform:scale(1)}}@keyframes fa-bounce{0%{animation-timing-function:var(--fa-animation-timing);transform:scale(1)translateY(0)}14%{transform:scale(var(--fa-bounce-start-scale-x,1.06), var(--fa-bounce-start-scale-y,.94)) translateY(var(--fa-bounce-anticipation,3px));animation-timing-function:cubic-bezier(.33,0,.66,.33)}32%{transform:scale(var(--fa-bounce-jump-scale-x,.94), var(--fa-bounce-jump-scale-y,1.12)) translateY(calc(-1 * var(--fa-bounce-height,.5em)));animation-timing-function:cubic-bezier(.33,.66,.66,1)}52%{transform:scale(1, 1) translateY(calc(-1 * var(--fa-bounce-height,.5em) * 1.1));animation-timing-function:cubic-bezier(.5,0,1,.5)}70%{transform:scale(var(--fa-bounce-land-scale-x,1.06), var(--fa-bounce-land-scale-y,.92)) translateY(0);animation-timing-function:cubic-bezier(.33,.33,.66,1)}85%{transform:scale(.98, 1.04) translateY(calc(-2px * var(--fa-bounce-rebound,1)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:scale(1)translateY(0)}}@keyframes fa-fade{0%{opacity:1;animation-timing-function:cubic-bezier(.2,0,.4,1);transform:scale(1)}40%{opacity:var(--fa-fade-opacity,.4);animation-timing-function:cubic-bezier(.4,0,.6,1);transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes fa-beat-fade{0%{opacity:var(--fa-beat-fade-opacity,.4);animation-timing-function:cubic-bezier(.2,0,.4,1);transform:scale(1)}25%{opacity:calc(var(--fa-beat-fade-opacity,.4) + .4);transform:scale(var(--fa-beat-fade-scale,1.28));animation-timing-function:cubic-bezier(.4,0,.6,1)}45%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.25));animation-timing-function:cubic-bezier(.4,0,.2,1)}65%{opacity:calc(var(--fa-beat-fade-opacity,.4) + .4);transform:scale(var(--fa-beat-fade-scale,1.28));animation-timing-function:cubic-bezier(.4,0,.6,1)}to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}}@keyframes fa-flip{0%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), 0deg);animation-timing-function:cubic-bezier(.2,0,.4,1)}8%{transform:perspective(2em) scale(var(--fa-flip-anticipation-scale,.95)) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), 0deg);animation-timing-function:cubic-bezier(.33,0,.66,.33)}35%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), calc(var(--fa-flip-angle,-360deg) * .6));animation-timing-function:linear}65%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), calc(var(--fa-flip-angle,-360deg) * .5));animation-timing-function:cubic-bezier(.33,.66,.66,1)}92%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), calc(var(--fa-flip-angle,-360deg) * var(--fa-flip-overshoot,1.04)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), var(--fa-flip-angle,-360deg))}}@keyframes fa-flip-360{0%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), 0deg);animation-timing-function:cubic-bezier(.2,0,.4,1)}8%{transform:perspective(2em) scale(var(--fa-flip-anticipation-scale,.95)) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), 0deg);animation-timing-function:cubic-bezier(.33,0,.66,.33)}50%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), calc(var(--fa-flip-angle,-360deg) * .6));animation-timing-function:cubic-bezier(.33,.66,.66,1)}80%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), calc(var(--fa-flip-angle,-360deg) * var(--fa-flip-overshoot,1.04)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), var(--fa-flip-angle,-360deg))}}@keyframes fa-shake{0%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:rotate(0)}8%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(35deg)translate(1px)}20%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(-22deg)translate(-1px)}35%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(15deg)translate(1px)}50%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(-9deg)}65%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(5deg)}78%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(-3deg)}90%{animation-timing-function:cubic-bezier(.4,0,.2,1);transform:rotate(1deg)}to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}12%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(60deg)}16.67%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(60deg)}28.67%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(120deg)}33.33%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(120deg)}45.33%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}62%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(240deg)}66.67%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(240deg)}78.67%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(300deg)}83.33%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(300deg)}95.33%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap-4{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}15%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(90deg)}25%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(90deg)}40%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}65%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(270deg)}75%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(270deg)}90%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap-8{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}9%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(45deg)}12.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(45deg)}21.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(90deg)}25%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(90deg)}34%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(135deg)}37.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(135deg)}46.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}59%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(225deg)}62.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(225deg)}71.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(270deg)}75%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(270deg)}84%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(315deg)}87.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(315deg)}96.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes fa-buzz{0%{animation-timing-function:cubic-bezier(.1,0,.9,1);transform:translate(0)rotate(0)}5%{transform:translateX(var(--fa-buzz-distance,4px)) rotate(.5deg)}10%{transform:translateX(calc(-1 * var(--fa-buzz-distance,4px))) rotate(-.5deg)}15%{transform:translateX(var(--fa-buzz-distance,4px)) rotate(.3deg)}20%{transform:translateX(calc(-1 * var(--fa-buzz-distance,4px))) rotate(-.3deg)}25%{transform:translateX(calc(var(--fa-buzz-distance,4px) * .7)) rotate(.2deg)}30%{transform:translateX(calc(-1 * var(--fa-buzz-distance,4px) * .7)) rotate(-.2deg)}35%{transform:translateX(calc(var(--fa-buzz-distance,4px) * .4)) rotate(.1deg)}40%{transform:translate(0)rotate(0)}to{transform:translate(0)rotate(0)}}@keyframes fa-wag{0%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(0)}12%{transform:rotate(var(--fa-wag-angle,12deg));animation-timing-function:cubic-bezier(.4,0,.2,1)}24%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(2deg)}36%{transform:rotate(calc(var(--fa-wag-angle,12deg) * .85));animation-timing-function:cubic-bezier(.4,0,.2,1)}48%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(1deg)}58%{transform:rotate(calc(var(--fa-wag-angle,12deg) * .6));animation-timing-function:cubic-bezier(.4,0,.2,1)}68%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes fa-float{0%{transform:translateY(0) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x,1.02), var(--fa-float-squash-y,.98));animation-timing-function:cubic-bezier(.33,0,.66,.33)}15%{transform:translateY(calc(-.4 * var(--fa-float-height,6px))) translateX(var(--fa-float-drift,1px)) rotate(var(--fa-float-tilt,1deg)) scale(1, 1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}35%{transform:translateY(calc(-1 * var(--fa-float-height,6px))) translateX(0) rotate(0deg) scale(var(--fa-float-stretch-x,.98), var(--fa-float-stretch-y,1.03));animation-timing-function:cubic-bezier(.5,0,.5,0)}50%{transform:translateY(calc(-.92 * var(--fa-float-height,6px))) translateX(calc(-.5 * var(--fa-float-drift,1px))) rotate(calc(-.5 * var(--fa-float-tilt,1deg))) scale(.995, 1.01);animation-timing-function:cubic-bezier(.33,0,.66,.33)}70%{transform:translateY(calc(-.3 * var(--fa-float-height,6px))) translateX(calc(-1 * var(--fa-float-drift,1px))) rotate(calc(-1 * var(--fa-float-tilt,1deg))) scale(1, 1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}90%{transform:translateY(calc(.05 * var(--fa-float-height,6px))) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x,1.02), var(--fa-float-squash-y,.98));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:translateY(0) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x,1.02), var(--fa-float-squash-y,.98))}}@keyframes fa-swing{0%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:rotate(0)}8%{transform:rotate(var(--fa-swing-angle,22deg));animation-timing-function:cubic-bezier(.3,0,.7,1)}18%{transform:rotate(calc(-1 * var(--fa-swing-angle,22deg) * .85));animation-timing-function:cubic-bezier(.3,0,.7,1)}28%{transform:rotate(calc(var(--fa-swing-angle,22deg) * .65));animation-timing-function:cubic-bezier(.35,0,.65,1)}38%{transform:rotate(calc(-1 * var(--fa-swing-angle,22deg) * .45));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:rotate(calc(var(--fa-swing-angle,22deg) * .25));animation-timing-function:cubic-bezier(.4,0,.6,1)}56%{transform:rotate(calc(-1 * var(--fa-swing-angle,22deg) * .1));animation-timing-function:cubic-bezier(.4,0,.6,1)}64%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes fa-jello{0%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:scale(1)}12%{transform:scale(var(--fa-jello-scale-x,1.15), calc(2 - var(--fa-jello-scale-x,1.15)));animation-timing-function:cubic-bezier(.3,0,.7,1)}24%{transform:scale(calc(2 - var(--fa-jello-scale-y,1.12)), var(--fa-jello-scale-y,1.12));animation-timing-function:cubic-bezier(.3,0,.7,1)}36%{transform:scale(calc(1 + (var(--fa-jello-scale-x,1.15) - 1) * .5), calc(2 - (1 + (var(--fa-jello-scale-x,1.15) - 1) * .5)));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:scale(calc(2 - (1 + (var(--fa-jello-scale-y,1.12) - 1) * .3)), calc(1 + (var(--fa-jello-scale-y,1.12) - 1) * .3));animation-timing-function:cubic-bezier(.4,0,.6,1)}58%{animation-timing-function:cubic-bezier(.4,0,.2,1);transform:scale(1.02,.98)}68%{transform:scale(1)}to{transform:scale(1)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse,#fff)}.fa-stack{vertical-align:middle;width:2.5em;height:2em;line-height:2em;display:inline-block;position:relative}.fa-inverse{color:var(--fa-inverse,#fff)}.svg-inline--fa.fa-stack-1x{--fa-width:1.25em;height:1em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width:2.5em;height:2em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{z-index:var(--fa-stack-z-index,auto);margin:auto;position:absolute;inset:0}
