@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=JetBrains+Mono:wght@400;500&display=swap";:root{--color-primary: #0d9488;--color-primary-hover: #0f766e;--color-primary-dark: #0f766e;--color-primary-active: #0b5f58;--color-primary-subtle: rgba(13, 148, 136, .09);--color-primary-light: rgba(13, 148, 136, .09);--color-primary-muted: rgba(13, 148, 136, .2);--color-primary-border: rgba(13, 148, 136, .2);--color-on-primary: #ffffff;--color-secondary: #0891b2;--color-accent: #0d9488;--color-accent-subtle: rgba(13, 148, 136, .08);--color-warm: #f59e0b;--color-warm-subtle: rgba(245, 158, 11, .08);--color-cat-invoice: #f59e0b;--color-cat-invoice-subtle: rgba(245, 158, 11, .12);--color-cat-receipt: #10b981;--color-cat-receipt-subtle: rgba(16, 185, 129, .12);--color-cat-contract: #3b82f6;--color-cat-contract-subtle: rgba(59, 130, 246, .12);--color-cat-report: #0ea5e9;--color-cat-report-subtle: rgba(14, 165, 233, .12);--color-success: #16a34a;--color-success-subtle: rgba(22, 163, 74, .08);--color-warning: #ca8a04;--color-warning-subtle: rgba(202, 138, 4, .08);--color-error: #dc2626;--color-error-hover: #b91c1c;--color-error-active: #991b1b;--color-error-subtle: rgba(220, 38, 38, .06);--color-info: #0284c7;--color-info-subtle: rgba(2, 132, 199, .08);--color-surface-1: #f2f1ee;--color-surface-2: #f8f7f5;--color-surface-3: #e5e7eb;--color-surface-4: #d1d5db;--color-surface-raised: #ffffff;--color-surface-overlay: rgba(255, 255, 255, .8);--color-surface-sunken: #f8f7f5;--color-bg: #f2f1ee;--color-surface: #ffffff;--color-text-primary: #18170f;--color-text-secondary: #6b6860;--color-text-muted: #b0ada6;--color-text-inverse: #ffffff;--color-text: #18170f;--color-text-2: #6b6860;--color-text-3: #b0ada6;--color-border: #e4e1da;--color-border-subtle: #eeebe5;--color-border-strong: #d1d5db;--color-focus-ring: #0d9488;--color-selection: rgba(13, 148, 136, .12);--color-hover: rgba(0, 0, 0, .04);--state-hover-bg: var(--color-surface-2);--state-hover-border: var(--color-border-strong);--state-active-bg: var(--color-surface-3);--state-disabled-opacity: .5;--state-focus-ring: 2px solid var(--color-focus-ring);--state-focus-ring-offset: 2px;--state-focus-bg: var(--color-primary-subtle);--color-icon-primary: #111827;--color-icon-secondary: #4b5563;--color-icon-muted: #9ca3af;--icon-size-xs: 12px;--icon-size-sm: 14px;--icon-size-md: 16px;--icon-size-lg: 18px;--icon-size-xl: 20px;--icon-size-2xl: 24px;--icon-size-3xl: 32px;--icon-size-4xl: 48px;--icon-size-nav: var(--icon-size-sm);--icon-size-nav-brand: var(--icon-size-md);--icon-size-nav-toggle: var(--icon-size-xl);--icon-size-action-primary: var(--icon-size-lg);--icon-size-action-secondary: var(--icon-size-md);--icon-size-card-action: var(--icon-size-md);--icon-size-card-meta: var(--icon-size-xs);--icon-size-dialog: var(--icon-size-md);--icon-size-menu: var(--icon-size-md);--icon-size-status: var(--icon-size-sm);--sidebar-bg: #e8e6e1;--sidebar-border: rgba(0, 0, 0, .08);--sidebar-text: #5c5a52;--sidebar-hover: rgba(0, 0, 0, .05);--sidebar-active-bg: rgba(13, 148, 136, .12);--sidebar-active: #0d9488;--sidebar-surface-subtle: rgba(0, 0, 0, .05);--sidebar-border-subtle: rgba(0, 0, 0, .1);--color-folder: #d97706;--color-file-pdf: #dc2626;--color-file-img: #0891b2;--color-file-doc: #0d9488;--color-file-sheet: #16a34a;--glass-bg: var(--color-surface-2);--glass-bg-strong: var(--color-surface-raised);--glass-bg-subtle: var(--color-surface-1);--glass-border: var(--color-border);--glass-border-strong: var(--color-border-strong);--glass-blur: 0px;--glass-blur-strong: 0px;--glass-blur-subtle: 0px;--gradient-brand: var(--color-primary);--gradient-brand-subtle: var(--color-primary-subtle);--gradient-surface: var(--color-surface-1);--gradient-sidebar: var(--color-surface-raised);--gradient-card: var(--color-surface-raised);--gradient-hero: var(--color-primary);--gradient-mesh: none;--glow-primary: 0 0 0 3px rgba(13, 148, 136, .15);--glow-accent: 0 0 0 3px rgba(13, 148, 136, .15);--glow-success: 0 0 0 3px rgba(22, 163, 74, .15);--glow-error: 0 0 0 3px rgba(220, 38, 38, .15);--glow-ambient: none;--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Cascadia Code", ui-monospace, monospace;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-base: 13.5px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 30px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-xs: 16px;--line-height-sm: 20px;--line-height-base: 22px;--line-height-lg: 24px;--line-height-xl: 28px;--line-height-2xl: 32px;--line-height-3xl: 36px;--letter-spacing-tight: -.011em;--letter-spacing-normal: 0em;--letter-spacing-wide: .02em;--letter-spacing-caps: .06em;--letter-spacing-section: .08em;--space-2xs: 2px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px;--radius-none: 0px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 999px;--shadow-0: none;--shadow-1: 0 1px 2px rgba(0, 0, 0, .05);--shadow-2: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-3: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);--shadow-4: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-card: 0 1px 3px rgba(0, 0, 0, .08);--shadow-card-hover: 0 4px 12px rgba(0, 0, 0, .12);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05), 0 1px 3px rgba(0, 0, 0, .04);--shadow-md: 0 4px 16px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .04);--shadow-border: 0 1px 0 var(--color-border);--shadow-inset: inset 0 1px 2px rgba(0, 0, 0, .06);--shadow-inset-strong: inset 0 2px 4px rgba(0, 0, 0, .1);--shadow-inset-subtle: inset 0 1px 2px rgba(0, 0, 0, .05);--motion-fast: .1s;--motion-fast-plus: .12s;--motion-normal: .15s;--motion-slow: .25s;--motion-slow-plus: .3s;--motion-slower: .4s;--motion-slowest: .6s;--motion-ease-standard: cubic-bezier(.4, 0, .2, 1);--motion-ease-emphasized: cubic-bezier(.4, 0, .2, 1);--motion-ease-decelerate: cubic-bezier(0, 0, .2, 1);--motion-ease-linear: linear;--motion-ease-spring: cubic-bezier(.34, 1.56, .64, 1);--motion-transition-default: var(--motion-normal) var(--motion-ease-standard);--motion-spring: var(--motion-normal) var(--motion-ease-standard);--document-card-padding: var(--space-lg);--document-card-gap: var(--space-md);--document-thumb-size-sm: 48px;--document-thumb-size-md: 56px;--document-thumb-size-lg: 72px;--document-card-min-height: 72px;--folder-row-height: 52px;--folder-row-padding-x: var(--space-lg);--folder-row-padding-y: var(--space-sm);--folder-row-icon-size: 20px;--button-height-sm: 32px;--button-height-md: 36px;--button-height-lg: 44px;--button-padding-x-sm: 12px;--button-padding-x-md: 16px;--button-padding-x-lg: 18px;--button-radius: var(--radius-md);--touch-target-min: 44px;--interactive-size-sm: 28px;--interactive-size-md: 36px;--badge-height: 20px;--badge-padding-x: 8px;--badge-radius: var(--radius-sm);--badge-font-size: var(--font-size-xs);--badge-font-weight: var(--font-weight-medium);--topbar-height: 52px;--topbar-accent-height: 2px;--topbar-avatar-ring-width: 3px;--banner-height-compact: 28px;--preview-panel-width: 400px;--chip-padding-y: 6px;--chip-padding-x: 14px;--chip-radius: 14px;--dropdown-offset: 4px;--dropdown-min-width: 200px;--dropdown-max-height: 300px;--card-recent-width: 160px;--card-icon-size: 48px;--storage-bar-height: 6px;--storage-bar-radius: 3px;--storage-legend-dot-size: 10px;--fade-edge-width: 32px;--onboarding-icon-size: 80px;--focus-ring-width: 2px;--focus-ring-offset: 2px;--focus-ring-offset-tight: 1px;--color-card-highlight: rgba(255, 255, 255, .8);--surface-card-bg: var(--color-surface-raised);--surface-card-border: 1px solid var(--color-border);--surface-card-radius: var(--radius-lg);--surface-card-shadow: var(--shadow-card);--surface-card-shadow-hover: var(--shadow-card-hover);--surface-interactive-lift: translateY(-1px);--surface-active-bg: var(--color-primary);--surface-active-shadow: 0 2px 8px rgba(0, 0, 0, .15);--color-file-pdf-bg: rgba(220, 38, 38, .1);--color-file-sheet-bg: rgba(22, 163, 74, .1);--color-file-doc-bg: rgba(13, 148, 136, .1);--color-file-img-bg: rgba(139, 92, 246, .1);--color-file-other-bg: rgba(107, 114, 128, .1);--color-privacy-bg: rgba(100, 116, 108, .08);--color-privacy-border: rgba(100, 116, 108, .25);--color-privacy-text: #5f6e65;--breakpoint-mobile-max: 767px;--breakpoint-tablet-min: 768px;--breakpoint-desktop-min: 1024px;--breakpoint-wide-min: 1440px}@media(prefers-color-scheme:dark){:root{--color-primary: #0d9488;--color-primary-hover: #0f766e;--color-primary-dark: #0f766e;--color-primary-active: #0b5f58;--color-primary-subtle: rgba(13, 148, 136, .14);--color-primary-light: rgba(13, 148, 136, .14);--color-primary-muted: rgba(13, 148, 136, .2);--color-primary-border: rgba(13, 148, 136, .28);--color-on-primary: #ffffff;--color-secondary: #22d3ee;--color-accent: #0d9488;--color-accent-subtle: rgba(13, 148, 136, .14);--color-warm: #fbbf24;--color-warm-subtle: rgba(251, 191, 36, .12);--color-cat-invoice: #fbbf24;--color-cat-invoice-subtle: rgba(251, 191, 36, .15);--color-cat-receipt: #34d399;--color-cat-receipt-subtle: rgba(52, 211, 153, .15);--color-cat-contract: #60a5fa;--color-cat-contract-subtle: rgba(96, 165, 250, .15);--color-cat-report: #38bdf8;--color-cat-report-subtle: rgba(56, 189, 248, .18);--color-success: #4ade80;--color-success-subtle: rgba(74, 222, 128, .1);--color-warning: #fbbf24;--color-warning-subtle: rgba(251, 191, 36, .1);--color-error: #f87171;--color-error-hover: #fca5a5;--color-error-active: #f87171;--color-error-subtle: rgba(248, 113, 113, .1);--color-info: #38bdf8;--color-info-subtle: rgba(56, 189, 248, .1);--color-surface-1: #0e1017;--color-surface-2: #1c1e2a;--color-surface-3: #2a2d3a;--color-surface-4: #3a3d4a;--color-surface-raised: #161820;--color-surface-overlay: rgba(14, 16, 23, .85);--color-surface-sunken: #0a0b0f;--color-bg: #0e1017;--color-surface: #161820;--color-text-primary: #e4e2ed;--color-text-secondary: #8a8898;--color-text-muted: #4e4c60;--color-text-inverse: #0e1017;--color-text: #e4e2ed;--color-text-2: #8a8898;--color-text-3: #4e4c60;--color-border: rgba(255, 255, 255, .08);--color-border-subtle: rgba(255, 255, 255, .05);--color-border-strong: rgba(255, 255, 255, .12);--color-focus-ring: #5eead4;--color-selection: rgba(13, 148, 136, .16);--color-hover: rgba(255, 255, 255, .05);--state-hover-bg: var(--color-surface-2);--state-hover-border: var(--color-border-strong);--state-active-bg: var(--color-surface-3);--state-disabled-opacity: .5;--state-focus-ring: 2px solid var(--color-focus-ring);--state-focus-ring-offset: 2px;--state-focus-bg: var(--color-primary-subtle);--color-icon-primary: #e4e2ed;--color-icon-secondary: #8a8898;--color-icon-muted: #4e4c60;--sidebar-bg: #1a1c24;--sidebar-border: rgba(255, 255, 255, .08);--sidebar-text: #9e9caa;--sidebar-hover: rgba(255, 255, 255, .06);--sidebar-active-bg: rgba(13, 148, 136, .15);--sidebar-active: #5eead4;--sidebar-surface-subtle: rgba(255, 255, 255, .06);--sidebar-border-subtle: rgba(255, 255, 255, .1);--color-folder: #fbbf24;--color-file-pdf: #f87171;--color-file-img: #c084fc;--color-file-doc: #60a5fa;--color-file-sheet: #4ade80;--glass-bg: var(--color-surface-2);--glass-bg-strong: var(--color-surface-raised);--glass-bg-subtle: var(--color-surface-1);--glass-border: var(--color-border);--glass-border-strong: var(--color-border-strong);--gradient-brand: var(--color-primary);--gradient-brand-subtle: var(--color-primary-subtle);--gradient-surface: var(--color-surface-1);--gradient-sidebar: var(--color-surface-1);--gradient-card: var(--color-surface-raised);--gradient-hero: var(--color-primary);--gradient-mesh: none;--glow-primary: 0 0 0 3px rgba(13, 148, 136, .2);--glow-accent: 0 0 0 3px rgba(13, 148, 136, .2);--glow-success: 0 0 0 3px rgba(74, 222, 128, .2);--glow-error: 0 0 0 3px rgba(248, 113, 113, .2);--glow-ambient: none;--shadow-1: 0 1px 2px rgba(0, 0, 0, .3);--shadow-2: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3);--shadow-3: 0 4px 6px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .3);--shadow-4: 0 10px 15px rgba(0, 0, 0, .5), 0 4px 6px rgba(0, 0, 0, .4);--shadow-card: 0 1px 3px rgba(0, 0, 0, .4);--shadow-card-hover: 0 6px 20px rgba(0, 0, 0, .5);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 20px rgba(0, 0, 0, .5);--shadow-border: 0 1px 0 var(--color-border);--shadow-inset: inset 0 1px 3px rgba(0, 0, 0, .3);--shadow-inset-strong: inset 0 2px 6px rgba(0, 0, 0, .4);--shadow-inset-subtle: inset 0 1px 2px rgba(0, 0, 0, .2);--color-card-highlight: rgba(255, 255, 255, .04);--surface-active-shadow: 0 2px 8px rgba(0, 0, 0, .3);--color-file-pdf-bg: rgba(239, 68, 68, .13);--color-file-sheet-bg: rgba(34, 197, 94, .11);--color-file-doc-bg: rgba(59, 130, 246, .11);--color-file-img-bg: rgba(168, 85, 247, .11);--color-file-other-bg: rgba(100, 116, 139, .1);--color-privacy-bg: rgba(148, 163, 154, .1);--color-privacy-border: rgba(148, 163, 154, .25);--color-privacy-text: #94a39a}}.theme-dark{--color-primary: #0d9488;--color-primary-hover: #0f766e;--color-primary-dark: #0f766e;--color-primary-active: #0b5f58;--color-primary-subtle: rgba(13, 148, 136, .14);--color-primary-light: rgba(13, 148, 136, .14);--color-primary-muted: rgba(13, 148, 136, .2);--color-primary-border: rgba(13, 148, 136, .28);--color-on-primary: #ffffff;--color-secondary: #22d3ee;--color-accent: #0d9488;--color-accent-subtle: rgba(13, 148, 136, .14);--color-warm: #fbbf24;--color-warm-subtle: rgba(251, 191, 36, .12);--color-cat-invoice: #fbbf24;--color-cat-invoice-subtle: rgba(251, 191, 36, .15);--color-cat-receipt: #34d399;--color-cat-receipt-subtle: rgba(52, 211, 153, .15);--color-cat-contract: #60a5fa;--color-cat-contract-subtle: rgba(96, 165, 250, .15);--color-cat-report: #38bdf8;--color-cat-report-subtle: rgba(56, 189, 248, .18);--color-success: #4ade80;--color-success-subtle: rgba(74, 222, 128, .1);--color-warning: #fbbf24;--color-warning-subtle: rgba(251, 191, 36, .1);--color-error: #f87171;--color-error-hover: #fca5a5;--color-error-active: #f87171;--color-error-subtle: rgba(248, 113, 113, .1);--color-info: #38bdf8;--color-info-subtle: rgba(56, 189, 248, .1);--color-surface-1: #0e1017;--color-surface-2: #1c1e2a;--color-surface-3: #2a2d3a;--color-surface-4: #3a3d4a;--color-surface-raised: #161820;--color-surface-overlay: rgba(14, 16, 23, .85);--color-surface-sunken: #0a0b0f;--color-bg: #0e1017;--color-surface: #161820;--color-text-primary: #e4e2ed;--color-text-secondary: #8a8898;--color-text-muted: #4e4c60;--color-text-inverse: #0e1017;--color-text: #e4e2ed;--color-text-2: #8a8898;--color-text-3: #4e4c60;--color-border: rgba(255, 255, 255, .08);--color-border-subtle: rgba(255, 255, 255, .05);--color-border-strong: rgba(255, 255, 255, .12);--color-focus-ring: #5eead4;--color-selection: rgba(13, 148, 136, .16);--color-hover: rgba(255, 255, 255, .05);--state-hover-bg: var(--color-surface-2);--state-hover-border: var(--color-border-strong);--state-active-bg: var(--color-surface-3);--state-disabled-opacity: .5;--state-focus-ring: 2px solid var(--color-focus-ring);--state-focus-ring-offset: 2px;--state-focus-bg: var(--color-primary-subtle);--color-icon-primary: #e4e2ed;--color-icon-secondary: #8a8898;--color-icon-muted: #4e4c60;--sidebar-bg: #1a1c24;--sidebar-border: rgba(255, 255, 255, .08);--sidebar-text: #9e9caa;--sidebar-hover: rgba(255, 255, 255, .06);--sidebar-active-bg: rgba(13, 148, 136, .15);--sidebar-active: #5eead4;--sidebar-surface-subtle: rgba(255, 255, 255, .06);--sidebar-border-subtle: rgba(255, 255, 255, .1);--color-folder: #fbbf24;--color-file-pdf: #f87171;--color-file-img: #c084fc;--color-file-doc: #60a5fa;--color-file-sheet: #4ade80;--glass-bg: var(--color-surface-2);--glass-bg-strong: var(--color-surface-raised);--glass-bg-subtle: var(--color-surface-1);--glass-border: var(--color-border);--glass-border-strong: var(--color-border-strong);--gradient-brand: var(--color-primary);--gradient-brand-subtle: var(--color-primary-subtle);--gradient-surface: var(--color-surface-1);--gradient-sidebar: var(--color-surface-1);--gradient-card: var(--color-surface-raised);--gradient-hero: var(--color-primary);--gradient-mesh: none;--glow-primary: 0 0 0 3px rgba(13, 148, 136, .2);--glow-accent: 0 0 0 3px rgba(13, 148, 136, .2);--glow-success: 0 0 0 3px rgba(74, 222, 128, .2);--glow-error: 0 0 0 3px rgba(248, 113, 113, .2);--glow-ambient: none;--shadow-1: 0 1px 2px rgba(0, 0, 0, .3);--shadow-2: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3);--shadow-3: 0 4px 6px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .3);--shadow-4: 0 10px 15px rgba(0, 0, 0, .5), 0 4px 6px rgba(0, 0, 0, .4);--shadow-card: 0 1px 3px rgba(0, 0, 0, .4);--shadow-card-hover: 0 6px 20px rgba(0, 0, 0, .5);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 20px rgba(0, 0, 0, .5);--shadow-border: 0 1px 0 var(--color-border);--shadow-inset: inset 0 1px 3px rgba(0, 0, 0, .3);--shadow-inset-strong: inset 0 2px 6px rgba(0, 0, 0, .4);--shadow-inset-subtle: inset 0 1px 2px rgba(0, 0, 0, .2);--color-card-highlight: rgba(255, 255, 255, .04);--surface-active-shadow: 0 2px 8px rgba(0, 0, 0, .3);--color-file-pdf-bg: rgba(239, 68, 68, .13);--color-file-sheet-bg: rgba(34, 197, 94, .11);--color-file-doc-bg: rgba(59, 130, 246, .11);--color-file-img-bg: rgba(168, 85, 247, .11);--color-file-other-bg: rgba(100, 116, 139, .1);--color-privacy-bg: rgba(148, 163, 154, .1);--color-privacy-border: rgba(148, 163, 154, .25);--color-privacy-text: #94a39a}.theme-light{--color-primary: #0d9488;--color-primary-hover: #0f766e;--color-primary-active: #0b5f58;--color-primary-subtle: rgba(13, 148, 136, .09);--color-primary-light: rgba(13, 148, 136, .09);--color-primary-muted: rgba(13, 148, 136, .2);--color-primary-border: rgba(13, 148, 136, .2);--color-on-primary: #ffffff;--color-secondary: #0891b2;--color-accent: #0d9488;--color-accent-subtle: rgba(13, 148, 136, .08);--color-success: #16a34a;--color-success-subtle: rgba(22, 163, 74, .08);--color-warning: #ca8a04;--color-warning-subtle: rgba(202, 138, 4, .08);--color-error: #dc2626;--color-error-hover: #b91c1c;--color-error-active: #991b1b;--color-error-subtle: rgba(220, 38, 38, .06);--color-info: #0284c7;--color-info-subtle: rgba(2, 132, 199, .08);--color-surface-1: #f2f1ee;--color-surface-2: #f8f7f5;--color-surface-3: #e4e1da;--color-surface-4: #d1d5db;--color-surface-raised: #ffffff;--color-surface-overlay: rgba(255, 255, 255, .8);--color-surface-sunken: #f8f7f5;--color-bg: #f2f1ee;--color-surface: #ffffff;--color-text-primary: #18170f;--color-text-secondary: #6b6860;--color-text-muted: #b0ada6;--color-text-inverse: #ffffff;--color-text: #18170f;--color-text-2: #6b6860;--color-text-3: #b0ada6;--color-border: #e4e1da;--color-border-subtle: #eeebe5;--color-border-strong: #d1d5db;--color-focus-ring: #0d9488;--color-selection: rgba(13, 148, 136, .12);--color-hover: rgba(0, 0, 0, .04);--state-hover-bg: var(--color-surface-2);--state-hover-border: var(--color-border-strong);--state-active-bg: var(--color-surface-3);--state-disabled-opacity: .5;--state-focus-ring: 2px solid var(--color-focus-ring);--state-focus-ring-offset: 2px;--state-focus-bg: var(--color-primary-subtle);--color-icon-primary: #18170f;--color-icon-secondary: #6b6860;--color-icon-muted: #b0ada6;--sidebar-bg: #e8e6e1;--sidebar-border: rgba(0, 0, 0, .08);--sidebar-text: #5c5a52;--sidebar-hover: rgba(0, 0, 0, .05);--sidebar-active-bg: rgba(13, 148, 136, .12);--sidebar-active: #0d9488;--sidebar-surface-subtle: rgba(0, 0, 0, .05);--sidebar-border-subtle: rgba(0, 0, 0, .1);--color-folder: #d97706;--color-file-pdf: #dc2626;--color-file-img: #0891b2;--color-file-doc: #0d9488;--color-file-sheet: #16a34a;--glass-bg: var(--color-surface-2);--glass-bg-strong: var(--color-surface-raised);--glass-bg-subtle: var(--color-surface-1);--glass-border: var(--color-border);--glass-border-strong: var(--color-border-strong);--gradient-brand: var(--color-primary);--gradient-brand-subtle: var(--color-primary-subtle);--gradient-surface: var(--color-surface-1);--gradient-sidebar: var(--color-surface-raised);--gradient-card: var(--color-surface-raised);--gradient-hero: var(--color-primary);--gradient-mesh: none;--glow-primary: 0 0 0 3px rgba(13, 148, 136, .15);--glow-accent: 0 0 0 3px rgba(13, 148, 136, .15);--glow-success: 0 0 0 3px rgba(22, 163, 74, .15);--glow-error: 0 0 0 3px rgba(220, 38, 38, .15);--glow-ambient: none;--shadow-1: 0 1px 2px rgba(0, 0, 0, .05);--shadow-2: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-3: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);--shadow-4: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-card: 0 1px 3px rgba(0, 0, 0, .08);--shadow-card-hover: 0 4px 12px rgba(0, 0, 0, .12);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05), 0 1px 3px rgba(0, 0, 0, .04);--shadow-md: 0 4px 16px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .04);--shadow-border: 0 1px 0 var(--color-border);--shadow-inset: inset 0 1px 2px rgba(0, 0, 0, .06);--shadow-inset-strong: inset 0 2px 4px rgba(0, 0, 0, .1);--shadow-inset-subtle: inset 0 1px 2px rgba(0, 0, 0, .05);--color-card-highlight: rgba(255, 255, 255, .8)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;overflow:hidden}body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text-primary);background:var(--color-surface-1);height:100%;margin:0;overflow:hidden}body:has(.landing){overflow:auto}:where(a[href],button,input,select,textarea,summary,[role=button],[tabindex]:not([tabindex="-1"])):focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}#root{height:100%}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}ul,ol{list-style:none}img,picture,video,canvas,svg{display:block;max-width:100%}img{height:auto}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer;padding:0}button:disabled{cursor:not-allowed}button:focus,a:focus,input:focus,textarea:focus,select:focus{outline:none}button{appearance:none;-webkit-appearance:none;-moz-appearance:none}a{color:inherit;text-decoration:none}table{border-collapse:collapse;border-spacing:0}::selection{background:var(--color-selection);color:var(--color-text-primary)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.app-layout{display:grid;grid-template-columns:260px 1fr 400px;grid-template-rows:auto 1fr;min-height:100dvh;height:100dvh;overflow:hidden;background:var(--color-surface-1);position:relative;transition:grid-template-columns .3s cubic-bezier(.4,0,.2,1)}.app-topbar{grid-column:1 / -1;grid-row:1;height:56px;display:flex;align-items:center;background:var(--color-surface-raised);border-bottom:none;box-shadow:0 1px 0 var(--color-border),0 2px 8px #0000000f;z-index:100;position:relative}.app-sidebar{grid-column:1;grid-row:2;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;background:var(--color-surface-raised);border-right:1px solid var(--color-border);box-shadow:1px 0 4px #0000000a;transition:width var(--motion-transition-default);position:relative;z-index:1}.app-content{grid-column:2;grid-row:2;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:var(--space-xl);background:var(--color-surface-1);box-shadow:inset 0 2px 6px #0000000a;position:relative;z-index:1;transition:padding .2s ease}.app-preview{grid-column:3;grid-row:2;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;background:var(--color-surface-raised);border-left:1px solid var(--color-border);box-shadow:-1px 0 4px #0000000a;transition:width var(--motion-transition-default);position:relative;z-index:1}.app-layout.sidebar-collapsed{grid-template-columns:60px 1fr 400px}.app-layout.sidebar-collapsed .app-sidebar{width:60px;overflow:hidden}.app-layout.preview-hidden{grid-template-columns:260px 1fr}.app-layout.preview-hidden .app-preview{display:none}.app-layout.sidebar-collapsed.preview-hidden{grid-template-columns:60px 1fr}@media(max-width:1023px){.app-layout{grid-template-columns:260px 1fr}.app-preview{position:fixed;right:0;top:56px;width:400px;height:calc(100dvh - 56px);transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:150;box-shadow:var(--shadow-4)}.app-layout.preview-visible{grid-template-columns:260px 1fr}.app-layout.preview-visible .app-preview{transform:translate(0)}.app-layout.sidebar-collapsed{grid-template-columns:60px 1fr}}@media(max-width:767px){.app-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr}.app-topbar{height:56px;padding:0 var(--space-md)}.app-sidebar{position:fixed;top:56px;left:0;width:280px;height:calc(100dvh - 56px);z-index:200;box-shadow:var(--shadow-3);transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);visibility:visible}.app-layout.sidebar-open .app-sidebar{transform:translate(0)}.app-content{grid-column:1;padding:var(--space-lg)}.app-preview{position:fixed;inset:56px 0 0;width:100%;height:calc(100dvh - 56px);z-index:300;box-shadow:var(--shadow-4);transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.app-layout.preview-open .app-preview{transform:translate(0)}.app-layout.sidebar-collapsed,.app-layout.preview-hidden{grid-template-columns:1fr}}@media(min-width:1440px){.app-layout{grid-template-columns:280px 1fr 480px}.app-content{padding:var(--space-2xl);max-width:1600px;margin:0 auto}.app-layout.sidebar-collapsed{grid-template-columns:60px 1fr 480px}.app-layout.preview-hidden{grid-template-columns:280px 1fr}.app-layout.sidebar-collapsed.preview-hidden{grid-template-columns:60px 1fr}}.app-sidebar::-webkit-scrollbar,.app-content::-webkit-scrollbar,.app-preview::-webkit-scrollbar{width:8px}.app-sidebar::-webkit-scrollbar-track,.app-content::-webkit-scrollbar-track,.app-preview::-webkit-scrollbar-track{background:transparent}.app-sidebar::-webkit-scrollbar-thumb,.app-content::-webkit-scrollbar-thumb,.app-preview::-webkit-scrollbar-thumb{background:var(--color-border-subtle);border-radius:var(--radius-full)}.app-sidebar::-webkit-scrollbar-thumb:hover,.app-content::-webkit-scrollbar-thumb:hover,.app-preview::-webkit-scrollbar-thumb:hover{background:var(--color-primary);opacity:.6}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.7}}@keyframes starBounce{0%{transform:scale(1)}30%{transform:scale(1.3)}60%{transform:scale(.9)}to{transform:scale(1)}}@keyframes gentleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-fade-in{animation:fadeIn var(--motion-normal) var(--motion-ease-decelerate) both}.animate-fade-in-up{animation:fadeInUp var(--motion-slow) var(--motion-ease-decelerate) both}.animate-fade-in-down{animation:fadeInDown var(--motion-slow) var(--motion-ease-decelerate) both}.animate-slide-in-left{animation:slideInLeft var(--motion-slow) var(--motion-ease-decelerate) both}.animate-slide-in-right{animation:slideInRight var(--motion-slow) var(--motion-ease-decelerate) both}.animate-scale-in{animation:scaleIn var(--motion-normal) var(--motion-ease-emphasized) both}.animate-shimmer{background:linear-gradient(90deg,var(--color-surface-2) 25%,var(--color-surface-3) 50%,var(--color-surface-2) 75%);background-size:200% 100%;animation:shimmer 1.5s var(--motion-ease-linear) infinite}.stagger-1{animation-delay:30ms}.stagger-2{animation-delay:60ms}.stagger-3{animation-delay:90ms}.stagger-4{animation-delay:.12s}.stagger-5{animation-delay:.15s}.stagger-6{animation-delay:.18s}.stagger-7{animation-delay:.21s}.stagger-8{animation-delay:.24s}.hover-lift{transition:transform var(--motion-normal) var(--motion-ease-emphasized),box-shadow var(--motion-normal) var(--motion-ease-standard)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.hover-scale{transition:transform var(--motion-fast) var(--motion-ease-emphasized)}.hover-scale:hover{transform:scale(1.02)}.hover-scale:active{transform:scale(.98)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skip-to-main{position:absolute;top:-100%;left:0;z-index:9999;padding:var(--space-md) var(--space-lg);background:var(--color-primary);color:var(--color-text-inverse);font-weight:var(--font-weight-semibold);text-decoration:none;border-radius:var(--radius-md)}.skip-to-main:focus{top:var(--space-md);left:var(--space-md);outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.truncate-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.flex-row{display:flex;flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-inverse{color:var(--color-text-inverse)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-info{color:var(--color-info)}.text-xs{font-size:var(--font-size-xs);line-height:var(--line-height-xs)}.text-sm{font-size:var(--font-size-sm);line-height:var(--line-height-sm)}.text-base{font-size:var(--font-size-base);line-height:var(--line-height-base)}.text-lg{font-size:var(--font-size-lg);line-height:var(--line-height-lg)}.text-xl{font-size:var(--font-size-xl);line-height:var(--line-height-xl)}.text-2xl{font-size:var(--font-size-2xl);line-height:var(--line-height-2xl)}.text-3xl{font-size:var(--font-size-3xl);line-height:var(--line-height-3xl)}.font-regular{font-weight:var(--font-weight-regular)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-sans{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.p-xs{padding:var(--space-xs)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.p-2xl{padding:var(--space-2xl)}.px-xs{padding-left:var(--space-xs);padding-right:var(--space-xs)}.px-sm{padding-left:var(--space-sm);padding-right:var(--space-sm)}.px-md{padding-left:var(--space-md);padding-right:var(--space-md)}.px-lg{padding-left:var(--space-lg);padding-right:var(--space-lg)}.px-xl{padding-left:var(--space-xl);padding-right:var(--space-xl)}.px-2xl{padding-left:var(--space-2xl);padding-right:var(--space-2xl)}.py-xs{padding-top:var(--space-xs);padding-bottom:var(--space-xs)}.py-sm{padding-top:var(--space-sm);padding-bottom:var(--space-sm)}.py-md{padding-top:var(--space-md);padding-bottom:var(--space-md)}.py-lg{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.py-xl{padding-top:var(--space-xl);padding-bottom:var(--space-xl)}.py-2xl{padding-top:var(--space-2xl);padding-bottom:var(--space-2xl)}.m-xs{margin:var(--space-xs)}.m-sm{margin:var(--space-sm)}.m-md{margin:var(--space-md)}.m-lg{margin:var(--space-lg)}.m-xl{margin:var(--space-xl)}.m-2xl{margin:var(--space-2xl)}.mx-xs{margin-left:var(--space-xs);margin-right:var(--space-xs)}.mx-sm{margin-left:var(--space-sm);margin-right:var(--space-sm)}.mx-md{margin-left:var(--space-md);margin-right:var(--space-md)}.mx-lg{margin-left:var(--space-lg);margin-right:var(--space-lg)}.mx-xl{margin-left:var(--space-xl);margin-right:var(--space-xl)}.mx-2xl{margin-left:var(--space-2xl);margin-right:var(--space-2xl)}.my-xs{margin-top:var(--space-xs);margin-bottom:var(--space-xs)}.my-sm{margin-top:var(--space-sm);margin-bottom:var(--space-sm)}.my-md{margin-top:var(--space-md);margin-bottom:var(--space-md)}.my-lg{margin-top:var(--space-lg);margin-bottom:var(--space-lg)}.my-xl{margin-top:var(--space-xl);margin-bottom:var(--space-xl)}.my-2xl{margin-top:var(--space-2xl);margin-bottom:var(--space-2xl)}.mx-auto{margin-left:auto;margin-right:auto}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.w-full{width:100%}.h-full{height:100%}.w-screen{width:100vw}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.focus-ring{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}.focus-visible:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}.rounded-none{border-radius:var(--radius-none)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:var(--radius-full)}.shadow-0{box-shadow:var(--shadow-0)}.shadow-1{box-shadow:var(--shadow-1)}.shadow-2{box-shadow:var(--shadow-2)}.shadow-3{box-shadow:var(--shadow-3)}.shadow-4{box-shadow:var(--shadow-4)}.pointer{cursor:pointer}.not-allowed{cursor:not-allowed}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.select-all{-webkit-user-select:all;user-select:all}.state-hover:hover{background:var(--state-hover-bg);transition:background-color var(--motion-normal)}.state-focus:focus-visible{outline:var(--state-focus-ring);outline-offset:var(--state-focus-ring-offset)}.state-disabled:disabled,.state-disabled[aria-disabled=true]{opacity:var(--state-disabled-opacity);cursor:not-allowed;pointer-events:none}.state-loading{opacity:var(--state-disabled-opacity);pointer-events:none;cursor:wait}.touch-target{min-width:var(--touch-target-min);min-height:var(--touch-target-min)}.page-enter{animation:fadeIn .2s ease both}.oauth-callback{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--color-bg)}.oauth-callback__spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:oauth-spin .8s linear infinite}@keyframes oauth-spin{to{transform:rotate(360deg)}}.oauth-callback__error{max-width:400px;padding:var(--space-lg);color:var(--color-text);text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:1;border:none;border-radius:var(--button-radius);cursor:pointer;transition:var(--motion-transition-default);white-space:nowrap;-webkit-user-select:none;user-select:none}.button:focus-visible{outline:var(--state-focus-ring);outline-offset:var(--state-focus-ring-offset);box-shadow:0 0 0 4px var(--state-focus-bg)}.button:disabled{cursor:not-allowed;opacity:var(--state-disabled-opacity)}.button--sm{height:var(--button-height-sm);padding-left:var(--button-padding-x-sm);padding-right:var(--button-padding-x-sm);font-size:var(--font-size-sm)}.button--md{height:var(--button-height-md);padding-left:var(--button-padding-x-md);padding-right:var(--button-padding-x-md)}.button--lg{height:var(--button-height-lg);padding-left:var(--button-padding-x-lg);padding-right:var(--button-padding-x-lg)}@media(max-width:768px){.button--sm,.button--md,.button--lg{min-height:var(--touch-target-min)}}.button--primary{background-color:var(--color-primary);color:#fff}.button--primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.button--primary:active:not(:disabled){background-color:var(--color-primary-active)}.button--secondary{background-color:transparent;color:var(--color-text-primary);border:1px solid var(--color-border-strong)}.button--secondary:hover:not(:disabled){background-color:var(--state-hover-bg);border-color:var(--state-hover-border)}.button--secondary:active:not(:disabled){background-color:var(--state-active-bg)}.button--ghost{background-color:transparent;color:var(--color-text-primary)}.button--ghost:hover:not(:disabled){background-color:var(--state-hover-bg)}.button--ghost:active:not(:disabled){background-color:var(--state-active-bg)}.button--danger{background-color:var(--color-error);color:#fff}.button--danger:hover:not(:disabled){background-color:var(--color-error-hover)}.button--danger:active:not(:disabled){background-color:var(--color-error-active)}.button--loading{pointer-events:none;opacity:var(--state-disabled-opacity)}.button__spinner{animation:button-spin 1s linear infinite}@keyframes button-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.button__icon{display:inline-flex;align-items:center;justify-content:center;width:1em;height:1em}.button__icon>svg{width:100%;height:100%}.button__text{display:inline-flex;align-items:center;gap:6px}.button__text>svg{flex-shrink:0;width:16px;height:16px;vertical-align:middle}.badge{display:inline-flex;align-items:center;justify-content:center;height:var(--badge-height);padding-left:var(--badge-padding-x);padding-right:var(--badge-padding-x);font-size:var(--badge-font-size);font-weight:var(--badge-font-weight);line-height:1;border-radius:var(--badge-radius);white-space:nowrap;-webkit-user-select:none;user-select:none}.badge--default{background-color:var(--color-surface-3);color:var(--color-text-primary)}.badge--primary{background-color:var(--color-primary);color:#fff}.badge--success{background-color:var(--color-success);color:#fff}.badge--warning{background-color:var(--color-warning);color:#fff}.badge--muted{background-color:var(--color-surface-2);color:var(--color-text-secondary)}.skeleton{position:relative;overflow:hidden;background-color:var(--color-surface-3);border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,transparent 0%,transparent 42%,var(--color-primary-subtle) 50%,transparent 58%,transparent 100%);transform:translate(-120%);animation:skeleton-shimmer 1.5s ease-in-out infinite;will-change:transform}.skeleton--w-24{width:24px}.skeleton--w-32{width:32px}.skeleton--w-40{width:40px}.skeleton--w-60{width:60px}.skeleton--w-80{width:80px}.skeleton--w-200{width:200px}.skeleton--w-40p{width:40%}.skeleton--w-50p{width:50%}.skeleton--w-60p{width:60%}.skeleton--w-80p{width:80%}.skeleton--w-90p{width:90%}.skeleton--w-100p{width:100%}.skeleton--h-1em{height:1em}.skeleton--h-12{height:12px}.skeleton--h-14{height:14px}.skeleton--h-16{height:16px}.skeleton--h-18{height:18px}.skeleton--h-24{height:24px}.skeleton--h-32{height:32px}.skeleton--h-40{height:40px}.skeleton--h-60p{height:60%}.skeleton--r-4{border-radius:4px}.skeleton--r-8{border-radius:8px}.skeleton--r-12{border-radius:12px}.skeleton--r-50p{border-radius:50%}.skeleton--r-sm{border-radius:var(--radius-sm)}@keyframes skeleton-shimmer{0%{transform:translate(-120%)}to{transform:translate(120%)}}.skeleton-text{display:flex;flex-direction:column;gap:var(--space-sm)}.skeleton-text__line{height:1em;width:100%}.skeleton-text__line--last{width:75%}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl);text-align:center;animation:fadeInUp .4s ease both}.empty-state__icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:var(--space-lg);color:var(--color-text-muted);animation:gentleFloat 3s ease-in-out infinite}.empty-state__icon>svg{width:100%;height:100%}.empty-state__title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-xs)}.empty-state__description{margin:0;font-size:var(--font-size-base);color:var(--color-text-muted);max-width:400px;margin-bottom:var(--space-md)}.empty-state__action{margin-top:var(--space-md)}.error-banner{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background-color:var(--color-surface-2);border-left:3px solid var(--color-error);border-radius:var(--radius-sm)}.error-banner__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--color-error)}.error-banner__icon>svg{width:100%;height:100%}.error-banner__content{flex:1;display:flex;align-items:center;gap:var(--space-md)}.error-banner__text{flex:1}.error-banner__message{margin:0;font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.error-banner__hint{margin:var(--space-xs) 0 0 0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.error-banner__retry{flex-shrink:0}.error-banner__dismiss{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:none;border:none;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:var(--motion-transition-default)}.error-banner__dismiss:hover{background-color:var(--state-hover-bg);color:var(--color-text-primary)}.error-banner__dismiss:focus-visible{outline:var(--state-focus-ring);outline-offset:var(--state-focus-ring-offset)}.error-banner__dismiss>svg{width:16px;height:16px}.search-input{position:relative;display:flex;align-items:center;width:100%;background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-inset-subtle);transition:var(--motion-transition-default);min-height:var(--touch-target-min)}.search-input:focus-within{outline:none;border-color:var(--color-primary);box-shadow:var(--glow-primary);background:var(--color-surface-raised)}.search-input__icon{position:absolute;left:var(--space-lg);width:16px;height:16px;color:var(--color-text-muted);pointer-events:none}.search-input__field{flex:1;height:var(--touch-target-min);padding-left:calc(var(--space-lg) + 16px + var(--space-sm));padding-right:var(--space-md);font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text-primary);background:transparent;border:none;outline:none}.search-input__field::placeholder{color:var(--color-text-muted)}.search-input__clear{display:flex;align-items:center;justify-content:center;width:var(--touch-target-min);height:var(--touch-target-min);margin-right:var(--space-xs);padding:0;background:none;border:none;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-full);transition:var(--motion-spring)}.search-input__clear:hover{background:var(--glass-bg);color:var(--color-text-primary)}.search-input__clear:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:-2px}.search-input__clear>svg{width:14px;height:14px}.tooltip{position:relative;display:inline-flex}.tooltip__content{position:absolute;z-index:1000;padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-sm);color:#fff;background-color:var(--color-text-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-2);white-space:nowrap;pointer-events:none;animation:tooltip-fade-in var(--motion-fast) ease-out}@keyframes tooltip-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.tooltip__content--top{bottom:calc(100% + var(--space-sm));left:50%;transform:translate(-50%)}.tooltip__content--top:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:var(--color-text-primary)}.tooltip__content--bottom{top:calc(100% + var(--space-sm));left:50%;transform:translate(-50%)}.tooltip__content--bottom:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-bottom-color:var(--color-text-primary)}.tooltip__content--left{right:calc(100% + var(--space-sm));top:50%;transform:translateY(-50%)}.tooltip__content--left:after{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);border:4px solid transparent;border-left-color:var(--color-text-primary)}.tooltip__content--right{left:calc(100% + var(--space-sm));top:50%;transform:translateY(-50%)}.tooltip__content--right:after{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:4px solid transparent;border-right-color:var(--color-text-primary)}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-xl);background:var(--color-surface-1)}.error-boundary__content{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:500px;padding:var(--space-xl);background:var(--color-surface-2);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.error-boundary__icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin-bottom:var(--space-lg);color:var(--color-danger)}.error-boundary__icon>svg{width:100%;height:100%}.error-boundary__title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-md)}.error-boundary__message{margin:0;font-size:var(--font-size-base);color:var(--color-text-muted);margin-bottom:var(--space-lg);word-break:break-word}.error-boundary__button{padding:var(--space-sm) var(--space-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-inverse);background:var(--color-primary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background-color .2s ease}.error-boundary__button:hover{background:var(--color-primary-hover)}.error-boundary__button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.error-boundary__button:active{transform:scale(.98)}.offline-banner{position:fixed;top:0;left:0;right:0;width:100%;z-index:1000;background:var(--color-warning, #f59e0b);color:#fff;padding:var(--space-xs) var(--space-md);font-size:var(--font-size-sm);text-align:center}.token-expired-banner{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background-color:var(--color-surface-2);border-left:3px solid var(--color-warning);border-radius:var(--radius-sm);box-shadow:0 1px 3px #0000000f;transition:padding var(--motion-slow) ease,gap var(--motion-slow) ease;position:relative;width:100%;min-width:0}.token-expired-banner--minimized{padding:var(--space-sm) var(--space-md);gap:var(--space-sm)}.token-expired-banner__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:var(--icon-size-xl);height:var(--icon-size-xl);color:var(--color-warning)}.token-expired-banner__icon>svg{width:100%;height:100%}.token-expired-banner__content{flex:1;display:flex;align-items:flex-start;gap:var(--space-md);flex-wrap:wrap;min-width:0}.token-expired-banner__message{margin:0;font-size:var(--font-size-base);color:var(--color-text-primary);flex:1;min-width:0;line-height:1.5}.token-expired-banner__message--compact{min-width:150px;font-size:var(--font-size-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.token-expired-banner__action{flex-shrink:0;align-self:flex-start}.token-expired-banner__actions{display:flex;gap:var(--space-sm);align-items:flex-start;flex-wrap:wrap}.token-expired-banner__toggle{flex-shrink:0;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:12px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--motion-normal) ease,color var(--motion-normal) ease}.token-expired-banner__toggle:hover{background-color:var(--color-surface-3);color:var(--color-text-primary)}.token-expired-banner__toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}body.confirm-dialog-body-lock{overflow:hidden}.confirm-dialog__overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10001;padding:var(--space-lg);animation:confirm-dialog-overlay-fade-in var(--motion-normal) ease-out}@keyframes confirm-dialog-overlay-fade-in{0%{opacity:0}to{opacity:1}}.confirm-dialog{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-4);max-width:480px;width:100%;display:flex;flex-direction:column;animation:confirm-dialog-scale-in var(--motion-normal) ease-out}@keyframes confirm-dialog-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.confirm-dialog__header{padding:var(--space-lg) var(--space-lg) var(--space-md)}.confirm-dialog__title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:1.4}.confirm-dialog__body{padding:0 var(--space-lg) var(--space-lg)}.confirm-dialog__description{margin:0;font-size:var(--font-size-base);line-height:1.5;color:var(--color-text-primary);opacity:.9}.confirm-dialog__footer{display:flex;gap:var(--space-sm);padding:var(--space-md) var(--space-lg) var(--space-lg);justify-content:flex-end}@media(max-width:640px){.confirm-dialog{max-width:calc(100vw - var(--space-xl))}.confirm-dialog__footer{flex-direction:column-reverse}.confirm-dialog__footer .button{width:100%}}.sync-status-panel{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:8px;padding:16px;box-shadow:0 2px 8px #00000014}.sync-status-panel__header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.sync-status-panel__spinner{animation:spin 1s linear infinite;color:var(--color-primary)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sync-status-panel__title{font-weight:600;font-size:14px;color:var(--color-text-primary)}.sync-status-panel__tier{font-size:12px;color:var(--color-text-secondary);background:var(--color-bg-secondary);padding:2px 8px;border-radius:4px;margin-left:auto;max-width:100%;line-height:1.35;white-space:normal;text-align:right}.sync-status-panel__progress{width:100%;height:4px;margin-bottom:12px}.sync-status-panel__progress-bar{appearance:none;-webkit-appearance:none;border:none;width:100%;height:100%;border-radius:2px;overflow:hidden}.sync-status-panel__progress-bar::-webkit-progress-bar{background:var(--color-bg-secondary);border-radius:2px}.sync-status-panel__progress-bar::-webkit-progress-value{background:var(--color-primary);border-radius:2px;transition:width .3s ease}.sync-status-panel__progress-bar::-moz-progress-bar{background:var(--color-primary);border-radius:2px;transition:width .3s ease}.sync-status-panel__metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:8px}.sync-status-panel__metric{display:flex;flex-direction:column;gap:2px}.sync-status-panel__metric--error{color:var(--color-error)}.sync-status-panel__metric-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-tertiary);display:flex;align-items:center;gap:4px}.sync-status-panel__metric-value{font-size:14px;font-weight:600;color:var(--color-text-primary)}.sync-status-panel__metric-icon{opacity:.6}.sync-status-panel__stage{padding-top:8px;border-top:1px solid var(--color-border);margin-top:8px}.sync-status-panel__stage-text{font-size:12px;color:var(--color-text-secondary);line-height:1.35}.sync-status-panel__retry{margin-top:12px;padding:8px 12px;background:var(--color-warning-subtle);border:1px solid var(--color-warning);border-radius:6px;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-warning)}.sync-status-panel__retry-icon{flex-shrink:0}.sync-status-compact{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary);padding:4px 8px;border-radius:4px;background:var(--color-bg-secondary)}.sync-status-compact__spinner{animation:spin 1s linear infinite;color:var(--color-primary);flex-shrink:0}.sync-status-compact__text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:900px){.sync-status-panel__tier{margin-left:0;text-align:left}}.page-skeleton{display:flex;height:100vh;width:100%;background:var(--color-bg, #f8f9fa);overflow:hidden}.page-skeleton__sidebar{width:240px;min-width:240px;background:var(--color-surface-1, #ffffff);border-right:1px solid var(--color-border, #e5e7eb);display:flex;flex-direction:column;padding:var(--space-md);gap:var(--space-lg)}.page-skeleton__sidebar-header{display:flex;align-items:center;gap:var(--space-sm);padding-bottom:var(--space-sm)}.page-skeleton__sidebar-nav{display:flex;flex-direction:column;gap:var(--space-xs)}.page-skeleton__sidebar-divider{height:1px;background:var(--color-border, #e5e7eb);margin:var(--space-sm) 0}.page-skeleton__sidebar-section{display:flex;flex-direction:column;gap:var(--space-sm)}.page-skeleton__main{flex:1;display:flex;flex-direction:column;overflow:hidden}.page-skeleton__topbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--color-border, #e5e7eb);background:var(--color-surface-1, #ffffff)}.page-skeleton__topbar-actions{display:flex;gap:var(--space-sm);align-items:center}.page-skeleton__content{flex:1;padding:var(--space-xl);overflow:auto}.page-skeleton__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-md)}.page-skeleton__card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-surface-1, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-md)}.page-skeleton__card-text{flex:1;display:flex;flex-direction:column;gap:var(--space-xs)}@media(max-width:768px){.page-skeleton__sidebar{display:none}.page-skeleton__grid{grid-template-columns:1fr}}@media(prefers-color-scheme:dark){.page-skeleton{background:var(--color-bg, #0f1419)}.page-skeleton__sidebar,.page-skeleton__topbar,.page-skeleton__card{background:var(--color-surface-1, #1a1f2e)}.page-skeleton__sidebar,.page-skeleton__topbar,.page-skeleton__card,.page-skeleton__sidebar-divider{border-color:var(--color-border, #2a3142)}}.toast-container{position:fixed;bottom:var(--space-xl);right:var(--space-xl);z-index:9999;display:flex;flex-direction:column;gap:var(--space-md);pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-md);background:var(--glass-bg-strong);backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong));border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);padding:var(--space-md) var(--space-lg);min-width:280px;max-width:400px;pointer-events:auto;border-left-width:4px;animation:toast-slide-in var(--motion-normal) var(--motion-ease-emphasized)}.toast--success{border-left-color:var(--color-success)}.toast--info{border-left-color:var(--color-info)}.toast--error{border-left-color:var(--color-error)}.toast__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px}.toast--success .toast__icon{color:var(--color-success)}.toast--info .toast__icon{color:var(--color-info)}.toast--error .toast__icon{color:var(--color-error)}.toast__message{flex:1;font-size:var(--font-size-sm);line-height:var(--line-height-sm);color:var(--color-text-primary);word-wrap:break-word}.toast__action{display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;border:none;background:none;color:var(--color-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;transition:text-decoration var(--motion-fast) var(--motion-ease-standard);text-decoration:none}.toast__action:hover{text-decoration:underline}.toast__action:focus-visible{outline:var(--state-focus-ring);outline-offset:var(--state-focus-ring-offset);border-radius:var(--radius-xs)}.toast__close{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;padding:0;border:none;background:none;color:var(--color-icon-secondary);cursor:pointer;border-radius:var(--radius-xs);transition:background var(--motion-fast) var(--motion-ease-standard)}.toast__close:hover{background:var(--glass-bg);color:var(--color-icon-primary)}.toast__close:focus-visible{outline:var(--state-focus-ring);outline-offset:var(--state-focus-ring-offset)}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:767px){.toast-container{bottom:var(--space-lg);right:var(--space-lg);left:var(--space-lg)}.toast{min-width:auto;max-width:none}}.sync-float{position:fixed;bottom:var(--space-lg);right:var(--space-lg);z-index:9000;display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001a;font-size:var(--font-size-xs);color:var(--color-text-secondary);min-width:200px;animation:sync-float-in .2s ease-out}@keyframes sync-float-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sync-float__bar{appearance:none;-webkit-appearance:none;border:none;width:80px;height:4px;background:var(--color-border);border-radius:var(--radius-full);overflow:hidden;flex-shrink:0}.sync-float__bar::-webkit-progress-bar{background:var(--color-border);border-radius:var(--radius-full)}.sync-float__bar::-webkit-progress-value{background:var(--color-primary);border-radius:var(--radius-full);transition:width .3s ease}.sync-float__bar::-moz-progress-bar{background:var(--color-primary);border-radius:var(--radius-full);transition:width .3s ease}.sync-float__label{white-space:nowrap}.onboarding-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000080;animation:onboarding-fadeIn .2s ease-out}@keyframes onboarding-fadeIn{0%{opacity:0}to{opacity:1}}.onboarding-dialog{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2xl);max-width:520px;width:calc(100% - var(--space-2xl));box-shadow:var(--shadow-4);animation:onboarding-slideUp .3s ease-out}@keyframes onboarding-slideUp{0%{opacity:0;transform:translateY(var(--space-lg))}to{opacity:1;transform:translateY(0)}}.onboarding-dialog__icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0 auto var(--space-xl);background:var(--color-primary-subtle);border-radius:var(--radius-xl);color:var(--color-primary)}.onboarding-dialog__title{margin:0 0 var(--space-sm);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);text-align:center;color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.onboarding-dialog__description{margin:0 0 var(--space-xl);font-size:var(--font-size-base);line-height:var(--line-height-base);text-align:center;color:var(--color-text-muted)}.onboarding-window-options{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);margin-bottom:var(--space-xl)}.onboarding-window-option{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-lg) var(--space-md);background:var(--color-surface-1);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s ease,background .15s ease}.onboarding-window-option:hover{border-color:var(--color-primary);background:var(--state-hover-bg)}.onboarding-window-option.active{border-color:var(--color-primary);background:var(--color-primary-subtle)}.onboarding-window-option__days{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.onboarding-window-option__label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.onboarding-archive-toggle{padding:var(--space-lg);background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-xl)}.onboarding-archive-toggle__header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);color:var(--color-text-primary)}.onboarding-archive-toggle__title{font-weight:var(--font-weight-medium);font-size:var(--font-size-base)}.onboarding-archive-toggle__description{margin:0 0 var(--space-md);font-size:var(--font-size-sm);line-height:var(--line-height-sm);color:var(--color-text-muted)}.onboarding-toggle{display:flex;align-items:center;gap:var(--space-md);cursor:pointer}.onboarding-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.onboarding-toggle__slider{position:relative;display:inline-block;width:44px;height:24px;background:var(--color-surface-3);border-radius:var(--radius-full);transition:background .2s ease}.onboarding-toggle__slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:var(--color-surface-raised);border-radius:var(--radius-full);transition:transform .2s ease}.onboarding-toggle input:checked+.onboarding-toggle__slider{background:var(--color-primary)}.onboarding-toggle input:checked+.onboarding-toggle__slider:before{transform:translate(20px)}.onboarding-toggle__label{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.onboarding-dialog__actions{display:flex;justify-content:center;margin-bottom:var(--space-md)}.onboarding-dialog__footer{margin:0;font-size:var(--font-size-xs);text-align:center;color:var(--color-text-muted)}@media(max-width:640px){.onboarding-dialog{padding:var(--space-xl)}.onboarding-window-options{grid-template-columns:1fr}.onboarding-window-option{flex-direction:row;justify-content:space-between;padding:var(--space-md) var(--space-lg)}}@media(prefers-reduced-motion:reduce){.onboarding-overlay,.onboarding-dialog{animation:none}}body.connect-dialog-body-lock{overflow:hidden}.connect-dialog__overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10001;padding:var(--space-lg);animation:connect-dialog-overlay-fade-in var(--motion-normal) ease-out}@keyframes connect-dialog-overlay-fade-in{0%{opacity:0}to{opacity:1}}.connect-dialog{position:relative;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-4);max-width:480px;width:100%;padding:24px;display:flex;flex-direction:column;animation:connect-dialog-scale-in var(--motion-normal) ease-out;max-height:calc(100vh - 2 * var(--space-lg));overflow-y:auto}@keyframes connect-dialog-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.connect-dialog__close{position:absolute;top:16px;right:16px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;background:var(--color-surface-2);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.connect-dialog__close:hover{background:var(--color-surface-3);color:var(--color-text-primary)}.connect-dialog__close:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.connect-dialog__brand{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 auto 12px;background:var(--color-primary-subtle, rgba(20, 184, 166, .1));border-radius:50%;color:var(--color-primary);box-shadow:0 0 0 6px #14b8a60f}.connect-dialog__reconnect-note{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--color-warning);background:var(--color-warning-subtle, rgba(245, 158, 11, .12));color:var(--color-text-primary);font-size:12px;line-height:1.4}.connect-dialog__reconnect-note svg{color:var(--color-warning);flex-shrink:0}.connect-dialog__title{color:var(--color-text-primary);font-size:22px;font-weight:800;letter-spacing:-.02em;margin:0 0 6px;text-align:center;line-height:1.3}.connect-dialog__subtitle{color:var(--color-text-secondary);font-size:14px;line-height:1.4;margin:0 0 20px;text-align:center}.connect-dialog__providers{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.connect-dialog-card{display:flex;align-items:center;gap:12px;padding:14px;background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease}.connect-dialog-card:hover{border-color:var(--color-border-strong);box-shadow:0 2px 12px #0000000f}.connect-dialog-card__icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-icon-secondary);flex-shrink:0}.connect-dialog-card__info{flex:1;min-width:0}.connect-dialog-card__name{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);font-size:14px;margin-bottom:2px}.connect-dialog-card__description{font-size:13px;color:var(--color-text-muted);line-height:1.4}.connect-dialog__trust{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:center;padding:12px 16px;margin-top:8px;background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-md)}.connect-dialog__trust-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary);white-space:nowrap}.connect-dialog__trust-item svg{color:var(--color-primary);flex-shrink:0;width:14px;height:14px}.connect-dialog-error{margin-top:var(--space-md);padding:var(--space-md);background:var(--color-surface-2);border-left:3px solid var(--color-error);border-radius:var(--radius-sm);text-align:left}.connect-dialog-error__message{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.connect-dialog-error__hint{margin:var(--space-xs) 0 0 0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.connect-dialog-confirmation{padding:var(--space-lg);margin-top:var(--space-md);background:linear-gradient(135deg,#14b8a61a,#14b8a60d);border:1px solid rgba(20,184,166,.3);border-radius:var(--radius-lg);text-align:center;animation:connect-dialog-slide-up .4s ease-out}@keyframes connect-dialog-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.connect-dialog-confirmation__icon{display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-sm);color:var(--color-primary)}.connect-dialog-confirmation__title{color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-xs)}.connect-dialog-confirmation__description{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5}.connect-dialog-progress{padding:var(--space-md);margin-top:var(--space-md);background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-md)}.connect-dialog-progress__title{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-sm);font-size:var(--font-size-sm)}.connect-dialog-progress__bar{appearance:none;-webkit-appearance:none;border:none;display:block;width:100%;height:4px;background:var(--color-surface-3);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-sm)}.connect-dialog-progress__bar::-webkit-progress-bar{background:var(--color-surface-3);border-radius:var(--radius-full)}.connect-dialog-progress__bar::-webkit-progress-value{background:var(--color-primary);border-radius:var(--radius-full);transition:width var(--motion-slow) ease-out}.connect-dialog-progress__bar::-moz-progress-bar{background:var(--color-primary);border-radius:var(--radius-full);transition:width var(--motion-slow) ease-out}.connect-dialog-progress__status{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.4}@media(max-width:640px){.connect-dialog{max-width:calc(100vw - 2 * var(--space-md));padding:20px}.connect-dialog__title{font-size:20px}.connect-dialog-card{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.connect-dialog-card button{width:100%}.connect-dialog__trust{flex-direction:column;gap:8px;align-items:flex-start}}@media(prefers-reduced-motion:reduce){.connect-dialog__overlay,.connect-dialog,.connect-dialog-confirmation{animation:none}}body.body-scroll-lock{overflow:hidden}.page-modal__overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#080f1cad;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:var(--space-lg);animation:page-modal-overlay-fade-in var(--motion-normal) ease-out;overflow:hidden;isolation:isolate}@keyframes page-modal-overlay-fade-in{0%{opacity:0}to{opacity:1}}.page-modal{position:relative;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-4);width:100%;display:flex;flex-direction:column;animation:page-modal-scale-in var(--motion-normal) ease-out;max-height:calc(100vh - 80px)}@keyframes page-modal-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.page-modal__close{position:absolute;top:16px;right:16px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;background:var(--color-surface-2);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease;z-index:1}.page-modal__close:hover{background:var(--state-hover-bg);color:var(--color-text-primary)}.page-modal__close:focus-visible{outline:var(--state-focus-ring);outline-offset:var(--state-focus-ring-offset)}.page-modal__content{overflow-y:auto;flex:1;min-height:0;padding:24px}@media(max-width:768px){.page-modal__overlay{padding:0}.page-modal{max-height:100vh;border-radius:0;max-width:100%!important}}
