:root{--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-family-secondary: "Poppins", sans-serif;--font-family-mono: "Fira Code", "Courier New", monospace;--font-size-base: 14px;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-md: .875rem;--font-size-base-rem: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.75rem;--font-size-4xl: 2rem;--font-size-5xl: 2.5rem;--font-size-6xl: 3rem;--font-size-7xl: 4rem;--font-size-8xl: 5rem;--font-xs: var(--font-size-xs);--font-sm: var(--font-size-sm);--text-xs: var(--font-size-xs);--text-sm: var(--font-size-sm);--text-lg: var(--font-size-lg);--text-2xl: var(--font-size-2xl);--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--line-height-body: 1.6;--heading-1: 1.75rem;--heading-2: 1.375rem;--heading-3: 1.125rem;--heading-4: .9375rem;--heading-weight: 600;--letter-spacing-tight: -.01em;--letter-spacing-wide: .02em;--spacing-unit: 4px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-2xl: 24px;--spacing-3xl: 32px;--spacing-4xl: 40px;--spacing-5xl: 48px;--spacing-6xl: 64px;--spacing-7xl: 80px;--spacing-8xl: 96px;--spacing-9xl: 160px;--size-spinner-xl: 64px;--size-spinner-fill-min: 400px;--spinner-border-sm: 2px;--spinner-border-md: 3px;--spinner-border-lg: 4px;--spinner-border-xl: 5px;--size-touch-target: 44px;--padding-input: 10px 12px;--padding-input-float: .9rem .875rem .35rem 2.5rem;--padding-input-float-no-icon: .875rem;--padding-btn: 8px 16px;--padding-btn-sm: 6px 12px;--padding-btn-lg: 12px 24px;--padding-card: 16px;--padding-section: 24px;--page-gap: 24px;--section-gap: 16px;--content-max-width: 1440px;--form-max-width: 720px;--primary: #0f6972;--primary-light: #34757e;--primary-dark: #0c5259;--primary-hover: #0a4a50;--secondary: #ffac6a;--secondary-light: #ffd4b3;--secondary-dark: #e89550;--accent: #97bbbf;--accent-light: #c4e3e5;--accent-dark: #92a7a8;--admin-bg-start: var(--primary-dark);--admin-bg-end: var(--primary);--admin-blue-start: var(--accent);--admin-blue-end: var(--accent-dark);--admin-purple-start: var(--secondary);--admin-purple-end: var(--secondary-dark);--admin-orange-start: var(--secondary-light);--admin-orange-end: var(--secondary-dark);--login-bg-end: var(--admin-blue-end);--login-success: var(--success-bright);--white: #ffffff;--black: #000000;--gray-50: #f2f8f8;--gray-100: #f1fafa;--gray-200: #dbe8e8;--gray-300: #c2cbd3;--gray-400: #91a3ab;--gray-500: #92a7a8;--gray-600: #34757e;--gray-700: #0f6972;--gray-800: #0c5259;--gray-900: #0a4a50;--success: #34757e;--success-light: #c4e3e5;--success-dark: #0f6972;--success-bg: rgba(52, 117, 126, .1);--success-bright: #10b981;--success-bg-bright: #d1fae5;--success-text-bright: #065f46;--warning: #f97316;--warning-light: #ffedd5;--warning-dark: #ea580c;--warning-bg: rgba(249, 115, 22, .1);--warning-bright: #f59e0b;--warning-bg-bright: #fef3c7;--warning-text-bright: #92400e;--error: #ef4444;--error-light: #fee2e2;--error-dark: #dc2626;--error-bg: rgba(239, 68, 68, .1);--error-bright: #ef4444;--error-bg-bright: #fee2e2;--error-text-bright: #991b1b;--info: #97bbbf;--info-light: #c4e3e5;--info-dark: #34757e;--info-bg: rgba(151, 187, 191, .1);--color-primary: var(--primary);--color-success: var(--success);--color-warning: var(--warning);--color-danger: var(--error);--danger: var(--error);--danger-bg: var(--error-bg);--danger-light: var(--error-light);--color-danger-bg: var(--error-bg);--error-border: #fca5a5;--primary-faint: rgba(15, 105, 114, .08);--color-text: var(--text);--color-text-muted: var(--text-muted);--color-text-secondary: var(--text-muted);--color-surface: var(--bg-white);--text: #0a4a50;--text-muted: #5f7a82;--text-light: #c2cbd3;--text-white: #ffffff;--text-primary: var(--text);--text-secondary: var(--text-muted);--text-tertiary: var(--text-light);--bg-white: #ffffff;--bg-light: #eef4f4;--bg-soft: #f3f8f8;--bg-gray: #dde8e8;--bg-elevated: #ffffff;--bg-canvas: #eef3f4;--bg-primary: var(--bg-white);--bg-secondary: var(--bg-light);--bg-subtle: var(--bg-soft);--card-bg: var(--bg-white);--hover-bg: var(--bg-soft);--surface: var(--bg-white);--surface-2: var(--bg-light);--surface-secondary: var(--bg-light);--surface-canvas: var(--bg-canvas);--surface-raised: var(--bg-elevated);--border: #dbe4e6;--border-strong: #c2ccd0;--border-dark: #a9b6ba;--border-color: var(--border);--border-light: var(--border);--color-border: var(--border);--color-border-light: var(--border);--scrollbar-track: #eaf2f2;--scrollbar-thumb: #8fa8ad;--scrollbar-thumb-hover: #5f7f85;--scrollbar-size: 9px;--scrollbar-radius: 999px;--input-bg: #f1fafa;--input-border: #c2cbd3;--input-focus: rgba(15, 105, 114, .15);--warning-text: #78350f;--error-text: #7f1d1d;--info-text: #1e40af;--purple: #8b5cf6;--purple-light: rgba(139, 92, 246, .12);--purple-dark: #7c3aed;--indigo: #667eea;--indigo-light: rgba(102, 126, 234, .12);--indigo-dark: #4f46e5;--code-bg: #1e293b;--code-text: #f8fafc;--badge-success-bg: rgba(52, 117, 126, .15);--badge-success-text: #0c5259;--badge-danger-bg: rgba(239, 68, 68, .15);--badge-danger-text: #991b1b;--badge-warning-bg: rgba(249, 115, 22, .15);--badge-warning-text: #9a3412;--badge-info-bg: rgba(151, 187, 191, .2);--badge-info-text: #0f6972;--badge-pending-bg: rgba(145, 163, 171, .15);--badge-pending-text: #34757e;--badge-default-bg: rgba(145, 163, 171, .1);--badge-default-text: #476068;--badge-trial-bg: rgba(139, 92, 246, .15);--badge-trial-text: #5b21b6;--badge-primary-bg: rgba(15, 105, 114, .15);--badge-primary-text: var(--primary-dark);--badge-secondary-bg: rgba(71, 85, 105, .12);--badge-secondary-text: #334155;--badge-accent-bg: rgba(151, 187, 191, .2);--badge-accent-text: #3d6568;--white-alpha-4: rgba(255, 255, 255, .04);--white-alpha-8: rgba(255, 255, 255, .08);--white-alpha-10: rgba(255, 255, 255, .1);--white-alpha-12: rgba(255, 255, 255, .12);--white-alpha-15: rgba(255, 255, 255, .15);--white-alpha-20: rgba(255, 255, 255, .2);--white-alpha-25: rgba(255, 255, 255, .25);--white-alpha-30: rgba(255, 255, 255, .3);--white-alpha-35: rgba(255, 255, 255, .35);--white-alpha-40: rgba(255, 255, 255, .4);--white-alpha-45: rgba(255, 255, 255, .45);--white-alpha-55: rgba(255, 255, 255, .55);--white-alpha-65: rgba(255, 255, 255, .65);--white-alpha-70: rgba(255, 255, 255, .7);--white-alpha-85: rgba(255, 255, 255, .85);--white-alpha-90: rgba(255, 255, 255, .9);--primary-alpha-4: rgba(15, 105, 114, .04);--primary-alpha-5: rgba(15, 105, 114, .05);--primary-alpha-8: rgba(15, 105, 114, .08);--primary-alpha-10: rgba(15, 105, 114, .1);--primary-alpha-12: rgba(15, 105, 114, .12);--primary-alpha-15: rgba(15, 105, 114, .15);--overlay-backdrop: rgba(0, 0, 0, .5);--overlay-backdrop-light: rgba(0, 0, 0, .15);--loader-overlay-bg: rgba(255, 255, 255, .9);--icon-badge: 10px;--icon-inline: 14px;--icon-button: 16px;--icon-stat: 20px;--icon-title: 24px;--shadow-xs: 0 1px 2px rgba(12, 42, 46, .05);--shadow-sm: 0 1px 2px rgba(12, 42, 46, .04), 0 2px 4px rgba(12, 42, 46, .05);--shadow-card: 0 1px 2px rgba(12, 42, 46, .04), 0 6px 16px rgba(12, 42, 46, .05);--shadow-md: 0 2px 6px rgba(12, 42, 46, .06), 0 8px 20px rgba(12, 42, 46, .06);--shadow-lg: 0 4px 10px rgba(12, 42, 46, .06), 0 12px 28px rgba(12, 42, 46, .08);--shadow-xl: 0 8px 18px rgba(12, 42, 46, .08), 0 20px 44px rgba(12, 42, 46, .1);--shadow-modal: 0 24px 64px rgba(12, 42, 46, .22), 0 8px 20px rgba(12, 42, 46, .12);--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--navbar-height: 60px;--sidebar-width: 260px;--sidebar-width-collapsed: 72px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--chart-grid: #e2e8f0;--chart-axis-text: #5f7a82;--chart-tooltip-bg: #ffffff;--chart-tooltip-border: #e2e8f0;--toast-offset-top: calc(var(--navbar-height) + var(--spacing-lg));--toast-offset-bottom: var(--spacing-xl);--toast-offset-horizontal: var(--spacing-xl);--toast-max-width: 380px;--toast-z-index: 99999;--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-out-back: cubic-bezier(.34, 1.56, .64, 1);--ease-in-out-smooth: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.16, 1, .3, 1);--anim-instant: .1s;--anim-fast: .18s;--anim-normal: .28s;--anim-slow: .42s;--anim-slower: .6s;--stagger-step: 45ms;--shadow-elevate: 0 2px 6px rgba(15, 105, 114, .06), 0 10px 26px rgba(12, 42, 46, .07);--shadow-elevate-lg: 0 6px 16px rgba(15, 105, 114, .1), 0 20px 44px rgba(12, 42, 46, .1);--shadow-hover: 0 4px 12px rgba(15, 105, 114, .12), 0 14px 32px rgba(12, 42, 46, .1);--ring-primary: 0 0 0 3px var(--input-focus);--ring-error: 0 0 0 3px rgba(239, 68, 68, .12);--ring-success: 0 0 0 3px rgba(16, 185, 129, .12);--ring-focus-strong: 0 0 0 4px rgba(15, 105, 114, .22);--gradient-primary: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);--gradient-primary-soft: linear-gradient(135deg, rgba(15, 105, 114, .08) 0%, rgba(151, 187, 191, .12) 100%);--gradient-surface: linear-gradient(180deg, var(--bg-white) 0%, var(--bg-light) 100%);--gradient-sheen: linear-gradient(90deg, transparent, rgba(255, 255, 255, .25), transparent);--accent-muted: #7aa8ad;--accent-muted-light: #a3c8cc;--accent-muted-dark: #5b8a90;--accent-muted-bg: rgba(122, 168, 173, .1);--sidebar-group-label: #5f7a82;--sidebar-item-active-bg: rgba(15, 105, 114, .08);--trend-up: #0f7b5f;--trend-down: #be3a3a;--trend-up-bg: rgba(15, 123, 95, .08);--trend-down-bg: rgba(190, 58, 58, .08);--sparkline-stroke: #0f6972;--sparkline-fill: rgba(15, 105, 114, .08);--section-bg-light: var(--bg-light);--section-bg-accent: var(--bg-soft);--section-bg-dark: var(--primary-dark);--hero-gradient: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 45%, var(--primary-light) 100%);--hero-gradient-light: linear-gradient(135deg, var(--bg-light) 0%, var(--accent-light) 100%);--cta-gradient: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);--cta-hover: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary-hover) 100%);--website-shadow-card: var(--shadow-card);--website-shadow-card-hover: var(--shadow-lg);--website-shadow-navbar: var(--shadow-sm);--website-transition: all var(--transition-normal);--website-font-body: var(--font-family);--website-font-display: var(--font-family-secondary);--website-section-padding: var(--spacing-8xl) 0;--website-container-max: 1200px;--orb-primary: radial-gradient(circle, rgba(15, 105, 114, .16) 0%, rgba(15, 105, 114, 0) 70%);--orb-secondary: radial-gradient(circle, rgba(255, 172, 106, .16) 0%, rgba(255, 172, 106, 0) 70%);--orb-accent: radial-gradient(circle, rgba(151, 187, 191, .2) 0%, rgba(151, 187, 191, 0) 70%);--grid-dot-color: rgba(15, 105, 114, .09);--illus-surface: linear-gradient(160deg, rgba(255, 255, 255, .97) 0%, rgba(241, 250, 250, .92) 100%);--illus-surface-muted: linear-gradient(160deg, rgba(242, 248, 248, .95) 0%, rgba(255, 255, 255, .9) 100%);--illus-border: rgba(15, 105, 114, .14);--illus-border-strong: rgba(15, 105, 114, .28);--illus-inner-highlight: inset 0 1px 0 rgba(255, 255, 255, .9);--illus-shadow-lift: 0 10px 26px rgba(12, 42, 46, .1);--illus-shadow-float: 0 18px 44px rgba(12, 42, 46, .14), 0 4px 12px rgba(12, 42, 46, .08);--illus-glow-primary: 0 6px 22px rgba(15, 105, 114, .26);--illus-glow-accent: 0 6px 22px rgba(255, 172, 106, .32);--illus-glow-success: 0 6px 20px rgba(16, 185, 129, .28);--illus-glow-danger: 0 6px 20px rgba(239, 68, 68, .26);--illus-grid-line: rgba(15, 105, 114, .07);--illus-track: rgba(15, 105, 114, .1);--illus-screen: linear-gradient(165deg, #0c5259 0%, #0f6972 55%, #34757e 100%);--illus-scan: linear-gradient(90deg, rgba(15, 105, 114, 0) 0%, rgba(15, 105, 114, .32) 50%, rgba(15, 105, 114, 0) 100%);--illus-sheen: linear-gradient(105deg, rgba(255, 255, 255, 0) 34%, rgba(255, 255, 255, .55) 50%, rgba(255, 255, 255, 0) 66%);--illus-mesh: radial-gradient(circle at 18% 20%, rgba(15, 105, 114, .1) 0%, rgba(15, 105, 114, 0) 45%), radial-gradient(circle at 82% 74%, rgba(255, 172, 106, .12) 0%, rgba(255, 172, 106, 0) 48%);--shell-bg: var(--gray-50);--color-content-bg: #e5f0f0;--color-page-sidebar-bg: var(--gray-100);--bg-warm: #fff5eb;--gradient-subtle: linear-gradient(180deg, var(--gray-100) 0%, var(--white) 100%);--gradient-light: linear-gradient(180deg, var(--gray-50) 0%, var(--white) 100%);--gradient-cool: linear-gradient(180deg, var(--color-content-bg) 0%, var(--gray-50) 100%);--gradient-warm: linear-gradient(180deg, var(--bg-warm) 0%, var(--white) 100%);--gradient-page-sidebar: linear-gradient(180deg, #eef6f6 0%, var(--white) 100%);--gradient-content-main: linear-gradient(180deg, var(--gray-200) 0%, #f0f8f8 35%, var(--white) 100%);--radius-shell-corner: 28px;--shadow-strip-glow: 2px 0 12px rgba(15, 105, 114, .3);--primary-alpha-6: rgba(15, 105, 114, .06);--stripe-draft-bg: #f3f4f6;--stripe-draft-text: #4b5563;--stripe-paid-bg: #dcfce7;--stripe-paid-text: #166534;--stripe-overdue-bg: #fee2e2;--stripe-overdue-text: #991b1b;--stripe-orange-bg: #ffedd5;--stripe-orange-text: #c2410c;--stripe-expired-bg: #ffe4e6;--stripe-expired-text: #9f1239;--stripe-blue-bg: #e0f2fe;--stripe-blue-text: #0369a1;--stripe-indigo-bg: #e0e7ff;--stripe-indigo-text: #4338ca;--stripe-teal-bg: #ccfbf1;--stripe-teal-text: #0f766e}[data-theme=dark]{color-scheme:dark;--bg-white: #1a2332;--bg-light: #151e2b;--bg-soft: #151e2b;--bg-gray: #1f2d3d;--bg-canvas: #10171f;--bg-elevated: #202c3d;--text: #e2eaf4;--text-muted: #8fb0c2;--text-light: #4e6a82;--text-white: #ffffff;--border: #263347;--border-strong: #33455c;--border-dark: #3d5268;--primary: #1a8f99;--primary-light: #1f9baa;--primary-dark: #0f6972;--primary-hover: #157d88;--secondary: #e8935c;--secondary-light: #4a2a12;--secondary-dark: #f2a565;--accent: #7aa8ad;--accent-light: #9bc4c9;--accent-dark: #608d93;--admin-bg-start: #0f6972;--admin-bg-end: #157d88;--admin-blue-start: #7aa8ad;--admin-blue-end: #608d93;--admin-purple-start: #c98b7c;--admin-purple-end: #b57364;--admin-orange-start: #d9a295;--admin-orange-end: #b57364;--login-bg-end: #608d93;--login-success: #22c55e;--white: #1a2332;--black: #ffffff;--gray-50: #1f2d3d;--gray-100: #1a2332;--gray-200: #263347;--gray-300: #344a60;--gray-400: #4e6a82;--gray-500: #6b8a9e;--gray-600: #8fb0c2;--gray-700: #a8c8d8;--gray-800: #c8dde8;--gray-900: #e2eaf4;--success: #4ade80;--success-light: #166534;--success-dark: #15803d;--success-bg: rgba(74, 222, 128, .1);--success-bright: #22c55e;--success-bg-bright:#14532d;--success-text-bright: #86efac;--warning: #fb923c;--warning-light: #431407;--warning-dark: #ea580c;--warning-bg: rgba(251, 146, 60, .1);--warning-bright: #f59e0b;--warning-bg-bright:#422006;--warning-text-bright: #fde68a;--error: #f87171;--error-light: #3f1212;--error-dark: #ef4444;--error-bg: rgba(248, 113, 113, .1);--error-bright: #ef4444;--error-bg-bright:#430606;--error-text-bright: #fca5a5;--info: #38bdf8;--info-light: #0c2d45;--info-dark: #0ea5e9;--info-bg: rgba(56, 189, 248, .1);--input-bg: #1f2d3d;--input-border: #344a60;--input-focus: rgba(21, 128, 137, .25);--scrollbar-track: #1f2d3d;--scrollbar-thumb: #3d5a73;--scrollbar-thumb-hover: #4e7090;--white-alpha-4: rgba(255, 255, 255, .04);--white-alpha-8: rgba(255, 255, 255, .08);--white-alpha-10: rgba(255, 255, 255, .1);--white-alpha-12: rgba(255, 255, 255, .12);--white-alpha-15: rgba(255, 255, 255, .15);--white-alpha-20: rgba(255, 255, 255, .2);--white-alpha-25: rgba(255, 255, 255, .25);--white-alpha-30: rgba(255, 255, 255, .3);--white-alpha-35: rgba(255, 255, 255, .35);--white-alpha-40: rgba(255, 255, 255, .4);--white-alpha-45: rgba(255, 255, 255, .45);--white-alpha-55: rgba(255, 255, 255, .55);--white-alpha-65: rgba(255, 255, 255, .65);--white-alpha-70: rgba(255, 255, 255, .7);--white-alpha-85: rgba(255, 255, 255, .85);--white-alpha-90: rgba(255, 255, 255, .9);--primary-alpha-4: rgba(21, 128, 137, .04);--primary-alpha-5: rgba(21, 128, 137, .05);--primary-alpha-8: rgba(21, 128, 137, .08);--primary-alpha-10: rgba(21, 128, 137, .1);--primary-alpha-12: rgba(21, 128, 137, .12);--primary-alpha-15: rgba(21, 128, 137, .15);--overlay-backdrop: rgba(0, 0, 0, .7);--overlay-backdrop-light: rgba(0, 0, 0, .25);--loader-overlay-bg: rgba(26, 35, 50, .9);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-card: 0 2px 8px rgba(0, 0, 0, .35);--shadow-md: 0 4px 6px rgba(0, 0, 0, .45);--shadow-lg: 0 10px 20px rgba(0, 0, 0, .5);--shadow-xl: 0 15px 30px rgba(0, 0, 0, .55);--shadow-modal: 0 20px 60px rgba(0, 0, 0, .7);--shadow-elevate: 0 6px 16px rgba(0, 0, 0, .5), 0 2px 6px rgba(0, 0, 0, .4);--shadow-elevate-lg: 0 14px 34px rgba(0, 0, 0, .6), 0 4px 12px rgba(0, 0, 0, .45);--shadow-hover: 0 10px 24px rgba(0, 0, 0, .55), 0 3px 8px rgba(0, 0, 0, .4);--ring-primary: 0 0 0 3px var(--input-focus);--ring-error: 0 0 0 3px rgba(248, 113, 113, .2);--ring-success: 0 0 0 3px rgba(34, 197, 94, .2);--ring-focus-strong: 0 0 0 4px rgba(21, 128, 137, .35);--accent-muted: #5b9da3;--accent-muted-light: #7ab4ba;--accent-muted-dark: #3d7f85;--accent-muted-bg: rgba(91, 157, 163, .12);--sidebar-group-label: #8fb0c2;--sidebar-item-active-bg: rgba(21, 128, 137, .15);--trend-up: #4ade80;--trend-down: #f87171;--trend-up-bg: rgba(74, 222, 128, .1);--trend-down-bg: rgba(248, 113, 113, .1);--sparkline-stroke: #7aa8ad;--sparkline-fill: rgba(122, 168, 173, .1);--gradient-primary: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);--gradient-primary-soft: linear-gradient(135deg, rgba(21, 128, 137, .16) 0%, rgba(122, 168, 173, .12) 100%);--gradient-surface: linear-gradient(180deg, var(--bg-white) 0%, var(--bg-light) 100%);--gradient-sheen: linear-gradient(90deg, transparent, rgba(255, 255, 255, .08), transparent);--badge-success-bg: rgba(74, 222, 128, .15);--badge-success-text: #86efac;--badge-danger-bg: rgba(248, 113, 113, .15);--badge-danger-text: #fca5a5;--badge-warning-bg: rgba(251, 146, 60, .15);--badge-warning-text: #fdba8c;--badge-info-bg: rgba(56, 189, 248, .15);--badge-info-text: #7dd3fc;--badge-pending-bg: rgba(125, 154, 181, .15);--badge-pending-text: #93c5fd;--badge-default-bg: rgba(78, 106, 130, .2);--badge-default-text: #85a3be;--badge-trial-bg: rgba(167, 139, 250, .15);--badge-trial-text: #c4b5fd;--badge-primary-bg: rgba(21, 128, 137, .2);--badge-primary-text: #5eead4;--badge-secondary-bg: rgba(100, 116, 139, .15);--badge-secondary-text: #94a3b8;--badge-accent-bg: rgba(122, 168, 173, .2);--badge-accent-text: #9bc4c9;--heading-weight: 600;--chart-grid: #263347;--chart-axis-text: #8fb0c2;--chart-tooltip-bg: #1f2d3d;--chart-tooltip-border: #344a60;--warning-text: #fde68a;--error-text: #fca5a5;--info-text: #93c5fd;--purple: #a78bfa;--purple-light: rgba(167, 139, 250, .15);--purple-dark: #8b5cf6;--indigo: #818cf8;--indigo-light: rgba(129, 140, 248, .15);--indigo-dark: #6366f1;--code-bg: #0f172a;--code-text: #e2e8f0;--text-primary: var(--text);--text-secondary: var(--text-muted);--text-tertiary: var(--text-light);--bg-primary: var(--bg-white);--bg-secondary: var(--bg-light);--bg-subtle: var(--bg-soft);--card-bg: var(--bg-white);--hover-bg: var(--bg-gray);--surface: var(--bg-white);--surface-2: var(--bg-light);--surface-secondary: var(--bg-light);--surface-canvas: var(--bg-canvas);--surface-raised: var(--bg-elevated);--border-color: var(--border);--border-light: var(--border);--color-border: var(--border);--color-border-light: var(--border);--color-primary: var(--primary);--color-success: var(--success);--color-warning: var(--warning);--color-danger: var(--error);--danger: var(--error);--danger-bg: var(--error-bg);--danger-light: var(--error-light);--color-danger-bg: var(--error-bg);--error-border: rgba(248, 113, 113, .3);--primary-faint: rgba(21, 128, 137, .12);--color-text: var(--text);--color-text-muted: var(--text-muted);--color-text-secondary: var(--text-muted);--color-surface: var(--bg-white);--shell-bg: var(--gray-50);--color-content-bg: #17242b;--color-page-sidebar-bg: var(--gray-100);--bg-warm: #2a1d10;--gradient-subtle: linear-gradient(180deg, var(--gray-100) 0%, var(--bg-white) 100%);--gradient-light: linear-gradient(180deg, var(--gray-50) 0%, var(--bg-white) 100%);--gradient-cool: linear-gradient(180deg, var(--color-content-bg) 0%, var(--gray-50) 100%);--gradient-warm: linear-gradient(180deg, var(--bg-warm) 0%, var(--bg-white) 100%);--gradient-page-sidebar: linear-gradient(180deg, #16222a 0%, var(--bg-white) 100%);--gradient-content-main: linear-gradient(180deg, var(--gray-200) 0%, #14202a 35%, var(--bg-canvas) 100%);--shadow-strip-glow: 2px 0 12px rgba(26, 143, 153, .4);--primary-alpha-6: rgba(21, 128, 137, .06);--stripe-draft-bg: #374151;--stripe-draft-text: #d1d5db;--stripe-paid-bg: #14532d;--stripe-paid-text: #86efac;--stripe-overdue-bg: #450a0a;--stripe-overdue-text: #fca5a5;--stripe-orange-bg: #431407;--stripe-orange-text: #fdba8c;--stripe-expired-bg: #4c0519;--stripe-expired-text: #fda4af;--stripe-blue-bg: #0c2d45;--stripe-blue-text: #7dd3fc;--stripe-indigo-bg: #27272f;--stripe-indigo-text: #a5b4fc;--stripe-teal-bg: #042f2e;--stripe-teal-text: #5eead4}[data-theme=dark] .mono-value{color:var(--badge-pending-text)}[data-theme=dark]{--section-bg-light: #151e2b;--section-bg-accent: #1a2836;--section-bg-dark: #0f1922;--hero-gradient: linear-gradient(135deg, #0f1922 0%, #0f6972 40%, #158089 70%, #1f9baa 100%);--hero-gradient-light: linear-gradient(135deg, #1a2332 0%, #1f2d3d 50%, #263347 100%);--cta-gradient: linear-gradient(135deg, #158089 0%, #0f6972 100%);--cta-hover: linear-gradient(135deg, #0f6972 0%, #0c5259 100%);--website-shadow-card: 0 4px 20px rgba(0, 0, 0, .3);--website-shadow-card-hover: 0 12px 40px rgba(0, 0, 0, .4);--website-shadow-navbar: 0 2px 20px rgba(0, 0, 0, .25);--orb-primary: radial-gradient(circle, rgba(31, 155, 170, .22) 0%, rgba(31, 155, 170, 0) 70%);--orb-secondary: radial-gradient(circle, rgba(232, 147, 92, .2) 0%, rgba(232, 147, 92, 0) 70%);--orb-accent: radial-gradient(circle, rgba(122, 168, 173, .22) 0%, rgba(122, 168, 173, 0) 70%);--grid-dot-color: rgba(122, 168, 173, .14);--illus-surface: linear-gradient(160deg, rgba(38, 51, 71, .96) 0%, rgba(26, 35, 50, .92) 100%);--illus-surface-muted: linear-gradient(160deg, rgba(30, 41, 57, .95) 0%, rgba(21, 30, 43, .9) 100%);--illus-border: rgba(122, 168, 173, .2);--illus-border-strong: rgba(122, 168, 173, .38);--illus-inner-highlight: inset 0 1px 0 rgba(255, 255, 255, .06);--illus-shadow-lift: 0 10px 26px rgba(0, 0, 0, .42);--illus-shadow-float: 0 18px 44px rgba(0, 0, 0, .5), 0 4px 12px rgba(0, 0, 0, .32);--illus-glow-primary: 0 6px 24px rgba(31, 155, 170, .4);--illus-glow-accent: 0 6px 24px rgba(232, 147, 92, .4);--illus-glow-success: 0 6px 22px rgba(52, 211, 153, .36);--illus-glow-danger: 0 6px 22px rgba(248, 113, 113, .34);--illus-grid-line: rgba(122, 168, 173, .12);--illus-track: rgba(122, 168, 173, .16);--illus-screen: linear-gradient(165deg, #0e2a30 0%, #14545c 55%, #1f9baa 100%);--illus-scan: linear-gradient(90deg, rgba(31, 155, 170, 0) 0%, rgba(31, 155, 170, .42) 50%, rgba(31, 155, 170, 0) 100%);--illus-sheen: linear-gradient(105deg, rgba(255, 255, 255, 0) 34%, rgba(255, 255, 255, .14) 50%, rgba(255, 255, 255, 0) 66%);--illus-mesh: radial-gradient(circle at 18% 20%, rgba(31, 155, 170, .16) 0%, rgba(31, 155, 170, 0) 45%), radial-gradient(circle at 82% 74%, rgba(232, 147, 92, .14) 0%, rgba(232, 147, 92, 0) 48%)}[data-theme=dark] .recharts-cartesian-axis-tick text,[data-theme=dark] .recharts-legend-item-text{fill:var(--chart-axis-text)!important;color:var(--chart-axis-text)!important}[data-theme=dark] .recharts-default-tooltip{background-color:var(--chart-tooltip-bg)!important;border-color:var(--chart-tooltip-border)!important;color:var(--text)!important}[data-theme=dark] .recharts-tooltip-item{color:var(--text)!important}[data-theme=dark] .recharts-tooltip-label{color:var(--text-muted)!important}*,*:before,*:after{transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.spinner,.spinner *,[class*=animate-],[class*=pulse],[class*=spin]{transition:none!important}.skip-link{position:absolute;top:-48px;left:0;padding:10px 16px;background:var(--primary);color:var(--text-white);font-weight:600;font-size:.875rem;border-radius:0 0 var(--radius-md) 0;z-index:99999;text-decoration:none;transition:top .15s ease}.skip-link:focus{top:0;outline:2px solid var(--text-white);outline-offset:2px}body[data-density=compact]{--spacing-xs: 2px;--spacing-sm: 4px;--spacing-md: 8px;--spacing-lg: 12px;--spacing-xl: 16px;--spacing-2xl: 20px;--spacing-3xl: 24px;--font-size-base: 13px;--font-size-xs: .692rem;--font-size-sm: .769rem;--font-size-md: .846rem;--padding-input: 6px 10px;--padding-btn: 6px 12px;--padding-btn-sm: 4px 8px;--padding-card: 12px;--padding-section: 16px;--page-gap: 16px;--section-gap: 12px;--heading-1: 1.5rem;--heading-2: 1.2rem;--heading-3: 1rem;--heading-4: .875rem}body[data-density=compact] .app-page{padding:var(--spacing-lg)}body[data-density=compact] .card,body[data-density=compact] .section-card{padding:var(--spacing-md)}body[data-density=compact] .stats-grid{gap:var(--spacing-md)}body[data-density=compact] .stat-card{padding:var(--spacing-md)}body[data-density=compact] .form{gap:var(--spacing-md)}body[data-density=compact] .input-field{min-height:36px;padding:6px 10px}body[data-density=compact] .btn{padding:6px 12px;font-size:var(--font-size-sm)}body[data-density=compact] .btn-sm{padding:4px 8px;font-size:var(--font-size-xs)}body[data-density=compact] .page-header{padding:var(--spacing-sm) var(--spacing-lg);gap:var(--spacing-sm)}body[data-density=compact] .page-header h1{font-size:var(--font-size-lg)}body[data-density=compact] .modal-body{padding:var(--spacing-lg)}body[data-density=compact] .modal-footer{padding:var(--spacing-sm) var(--spacing-lg)}body[data-density=compact] .app-sidebar__link{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}body[data-density=compact] .dashboard-breadcrumb{padding:2px var(--spacing-md);min-height:26px}body[data-density=comfortable]{--spacing-xs: 6px;--spacing-sm: 10px;--spacing-md: 16px;--spacing-lg: 20px;--spacing-xl: 28px;--spacing-2xl: 32px;--spacing-3xl: 40px;--font-size-base: 15px;--font-size-xs: .8rem;--font-size-sm: .867rem;--font-size-md: .933rem;--padding-input: 12px 14px;--padding-btn: 10px 20px;--padding-btn-sm: 8px 16px;--padding-card: 24px;--padding-section: 32px;--page-gap: 32px;--section-gap: 20px;--heading-1: 2rem;--heading-2: 1.5rem;--heading-3: 1.25rem;--heading-4: 1.0625rem;--line-height-normal: 1.6;--line-height-tight: 1.35}body[data-density=comfortable] .app-page{padding:var(--spacing-2xl)}body[data-density=comfortable] .card,body[data-density=comfortable] .section-card{padding:var(--spacing-xl)}body[data-density=comfortable] .stats-grid{gap:var(--spacing-xl)}body[data-density=comfortable] .stat-card{padding:var(--spacing-lg)}body[data-density=comfortable] .form{gap:var(--spacing-xl)}body[data-density=comfortable] .input-field{min-height:48px;padding:12px 14px}body[data-density=comfortable] .btn{padding:10px 20px;font-size:var(--font-size-md)}body[data-density=comfortable] .page-header{padding:var(--spacing-lg) var(--spacing-2xl);gap:var(--spacing-lg)}body[data-density=comfortable] .page-header h1{font-size:var(--font-size-2xl)}body[data-density=comfortable] .modal-body{padding:var(--spacing-2xl)}body[data-density=comfortable] .modal-footer{padding:var(--spacing-md) var(--spacing-2xl)}body[data-density=comfortable] .app-sidebar__link{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-base-rem)}body[data-density=comfortable] .dashboard-breadcrumb{padding:var(--spacing-sm) var(--spacing-xl);min-height:38px}body[data-density=comfortable] .data-table th,body[data-density=comfortable] .data-table td{padding:var(--spacing-lg) var(--spacing-lg)}@media(max-width:768px){body[data-density=compact] .btn,body[data-density=compact] [role=button]{min-height:44px;min-width:44px}body[data-density=compact] .input-field{min-height:44px}body[data-density=compact] .app-sidebar__link{min-height:48px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}*::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}*::-webkit-scrollbar-track{background:var(--scrollbar-track)}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--scrollbar-radius);border:2px solid var(--scrollbar-track)}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*::-webkit-scrollbar-corner{background:var(--scrollbar-track)}:root{font-size:var(--font-size-base)}html{font-size:var(--font-size-base);-webkit-text-size-adjust:100%;overflow-x:hidden}body{font-family:var(--font-family);font-size:var(--font-size-base-rem);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--text);background-color:var(--bg-white);min-width:320px;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text)}h1{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-lg)}h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-md)}h3{font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm)}h4{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm)}h5,h6{font-size:var(--font-size-base-rem);margin-bottom:var(--spacing-xs)}p{margin-bottom:var(--spacing-md);color:var(--text)}small{font-size:var(--font-size-sm)}a{color:var(--accent);text-decoration:none;font-weight:var(--font-weight-medium);transition:color var(--transition-fast),background-color var(--transition-fast)}a:hover{color:var(--primary)}label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text)}img,video,canvas,svg{height:auto}pre,code{max-width:100%}pre{overflow-x:auto;-webkit-overflow-scrolling:touch}table{max-width:100%;overflow-wrap:break-word}input,textarea,select,button{font-family:var(--font-family);font-size:var(--font-size-md)}*{transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease}button:focus-visible,a[href]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:none;box-shadow:var(--ring-primary)}button:focus:not(:focus-visible),a[href]:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible),[role=button]:focus:not(:focus-visible),[tabindex]:not([tabindex="-1"]):focus:not(:focus-visible){outline:none;box-shadow:none}:root{--text-muted-accessible: #5f7a82}.data-table td,.form-hint,.field-hint,.empty-row,.empty-state,.placeholder-text,.meta-text{color:var(--text-muted-accessible, var(--text-muted))}.text-decorative{color:var(--text-light)}.badge-default{color:var(--text-muted-accessible, #5f7a82)}@media(prefers-contrast:high){:root{--text-muted: #3d5a60;--border: #6b8790;--bg-light: #f5fafa}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.spinner{animation:none!important}}[data-theme=dark]{--text-muted-accessible: #8fb0c2}[data-theme=dark] .data-table td,[data-theme=dark] .form-hint,[data-theme=dark] .field-hint,[data-theme=dark] .empty-row,[data-theme=dark] .empty-state{color:var(--text-muted-accessible, var(--text-muted))}[role=tablist] [role=tab]{cursor:pointer}[role=tablist] [role=tab]:focus-visible{outline:none;box-shadow:var(--ring-primary);z-index:1}[role=navigation]:focus-visible,[role=main]:focus-visible,[role=complementary]:focus-visible,main:focus-visible,main:focus{outline:none}[role=menu]{outline:none}[role=menu] [role=menuitem]:focus-visible{background:var(--bg-light);outline:none;box-shadow:var(--ring-primary)}[role=dialog]:focus-visible,[aria-modal=true]:focus-visible{outline:none}[role=dialog] .btn-close:focus-visible,[role=dialog] [aria-label="Close panel"]:focus-visible,[role=dialog] [aria-label="Close dialog"]:focus-visible{outline:none;box-shadow:var(--ring-primary)}[role=combobox]:focus-visible{outline:none;box-shadow:var(--ring-primary)}[role=combobox]:focus:not(:focus-visible){outline:none;box-shadow:none}[role=listbox] [role=option].highlighted{background:var(--bg-light)}[role=listbox] [role=option][aria-disabled=true]{opacity:.5;cursor:not-allowed}[aria-busy=true]{cursor:wait}@media(pointer:coarse){button,[role=button],a,input[type=checkbox],input[type=radio]{min-height:44px;min-width:44px}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=search],input[type=date],textarea,select{min-height:48px}input[type=checkbox],input[type=radio]{min-width:20px;min-height:20px}}@media(max-width:1023px){button,[role=button],a[href],input[type=checkbox],input[type=radio],select{min-height:44px;min-width:44px}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=search],input[type=date],textarea,select{min-height:48px}}@media(max-width:768px){input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=search],input[type=date],textarea,select{font-size:16px}input,select,textarea{font-size:max(16px,var(--font-size-sm))}}@media(forced-colors:active){button:focus-visible,a[href]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:2px solid Highlight;box-shadow:none}[role=combobox]:focus-visible,[role=tab]:focus-visible,[role=menuitem]:focus-visible,[role=option]:focus-visible{outline:2px solid Highlight;box-shadow:none}[role=dialog]{border:2px solid ButtonText}.slide-panel{border-left:2px solid ButtonText}[aria-selected=true]{border:2px solid Highlight}}@media print{.sr-only,[aria-hidden=true],.skip-link{display:none!important}}@keyframes ql-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ql-fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes ql-fade-in-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes ql-fade-in-left{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes ql-fade-in-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes ql-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes ql-pop-in{0%{opacity:0;transform:scale(.85)}60%{opacity:1;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes ql-zoom-in{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes ql-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes ql-pulse-soft{0%,to{opacity:1}50%{opacity:.55}}@keyframes ql-pulse-glow{0%,to{box-shadow:0 0 #0f697259}50%{box-shadow:0 0 0 6px #0f697200}}@keyframes ql-spin{to{transform:rotate(360deg)}}.app-page,.page-content{animation:ql-fade-in-up var(--anim-normal) var(--ease-out-quart) both}.stagger-in>*{animation:ql-fade-in-up var(--anim-normal) var(--ease-out-quart) both}.stagger-in>*:nth-child(1){animation-delay:calc(var(--stagger-step) * 1)}.stagger-in>*:nth-child(2){animation-delay:calc(var(--stagger-step) * 2)}.stagger-in>*:nth-child(3){animation-delay:calc(var(--stagger-step) * 3)}.stagger-in>*:nth-child(4){animation-delay:calc(var(--stagger-step) * 4)}.stagger-in>*:nth-child(5){animation-delay:calc(var(--stagger-step) * 5)}.stagger-in>*:nth-child(6){animation-delay:calc(var(--stagger-step) * 6)}.stagger-in>*:nth-child(7){animation-delay:calc(var(--stagger-step) * 7)}.stagger-in>*:nth-child(8){animation-delay:calc(var(--stagger-step) * 8)}.stagger-in>*:nth-child(9){animation-delay:calc(var(--stagger-step) * 9)}.stagger-in>*:nth-child(10){animation-delay:calc(var(--stagger-step) * 10)}.stagger-in>*:nth-child(11){animation-delay:calc(var(--stagger-step) * 11)}.stagger-in>*:nth-child(12){animation-delay:calc(var(--stagger-step) * 12)}.animate-fade-in{animation:ql-fade-in var(--anim-normal) var(--ease-out-quart) both}.animate-fade-in-up{animation:ql-fade-in-up var(--anim-normal) var(--ease-out-quart) both}.animate-fade-in-down{animation:ql-fade-in-down var(--anim-normal) var(--ease-out-quart) both}.animate-fade-in-left{animation:ql-fade-in-left var(--anim-normal) var(--ease-out-quart) both}.animate-fade-in-right{animation:ql-fade-in-right var(--anim-normal) var(--ease-out-quart) both}.animate-scale-in{animation:ql-scale-in var(--anim-normal) var(--ease-out-quart) both}.animate-pop-in{animation:ql-pop-in var(--anim-normal) var(--ease-out-back) both}.animate-zoom-in{animation:ql-zoom-in var(--anim-normal) var(--ease-spring) both}.animate-float{animation:ql-float 3s var(--ease-in-out-smooth) infinite}.animate-pulse-soft{animation:ql-pulse-soft 1.6s var(--ease-in-out-smooth) infinite}.animate-pulse-glow{animation:ql-pulse-glow 1.8s var(--ease-in-out-smooth) infinite}.delay-1{animation-delay:calc(var(--stagger-step) * 1)}.delay-2{animation-delay:calc(var(--stagger-step) * 2)}.delay-3{animation-delay:calc(var(--stagger-step) * 3)}.delay-4{animation-delay:calc(var(--stagger-step) * 4)}.delay-5{animation-delay:calc(var(--stagger-step) * 5)}.hover-lift{transition:transform var(--anim-fast) var(--ease-out-quart),box-shadow var(--anim-fast) var(--ease-out-quart);will-change:transform}.hover-lift:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.hover-lift-sm{transition:transform var(--anim-fast) var(--ease-out-quart),box-shadow var(--anim-fast) var(--ease-out-quart)}.hover-lift-sm:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.hover-scale{transition:transform var(--anim-fast) var(--ease-out-quart)}.hover-scale:hover{transform:scale(1.03)}.hover-glow{transition:box-shadow var(--anim-normal) var(--ease-out-quart),border-color var(--anim-normal) var(--ease-out-quart)}.hover-glow:hover{box-shadow:var(--ring-focus-strong)}.press,.press-effect{transition:transform var(--anim-instant) var(--ease-out-quart)}.press:active,.press-effect:active{transform:scale(.97)}.icon-nudge-x svg{transition:transform var(--anim-fast) var(--ease-out-quart)}.icon-nudge-x:hover svg{transform:translate(3px)}.icon-nudge-y svg{transition:transform var(--anim-fast) var(--ease-out-quart)}.icon-nudge-y:hover svg{transform:translateY(-2px)}.icon-spin-hover svg{transition:transform var(--anim-slow) var(--ease-out-quart)}.icon-spin-hover:hover svg{transform:rotate(90deg)}.ql-shimmer{background:linear-gradient(90deg,var(--bg-gray) 25%,var(--bg-light) 50%,var(--bg-gray) 75%);background-size:200% 100%;animation:ql-shimmer 1.5s infinite}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.app-page,.page-content,.stats-grid>*,.stagger-in>*{animation:none!important}.hover-lift:hover,.hover-lift-sm:hover,.hover-scale:hover{transform:none!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:0}.skip-link{position:absolute;top:-100%;left:var(--spacing-lg);z-index:100000;padding:var(--spacing-sm) var(--spacing-lg);background:var(--primary);color:var(--text-white);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-decoration:none;transition:top .2s ease}.skip-link:focus{top:var(--spacing-sm);outline:3px solid var(--primary-light);outline-offset:2px}.route-announcer{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.heading-1{font-size:var(--heading-1);font-weight:var(--heading-weight);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--text);margin:0}.heading-2{font-size:var(--heading-2);font-weight:var(--heading-weight);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--text);margin:0}.heading-3{font-size:var(--heading-3);font-weight:var(--heading-weight);line-height:var(--line-height-tight);color:var(--text);margin:0}.heading-4{font-size:var(--heading-4);font-weight:var(--heading-weight);line-height:var(--line-height-normal);color:var(--text);margin:0}.mono-value{font-family:var(--font-family-mono);font-variant-numeric:tabular-nums}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.icon-inline{font-size:var(--icon-inline)}.icon-button{font-size:var(--icon-button)}.icon-stat{font-size:var(--icon-stat)}.icon-title{font-size:var(--icon-title)}@media(max-width:768px){.hide-mobile{display:none!important}}@media(min-width:769px)and (max-width:1024px){.hide-tablet{display:none!important}}@media(max-width:1024px){.show-desktop-only{display:none!important}}@media print{.no-print{display:none!important}}@keyframes ql-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-line{background:linear-gradient(90deg,var(--bg-gray) 25%,var(--bg-light) 50%,var(--bg-gray) 75%);background-size:200% 100%;animation:ql-shimmer 1.5s infinite;border-radius:var(--radius-sm);height:14px;width:100%}.skeleton-line.skeleton-sm{height:10px;width:60%}.skeleton-line.skeleton-lg{height:20px;width:80%}.skeleton-line.skeleton-xl{height:28px;width:40%}.skeleton-circle{background:linear-gradient(90deg,var(--bg-gray) 25%,var(--bg-light) 50%,var(--bg-gray) 75%);background-size:200% 100%;animation:ql-shimmer 1.5s infinite;border-radius:var(--radius-full);width:40px;height:40px}.skeleton-rect{background:linear-gradient(90deg,var(--bg-gray) 25%,var(--bg-light) 50%,var(--bg-gray) 75%);background-size:200% 100%;animation:ql-shimmer 1.5s infinite;border-radius:var(--radius-md)}@page{size:A4;margin:15mm 12mm 20mm}@page :first{margin-top:10mm}@page receipt{size:80mm auto;margin:2mm}@media print{*,*:before,*:after{box-shadow:none!important;text-shadow:none!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}html{font-size:11pt}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:11pt;line-height:1.5;color:#000!important;background:#fff!important;margin:0;padding:0;overflow:visible!important;width:100%!important}.app-sidebar,.app-sidebar-overlay,.dashboard-header,.dashboard-banners,.mobile-bottom-nav,.mobile-more-sheet,.mobile-more-overlay,.sidebar,.topbar,.no-print,.print-hide,.header-actions,.favorite-toggle-btn,.page-header-extras,.reports-tabs,.reports-header-controls,.report-export-controls,.bulk-actions-bar,.toast-container,.chatbot-widget,.guided-tour-overlay,.session-timeout-modal,.skip-link,.global-search-overlay,.keyboard-shortcuts-modal,.notification-dropdown,.subscription-banner,.verification-banner,.demo-timer-banner,.app-sidebar__toggle,.dashboard-header__right,.sf-filter-bar,.pagination,.table-density-toggle,[role=dialog],[role=alertdialog]{display:none!important}button:not(.print-show),.btn:not(.print-show){display:none!important}.dashboard-layout{display:block!important}.dashboard-content{margin:0!important;padding:0!important;width:100%!important;min-height:auto!important}.page-shell{min-height:auto!important}.page-header{position:static!important;border-bottom:2px solid #333!important;box-shadow:none!important;padding:0 0 8pt!important;margin-bottom:12pt!important;background:transparent!important}.page-header h1{font-size:16pt!important;color:#000!important}.page-header h1 svg{display:none!important}.page-header p{font-size:9pt!important;color:#444!important}.app-page{padding:0!important;margin:0!important;width:100%!important;max-width:none!important;overflow:visible!important;background:transparent!important}.main-content,.page-layout{margin:0!important;padding:0!important;width:100%!important;overflow:visible!important}h1{font-size:16pt!important}h2{font-size:14pt!important}h3{font-size:12pt!important}h4{font-size:11pt!important}h5,h6{font-size:10pt!important}h1,h2,h3,h4,h5,h6{color:#000!important;page-break-after:avoid;break-after:avoid}p,li,td,th{orphans:3;widows:3}.print-header{display:flex!important;align-items:center;gap:12pt;padding-bottom:8pt;margin-bottom:12pt;border-bottom:2px solid #333}.print-header__logo{max-height:36pt;max-width:120pt;object-fit:contain}.print-header__info{flex:1}.print-header__org-name{font-size:14pt;font-weight:700;color:#000;margin:0}.print-header__tagline{font-size:9pt;color:#444;margin:2pt 0 0}.print-header__date{font-size:8pt;color:#666;text-align:right}.data-table-wrapper,.ql-table-wrapper{border:none!important;box-shadow:none!important;overflow:visible!important;max-height:none!important;border-radius:0!important}.data-table,.ql-table,table{width:100%!important;border-collapse:collapse!important;font-size:9pt!important;page-break-inside:auto}.data-table thead,.ql-table thead,table thead{display:table-header-group!important}.data-table tfoot,.ql-table tfoot,table tfoot{display:table-footer-group!important}.data-table tr,.ql-table tr,table tr{page-break-inside:avoid;break-inside:avoid}.data-table th,.ql-table th,table th{background:#f0f0f0!important;color:#000!important;font-weight:700!important;font-size:8pt!important;text-transform:uppercase!important;letter-spacing:.3pt!important;padding:6pt 8pt!important;border:1px solid #ccc!important;position:static!important}.data-table td,.ql-table td,table td{padding:5pt 8pt!important;border:1px solid #ddd!important;color:#000!important;vertical-align:top}.data-table tbody tr:nth-child(2n),.ql-table tbody tr:nth-child(2n),table tbody tr:nth-child(2n){background:#f9f9f9!important}.data-table .col-actions,.data-table th:last-child:empty,.ql-table .col-actions{display:none!important}a[href]:after{content:none}a{color:#000!important;text-decoration:none!important}.recharts-wrapper,.chart-container{break-inside:avoid;page-break-inside:avoid}img{max-width:100%!important;page-break-inside:avoid}.print-page-break{page-break-before:always!important;break-before:page!important}.print-no-break{page-break-inside:avoid!important;break-inside:avoid!important}.print-footer{display:block!important;position:fixed;bottom:0;left:0;right:0;font-size:7pt;color:#888;text-align:center;padding-top:4pt;border-top:.5pt solid #ccc}.print-receipt{page:receipt;width:72mm!important;max-width:72mm!important;margin:0 auto!important;padding:0!important;font-size:9pt!important}.print-receipt .print-header{flex-direction:column;align-items:center;text-align:center;gap:4pt;border-bottom:1px dashed #000;padding-bottom:4pt}.print-receipt .print-header__logo{max-height:24pt;max-width:60mm}.print-receipt .print-header__org-name{font-size:11pt}.print-receipt table{font-size:8pt!important}.print-receipt table th,.print-receipt table td{padding:2pt 3pt!important;border:none!important;border-bottom:1px dotted #ccc!important}.print-receipt .receipt-total{font-size:12pt;font-weight:700;text-align:right;border-top:1px solid #000;padding-top:4pt;margin-top:4pt}.print-receipt .receipt-divider{border:none;border-top:1px dashed #000;margin:4pt 0}}.print-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.print-btn__shortcut{font-size:var(--font-size-xs);color:var(--text-muted);opacity:.7;margin-left:var(--spacing-xs)}.print-header,.print-footer{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--padding-btn);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);font-family:var(--font-family);border:none;border-radius:var(--radius-md);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);text-decoration:none;position:relative;overflow:hidden;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(0) scale(.97);transition:transform var(--anim-instant, .1s) var(--ease-out-quart, ease)}.btn:focus-visible{outline:none;box-shadow:var(--ring-primary)}.btn-primary{background:var(--primary);color:var(--text-white)}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left var(--transition-slow)}.btn-primary:hover:before{left:100%}.btn-primary:hover:not(:disabled){background:var(--primary-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--bg-white);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-light);border-color:var(--border-dark);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-outline{background:transparent;color:var(--primary);border:1px solid var(--primary)}.btn-outline:hover:not(:disabled){background:var(--primary);color:var(--text-white)}.btn-ghost{background:transparent;color:var(--text-muted)}.btn-ghost:hover:not(:disabled){background:var(--bg-gray);color:var(--text)}.btn-danger{background:var(--error);color:var(--text-white)}.btn-danger:hover:not(:disabled){background:var(--error-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-danger-outline{background:transparent;color:var(--error);border:1px solid var(--error)}.btn-danger-outline:hover:not(:disabled){background:var(--error);color:var(--text-white)}.btn-success{background:var(--success);color:var(--text-white)}.btn-success:hover:not(:disabled){background:var(--success-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-success-outline{background:transparent;color:var(--success);border:1px solid var(--success)}.btn-success-outline:hover:not(:disabled){background:var(--success);color:var(--text-white)}.btn-warning{background:var(--warning);color:var(--warning-text)}.btn-warning:hover:not(:disabled){background:var(--warning-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-warning-outline{background:transparent;color:var(--warning);border:1px solid var(--warning)}.btn-warning-outline:hover:not(:disabled){background:var(--warning);color:var(--warning-text)}.btn-cancel{background:var(--error);color:var(--text-white)}.btn-cancel:hover:not(:disabled){background:var(--error-dark);transform:translateY(-1px)}.btn-sm{padding:var(--padding-btn-sm);font-size:var(--font-size-xs)}.btn-lg{padding:var(--padding-btn-lg);font-size:var(--font-size-base-rem)}.btn-full{width:100%}.btn-icon{padding:var(--spacing-sm);min-width:36px;min-height:36px}.btn-icon.btn-sm{min-width:28px;min-height:28px;padding:var(--spacing-xs)}.btn-icon.btn-lg{min-width:44px;min-height:44px}.btn-social{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.btn-social:hover{background:var(--bg-light);border-color:var(--border-dark);transform:translateY(-1px);box-shadow:var(--shadow-xs)}.btn-loading{display:inline-flex;align-items:center;gap:var(--spacing-sm);cursor:not-allowed;opacity:.7}.btn .spinner{width:14px;height:14px;border-width:2px;border-color:#ffffff4d;border-top-color:currentColor}.btn .spinner{animation:spin .8s linear infinite}.btn-close{width:36px;height:36px;border:none;background:var(--bg-light);border-radius:var(--radius-full);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:background-color var(--transition-fast),color var(--transition-fast);padding:0}.btn-close:hover{background:var(--error-bg);color:var(--error)}.btn-danger-ghost{color:var(--error)!important}.btn-danger-ghost:hover{background:var(--error-bg)!important}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){.btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs)}.btn-lg{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm)}}.form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.input-group{position:relative}.input-field{width:100%;padding:.9rem .875rem .35rem 2.5rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--text);font-family:var(--font-family);transition:border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast);outline:none;box-sizing:border-box;height:44px}.input-field::placeholder{color:transparent}.input-field:hover{border-color:var(--border-dark);background:var(--bg-light)}.input-field:focus{border-color:var(--primary);background:var(--bg-white);box-shadow:0 0 0 3px var(--input-focus)}.floating-label{position:absolute;left:2.5rem;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:var(--font-size-sm);pointer-events:none;transition:top var(--transition-normal),transform var(--transition-normal),font-size var(--transition-normal),color var(--transition-normal)}.input-field:focus~.floating-label,.input-field:not(:placeholder-shown)~.floating-label,.floating-label.active{top:4px;transform:translateY(0);font-size:var(--font-size-xs);color:var(--primary)}.input-icon{position:absolute;left:.75rem;top:22px;transform:translateY(-50%);color:var(--text-light);font-size:var(--font-size-sm);transition:color var(--transition-fast);pointer-events:none}.input-group:focus-within .input-icon{color:var(--primary)}.input-field:focus+.input-icon,.input-field:not(:placeholder-shown)+.input-icon{color:var(--primary)}.input-group.no-icon .input-field{padding-left:.875rem}.input-group.no-icon .floating-label{left:.875rem}textarea.input-field{height:auto;min-height:80px;resize:vertical;padding-top:.9rem;padding-bottom:.5rem}textarea.input-field~.floating-label{top:.9rem;transform:none}textarea.input-field:focus~.floating-label,textarea.input-field:not(:placeholder-shown)~.floating-label{top:4px;transform:none;font-size:var(--font-size-xs);color:var(--primary)}.input-icon.textarea-icon{top:1.15rem;transform:none}.password-toggle{position:absolute;right:.75rem;top:22px;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--spacing-xs);font-size:var(--font-size-sm);transition:color var(--transition-fast);z-index:5;display:flex;align-items:center;justify-content:center}.password-toggle:hover{color:var(--primary)}.password-strength{display:flex;gap:3px;margin-top:var(--spacing-xs)}.strength-bar{flex:1;height:2px;background:var(--border);border-radius:1px;transition:background var(--transition-fast)}.strength-bar.active.weak{background:var(--error)}.strength-bar.active.medium{background:var(--warning)}.strength-bar.active.strong{background:var(--success)}.strength-text{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:var(--spacing-xs)}.input-error .input-field{border-color:var(--error);background:var(--error-bg)}.input-error .input-icon{color:var(--error)}.error-message{font-size:var(--font-size-xs);color:var(--error);margin-top:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-xs)}.form-error{padding:var(--spacing-sm);background:var(--error-bg);border:1px solid var(--error);border-radius:var(--radius-sm);color:var(--error);font-size:var(--font-size-xs);display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.form-success{padding:var(--spacing-sm);background:var(--success-bg);border:1px solid var(--success);border-radius:var(--radius-sm);color:var(--success);font-size:var(--font-size-xs);display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.divider{display:flex;align-items:center;gap:var(--spacing-sm);margin:var(--spacing-xs) 0}.divider-line{flex:1;height:1px;background:var(--border)}.divider-text{font-size:var(--font-size-xs);color:var(--text-muted)}.required-star{color:var(--error)}.field-error{border-color:var(--error)!important}.field-description{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:4px;line-height:1.4}.form-field-footer{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);margin-top:4px;width:100%}.form-field-footer-message{flex:1;min-width:0}.form-field-footer-message .error-message,.form-field-footer-message .success-message,.form-field-footer-message .field-description{margin-top:0}.field-char-count{font-size:var(--font-size-xs);color:var(--text-muted);white-space:nowrap;text-align:right;margin-left:auto;padding-top:2px}.text-muted-sm{font-size:var(--font-size-xs);color:var(--text-muted)}@media(max-width:768px){.input-row{grid-template-columns:1fr}.form-grid,.form-row{display:flex;flex-direction:column;gap:var(--spacing-md)}.input-field{min-height:48px;font-size:16px}.password-toggle{min-width:44px;min-height:44px;right:4px;top:50%}}.input-valid .input-field{border-color:var(--success-bright);background:#10b98108}.input-valid .input-icon,.input-valid .floating-label{color:var(--success-bright)}.input-validating .input-field{border-color:var(--info)}.validation-indicator{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:5}.validation-spinner{color:var(--info);font-size:var(--font-size-sm)}.validation-success{color:var(--success-bright);font-size:var(--font-size-sm);animation:validationPop .2s ease}@keyframes validationPop{0%{transform:scale(0);opacity:0}60%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.input-group:has(.password-toggle) .validation-indicator{right:2.5rem}.success-message{font-size:var(--font-size-xs);color:var(--success-bright);margin-top:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-xs);animation:fadeIn .2s ease}.error-message{animation:errorSlideIn .08s ease}@keyframes errorSlideIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.input-error .input-field:focus{box-shadow:0 0 0 3px #ef44441f}.input-valid .input-field:focus{box-shadow:0 0 0 3px #10b9811f}.input-group .input-field{transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.input-group .input-icon{transition:color var(--transition-fast)}select.input-field{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px;padding-right:2.5rem;cursor:pointer}select.input-field~.floating-label{top:4px;transform:none;font-size:var(--font-size-xs);color:var(--primary)}.data-table-wrapper{background:var(--bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--border);overflow:visible;position:relative;max-width:100%}.data-table-wrapper.sticky-header{overflow-y:auto;max-height:calc(100vh - 200px)}.data-table-wrapper.sticky-header .data-table th{position:sticky;top:0;z-index:10;box-shadow:0 1px 3px #0000001a}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:var(--spacing-md) var(--spacing-lg);text-align:left;border-bottom:1px solid var(--border);font-size:var(--font-size-sm)}.data-table th{background:var(--primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);text-transform:uppercase;color:var(--text-white);letter-spacing:.5px}.data-table th.sortable{cursor:pointer;user-select:none;transition:background var(--transition-fast)}.data-table th.sortable:hover{background:var(--primary-dark)}.sort-icon{margin-left:var(--spacing-xs);font-size:10px}.sort-icon.inactive{opacity:.5}.sort-icon.active{opacity:1}.data-table tbody tr{transition:background var(--transition-fast),box-shadow var(--transition-fast)}.data-table tbody tr:hover{background:var(--bg-light);box-shadow:inset 3px 0 0 0 var(--primary)}.data-table tbody tr:last-child td{border-bottom:none}.data-table tr.expired{background:var(--error-bg)}.data-table tr.expiring_soon,.data-table tr.warning{background:var(--warning-bg)}.data-table tr.success,.data-table tr.safe{background:var(--success-bg)}.data-table tr.archived{background:var(--bg-gray);opacity:.7}.data-table tr.archived td{color:var(--text-muted);text-decoration:line-through}.data-table tr.archived td:last-child,.data-table tr.archived .status-badge{text-decoration:none}.editable-cell{cursor:pointer;padding:4px 8px;margin:-4px -8px;border-radius:var(--radius-sm);display:inline-block;transition:background var(--transition-fast)}.editable-cell:hover{background:#3b82f61a}.inline-edit-input{width:100%;padding:6px 10px;border:2px solid var(--primary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);outline:none;background:var(--bg-white);box-shadow:var(--shadow-md)}.empty-row{text-align:center;color:var(--text-muted);padding:var(--spacing-3xl)!important}.table-empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-3xl) var(--spacing-xl);text-align:center}.table-empty-icon{font-size:2rem;color:var(--text-muted);opacity:.4;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--bg-light);border-radius:var(--radius-full)}.table-empty-state span{font-size:var(--font-size-sm);color:var(--text-muted);max-width:360px;line-height:var(--line-height-normal)}@media(min-width:768px)and (max-width:1023px){.data-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;position:relative}.data-table-wrapper:after{content:"";position:absolute;right:0;top:0;bottom:0;width:32px;pointer-events:none;background:linear-gradient(to left,var(--bg-white) 0%,transparent 100%);z-index:5}.data-table th,.data-table td{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs);white-space:nowrap}.data-table th:nth-child(-n+5),.data-table td:nth-child(-n+5){min-width:100px}.data-table th:nth-child(n+6),.data-table td:nth-child(n+6){min-width:120px}}@media(max-width:767px){.data-table-wrapper{overflow-x:visible;background:transparent;box-shadow:none;border-radius:0}.data-table,.data-table thead,.data-table tbody,.data-table tfoot,.data-table tr,.data-table th,.data-table td{display:block}.data-table thead tr{position:absolute;top:-9999px;left:-9999px;visibility:hidden}.data-table tbody tr{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:.75rem;box-shadow:var(--shadow-sm);padding:.25rem 0;max-width:100%;overflow:hidden;box-sizing:border-box}.data-table tbody tr:only-child:has(.empty-row),.data-table tbody tr.empty-table-row{box-shadow:none;border:none;background:transparent}.data-table tr.expired{border-left:3px solid var(--error);background:var(--error-bg)}.data-table tr.expiring_soon,.data-table tr.warning{border-left:3px solid var(--warning);background:var(--warning-bg)}.data-table tr.success,.data-table tr.safe{border-left:3px solid var(--success);background:var(--success-bg)}.data-table tr.archived{border-left:3px solid var(--border-dark)}.data-table tbody td{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;padding:.55rem 1rem;border-bottom:1px solid var(--border);font-size:var(--font-size-sm);min-height:0;text-align:right;word-break:break-word}.data-table tbody td:last-child{border-bottom:none}.data-table tbody td:nth-child(n+5){display:none}.data-table tbody td:before{content:attr(data-label);font-weight:var(--font-weight-semibold);color:var(--text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;flex-shrink:0;min-width:38%;text-align:left;padding-top:1px}.data-table tbody td.empty-row{display:block;text-align:center;padding:2rem 1rem}.data-table tbody td.empty-row:before{content:none}.data-table tbody tr.expanded-row{padding:0;border-top:none;margin-top:-.75rem;border-top-left-radius:0;border-top-right-radius:0}.data-table tbody tr.expanded-row td{display:block;text-align:left;padding:.75rem 1rem}.data-table tbody tr.expanded-row td:before{content:none}}.table-actions{display:flex;gap:var(--spacing-xs);align-items:center}.data-table.density-compact th,.data-table.density-compact td{padding:6px var(--spacing-md);font-size:var(--font-size-xs)}.data-table.density-compact th{font-size:10px}.data-table.density-comfortable th,.data-table.density-comfortable td{padding:var(--spacing-lg) var(--spacing-lg);font-size:var(--font-size-md)}.table-density-toggle{display:inline-flex;align-items:center;gap:2px;background:var(--bg-light);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px}.table-density-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;border-radius:var(--radius-xs);cursor:pointer;color:var(--text-muted);font-size:var(--font-size-xs);transition:all var(--transition-fast)}.table-density-btn:hover{background:var(--bg-gray);color:var(--text)}.table-density-btn.active{background:var(--bg-white);color:var(--primary);box-shadow:var(--shadow-xs)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-3xl);text-align:center;color:var(--text-muted)}.empty-icon{color:var(--border-dark)}.text-success{color:var(--success)}.text-danger{color:var(--error)}.resizable-table .data-table{border-collapse:separate;border-spacing:0}.col-resizer{position:absolute;right:0;top:0;height:100%;width:4px;background:transparent;cursor:col-resize;user-select:none;touch-action:none;z-index:1;transition:background var(--transition-fast)}.col-resizer:hover,.col-resizer.is-resizing{background:var(--accent);opacity:.8}.col-resizer.is-resizing{background:var(--primary);opacity:1}.th-content{display:flex;align-items:center;gap:4px}.col-drag-handle{color:#ffffff80;font-size:10px;cursor:grab;margin-right:4px;opacity:0;transition:opacity var(--transition-fast)}.data-table th:hover .col-drag-handle{opacity:1}.data-table th.col-dragging{opacity:.5}.data-table th.col-drag-over{border-left:3px solid var(--accent)}.table-prefs-toolbar{display:flex;align-items:center;justify-content:flex-end;padding:var(--spacing-xs) var(--spacing-md);border-bottom:1px solid var(--border)}.table-prefs-reset-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);background:none;border:1px solid var(--border);color:var(--text-muted);padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);transition:all var(--transition-fast)}.table-prefs-reset-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--bg-light)}.tanstack-pagination{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--border);font-size:var(--font-size-sm);color:var(--text-muted)}.tanstack-pagination-controls{display:flex;gap:var(--spacing-sm);align-items:center}.pagination-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);background:var(--bg-white);border-radius:var(--radius-sm);cursor:pointer;color:var(--text);transition:all var(--transition-fast)}.pagination-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--bg-light)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.data-table-wrapper.virtualized{will-change:transform;-webkit-overflow-scrolling:touch}.data-table-wrapper.virtualized .data-table{table-layout:fixed}.data-table tbody tr.row-focused{outline:2px solid var(--primary);outline-offset:-2px;background:var(--bg-light)}.data-table tbody tr.row-selected{background:#0f697214}.data-table tbody tr.row-selected:hover{background:#0f69721f}[data-theme=dark] .col-resizer:hover,[data-theme=dark] .col-resizer.is-resizing{background:var(--accent)}[data-theme=dark] .col-drag-handle{color:#ffffff4d}[data-theme=dark] .data-table th.col-drag-over{border-left-color:var(--accent)}[data-theme=dark] .data-table tbody tr.row-focused{outline-color:var(--accent)}[data-theme=dark] .data-table tbody tr.row-selected{background:#97bbbf1a}[data-theme=dark] .data-table tbody tr.row-selected:hover{background:#97bbbf26}@media(min-width:768px)and (max-width:1023px){[data-theme=dark] .data-table-wrapper:after{background:linear-gradient(to left,var(--bg-white) 0%,transparent 100%)}}.data-table th[draggable=true]{cursor:grab;user-select:none}.data-table th[draggable=true]:active{cursor:grabbing}.data-table th .column-drag-handle{font-size:.625rem;color:var(--text-light);margin-right:var(--spacing-xs);opacity:.5;transition:opacity var(--transition-fast)}.data-table th:hover .column-drag-handle{opacity:1;color:var(--text-muted)}.data-table th.column-drag-over{border-left:2px solid var(--primary);background:var(--bg-soft)}.data-table th.column-dragging{opacity:.5}[data-theme=dark] .data-table th .column-drag-handle{color:var(--text-light)}[data-theme=dark] .data-table th:hover .column-drag-handle{color:var(--text-muted)}[data-theme=dark] .data-table th.column-drag-over{border-left-color:#58a6ff;background:#58a6ff0d}.modal-overlay{position:fixed;inset:0;background:#00000073;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:1001}.modal-header-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--border)}.modal-header-bar h2{margin:0;font-size:var(--font-size-lg);display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text)}.modal-body-scroll{flex:1;overflow-y:auto;padding:var(--spacing-xl)}.modal-footer-bar{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--border);background:linear-gradient(to top,var(--bg-white),var(--bg-light))}.confirm-modal-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1050;padding:var(--spacing-lg)}.confirm-modal{background:var(--bg-white);border-radius:var(--radius-xl);padding:var(--spacing-3xl);width:100%;max-width:420px;text-align:center;box-shadow:var(--shadow-modal)}.confirm-modal-icon{width:56px;height:56px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-md);font-size:var(--font-size-xl)}.confirm-modal-icon.danger{background:var(--error-bg);color:var(--error)}.confirm-modal-icon.warning{background:var(--warning-bg);color:var(--warning)}.confirm-modal-icon.success{background:var(--success-bg);color:var(--success)}.confirm-modal h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text)}.confirm-modal p{color:var(--text-muted);font-size:var(--font-size-sm);margin:0 0 var(--spacing-lg) 0;line-height:var(--line-height-normal)}.confirm-modal-actions{display:flex;gap:var(--spacing-sm);justify-content:center}.confirm-modal-actions .btn{flex:1}@media(max-width:768px){.modal-overlay{padding:var(--spacing-md);align-items:flex-end}.confirm-modal{padding:var(--spacing-xl);max-width:100%;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.confirm-modal-actions{flex-direction:column}.modal-header-bar{padding:var(--spacing-md) var(--spacing-lg)}.modal-body-scroll{padding:var(--spacing-lg)}.modal-footer-bar{padding:var(--spacing-md) var(--spacing-lg);flex-direction:column}.modal-footer-bar .btn{width:100%}}.slide-panel-overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:all .3s ease;z-index:999}.slide-panel-overlay.show{opacity:1;visibility:visible}.slide-panel{position:fixed;top:0;right:-480px;width:480px;height:100vh;background:var(--bg-white);box-shadow:-8px 0 30px #00000026;display:flex;flex-direction:column;transition:right .3s cubic-bezier(.4,0,.2,1),visibility 0s linear .3s;z-index:1000;visibility:hidden}.slide-panel.show{right:0;visibility:visible;transition:right .3s cubic-bezier(.4,0,.2,1),visibility 0s linear 0s}.slide-panel--sm{width:380px;right:-380px}.slide-panel--lg{width:660px;right:-660px}.slide-panel--xl{width:860px;right:-860px}.slide-panel--xxl{width:1040px;right:-1040px}.slide-panel--sm.show,.slide-panel--lg.show,.slide-panel--xl.show,.slide-panel--xxl.show{right:0}.slide-panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--border);background:linear-gradient(to bottom,var(--bg-white),var(--bg-light))}.slide-panel-header__title-group{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0;flex:1}.slide-panel-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text);display:flex;align-items:center;gap:var(--spacing-sm)}.slide-panel-header h3 svg{color:var(--primary)}.slide-panel-subtitle{margin:0;font-size:var(--font-size-sm);color:var(--text-muted);line-height:var(--line-height-normal)}.slide-panel-body{flex:1;overflow-y:auto;overflow-x:visible;padding:var(--spacing-xl)}.slide-panel-body .datepicker-input-group{position:relative}.slide-panel-body .datepicker-input-group>.floating-label{position:static;display:block;margin-bottom:var(--spacing-xs);transform:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text);pointer-events:auto}.slide-panel-body .form-group{margin-bottom:var(--spacing-lg)}.slide-panel-body .form-group:last-child{margin-bottom:0}.slide-panel-body .form-group label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text);margin-bottom:var(--spacing-xs)}.slide-panel-body .form-group input,.slide-panel-body .form-group select,.slide-panel-body .form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-white);font-size:var(--font-size-sm);color:var(--text);font-family:var(--font-family);transition:all var(--transition-fast);box-sizing:border-box}.slide-panel-body .form-group input:focus,.slide-panel-body .form-group select:focus,.slide-panel-body .form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--input-focus)}.slide-panel-body .form-group input:disabled{background:var(--bg-gray);cursor:not-allowed}.slide-panel-body .form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.slide-panel-body .form-group textarea{resize:vertical;min-height:80px}.slide-panel-body .input-group{position:relative;margin-bottom:var(--spacing-lg)}.slide-panel-body .input-group .input-icon{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:var(--font-size-sm);z-index:1}.slide-panel-body .input-group input{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-left:2.5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-white);font-size:var(--font-size-sm);color:var(--text);font-family:var(--font-family);transition:all var(--transition-fast);box-sizing:border-box}.slide-panel-body .input-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--input-focus)}.slide-panel-body .floating-label{position:absolute;left:2.5rem;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:var(--font-size-sm);pointer-events:none;transition:all .2s ease}.slide-panel-body .input-group input:focus~.floating-label,.slide-panel-body .input-group input:not(:placeholder-shown)~.floating-label{top:6px;transform:translateY(0);font-size:var(--font-size-xs);color:var(--primary)}.slide-panel-body .input-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.slide-panel-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-5xl) var(--spacing-xl);gap:var(--spacing-md)}.slide-panel-loading__spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:var(--radius-full);animation:slide-panel-spin .8s linear infinite}@keyframes slide-panel-spin{to{transform:rotate(360deg)}}.slide-panel-loading__text{font-size:var(--font-size-sm);color:var(--text-muted);font-weight:var(--font-weight-medium)}.slide-panel-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--border);background:linear-gradient(to top,var(--bg-white),var(--bg-light))}.form-info{background:var(--info-bg);border:1px solid var(--accent);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-xl)}.form-info p{font-size:var(--font-size-sm);color:var(--text);margin:0}.form-info strong{color:var(--accent)}.error-text{display:block;font-size:var(--font-size-xs);color:var(--error);margin-top:var(--spacing-xs)}.toggle-password{position:absolute;right:var(--spacing-md);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-light);cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center}.toggle-password:hover{color:var(--primary)}@media(max-width:768px){.slide-panel,.slide-panel--sm,.slide-panel--lg,.slide-panel--xl,.slide-panel--xxl{width:100%;right:-100%}.slide-panel-body .input-row{grid-template-columns:1fr}}.app-page{background:var(--bg-light);padding:var(--spacing-xl);overflow-x:hidden;flex:1;min-height:0;width:100%;max-width:100%}.page-header{position:sticky;top:calc(var(--banner-offset, 0px) + 44px);z-index:100;display:flex;justify-content:space-between;align-items:center;background:var(--bg-white);padding:var(--spacing-md) var(--spacing-xl);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:var(--spacing-md);box-shadow:0 1px 4px #0000000f;width:100%;max-width:100%}.page-header h1{font-size:var(--font-size-xl);margin:0 0 var(--spacing-xs) 0;display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text)}.page-header h1 svg{font-size:var(--icon-title);color:var(--primary)}.favorite-toggle-btn{background:transparent;border:none;cursor:pointer;font-size:var(--font-size-md);color:var(--text-muted);opacity:.5;padding:var(--spacing-xs);margin-left:var(--spacing-sm);display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition-fast);border-radius:var(--radius-full);outline:none}.favorite-toggle-btn:hover{color:var(--warning);opacity:.9;transform:scale(1.15)}.favorite-toggle-btn.active{color:var(--warning);opacity:1}.favorite-toggle-btn.active:hover{color:var(--warning-dark);transform:scale(1.1)}.header-title-icon{font-size:var(--icon-title)}.page-header p{font-size:var(--font-size-sm);color:var(--text-muted);margin:0}.header-actions{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap;flex-shrink:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}@media(min-width:1281px){.stats-grid{grid-template-columns:repeat(4,1fr)}}@media(min-width:1024px)and (max-width:1280px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:640px)and (max-width:1023px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:639px){.stats-grid{grid-template-columns:1fr;gap:var(--spacing-md)}}@media(max-width:1279px){.app-page{padding:var(--spacing-lg)}}@media(max-width:1023px){.app-page{padding:var(--spacing-lg)}.page-header{padding:var(--spacing-md)}.form-grid,.form-row,.form-2col,.form-two-col,.form-3col,.form-three-col,.grid-2col,.grid-3col{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-section-grid,.form-section__grid{grid-template-columns:1fr}.data-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width:767px){.app-page{padding:var(--spacing-md)}.app-page>*,.page-content,.page-body{display:flex;flex-direction:column;width:100%}.app-page .grid,.app-page .grid-2col,.app-page .grid-3col,.app-page [class*=grid]:not(.stats-grid){grid-template-columns:1fr!important}.app-page .side-by-side,.app-page .split-layout,.app-page .two-column{flex-direction:column}.page-header{flex-direction:column;align-items:flex-start;padding:var(--spacing-md);top:0}.page-header h1{font-size:var(--font-size-lg)}.header-actions{width:100%;justify-content:flex-start}.header-actions .btn{flex:0 1 auto}}.react-grid-layout{position:relative;transition:height .2s ease}.react-grid-item{transition:all .2s ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:.2;transition-duration:.1s;z-index:2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,.4);border-bottom:2px solid rgba(0,0,0,.4)}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.clgyTaWt{position:fixed;inset:0;background:linear-gradient(135deg,var(--indigo),var(--purple));display:flex;align-items:center;justify-content:center;z-index:9999;padding:var(--spacing-lg)}.c8-FaYIe{background:var(--bg-white);border-radius:var(--radius-xl);padding:var(--spacing-2xl);max-width:500px;width:100%;text-align:center;box-shadow:var(--shadow-modal);animation:daiUozmK var(--anim-slow) var(--ease-out-quart)}@keyframes daiUozmK{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.BmLAMeBa{width:80px;height:80px;background:linear-gradient(135deg,var(--error-dark),var(--error));border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-lg)}.BmLAMeBa svg{font-size:var(--font-size-4xl);color:var(--text-white)}.-MvU0yFB{background:linear-gradient(135deg,var(--gray-400),var(--gray-300))!important}.c8-FaYIe h1{font-size:var(--font-size-2xl);color:var(--text-primary);margin-bottom:var(--spacing-md);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.c8-FaYIe h1 svg{color:var(--warning)}.c8-FaYIe>p{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-lg)}.t-NHBfnK{background:var(--warning-light);border:1px solid var(--warning);border-radius:var(--radius-md);padding:var(--spacing-md);color:var(--warning-text)}.t-NHBfnK strong{color:var(--warning-dark)}.uWllCLf7{background:var(--bg-light);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);text-align:left}.uWllCLf7>p{font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--spacing-sm)}.uWllCLf7 ul{list-style:none;padding:0;margin:0}.uWllCLf7 li{padding:var(--spacing-xs) 0;color:var(--text-secondary)}._2FYXkSpA{width:100%;padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg);margin-bottom:var(--spacing-md)}.iewSJM0N{font-size:var(--font-size-md);color:var(--text-muted)}.iewSJM0N a{color:var(--primary)}@media(max-width:768px){.clgyTaWt{padding:var(--spacing-md);align-items:flex-end}.c8-FaYIe{padding:var(--spacing-lg);border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:100%}.BmLAMeBa{width:60px;height:60px}.BmLAMeBa svg{font-size:var(--font-size-2xl)}.c8-FaYIe h1{font-size:var(--font-size-xl)}.uWllCLf7{padding:var(--spacing-md)}._2FYXkSpA{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base-rem)}}.UyaOhuw0{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);animation:_7e7W3stV var(--transition-slow)}.weuAGTyF{padding:var(--spacing-sm);gap:var(--spacing-xs)}.ak523YwC{padding:var(--spacing-xl);gap:var(--spacing-md)}.hx2-Lprs{font-size:var(--font-size-xl);color:var(--warning)}.weuAGTyF .hx2-Lprs{font-size:var(--font-size-base-rem)}.ak523YwC .hx2-Lprs{font-size:var(--font-size-2xl)}.Xawo2m3q{margin:0;font-size:var(--font-size-sm);color:var(--text-muted);text-align:center}.weuAGTyF .Xawo2m3q{font-size:var(--font-size-xs)}.QdU9NV-o{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--padding-btn-sm);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--primary);cursor:pointer;transition:all var(--transition-fast)}.QdU9NV-o:hover{border-color:var(--primary);background:var(--primary-alpha-10)}.QdU9NV-o:focus-visible{outline:none;box-shadow:var(--ring-primary);border-color:var(--primary)}@keyframes _7e7W3stV{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.UyaOhuw0{animation:none}.QdU9NV-o{transition:none}}.W-prVqxP{display:inline-block;border:var(--spinner-border-md) solid var(--bg-gray);border-top-color:var(--primary);border-radius:var(--radius-full);animation:YvZkFpFH .8s linear infinite;box-sizing:border-box}.lui4-bud{width:var(--spacing-lg);height:var(--spacing-lg);border-width:var(--spinner-border-sm)}.ZnVTZ4EQ{width:var(--spacing-3xl);height:var(--spacing-3xl);border-width:var(--spinner-border-md)}.sC3vh2vD{width:var(--spacing-5xl);height:var(--spacing-5xl);border-width:var(--spinner-border-lg)}.O3-a1VuC{width:var(--size-spinner-xl);height:var(--size-spinner-xl);border-width:var(--spinner-border-xl)}.P83tzj5h{border-top-color:var(--primary);border-right-color:transparent}.m87zBZnU{border-color:var(--white-alpha-30);border-top-color:var(--text-white)}.KjLAQH9v{border-top-color:var(--text-muted)}.BVXIEhMA{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);width:100%}.XP2zpGm0{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--white-alpha-90);z-index:9999}._25lO1n0i{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--white-alpha-70);z-index:10;border-radius:inherit}.ZwxWRYQp{flex:1;display:flex;flex-direction:column;justify-content:center;min-height:var(--size-spinner-fill-min)}.iGJqwA4W{font-size:var(--font-size-sm);color:var(--text-muted);font-weight:var(--font-weight-medium);animation:_02KzLqIg 1.5s infinite ease-in-out}@keyframes YvZkFpFH{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes _02KzLqIg{0%,to{opacity:1}50%{opacity:.6}}@media(prefers-reduced-motion:reduce){.W-prVqxP,.iGJqwA4W{animation:none}}.NsAKubdi{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--padding-btn);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);font-family:var(--font-family);border:none;border-radius:var(--radius-full);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);text-decoration:none;position:relative;white-space:nowrap;line-height:1.4}.NsAKubdi:focus{outline:none}.NsAKubdi:focus-visible{outline:none;box-shadow:var(--ring-primary)}.KJVfbDH2{background:var(--primary);color:var(--text-white);border:1px solid var(--primary)}.KJVfbDH2:hover:not(:disabled){background:var(--primary-dark);color:var(--text-white);border-color:var(--primary-dark);box-shadow:var(--shadow-md)}.KJVfbDH2:active:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover);color:var(--text-white)}.KJVfbDH2:focus-visible{background:var(--primary);color:var(--text-white);border-color:var(--primary);box-shadow:var(--ring-primary)}.QWfbe27g{background:var(--bg-white);color:var(--text);border:1px solid var(--border)}.QWfbe27g:hover:not(:disabled){background:var(--bg-light);border-color:var(--border-dark);box-shadow:var(--shadow-sm)}.QWfbe27g:active:not(:disabled){box-shadow:none}.QWfbe27g:focus-visible{box-shadow:var(--ring-primary)}.zdQZeFzr{background:transparent;color:var(--text);border:1px solid var(--border)}.zdQZeFzr:hover:not(:disabled){background:var(--primary);color:var(--text-white);border-color:var(--primary)}.zdQZeFzr:active:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.zdQZeFzr:focus-visible{border-color:var(--primary);box-shadow:var(--ring-primary)}.xtcQSiNm{background:transparent;color:var(--text-muted);border:1px solid transparent}.xtcQSiNm:hover:not(:disabled){background:var(--bg-light);color:var(--text)}.xtcQSiNm:active:not(:disabled){background:var(--bg-gray)}.xtcQSiNm:focus-visible{box-shadow:var(--ring-primary)}.RVDo44Gd{background:var(--error);color:var(--text-white);border:1px solid var(--error)}.RVDo44Gd:hover:not(:disabled){background:var(--error-dark);color:var(--text-white);border-color:var(--error-dark);box-shadow:var(--shadow-md)}.RVDo44Gd:active:not(:disabled){background:var(--error-dark);border-color:var(--error-dark)}.RVDo44Gd:focus-visible{box-shadow:var(--ring-error)}.UPQIViwM{background:transparent;color:var(--error);border:1px solid var(--error)}.UPQIViwM:hover:not(:disabled){background:var(--error);color:var(--text-white);border-color:var(--error)}.UPQIViwM:active:not(:disabled){background:var(--error-dark);border-color:var(--error-dark)}.UPQIViwM:focus-visible{box-shadow:var(--ring-error)}._2zirVnv1{background:var(--success);color:var(--text-white);border:1px solid var(--success)}._2zirVnv1:hover:not(:disabled){background:var(--success-dark);color:var(--text-white);border-color:var(--success-dark);box-shadow:var(--shadow-md)}._2zirVnv1:active:not(:disabled){background:var(--success-dark);border-color:var(--success-dark)}._2zirVnv1:focus-visible{box-shadow:var(--ring-success)}.YT-xzMMj{background:transparent;color:var(--success);border:1px solid var(--success)}.YT-xzMMj:hover:not(:disabled){background:var(--success);color:var(--text-white);border-color:var(--success)}.YT-xzMMj:active:not(:disabled){background:var(--success-dark);border-color:var(--success-dark)}.YT-xzMMj:focus-visible{box-shadow:var(--ring-success)}.OMpugNWm{background:var(--warning);color:var(--text-white);border:1px solid var(--warning)}.OMpugNWm:hover:not(:disabled){background:var(--warning-dark);color:var(--text-white);border-color:var(--warning-dark);box-shadow:var(--shadow-md)}.OMpugNWm:active:not(:disabled){background:var(--warning-dark);border-color:var(--warning-dark)}.OMpugNWm:focus-visible{box-shadow:var(--ring-primary)}.dIGICYK1{background:transparent;color:var(--warning-dark);border:1px solid var(--warning)}.dIGICYK1:hover:not(:disabled){background:var(--warning);color:var(--text-white);border-color:var(--warning)}.dIGICYK1:active:not(:disabled){background:var(--warning-dark);border-color:var(--warning-dark)}.dIGICYK1:focus-visible{box-shadow:var(--ring-primary)}.xQRylmPJ{background:var(--secondary);color:var(--text-white);border:1px solid var(--secondary)}.xQRylmPJ:hover:not(:disabled){background:var(--secondary-dark);color:var(--text-white);border-color:var(--secondary-dark);box-shadow:var(--shadow-sm)}.xQRylmPJ:active:not(:disabled){background:var(--secondary-dark)}.xQRylmPJ:focus-visible{box-shadow:var(--ring-error)}.MWQddA5W{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.MWQddA5W:hover:not(:disabled){background:var(--bg-light);border-color:var(--border-dark);box-shadow:var(--shadow-xs)}.MWQddA5W:active:not(:disabled){box-shadow:none}.MWQddA5W:focus-visible{box-shadow:var(--ring-primary)}.CvXTcA2H{width:var(--spacing-4xl);height:var(--spacing-4xl);min-width:var(--spacing-4xl);min-height:var(--spacing-4xl);border:none;background:var(--bg-light);border-radius:var(--radius-full);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:background-color var(--transition-fast),color var(--transition-fast);padding:0}.CvXTcA2H:hover:not(:disabled){background:var(--error-bg);color:var(--error)}.CvXTcA2H:active:not(:disabled){background:var(--error-light)}.CvXTcA2H:focus-visible{box-shadow:var(--ring-primary)}._9ennBSZm{padding:var(--padding-btn-sm);font-size:var(--font-size-xs)}._4gPkrOF-{padding:var(--padding-btn);font-size:var(--font-size-sm)}.qpGkHp0a{padding:var(--padding-btn-lg);font-size:var(--font-size-base-rem)}.ckcNi2nJ{cursor:wait;opacity:.8}.BHx0Lqpw{opacity:.6;cursor:not-allowed;pointer-events:none}.AWFX5P-4{width:100%}.JlRUjVhS{padding:var(--spacing-sm);min-width:var(--spacing-4xl);min-height:var(--spacing-4xl)}.JlRUjVhS._9ennBSZm{min-width:var(--spacing-3xl);min-height:var(--spacing-3xl);padding:var(--spacing-xs)}.JlRUjVhS.qpGkHp0a{min-width:var(--spacing-5xl);min-height:var(--spacing-5xl)}.NsAKubdi svg{font-size:var(--icon-button)}.fakUNgak{animation:_7vWIzuLX .8s linear infinite}@keyframes _7vWIzuLX{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(min-width:768px){.MWQddA5W{flex:1 1 auto}}@media(prefers-reduced-motion:reduce){.NsAKubdi{transition:none}.fakUNgak{animation:none}}.sOQI-r81{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-5xl) var(--spacing-2xl);text-align:center;min-height:400px;gap:var(--spacing-lg)}.x-i5IWyW{width:80px;height:80px;border-radius:var(--radius-full);background:var(--error-bg);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-4xl);color:var(--error);margin-bottom:var(--spacing-sm)}.ANpygRA9{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text);margin:0}.rxT-zuuv{font-size:var(--font-size-md);color:var(--text-muted);max-width:420px;margin:0;line-height:1.6}.o-yum7LL{display:flex;align-items:center;justify-content:center;min-height:50vh;padding:var(--spacing-3xl)}._4nVTBxs1{text-align:center;max-width:480px;width:100%;padding:var(--spacing-3xl);background:var(--bg-white);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.LqG2wmST{width:64px;height:64px;border-radius:var(--radius-full);background:var(--warning-bg);display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-lg);font-size:var(--font-size-2xl);color:var(--warning)}.UV44ByPV{background:var(--primary-alpha-10);color:var(--primary)}.QBKxjdL4{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text);margin:0 0 var(--spacing-sm) 0}.bIAiXqQl{font-size:var(--font-size-sm);color:var(--text-muted);line-height:1.6;margin:0 0 var(--spacing-lg) 0}.-CGkmZmD{background:var(--bg-light);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);text-align:left;overflow-x:auto}.-CGkmZmD code{font-size:var(--font-size-xs);color:var(--error);font-family:var(--font-family-mono);word-break:break-word}.etdNiZDV{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--success);margin-bottom:var(--spacing-lg)}.IRaPWERV{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.r8SDy36B{display:flex;align-items:center;justify-content:center;gap:var(--spacing-lg);flex-wrap:wrap}.mniyzSBq{display:inline-flex;align-items:center;gap:var(--spacing-xs);background:none;border:none;color:var(--text-muted);font-size:var(--font-size-xs);cursor:pointer;transition:color var(--transition-fast);font-family:var(--font-family)}.mniyzSBq:hover{color:var(--primary)}.mniyzSBq:focus-visible{outline:none;box-shadow:var(--ring-primary);border-radius:var(--radius-xs);color:var(--primary)}._3fiNdW59{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-top:var(--spacing-md)}._6o9pC0P8{width:8px;height:8px;border-radius:var(--radius-full);background:var(--primary);animation:zzXPHhTG 1.4s infinite ease-in-out both}._6o9pC0P8:nth-child(1){animation-delay:0s}._6o9pC0P8:nth-child(2){animation-delay:.16s}._6o9pC0P8:nth-child(3){animation-delay:.32s}@keyframes zzXPHhTG{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.Sq4QscHh{display:flex;align-items:center;justify-content:center;min-height:40vh;padding:var(--spacing-3xl) var(--spacing-lg);font-family:var(--font-family)}.G9QgCK4i{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:var(--spacing-3xl) var(--spacing-2xl);max-width:480px;width:100%;text-align:center;animation:GihIQozK var(--anim-slow) var(--ease-out-quart) both}.cyoZnvGg{width:56px;height:56px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--warning-bg);color:var(--warning);font-size:var(--font-size-xl)}.nN9SLpbi{margin:0 0 var(--spacing-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text)}.wAVB13Mm{margin:0 0 var(--spacing-lg);font-size:var(--font-size-sm);color:var(--text-muted);line-height:1.5}.I5bonr9q{background:var(--bg-light);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-xl);text-align:left;overflow-x:auto;white-space:pre-wrap;font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--error)}.HaC9Q2yn{display:flex;gap:var(--spacing-sm);justify-content:center;flex-wrap:wrap}@keyframes GihIQozK{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){._6o9pC0P8{animation:none}.mniyzSBq{transition:none}.G9QgCK4i{animation:none}}#root{width:100%;min-height:100vh;overflow-x:hidden}
