:root{--color-primary: #059669;--color-primary-hover: #047857;--color-primary-active: #065f46;--color-primary-light: #d1fae5;--color-primary-dark: #065f46;--color-primary-bg: #ecfdf5;--color-primary-fg: #ffffff;--color-accent: #f59e0b;--color-accent-hover: #d97706;--color-accent-light: #fef3c7;--color-accent-bg: #fffbeb;--color-text-primary: #0f172a;--color-text-secondary: #334155;--color-text-tertiary: #64748b;--color-text-muted: #94a3b8;--color-text-inverse: #f8fafc;--color-text-disabled: #94a3b8;--color-text-link: #047857;--color-bg-base: #f8fafc;--color-bg-primary: #f8fafc;--color-bg-secondary: #ffffff;--color-bg-tertiary: #f1f5f9;--color-bg-elevated: #ffffff;--color-bg-inverse: #0f172a;--color-bg-disabled: #e2e8f0;--color-bg-overlay: rgba(2, 6, 23, .55);--color-bg-hover: #f1f5f9;--color-bg-active: #e2e8f0;--color-border-subtle: #e2e8f0;--color-border-primary: #e2e8f0;--color-border-secondary: #cbd5e1;--color-border-strong: #94a3b8;--color-border-focus: #10b981;--color-border-error: #ef4444;--color-border-success: #22c55e;--color-border-warning: #f59e0b;--color-border-info: #0ea5e9;--color-success: #16a34a;--color-success-bg: #f0fdf4;--color-success-light: #dcfce7;--color-success-dark: #15803d;--color-success-fg: #ffffff;--color-warning: #f59e0b;--color-warning-bg: #fffbeb;--color-warning-light: #fef3c7;--color-warning-dark: #b45309;--color-warning-fg: #0f172a;--color-error: #dc2626;--color-error-bg: #fef2f2;--color-error-light: #fee2e2;--color-error-dark: #b91c1c;--color-error-fg: #ffffff;--color-info: #0ea5e9;--color-info-bg: #f0f9ff;--color-info-light: #e0f2fe;--color-info-dark: #0369a1;--color-info-fg: #ffffff;--avatar-1: #059669;--avatar-2: #0284c7;--avatar-3: #d97706;--avatar-4: #16a34a;--avatar-5: #dc2626;--avatar-6: #7c3aed;--avatar-7: #db2777;--avatar-8: #0891b2;--font-family-display: Bricolage Grotesque, Inter Display, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-family-primary: Geist, Inter, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-family-mono: Geist Mono, JetBrains Mono, Fira Code, Monaco, Consolas, monospace;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--line-height-tight: 1.2;--line-height-snug: 1.35;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--letter-spacing-tight: -.02em;--letter-spacing-snug: -.01em;--letter-spacing-normal: 0;--letter-spacing-wide: .02em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--radius-sm: .25rem;--radius-base: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.25rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(15, 23, 42, .05);--shadow-sm: 0 1px 3px 0 rgba(15, 23, 42, .06), 0 1px 2px -1px rgba(15, 23, 42, .05);--shadow-base: 0 4px 6px -1px rgba(15, 23, 42, .06), 0 2px 4px -2px rgba(15, 23, 42, .05);--shadow-md: 0 8px 16px -4px rgba(15, 23, 42, .08), 0 4px 8px -4px rgba(15, 23, 42, .04);--shadow-lg: 0 16px 24px -8px rgba(15, 23, 42, .1), 0 6px 12px -6px rgba(15, 23, 42, .06);--shadow-xl: 0 24px 32px -12px rgba(15, 23, 42, .14), 0 8px 16px -8px rgba(15, 23, 42, .08);--shadow-2xl: 0 32px 48px -16px rgba(15, 23, 42, .2);--shadow-inner: inset 0 1px 2px rgba(15, 23, 42, .06);--shadow-focus-primary: 0 0 0 4px rgba(16, 185, 129, .18);--shadow-focus-error: 0 0 0 4px rgba(239, 68, 68, .18);--shadow-focus-neutral: 0 0 0 4px rgba(100, 116, 139, .18);--transition-instant: 80ms;--transition-fast: .14s;--transition-base: .2s;--transition-slow: .32s;--transition-slower: .5s;--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--transition-colors: color .14s cubic-bezier(0, 0, .2, 1), background-color .14s cubic-bezier(0, 0, .2, 1), border-color .14s cubic-bezier(0, 0, .2, 1);--transition-transform: transform .2s cubic-bezier(0, 0, .2, 1);--transition-opacity: opacity .14s cubic-bezier(0, 0, .2, 1);--transition-shadow: box-shadow .2s cubic-bezier(0, 0, .2, 1);--sidebar-width: 264px;--sidebar-width-collapsed: 72px;--header-height: 56px;--bottom-bar-height: 64px;--container-max-width: 1280px;--container-padding: 1.5rem;--touch-target-min: 44px;--input-min-height: 44px;--button-min-width: 80px;--nav-item-min-height: 44px;--modal-sm-width: 420px;--modal-md-width: 560px;--modal-lg-width: 800px;--modal-xl-width: 1040px;--modal-max-height: 90vh;--modal-full-width: calc(100vw - 2rem) ;--modal-full-height: calc(100vh - 2rem) ;--form-max-width-sm: 480px;--form-max-width-md: 640px;--form-max-width-lg: 880px;--form-min-field-width: 200px;--form-button-min-width: 120px;--table-min-width-mobile: 640px;--table-action-cell-width: 120px;--table-checkbox-width: 40px;--actions-column-width: 120px;--card-min-height: 120px;--card-max-width-content: 1040px;--toast-min-width: 320px;--toast-max-width: 480px;--toast-progress-height: 3px;--dropdown-min-width: 220px;--dropdown-max-width: 480px;--content-max-width-narrow: 640px;--content-max-width-wide: 1040px;--content-max-width-full: 1280px;--border-width-thin: 1px;--border-width-medium: 2px;--border-width-thick: 3px;--scrollbar-width: 8px;--scrollbar-height: 8px;--scrollbar-thumb-hover: #94a3b8;--z-dropdown: 1000;--z-sticky: 1100;--z-banner: 1200;--z-overlay: 1300;--z-modal: 1400;--z-popover: 1500;--z-skiplink: 1600;--z-toast: 1700;--z-tooltip: 1800;--gradient-primary: linear-gradient(135deg, #10b981 0%, #047857 100%);--gradient-accent: linear-gradient(135deg, #fbbf24 0%, #d97706 100%);--gradient-error: linear-gradient(135deg, #ef4444 0%, #b91c1c 100%);--gradient-sidebar: linear-gradient(180deg, #0f172a 0%, #020617 100%);--gradient-logo: linear-gradient(135deg, #10b981 0%, #047857 100%);--gradient-auth: linear-gradient(135deg, #047857 0%, #0f172a 100%);--gradient-surface: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);--alpha-sidebar-divider: rgba(255, 255, 255, .08);--alpha-sidebar-text: rgba(255, 255, 255, .86);--alpha-sidebar-text-muted: rgba(255, 255, 255, .62);--alpha-sidebar-button: rgba(255, 255, 255, .08);--alpha-sidebar-button-hover: rgba(255, 255, 255, .16);--alpha-sidebar-input: rgba(255, 255, 255, .08);--alpha-sidebar-input-hover: rgba(255, 255, 255, .12);--alpha-sidebar-input-focus: rgba(255, 255, 255, .18);--alpha-sidebar-bg-light: rgba(255, 255, 255, .04);--alpha-sidebar-bg-active: rgba(16, 185, 129, .16);--alpha-sidebar-border-focus: rgba(255, 255, 255, .28);--alpha-sidebar-border-strong: rgba(255, 255, 255, .5);--alpha-overlay-modal: rgba(2, 6, 23, .55);--alpha-overlay-loading: rgba(255, 255, 255, .78);--alpha-overlay: rgba(2, 6, 23, .55);--alpha-selection: rgba(16, 185, 129, .22);--alpha-auth-pattern: rgba(255, 255, 255, .08);--alpha-auth-logo: rgba(255, 255, 255, .15);--alpha-auth-border: rgba(255, 255, 255, .1);--alpha-auth-footer: rgba(255, 255, 255, .78);--alpha-auth-footer-muted: rgba(255, 255, 255, .6);--alpha-auth-footer-icon: rgba(255, 255, 255, .5);--alpha-auth-footer-sep: rgba(255, 255, 255, .32);--shadow-text-light: 0 1px 2px rgba(2, 6, 23, .18);--ripple-size: 320px;--ripple-color: rgba(255, 255, 255, .32);--glow-shadow-alpha: .18;--focus-shadow-alpha: .18;--kbd-shadow-inset: inset 0 -1px 0 rgba(0, 0, 0, .25);accent-color:#059669;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-text-primary: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-tertiary: #94a3b8;--color-text-muted: #64748b;--color-text-inverse: #0f172a;--color-text-disabled: #475569;--color-text-link: #6ee7b7;--color-bg-base: #020617;--color-bg-primary: #020617;--color-bg-secondary: #0f172a;--color-bg-tertiary: #1e293b;--color-bg-elevated: #1e293b;--color-bg-inverse: #f8fafc;--color-bg-disabled: #334155;--color-bg-overlay: rgba(0, 0, 0, .7);--color-bg-hover: #1e293b;--color-bg-active: #334155;--color-border-subtle: #1e293b;--color-border-primary: #334155;--color-border-secondary: #475569;--color-border-strong: #64748b;--color-border-focus: #34d399;--color-primary: #34d399;--color-primary-hover: #6ee7b7;--color-primary-active: #10b981;--color-primary-light: #064e3b;--color-primary-bg: rgba(16, 185, 129, .12);--color-primary-fg: #020617;--color-success: #4ade80;--color-success-bg: rgba(34, 197, 94, .14);--color-success-light: #14532d;--color-success-dark: #86efac;--color-warning: #fbbf24;--color-warning-bg: rgba(245, 158, 11, .14);--color-warning-light: #78350f;--color-warning-dark: #fcd34d;--color-error: #f87171;--color-error-bg: rgba(239, 68, 68, .16);--color-error-light: #7f1d1d;--color-error-dark: #fca5a5;--color-info: #38bdf8;--color-info-bg: rgba(14, 165, 233, .16);--color-info-light: #0c4a6e;--color-info-dark: #7dd3fc;--shadow-xs: 0 2px 4px 0 rgba(0, 0, 0, .4);--shadow-sm: 0 2px 4px 0 rgba(0, 0, 0, .4);--shadow-base: 0 4px 8px -2px rgba(0, 0, 0, .4), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-md: 0 12px 20px -6px rgba(0, 0, 0, .5), 0 4px 8px -4px rgba(0, 0, 0, .3);--shadow-lg: 0 20px 30px -10px rgba(0, 0, 0, .6), 0 8px 16px -8px rgba(0, 0, 0, .4);--shadow-xl: 0 30px 50px -15px rgba(0, 0, 0, .7);--gradient-surface: linear-gradient(180deg, #1e293b 0%, #0f172a 100%);accent-color:#34d399;color-scheme:dark}}[data-theme=dark]{--color-text-primary: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-tertiary: #94a3b8;--color-text-muted: #64748b;--color-text-inverse: #0f172a;--color-text-disabled: #475569;--color-text-link: #6ee7b7;--color-bg-base: #020617;--color-bg-primary: #020617;--color-bg-secondary: #0f172a;--color-bg-tertiary: #1e293b;--color-bg-elevated: #1e293b;--color-bg-inverse: #f8fafc;--color-bg-disabled: #334155;--color-bg-overlay: rgba(0, 0, 0, .7);--color-bg-hover: #1e293b;--color-bg-active: #334155;--color-border-subtle: #1e293b;--color-border-primary: #334155;--color-border-secondary: #475569;--color-border-strong: #64748b;--color-border-focus: #34d399;--color-primary: #34d399;--color-primary-hover: #6ee7b7;--color-primary-active: #10b981;--color-primary-light: #064e3b;--color-primary-bg: rgba(16, 185, 129, .12);--color-primary-fg: #020617;--color-success: #4ade80;--color-success-bg: rgba(34, 197, 94, .14);--color-success-light: #14532d;--color-success-dark: #86efac;--color-warning: #fbbf24;--color-warning-bg: rgba(245, 158, 11, .14);--color-warning-light: #78350f;--color-warning-dark: #fcd34d;--color-error: #f87171;--color-error-bg: rgba(239, 68, 68, .16);--color-error-light: #7f1d1d;--color-error-dark: #fca5a5;--color-info: #38bdf8;--color-info-bg: rgba(14, 165, 233, .16);--color-info-light: #0c4a6e;--color-info-dark: #7dd3fc;--shadow-xs: 0 2px 4px 0 rgba(0, 0, 0, .4);--shadow-sm: 0 2px 4px 0 rgba(0, 0, 0, .4);--shadow-base: 0 4px 8px -2px rgba(0, 0, 0, .4), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-md: 0 12px 20px -6px rgba(0, 0, 0, .5), 0 4px 8px -4px rgba(0, 0, 0, .3);--shadow-lg: 0 20px 30px -10px rgba(0, 0, 0, .6), 0 8px 16px -8px rgba(0, 0, 0, .4);--shadow-xl: 0 30px 50px -15px rgba(0, 0, 0, .7);--gradient-surface: linear-gradient(180deg, #1e293b 0%, #0f172a 100%);accent-color:#34d399;color-scheme:dark}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes spin{to{transform:rotate(360deg)}}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{height:100%;font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth;text-size-adjust:100%;-moz-text-size-adjust:100%}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{height:100%;font-family:var(--font-family-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"cv11","ss01","ss03"}ul[role=list],ol[role=list]{list-style:none}html:focus-within{scroll-behavior:smooth}a:not([class]){text-decoration-skip-ink:auto}img,picture,svg{max-width:100%;height:auto;display:block}button{font:inherit;background:none;border:none;cursor:pointer;color:inherit}input,button,textarea,select{font:inherit;color:inherit}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text-primary);margin-bottom:var(--space-4);letter-spacing:var(--letter-spacing-tight)}h1{font-family:var(--font-family-display);font-feature-settings:"ss01","ss02";letter-spacing:var(--letter-spacing-tight);font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);line-height:var(--line-height-tight);color:var(--color-text-primary)}@media (max-width: 639px){h1{font-size:var(--font-size-3xl)}}h2{font-family:var(--font-family-display);font-feature-settings:"ss01","ss02";letter-spacing:var(--letter-spacing-tight);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text-primary)}@media (max-width: 639px){h2{font-size:var(--font-size-2xl)}}h3{font-family:var(--font-family-display);font-feature-settings:"ss01","ss02";letter-spacing:var(--letter-spacing-tight);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-snug);color:var(--color-text-primary)}@media (max-width: 639px){h3{font-size:var(--font-size-xl)}}h4{font-family:var(--font-family-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-snug)}h5{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}h6{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--color-text-tertiary)}p{font-family:var(--font-family-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-secondary);margin-bottom:var(--space-4)}p:last-child{margin-bottom:0}small{font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-tertiary)}strong,b{font-weight:var(--font-weight-semibold)}em{font-style:italic}i:not([class*=fa]):not([class*=lucide]):not([class*=icon]){font-style:italic}a{color:var(--color-text-link);text-decoration:none;transition:var(--transition-colors)}a:hover{color:var(--color-primary-hover);text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:1px}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-sm)}ul,ol{margin-bottom:var(--space-4);padding-left:var(--space-6)}li{margin-bottom:var(--space-1)}li:last-child{margin-bottom:0}code,pre,samp,kbd{font-family:var(--font-family-mono)}code{font-size:.875em;padding:.15em .4em;background-color:var(--color-bg-tertiary);border-radius:var(--radius-sm);color:var(--color-text-primary)}pre{background-color:var(--color-bg-tertiary);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:var(--space-4);overflow-x:auto;margin-bottom:var(--space-4)}pre code{padding:0;background:none;border-radius:0}kbd{font-size:.78em;padding:.2em .45em;background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border-primary);border-bottom-width:2px;border-radius:var(--radius-base);box-shadow:var(--kbd-shadow-inset)}input,textarea,select{width:100%;min-height:var(--input-min-height);padding:0 var(--space-4);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary);background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);transition:var(--transition-colors),var(--transition-shadow)}input::placeholder,textarea::placeholder,select::placeholder{color:var(--color-text-tertiary)}input:hover:not(:disabled):not(:focus),textarea:hover:not(:disabled):not(:focus),select:hover:not(:disabled):not(:focus){border-color:var(--color-border-secondary)}input:focus,textarea:focus,select:focus{outline:none;box-shadow:var(--shadow-focus-primary);border-color:var(--color-border-focus)}input:disabled,textarea:disabled,select:disabled{background:var(--color-bg-disabled);color:var(--color-text-disabled);cursor:not-allowed;opacity:.7}input.error,input[aria-invalid=true],textarea.error,textarea[aria-invalid=true],select.error,select[aria-invalid=true]{border-color:var(--color-border-error)}input.error:focus,input[aria-invalid=true]:focus,textarea.error:focus,textarea[aria-invalid=true]:focus,select.error:focus,select[aria-invalid=true]:focus{outline:none;box-shadow:var(--shadow-focus-error);border-color:var(--color-border-error)}input.success,textarea.success,select.success{border-color:var(--color-border-success)}label{display:block;font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-2);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-snug)}fieldset{border:1px solid var(--color-border-primary);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}legend{font-weight:var(--font-weight-semibold);padding:0 var(--space-2);color:var(--color-text-primary)}table{width:100%;border-collapse:collapse;margin-bottom:var(--space-6);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xs)}th,td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-subtle)}th{background-color:var(--color-bg-tertiary);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-size:var(--font-size-sm)}td{color:var(--color-text-secondary)}tr:last-child td{border-bottom:none}blockquote{border-left:3px solid var(--color-primary);padding:var(--space-4) var(--space-6);margin:var(--space-6) 0;background-color:var(--color-bg-tertiary);border-radius:var(--radius-md);color:var(--color-text-secondary);font-style:italic}blockquote p:last-child{margin-bottom:0}hr{border:none;height:1px;background-color:var(--color-border-subtle);margin:var(--space-8) 0}:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:3px}button:focus-visible,[role=button]:focus-visible,a:focus-visible{outline-offset:2px}::selection{background-color:var(--alpha-selection);color:var(--color-text-primary)}::-webkit-scrollbar{width:var(--scrollbar-width);height:var(--scrollbar-height)}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:var(--radius-full);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover);background-clip:padding-box}*{scrollbar-width:thin;scrollbar-color:var(--color-border-secondary) transparent}@media print{*,*:before,*:after{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}.container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-start{display:flex;align-items:flex-start}.flex-end{display:flex;align-items:flex-end}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-auto-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-6)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.gap-10{gap:var(--space-10)}.gap-12{gap:var(--space-12)}.m-0{margin:0}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-5{margin:var(--space-5)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.mt-0{margin-top:0}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.ml-0{margin-left:0}.ml-1{margin-left:var(--space-1)}.ml-2{margin-left:var(--space-2)}.ml-3{margin-left:var(--space-3)}.ml-4{margin-left:var(--space-4)}.mr-0{margin-right:0}.mr-1{margin-right:var(--space-1)}.mr-2{margin-right:var(--space-2)}.mr-3{margin-right:var(--space-3)}.mr-4{margin-right:var(--space-4)}.p-0{padding:0}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-inverse{color:var(--color-text-inverse)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.leading-tight{line-height:var(--line-height-tight)}.leading-normal{line-height:var(--line-height-normal)}.leading-relaxed{line-height:var(--line-height-relaxed)}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bg-primary{background-color:var(--color-bg-primary)}.bg-secondary{background-color:var(--color-bg-secondary)}.bg-tertiary{background-color:var(--color-bg-tertiary)}.bg-success-light{background-color:var(--color-success-light)}.bg-warning-light{background-color:var(--color-warning-light)}.bg-error-light{background-color:var(--color-error-light)}.bg-info-light{background-color:var(--color-info-light)}.border{border:1px solid var(--color-border-primary)}.border-0{border:0}.border-t{border-top:1px solid var(--color-border-primary)}.border-b{border-bottom:1px solid var(--color-border-primary)}.border-l{border-left:1px solid var(--color-border-primary)}.border-r{border-right:1px solid var(--color-border-primary)}.border-primary{border-color:var(--color-border-primary)}.border-secondary{border-color:var(--color-border-secondary)}.border-focus{border-color:var(--color-border-focus)}.border-error{border-color:var(--color-border-error)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius-base)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-none{box-shadow:none}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow{box-shadow:var(--shadow-base)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.w-full{width:100%}.w-auto{width:auto}.w-fit{width:fit-content}.h-full{height:100%}.h-auto{height:auto}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.min-h-full{min-height:100%}.max-w-xs{max-width:20rem}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-full{max-width:100%}.max-w-none{max-width:none}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-0{left:0}.inset-0{inset:0}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.hidden{display:none}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.cursor-default{cursor:default}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.select-all{-webkit-user-select:all;user-select:all}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media (min-width: 640px){.sm\:block{display:block}.sm\:hidden{display:none}.sm\:flex{display:flex}.sm\:grid{display:grid}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:text-base{font-size:var(--font-size-base)}.sm\:text-lg{font-size:var(--font-size-lg)}}@media (min-width: 768px){.md\:block{display:block}.md\:hidden{display:none}.md\:flex{display:flex}.md\:grid{display:grid}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:text-lg{font-size:var(--font-size-lg)}.md\:text-xl{font-size:var(--font-size-xl)}.md\:text-2xl{font-size:var(--font-size-2xl)}}@media (min-width: 1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}#app-root{min-height:100vh;display:flex;flex-direction:column}.app-layout{display:flex;min-height:100vh;background-color:var(--color-bg-primary)}.main-content{flex:1;margin-left:var(--sidebar-width);min-height:100vh;transition:margin-left var(--transition-base);overflow-x:auto}.main-content.sidebar-collapsed{margin-left:var(--sidebar-width-collapsed)}@media (max-width: 639px){.main-content{margin-left:0}}.page-container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:var(--container-padding)}.page-header{margin-bottom:var(--space-8)}.page-header h1{margin-bottom:var(--space-2)}.page-header .page-description{font-family:var(--font-family-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);line-height:var(--line-height-relaxed);color:var(--color-text-secondary);margin-bottom:0}.page-content .actions-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8);gap:var(--space-4)}@media (max-width: 639px){.page-content .actions-bar{flex-direction:column;align-items:stretch}}.page-content .actions-bar .primary-actions{display:flex;gap:var(--space-3);align-items:center}@media (max-width: 639px){.page-content .actions-bar .primary-actions{flex-direction:column;width:100%}}.page-content .actions-bar .search-filters{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}@media (max-width: 639px){.page-content .actions-bar .search-filters{width:100%;justify-content:space-between}}.page-content .actions-bar .search-filters .search-bar{position:relative;min-width:280px}@media (max-width: 639px){.page-content .actions-bar .search-filters .search-bar{min-width:100%}}.page-content .actions-bar .search-filters .search-bar input{padding-left:calc(var(--space-4) + 1.5rem);width:100%}.page-content .actions-bar .search-filters .search-bar .search-icon{position:absolute;left:var(--space-4);top:50%;transform:translateY(-50%);color:var(--color-text-tertiary);font-size:var(--font-size-base);pointer-events:none}.page-content .content-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);overflow:hidden;transition:var(--transition-shadow),var(--transition-transform);padding:var(--space-6)}.btn{transition:var(--transition-colors),var(--transition-shadow),var(--transition-transform);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target-min);min-width:var(--button-min-width);padding:var(--space-3) var(--space-5);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;letter-spacing:var(--letter-spacing-snug);text-decoration:none;border:1px solid transparent;border-radius:var(--radius-md);white-space:nowrap}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.55}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus-primary);border-color:var(--color-border-focus)}.btn.btn-primary{transition:var(--transition-colors),var(--transition-shadow),var(--transition-transform);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target-min);min-width:var(--button-min-width);padding:var(--space-3) var(--space-5);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;letter-spacing:var(--letter-spacing-snug);text-decoration:none;border:1px solid transparent;border-radius:var(--radius-md);white-space:nowrap;background:var(--color-primary);color:var(--color-primary-fg);border-color:var(--color-primary);box-shadow:var(--shadow-xs)}.btn.btn-primary:disabled,.btn.btn-primary[aria-disabled=true]{cursor:not-allowed;opacity:.55}.btn.btn-primary:focus-visible{outline:none;box-shadow:var(--shadow-focus-primary);border-color:var(--color-border-focus)}.btn.btn-primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:var(--shadow-sm)}.btn.btn-primary:active:not(:disabled){background:var(--color-primary-active);transform:translateY(0);box-shadow:var(--shadow-xs)}.btn.btn-secondary{transition:var(--transition-colors),var(--transition-shadow),var(--transition-transform);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target-min);min-width:var(--button-min-width);padding:var(--space-3) var(--space-5);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;letter-spacing:var(--letter-spacing-snug);text-decoration:none;border:1px solid transparent;border-radius:var(--radius-md);white-space:nowrap;background:var(--color-bg-secondary);color:var(--color-text-primary);border-color:var(--color-border-primary);box-shadow:var(--shadow-xs)}.btn.btn-secondary:disabled,.btn.btn-secondary[aria-disabled=true]{cursor:not-allowed;opacity:.55}.btn.btn-secondary:focus-visible{outline:none;box-shadow:var(--shadow-focus-primary);border-color:var(--color-border-focus)}.btn.btn-secondary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-bg-hover);border-color:var(--color-border-secondary);box-shadow:var(--shadow-sm)}.btn.btn-secondary:active:not(:disabled){background:var(--color-bg-active);box-shadow:var(--shadow-xs)}.btn.btn-ghost{transition:var(--transition-colors),var(--transition-shadow),var(--transition-transform);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target-min);min-width:var(--button-min-width);padding:var(--space-3) var(--space-5);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;letter-spacing:var(--letter-spacing-snug);text-decoration:none;border:1px solid transparent;border-radius:var(--radius-md);white-space:nowrap;background:transparent;color:var(--color-text-secondary);border-color:transparent;box-shadow:none}.btn.btn-ghost:disabled,.btn.btn-ghost[aria-disabled=true]{cursor:not-allowed;opacity:.55}.btn.btn-ghost:focus-visible{outline:none;box-shadow:var(--shadow-focus-primary);border-color:var(--color-border-focus)}.btn.btn-ghost:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-bg-hover);color:var(--color-text-primary)}.btn.btn-ghost:active:not(:disabled){background:var(--color-bg-active)}.btn.btn-danger{transition:var(--transition-colors),var(--transition-shadow),var(--transition-transform);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target-min);min-width:var(--button-min-width);padding:var(--space-3) var(--space-5);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;letter-spacing:var(--letter-spacing-snug);text-decoration:none;border:1px solid transparent;border-radius:var(--radius-md);white-space:nowrap;background:var(--color-error);color:var(--color-error-fg);border-color:var(--color-error);box-shadow:var(--shadow-xs)}.btn.btn-danger:disabled,.btn.btn-danger[aria-disabled=true]{cursor:not-allowed;opacity:.55}.btn.btn-danger:focus-visible{outline:none;box-shadow:var(--shadow-focus-primary);border-color:var(--color-border-focus)}.btn.btn-danger:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-error-dark);border-color:var(--color-error-dark);box-shadow:var(--shadow-sm)}.btn.btn-danger:focus-visible{outline:none;box-shadow:var(--shadow-focus-error);border-color:var(--color-border-error)}.btn.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}.btn.btn-lg{padding:var(--space-4) var(--space-6);font-size:var(--font-size-base)}.btn .icon{font-size:1.2em}.card{background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);overflow:hidden;transition:var(--transition-shadow),var(--transition-transform);padding:var(--space-6)}.card.card-interactive{background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);overflow:hidden;transition:var(--transition-shadow),var(--transition-transform);transition:var(--transition-colors),var(--transition-shadow),var(--transition-transform);cursor:pointer;-webkit-user-select:none;user-select:none}.card.card-interactive:disabled,.card.card-interactive[aria-disabled=true]{cursor:not-allowed;opacity:.55}.card.card-interactive:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:var(--color-border-secondary)}.card.card-interactive:focus-visible{outline:none;box-shadow:var(--shadow-focus-primary);border-color:var(--color-border-focus)}.card.card-sm{padding:var(--space-4)}.card.card-lg{padding:var(--space-8)}.card .card-header{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-primary)}.card .card-header h2,.card .card-header h3,.card .card-header h4{margin-bottom:var(--space-1)}.card .card-header .card-subtitle{font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-tertiary);margin-bottom:0}.card .card-body{flex:1}.card .card-footer{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border-primary);display:flex;justify-content:flex-end;gap:var(--space-3)}.form-group{margin-bottom:var(--space-4)}.form-group label{margin-bottom:var(--space-2)}.form-group .form-error{font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-tertiary);color:var(--color-error);margin-top:var(--space-1)}.form-group .form-help{font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-tertiary);margin-top:var(--space-1)}.form-row{display:flex;gap:var(--space-4)}@media (max-width: 639px){.form-row{flex-direction:column;gap:var(--space-3)}}.form-row .form-group{flex:1}.input{width:100%;min-height:var(--input-min-height);padding:0 var(--space-4);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary);background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);transition:var(--transition-colors),var(--transition-shadow)}.input::placeholder{color:var(--color-text-tertiary)}.input:hover:not(:disabled):not(:focus){border-color:var(--color-border-secondary)}.input:focus{outline:none;box-shadow:var(--shadow-focus-primary);border-color:var(--color-border-focus)}.input:disabled{background:var(--color-bg-disabled);color:var(--color-text-disabled);cursor:not-allowed;opacity:.7}.input.error,.input[aria-invalid=true]{border-color:var(--color-border-error)}.input.error:focus,.input[aria-invalid=true]:focus{outline:none;box-shadow:var(--shadow-focus-error);border-color:var(--color-border-error)}.input.success{border-color:var(--color-border-success)}.input.input-sm{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}.input.input-lg{padding:var(--space-4) var(--space-5);font-size:var(--font-size-lg)}.select{width:100%;min-height:var(--input-min-height);padding:0 var(--space-4);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary);background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);transition:var(--transition-colors),var(--transition-shadow);cursor:pointer;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='currentColor' 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 var(--space-3) center;background-size:1rem;padding-right:calc(var(--space-4) + 1.5rem)}.select::placeholder{color:var(--color-text-tertiary)}.select:hover:not(:disabled):not(:focus){border-color:var(--color-border-secondary)}.select:focus{outline:none;box-shadow:var(--shadow-focus-primary);border-color:var(--color-border-focus)}.select:disabled{background:var(--color-bg-disabled);color:var(--color-text-disabled);cursor:not-allowed;opacity:.7}.select.error,.select[aria-invalid=true]{border-color:var(--color-border-error)}.select.error:focus,.select[aria-invalid=true]:focus{outline:none;box-shadow:var(--shadow-focus-error);border-color:var(--color-border-error)}.select.success{border-color:var(--color-border-success)}.table-container{overflow-x:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.table{width:100%;background:var(--color-bg-secondary)}.table th{background:var(--color-bg-tertiary);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--color-border-primary)}.table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-primary);color:var(--color-text-secondary)}.table tr:hover td{background-color:var(--color-bg-tertiary)}.table tr:last-child td{border-bottom:none}.modal-overlay{position:fixed;inset:0;background:#00000080;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.modal{background:var(--color-bg-secondary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.modal .modal-header{padding:var(--space-6);border-bottom:1px solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center}.modal .modal-header h2{margin:0}.modal .modal-header .close-btn{transition:var(--transition-colors),var(--transition-shadow),var(--transition-transform);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target-min);min-width:var(--button-min-width);padding:var(--space-3) var(--space-5);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;letter-spacing:var(--letter-spacing-snug);text-decoration:none;border:1px solid transparent;border-radius:var(--radius-md);white-space:nowrap;background:transparent;color:var(--color-text-secondary);border-color:transparent;box-shadow:none;padding:var(--space-2);font-size:var(--font-size-lg)}.modal .modal-header .close-btn:disabled,.modal .modal-header .close-btn[aria-disabled=true]{cursor:not-allowed;opacity:.55}.modal .modal-header .close-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus-primary);border-color:var(--color-border-focus)}.modal .modal-header .close-btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-bg-hover);color:var(--color-text-primary)}.modal .modal-header .close-btn:active:not(:disabled){background:var(--color-bg-active)}.modal .modal-body{padding:var(--space-6)}.modal .modal-footer{padding:var(--space-6);border-top:1px solid var(--color-border-primary);display:flex;justify-content:flex-end;gap:var(--space-3)}
