:root,[data-theme=default]{--font-family-sans: Arial, sans-serif;--color-white: #ffffff;--color-white-alpha-4d: #ffffff4D;--color-white-alpha-cc:#FFFFFFCC;--color-white-alpha-70: #ffffffb3;--color-bg-app: #f8fafc;--color-bg-slate-100: #f1f5f9;--scrollbar-thumb: #C0BDBD;--color-scrollbar-light-thumb: #c1c1c1;--color-scrollbar-light-thumb-hover: #a1a1a1;--color-scrollbar-dark-track: #2d2d2d;--color-scrollbar-dark-thumb: #4a4a4a;--color-scrollbar-dark-thumb-hover: #5a5a5a;--color-chrome-mid: #929292;--color-bg-elevated: var(--color-white);--color-bg-muted: #f9fafb;--color-bg-subtle: #f3f4f6;--color-bg-brand-subtle: #f3e8ff;--color-bg-brand-tint: #f4e5ff;--color-bg-brand-active-hover: var(--color-white);--color-bg-neutral-soft: #fafafa;--color-bg-neutral-mid: #f0f0f0;--color-bg-neutral-mid-alt: #f1f1f1;--color-bg-spinner-track: #f3f3f3;--color-bg-neutral-light: #f4f4f4;--color-bg-neutral-silver: #cccbce;--color-bg-purple-tint: #f8f0ff;--color-bg-purple-tint-alt: #f8f5ff;--color-bg-cpp-wash-start: #faf7ff;--color-bg-cpp-wash-end: #f5f0ff;--color-bg-purple-soft-wash: #faf5ff;--color-bg-violet-faint: #f8f7ff;--color-bg-violet-soft: #f3f1ff;--color-bg-violet-pale: #faf8ff;--color-bg-violet-pale-hover: #f3f0ff;--color-bg-error-soft: #fee2e2;--color-bg-error-light: #ffe3e3;--color-bg-warning: #fffbeb;--color-bg-warning-amber-wash: #fed7aa;--color-bg-success-emerald-soft: #d1fae5;--color-bg-info-soft: #f0f9ff;--color-bg-indigo-wash: #eef2ff;--color-bg-sky-100: #dbeafe;--color-bg-neutral-warm: #f1f1ef;--color-bg-neutral-wash-50: #f1f1ef80;--color-bg-neutral-wash-40: #f1f1ef66;--color-bg-neutral-wash-30: #f1f1ef4d;--color-bg-purple-wash-50: #f8f5fe80;--color-text-primary: #000000;--color-text-primary-dark: #00002e;--color-text-primary-transparent: #00000000;--color-text-body: #0f172a;--color-text-secondary: #1f2937;--color-text-heading: #111827;--color-text-heading-strong: #14181f;--color-text-form-label: #101828;--color-text-dark: #1d1823;--color-text-dark-alt: #202020;--color-text-nav: #03000F;--color-text-nav-active: #3B3944;--color-text-nav-hover: #374151;--color-text-body-secondary: #4b5563;--color-text-dim: #666666;--color-text-icon: #555555;--color-text-muted: #6a7282;--color-text-placeholder: #6b7280;--color-text-tertiary: #9ca3af;--color-text-on-dark-muted: #ffffffe5;--color-text-neutral-pale: #f2f2f2;--color-text-success: #167c61;--color-text-success-bright: #059669;--color-text-success-alt: #009966;--color-text-info: #3b82f6;--color-text-link: #1447e6;--color-text-warning: #f97316;--color-text-warning-amber: #f59e0b;--color-warning-amber-alpha-20: #f59e0b33;--color-text-warning-emphasis: #e17100;--color-text-amber: #fe9a00;--color-text-positive: #10b981;--color-text-positive-bright: #22c55e;--color-text-positive-deep: #008236;--color-text-error-soft: #f87171;--color-error-coral: #fca5a5;--color-text-error-dark: #991b1b;--color-text-indigo: #6366f1;--color-text-code: #d4d4d4;--color-text-brand-deep: #2f1240;--color-text-label-muted: #4f4b53;--color-text-label-dark: #343030;--color-text-neutral-light: #a3a3a3;--color-text-purple-alt: #9d2ae8;--color-text-purple-bright: #8a00d4;--color-text-accent-orange: #f54900;--color-text-accent-red: #e7000b;--color-text-accent-brown: #ad5f00;--color-text-accent-forest: #3e8629;--color-text-accent-coral: #ff3246;--color-accent-amber-deep: #c16b02;--color-text-login: #21272a;--color-text-login-brand: #6200a3;--color-text-login-placeholder: #a0a0a0;--color-text-night: #1a1a2e;--color-text-charcoal: #2c2c2c;--color-text-violet-deep: #6b21a8;--color-text-violet: #9333ea;--color-text-amber-dark: #92400e;--color-text-red-wine: #7f1d1d;--color-brand-primary: #a100ff;--color-brand-core-100: #e6dcff;--color-brand-core-100-alpha-10: #e6dcff4d;--color-brand-lavender: #c2a3ff;--color-brand-accent: #7c3aed;--color-brand-accent-deep: #6d28d9;--color-brand-accent-alpha-20: #7c3aed33;--color-brand-accent-alpha-30: #7c3aed4d;--color-bg-brand-accent-tint: #f3e9ff;--color-brand-primary-rgb: 161, 0, 255;--color-brand-vivid: #b63aff;--color-brand-vivid-mid: #9b2fe8;--color-brand-vivid-hover-end: #8a29d1;--color-brand-vivid-dark: #8b2cd9;--color-brand-stage-active-end: #9b39b9;--color-brand-purple-dark: #7500c0;--color-brand-cpp-accent: #5c0099;--color-brand-purple-hover: #8a00e0;--color-brand-purple-deep: #8000cc;--color-brand-purple-mid: #7a00cc;--color-brand-gradient-end: #7b0cc2;--color-brand-purple-bright: #8b00e6;--color-brand-grape: #6a3d9a;--color-brand-grape-alpha-20: #6a3d9a33;--color-brand-primary-alpha-44: #a100ff70;--color-brand-primary-alpha-30: #a100ff4d;--color-brand-primary-alpha-25: #a100ff40;--color-brand-primary-alpha-20: #a100ff33;--color-brand-primary-alpha-10: #a100ff1a;--color-brand-primary-alpha-05: #a100ff0d;--color-brand-primary-alpha-03: #a100ff08;--color-brand-primary-alpha-12: #a100ff1f;--color-brand-primary-alpha-08: #a100ff14;--color-brand-primary-alpha-06: #a100ff0f;--color-brand-primary-alpha-04: #a100ff09;--color-brand-primary-alpha-02: #a100ff05;--color-brand-primary-alpha-01: #a100ff01;--color-brand-purple-dark-alpha-10: #7500c01a;--color-brand-purple-dark-alpha-33: #7500c033;--color-brand-purple-dark-alpha-4d: #7500c04d;--color-brand-purple-light: #d999ff;--color-brand-lavender-soft: #dda3ff;--color-brand-purple-medium: #9f50d1;--color-brand-purple-deep: #4d0f75;--color-brand-orchid: #c98aee;--color-chart-blue-dark: #2078b4;--color-chart-blue-light: #76bbe3;--color-chart-periwinkle: #86a7ff;--color-chart-sky: #60a5fa;--color-chart-resource-target-line: #7eb8dc;--color-chart-indigo-soft: #8884d8;--color-chart-axis-label: #460073;--color-chart-lavender-pop: #dfadff;--color-chart-purple-strong: #6b05ac;--color-chart-blue-bright: #3068fd;--color-chart-blue-medium: #2f80ed;--color-chart-navy-indigo: #324288;--color-chart-violet-medium: #9643cb;--color-chart-violet-bright: #a055f5;--color-chart-indigo-bright: #667eea;--color-chart-plum-deep: #764ba2;--color-chart-pink-pop: #f093fb;--color-chart-cyan-bright: #4facfe;--color-violet-soft-alpha-50: #c4b5fd80;--color-sky-soft-alpha-50: #93c5fd80;--color-accent-blue: #224bff;--color-accent-blue-alpha-30: #224bff4d;--color-accent-blue-alpha-20: #224bff33;--color-accent-blue-alpha-10: #224bff1a;--color-accent-cyan-alpha-20: #0073e633;--color-accent-magenta-alpha-20: #ff006e33;--color-error-deep: #d60d0d;--color-error-deep-alpha-30: #d60d0d4d;--color-error-deep-alpha-20: #d60d0d33;--color-error-deep-alpha-10: #d60d0d1a;--color-error-deep-alpha-05: #d60d0d0d;--color-error-deep-alpha-03: #d60d0d05;--color-error-alt-alpha-10: #fb2c361a;--color-error-alt-alpha-05: #fb2c360d;--color-error-alt-alpha-33: #fb2c3633;--color-orange-alpha-20: #ff690033;--color-orange-alpha-05: #ff69000d;--color-teal-alpha-20: #00bc7d33;--color-teal-alpha-05: #00bc7d0d;--color-coral-alpha-16: #ff324629;--color-success-dark: #065f46;--color-success-green-top: #348c29;--color-success-green-mid: #37ab50;--color-success-green-bottom: #279411;--color-success-gradient-end: #16a34a;--color-error-border-light: #ffc9c9;--color-bg-error-red-200: #fecaca;--color-bg-access-pending: #fcebdb;--color-border-access-pending: #f19b4c;--color-success-bg-light: #e5faf1;--color-bg-success-wash: #f0fdf4;--color-border-success-mint: #b9f8cf;--color-warning-border-light: #fee685;--gradient-brand-subtle: linear-gradient(135deg, #a100ff0d 0%, #7b2cbf0d 100%);--gradient-accent-blue: linear-gradient(135deg, #224bff1a 0%, #224bff0d 100%);--gradient-brand-primary: linear-gradient(135deg, #a100ff1a 0%, #a100ff0d 100%);--gradient-brand-to-blue: linear-gradient(180deg, var(--color-brand-primary) 0%, #224BFF 100%);--gradient-brand-accent-subtle: linear-gradient(135deg, #a100ff0d 0%, #224bff0d 100%);--gradient-brand-horizontal: linear-gradient(90deg, #a100ff1a 0%, #a100ff0d 100%);--gradient-brand-accent-horizontal: linear-gradient(90deg, #a100ff1a 0%, #224bff1a 100%);--gradient-schedule-modal-body: linear-gradient( 135deg, rgba(161, 0, 255, .05) 0%, rgba(230, 220, 255, .3) 50%, rgba(34, 75, 255, .05) 100% );--gradient-schedule-card-header-wash: linear-gradient( 90deg, rgba(161, 0, 255, .05) 0%, rgba(161, 0, 255, .03) 50%, transparent 100% );--gradient-schedule-ai-insights-btn: linear-gradient( 135deg, rgba(161, 0, 255, .1) 0%, rgba(34, 75, 255, .05) 100% );--gradient-sar-scenario-card-purple-hint: linear-gradient( 135deg, rgba(255, 255, 255, .05) 0%, rgba(255, 255, 255, .05) 50%, rgba(161, 0, 255, .0025) 100% );--gradient-sar-comparison-card: linear-gradient( 135deg, rgba(255, 255, 255, .05) 0%, rgba(255, 255, 255, .05) 50%, rgba(34, 75, 255, .0025) 100% ), linear-gradient(0deg, rgba(255, 255, 255, .3), rgba(255, 255, 255, .3));--gradient-sar-difference-box: linear-gradient( 90deg, rgba(214, 13, 13, .1) 0%, rgba(214, 13, 13, .05) 100% );--gradient-sar-phase-red: linear-gradient(90deg, rgba(214, 13, 13, .1) 0%, transparent 100%);--gradient-sar-phase-purple: linear-gradient(90deg, rgba(161, 0, 255, .1) 0%, transparent 100%);--gradient-sar-phase-blue: linear-gradient(90deg, rgba(34, 75, 255, .1) 0%, transparent 100%);--gradient-sar-action-red: linear-gradient(135deg, rgba(214, 13, 13, .1) 0%, transparent 100%);--gradient-sar-action-purple: linear-gradient(135deg, rgba(161, 0, 255, .1) 0%, transparent 100%);--gradient-sar-action-blue: linear-gradient(135deg, rgba(34, 75, 255, .1) 0%, transparent 100%);--gradient-sar-ai-recommendation-card: linear-gradient( 135deg, rgba(161, 0, 255, .1) 0%, rgba(161, 0, 255, .05) 50%, rgba(34, 75, 255, .1) 100% );--gradient-whatif-feature-purple-hover: linear-gradient( 135deg, rgba(161, 0, 255, .15) 0%, rgba(161, 0, 255, .08) 100% );--gradient-whatif-feature-blue-hover: linear-gradient( 135deg, rgba(34, 75, 255, .15) 0%, rgba(34, 75, 255, .08) 100% );--gradient-publish-vivid: linear-gradient( 135deg, var(--color-brand-vivid) 0%, var(--color-brand-vivid-mid) 100% );--gradient-publish-vivid-hover: linear-gradient( 135deg, var(--color-brand-vivid-mid) 0%, var(--color-brand-vivid-hover-end) 100% );--gradient-gantt-header-wash: linear-gradient( 90deg, rgba(161, 0, 255, .04) 0%, rgba(161, 0, 255, .024) 50%, rgba(0, 0, 0, 0) 100% );--gradient-gantt-header-wash-hover: linear-gradient( 90deg, rgba(161, 0, 255, .06) 0%, rgba(161, 0, 255, .036) 50%, rgba(0, 0, 0, 0) 100% );--gradient-gantt-date-range-slider: linear-gradient( 90deg, var(--color-brand-primary) 0%, var(--color-brand-primary) 50%, var(--color-border-default) 50%, var(--color-border-default) 100% );--gradient-gantt-today-line-striped: repeating-linear-gradient( to bottom, var(--color-brand-grape) 0px, var(--color-brand-grape) 6px, transparent 6px, transparent 12px );--gradient-brand-fade: linear-gradient(135deg, #a100ff0d 0%, transparent 100%);--gradient-warning-fade: linear-gradient(135deg, #f59e0b0d 0%, transparent 100%);--gradient-error-fade: linear-gradient(135deg, #dc26260d 0%, transparent 100%);--gradient-summary-card-attention: linear-gradient( 135deg, rgba(214, 13, 13, .05) 0%, rgba(214, 13, 13, .02) 100% );--gradient-card-default: linear-gradient( 135deg, rgba(255, 255, 255, .95) 0%, rgba(250, 250, 255, .95) 100% );--gradient-card-danger: linear-gradient( 135deg, rgba(255, 255, 255, .95) 0%, rgba(255, 250, 250, .95) 100% );--gradient-card-success: linear-gradient( 135deg, rgba(255, 255, 255, .95) 0%, rgba(250, 255, 250, .95) 100% );--gradient-brand-main: linear-gradient( 135deg, var(--color-brand-primary) 0%, var(--color-brand-purple-mid) 100% );--gradient-success-green-vertical: linear-gradient( 180deg, var(--color-success-green-top) 0%, var(--color-success-green-mid) 50%, var(--color-success-green-bottom) 100% );--gradient-brand-vertical: linear-gradient( 180deg, var(--color-brand-primary) 0%, var(--color-brand-primary-end) 100% );--gradient-brand-blue-subtle: linear-gradient( 90deg, var(--color-brand-primary-alpha-05) 0%, var(--color-accent-blue-alpha-05) 100% );--gradient-brand-purple-vertical: linear-gradient( 180deg, var(--color-brand-primary) 0%, var(--color-brand-gradient-end) 100% );--gradient-positive-success-vertical: linear-gradient(180deg, var(--color-text-positive-bright) 0%, var(--color-success-gradient-end) 100%);--gradient-brand-faint-horizontal: linear-gradient( 90deg, var(--color-brand-primary-alpha-02) 0%, transparent 50%, var(--color-accent-blue-alpha-05) 100% );--gradient-purple-subtle: linear-gradient( 135deg, #f8f7ff 0%, #f3f1ff 100% );--gradient-violet-wash-hover: linear-gradient(135deg, #f0edff 0%, #ebe7ff 100%);--gradient-violet-faint-horizontal: linear-gradient( to right, var(--color-vivid-alpha-05), var(--color-vivid-alpha-02) );--gradient-vivid-faint-horizontal: linear-gradient( to right, var(--color-vivid-alpha-08), var(--color-vivid-alpha-04) );--gradient-indigo-purple: linear-gradient( 135deg, var(--color-chart-indigo-bright) 0%, var(--color-chart-plum-deep) 100% );--gradient-vivid-faint-diagonal: linear-gradient( 135deg, var(--color-vivid-alpha-08), var(--color-vivid-alpha-04) );--color-border-default: #e5e7eb;--color-border-neutral-light: #e5e5e5;--color-border-neutral-mid-gray: #808080;--color-border-dotted: #d1d5db;--color-border-primary: #cfcfcf;--color-border-primary-alpha-50: #cfcfcf80;--color-border-strong-alt: #d5d5d5;--color-border-hairline: #ebebeb;--color-border-muted: #d2d2d2;--color-border-light: #d9d9d9;--color-border-neutral-gray: #b3b2b5;--color-border-success: #34d399;--color-border-info-soft: #bfdbfe;--color-border-neutral-taupe-alpha-30: #8b898c4d;--color-header-gradient-start: #fdfcff;--color-header-gradient-end: #f0edff;--gradient-header-horizontal: linear-gradient( 90deg, var(--color-header-gradient-start) 0%, var(--color-header-gradient-end) 100% );--gradient-request-access-page: linear-gradient( 180deg, var(--color-bg-purple-tint-alt) 0%, var(--color-white) 50%, var(--color-bg-purple-tint-alt) 100% );--gradient-request-access-icon: linear-gradient( 135deg, var(--color-brand-primary) 0%, var(--color-brand-purple-dark) 100% );--color-brand-access-hover-start: #8b00db;--gradient-request-access-btn-hover: linear-gradient( 135deg, var(--color-brand-access-hover-start) 0%, var(--color-text-login-brand) 100% );--gradient-cpp-page: linear-gradient( 180deg, var(--color-bg-cpp-wash-start) 0%, var(--color-white) 40%, var(--color-bg-cpp-wash-end) 100% );--gradient-cpp-page-simple: linear-gradient( 180deg, var(--color-bg-cpp-wash-start) 0%, var(--color-white) 100% );--gradient-cpp-portfolio-item-content: linear-gradient( 180deg, var(--color-header-gradient-start) 0%, var(--color-bg-purple-tint-alt) 100% );--color-login-accent-blue: #6997f9;--gradient-login-left-panel: linear-gradient( 180deg, var(--color-bg-purple-tint-alt) 0%, var(--color-white) 100% );--gradient-login-top-bar: linear-gradient( 90deg, var(--color-brand-primary) 0%, var(--color-login-accent-blue) 50%, var(--color-brand-primary) 100% );--gradient-login-main-title: linear-gradient(90deg, #8b2ecd 0%, #2b4be8 100%);--gradient-button-shimmer: linear-gradient( 90deg, transparent, rgba(255, 255, 255, .2), transparent );--gradient-plotly-test-header: linear-gradient( 135deg, var(--color-brand-vivid) 0%, var(--color-brand-vivid-dark) 100% );--gradient-safety-stage-active-circle: linear-gradient( 180deg, var(--color-brand-primary) 32.69%, var(--color-brand-stage-active-end) 100% );--color-shadow-soft: #0000001a;--color-shadow-soft-alpha-10: #0000004d;--color-shadow-strong: #0000002a;--color-overlay-scrim: #00000099;--color-transparent: transparent;--color-black-alpha-04: #0000000a;--color-black-alpha-03: #00000008;--color-black-alpha-05: #0000000d;--color-black-alpha-06: #0000000f;--color-black-alpha-08: #00000014;--color-black-alpha-12: #0000001f;--color-black-alpha-15: #00000026;--color-black-alpha-20: #00000033;--color-black-alpha-45: #00000073;--color-black-alpha-50: #00000080;--color-brand-alpha-15: #a100ff26;--color-brand-alpha-50: #a100ff80;--color-accent-blue-alpha-05: #224bff0d;--color-vivid-alpha-02: #b63aff05;--color-vivid-alpha-04: #b63aff0a;--color-vivid-alpha-05: #b63aff0d;--color-vivid-alpha-08: #b63aff14;--color-vivid-alpha-10: #b63aff1a;--color-vivid-alpha-15: #b63aff26;--color-vivid-alpha-20: #b63aff33;--color-vivid-alpha-25: #b63aff40;--color-vivid-alpha-30: #b63aff4d;--color-brand-primary-end: #a010ed;--shadow-brand-md: 0 4px 8px rgba(var(--color-brand-primary-rgb), .3);--shadow-focus-brand: 0 0 0 3px rgba(var(--color-brand-primary-rgb), .2);--color-danger: #dc2626;--color-danger-alpha-20: #dc262633;--color-danger-strong: #b91c1c;--color-danger-bg: #fef2f2;--color-error-alert: #ff4444;--color-error-alert-bg: #fff5f5;--color-success: #4caf50;--color-priority-critical-dot: #c62828;--color-badge: #ef4444;--color-badge-alpha-33: #ef444433;--color-badge-alpha-10: #ef44441a;--color-btn-access-approve: #48cb48;--color-user-avatar-ring: rgba(var(--color-brand-primary-rgb), .12);--color-user-avatar-border: rgba(var(--color-brand-primary-rgb), .25)}:root{font-family:var(--font-family-sans);line-height:1.5;font-weight:400;color:var(--color-text-body);background-color:var(--color-bg-app);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{font-family:var(--font-family-sans)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background-color:var(--color-bg-app)}#root{min-height:100vh}a{color:inherit}.recharts-legend-item-text{font-size:12px}.modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;align-items:center;justify-content:center;z-index:1100;padding:2rem}.modal-content{background:var(--color-white);border-radius:12px;box-shadow:0 20px 25px -5px var(--color-black-alpha-10),0 10px 10px -5px var(--color-black-alpha-04);width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;position:relative}.modal-content:focus{outline:none}.modal-size-small{max-width:400px}.modal-size-medium{max-width:600px}.modal-size-large{max-width:800px}.modal-size-xlarge{max-width:1000px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 24px 10px;border-bottom:1px solid var(--color-border-default);background:var(--color-white);flex-shrink:0;position:sticky;top:0;z-index:10}.modal-icon{width:48px;height:48px;border-radius:10px;background:var(--color-bg-brand-subtle);display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-icon img{width:28px;height:28px;object-fit:contain}.modal-icon svg{width:24px;height:24px;color:var(--color-brand-primary)}.modal-header-text{flex:1}.modal-title{font-size:24px;font-weight:600;color:var(--color-text-primary);margin:0rem!important}.modal-close-btn{background:none;border:none;padding:.5rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease;flex-shrink:0}.modal-close-btn:hover{background:var(--color-bg-muted)}.modal-close-btn:focus{outline:2px solid var(--color-brand-primary);outline-offset:2px}.modal-body{padding:24px;overflow-y:auto;flex:1}@media(max-width:768px){.modal-overlay{padding:1rem}.modal-content{max-height:95vh}.modal-header{padding:12px 16px}.modal-body{padding:16px}.modal-title{font-size:20px}.modal-subtitle{font-size:14px}}.modal-overlay:has(.submit-feedback-modal){z-index:1100}.submit-feedback-modal.modal-content{max-width:670px;background:var(--color-white)}.submit-feedback-modal .modal-header,.submit-feedback-modal .modal-body{background:var(--color-white)}.submit-feedback-modal .modal-icon{width:40px;height:40px;border-radius:0;background:transparent;padding:0}.submit-feedback-modal .modal-icon img,.sfm-header-icon{width:40px;height:40px;flex-shrink:0;display:block;object-fit:contain;margin-top:14px}.submit-feedback-modal .modal-body{padding:20px 24px 0}.sfm-form{display:flex;flex-direction:column;gap:16px}.sfm-form-group{display:flex;flex-direction:column;gap:6px}.sfm-form-group label{font-size:14px;font-weight:400;color:var(--color-text-primary);line-height:1.4}.sfm-required{color:var(--color-badge)}.sfm-form-group input,.sfm-form-group textarea{width:100%;padding:10px 14px;font-size:14px;line-height:1.5;border:1px solid var(--color-border-dotted);border-radius:8px;background:var(--color-white);color:var(--color-text-form-label);outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box;font-family:var(--font-family-sans)}.sfm-form-group input::placeholder,.sfm-form-group textarea::placeholder{color:var(--color-text-tertiary)}.sfm-form-group input:hover,.sfm-form-group textarea:hover{border-color:var(--color-brand-primary)}.sfm-form-group input:focus,.sfm-form-group textarea:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-brand-primary-alpha-10)}.sfm-form-group textarea{resize:vertical;min-height:96px}.sfm-input-error{border-color:var(--color-badge)!important}.sfm-error-text{font-size:12px;color:var(--color-badge);margin:0}.sfm-select-wrapper{position:relative}.sfm-select-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;font-size:14px;line-height:1.5;border:1px solid var(--color-border-dotted);border-radius:8px;background:var(--color-white);color:var(--color-text-form-label);cursor:pointer;text-align:left;font-family:var(--font-family-sans);transition:border-color .2s ease,box-shadow .2s ease}.sfm-select-trigger:hover{border-color:var(--color-brand-primary)}.sfm-select-trigger:focus{outline:none;border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-brand-primary-alpha-10)}.sfm-select-trigger.sfm-select-placeholder,.sfm-select-trigger.sfm-select-placeholder span{color:var(--color-text-tertiary)}.sfm-select-trigger svg{flex-shrink:0;color:var(--color-text-icon)}.sfm-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;margin:0;padding:6px 0;list-style:none;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 8px 24px var(--color-black-alpha-10);max-height:280px;overflow-y:auto;z-index:20}.sfm-select-option{width:100%;padding:10px 16px;border:none;background:none;text-align:left;font-size:14px;color:var(--color-text-primary);cursor:pointer;font-family:var(--font-family-sans);transition:background .15s ease}.sfm-select-option:hover,.sfm-select-option.selected{background:var(--color-bg-subtle)}.sfm-paste-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:140px;padding:20px 16px;border:1px dashed var(--color-border-dotted);border-radius:8px;background:var(--color-bg-muted);cursor:pointer;outline:none;transition:border-color .2s ease,background .2s ease}.sfm-paste-zone:hover,.sfm-paste-zone:focus{border-color:var(--color-brand-primary);background:var(--color-bg-purple-tint)}.sfm-paste-icon{width:40px;height:40px;border-radius:8px;background:var(--color-bg-brand-subtle);display:flex;align-items:center;justify-content:center;color:var(--color-brand-primary);margin-bottom:4px}.sfm-paste-title{font-size:14px;font-weight:600;color:var(--color-text-primary);margin:0}.sfm-paste-subtitle{font-size:13px;color:var(--color-text-icon);margin:0}.sfm-paste-shortcut{display:inline-block;margin-top:4px;padding:4px 10px;font-size:12px;color:var(--color-text-icon);background:var(--color-white);border:1px solid var(--color-border-default);border-radius:6px}.sfm-paste-hint{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:var(--color-text-icon);margin:6px 0 0;line-height:1.4}.sfm-paste-hint svg{flex-shrink:0;margin-top:1px;color:var(--color-text-icon)}.sfm-attachment-previews{display:flex;flex-wrap:wrap;gap:12px;width:100%;justify-content:center}.sfm-attachment-preview{position:relative;width:120px;height:90px;border-radius:6px;overflow:hidden;border:1px solid var(--color-border-default);background:var(--color-white)}.sfm-attachment-preview img{width:100%;height:100%;object-fit:cover}.sfm-attachment-remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border:none;border-radius:50%;background:var(--color-black-alpha-50);color:var(--color-white);font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.sfm-attachment-remove:hover{background:var(--color-badge)}.sfm-paste-more{width:100%;text-align:center;font-size:12px;color:var(--color-text-icon);margin:4px 0 0}.sfm-footer{display:flex;justify-content:flex-end;padding:16px 0;margin-top:8px;border-top:1px solid var(--color-border-default);background:var(--color-white)}.sfm-send-btn{padding:10px 28px;background:var(--color-brand-primary);color:var(--color-white);border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;font-family:var(--font-family-sans);transition:background .2s ease;min-width:90px}.sfm-send-btn:hover:not(:disabled){background:var(--color-brand-purple-hover)}.sfm-send-btn:disabled{opacity:.7;cursor:not-allowed}@media(max-width:768px){.submit-feedback-modal .modal-body{padding:16px 16px 0}.sfm-footer{padding:12px 16px 16px}}.export-platform-usage-modal.modal-content{max-width:670px}.export-platform-usage-modal .modal-header,.export-platform-usage-modal .modal-body{background:var(--color-white)}.modal-header{border-bottom:1px solid var(--color-border-primary)}.export-platform-usage-modal .modal-icon{width:40px;height:40px;border-radius:8px;background:#e6dcffb3;display:flex;align-items:center;justify-content:center;padding:0}.export-platform-usage-modal .modal-icon img,.export-platform-usage-modal .epum-header-icon{width:24px;height:24px;flex-shrink:0;display:block;object-fit:contain}.export-platform-usage-modal .modal-body{padding:8px 24px 24px}.epum-content{display:flex;flex-direction:column;gap:16px}.epum-duration-label{margin:0;padding:8px 0;font-size:14px;font-weight:400;color:var(--color-text-primary)}.epum-duration-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.epum-duration-card{position:relative;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;max-width:194px;max-height:72px;padding:16px 12px;background:var(--color-white);border:2px solid var(--color-border-primary);border-radius:8px;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}.epum-duration-card:hover{border-color:#dcafff}.epum-duration-card.selected{border:2px solid var(--color-brand-purple-dark);background:var(--color-bg-purple-tint);box-shadow:0 0 0 1px var(--color-brand-purple-dark-alpha-10)}.epum-duration-radio{position:absolute;top:10px;right:10px;width:18px;height:18px;border:2px solid var(--color-border-neutral-gray);border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-white)}.epum-duration-card.selected .epum-duration-radio{border-color:var(--color-brand-primary);background:var(--color-brand-primary)}.epum-duration-radio-dot{width:8px;height:8px;border-radius:50%;background:transparent}.epum-duration-card.selected .epum-duration-radio-dot{background:var(--color-white)}.epum-duration-card-icon{color:var(--color-text-tertiary);display:flex;align-items:center;justify-content:center}.epum-duration-card.selected .epum-duration-card-icon{color:var(--color-brand-purple-dark)}.epum-duration-card-label{font-size:14px;font-weight:400;color:var(--color-text-primary);text-align:center;line-height:1.3}.epum-custom-range{display:grid;grid-template-columns:1fr 1fr;gap:16px}.epum-custom-field{display:flex;flex-direction:column;gap:8px}.epum-custom-field-label{font-size:14px;font-weight:400;color:var(--color-text-primary)}.epum-required{color:var(--color-badge);margin-left:2px}.epum-date-input-group{position:relative;display:flex;align-items:center}.epum-date-input{width:100%;box-sizing:border-box;padding:10px 36px 10px 14px;border:1px solid var(--color-border-dotted);border-radius:8px;font-size:14px;font-family:var(--font-family-sans);color:var(--color-text-primary);background:var(--color-white)}.epum-date-input::placeholder{color:var(--color-text-tertiary)}.epum-date-input:focus{outline:none;border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-brand-primary-alpha-10)}.epum-date-native-input{position:absolute;right:0;top:0;width:36px;height:100%;opacity:0;cursor:pointer;font-size:0;border:none;background:transparent}.epum-date-calendar-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;color:var(--color-text-placeholder);cursor:pointer}.epum-date-calendar-icon:hover{color:var(--color-brand-purple-dark)}.epum-section-divider{border:none;border-top:1px solid var(--color-border-default);margin:0;width:100%}.epum-selected-period{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--color-bg-neutral-soft);border:1px solid var(--color-text-neutral-pale);border-radius:8px}.epum-selected-period-label{font-size:14px;color:var(--color-text-secondary)}.epum-selected-period-value{font-size:14px;font-weight:400;color:var(--color-text-primary);text-align:right}.epum-download-btn{display:flex;align-items:center;justify-content:center;align-self:center;gap:8px;width:190px;height:36px;margin-top:8px;border:none;border-radius:8px;background:var(--color-brand-purple-dark);color:var(--color-white);font-size:16px;font-weight:500;font-family:Arial;cursor:pointer;transition:background .2s}.epum-download-btn:hover:not(:disabled){background:var(--color-brand-purple-hover)}.epum-download-btn:disabled{opacity:.5;cursor:not-allowed}.epum-download-error{margin:0;font-size:13px;line-height:1.4;color:var(--color-error-text);text-align:center}@media(max-width:640px){.epum-duration-cards,.epum-custom-range{grid-template-columns:1fr}.epum-selected-period{flex-direction:column;align-items:flex-start}}.release-announcement{position:absolute;top:calc(100% + 10px);right:0;width:210px;box-sizing:border-box;padding:.5rem .625rem .625rem;border:1px solid var(--color-brand-primary-alpha-30);border-radius:8px;background:var(--color-bg-brand-subtle);box-shadow:0 4px 12px var(--color-black-alpha-15);z-index:1001}.release-announcement:before{content:"";position:absolute;top:-6px;right:14px;width:10px;height:10px;transform:rotate(45deg);border-top:1px solid var(--color-brand-primary-alpha-30);border-left:1px solid var(--color-brand-primary-alpha-30);background:var(--color-bg-brand-subtle)}.release-announcement__pill{display:inline-block;padding:0 6px;border-radius:8px;background:var(--color-brand-primary);color:var(--color-white);font-size:9px;font-weight:700;line-height:14px}.release-announcement__title{margin:4px 0 0;font-size:11px;font-weight:600;color:var(--color-text-primary)}.release-announcement__text{margin:2px 0 6px;font-size:10px;line-height:1.35;color:var(--color-text-secondary)}.release-announcement__actions{display:flex;align-items:center;justify-content:space-between}.release-announcement__link,.release-announcement__dismiss{padding:0;border:none;background:transparent;font:inherit;font-size:10px;cursor:pointer}.release-announcement__link{color:var(--color-brand-primary);font-weight:700}.release-announcement__dismiss{color:var(--color-text-muted)}.release-announcement__link:hover,.release-announcement__dismiss:hover{text-decoration:underline}.release-announcement__link:focus-visible,.release-announcement__dismiss:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px}.header{display:flex;justify-content:space-between;align-items:center;padding:0;background:var(--gradient-header-horizontal);border-bottom:1px solid var(--color-border-default);height:60px;position:fixed;top:var(--maintenance-banner-height, 0px);left:0;right:0;z-index:1000;width:100%}.skip-to-content{position:absolute;left:12px;top:8px;z-index:1100;padding:.5rem .75rem;background:var(--color-brand-primary);color:var(--color-white);border-radius:4px;text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap;transform:translateY(-120%)}.skip-to-content:focus{transform:translateY(0);outline:2px solid var(--color-white);outline-offset:2px}.header-left{display:flex;align-items:center;flex:1;height:100%}.logo{display:flex;align-items:center;gap:.625rem;padding:0 1.25rem;height:100%}.logo-icon-square{display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-text{display:flex;flex-direction:column}.logo-title{font-size:16px;font-weight:400;color:var(--color-text-form-label);line-height:1.2}.logo-subtitle{font-size:12px;color:var(--color-text-muted);line-height:1.2}.header-navigation{display:flex;align-items:center;gap:4px;flex:1;height:100%;overflow-x:hidden;overflow-y:hidden;padding:0 .75rem;position:relative}.header-navigation .nav-tab{padding:.25rem .6rem;background:none;border:none;border-radius:0;cursor:pointer;font-size:14px;color:var(--color-text-nav);white-space:nowrap;transition:all .2s;font-weight:400;height:auto;display:flex;align-items:center;line-height:1.2;margin:0;position:relative}.header-navigation .nav-tab:hover{color:var(--color-text-nav-hover);background:transparent}.header-navigation .nav-tab.active{color:var(--color-text-nav-active);background:var(--color-brand-core-100);font-weight:400;border-radius:8px;padding:10px;Gap:10px;border:none}.header-right{display:flex;align-items:center;gap:.75rem;padding:0 1rem;height:100%}.project-select{padding:.375rem 2rem .375rem .75rem;border:1px solid var(--color-border-default);border-radius:4px;background:var(--color-bg-elevated);font-size:14px;font-weight:500;color:var(--color-text-primary);cursor:pointer;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23555555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;min-width:140px}.header-icon{height:16px;width:16px;position:relative;cursor:pointer;color:var(--color-text-icon);transition:all .2s;display:flex;align-items:center;justify-content:center;padding:20px;border-radius:4px}.header-icon:hover{color:var(--color-text-nav-hover);background:var(--color-bg-subtle)}.header-icon.ai-assistant-toggle.active{color:var(--color-brand-accent);background:var(--color-bg-brand-subtle)}.header-icon.ai-assistant-toggle{border:0;background-color:transparent;font:inherit}.ai-assistant-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 4px;box-sizing:border-box;border-radius:8px;background:var(--color-brand-primary);color:var(--color-white);font-size:10px;font-weight:700;line-height:16px;text-align:center;pointer-events:none}.header-icon.ai-assistant-toggle:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-border-default);padding:0;overflow:hidden}.user-menu-wrapper{position:relative}.user-avatar-unread-dot{position:absolute;top:0;right:0;width:9px;height:9px;box-sizing:border-box;border:1.5px solid var(--color-white);border-radius:50%;background:var(--color-danger);pointer-events:none}.user-menu-release-notes-label{flex:1;text-align:left}.user-menu-unread-badge{min-width:18px;padding:0 5px;box-sizing:border-box;border-radius:9px;background:var(--color-danger);color:var(--color-white);font-size:11px;font-weight:700;line-height:18px;text-align:center}.user-menu-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 4px 12px var(--color-black-alpha-15);min-width:240px;z-index:1001;overflow:hidden}.user-menu-user-block{display:flex;align-items:center;gap:12px;padding:1rem}.user-menu-avatar-wrap{flex-shrink:0;width:44px;height:44px;border-radius:50%;background:var(--color-user-avatar-ring);border:1px solid var(--color-user-avatar-border);display:flex;align-items:center;justify-content:center}.user-menu-avatar{color:var(--color-text-placeholder);width:24px;height:24px}.user-menu-info{display:flex;flex-direction:column;gap:2px;min-width:0}.user-menu-role{font-size:14px;font-weight:400;color:var(--color-text-primary);line-height:1.3}.user-menu-name{font-size:16px;font-weight:400;color:var(--color-text-primary);line-height:1.3}.user-menu-divider-dotted{height:0;border:none;border-top:1px dotted var(--color-border-dotted);margin:0 1rem}.user-menu-divider{height:1px;background:var(--color-border-default);margin:0}.user-menu-item{display:block;width:100%;padding:0;background:var(--color-bg-elevated);border:none;text-align:left;font-size:14px;font-weight:400;cursor:pointer;transition:background .2s}.user-menu-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;width:100%;color:var(--color-text-primary)}.user-menu-button:hover{background:var(--color-bg-muted)}.user-menu-button svg{width:18px;height:18px;flex-shrink:0}.user-menu-profile svg{color:var(--color-text-primary)}.user-menu-logout{color:var(--color-danger)}.user-menu-logout svg{color:var(--color-danger)}.user-menu-logout:hover{background:var(--color-danger-bg);color:var(--color-danger-strong)}.user-menu-logout:hover svg{color:var(--color-danger-strong)}.give-feedback-btn{display:flex;align-items:center;gap:8px;padding:4px 8px;background:var(--color-white);border:1px solid var(--color-border-neutral-gray);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font-family-sans);color:var(--color-text-primary);white-space:nowrap;transition:background .2s,border-color .2s;line-height:1.2;height:32px}.give-feedback-btn:hover,.give-feedback-btn:focus-visible,.give-feedback-btn:active{background:var(--color-bg-brand-tint);border-color:var(--color-brand-primary)}.give-feedback-icon{width:20px;height:20px;flex-shrink:0}.header-export-wrap{position:relative;display:flex;align-items:center}.header-export-error{position:absolute;top:calc(100% + 4px);right:0;z-index:1001;max-width:280px;padding:6px 8px;border:1px solid var(--color-error-coral);border-radius:4px;background:var(--color-white);color:var(--color-danger);font-size:12px;line-height:1.3;white-space:normal}.header-export-data-btn{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;gap:8px;padding:4px 8px;height:32px;min-width:128px;background:var(--color-white);border:1px solid #dcafff;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font-family-sans);color:var(--color-text-dark);white-space:nowrap;flex:none;transition:background .2s,border-color .2s;line-height:1.2}.header-export-data-btn:hover,.header-export-data-btn:focus-visible{background:var(--color-bg-brand-tint);border-color:var(--color-brand-primary)}.header-export-data-btn:disabled{cursor:not-allowed;opacity:.7}.header-export-data-icon{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.icon-16{width:16px;height:16px}.icon-18{width:18px;height:18px}.icon-36{width:32px;height:32px}.icon-40{width:40px;height:40px}.user-menu-danger{color:var(--color-danger)!important}.user-menu-danger:hover{background:var(--color-danger-bg)!important;color:var(--color-danger-strong)!important}.user-menu-danger svg{color:var(--color-danger)}.header-project-selector{position:relative;margin-right:0}.header-project-select-btn{display:flex;align-items:center;gap:8px;padding:4px 8px;width:220px;height:44px;background:var(--color-white);border:1px solid var(--color-brand-primary);border-radius:6px;cursor:pointer;font-size:14px;font-weight:700;font-family:var(--font-family-sans);color:var(--color-brand-primary);white-space:nowrap;transition:background .2s,border-color .2s;line-height:1.2;box-sizing:border-box}.header-project-select-btn:hover,.header-project-select-btn:focus-visible,.header-project-select-btn:active{background:var(--color-bg-brand-tint);border-color:var(--color-brand-primary)}.header-project-select-icon{flex-shrink:0;width:22px;height:16px}.header-project-select-text{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:1px}.header-project-select-caption{font-size:11px;font-weight:400;line-height:1.2;color:var(--color-text-dim)}.header-project-select-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.header-project-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;max-width:300px;max-height:280px;overflow-y:auto;background:var(--color-bg-primary, #fff);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 8px 24px #0000001f;z-index:1100;padding:4px 0}.header-project-dropdown-item{display:block;width:100%;padding:8px 14px;background:none;border:none;text-align:left;font-size:13px;color:var(--color-text-primary);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .12s}.header-project-dropdown-item:hover{background:var(--color-bg-hover, #f5f5f5)}.header-project-dropdown-item.active{background:var(--color-primary-light, #f0ebff);color:var(--color-primary, #6c3ec1);font-weight:600}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 18px;border-radius:8px;font-size:13px;font-weight:500;line-height:1.25;font-family:var(--font-family-sans);cursor:pointer;border:none;transition:background .2s ease,opacity .2s ease,transform .2s ease,border-color .2s ease;white-space:nowrap}.ui-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus-brand)}.ui-btn:disabled,.ui-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;transform:none}.ui-btn--sm{padding:6px 14px;font-size:12px}.ui-btn--md{padding:8px 18px;font-size:13px}.ui-btn--primary{background:var(--gradient-publish-vivid, var(--color-brand-primary));color:var(--color-white)}.ui-btn--primary:hover:not(:disabled):not([aria-disabled=true]){transform:translateY(-1px)}.ui-btn--secondary{background:var(--color-white);color:var(--color-brand-vivid, var(--color-brand-primary));border:1.5px solid var(--color-brand-vivid, var(--color-brand-primary))}.ui-btn--secondary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-bg-brand-subtle)}.ui-btn--danger{background:var(--color-danger);color:var(--color-white)}.ui-btn--danger:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-danger-strong)}.ui-btn--ghost{background:transparent;color:var(--color-text-nav-hover);border:1px solid transparent}.ui-btn--ghost:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-bg-subtle);color:var(--color-text-secondary)}.ui-field{display:flex;flex-direction:column;gap:6px;width:100%}.ui-field__label{font-weight:500;font-size:14px;line-height:20px;color:var(--color-text-form-label)}.ui-field__control{width:100%;padding:.75rem 1rem;font-weight:400;font-size:14px;line-height:20px;border:1px solid var(--color-border-dotted);border-radius:8px;background:var(--color-bg-elevated);color:var(--color-text-form-label);outline:none;transition:border-color .25s ease,box-shadow .25s ease;height:44px;box-sizing:border-box;font-family:var(--font-family-sans)}.ui-field__control:hover:not(:disabled):not([aria-disabled=true]){border-color:var(--color-brand-primary)}.ui-field__control:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 4px var(--color-brand-primary-alpha-12)}.ui-field__control::placeholder{color:var(--color-text-tertiary)}.ui-field__control:disabled,.ui-field__control[aria-disabled=true]{background:var(--color-bg-muted);color:var(--color-text-placeholder);cursor:not-allowed;border-color:var(--color-border-default)}.ui-field__control:read-only:not(:disabled){background:var(--color-bg-muted);color:var(--color-text-placeholder);cursor:not-allowed;border-color:var(--color-border-default)}.ui-field__control--error{border-color:var(--color-error-coral)}.ui-field__control--error:focus{box-shadow:0 0 0 4px var(--color-error-deep-alpha-10)}.ui-field__error{margin:0;font-size:12px;line-height:1.4;color:var(--color-danger)}.ui-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}.ui-select--placeholder{color:var(--color-text-tertiary);cursor:pointer}.ui-select option{color:var(--color-text-form-label)}.ui-select option:disabled{color:var(--color-text-tertiary)}.ui-select:invalid,.ui-select:required:invalid{cursor:pointer}select.ui-select{cursor:pointer!important}.ui-textarea{height:auto;min-height:88px;resize:vertical;line-height:1.5;padding-top:.75rem;padding-bottom:.75rem}.ui-field--compact .ui-field__label{font-size:12px;font-weight:600;color:var(--color-text-primary)}.ui-field--compact .ui-field__control{padding:8px 10px;height:auto;min-height:0;font-size:13px;border-width:1.5px;border-color:var(--color-border-default);color:var(--color-text-primary)}.ui-field--compact .ui-field__control:focus{box-shadow:0 0 0 3px var(--color-vivid-alpha-10, rgba(124, 58, 237, .1))}.ui-field--compact .ui-textarea{min-height:72px}.ui-spinner{display:inline-block;border-radius:50%;border-style:solid;animation:ui-spin .8s linear infinite;flex-shrink:0}.ui-spinner--sm{width:16px;height:16px;border-width:2px}.ui-spinner--base{width:20px;height:20px;border-width:2px}.ui-spinner--md{width:32px;height:32px;border-width:3px}.ui-spinner--lg{width:40px;height:40px;border-width:4px}.ui-spinner--brand{border-color:var(--color-border-default);border-top-color:var(--color-brand-primary)}.ui-spinner--on-primary{border-color:var(--color-white-alpha-4d);border-top-color:var(--color-white)}.ui-spinner--standalone{display:block;margin-inline:auto}@media(prefers-reduced-motion:reduce){.ui-spinner{animation:none;border-style:dotted}}.plotly-visualization-container{width:100%;max-width:100%;box-sizing:border-box}.visualization-explanation{margin:0 0 12px;padding:12px;background-color:#f8f9fa;border-left:3px solid var(--color-brand-vivid);border-radius:4px;font-size:13px;color:var(--color-text-icon);line-height:1.5}.plotly-chart-wrapper{width:100%;height:500px;border:1px solid var(--color-border-default);border-radius:8px;overflow:hidden;background-color:var(--color-white)}.plotly-iframe{width:100%;height:100%;border:none;display:block}.plotly-chart-container-wrapper{width:100%;border:1px solid var(--color-border-default);border-radius:8px;background-color:var(--color-white);overflow:hidden;box-sizing:border-box}.plotly-chart-header{display:flex;justify-content:flex-end;align-items:center;padding:8px 12px;background-color:var(--color-bg-neutral-soft);border-bottom:1px solid var(--color-border-default)}.plotly-chart-client{width:100%!important;max-width:100%!important;min-width:0;height:500px;background-color:var(--color-white);overflow:hidden;box-sizing:border-box}.plotly-chart-ai-chat{height:300px!important;min-height:300px!important}.plotly-chart-published-card{height:200px!important;min-height:200px!important}.plotly-chart-published-detail,.plotly-chart-default{height:500px!important;min-height:500px!important}.plotly-chart-container-wrapper:not(:has(.plotly-chart-header)) .plotly-chart-client{border:1px solid var(--color-border-default);border-radius:8px}.plotly-chart-client .js-plotly-plot,.plotly-chart-client .plotly{width:100%!important;max-width:100%!important}.plotly-chart-client .plot-container,.plotly-chart-client .svg-container{width:100%!important}.plotly-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:12px;color:var(--color-text-placeholder);background-color:var(--color-bg-muted);border:1px solid var(--color-border-default);border-radius:8px}.plotly-error{display:flex;align-items:flex-start;gap:12px;padding:16px;background-color:var(--color-danger-bg);border:1px solid #fecaca;border-radius:8px;color:var(--color-text-error-dark)}.plotly-error svg{flex-shrink:0;margin-top:2px}.plotly-error strong{display:block;margin-bottom:4px;font-size:14px}.plotly-error p{margin:0;font-size:13px;color:var(--color-danger)}.plotly-code-details{margin-top:12px;width:100%}.plotly-code-details summary{cursor:pointer;padding:8px 12px;background-color:var(--color-danger-bg);border:1px solid #fecaca;border-radius:4px;font-size:13px;font-weight:500;color:var(--color-text-error-dark);transition:background-color .2s}.plotly-code-details summary:hover{background-color:var(--color-bg-error-soft)}.plotly-code-block{margin-top:8px;padding:12px;background-color:#1e1e1e;color:var(--color-text-code);border-radius:4px;font-family:Consolas,Monaco,Courier New,monospace;font-size:12px;line-height:1.5;overflow-x:auto;max-height:400px;overflow-y:auto}@media(max-width:768px){.plotly-chart-wrapper{height:400px}.visualization-explanation{font-size:12px;padding:10px}.plotly-chart-ai-chat{height:250px!important;min-height:250px!important}.plotly-chart-published-card{height:180px!important;min-height:180px!important}.plotly-chart-published-detail,.plotly-chart-default{height:400px!important;min-height:400px!important}.plotly-chart-client .js-plotly-plot .plotly text{font-size:inherit!important}}.recharts-viz-area{width:100%;display:flex;flex-direction:column;border:none;box-shadow:none;background:transparent;margin:0;padding:0}.recharts-chart-container-wrapper{width:100%;border:1px solid var(--color-border-default);border-radius:8px;background-color:var(--color-white);overflow:hidden;box-sizing:border-box}.recharts-chart-container-wrapper .recharts-viz-area{margin:0;padding:.75rem}.recharts-chart-header{display:flex;justify-content:flex-end;align-items:center;padding:8px 12px;background-color:var(--color-bg-neutral-soft);border-bottom:1px solid var(--color-border-default)}.api-visualization-card,.api-visualization-detail{width:100%;height:100%}.api-visualization-card .recharts-viz-area,.api-visualization-detail .recharts-viz-area{border:none;box-shadow:none;background:transparent}.publish-to-board-modal.modal-content,.publish-to-board-modal .modal-content{max-width:420px;width:100%;max-height:min(88vh,520px)}.publish-to-board-modal .modal-header{padding:12px 16px}.publish-to-board-modal .modal-icon{width:36px;height:36px;border-radius:8px}.publish-to-board-modal .modal-icon svg{width:18px;height:18px}.publish-to-board-modal .modal-title{font-size:17px;margin-bottom:2px}.publish-to-board-modal .modal-subtitle{font-size:13px;line-height:1.35}.publish-to-board-modal .modal-body{padding:0;display:flex;flex-direction:column;min-height:0;overflow:hidden;background:unset}.publish-board-options{display:flex;flex-direction:column;gap:8px;padding:12px 16px;overflow-y:auto;flex:1;min-height:0}.publish-board-option{border:2px solid var(--color-border-primary);border-radius:10px;padding:12px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease;flex-shrink:0}.publish-board-option:hover{border-color:var(--color-brand-vivid, var(--color-brand-primary))}.publish-board-option-active{border-color:var(--color-brand-vivid, var(--color-brand-primary));box-shadow:0 0 0 1px var(--color-brand-vivid, var(--color-brand-primary));background:var(--gradient-schedule-modal-body)}.publish-board-option-header{display:flex;align-items:center;gap:10px;width:100%}.publish-board-option-header .publish-board-radio{margin-left:auto;border-radius:50%}.publish-board-option-header .publish-board-radio:has(input:checked){background:var(--color-brand-primary)}.publish-board-option-header .publish-board-radio input:checked+.publish-board-radio-mark{border-color:var(--color-brand-primary);background:radial-gradient(circle,white 0 35%,transparent 36%)}.publish-board-option-icon{width:32px;height:32px;border-radius:8px;background:var(--color-bg-brand-subtle);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-brand-vivid, var(--color-brand-primary))}.publish-board-option-text{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.publish-board-option-title{font-size:14px;font-weight:600;color:var(--color-text-primary)}.publish-board-option-desc{font-size:12px;color:var(--color-text-icon)}.publish-board-option-new:not(.publish-board-option-active) .publish-board-option-icon{color:var(--color-text-icon)}.publish-board-option-new:not(.publish-board-option-active) .publish-board-option-title{color:var(--color-text-icon)}.publish-board-radio{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer}.publish-board-radio input{position:absolute;opacity:0;width:0;height:0}.publish-board-radio-mark{width:18px;height:18px;border:2px solid var(--color-border-primary);border-radius:50%;display:inline-block;transition:border-color .2s ease,background .2s ease}.publish-board-list .publish-board-radio input:checked+.publish-board-radio-mark{border-color:var(--color-brand-vivid, var(--color-brand-primary));background:radial-gradient(circle,var(--color-brand-vivid, var(--color-brand-primary)) 0 35%,transparent 36%)}.publish-board-list{margin-top:10px;display:flex;flex-direction:column;gap:5px;max-height:min(180px,32vh);overflow-y:auto;overscroll-behavior:contain}.publish-board-list-item{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;border:1px solid var(--color-border-default);border-radius:8px;background:var(--color-white);transition:border-color .15s ease,background .15s ease}.publish-board-list-item:hover{background:var(--color-bg-subtle);border-color:var(--color-border-strong, var(--color-border-default))}.publish-board-list-item .publish-board-radio{flex-shrink:0}.publish-board-list-name{font-size:13px;font-weight:500;color:var(--color-text-primary);flex:1;min-width:0}.publish-board-new-form{margin-top:10px;padding-top:8px;border-top:1px solid var(--color-border-default)}.publish-board-new-hint{display:flex;align-items:flex-start;gap:5px;margin:6px 0 0;font-size:11px;line-height:1.35;color:var(--color-text-icon)}.publish-board-new-hint svg{flex-shrink:0;margin-top:1px;color:var(--color-text-tertiary)}.publish-board-modal-error{margin:0;padding:0 16px;font-size:13px;line-height:1.4;color:var(--color-text-error, #dc2626)}.publish-board-modal-footer{display:flex;gap:10px;padding:12px 16px;flex-shrink:0}.publish-board-modal-footer .ui-btn{width:50%;flex:1;border-radius:4px}.publish-board-modal-footer .ui-btn--secondary{color:var(--color-brand-purple-dark)}.publish-board-modal-footer .ui-btn--primary{background:var(--color-brand-purple-dark)}@media(max-width:768px){.publish-to-board-modal.modal-content,.publish-to-board-modal .modal-content{max-width:calc(100vw - 2rem);max-height:92vh}.publish-board-options{padding:10px 12px}.publish-board-list{max-height:min(120px,22vh)}.publish-board-modal-footer{flex-direction:column-reverse;padding:12px}.publish-board-modal-footer .ui-btn{width:100%}}.publishable-content-container{position:relative;width:100%}.publishable-content-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:8px}.publishable-content-header-with-explanation{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;flex-direction:column}.publishable-explanation{flex:1;margin:0;padding:12px;background-color:#f8f9fa;border-left:3px solid var(--color-brand-vivid);border-radius:4px;font-size:13px;color:var(--color-text-icon);line-height:1.5}.publishable-error{border-left-color:var(--color-danger, #dc2626);color:var(--color-danger, #dc2626);background-color:var(--color-danger-bg, #fef2f2)}.publishable-content-header-with-explanation .publish-action-inline{flex-shrink:0;margin-left:auto}.publishable-content-body{width:100%;min-width:0;overflow:hidden}.publish-action-inline{display:inline-flex;align-items:center}.publish-action-container{position:absolute;top:8px;right:8px;z-index:10}.publish-button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--gradient-publish-vivid);color:var(--color-white);border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px var(--color-vivid-alpha-30);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.publish-button:hover{background:var(--gradient-publish-vivid-hover);box-shadow:0 4px 8px var(--color-vivid-alpha-30);transform:translateY(-1px)}.publish-button:active{transform:translateY(0);box-shadow:0 2px 4px var(--color-vivid-alpha-20)}.publish-button svg{flex-shrink:0}.publish-title-input-container{display:flex;flex-direction:column;gap:8px;min-width:280px;background:var(--color-white);padding:12px;border-radius:8px;box-shadow:0 4px 12px var(--color-black-alpha-15)}.publish-title-input{width:100%;padding:10px 12px;border:2px solid var(--color-brand-vivid);border-radius:8px;font-size:14px;outline:none;transition:border-color .2s ease}.publish-title-input:focus{border-color:var(--color-brand-vivid-mid);box-shadow:0 0 0 3px var(--color-vivid-alpha-10)}.publish-title-input::placeholder{color:var(--color-text-tertiary)}.publish-title-actions{display:flex;gap:8px;justify-content:flex-end}.publish-title-save-btn{padding:8px 16px;background:var(--gradient-publish-vivid);color:var(--color-white);border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.publish-title-save-btn:hover:not(:disabled){background:var(--gradient-publish-vivid-hover);transform:translateY(-1px)}.publish-title-save-btn:disabled{opacity:.5;cursor:not-allowed}.publish-title-cancel-btn{padding:8px 16px;background:var(--color-bg-subtle);color:var(--color-text-placeholder);border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.publish-title-cancel-btn:hover{background:var(--color-border-default)}.published-indicator{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#ecfdf5;color:var(--color-text-success-bright);border-radius:6px;font-size:11px;font-weight:500;box-shadow:0 2px 4px var(--color-text-success-bright) 33}.published-indicator svg{flex-shrink:0;stroke:var(--color-text-success-bright)}@media(max-width:768px){.publish-button{width:100%;justify-content:center}.publish-title-actions{flex-direction:column}.publish-title-save-btn,.publish-title-cancel-btn{width:100%}}.chart-error-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:2000}.chart-error-dialog{background:var(--color-white);border-radius:12px;box-shadow:0 8px 32px #0000002e;width:420px;max-width:90vw;padding:24px;display:flex;flex-direction:column;gap:16px}.chart-error-dialog-header{display:flex;align-items:center;gap:10px}.chart-error-dialog-icon{display:flex;align-items:center;color:var(--color-status-error, #e53e3e);flex-shrink:0}.chart-error-dialog-title{flex:1;font-size:16px;font-weight:600;color:var(--color-text-secondary)}.chart-error-dialog-close{background:none;border:none;cursor:pointer;font-size:20px;color:var(--color-text-icon);padding:0 4px;line-height:1;border-radius:4px;transition:background .15s}.chart-error-dialog-close:hover{background:var(--color-bg-subtle);color:var(--color-text-secondary)}.chart-error-dialog-body{font-size:13px;color:var(--color-text-secondary);line-height:1.6;white-space:pre-wrap;background:var(--color-bg-muted, #fafafa);border:1px solid var(--color-border-default);border-radius:6px;padding:12px 14px;margin:0}.chart-error-dialog-footer{display:flex;justify-content:flex-end}.metrics-explorer-kpi-card{background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.75rem;min-height:150px;transition:box-shadow .2s,border-color .2s}.mekc-flip-container{perspective:1000px;min-height:150px;height:100%;border-radius:8px;background:var(--color-white);border:1px solid var(--color-border-primary);overflow:hidden;transition:box-shadow .2s ease,border-color .2s ease}.mekc-flip-inner{position:relative;width:100%;min-height:150px;height:100%;transition:transform .5s ease;transform-style:preserve-3d;border-radius:8px}.mekc-flip-inner.is-flipped{transform:rotateY(180deg)}.mekc-face{backface-visibility:hidden;-webkit-backface-visibility:hidden;box-sizing:border-box}.mekc-face.metrics-explorer-kpi-card{border:none;border-radius:0;box-shadow:none}.mekc-face.metrics-explorer-kpi-card:hover{border:none;box-shadow:none}.mekc-front{position:relative;z-index:2;width:100%;min-height:100%;height:100%;transform:translateZ(1px)}.mekc-back{position:absolute;inset:0;width:100%;height:100%;min-height:0;transform:rotateY(180deg) translateZ(1px);z-index:1;overflow:hidden;padding:.5rem;gap:.35rem;display:flex;flex-direction:column}.mekc-face.metrics-explorer-kpi-card.mekc-back{min-height:0;padding:.5rem;gap:.35rem}.mekc-back-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:.25rem}.mekc-back-scroll::-webkit-scrollbar{width:4px}.mekc-back-scroll::-webkit-scrollbar-track{background:transparent}.mekc-back-scroll::-webkit-scrollbar-thumb{background:var(--color-border-primary);border-radius:4px}.mekc-back-header{display:flex;align-items:center;justify-content:space-between;gap:.35rem;flex-shrink:0}.mekc-back-title{margin:0;font-size:12px;font-weight:700;color:var(--color-text-primary);line-height:1.2}.mekc-back-close{border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.mekc-back-close svg{width:16px;height:16px}.mekc-back-close:hover{color:var(--color-text-primary)}.mekc-formula-box,.mekc-values-box{border:1px solid var(--color-border-primary);border-radius:6px;padding:4px 6px;font-size:11px;line-height:1.35;color:var(--color-text-primary)}.mekc-formula-box{background:var(--color-white);font-weight:500;flex-shrink:0;word-break:break-word}.mekc-values-box{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.2rem;border-color:var(--color-brand-primary-alpha-20);background:var(--color-brand-primary-alpha-05);flex-shrink:0}.mekc-value-line{display:block;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;line-height:1.4}.mekc-value-label{color:var(--color-text-primary);font-weight:400;font-size:12px;margin-right:.35rem}.mekc-value-highlight{color:var(--color-brand-primary);font-weight:400;font-size:12px}.mekc-back-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:auto;padding-top:.45rem;min-height:2.75rem;border-top:1px solid var(--color-border-primary);flex-shrink:0}.mekc-back-metric-name{font-size:14px;font-weight:400;color:var(--color-text-icon);line-height:1.2}.mekc-back-metric-value{font-size:22px;font-weight:700;color:var(--color-brand-accent);line-height:1;flex-shrink:0}.mekc-flip-container:hover{border-color:var(--color-border-primary);box-shadow:0 2px 8px var(--color-black-alpha-10)}.mekc-flip-container:hover .mekc-front{box-shadow:none;border:none}.metrics-explorer-kpi-card:not(.mekc-face):hover{box-shadow:0 2px 8px var(--color-black-alpha-10)}.mekc-top-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.mekc-icon-wrap{width:36px;height:36px;border-radius:6px;background:var(--color-bg-brand-subtle);color:var(--color-brand-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.mekc-top-actions{display:flex;align-items:center;gap:.5rem}.mekc-ai-badge{width:28px;height:28px;border-radius:6px;background:#3b82f61f;color:var(--color-accent-blue, #2563eb);display:inline-flex;align-items:center;justify-content:center}.mekc-view-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border:1px solid var(--color-brand-accent);border-radius:6px;background:transparent;color:var(--color-brand-accent);font-size:12px;font-weight:500;cursor:pointer;line-height:1}.mekc-view-btn:hover{background:var(--color-bg-brand-subtle)}.mekc-body{flex:1}.mekc-title{margin:0;font-size:14px;font-weight:600;color:var(--color-text-primary);line-height:1.3}.mekc-subtitle{margin:.25rem 0 0;font-size:12px;color:var(--color-text-icon);line-height:1.4}.mekc-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem;margin-top:auto}.mekc-value{font-size:32px;font-weight:600;color:var(--color-text-primary);line-height:1}.mekc-footer-right{display:flex;align-items:center;gap:.5rem;margin-left:auto}.mekc-trend{display:inline-flex;align-items:center;gap:.15rem;padding:.2rem .55rem;border-radius:999px;font-size:12px;font-weight:500;background:var(--color-bg-brand-subtle);color:var(--color-brand-accent)}.mekc-trend.trend-down{background:var(--color-bg-brand-subtle);color:var(--color-brand-accent)}.mekc-delete-btn{width:32px;height:32px;border:1px solid var(--color-border-primary);border-radius:6px;background:var(--color-white);color:var(--color-text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.mekc-delete-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-error, #dc2626)}.mekc-publish-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .75rem;border:none;border-radius:6px;background:var(--color-brand-accent);color:var(--color-white);font-size:12px;font-weight:500;cursor:pointer}.mekc-publish-btn:hover:not(:disabled){opacity:.92}.mekc-publish-btn:disabled{opacity:.6;cursor:not-allowed}.mekc-published-label{display:inline-flex;align-items:center;gap:.35rem;font-size:12px;color:var(--color-text-success, #16a34a);font-weight:500}.mekc-publish-error{display:inline-flex;align-items:center;font-size:11px;color:#d97706;margin-left:8px}.publishable-metrics-kpi{margin:.75rem 0 1rem}.cot-collapsible-container{margin:8px 0 16px;border-radius:8px;border:1px solid var(--color-border-default);background:var(--color-bg-neutral-soft);overflow:hidden}.cot-collapse-header{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;background:var(--gradient-purple-subtle);border:none;cursor:pointer;font-family:inherit;transition:background .2s ease}.cot-collapse-header:hover{background:var(--gradient-violet-wash-hover)}.cot-collapse-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;color:var(--color-brand-vivid);transition:transform .2s ease}.cot-collapse-title{font-size:13px;font-weight:600;color:var(--color-text-violet-deep);letter-spacing:.3px}.cot-collapse-count{margin-left:auto;font-size:11px;font-weight:500;color:var(--color-text-violet);background:var(--color-brand-core-100);padding:2px 8px;border-radius:10px}.cot-thoughts-expanded{border-top:1px solid var(--color-border-default);padding:12px;background:var(--color-white);max-height:300px;overflow-y:auto;overflow-x:hidden;word-wrap:break-word;overflow-wrap:break-word}.cot-thoughts-expanded .cot-thought-item{margin-bottom:8px;padding:10px 12px}.cot-thoughts-expanded .cot-thought-item:last-child{margin-bottom:0}.cot-step{margin-bottom:12px;padding:12px;border-left:3px solid var(--color-border-default);background:var(--color-bg-muted);border-radius:6px;transition:all .2s}.cot-step:last-child{margin-bottom:0}.cot-step.status-success{border-left-color:var(--color-text-positive);background:var(--color-bg-success-wash)}.cot-step.status-error{border-left-color:var(--color-badge);background:var(--color-danger-bg)}.cot-step.status-running{border-left-color:var(--color-text-warning-amber);background:var(--color-bg-warning)}.cot-step-header{display:flex;align-items:flex-start;gap:10px}.cot-status-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:11px;font-weight:600;background:var(--color-border-default);color:var(--color-text-placeholder)}.cot-status-icon.status-success{background:var(--color-text-positive);color:var(--color-white)}.cot-status-icon.status-error{background:var(--color-badge);color:var(--color-white)}.cot-status-icon.status-running{background:var(--color-text-warning-amber);color:var(--color-white);animation:rotate 1s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cot-step-info{flex:1}.cot-step-name{font-size:13px;font-weight:600;color:var(--color-text-secondary);margin-bottom:4px;display:none}.cot-step-description{font-size:12px;color:var(--color-text-placeholder);line-height:1.5}.cot-step-skipped{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px;background:var(--color-bg-subtle);border-radius:4px;font-size:12px;color:var(--color-text-placeholder)}.skip-icon{font-size:14px}.cot-step-result{margin-top:8px;padding:8px;background:var(--color-white-alpha-70);border-radius:4px;font-size:12px}.result-summary{color:var(--color-text-success-bright);font-weight:500}.result-tool{color:var(--color-text-placeholder);font-style:italic}.cot-step-timestamp{font-size:10px;color:var(--color-text-tertiary);text-align:right}.cot-message-step{background:var(--gradient-violet-faint-horizontal);border-left:3px solid #B63AFF}.cot-message-step:hover{background:var(--gradient-vivid-faint-horizontal)}.cot-message-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--gradient-indigo-purple);padding:3px;flex-shrink:0}.cot-message-icon img{width:14px!important;height:14px!important;border-radius:50%}.cot-step-message{font-size:13px;color:var(--color-text-secondary);margin-top:2px;font-weight:400;line-height:1.5}.cot-thoughts-stream{margin:8px 0;padding:0;scrollbar-width:thin;scrollbar-color:var(--color-chrome-mid) var(--color-bg-slate-100)}.cot-thought-item{margin-bottom:12px;padding:12px 16px;background:var(--color-white);border-radius:8px;border:1px solid var(--color-border-default);transition:all .3s ease;position:relative;overflow:hidden;word-wrap:break-word;overflow-wrap:break-word}.cot-thought-item.highlighted{background:var(--gradient-vivid-faint-diagonal);border-color:var(--color-brand-vivid);box-shadow:0 2px 8px var(--color-vivid-alpha-15);animation:highlightPulse .6s ease-out}@keyframes highlightPulse{0%{transform:scale(1);box-shadow:0 2px 8px var(--color-vivid-alpha-15)}50%{transform:scale(1.02);box-shadow:0 4px 16px var(--color-vivid-alpha-25)}to{transform:scale(1);box-shadow:0 2px 8px var(--color-vivid-alpha-15)}}.cot-thought-item.llm_statement{border-left:3px solid var(--color-brand-vivid)}.cot-thought-item.task_name{border-left:3px solid var(--color-text-positive)}.cot-thought-item.task_description{border-left:3px solid var(--color-text-warning-amber)}.cot-thought-item.task_skipped{border-left:3px solid var(--color-text-placeholder);background:var(--color-bg-muted)}.thought-content{font-size:13px;line-height:1.6;color:var(--color-text-nav-hover);word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.thought-content p{margin:0 0 8px}.thought-content p:last-child{margin-bottom:0}.thought-content h1,.thought-content h2,.thought-content h3,.thought-content h4,.thought-content h5,.thought-content h6{margin:12px 0 6px;color:var(--color-text-secondary);font-size:14px;font-weight:600}.thought-content h1:first-child,.thought-content h2:first-child,.thought-content h3:first-child,.thought-content h4:first-child,.thought-content h5:first-child,.thought-content h6:first-child{margin-top:0}.thought-content ul,.thought-content ol{margin:6px 0;padding-left:16px}.thought-content li{margin:2px 0;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.thought-content code{background:var(--color-bg-subtle);padding:2px 4px;border-radius:3px;font-size:12px;color:var(--color-text-secondary);font-family:Courier New,monospace;word-wrap:break-word;overflow-wrap:break-word;word-break:break-all}.thought-content pre{background:var(--color-bg-subtle);padding:8px;border-radius:4px;overflow-x:auto;margin:8px 0;font-size:12px}.thought-content pre code{background:none;padding:0}.thought-content blockquote{border-left:2px solid var(--color-brand-vivid);padding-left:8px;margin:8px 0;color:var(--color-text-placeholder);font-style:italic}.thought-content strong{font-weight:600;color:var(--color-text-secondary)}.thought-content em{font-style:italic;color:var(--color-text-placeholder)}.thinking-indicator{display:flex;align-items:center;justify-content:flex-start;margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border-default)}.thinking-dots{display:flex;gap:4px;align-items:center}.thinking-dots .dot{width:4px;height:4px;border-radius:50%;background-color:var(--color-brand-vivid);animation:thinkingPulse 1.4s infinite ease-in-out;display:inline-block}.thinking-dots .dot:nth-child(2){animation-delay:.16s}.thinking-dots .dot:nth-child(3){animation-delay:.32s}@keyframes thinkingPulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.cot-thoughts-stream::-webkit-scrollbar{width:6px}.cot-thoughts-stream::-webkit-scrollbar-track{background:var(--color-bg-neutral-mid-alt);border-radius:3px}.cot-thoughts-stream::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.cot-thoughts-stream::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media(max-width:768px){.cot-header{padding:10px 12px}.cot-content{padding:8px 12px 12px}.cot-step{padding:10px}.cot-title{font-size:12px}.cot-count{font-size:10px}.cot-thinking-collage{padding:12px}.thinking-markdown{font-size:12px}}.raw-response-container{margin:12px 0;border:1px solid var(--color-border-default);border-radius:8px;background:var(--color-bg-neutral-soft);overflow:hidden;transition:all .3s ease}.raw-response-header{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.raw-response-header:hover{background-color:var(--color-black-alpha-03)}.raw-response-toggle{font-size:10px;color:var(--color-text-placeholder);transition:transform .2s;display:inline-block;width:12px}.raw-response-toggle.expanded{transform:rotate(90deg)}.raw-response-toggle.collapsed{transform:rotate(0)}.raw-response-title{font-size:12px;font-weight:600;color:var(--color-text-placeholder)}.raw-response-content{border-top:1px solid var(--color-border-default);background:var(--color-white)}.raw-response-actions{padding:8px 12px;background:var(--color-bg-muted);border-bottom:1px solid var(--color-border-default);display:flex;justify-content:flex-end}.raw-response-copy-btn{font-size:11px;padding:4px 10px;background:var(--color-white);border:1px solid var(--color-border-dotted);border-radius:4px;color:var(--color-text-body-secondary);cursor:pointer;transition:all .2s;font-weight:500}.raw-response-copy-btn:hover{background:var(--color-bg-subtle);border-color:var(--color-text-tertiary)}.raw-response-copy-btn:active{transform:scale(.98)}.raw-response-json{margin:0;padding:16px;background-color:#1e1e1e;color:var(--color-text-code);font-family:Consolas,Monaco,Courier New,monospace;font-size:11px;line-height:1.6;overflow-x:auto;max-height:500px;overflow-y:auto}.raw-response-json code{font-family:inherit;color:inherit}.raw-response-json::-webkit-scrollbar{width:8px;height:8px}.raw-response-json::-webkit-scrollbar-track{background:var(--color-scrollbar-dark-track)}.raw-response-json::-webkit-scrollbar-thumb{background:var(--color-scrollbar-dark-thumb);border-radius:4px}.raw-response-json::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-dark-thumb-hover)}@media(max-width:768px){.raw-response-header{padding:8px 12px}.raw-response-title{font-size:11px}.raw-response-badge{font-size:9px}.raw-response-json{font-size:10px;padding:12px;max-height:300px}}.clarification-choices{display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.45;color:var(--color-text-dark-alt)}.clarification-choices .markdown-content{font-size:13px;line-height:1.45}.clarification-choices .markdown-content p{margin:0 0 8px}.clarification-choices .markdown-content p:last-child{margin-bottom:0}.clarification-options{display:flex;flex-direction:column;gap:6px}.clarification-option{display:flex;align-items:flex-start;gap:8px;padding:6px 8px;border:1px solid var(--color-bg-subtle);border-radius:8px;cursor:pointer;background:var(--color-white)}.clarification-option:hover:not(.disabled){border-color:var(--color-brand-primary)}.clarification-option.selected{border-color:var(--color-brand-primary);background:var(--color-bg-subtle)}.clarification-option.disabled{cursor:default;opacity:.7}.clarification-option input[type=radio]{margin-top:3px;accent-color:var(--color-brand-primary)}.clarification-option-text{display:flex;flex-direction:column;gap:2px;min-width:0}.clarification-option-title{font-size:13px;font-weight:600;color:var(--color-text-secondary);overflow-wrap:anywhere}.clarification-option-wbs{font-size:11px;color:var(--color-text-placeholder);overflow-wrap:anywhere}.clarification-custom{width:100%;box-sizing:border-box;resize:vertical;padding:6px 8px;border:1px solid var(--color-bg-subtle);border-radius:8px;font-size:13px;line-height:1.45;font-family:inherit;color:var(--color-text-secondary)}.clarification-custom:focus{outline:2px solid var(--color-brand-primary);outline-offset:0}.clarification-custom:disabled{opacity:.7}.clarification-continue{align-self:flex-end;padding:5px 14px;border:none;border-radius:8px;background:var(--color-brand-primary);color:var(--color-white);font-size:13px;font-family:inherit;font-weight:600;cursor:pointer}.clarification-continue:disabled{opacity:.5;cursor:not-allowed}.wif-response-card{border:1px solid var(--color-border-primary);display:flex;padding:10px;flex-direction:column;width:100%;background:transparent;border-radius:12px;overflow:hidden;font-family:Arial,sans-serif}.wif-response-card button{font-family:inherit}.wif-response-section{display:flex;flex-direction:column;gap:10px;padding:14px 0;border-bottom:1px solid var(--color-border-primary, #cfcfcf)}.wif-response-section:first-child{padding-top:4px}.wif-response-section:last-child{border-bottom:none;padding-bottom:0}.wif-response-section-title{margin:0;font-family:Arial,sans-serif;font-style:normal;font-weight:600;font-size:11px;line-height:140%;letter-spacing:.04em;text-transform:uppercase;color:var(--color-brand-primary, #a100ff)}.wif-response-text{margin:0;font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:13px;line-height:150%;color:#111827}.wif-response-text-accent{color:#c2410c;font-weight:500}.wif-response-kv{margin:0;display:flex;flex-direction:column;gap:8px}.wif-response-kv-row{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:12px}.wif-response-kv-row dt{margin:0;font-family:Arial,sans-serif;font-weight:400;font-size:13px;line-height:140%;color:#6b7280}.wif-response-kv-row dd{margin:0;font-family:Arial,sans-serif;font-weight:500;font-size:13px;line-height:140%;color:#111827;text-align:right}.wif-response-impact-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.wif-response-impact-row{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:12px}.wif-response-impact-name{font-family:Arial,sans-serif;font-weight:400;font-size:13px;line-height:140%;color:#111827}.wif-response-impact-delay{font-family:Arial,sans-serif;font-weight:500;font-size:13px;line-height:140%;color:#c2410c;white-space:nowrap}.wif-response-actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;padding-top:14px;margin-top:4px}.wif-response-action-btn{padding:8px 14px;border-radius:8px;font-family:Arial,sans-serif;font-size:13px;font-weight:600;line-height:140%;cursor:pointer;transition:opacity .2s ease,background .2s ease}.wif-response-action-btn-primary{background:var(--color-brand-primary, #a100ff);color:var(--color-white, #ffffff);border:none}.wif-response-action-btn-primary:hover{opacity:.92}.wif-response-action-btn-secondary{background:var(--color-white, #ffffff);color:#111827;border:1px solid var(--color-border-primary, #cfcfcf)}.wif-response-action-btn-secondary:hover{background:#f9fafb}.wif-response-published-indicator{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;background:#ecfdf5;color:var(--color-text-success-bright);font-family:Arial,sans-serif;font-size:13px;font-weight:600;line-height:140%}.wif-response-published-indicator svg{flex-shrink:0}.name-wif-modal.modal-content,.name-wif-modal .modal-content{max-width:420px;width:100%;max-height:min(88vh,520px)}.name-wif-modal{font-family:Arial,sans-serif}.name-wif-modal button,.name-wif-modal input,.name-wif-modal select,.name-wif-modal textarea{font-family:inherit}.name-wif-modal .modal-header{padding:12px 16px}.name-wif-modal .modal-icon{width:36px;height:36px;border-radius:8px}.name-wif-modal .modal-icon img,.name-wif-header-icon{width:36px;height:36px;object-fit:contain;display:block}.name-wif-modal .modal-title{font-size:24px;margin-bottom:2px}.name-wif-modal .modal-subtitle{font-size:14px;line-height:1.35}.name-wif-modal .modal-body{padding:0;display:flex;flex-direction:column;min-height:0;overflow:hidden;background-color:#fff}.name-wif-modal-body{display:flex;flex-direction:column;padding:12px 16px;overflow-y:auto;flex:1;min-height:0;background-color:var(--color-white)}.name-wif-section{display:flex;flex-direction:column;flex-shrink:0}.name-wif-section-title{margin:0 0 8px;font-size:18px;font-weight:400;color:var(--color-text-primary)}.name-wif-divider{height:1px;background:var(--color-border-default);margin:12px 0;flex-shrink:0}.name-wif-analysis-input .ui-field__label{font-size:14px;font-weight:400}.name-wif-helper{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin:6px 0 0;font-size:12px;line-height:1.35;color:#837f89}.name-wif-helper-counter-only{justify-content:flex-end}.name-wif-helper-inline{justify-content:flex-start;gap:5px}.name-wif-counter{flex-shrink:0;font-variant-numeric:tabular-nums;color:#837f89}.name-wif-helper svg{flex-shrink:0;margin-top:1px;color:#837f89}.name-wif-error{margin:10px 0 0;font-size:13px;line-height:1.4;color:var(--color-text-error, #dc2626)}.name-wif-publish-options{display:flex;flex-direction:column;gap:8px}.name-wif-option-card{border:1.5px solid var(--color-border-primary);border-radius:10px;padding:12px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease;flex-shrink:0}.name-wif-option-card:hover{border-color:var(--color-brand-primary)}.name-wif-option-card-selected{border-color:var(--color-brand-primary);box-shadow:0 0 0 1px var(--color-brand-primary);background-color:#faf2ff}.name-wif-option-header{display:flex;align-items:center;gap:10px;width:100%;padding:0;border:none;background:transparent;cursor:pointer;text-align:left}.name-wif-option-header:disabled{cursor:not-allowed;opacity:.7}.name-wif-option-icon{width:32px;height:32px;border-radius:8px;background:var(--color-bg-brand-subtle);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-brand-primary)}.name-wif-option-icon-plus{color:var(--color-text-icon)}.name-wif-option-text{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.name-wif-option-title{font-size:14px;font-weight:400;color:var(--color-text-primary)}.name-wif-option-subtitle{font-size:12px;color:var(--color-text-icon)}.name-wif-radio{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer}.name-wif-radio-mark{width:18px;height:18px;border:2px solid var(--color-border-default);border-radius:50%;display:inline-block;transition:border-color .2s ease,background .2s ease}.name-wif-radio-end{margin-left:auto}.name-wif-radio-mark-selected{border-color:var(--color-brand-primary);background:radial-gradient(circle,var(--color-brand-primary) 0 35%,transparent 36%)}.name-wif-radio-mark-solid.name-wif-radio-mark-selected{background-color:var(--color-brand-primary);background-image:radial-gradient(circle,white 0 35%,transparent 36%)}.name-wif-theme-list{margin-top:10px;padding-top:8px;border-top:1px solid var(--color-border-default);display:flex;flex-direction:column;gap:7px;max-height:min(166px,28vh);overflow-y:auto;overscroll-behavior:contain}.name-wif-theme-item{display:flex;align-items:center;justify-content:flex-start;gap:9px;width:100%;padding:8px 4px;border:none;background:#fff;border-radius:6px;cursor:pointer;text-align:left;transition:background .15s ease}.name-wif-theme-item:hover:not(:disabled){background:var(--color-bg-subtle)}.name-wif-theme-item:disabled{cursor:not-allowed;opacity:.7}.name-wif-theme-name{font-size:14px;font-weight:400;color:var(--color-text-primary)}.name-wif-new-theme-fields{margin-top:10px;padding-top:8px;border-top:1px solid var(--color-border-default)}.name-wif-modal-footer{display:flex;background-color:var(--color-white);gap:12px;padding:12px 16px;flex-shrink:0}.name-wif-modal-footer .ui-btn{flex:1;padding:9px 16px;font-size:15px}.name-wif-modal-footer .ui-btn--secondary{color:var(--color-brand-purple-dark);border-color:var(--color-brand-purple-dark)}.name-wif-modal-footer .ui-btn--primary{background:var(--color-brand-purple-dark);border:1.5px solid var(--color-brand-purple-dark)}@media(max-width:768px){.name-wif-modal.modal-content,.name-wif-modal .modal-content{max-width:calc(100vw - 2rem);max-height:92vh}.name-wif-modal-body{padding:10px 12px}.name-wif-theme-list{max-height:min(120px,22vh)}.name-wif-modal-footer{flex-direction:column-reverse;padding:12px}.name-wif-modal-footer .ui-btn{width:100%}}.ai-assistant{min-width:367px;height:calc(100vh - 60px - var(--maintenance-banner-height, 0px));background:var(--color-white);border:1px solid var(--color-brand-primary-alpha-20);display:flex;flex-direction:column;position:fixed;right:0;top:calc(60px + var(--maintenance-banner-height, 0px));z-index:100;overflow:visible;box-shadow:-2px 0 8px var(--color-black-alpha-05);animation:slideIn .3s ease-out;box-sizing:border-box;margin:0;padding:0;transition:width .1s ease-out}@media(min-width:600px){.ai-assistant{max-width:48vw}}.ai-assistant-resize-handle{position:absolute;left:0;top:0;width:6px;height:100%;background:transparent;cursor:ew-resize;z-index:101;transition:background .2s;border-left:2px solid transparent}.ai-assistant-resize-handle:hover{background:var(--color-brand-alpha-15);border-left:2px solid var(--color-brand-alpha-50)}.ai-assistant-resize-handle:focus-visible{background:var(--color-brand-alpha-15);border-left-color:var(--color-brand-primary);outline:2px solid var(--color-brand-primary);outline-offset:1px}.ai-assistant-resize-handle:active{background:var(--color-brand-primary-alpha-25);border-left:2px solid var(--color-brand-primary)}.markdown-content{font-size:14px;line-height:1.6;color:var(--color-text-nav-hover)}.markdown-content p{margin:0 0 12px}.markdown-content p:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:16px 0 8px;color:var(--color-text-secondary);font-weight:600}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child,.markdown-content h4:first-child,.markdown-content h5:first-child,.markdown-content h6:first-child{margin-top:0}.markdown-content ul,.markdown-content ol{margin:8px 0;padding-left:20px}.markdown-content li{margin:4px 0}.markdown-content code{background:var(--color-bg-subtle);padding:2px 4px;border-radius:3px;font-size:13px;color:var(--color-text-secondary);font-family:Courier New,monospace}.markdown-content pre{background:var(--color-bg-subtle);padding:12px;border-radius:6px;overflow-x:auto;margin:12px 0}.markdown-content pre code{background:none;padding:0;font-size:13px}.markdown-content blockquote{border-left:3px solid var(--color-brand-vivid);padding-left:12px;margin:12px 0;color:var(--color-text-placeholder);font-style:italic}.markdown-content strong{font-weight:600;color:var(--color-text-secondary)}.markdown-content em{font-style:italic;color:var(--color-text-placeholder)}.markdown-content a{color:var(--color-brand-vivid);text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content table{border-collapse:collapse;width:100%;margin:12px 0}.markdown-content th,.markdown-content td{border:1px solid var(--color-border-default);padding:8px 12px;text-align:left}.markdown-content th{background:var(--color-bg-muted);font-weight:600}.markdown-content hr{border:none;border-top:1px solid var(--color-border-default);margin:16px 0}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.ai-assistant-header{display:flex;flex-direction:row;border-bottom:1px solid var(--color-border-primary);background:var(--color-white);padding:0;flex-shrink:0;align-items:stretch;position:relative}.ai-assistant-title{display:flex;align-items:center;gap:.75rem;font-weight:600;color:var(--color-text-secondary);font-size:14px}.ct-ai-logo{display:flex;align-items:center;justify-content:center}.ct-ai-logo-img{width:32px;height:32px;flex-shrink:0}.ai-assistant-title-text{display:flex;flex-direction:column;gap:0}.ai-title-main{font-size:16px;font-weight:600;background:var(--gradient-brand-to-blue);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.ai-title-context{font-size:11px;font-weight:400;color:var(--color-text-icon);line-height:1.2}.ai-assistant-actions{display:flex;gap:.5rem;align-items:center}.more-options-container{position:relative}.past-chats-dropdown{position:absolute;top:100%;right:0;width:280px;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 4px 12px var(--color-black-alpha-15);z-index:1000;margin-top:.5rem;overflow:hidden}.past-chats-dropdown-header{padding:.75rem 1rem;font-size:12px;font-weight:600;color:var(--color-text-nav-hover);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border-default);background:var(--color-bg-muted)}.past-chats-dropdown-list{max-height:300px;overflow-y:auto}.past-chat-dropdown-item{padding:.75rem 1rem;cursor:pointer;transition:background .2s;border-bottom:1px solid var(--color-bg-subtle)}.past-chat-dropdown-item:last-child{border-bottom:none}.past-chat-dropdown-item:hover{background:var(--color-bg-muted)}.past-chat-dropdown-title{font-size:13px;font-weight:600;color:var(--color-text-secondary);margin-bottom:.25rem}.past-chat-dropdown-preview{font-size:12px;color:var(--color-text-icon);margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.past-chat-dropdown-time{font-size:11px;color:var(--color-text-tertiary)}.past-chats-dropdown-empty{padding:1.5rem 1rem;text-align:center;color:var(--color-text-icon);font-size:13px}.icon-btn{background:none;border:none;cursor:pointer;color:var(--color-text-icon);padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.icon-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-nav-hover)}.edit-chat-btn{padding:.375rem;border-radius:4px;pointer-events:auto;z-index:10;position:relative;color:var(--color-text-icon)}.edit-chat-btn:hover{background:var(--color-bg-subtle)!important;color:var(--color-text-nav-hover)}.ai-tabs-row{display:flex;align-items:center;padding:4px 6px;gap:2px;min-height:38px;overflow:hidden;position:relative;flex:1}.ai-tabs-scroll{display:flex;align-items:center;gap:2px;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.ai-tabs-scroll::-webkit-scrollbar{display:none}.ai-tab{display:flex;align-items:center;gap:5px;padding:4px 8px;border-radius:6px 6px 0 0;font-size:12px;color:var(--color-text-icon);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;flex-shrink:0;max-width:160px;transition:background .15s,color .15s;border:1px solid transparent;border-bottom:none}.ai-tab:hover{background:var(--color-bg-subtle);color:var(--color-text-secondary)}.ai-tab.active{background:var(--color-white);color:var(--color-text-secondary);border-color:var(--color-border-primary);border-bottom:2px solid var(--color-brand-primary);font-weight:500}.ai-tab-icon{flex-shrink:0;opacity:.6}.ai-tab.active .ai-tab-icon{opacity:1;color:var(--color-brand-primary)}.ai-tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100px;flex:1}.ai-tab-running{width:6px;height:6px;border-radius:50%;background:var(--color-brand-primary);flex-shrink:0;animation:ai-tab-running-pulse 1.2s ease-in-out infinite}@keyframes ai-tab-running-pulse{0%,to{opacity:.35}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.ai-tab-running{animation:none}}.ai-unread-dot{width:7px;height:7px;border-radius:50%;background:var(--color-brand-primary);flex-shrink:0}.ai-tab-rename-input{flex:1;max-width:100px;border:none;outline:none;background:transparent;font-size:12px;font-family:inherit;color:var(--color-text-secondary);padding:0;min-width:0}.ai-tab-close{background:none;border:none;cursor:pointer;color:var(--color-text-tertiary);font-size:14px;line-height:1;padding:0 1px;border-radius:3px;display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:0;transition:opacity .15s,background .15s,color .15s}.ai-tab:hover .ai-tab-close,.ai-tab.active .ai-tab-close{opacity:1}.ai-tab-close:hover{background:var(--color-bg-muted);color:var(--color-text-secondary)}.ai-tabs-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.ai-more-menu{position:absolute;top:calc(100% + 2px);right:0;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 4px 16px var(--color-black-alpha-15);z-index:1100;min-width:160px;padding:4px 0;overflow:hidden}.ai-header-dropdown{position:absolute;top:100%;z-index:1100}.ai-header-dropdown--more{right:0}.ai-header-dropdown--history{right:32px}.ai-more-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 14px;background:none;border:none;cursor:pointer;font-size:13px;color:var(--color-text-secondary);text-align:left;transition:background .15s}.ai-more-menu-item:hover{background:var(--color-bg-subtle)}.ai-more-menu-item-danger{color:var(--color-status-error)}.ai-more-menu-item-danger:hover{background:#fff1f0}.ai-history-dropdown{width:270px;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 4px 16px var(--color-black-alpha-15);overflow:hidden}.ai-history-search-wrap{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--color-border-default);color:var(--color-text-icon)}.ai-history-search{flex:1;border:none;outline:none;font-size:13px;color:var(--color-text-secondary);background:transparent}.ai-history-search::placeholder{color:var(--color-text-tertiary)}.ai-history-list{max-height:280px;overflow-y:auto}.ai-history-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;background:none;border:none;cursor:pointer;text-align:left;transition:background .15s;gap:8px}.ai-history-item:hover{background:var(--color-bg-subtle)}.ai-history-item.active{background:var(--color-bg-brand-subtle)}.ai-history-item-title{font-size:13px;color:var(--color-text-secondary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.ai-history-item-time{font-size:11px;color:var(--color-text-tertiary);flex-shrink:0}.ai-history-empty{padding:16px 12px;font-size:13px;color:var(--color-text-icon);text-align:center}.ai-assistant-context{padding:.5rem 1rem;border-bottom:1px solid var(--color-border-default);background:var(--color-bg-muted)}.context-label{display:flex;align-items:center;gap:.5rem;font-size:11px;color:var(--color-text-icon);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.125rem;font-weight:600}.context-legend-circle{width:8px;height:8px;border-radius:50%;background-color:var(--color-brand-primary);opacity:.82;flex-shrink:0}.context-value{background:var(--color-brand-primary-alpha-10)!important;color:var(--color-brand-primary)!important;font-size:10px;width:fit-content;border-radius:16px;padding:2px 8px;font-weight:400}.ai-assistant-messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1rem;scrollbar-width:thin;scrollbar-color:var(--color-chrome-mid) var(--color-bg-slate-100);background:var(--gradient-brand-faint-horizontal);border-bottom:none;min-height:0}.ai-assistant-messages::-webkit-scrollbar{width:8px}.ai-assistant-messages::-webkit-scrollbar-track{background:var(--color-bg-slate-100);border-radius:10px}.ai-assistant-messages::-webkit-scrollbar-thumb{background:var(--color-brand-primary-alpha-25);border-radius:10px;border:2px solid var(--color-bg-slate-100)}.ai-assistant-messages::-webkit-scrollbar-thumb:hover{background:var(--color-brand-primary-alpha-44)}.ai-assistant-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;text-align:center}.ai-empty-logo-container{margin-bottom:1rem}.ai-empty-logo{width:70px;height:70px;margin:0 auto;display:block}.ai-empty-title{color:var(--color-text-primary);font-size:22px;font-weight:600;margin:0 0 .5rem;letter-spacing:-.5px}.ai-empty-description{font-size:14px;color:var(--color-text-dark-alt);margin:0;line-height:1.6;max-width:400px}.message{display:flex;gap:.75rem;align-items:flex-start}.message.assistant{flex-direction:row}.message.user{flex-direction:row-reverse}.message-avatar{width:24px;height:24px;display:flex;align-items:flex-start;justify-content:center;flex-shrink:0;padding-top:2px}.message-content{padding:.75rem 1rem;border-radius:12px;font-size:14px;line-height:1.5}.ai-response-card{background:var(--color-white);max-width:90%;overflow:hidden;border-radius:0 12px 12px}.ai-response-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--color-bg-subtle)}.ai-response-logo{display:flex;align-items:center;justify-content:center}.ai-response-logo-img{width:24px;height:24px;flex-shrink:0}.ai-response-icon{width:20px;height:20px;flex-shrink:0}.ai-response-label{font-size:16px;font-weight:600;background:var(--gradient-brand-to-blue);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;text-transform:uppercase;letter-spacing:.5px}.ai-response-content{padding:.75rem 1rem;font-size:16px;line-height:1.7;color:var(--color-text-dark-alt)}.ai-response-content strong{font-weight:600;color:var(--color-text-secondary)}.ai-response-content li{margin:.5rem 0;line-height:1.6}.ai-response-content p{margin:.75rem 0}.ai-response-content p:first-child{margin-top:0}.ai-response-content p:last-child{margin-bottom:0}.thinking-message-plain{display:flex;align-items:center;padding:0;background:transparent;border:none;box-shadow:none}.thinking-text{display:inline-flex;align-items:center;gap:.25rem;font-size:14px;color:var(--color-text-tertiary);font-weight:400}.thinking-dots{display:inline-flex;align-items:center;gap:.25rem;margin-left:.25rem}.thinking-dots .dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--color-brand-primary);animation:thinkingDot 1.4s ease-in-out infinite}.thinking-dots .dot:nth-child(1){animation-delay:0s}.thinking-dots .dot:nth-child(2){animation-delay:.2s}.thinking-dots .dot:nth-child(3){animation-delay:.4s}@keyframes thinkingDot{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.message-content-wrapper{max-width:80%;display:flex;flex-direction:column;gap:.75rem}.message.user .message-content{background:#e8edf6;color:var(--color-text-primary);border-radius:12px 0 12px 12px;padding:.75rem 1rem;width:fit-content;margin-left:auto;font-weight:400;font-size:16px}.message-attachments-preview{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.message-attachment-preview-simple{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;padding:.75rem;box-shadow:0 1px 2px var(--color-black-alpha-05)}.message-attachment-preview-image-wrapper{position:relative;flex-shrink:0}.message-attachment-preview-image{width:230px;height:186px;object-fit:cover;border-radius:8px;border:1px solid var(--color-border-default);display:block}.message-attachment-preview-icon{display:flex;align-items:center;justify-content:center;width:230px;height:185px;background:var(--color-brand-alpha-10);border-radius:8px}.message-attachment-preview-icon svg{width:24px;height:24px;flex-shrink:0}.message-attachment-preview-title{color:var(--color-text-secondary);font-weight:500;font-size:14px;overflow:visible;text-overflow:ellipsis;white-space:normal;line-height:1.4;word-break:break-word;max-width:fit-content;text-align:center}.message-attachment-preview-close{position:absolute;top:-6px;right:-6px;background:var(--color-text-primary);border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;color:var(--color-white);border-radius:50%;transition:all .2s;width:20px;height:20px;min-width:20px;z-index:10;box-shadow:0 2px 4px var(--color-black-alpha-20)}.message-attachment-preview-close:hover{background:var(--color-text-dark);transform:scale(1.1)}.message-attachment-preview-close svg{width:12px;height:12px;stroke:currentColor}.attachment-preview-window{background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;overflow:hidden;box-shadow:0 2px 8px var(--color-black-alpha-10);max-width:100%}.attachment-preview-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--color-bg-muted);border-bottom:1px solid var(--color-border-default)}.attachment-preview-title-section{display:flex;flex-direction:column;gap:.25rem}.attachment-preview-title{font-size:13px;font-weight:600;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.attachment-preview-date{font-size:11px;color:var(--color-text-icon)}.attachment-preview-close{background:var(--color-text-primary);border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;color:var(--color-white);border-radius:50%;transition:all .2s;flex-shrink:0;width:20px;height:20px;min-width:20px}.attachment-preview-close:hover{background:var(--color-text-dark);transform:scale(1.1)}.attachment-preview-content{padding:1rem;background:var(--color-white);min-height:200px;max-height:400px;overflow-y:auto}.pdf-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem;color:var(--color-text-icon)}.pdf-preview svg{color:var(--color-badge)}.pdf-preview-text{font-size:12px;color:var(--color-text-nav-hover);text-align:center;word-break:break-word}.image-preview{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:200px}.preview-image{max-width:100%;max-height:300px;object-fit:contain;border-radius:4px}.ai-assistant-past-chats{padding:.75rem 1rem;border-top:1px dashed var(--color-border-default);background:transparent;flex-shrink:0}.past-chats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.375rem;font-size:10px;color:var(--color-text-icon);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.view-all-link{color:var(--color-brand-accent);text-decoration:none;font-size:12px;text-transform:none;font-weight:500}.view-all-link:hover{text-decoration:underline}.past-chats-view-all{font-size:11px;color:var(--color-text-icon);font-weight:400;background:transparent;border:none;cursor:pointer;padding:0;transition:color .2s;text-transform:none;letter-spacing:normal}.past-chats-view-all:hover{color:var(--color-text-nav-hover)}.past-chats-list{display:flex;flex-direction:column;gap:0}.past-chat-item{padding:.375rem 0;cursor:pointer;transition:all .2s;display:flex;justify-content:space-between;align-items:center}.past-chat-item:hover,.past-chat-item.active{background:transparent}.past-chat-title{font-size:12px;color:var(--color-text-secondary);font-weight:400}.past-chat-time{font-size:11px;color:var(--color-text-icon);font-weight:400}.ai-assistant-suggested-commands{padding:.75rem 1rem;border-top:1px dashed var(--color-chart-sky);background:transparent;flex-shrink:0}.ai-assistant-suggested-commands .suggested-commands-header{font-size:10px;color:var(--color-text-nav-hover);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.ai-assistant-suggested-commands .suggested-commands-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.ai-assistant-suggested-commands .suggested-command-btn{padding:.625rem .75rem;background:var(--color-bg-subtle);border:none;border-radius:6px;font-size:13px;color:var(--color-text-nav-hover);font-weight:400;text-align:left;cursor:pointer;transition:all .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-assistant-suggested-commands .suggested-command-btn:hover{background:var(--color-border-default)}.ai-assistant-input{background:var(--color-white);transition:all .2s}.ai-assistant-input.has-text{box-shadow:0 -2px 8px var(--color-brand-alpha-10)}.ai-assistant-input-container{display:flex;flex-direction:column;margin:7px;gap:.75rem;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px;padding:.75rem 1rem;transition:all .2s;box-shadow:0 2px 4px var(--color-black-alpha-06);width:96%}.ai-assistant-input.has-text .ai-assistant-input-container{border:2px solid var(--color-brand-primary);background:var(--color-white);box-shadow:0 0 0 3px var(--color-brand-alpha-15);padding:calc(.75rem - 1px) calc(1rem - 1px);border-radius:12px}.ai-input-actions-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.ai-attachment-wrapper{position:relative;flex-shrink:0}.ai-input-attach-btn{background:none;border:none;cursor:pointer;color:var(--color-text-secondary);padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s;flex-shrink:0;width:32px;height:32px;margin:0}.ai-input-attach-btn:hover{background:var(--color-black-alpha-06)}.ai-input-attach-btn svg{width:18px;height:18px}.ai-attachment-menu{position:absolute;bottom:calc(100% + .5rem);left:0;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 4px 12px var(--color-black-alpha-15);min-width:180px;z-index:1000;overflow:hidden;display:flex;flex-direction:column;padding:.25rem}.ai-attachment-menu-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;background:transparent;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:400;color:var(--color-text-secondary);text-align:left;transition:all .2s;width:100%}.ai-attachment-menu-item:hover{background:var(--color-bg-subtle)}.ai-attachment-menu-item svg{width:16px;height:16px;flex-shrink:0;color:var(--color-text-icon)}.ai-attachment-menu-item span{flex:1}.ai-attached-files-container{display:flex;flex-direction:column;gap:.5rem;padding:0;margin-bottom:.75rem;width:100%}.ai-attached-file-card{display:flex;align-items:center;gap:12px;background:var(--color-white);border:1px solid var(--color-border-dotted);border-radius:8px;padding:12px 14px;box-shadow:0 1px 3px var(--color-black-alpha-08);position:relative;min-height:56px}.ai-attached-file-card-icon{flex-shrink:0;width:40px;height:40px;background:var(--color-accent-blue);border-radius:6px;display:flex;align-items:center;justify-content:center}.ai-attached-file-card-icon svg{width:22px;height:22px}.ai-attached-file-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ai-attached-file-card-title{font-size:14px;font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-attached-file-card-type{font-size:12px;font-weight:400;color:var(--color-text-placeholder)}.ai-attached-file-card-close{flex-shrink:0;width:28px;height:28px;border-radius:50%;border:1px solid var(--color-text-primary);background:transparent;color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .2s,color .2s}.ai-attached-file-card-close:hover{background:var(--color-bg-subtle)}.ai-attached-file-card-close svg{width:12px;height:12px}.ai-attached-file-preview{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;padding:.75rem;box-shadow:0 1px 2px var(--color-black-alpha-05)}.ai-attached-file-preview-image-wrapper{position:relative;flex-shrink:0}.ai-attached-file-preview-image{width:64px;height:64px;object-fit:cover;border-radius:8px;border:1px solid var(--color-border-default);display:block}.ai-attached-file-preview-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background:var(--color-brand-alpha-10);border-radius:8px}.ai-attached-file-preview-icon svg{width:24px;height:24px;flex-shrink:0}.ai-attached-file-preview-title{color:var(--color-text-secondary);font-weight:500;font-size:14px;overflow:visible;text-overflow:ellipsis;white-space:normal;line-height:1.4;word-break:break-word;max-width:64px;text-align:center}.ai-attached-file-preview-close{position:absolute;top:-6px;right:-6px;background:var(--color-text-primary);border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;color:var(--color-white);border-radius:50%;transition:all .2s;width:20px;height:20px;min-width:20px;z-index:10;box-shadow:0 2px 4px var(--color-black-alpha-20)}.ai-attached-file-preview-close:hover{background:var(--color-text-dark);transform:scale(1.1)}.ai-attached-file-preview-close svg{width:12px;height:12px;stroke:currentColor}.ai-assistant-textarea{width:100%;border:none;border-radius:8px;font-size:16px;outline:none;transition:all .2s;background:transparent;resize:none;overflow-y:auto;min-height:40px;max-height:120px;line-height:1.6;scrollbar-width:thin;scrollbar-color:#cbd5e1 var(--color-bg-slate-100);margin:0}.ai-assistant-textarea::-webkit-scrollbar{width:6px}.ai-assistant-textarea::-webkit-scrollbar-track{background:var(--color-bg-slate-100);border-radius:10px}.ai-assistant-textarea::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.ai-assistant-textarea::-webkit-scrollbar-thumb:hover{background:#94a3b8}.ai-assistant-textarea::placeholder{color:var(--color-text-tertiary)}.ai-assistant-textarea:focus{outline:none}.ai-input-model-dropdown{position:relative;flex-shrink:0}.ai-input-model-button{display:flex;align-items:center;gap:.375rem;padding:.5rem .625rem;background:transparent;border:none;cursor:pointer;color:var(--color-text-secondary);font-size:13px;font-weight:500;border-radius:6px;transition:all .2s;white-space:nowrap}.ai-input-model-button:hover{background:var(--color-black-alpha-05)}.ai-input-model-text{font-size:14px;font-weight:400;color:var(--color-text-primary)}.ai-input-model-button svg{width:12px;height:12px;color:var(--color-text-icon);transition:transform .2s}.ai-input-model-dropdown.show .ai-input-model-button svg{transform:rotate(180deg)}.ai-input-model-dropdown-menu{position:absolute;bottom:100%;right:0;margin-bottom:.5rem;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 4px 12px var(--color-black-alpha-15);z-index:1000;min-width:140px;overflow:hidden}.ai-input-model-option{display:block;width:100%;padding:.625rem .875rem;background:var(--color-white);border:none;text-align:left;cursor:pointer;font-size:13px;font-weight:500;color:var(--color-text-secondary);transition:all .2s}.ai-input-model-option:hover{background:var(--color-bg-muted)}.ai-input-model-option.active{background:var(--color-bg-subtle);color:var(--color-brand-purple-dark);font-weight:600}.send-btn{background:var(--color-border-primary);color:var(--color-text-icon);border:none;border-radius:10px;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;width:36px;height:36px;flex-shrink:0;box-shadow:0 1px 2px var(--color-black-alpha-05)}.send-btn svg{width:16px;height:16px;stroke-width:2.5;stroke:var(--color-white)}.send-btn.has-text:not(.disabled){background:var(--color-brand-purple-dark);color:var(--color-white)}.send-btn.has-text:not(.disabled) svg{stroke:var(--color-white)}.send-btn.has-text:hover:not(.disabled){background:#6500a8;color:var(--color-white)}.send-btn:active:not(.disabled){transform:scale(.96)}.send-btn.stop-btn{background:var(--color-brand-purple-dark);cursor:pointer;pointer-events:auto}.send-btn.stop-btn svg{stroke:var(--color-white);animation:none}.send-btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.send-btn.disabled svg{animation:spin 1s linear infinite;stroke:var(--color-white)}.ai-interactive-buttons{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.ai-action-button{padding:.625rem 1rem;background:var(--color-bg-subtle);border:1px solid var(--color-border-default);border-radius:6px;font-size:13px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s;text-align:left}.ai-action-button:hover{background:var(--color-brand-primary);color:var(--color-white);border-color:var(--color-brand-primary)}.ai-kpi-options{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.ai-kpi-option-button{padding:.75rem 1rem;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:6px;cursor:pointer;transition:all .2s;text-align:left}.ai-kpi-option-button:hover{background:var(--color-bg-muted);border-color:var(--color-brand-primary)}.kpi-option-title{font-size:13px;font-weight:600;color:var(--color-text-secondary);margin-bottom:.25rem}.kpi-option-description{font-size:12px;color:var(--color-text-icon)}.ai-kpi-preview{margin-top:.75rem;padding:1rem;background:var(--color-bg-muted);border-radius:8px;border:1px solid var(--color-border-default)}.kpi-preview-chart{margin-bottom:1rem;min-height:300px}.ai-publish-button{width:100%;padding:.75rem 1rem;background:var(--color-brand-primary);color:var(--color-white);border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.ai-publish-button:hover{background:var(--color-text-purple-alt)}.ai-analyzing-container{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;padding:1rem;background:var(--color-bg-muted);border-radius:8px;border:1px solid var(--color-border-default)}.ai-analyzing-step{display:flex;align-items:center;gap:.75rem;font-size:13px;color:var(--color-text-nav-hover)}.analyzing-step-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.analyzing-spinner{width:16px;height:16px;border:2px solid var(--color-border-default);border-top-color:var(--color-brand-primary);border-radius:50%;animation:spin .8s linear infinite}.analyzing-step-text{color:var(--color-text-secondary)}.ai-rfq-chart-container{margin-top:1rem;padding:1rem;background:var(--color-white);border-radius:12px;border:1px solid var(--color-border-default);box-shadow:0 2px 8px var(--color-black-alpha-06)}.rfq-chart-title{font-size:14px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem;text-align:center;padding-bottom:.75rem;border-bottom:1px solid var(--color-bg-subtle)}.rfq-chart-summary{display:flex;justify-content:space-between;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-bg-subtle)}.rfq-summary-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;flex:1;text-align:center}.rfq-summary-label{font-size:11px;color:var(--color-text-icon);text-transform:uppercase;letter-spacing:.3px}.rfq-summary-value{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.rfq-summary-value.rfq-good{color:var(--color-text-positive)}.rfq-summary-value.rfq-warning{color:var(--color-text-warning-amber)}@media(max-width:1200px){.ai-assistant{width:100%;max-width:380px}}@media(max-width:768px){.ai-assistant{width:100%;max-width:100%;height:calc(100vh - 60px - var(--maintenance-banner-height, 0px));z-index:200}}.api-response-natural-language{padding:.5rem 0}.api-response-natural-language p{margin:.5rem 0;line-height:1.6}.empty-result-indicator{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem;background:#fef3c7;border:1px solid #fbbf24;border-radius:6px;color:var(--color-text-amber-dark);font-size:14px}.api-response-with-viz{padding:.5rem 0}.api-response-with-viz p{margin-bottom:1rem}.api-response-table{padding:.5rem 0}.table-explanation{margin-bottom:1rem;font-size:14px;color:var(--color-text-placeholder);font-style:italic}.api-table-container{overflow-x:auto;margin:1rem 0;border:1px solid var(--color-border-default);border-radius:8px}.api-table{width:100%;border-collapse:collapse;font-size:14px}.api-table thead{background:var(--color-bg-muted);border-bottom:2px solid var(--color-border-default)}.api-table th{padding:.75rem;text-align:left;font-weight:600;color:var(--color-text-nav-hover);font-size:13px}.api-table td{padding:.75rem;border-bottom:1px solid var(--color-bg-subtle);color:var(--color-text-secondary)}.api-table tbody tr:hover{background:var(--color-bg-muted)}.api-table tbody tr:last-child td{border-bottom:none}.api-table-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding:.75rem;background:var(--color-bg-muted);border-radius:6px;font-size:13px;color:var(--color-text-placeholder)}.pagination-controls{display:flex;align-items:center;gap:1rem}.pagination-controls button{padding:.375rem .75rem;border:1px solid var(--color-border-dotted);background:var(--color-white);border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.pagination-controls button:hover:not(:disabled){background:var(--color-bg-subtle);border-color:var(--color-text-tertiary)}.pagination-controls button:disabled{opacity:.5;cursor:not-allowed}.api-response-kpi-card{padding:.5rem 0}.kpi-card{padding:1.5rem;border-radius:12px;border:2px solid var(--color-border-default);background:var(--color-white);margin:1rem 0}.kpi-card.success{border-color:var(--color-text-positive);background:var(--color-bg-success-wash)}.kpi-card.warning{border-color:var(--color-text-warning-amber);background:var(--color-bg-warning)}.kpi-card.error{border-color:var(--color-badge);background:var(--color-danger-bg)}.kpi-label{font-size:14px;color:var(--color-text-placeholder);margin-bottom:.5rem;font-weight:500}.kpi-value{font-size:32px;font-weight:700;color:var(--color-text-secondary);margin-bottom:.75rem;display:flex;align-items:baseline;gap:.25rem}.kpi-unit{font-size:18px;font-weight:400;color:var(--color-text-placeholder)}.kpi-interpretation{font-size:14px;color:var(--color-text-body-secondary);line-height:1.6;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border-default)}.kpi-error-card{padding:1.5rem;border-radius:12px;border:2px solid var(--color-error-coral);background:var(--color-danger-bg);margin:1rem 0}.kpi-error-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.kpi-error-header svg{color:var(--color-danger);flex-shrink:0}.kpi-error-title{font-size:16px;font-weight:600;color:var(--color-text-error-dark)}.kpi-error-message{font-size:13px;color:var(--color-text-red-wine);line-height:1.6;background:var(--color-white);padding:12px;border-radius:6px;border:1px solid #fecaca;margin-top:8px;word-wrap:break-word;white-space:pre-wrap}.kpi-error-context{font-size:12px;color:var(--color-text-error-dark);margin-top:10px;padding-top:10px;border-top:1px solid #fecaca}.kpi-error-context strong{font-weight:600}.api-response-gauge{padding:.5rem 0}.gauge-chart-container{padding:1.5rem;border-radius:12px;border:2px solid var(--color-border-default);background:var(--color-white);margin:1rem 0}.gauge-label{font-size:14px;color:var(--color-text-placeholder);margin-bottom:.5rem;font-weight:500}.gauge-value{font-size:36px;font-weight:700;color:var(--color-text-secondary);text-align:center;margin:1rem 0}.gauge-bar{width:100%;height:24px;background:var(--color-border-default);border-radius:12px;overflow:hidden;margin:1rem 0}.gauge-fill{height:100%;transition:width .5s ease;border-radius:12px}.gauge-range{display:flex;justify-content:space-between;font-size:12px;color:var(--color-text-placeholder);margin-top:.5rem}.gauge-interpretation{font-size:14px;color:var(--color-text-body-secondary);line-height:1.6;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-default)}.api-visualization{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border-default)}.api-visualization-compact{margin-top:0;padding-top:0;border-top:none}.visualization-explanation{font-size:13px;color:var(--color-text-placeholder);margin-bottom:1rem;font-style:italic}.chart-title{font-size:14px;font-weight:600;color:var(--color-text-primary);margin:0 0 .75rem}.chart-container{margin:1rem 0;width:100%;display:flex;flex-direction:column}.plotly-code-note{font-size:10px;color:var(--color-text-placeholder);margin-top:8px;font-style:italic;padding:.5rem;background:var(--color-bg-muted);border-radius:4px}.ai-assistant-disclaimer{font-size:11px;color:var(--color-text-placeholder);text-align:center;padding:8px 16px 12px;line-height:1.4}@keyframes streaming-blink{0%,to{opacity:1}50%{opacity:0}}.streaming-cursor{display:inline-block;width:2px;height:1em;background-color:currentColor;margin-left:1px;vertical-align:text-bottom;border-radius:1px;animation:streaming-blink .9s step-end infinite}.streaming-message p:last-child{display:inline}.mb{position:fixed;top:0;left:0;right:0;z-index:1100;min-height:48px;display:flex;align-items:stretch;font-size:.8125rem;font-family:inherit}.mb--green{background:#fff;border-bottom:1px solid #d1fae5}.mb__label--green{display:flex;align-items:center;gap:.4rem;background:#34d399;color:#fff;padding:0 1.125rem;font-weight:600;white-space:nowrap;flex-shrink:0}.mb__dot--green{width:7px;height:7px;border-radius:50%;background:#fff;flex-shrink:0}.mb__body{display:flex;flex-direction:column;justify-content:center;gap:.125rem;flex:1;min-width:0;padding:.375rem 1rem;overflow:hidden}.mb__line,.mb__support{margin:0;line-height:1.35}.mb__line{color:var(--color-text-primary);font-size:14px;font-weight:500}.mb--green .mb__window,.mb--red .mb__window{color:var(--color-text-primary);font-weight:500}.mb--green .mb__sep,.mb--red .mb__sep{color:#374151}.mb__support{color:var(--color-text-primary);font-size:14px;font-weight:500}.mb__email{color:var(--color-brand-purple-dark, #7500c0);font-weight:500;text-decoration:none}.mb__email:hover{text-decoration:underline}.mb__time--green{font-size:.75rem;font-weight:500;color:#6b7280;white-space:nowrap;flex-shrink:0;padding:0 .75rem;border-left:1px solid #e5e7eb;display:flex;align-items:center}.mb__close--green{display:flex;align-items:center;justify-content:center;align-self:center;width:22px;height:22px;margin:0 .875rem;flex-shrink:0;background:transparent;border:1.5px solid #9ca3af;border-radius:50%;cursor:pointer;color:#6b7280;font-size:.875rem;line-height:1;padding:0;transition:border-color .15s,color .15s}.mb__close--green:hover{border-color:#374151;color:#111827}.mb--red{background:#fff;border-bottom:1px solid #fecaca}.mb__label--red{display:flex;align-items:center;gap:.4rem;background:#ff3246;color:#fff;padding:0 1.125rem;font-weight:600;white-space:nowrap;flex-shrink:0}.mb__dot--red{width:7px;height:7px;border-radius:50%;background:#fff;flex-shrink:0}.mb__time--red{font-size:.75rem;font-weight:500;color:#6b7280;white-space:nowrap;flex-shrink:0;padding:0 .75rem;border-left:1px solid #e5e7eb;display:flex;align-items:center}.mb__close--red{display:flex;align-items:center;justify-content:center;align-self:center;width:22px;height:22px;margin:0 .875rem;flex-shrink:0;background:transparent;border:1.5px solid #9ca3af;border-radius:50%;cursor:pointer;color:#6b7280;font-size:.875rem;line-height:1;padding:0;transition:border-color .15s,color .15s}.mb__close--red:hover{border-color:#374151;color:#111827}.ask-ct-ai-tooltip{position:absolute;z-index:99999;pointer-events:auto;animation:ask-ct-ai-fadein .12s ease}@keyframes ask-ct-ai-fadein{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ask-ct-ai-tooltip__btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:#6c27be;color:#fff;border:none;border-radius:20px;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;box-shadow:0 2px 8px #6c27be59;transition:background .15s ease,box-shadow .15s ease;letter-spacing:.01em}.ask-ct-ai-tooltip__btn:hover{background:#5a1fa3;box-shadow:0 4px 12px #6c27be73}.ask-ct-ai-tooltip__btn:active{background:#4a1888}.ask-ct-ai-tooltip__icon{font-size:11px;line-height:1}.layout{display:flex;flex-direction:column;min-height:100vh;background:var(--color-bg-app);position:relative}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;width:100%;margin-top:calc(60px + var(--maintenance-banner-height, 0px));transition:width .1s ease-out,max-width .1s ease-out;box-sizing:border-box;position:relative}.main-content:focus{outline:none}.summary-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1rem}.summary-card{background:var(--color-white);border:1px solid var(--color-brand-primary-alpha-20);border-radius:8px;padding:1rem 1.25rem;display:flex;flex-direction:column;box-shadow:0 1px 2px -1px var(--color-black-alpha-10),0 1px 3px 0 var(--color-black-alpha-10);min-height:90px}.summary-card.attention{background:var(--gradient-summary-card-attention);border:1px solid var(--color-error-deep-alpha-20)}.summary-card-top{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:.5rem}.summary-card-left{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.summary-card-icon-box{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.summary-card-icon-box svg{width:20px;height:20px}.summary-card-label{font-weight:400;font-size:16px;line-height:24px;color:var(--color-text-primary)}.summary-card-value{font-weight:400;font-size:36px;line-height:44px;letter-spacing:-1.08px;color:var(--color-text-primary)}.summary-card-value .loading-dots-inline{display:inline-flex;align-items:center;gap:4px;height:44px}.summary-card-value .loading-dots-inline .dot{width:5px;height:5px;background-color:var(--color-text-primary);border-radius:50%;animation:pulse-dot-summary 1.4s ease-in-out infinite}.summary-card-value .loading-dots-inline .dot:nth-child(1){animation-delay:0s}.summary-card-value .loading-dots-inline .dot:nth-child(2){animation-delay:.2s}.summary-card-value .loading-dots-inline .dot:nth-child(3){animation-delay:.4s}@keyframes pulse-dot-summary{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}@media(max-width:1200px){.summary-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.summary-cards{grid-template-columns:1fr}.summary-card{padding:1rem}}.api-error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;padding:40px 20px;border-radius:8px;min-height:200px;box-sizing:border-box}.api-error-container--compact{min-height:auto;padding:16px 12px}.api-error-container--inline{min-height:120px;padding:24px 16px}.api-error-message{font-size:16px;color:var(--color-text-placeholder);font-weight:500;margin:0 0 16px}.api-error-container--compact .api-error-message{font-size:13px;margin-bottom:12px}.api-retry-btn{background:var(--gradient-brand-purple-vertical);color:var(--color-white);border:none;padding:10px 32px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.api-retry-btn:hover{opacity:.9}.project-list-container{margin-top:.75rem;padding:1.25rem;background:var(--color-white);border:1px solid var(--color-brand-primary-alpha-20);border-radius:12px}.search-filters{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.search-bar{flex:1;position:relative;display:flex;align-items:center;background:var(--color-white);border-radius:8px;padding:.625rem 1rem;border:1px solid var(--color-border-default);min-height:40px}.search-bar svg{color:var(--color-text-tertiary);margin-right:.625rem;width:18px;height:18px;flex-shrink:0}.search-bar input{flex:1;border:none;outline:none;background:transparent;font-size:16px;color:var(--color-text-primary)}.search-bar input::placeholder{color:var(--color-text-tertiary);font-size:16px}.filters{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.risk-level-filter{position:relative;min-width:220px}.risk-level-filter-trigger{display:flex;align-items:center;gap:.5rem;width:100%;min-height:40px;padding:.5rem .75rem;border:1.5px solid var(--color-brand-primary-alpha-20);border-radius:8px;background:var(--color-white);cursor:pointer;box-sizing:border-box;transition:border-color .2s}.risk-level-filter-trigger:hover,.risk-level-filter-trigger.is-open{border-color:var(--color-brand-primary)}.risk-level-filter-trigger[aria-disabled=true]{opacity:.6;cursor:not-allowed}.risk-level-filter-label{font-size:14px;font-weight:500;color:var(--color-text-nav);white-space:nowrap;flex-shrink:0}.risk-level-filter-value{flex:1;display:flex;align-items:center;min-width:0}.risk-level-filter-loading{font-size:13px;color:var(--color-text-placeholder);white-space:nowrap}.risk-level-pill{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:6px;font-size:13px;font-weight:500;line-height:1.2}.risk-level-pill--all{background:var(--color-bg-brand-subtle);color:var(--color-brand-primary)}.risk-level-pill--high{background:var(--color-bg-error-light);color:var(--color-error-deep)}.risk-level-pill--medium{background:var(--color-bg-sky-100);color:var(--color-text-link)}.risk-level-pill--low{background:var(--color-success-bg-light);color:var(--color-text-positive-deep)}.risk-level-pill-clear{display:flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;cursor:pointer;color:inherit;opacity:.85;flex-shrink:0}.risk-level-pill-clear:hover{opacity:1}.risk-level-filter-chevron{display:flex;align-items:center;color:var(--color-brand-primary);flex-shrink:0;transition:transform .2s}.risk-level-filter-chevron.is-open{transform:rotate(180deg)}.risk-level-filter-menu{position:absolute;top:calc(100% + .5rem);right:0;left:0;min-width:240px;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 4px 16px var(--color-black-alpha-15);z-index:1000;overflow:hidden}.risk-level-filter-menu-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;border-bottom:1px solid var(--color-border-default)}.risk-level-filter-menu-title{font-size:16px;font-weight:600;color:var(--color-text-primary)}.risk-level-filter-menu-clear{font-size:14px;font-weight:500;color:var(--color-brand-primary);background:transparent;border:1px solid var(--color-brand-primary);border-radius:6px;padding:.25rem .75rem;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s}.risk-level-filter-menu-clear:hover{background:var(--color-bg-brand-subtle)}.risk-level-filter-options{list-style:none;margin:0;padding:.25rem 0}.risk-level-filter-option{display:flex;align-items:center;gap:.625rem;width:100%;padding:.625rem 1rem;border:none;background:transparent;cursor:pointer;text-align:left;font-size:14px;font-weight:500;color:var(--color-text-primary);transition:background .15s}.risk-level-filter-option:hover,.risk-level-filter-option.is-selected{background:var(--color-bg-brand-subtle)}.risk-level-filter-option.is-selected .risk-level-filter-option-label{color:var(--color-brand-primary)}.risk-level-filter-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.risk-level-filter-dot--all{background:var(--color-brand-primary)}.risk-level-filter-dot--high{background:var(--color-error-deep)}.risk-level-filter-dot--medium{background:var(--color-text-link)}.risk-level-filter-dot--low{background:var(--color-text-positive-deep)}.risk-level-filter-option-label{flex:1}.risk-level-filter-option-check{flex-shrink:0;color:var(--color-brand-primary)}.accordion-icon{display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;margin-left:.5rem;transition:transform .2s;background:none;border:none;padding:4px;border-radius:4px;line-height:0}.accordion-icon:hover{background:var(--color-bg-hover, rgba(0, 0, 0, .06))}.projects{display:flex;flex-direction:column;gap:.75rem}.project-card{background:var(--color-white);border-radius:12px;padding:1rem 1.25rem;transition:all .2s;position:relative;overflow:hidden;border:1px solid var(--color-brand-lavender);box-shadow:0 4px 6px -4px var(--color-black-alpha-10),0 10px 15px -3px var(--color-black-alpha-10)}.project-card:hover{box-shadow:0 6px 8px -4px var(--color-black-alpha-15),0 12px 20px -3px var(--color-black-alpha-15)}.project-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.project-folder-icon-wrapper{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--color-brand-alpha-10);border-radius:8px}.project-folder-icon-wrapper svg{width:24px;height:24px}.project-header-left{display:flex;align-items:center;gap:0;flex:1}.project-title-section{flex:1}.project-name-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem;flex-wrap:nowrap}.project-name{font-weight:600;font-size:18px;line-height:28px;letter-spacing:-.18px;color:var(--color-text-primary)}.project-date-inline{display:flex;align-items:center;gap:.375rem;font-weight:400;font-size:14px;line-height:22px;color:var(--color-text-nav)}.project-date-inline svg{flex-shrink:0}.project-description{font-size:12px;color:var(--color-text-icon);line-height:1.4}.risk-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:8px;font-size:12px;font-weight:500;line-height:18px}.risk-tag.risk-low{background:var(--color-success-bg-light);color:var(--color-text-positive-deep);border:1px solid var(--color-border-success)}.risk-tag.risk-medium{background:var(--color-bg-sky-100);color:var(--color-text-link);border:1px solid var(--color-black-alpha-10)}.risk-tag.risk-high{background:var(--color-bg-error-light);color:var(--color-error-deep);border:1px solid var(--color-brand-primary-alpha-20)}.project-header-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.project-metrics-inline{display:flex;gap:.5rem;align-items:center}.metric-box-cpi,.metric-box-spi,.metric-box-etc,.metric-box-eac{height:35px;border:1px solid var(--color-border-primary);display:flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;background:var(--color-bg-neutral-wash-50);border-radius:8px;white-space:nowrap}.metric-box-cpi,.metric-box-spi{width:89px}.metric-label-inline{font-size:14px;color:var(--color-text-icon);font-weight:600;line-height:18px}.metric-value-cpi,.metric-value-spi,.metric-value-etc,.metric-value-eac{font-size:14px;font-weight:600;color:var(--color-brand-primary);line-height:18px}.project-details{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border-default);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.project-progress-section{margin-bottom:1rem}.progress-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.progress-label{font-size:14px;font-weight:400;line-height:22px;color:var(--color-text-primary)}.progress-bar{width:100%;height:8px;background:var(--color-border-default);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:var(--color-accent-blue);border-radius:4px;transition:width .3s}.progress-percentage{font-size:14px;font-weight:600;color:var(--color-text-form-label)}.milestones-text{display:flex;align-items:center;gap:.375rem;font-size:14px;font-weight:400;color:var(--color-text-icon)}.milestones-text svg{flex-shrink:0}.project-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1rem}.metric-item{height:72px;gap:8px;border-radius:8px;border:1px solid var(--color-border-primary);padding:8px;background:var(--color-white);display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}.metric-item.metric-budget{border-left:3px solid var(--color-brand-primary)}.metric-label{font-size:16px;line-height:20px;color:var(--color-text-primary);text-transform:capitalize;letter-spacing:0;font-weight:400}.project-list-metric-value{font-size:18px;font-weight:600;line-height:28px;letter-spacing:-.18px;color:var(--color-text-primary)}.ai-insights{background:var(--color-bg-purple-soft-wash);border:1px solid var(--color-brand-primary-alpha-20);border-radius:12px;padding:1rem 1.25rem;margin-bottom:1rem}.ai-insights-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.875rem}.ai-insights-icon-box{width:40px;height:40px;background:var(--color-brand-alpha-10);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ai-insights-title-section{display:flex;flex-direction:column;gap:.125rem}.ai-insights-title{font-size:16px;font-weight:600;color:var(--color-text-primary)}.ai-insights-subtitle{font-size:14px;font-weight:400;color:var(--color-text-icon)}.ai-insights-content{background:#f7f4ff;border:1px solid var(--color-brand-lavender);border-radius:8px;padding:.875rem 1rem}.ai-insights-list{margin:0;padding-left:1.25rem;list-style-type:disc}.ai-insights-list li{font-size:14px;font-weight:400;color:var(--color-text-primary);line-height:1.6;margin-bottom:.5rem}.ai-insights-list li:last-child{margin-bottom:0}.ai-insights-list li::marker{color:var(--color-text-primary)}.ai-insights-loader{display:flex;align-items:center;gap:.75rem;padding:1rem 0;color:var(--color-text-placeholder);font-size:14px}.ai-insights-error-wrap{width:100%}.ai-insights-api-error{min-height:120px;padding:1rem .5rem}.ai-insight-item svg{flex-shrink:0;margin-top:.125rem}.ai-detail-icon{width:20px;height:20px;flex-shrink:0}.ai-insight-item strong{font-size:14px;font-weight:600;color:var(--color-text-primary)}.performance-indices{display:flex;gap:.75rem;margin-top:.375rem;font-size:11px}.index-spi,.index-cpi{color:var(--color-overlay-scrim);font-weight:400}.spi-value,.cpi-value{font-weight:600;font-style:normal;font-size:12px;line-height:18px;letter-spacing:0px;color:var(--color-text-charcoal)}.project-footer{display:flex;justify-content:flex-end;align-items:center}.view-details-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:var(--color-white);color:var(--color-text-primary);border:1px solid var(--color-border-default);border-radius:8px;font-size:14px;font-weight:400;cursor:pointer;transition:all .2s}.view-details-btn svg{flex-shrink:0;width:16px;height:16px}.view-details-btn:hover:not(.loading){background:var(--color-bg-subtle);border-color:var(--color-border-primary)}.view-details-btn.loading{background:var(--color-bg-muted);border-color:var(--color-border-dotted);cursor:not-allowed;opacity:.8}.project-folder-icon-img{height:40px;width:40px}.loading-projects,.no-projects{text-align:center;padding:2rem;color:var(--color-text-placeholder);font-size:14px}.project-list-portfolio-error{min-height:320px}.project-upload-status-row{display:flex;align-items:center;gap:.5rem;padding:.4rem 1rem .4rem 1.25rem;background:#f5f3ff;border-top:1px solid #E9D5FF;font-size:.8rem}.project-upload-status-icon{display:flex;align-items:center;flex-shrink:0}.project-upload-spinner{display:inline-block;width:13px;height:13px;border:2px solid #DDD6FE;border-top-color:#7c3aed;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.project-upload-status-text{flex:1;color:#4c1d95;font-size:.8rem}.project-upload-status-time{font-size:.78rem;font-weight:600;color:#7c3aed;white-space:nowrap;flex-shrink:0}.project-upload-icon--done{color:#16a34a;font-weight:700}.project-upload-icon--fail{color:#dc2626;font-weight:700}.executive-dashboard{flex:1;overflow-y:auto;padding:1.5rem;min-height:calc(100vh - 60px);background:var(--color-bg-app);width:100%;transition:padding-right .3s ease;box-sizing:border-box;margin:0}.executive-dashboard.with-sidebar{padding-right:18px!important}.executive-dashboard.full-width{padding-right:1.5rem;max-width:100%}.dashboard-content{max-width:1400px;margin:0 auto}.portfolio-title-overview{margin-bottom:1.5rem;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.client-title-section{display:flex;flex-direction:column;gap:.25rem}.client-name{font-weight:600;font-size:32px;line-height:38px;letter-spacing:-.84px;color:var(--color-text-primary);margin:0}.client-subtitle{font-weight:400;font-size:16px;line-height:24px;letter-spacing:-.31px;color:var(--color-text-nav);margin:0}.loading-indicator{font-size:12px;color:var(--color-text-indigo);background:var(--color-bg-indigo-wash);padding:4px 12px;border-radius:12px;font-weight:500;white-space:nowrap}.loading-dots{display:inline-flex;align-items:center;gap:3px;height:38px}.loading-dots .dot{width:6px;height:6px;background-color:var(--color-text-icon);border-radius:50%;animation:pulse-dot 1.2s ease-in-out infinite}.loading-dots .dot:nth-child(1){animation-delay:0s}.loading-dots .dot:nth-child(2){animation-delay:.15s}.loading-dots .dot:nth-child(3){animation-delay:.3s}@keyframes pulse-dot{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}.records-pagination-select{border:1px solid var(--color-border-default);border-radius:6px;padding:4px 24px 4px 8px;font-size:13px;color:var(--color-text-primary, #111827);background:var(--color-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 6px center;appearance:none;cursor:pointer;min-width:52px}.metrics-page{flex:1;overflow-y:auto;padding:1.5rem;min-height:calc(100vh - 60px);background:var(--color-bg-app);width:100%;transition:padding-right .3s ease;box-sizing:border-box}.metrics-page .recharts-label{font-size:12px!important;fill:var(--color-text-primary)!important;font-weight:400!important}@keyframes pulse-dot-inline{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.metrics-page.with-sidebar{padding-right:18px!important}.metrics-page.full-width{padding-right:1.5rem}.chart-modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;animation:fadeIn .2s ease}.chart-modal-content{background:var(--color-white);border-radius:12px;width:100%;max-width:1200px;height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px var(--color-black-alpha-10),0 10px 10px -5px var(--color-black-alpha-04);animation:slideUp .3s ease;overflow:hidden}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.chart-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--color-border-default);flex-shrink:0}.chart-modal-title{font-size:24px;font-weight:600;color:var(--color-text-primary);margin:0}.chart-modal-close{width:36px;height:36px;border:none;background:var(--color-bg-subtle);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-icon);transition:all .2s;flex-shrink:0}.chart-modal-close:hover{background:var(--color-border-default);color:var(--color-text-nav-hover)}.chart-modal-body{flex:1;min-height:0;padding:1rem 1rem .5rem;overflow:hidden;display:flex;flex-direction:column;align-items:stretch}.chart-modal-chart-shell{flex:1;min-height:0;width:100%;display:flex;flex-direction:column}.chart-modal-hse-chart-wrap{flex:1;min-height:0;width:100%}.chart-modal-heatmap{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;padding:1rem;overflow:hidden;box-sizing:border-box;overflow:auto}.chart-modal-heatmap .heatmap-container-modal{flex:1;min-height:0;width:100%;display:grid;grid-template-rows:max-content;row-gap:.75rem;align-items:stretch;justify-content:space-evenly;align-content:start;padding:0;margin:0;box-sizing:border-box;height:100%}.chart-modal-heatmap .heatmap-main-modal{flex:1;min-height:0;height:100%;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr;gap:0;align-items:stretch;width:100%;max-width:100%;margin:0;grid-row:1}.chart-modal-heatmap .heatmap-grid-wrapper-modal{display:flex;flex-direction:column;align-items:stretch;gap:.25rem;min-width:0;min-height:0;flex:1}.chart-modal-heatmap .heatmap-grid-modal{flex:0 0 auto;max-width:100%;max-height:100%;aspect-ratio:1;margin:0}.chart-modal-heatmap .heatmap-modal-grid-90{width:90%!important;height:90%!important}.chart-modal-heatmap .heatmap-y-axis-wrapper-modal{height:var(--heatmap-grid-height);align-self:stretch;display:flex;flex-direction:row;align-items:center;gap:0;flex-shrink:0}.chart-modal-heatmap .heatmap-y-axis-wrapper-modal .heatmap-y-axis-label{display:flex;align-items:center;justify-content:center;height:100%;writing-mode:vertical-rl;text-orientation:mixed;align-self:center}.chart-modal-heatmap .heatmap-y-axis-modal{height:var(--heatmap-grid-height);flex:1;padding-right:0;display:flex;flex-direction:column;justify-content:space-between}.chart-modal-heatmap .heatmap-x-axis-wrapper-modal{width:100%;max-width:380px;min-width:250px;margin:.25rem auto 0;align-items:center}.chart-modal-heatmap .heatmap-modal-x-axis-100{width:100%!important;max-width:100%;flex-shrink:0}.chart-modal-heatmap .heatmap-legend-modal{width:100%;max-width:100%;margin:0 auto;padding:.75rem .5rem;flex-shrink:0;visibility:visible;opacity:1;overflow:visible;display:flex;flex-direction:column;gap:.5rem;align-items:center;justify-content:center;position:relative;z-index:10;grid-row:2;border-top:none;padding-top:0;margin-top:0!important;box-sizing:border-box}.chart-modal-heatmap .heatmap-legend-modal .legend-title{font-size:12px;font-weight:600;color:var(--color-text-nav-hover);margin-bottom:.25rem;text-align:center}.chart-modal-heatmap .heatmap-legend-modal .legend-items-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:clamp(8px,1.2vw,12px);justify-content:center;align-items:center;width:100%}.chart-modal-heatmap .heatmap-legend-modal .legend-item{display:flex;flex-direction:row;align-items:center;gap:.375rem;font-size:11px;color:var(--color-text-icon);font-weight:500;white-space:nowrap;flex-shrink:0}.chart-modal-heatmap .heatmap-grid-modal{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(5,1fr);gap:2px}.chart-modal-heatmap .heatmap-y-axis-modal{display:flex;flex-direction:column;gap:2px;font-size:clamp(10px,1.6vmin,16px);color:var(--color-text-icon);font-weight:500;padding-right:.5rem;padding-left:0;margin-right:0;text-align:right;min-width:clamp(40px,6vmin,56px);height:var(--heatmap-grid-height)}.chart-modal-heatmap .heatmap-y-axis-modal>div{display:flex;align-items:center;justify-content:flex-end;min-height:0;box-sizing:border-box;min-height:var(--heatmap-cell-height);line-height:var(--heatmap-cell-height)}.chart-modal-heatmap .heatmap-x-axis-wrapper-modal .heatmap-x-axis{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;font-size:10px;color:var(--color-text-icon);font-weight:500;text-align:center;width:100%}.chart-modal-heatmap .heatmap-x-axis-wrapper-modal .heatmap-x-axis-label{font-size:11px;font-weight:600;color:var(--color-text-nav-hover);text-align:center;width:100%;padding-left:0;margin-top:.25rem}.chart-modal-heatmap .heatmap-cell{min-height:0;display:flex;align-items:center;justify-content:center;font-size:9px;color:var(--color-text-icon);position:relative;transition:opacity .2s ease}.chart-modal-heatmap .heatmap-risk-point{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;box-shadow:0 2px 4px var(--color-black-alpha-20);z-index:1}@media(max-width:1024px){.chart-modal-heatmap{padding:.75rem}.chart-modal-heatmap .heatmap-main-modal{max-width:100%;gap:0}.chart-modal-heatmap .heatmap-grid-modal{max-width:100%;min-width:220px}.chart-modal-heatmap .heatmap-y-axis-wrapper-modal,.chart-modal-heatmap .heatmap-y-axis-modal{height:100%}.chart-modal-heatmap .heatmap-x-axis-wrapper-modal{max-width:100%;min-width:220px}.chart-modal-heatmap .heatmap-legend-modal{max-width:100%;padding:.5rem}}@media(max-width:768px){.chart-modal-heatmap{padding:.5rem}.chart-modal-heatmap .heatmap-main-modal{max-width:100%;gap:0}.chart-modal-heatmap .heatmap-grid-modal{max-width:100%;min-width:200px}.chart-modal-heatmap .heatmap-y-axis-wrapper-modal{height:100%}.chart-modal-heatmap .heatmap-y-axis-modal{height:100%;font-size:clamp(9px,1.5vmin,14px)}.chart-modal-heatmap .heatmap-x-axis-wrapper-modal{max-width:100%;min-width:200px}.chart-modal-heatmap .heatmap-x-axis-wrapper-modal .heatmap-x-axis{font-size:9px}.chart-modal-heatmap .heatmap-legend-modal{max-width:100%;padding:.5rem}.chart-modal-heatmap .heatmap-legend-modal .legend-item{font-size:10px}.chart-modal-heatmap .heatmap-legend-modal .legend-title{font-size:11px}}@media(max-width:480px){.chart-modal-heatmap{padding:.5rem}.chart-modal-heatmap .heatmap-main-modal{max-width:100%;gap:0}.chart-modal-heatmap .heatmap-grid-modal{min-width:180px;max-width:100%}.chart-modal-heatmap .heatmap-y-axis-wrapper-modal{height:100%}.chart-modal-heatmap .heatmap-y-axis-modal{height:100%;font-size:8px;min-width:35px;padding-right:0}.chart-modal-heatmap .heatmap-x-axis-wrapper-modal{min-width:180px;max-width:100%}.chart-modal-heatmap .heatmap-x-axis-wrapper-modal .heatmap-x-axis{font-size:8px}.chart-modal-heatmap .heatmap-x-axis-wrapper-modal .heatmap-x-axis-label{font-size:10px}.chart-modal-heatmap .heatmap-legend-modal{max-width:100%;padding:.5rem .25rem;width:100%}.chart-modal-heatmap .heatmap-legend-modal .legend-items-container{gap:.5rem}.chart-modal-heatmap .heatmap-legend-modal .legend-item{font-size:9px;gap:.25rem}.chart-modal-heatmap .heatmap-legend-modal .legend-color{width:10px;height:10px}.chart-modal-heatmap .heatmap-legend-modal .legend-title{font-size:10px}.chart-modal-heatmap .heatmap-risk-point{width:20px;height:20px;font-size:9px}}.metrics-content{max-width:1400px;margin:0 auto}.section-header-top{display:flex;justify-content:space-between;align-items:baseline}.page-title{font-size:32px;font-weight:600;color:var(--color-text-primary);margin:0}.section-title{font-size:32px!important;font-weight:600;color:var(--color-text-primary);margin:0!important}.section-subtitle{font-size:16px;color:var(--color-text-icon);margin:0;font-weight:400}.performance-metrics-section{margin-bottom:0rem}.metrics-cards-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.75rem}.metric-card{background:var(--color-white);border-radius:6px;padding:1rem;box-shadow:0 3px 6px var(--color-black-alpha-08);display:flex;flex-direction:column;gap:.75rem;border:1px solid var(--color-border-primary);align-items:flex-start;justify-content:space-between}.metric-title{font-size:16px;font-weight:400;color:var(--color-text-primary);line-height:1.2}.metric-value{font-size:28px!important;font-weight:600!important;color:var(--color-text-primary)!important;line-height:1}.performance-trends-section{margin-bottom:0rem}.performance-trends-section .section-title,.metrics-explorer-title{margin:1.85rem 0rem 1.5rem!important;font-size:24px!important;font-weight:600;color:var(--color-text-primary)}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@keyframes slideInFromRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}.charts-grid.slide-left{animation:slideInFromRight .45s cubic-bezier(.25,.46,.45,.94) both}.charts-grid.slide-right{animation:slideInFromLeft .45s cubic-bezier(.25,.46,.45,.94) both}.charts-grid.partial-page{grid-auto-flow:row;align-content:start}.chart-container{background:var(--color-white);border-radius:6px;padding:1rem;box-shadow:0 1px 2px var(--color-black-alpha-08);display:flex;flex-direction:column;border:1px solid var(--color-border-primary);margin:0rem}.chart-container:has(.heatmap-container){padding-bottom:.5rem}.chart-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem!important}.chart-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0!important}.chart-subtitle{font-size:12px;color:var(--color-text-icon);margin:0;font-weight:400}.chart-icon{width:16px;height:16px;color:var(--color-text-tertiary);flex-shrink:0;transition:all .2s}.chart-icon:hover{color:var(--color-brand-primary);transform:scale(1.1)}.chart-header-actions{display:flex;align-items:center;gap:12px}.chart-resource-util-target-legend{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;-webkit-user-select:none;user-select:none}.chart-resource-util-target-legend__swatch{display:block;flex-shrink:0}.chart-resource-util-target-legend__label{font-size:12px;font-weight:500;white-space:nowrap}.chart-resource-util-target-legend--subtitle .chart-resource-util-target-legend__label{color:var(--color-text-tertiary)}.chart-subtitle-row--resource-util{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;row-gap:4px}.chart-title-section--resource-util .chart-subtitle-row--resource-util .chart-subtitle{margin:0}.chart-placeholder.chart-placeholder--resource-util{min-height:unset;justify-content:flex-start}.chart-placeholder.chart-placeholder--composed-hse.chart-placeholder,.chart-placeholder.chart-placeholder--composed-hse.chart-placeholder.month-view{align-items:stretch}.chart-legend-external.chart-legend-external--resource-util{padding:2px 0 0;margin-top:0;gap:6px;flex-shrink:0;font-size:14px}.chart-modal-resource-util-stack{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}.chart-modal-resource-util-subtitle-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;flex-shrink:0;width:100%;padding:0 0 6px;margin:0}.chart-modal-resource-util-subtitle-row .chart-subtitle{margin:0;font-size:12px;color:var(--color-text-icon)}.chart-modal-resource-util-chart-wrap{flex:1;min-height:0;width:100%}.chart-view-toggle{display:flex;background:var(--color-bg-subtle);border-radius:25px;padding:2px;gap:2px}.chart-view-toggle .toggle-btn{padding:6px 14px;font-size:12px;font-weight:500;border:none;background:transparent;color:var(--color-text-placeholder);cursor:pointer;border-radius:25px;transition:all .2s ease}.chart-view-toggle .toggle-btn:hover{color:var(--color-text-nav-hover)}.chart-view-toggle .toggle-btn.active{background:var(--color-brand-purple-mid);color:var(--color-white);box-shadow:0 1px 3px var(--color-brand-purple-alpha-30)}.chart-placeholder{flex:1;min-height:400px;background:var(--color-white);border-radius:4px;display:flex;flex-flow:column;align-items:center;justify-content:center;position:relative;border:1px solid var(--color-border-default);overflow:hidden;padding:0;margin:0}.chart-placeholder.month-view{align-items:center;padding-bottom:0;min-height:auto;flex-flow:column}.chart-placeholder .heatmap-container{margin-bottom:0}.chart-placeholder:has(.heatmap-container){min-height:auto;align-items:flex-start;padding-bottom:0;margin-bottom:0}.chart-placeholder>.recharts-responsive-container{position:relative;z-index:2;width:100%!important;height:100%!important;min-height:0;margin:0;padding:0}.chart-placeholder>.recharts-responsive-container>svg{position:relative;z-index:2;display:block;margin:0;padding:0}.metrics-page.with-sidebar .chart-placeholder{min-height:320px}.metrics-page.with-sidebar .chart-placeholder.month-view,.metrics-page.with-sidebar .chart-placeholder.year-view{min-height:auto}.chart-content{width:100%;height:100%;display:flex;flex-direction:column;gap:.5rem;position:relative;overflow:visible}.chart-content .heatmap-container{margin-bottom:0}.chart-content:has(.heatmap-container){gap:0;height:100%;padding-bottom:0;margin-bottom:0;justify-content:center;display:flex}.chart-legend{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:auto;padding-top:1rem;border-top:1px solid var(--color-border-default)}.legend-item{display:flex;align-items:center;gap:.375rem;font-size:11px;color:var(--color-text-icon);font-weight:500}.legend-color{width:12px;height:12px;border-radius:2px;display:inline-block;border:1px solid transparent}.heatmap-container{display:flex;flex-direction:column;gap:0;height:auto;flex-shrink:0;overflow:visible;padding:0;margin:0;align-content:start;align-items:center;--heatmap-cell-height: auto;--heatmap-grid-height: auto}.heatmap-y-axis-wrapper{display:flex;flex-direction:row;align-items:center;gap:.5rem;align-self:start;padding-top:0;height:var(--heatmap-grid-height)}.heatmap-y-axis-label{writing-mode:vertical-rl;text-orientation:mixed;font-size:12px;font-weight:400;color:var(--color-text-nav-hover);transform:rotate(180deg);white-space:nowrap;display:flex;align-items:center;justify-content:center;align-self:center;height:100%}.metrics-page.with-sidebar .heatmap-container{height:auto;justify-self:center;margin:0 auto}.metrics-page.with-sidebar .chart-content:has(.heatmap-container){justify-content:center;align-items:center}.metrics-page:not(.with-sidebar) .heatmap-container{justify-self:center;margin:0 auto}.metrics-page:not(.with-sidebar) .chart-content:has(.heatmap-container){justify-content:center;align-items:center}.heatmap-main{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto;gap:.5rem;position:relative;align-items:start;padding:0;margin:0}.metrics-page:not(.with-sidebar) .heatmap-main{align-items:start;gap:.5rem}.heatmap-grid-wrapper{display:flex;flex-direction:column;gap:0}.heatmap-y-axis{display:flex;flex-direction:column;gap:2px;font-size:9px;color:var(--color-text-icon);font-weight:400;padding-right:.75rem;text-align:right;min-width:50px;height:var(--heatmap-grid-height);visibility:visible;opacity:1}.heatmap-y-axis>div{display:flex;align-items:center;justify-content:flex-end;min-height:0;color:var(--color-text-icon);visibility:visible;opacity:1;margin:0;padding:0;height:var(--heatmap-cell-height);line-height:var(--heatmap-cell-height)}.heatmap-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(5,1fr);gap:2px;aspect-ratio:1;width:280px;height:280px;margin:0;padding:0}.metrics-page.with-sidebar .heatmap-grid{width:220px;height:220px}.heatmap-cell{background:var(--color-border-default);border-radius:3px;min-height:0;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--color-text-icon);position:relative;transition:opacity .2s ease}.heatmap-risk-point{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;box-shadow:0 2px 4px var(--color-black-alpha-20);z-index:1}.heatmap-x-axis-wrapper{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;width:280px;margin-top:.25rem;margin-left:0;margin-bottom:0;padding-left:0;padding-bottom:0}.metrics-page.with-sidebar .heatmap-x-axis-wrapper{width:220px}.heatmap-x-axis{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;font-size:9px;color:var(--color-text-icon);font-weight:400;text-align:center;width:100%;visibility:visible;opacity:1;margin:0;padding:0}.heatmap-x-axis>div{color:var(--color-text-icon);visibility:visible;opacity:1;display:flex;align-items:center;justify-content:center;margin:0;padding:0}.heatmap-x-axis-label{font-size:12px;font-weight:400;color:var(--color-text-nav-hover);text-align:center;width:100%;padding-left:0}.heatmap-legend{position:relative;top:auto;right:auto;display:flex;flex-direction:column;gap:.5rem;background:transparent;padding:.5rem 0;margin-top:1rem;margin-bottom:0;margin-left:auto;margin-right:auto;box-shadow:none;border:none;width:auto;max-width:100%;justify-content:center;align-items:center;z-index:1;visibility:visible}.heatmap-legend .legend-title{margin-bottom:0;margin-right:0;white-space:nowrap;text-align:center;width:100%}.legend-items-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:.75rem;justify-content:center;align-items:center}.legend-title{font-size:12px;font-weight:600;color:var(--color-text-nav-hover);margin-bottom:.25rem}.heatmap-legend .legend-item{display:flex;flex-direction:row;align-items:center;gap:.5rem;font-size:11px;color:var(--color-text-icon);font-weight:500}.metrics-explorer-section{margin-bottom:2rem}.metrics-explorer-header{display:flex;justify-content:space-between;align-items:baseline}.metrics-explorer-filter-dropdown{min-width:280px}.metrics-explorer-tabs-wrapper{display:flex;align-items:center;position:relative;margin-bottom:1.5rem;border-bottom:1px solid var(--color-border-default);gap:0}.metrics-tabs-arrow{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:50%;cursor:pointer;color:var(--color-text-icon);flex-shrink:0;transition:all .2s;z-index:2;position:relative}.metrics-tabs-arrow:hover{background:var(--color-bg-subtle);color:var(--color-brand-primary);border-color:var(--color-brand-primary)}.metrics-tabs-arrow-left{margin-right:8px;order:1}.metrics-tabs-arrow-right{margin-left:8px;order:3}.metrics-explorer-tabs{display:flex;gap:0;flex:1;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;margin-bottom:-1px;scroll-behavior:smooth;order:2}.metrics-explorer-tabs::-webkit-scrollbar{display:none}.metrics-tab{padding:.75rem .65rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;font-size:16px;color:var(--color-text-icon)!important;font-weight:400;white-space:nowrap;transition:all .2s}.metrics-tab:hover{color:var(--color-brand-primary)}.metrics-tab.active{color:var(--color-brand-primary)!important;border-bottom:2px solid var(--color-brand-primary);font-weight:400;font-size:16px}.metrics-explorer-grid{display:grid;grid-template-columns:repeat(3,1fr);align-items:stretch;gap:1rem}.metrics-explorer-grid>.mekc-flip-container{height:100%}.metric-explorer-card{background:var(--color-white);border-radius:8px;padding:1rem;display:flex;flex-direction:column;position:relative;transition:all .2s;border:1px solid var(--color-border-primary);min-height:150px}.metric-explorer-card:hover{box-shadow:0 2px 8px var(--color-black-alpha-10);border-color:var(--color-border-primary)}.metric-card-header{display:flex;align-items:flex-start;gap:.75rem}.metric-card-icon{width:36px;height:36px;background:var(--color-bg-brand-subtle);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.metric-card-icon svg{width:20px;height:20px}.metric-card-title-group{flex:1;display:flex;flex-direction:column;gap:.25rem}.metric-card-title{font-size:14px;color:var(--color-text-primary);font-weight:600;line-height:1.2;margin:0}.metric-card-subtitle{font-size:12px;color:var(--color-text-icon);font-weight:400;line-height:1.4;margin:0}.metric-card-value{font-size:32px;font-weight:600;color:var(--color-text-primary);line-height:1;text-align:left;margin:0;flex:1;display:flex;align-items:flex-end;justify-content:flex-start}.metric-card-footer{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto}.metric-card-description{font-size:12px;color:var(--color-text-icon);font-weight:400;line-height:1.4;margin:0;flex:1}.metric-card-trend{font-size:11px;font-weight:600;padding:.25rem .5rem;border-radius:12px;display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}.metric-card-trend.trend-up,.metric-card-trend.trend-down{background:var(--color-bg-brand-subtle);color:var(--color-brand-accent)}.chart-legend-external{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;padding:8px 0 4px;margin-top:4px;font-size:14px}.performance-trends-pagination{display:flex;align-items:center;justify-content:center;gap:30px;margin-top:16px;padding:8px 0}.performance-trends-pagination-btn{width:52px;height:32px;border:1px solid var(--color-border-primary);background:var(--color-white);padding:4px 12px!important;border-radius:6px;cursor:pointer;color:var(--color-text-nav-hover);font-size:24px;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}.performance-trends-pagination-btn:hover:not(:disabled){border-color:var(--color-brand-lavender);box-shadow:0 1px 4px var(--color-black-alpha-08)}.performance-trends-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.performance-trends-pagination-pages{display:flex;align-items:center;gap:10px}.performance-trends-pagination-page{min-width:35px;height:32px;padding:4px 16px!important;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--color-text-primary);font-size:14px;cursor:pointer;transition:all .2s ease}.performance-trends-pagination-page:hover{background:var(--color-border-default)}.performance-trends-pagination-page.active{background:var(--color-brand-core-100);box-shadow:0 1px 4px var(--color-black-alpha-08)}.recharts-legend-item-text{font-size:14px;color:var(--color-text-icon)!important}.recharts-default-tooltip{font-size:12px}.recharts-legend-wrapper{bottom:0!important;gap:2px!important;font-size:14px!important}.no-data-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;grid-column:1 / -1}.chart-placeholder .no-data-container{padding:40px 20px}.no-data-title{font-size:16px;font-weight:600;color:var(--color-text-night);margin:0 0 8px}.no-data-subtitle{font-size:14px;color:var(--color-text-placeholder);margin:0 0 20px}.no-data-retry-btn{background:var(--gradient-brand-purple-vertical);color:var(--color-white);border:none;padding:10px 32px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.no-data-retry-btn:hover{opacity:.9}.recharts-text,.recharts-cartesian-axis-tick-value{font-size:8px!important}.heatmap-drilldown{display:flex;flex-direction:column;gap:16px}.heatmap-drilldown-zone-badge{display:inline-flex;align-items:center;padding:4px 14px;border-radius:20px;font-size:12px;font-weight:600;color:var(--color-white);width:fit-content}.heatmap-drilldown-empty{color:var(--color-text-secondary);font-size:14px;text-align:center;padding:32px 0}.heatmap-drilldown-table-wrapper{overflow-x:auto;border:1px solid var(--color-border-default);border-radius:10px}.heatmap-drilldown-table{width:100%;border-collapse:collapse;font-size:13px}.heatmap-drilldown-table thead tr{background:var(--color-bg-subtle, #f8fafc);border-bottom:1px solid var(--color-border-default)}.heatmap-drilldown-table th{padding:10px 14px;text-align:left;font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.heatmap-drilldown-table tbody tr{border-bottom:1px solid var(--color-border-default);transition:background .12s ease}.heatmap-drilldown-table tbody tr:last-child{border-bottom:none}.heatmap-drilldown-table tbody tr:hover{background:var(--color-bg-subtle, #f8fafc)}.heatmap-drilldown-table td{padding:12px 14px;color:var(--color-text-primary);vertical-align:top}.heatmap-drilldown-td-id{font-size:11px;font-weight:600;color:var(--color-text-secondary);white-space:nowrap;letter-spacing:.04em}.heatmap-drilldown-td-title-text{font-weight:600;color:var(--color-text-primary);font-size:13px;line-height:1.4;margin-bottom:4px}.heatmap-drilldown-td-desc{font-size:12px;color:var(--color-text-secondary);line-height:1.5}.heatmap-drilldown-item-status{font-size:11px;font-weight:600;padding:3px 10px;border-radius:12px;white-space:nowrap;display:inline-block}.heatmap-drilldown-item-status[data-status=open]{background:#ef44441a;color:#dc2626}.heatmap-drilldown-item-status[data-status=mitigating]{background:#f59e0b1f;color:#d97706}.heatmap-drilldown-item-status[data-status=monitoring]{background:#3b82f61a;color:#2563eb}.heatmap-drilldown-item-status[data-status=resolved]{background:#10b9811a;color:#059669}.heatmap-drilldown-td-desc-cell{font-size:13px;color:var(--color-text-primary);line-height:1.45;max-width:260px}.heatmap-drilldown-td-category,.heatmap-drilldown-td-stage{font-size:13px;color:var(--color-text-primary);white-space:nowrap}.heatmap-impact-badge{display:inline-block;padding:3px 12px;border-radius:20px;font-size:12px;font-weight:500;white-space:nowrap;border:1px solid transparent}.heatmap-impact-badge[data-impact="v.low"]{background:#10b9810f;border-color:#10b98140;color:#34d399}.heatmap-impact-badge[data-impact=low]{background:#10b9811a;border-color:#10b98159;color:#059669}.heatmap-impact-badge[data-impact=med],.heatmap-impact-badge[data-impact=medium]{background:#f59e0b1a;border-color:#f59e0b66;color:#d97706}.heatmap-impact-badge[data-impact=high]{background:#ef44441a;border-color:#ef444459;color:#dc2626}.heatmap-impact-badge[data-impact="v.high"],.heatmap-impact-badge[data-impact=critical]{background:#8b00001a;border-color:#8b000059;color:#991b1b}.hse-chart-clickable,.hse-chart-clickable svg,.hse-chart-clickable svg *{cursor:pointer!important}.hse-drilldown-overlay{position:fixed;inset:0;z-index:1200;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px}.hse-drilldown-modal{background:var(--color-white, #fff);border-radius:10px;box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;width:min(900px,95vw);max-height:80vh;overflow:hidden}.hse-drilldown-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--color-border-default);flex-shrink:0}.hse-drilldown-title{display:flex;flex-direction:column;gap:2px}.hse-drilldown-title-text{font-size:16px;font-weight:700;color:var(--color-text-primary)}.hse-drilldown-subtitle{font-size:13px;font-weight:400;color:var(--color-text-secondary)}.hse-drilldown-close{background:none;border:none;cursor:pointer;font-size:20px;color:var(--color-text-secondary);padding:4px 8px;border-radius:4px;line-height:1}.hse-drilldown-close:hover{background:var(--color-bg-muted, #f3f4f6);color:var(--color-text-primary)}.hse-drilldown-body{overflow-y:auto;flex:1}.hse-drilldown-state{padding:40px 20px;text-align:center;font-size:13px;color:var(--color-text-secondary)}.hse-drilldown-state--error{color:#dc2626}.hse-drilldown-table-wrapper{overflow-x:auto}.hse-drilldown-table{width:100%;border-collapse:collapse;font-size:13px}.hse-drilldown-table thead th{background:var(--color-bg-muted, #f9fafb);padding:10px 14px;text-align:left;font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border-default);white-space:nowrap}.hse-drilldown-table tbody tr{border-bottom:1px solid var(--color-border-default);transition:background .12s}.hse-drilldown-table tbody tr:last-child{border-bottom:none}.hse-drilldown-table tbody tr:hover{background:var(--color-bg-muted, #f9fafb)}.hse-drilldown-table td{padding:10px 14px;color:var(--color-text-primary);vertical-align:middle}.hse-drilldown-td-id{font-size:13px;color:var(--color-text-secondary);white-space:nowrap;width:40px}.hse-drilldown-td-type{white-space:nowrap;font-size:13px}.hse-drilldown-td-desc{max-width:220px;font-size:13px}.hse-drilldown-td-stage,.hse-drilldown-td-date{white-space:nowrap;font-size:13px}.hse-drilldown-td-injured{text-align:center;font-size:13px;font-weight:500}.hse-drilldown-severity{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;white-space:nowrap}.hse-drilldown-severity--high,.hse-drilldown-severity--critical{background:#ef44441a;color:#dc2626}.hse-drilldown-severity--medium,.hse-drilldown-severity--med{background:#f59e0b1a;color:#d97706}.hse-drilldown-severity--low{background:#22c55e1a;color:#16a34a}.hse-drilldown-status{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;white-space:nowrap}.hse-drilldown-status--open{background:#ef444414;color:#dc2626}.hse-drilldown-status--closed{background:#22c55e1a;color:#16a34a}.hse-drilldown-status--in-progress,.hse-drilldown-status--in-review{background:#f59e0b1a;color:#d97706}.hse-drilldown-footer{padding:10px 14px;font-size:12px;color:var(--color-text-secondary);border-top:1px solid var(--color-border-default);background:var(--color-bg-muted, #f9fafb)}.kpi-card{background:var(--color-white);border:1px solid var(--color-border-default);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:1rem;transition:all .2s;cursor:pointer;position:relative}.kpi-card:hover{box-shadow:0 4px 12px var(--color-black-alpha-08);border-color:var(--color-border-primary)}.kpi-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border-light);margin-bottom:.5rem}.kpi-card-title-group{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.kpi-card-icon{flex-shrink:0;width:20px;height:20px;color:var(--color-brand-primary);display:flex;align-items:center;justify-content:center}.kpi-card-title{font-size:16px;font-weight:600;color:var(--color-text-primary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;cursor:text;-webkit-user-select:none;user-select:none}.kpi-card-title:hover{color:var(--color-brand-primary)}.kpi-card-title-input{font-size:16px;font-weight:600;color:var(--color-text-primary);line-height:1.4;border:2px solid var(--color-brand-primary);border-radius:4px;padding:2px 6px;background:var(--color-white);width:100%;min-width:0;outline:none;margin-bottom:.5rem}.kpi-card-actions{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.kpi-card-action-btn{width:28px;height:28px;border:none;background:transparent;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-icon);transition:all .2s;position:relative}.kpi-card-action-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-nav-hover)}.kpi-card-action-btn.pinned svg{opacity:1}.kpi-card-action-btn:not(.pinned) img{opacity:.6}.kpi-card-action-btn img{width:14px;height:14px;transition:all .2s}.kpi-card-tag-btn:hover{background:var(--color-bg-subtle)}.kpi-card-delete-btn:hover{background:var(--color-danger-bg)}.kpi-card-delete-btn:hover img{filter:brightness(0) saturate(100%) invert(27%) sepia(95%) saturate(7471%) hue-rotate(347deg) brightness(.9) contrast(.9)}.kpi-card-content{flex:1;min-height:200px;height:200px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.kpi-card-chart-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;width:100%;height:100%;background:var(--color-bg-muted);border-radius:8px;padding:1rem}.kpi-chart-icon{width:48px;height:48px;color:var(--color-brand-primary);opacity:.5;display:flex;align-items:center;justify-content:center}.kpi-chart-label{font-size:12px;color:var(--color-text-icon);text-transform:capitalize}.kpi-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;border-top:1px solid var(--color-bg-subtle)}.kpi-card-meta{display:flex;align-items:center;gap:.5rem}.kpi-card-time{font-size:16px;color:var(--color-text-icon)}.kpi-card-view-details{font-size:14px;color:var(--color-brand-primary);font-weight:500;background:transparent;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:all .2s}.kpi-card-view-details:hover{background:var(--color-bg-brand-subtle);color:var(--color-text-purple-alt)}.kpi-card-tag-wrapper{position:relative}.kpi-card-tag-btn.has-tags{opacity:1}.kpi-tag-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 4px 12px var(--color-black-alpha-15);min-width:220px;z-index:1000;overflow:hidden}.kpi-tag-dropdown-title{font-size:16px;font-weight:600;color:var(--color-text-primary);padding:1rem 1rem .75rem;margin:0;border-bottom:1px solid var(--color-border-primary)}.kpi-tag-options{padding:.75rem 1rem;display:flex;flex-direction:row;gap:.5rem;flex-wrap:wrap}.kpi-tag-option{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-radius:6px;cursor:pointer;transition:all .2s;font-size:16px;color:var(--color-text-icon);background:var(--color-bg-neutral-wash-40);border:1px solid var(--color-border-default);min-height:36px}.kpi-tag-option:hover{background:var(--color-bg-subtle)}.kpi-tag-option.selected{background:var(--color-bg-brand-subtle);border-color:var(--color-brand-primary);color:var(--color-text-secondary)}.kpi-tag-option span{flex:1}.kpi-tag-remove{background:none;border:none;color:var(--color-brand-primary);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;transition:background .2s;margin-left:.5rem;flex-shrink:0}.kpi-tag-remove:hover{background:var(--color-vivid-alpha-10)}.kpi-tag-remove svg{width:10px;height:10px;stroke-width:2.5}.kpi-tag-dropdown-divider{height:1px;background:var(--color-border-default);margin:0;width:100%}.kpi-tag-dropdown-actions{display:flex;gap:.75rem;padding:.5rem;border-top:none}.kpi-tag-cancel-btn{flex:1;padding:.625rem 1rem;background:var(--color-white);border:none;border-radius:6px;font-size:13px;font-weight:500;color:var(--color-brand-primary);cursor:pointer;transition:all .2s;text-align:center}.kpi-tag-cancel-btn:hover{background:var(--color-bg-muted)}.kpi-tag-add-btn{flex:1;padding:.625rem 1rem;background:var(--color-white);border:none;border-radius:6px;font-size:13px;font-weight:500;color:var(--color-brand-primary);cursor:pointer;transition:all .2s;text-align:center;text-transform:uppercase}.kpi-tag-add-btn:hover{background:var(--color-bg-brand-subtle)}.kpi-detail-view{width:100%;height:100%;display:flex;flex-direction:column;background:var(--color-white);position:relative;z-index:1;pointer-events:auto}.kpi-detail-header{display:flex;align-items:center;gap:1rem;padding:1.5rem 2rem;border-bottom:1px solid var(--color-border-default)}.kpi-detail-back-btn{width:40px;height:40px;border:none;background:transparent;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-nav-hover);transition:all .2s}.kpi-detail-back-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-primary)}.kpi-detail-title{font-size:28px;font-weight:600;color:var(--color-text-primary);margin:0}.kpi-detail-content{flex:1;overflow-y:auto;padding:2rem;display:flex;flex-direction:column;gap:2rem}.kpi-detail-section{border:1px solid var(--color-border-primary)!important;display:flex;flex-direction:column;gap:1rem;padding:1rem;border-radius:16px}.kpi-detail-section-header{display:flex;flex-direction:column;gap:.25rem}.kpi-detail-section-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0}.kpi-detail-section-subtitle{font-size:12px;color:var(--color-text-icon);margin:0}.kpi-detail-chart-container{background:var(--color-white)}.kpi-detail-table-container{background:var(--color-white);border-radius:12px;overflow:hidden;margin-top:1rem}.kpi-detail-table{width:100%;border-collapse:collapse}.kpi-detail-table th{padding:1rem;text-align:left;font-size:14px;font-weight:600;color:var(--color-text-icon);border-bottom:1px solid var(--color-border-primary)}.kpi-detail-table td{padding:1rem;text-align:left;font-weight:400;font-size:14px;color:var(--color-text-primary);border-bottom:1px solid var(--color-border-primary)}.kpi-detail-table tbody tr:hover{background:var(--color-bg-muted)}.positive-change{color:var(--color-text-positive);font-weight:500}.negative-change{color:var(--color-badge);font-weight:500}.kpi-detail-view .recharts-legend-item-text{font-size:14px}.confirm-modal.modal-content,.confirm-modal .modal-content{max-width:420px;width:100%}.confirm-modal .modal-header{padding:12px 16px;align-items:center}.confirm-modal .modal-title-section{align-items:center}.confirm-modal .modal-icon{width:36px;height:36px;border-radius:8px}.confirm-modal .modal-icon svg{width:18px;height:18px}.confirm-modal-danger .modal-icon{background:var(--color-danger-bg, #fef2f2)}.confirm-modal-danger .modal-icon svg{color:var(--color-danger, #dc2626)}.confirm-modal .modal-title{font-size:17px;margin-bottom:0}.confirm-modal .modal-body{padding:0;display:flex;flex-direction:column}.confirm-modal-message{margin:0;padding:16px;font-size:14px;line-height:1.5;color:var(--color-text-body-secondary, var(--color-text-icon))}.confirm-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:12px 16px;border-top:1px solid var(--color-border-default);flex-shrink:0}@media(max-width:768px){.confirm-modal.modal-content,.confirm-modal .modal-content{max-width:calc(100vw - 2rem)}.confirm-modal-footer{flex-direction:column-reverse;padding:12px}.confirm-modal-footer .ui-btn{width:100%}}.published-card{background:var(--color-white);border:1px solid var(--color-border-default);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:1rem;transition:all .2s;cursor:pointer;position:relative}.published-card:hover{box-shadow:0 4px 12px var(--color-black-alpha-08);border-color:var(--color-border-primary)}.published-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border-light)}.published-card-title-group{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.published-card-title{font-size:16px;font-weight:600;color:var(--color-text-primary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;cursor:text;-webkit-user-select:none;user-select:none;max-width:100%;word-wrap:break-word;transition:color .2s ease}.published-card-title:hover{color:var(--color-brand-vivid)}.published-card-title:hover{color:var(--color-brand-primary)}.published-card-title-input{font-size:16px;font-weight:600;color:var(--color-text-primary);line-height:1.4;border:2px solid var(--color-brand-primary);border-radius:4px;padding:2px 6px;background:var(--color-white);width:100%;min-width:0;outline:none;margin-bottom:.5rem}.published-card-actions{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.published-card-action-btn{width:28px;height:28px;border:none;background:transparent;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-icon);transition:all .2s;position:relative}.published-card-action-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-nav-hover)}.published-card-action-btn.pinned svg{opacity:1}.published-card-action-btn:not(.pinned) img{opacity:.6}.published-card-action-btn img{width:14px;height:14px;transition:all .2s}.published-card-delete-btn:hover{background:var(--color-danger-bg)}.published-card-delete-btn:hover img{filter:brightness(0) saturate(100%) invert(27%) sepia(95%) saturate(7471%) hue-rotate(347deg) brightness(.9) contrast(.9)}.published-card-tag-wrapper{position:relative}.published-card-tag-btn.has-tags img{opacity:1}.published-tag-dropdown{position:absolute;top:100%;right:0;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:12px;box-shadow:0 4px 16px var(--color-black-alpha-12);min-width:220px;z-index:100;padding:1rem;margin-top:8px}.published-tag-dropdown-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:1rem}.published-tag-empty,.kpi-tag-empty{margin:0;padding:0 0 .75rem;font-size:13px;line-height:1.4;color:var(--color-text-icon)}.published-tag-options-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1rem}.published-tag-chip{padding:.5rem 1rem;font-size:14px;color:var(--color-text-nav-hover);background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;cursor:pointer;transition:all .2s;text-align:center}.published-tag-chip:hover{border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.published-tag-chip.selected{background:var(--color-bg-brand-subtle);border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.published-tag-actions{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--color-bg-subtle)}.published-tag-cancel-btn{background:transparent;border:none;font-size:14px;font-weight:500;color:var(--color-text-icon);cursor:pointer;padding:.5rem 1rem;transition:color .2s}.published-tag-cancel-btn:hover{color:var(--color-text-primary)}.published-tag-add-btn{background:transparent;border:none;font-size:14px;font-weight:600;color:var(--color-brand-primary);cursor:pointer;padding:.5rem 1rem;transition:all .2s}.published-tag-add-btn:hover{color:var(--color-text-purple-bright)}.published-card-content{flex:1;min-height:200px;height:200px;display:flex;align-items:stretch;justify-content:stretch;position:relative;overflow:hidden}.published-card-content>*{flex:1 1 auto;width:100%;min-width:0;min-height:200px;overflow:hidden}.published-card-content .api-visualization-card,.published-card-content .api-visualization-compact{width:100%;height:100%;min-height:200px;align-self:stretch}.published-card-content .recharts-viz-area{margin:0;padding:0;width:100%;min-height:200px;border:none;box-shadow:none;background:transparent;overflow:hidden}.published-card-content .recharts-viz-area svg,.published-card-content .recharts-viz-area .recharts-wrapper{overflow:hidden!important}.published-card-content .plotly-chart-container-wrapper{border:none;background:transparent;box-shadow:none}.published-card-content .plotly-chart-container-wrapper .plotly-chart-client{border:none;border-radius:0}.published-card-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;width:100%;height:100%;background:var(--color-bg-muted);border-radius:8px;padding:1rem}.published-placeholder-text{font-size:12px;color:var(--color-text-icon)}.published-card-table-preview{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.published-table-scroll{width:100%;height:100%;overflow:auto;border-radius:8px;border:1px solid var(--color-border-default)}.published-table-mini{width:100%;border-collapse:collapse;font-size:11px}.published-table-mini thead{background:var(--color-bg-muted);position:sticky;top:0}.published-table-mini th{padding:8px;text-align:left;font-weight:600;color:var(--color-text-icon);border-bottom:1px solid var(--color-border-default);font-size:10px}.published-table-mini td{padding:8px;color:var(--color-text-primary);border-bottom:1px solid var(--color-bg-subtle);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.published-table-mini tbody tr:hover{background:var(--color-bg-muted)}.more-rows-indicator td{text-align:center;color:var(--color-brand-primary);font-weight:500;font-style:italic}.published-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;border-top:1px solid var(--color-bg-subtle)}.published-card-meta{display:flex;align-items:center;gap:.5rem}.published-card-time{font-size:16px;color:var(--color-text-icon)}.published-card-view-details{font-size:14px;color:var(--color-brand-primary);font-weight:500;background:transparent;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:all .2s}.published-card-view-details:hover{background:var(--color-bg-brand-subtle);color:var(--color-text-purple-alt)}@media(max-width:768px){.published-card{padding:.875rem}.published-card-title{font-size:14px}.published-table-mini{font-size:10px}.published-table-mini th,.published-table-mini td{padding:6px}}.published-detail-view{width:100%;height:100%;display:flex;flex-direction:column;background:var(--color-white);position:relative;z-index:1;pointer-events:auto}.published-detail-header{display:flex;align-items:center;gap:1rem;padding:1.5rem 2rem;border-bottom:1px solid var(--color-border-default)}.published-detail-back-btn{width:40px;height:40px;border:none;background:transparent;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-nav-hover);transition:all .2s}.published-detail-back-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-primary)}.published-detail-title{font-size:28px;font-weight:600;color:var(--color-text-primary);margin:0}.published-detail-content{flex:1;overflow-y:auto;padding:2rem;display:flex;flex-direction:column;gap:2rem;scrollbar-width:none;-ms-overflow-style:none}.published-detail-content::-webkit-scrollbar{display:none}.published-detail-section{border:1px solid var(--color-border-primary)!important;display:flex;flex-direction:column;padding-bottom:2px!important;padding:1rem;border-radius:16px}.published-detail-section-header{display:flex;flex-direction:column;gap:.25rem}.published-detail-section-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0}.published-detail-section-subtitle{font-size:12px;color:var(--color-text-icon);margin:0}.published-detail-chart-container{background:var(--color-white);min-height:500px;display:flex;align-items:stretch;justify-content:center;padding:0;border:none;border-radius:0;flex-direction:column}.published-detail-recharts-wrapper{width:100%;min-height:500px;align-self:stretch}.published-detail-recharts-wrapper .api-visualization-detail,.published-detail-recharts-wrapper .recharts-viz-area{width:100%;margin:0;padding:0;border:none;box-shadow:none;background:transparent}.published-detail-table-container{background:var(--color-white);border-radius:12px;overflow:auto;margin-top:1rem;scrollbar-width:thin;scrollbar-color:#d2d5f082 transparent}.published-detail-table-container::-webkit-scrollbar{width:2px;height:2px}.published-detail-table-container::-webkit-scrollbar-track{background:transparent}.published-detail-table-container::-webkit-scrollbar-thumb{background-color:#c8c8c899;border-radius:2px}.published-detail-table-container::-webkit-scrollbar-thumb:hover{background-color:#b4b4b4cc}.published-detail-table-container::-webkit-scrollbar-corner{background:transparent}.published-detail-table{width:100%;border-collapse:collapse}.published-detail-table th{padding:1rem;text-align:left;font-size:14px;font-weight:600;color:var(--color-text-icon);border-bottom:1px solid var(--color-border-primary)}.published-detail-table td{padding:1rem;text-align:left;font-weight:400;font-size:14px;color:var(--color-text-primary);border-bottom:1px solid var(--color-border-primary)}.published-detail-table tbody tr:hover{background:var(--color-bg-muted)}.published-detail-view .recharts-legend-item-text{font-size:14px}@media(max-width:768px){.published-detail-header{padding:1rem}.published-detail-title{font-size:20px}.published-detail-content{padding:1rem}.published-detail-table th,.published-detail-table td{padding:.75rem;font-size:12px}}.user-board-page{flex:1;overflow:hidden;height:calc(100vh - 60px);background:var(--color-bg-app);width:100%;transition:padding-right .3s ease;box-sizing:border-box}.user-board-page.full-width{padding-right:0}.user-board-container{display:flex;height:calc(100vh - 60px);background:var(--color-bg-app);position:relative}.mobile-menu-toggle{display:none;position:fixed;top:70px;left:1rem;z-index:201;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;padding:.5rem;cursor:pointer;box-shadow:0 2px 4px var(--color-black-alpha-10);transition:all .2s;color:var(--color-text-nav-hover)}.mobile-menu-toggle:hover{background:var(--color-bg-muted);box-shadow:0 4px 8px var(--color-black-alpha-15)}.mobile-menu-toggle svg{width:20px;height:20px}.mobile-menu-overlay{display:none;position:fixed;inset:60px 0 0;background:var(--color-black-alpha-50);z-index:199;animation:fadeIn .3s ease}.user-board-sidebar{width:190px;background:var(--color-bg-subtle);border-right:1px solid var(--color-border-default);display:flex;flex-direction:column;transition:width .3s ease;flex-shrink:0;overflow:hidden;position:relative;z-index:10}.user-board-sidebar.collapsed{width:60px}.sidebar-content{display:flex;flex-direction:column;height:100%;padding:1.25rem 1rem;gap:1.25rem;position:relative;overflow:hidden;background:var(--color-bg-muted);border-right:1px solid var(--color-border-primary);width:190px;z-index:10;pointer-events:auto;transition:width .3s ease,padding .3s ease}.user-board-sidebar.collapsed .sidebar-content{width:60px;padding:1.25rem .75rem}.mobile-close-btn{display:none;position:absolute;top:1rem;right:1rem;width:32px;height:32px;border:none;background:var(--color-border-default);border-radius:6px;cursor:pointer;align-items:center;justify-content:center;transition:all .2s;color:var(--color-text-icon);z-index:10}.mobile-close-btn:hover{background:var(--color-border-dotted);color:var(--color-text-nav-hover)}.mobile-close-btn svg{width:18px;height:18px}.sidebar-section{display:flex;flex-direction:column;gap:.5rem}.sidebar-section-title{font-weight:600;font-size:20px;line-height:30px;letter-spacing:0px;color:var(--color-text-primary);margin:0}.sidebar-section-description{font-weight:400;font-style:normal;font-size:12px;line-height:18px;letter-spacing:0px;color:var(--color-text-icon);margin:0}.sidebar-nav{display:flex;flex-direction:column;gap:.25rem}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background:none;border:none;border-radius:6px;cursor:pointer;font-size:16px;line-height:24px;color:var(--color-text-primary);font-weight:400;text-align:left;transition:all .2s}.nav-item:hover{background:var(--color-border-default)}.nav-item-active{color:var(--color-brand-primary);font-weight:500;font-weight:400;font-style:Regular;font-size:16px;line-height:24px;letter-spacing:0px;text-align:center}.nav-item svg{flex-shrink:0;width:16px;height:16px}.nav-item span{white-space:nowrap}.user-board-sidebar.collapsed .sidebar-section-description,.user-board-sidebar.collapsed .boards-section-title,.user-board-sidebar.collapsed .board-item,.user-board-sidebar.collapsed .nav-item span{display:none}.user-board-sidebar.collapsed .nav-item{justify-content:center;padding:.625rem;position:relative}.user-board-sidebar.collapsed .nav-item:hover:after{content:attr(data-title);position:absolute;left:calc(100% + .5rem);background:var(-color-text-secondary);color:var(--color-white);padding:.5rem .75rem;border-radius:6px;font-size:13px;white-space:nowrap;z-index:1000;pointer-events:none;box-shadow:0 4px 12px var(--color-black-alpha-15)}.user-board-sidebar.collapsed .nav-item:hover:before{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:var(--color-text-secondary);z-index:1001;pointer-events:none}.boards-section{margin-top:auto;margin-bottom:.5rem;display:flex;flex-direction:column;min-height:0;flex:1 1 auto;overflow:hidden;padding-top:1rem;border-top:1px solid var(--color-border-default)}.boards-section-title{font-weight:400;font-style:Regular;font-size:16px;line-height:24px;letter-spacing:.8px;text-transform:uppercase;color:var(--color-text-icon);margin:0 0 .5rem}.boards-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.125rem;overflow-y:auto;flex:1;min-height:0;flex-shrink:1}.boards-list::-webkit-scrollbar{width:6px}.boards-list::-webkit-scrollbar-track{background:transparent}.boards-list::-webkit-scrollbar-thumb{background:var(--color-border-dotted);border-radius:3px}.boards-list::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.board-item{padding:.25rem .75rem;font-size:16px;color:var(--color-text-icon);line-height:20px;font-weight:400;cursor:pointer;border-radius:4px;transition:background .2s}.board-item:hover{background:var(--color-border-default)}.board-item:before{content:"•";margin-right:.5rem;color:var(--color-text-tertiary)}.board-item-active{background:var(--color-border-default);color:var(--color-brand-primary);font-weight:500}.board-item-active:before{color:var(--color-brand-primary)}.sidebar-footer{margin-top:.5rem;display:flex;flex-direction:column;gap:.75rem;padding-top:1rem;flex-shrink:0;border-top:1px solid var(--color-border-default)}.new-board-btn{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--color-brand-primary);color:var(--color-white);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;width:100%;justify-content:center;flex-shrink:0}.new-board-btn:hover{background:var(--color-text-purple-alt)}.new-board-btn svg{width:16px;height:16px;flex-shrink:0}.user-board-sidebar.collapsed .new-board-btn span{display:none}.user-board-sidebar.collapsed .new-board-btn{width:auto;padding:.75rem;justify-content:center}.sidebar-collapse-btn{height:32px;border:2px solid var(--color-border-primary);background:transparent;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;color:var(--color-text-neutral-light);align-self:center;flex-shrink:0;padding:0rem 4rem;position:relative;z-index:10}.sidebar-collapse-btn:hover{background:var(--color-border-primary);color:var(--color-text-nav-hover)}.user-board-sidebar.collapsed .sidebar-collapse-btn{transform:rotate(180deg);padding:0rem 1rem;width:auto;min-width:32px}.user-board-sidebar.collapsed .sidebar-section-title{display:none}.user-board-main{flex:1;background:var(--color-white);overflow:hidden;display:flex;flex-direction:column;min-height:0;position:relative;z-index:1}.user-board-header{padding:1rem 2rem;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:1rem}.user-board-header>div{display:flex;align-items:center;gap:.75rem}.user-board-back-btn{width:32px;height:32px;border:1px solid var(--color-border-default);border-radius:6px;background:var(--color-white);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-icon);transition:all .2s;flex-shrink:0}.user-board-back-btn:hover{background:var(--color-bg-muted);border-color:var(--color-border-primary);color:var(--color-text-nav-hover)}.user-board-title{font-size:32px;font-weight:600;color:var(--color-text-primary);margin:0}.user-board-header-actions{display:flex;align-items:center;gap:.5rem}.user-board-delete-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem;border:1px solid var(--color-border-default);border-radius:6px;background:var(--color-white);color:var(--color-text-icon);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.user-board-delete-btn:hover{border-color:var(--color-danger, #dc2626);color:var(--color-danger, #dc2626);background:#dc26260d}.user-board-delete-btn svg{flex-shrink:0}.user-board-project-filter{padding:.5rem .75rem;border:1px solid var(--color-border-default);border-radius:6px;font-size:14px;color:var(--color-text-nav-hover);background:var(--color-white);cursor:pointer;transition:all .2s}.user-board-project-filter:hover{border-color:var(--color-border-primary)}.user-board-project-filter:focus{outline:none;border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-vivid-alpha-10)}.user-board-download-btn{width:36px;height:36px;border:1px solid var(--color-border-default);border-radius:6px;background:var(--color-white);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-icon);transition:all .2s}.user-board-download-btn:hover{background:var(--color-bg-muted);border-color:var(--color-border-primary);color:var(--color-text-nav-hover)}.user-board-dashboard-active-filters{margin:0 1.5rem 1rem}.user-board-suggested-commands{margin-bottom:1.5rem;padding:0 1.5rem}.suggested-commands-header{font-size:10px;color:var(--color-text-nav-hover);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.suggested-commands-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.suggested-command-btn{padding:.625rem .75rem;background:var(--color-bg-subtle);border:none;border-radius:6px;font-size:13px;color:var(--color-text-nav-hover);font-weight:400;text-align:left;cursor:pointer;transition:all .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suggested-command-btn:hover{background:var(--color-border-default)}.user-board-suggested-commands-separator{height:1px;background:var(--color-border-default);margin:1rem 1.5rem;border:none}.user-board-empty-state{flex:1;border:2px solid var(--color-border-primary);background:var(--color-white);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:1.5rem 1rem;text-align:center;min-height:0;border-radius:16px;overflow:hidden}.user-board-empty-state-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary);flex-shrink:0}.user-board-empty-state-icon img{width:64px;height:64px;object-fit:contain}.user-board-empty-state-title{font-size:28px;font-weight:600;color:var(--color-text-primary);margin:0;flex-shrink:0}.user-board-empty-state-description{font-size:16px;color:var(--color-text-icon);margin:0;max-width:500px;font-weight:400;line-height:1.4;flex-shrink:0}.user-board-add-widget-btn,.user-board-add-widget-btn-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--color-brand-purple-dark);color:var(--color-white);border:none;border-radius:8px;font-size:16px;font-weight:400;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px var(--color-vivid-alpha-20);flex-shrink:0}.user-board-add-widget-btn-header{padding:.5rem 1rem;font-size:13px}.user-board-add-widget-btn:hover,.user-board-add-widget-btn-header:hover{background:var(--color-text-purple-alt);box-shadow:0 4px 8px var(--color-vivid-alpha-30)}.user-board-add-widget-btn:active,.user-board-add-widget-btn-header:active{transform:translateY(1px)}.user-board-add-widget-btn svg,.user-board-add-widget-btn-header svg{width:20px;height:20px;flex-shrink:0}.user-board-add-widget-btn-header svg{width:16px;height:16px}.user-board-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1rem;flex-shrink:0}.user-board-step-card{background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px;padding:1rem;display:flex;gap:.75rem;align-items:center;justify-content:center;transition:all .2s;flex-direction:column;text-align:center}.user-board-step-card:hover{box-shadow:0 2px 8px var(--color-black-alpha-08);border-color:var(--color-border-primary)}.user-board-step-number{width:48px;height:48px;border-radius:12px;color:var(--color-text-primary);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:400;flex-shrink:0}.user-board-step-card:nth-child(1) .user-board-step-number{background:var(--color-brand-primary-alpha-10)}.user-board-step-card:nth-child(2) .user-board-step-number{background:var(--color-accent-blue-alpha-10)}.user-board-step-card:nth-child(3) .user-board-step-number{background:var(--color-brand-purple-dark-alpha-10)}.user-board-step-content{flex:1;display:flex;flex-direction:column;gap:.5rem;align-items:center;text-align:center}.user-board-step-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0}.user-board-step-description{font-size:16px;color:var(--color-text-icon);line-height:24px;margin:0;font-weight:400;line-height:1.4}.user-board-dashboard-content{border-top:1px solid var(--color-border-light);flex:1;flex-direction:column;padding:2rem;overflow-y:auto;min-height:0;background:var(--color-bg-neutral-light);scrollbar-width:none;-ms-overflow-style:none}.user-board-dashboard-content::-webkit-scrollbar{display:none}.user-board-dashboard-placeholder{font-size:16px;color:var(--color-text-icon);margin:0}.user-board-api-state{display:flex;align-items:center;justify-content:center;flex:1;min-height:320px;padding:2rem}.user-board-api-error{max-width:520px;width:100%}.user-board-sidebar-status{margin:.5rem 0 0;padding:0 .25rem;font-size:13px;line-height:1.45;color:var(--color-text-icon)}.user-board-sidebar-status-error{color:var(--color-danger, #dc2626)}.user-board-empty-kpis{display:flex;align-items:center;justify-content:center;min-height:240px;padding:3rem 2rem;text-align:center}.kpi-projects-container{display:flex;flex-direction:column;gap:2rem}.kpi-project-section{display:flex;flex-direction:column;gap:1rem}.kpi-project-section-title{font-size:14px;font-weight:600;color:var(--color-text-label-dark);margin:0;padding-bottom:.5rem;border-bottom:1px solid var(--color-border-light);display:flex;align-items:center;gap:.5rem}.kpi-project-folder-icon{width:23px;height:23px;flex-shrink:0}.kpi-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}@media(max-width:768px){.kpi-cards-grid{grid-template-columns:1fr}}.ai-generated-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:2px solid var(--color-border-default)}.ai-generated-section .kpi-project-section-title{display:flex;align-items:center;gap:10px;color:var(--color-brand-vivid)}.ai-generated-section .kpi-project-section-title svg{color:var(--color-brand-vivid)}.ai-generated-badge{display:inline-flex;align-items:center;justify-content:center;background:var(--gradient-publish-vivid);color:var(--color-white);font-size:12px;font-weight:600;padding:4px 10px;border-radius:12px;margin-left:8px}.published-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.ai-generated-projects-container{display:flex;flex-direction:column;gap:2rem}@media(max-width:768px){.published-cards-grid{grid-template-columns:1fr}}.pinned-boards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;padding:1rem 0}.pinned-board-card{background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;padding:1.5rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center}.pinned-board-card:hover{box-shadow:0 2px 8px var(--color-black-alpha-08);border-color:var(--color-brand-primary)}.pinned-board-icon{width:48px;height:48px;background:var(--color-bg-brand-subtle);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--color-brand-primary)}.pinned-board-name{font-size:14px;font-weight:600;color:var(--color-text-primary);margin:0}.no-favorites-boards{padding:3rem 2rem;text-align:center;color:var(--color-text-icon);font-size:14px}@media(max-width:1024px)and (min-width:769px){.user-board-page.with-sidebar{padding-right:0}.user-board-container{position:relative}.user-board-sidebar{position:relative;flex-shrink:0}.user-board-sidebar.collapsed{width:60px}.user-board-main{width:100%}.user-board-title{font-size:28px}.user-board-steps{grid-template-columns:repeat(2,1fr);gap:.75rem}.user-board-step-card{padding:1.25rem}}@media(max-width:768px){.user-board-page{padding:0}.mobile-menu-toggle,.mobile-menu-overlay{display:block}.user-board-container{flex-direction:column;height:auto;min-height:calc(100vh - 60px)}.user-board-sidebar{width:100%;max-width:280px;position:fixed;left:0;top:60px;height:calc(100vh - 60px);z-index:200;transform:translate(-100%);transition:transform .3s ease;box-shadow:2px 0 8px var(--color-black-alpha-15)}.user-board-sidebar.mobile-open{transform:translate(0)}.user-board-sidebar.collapsed{transform:translate(-100%)}.mobile-close-btn{display:flex}.sidebar-content{padding:3.5rem .75rem 1rem;gap:1.25rem}.sidebar-collapse-btn{display:none}.user-board-main{width:100%;padding:0rem;gap:1.5rem;min-height:calc(100vh - 60px)}.user-board-header{margin-bottom:.5rem}.user-board-title{font-size:24px}.user-board-empty-state{padding:2rem 1rem;gap:1rem}.user-board-empty-state-icon{width:64px;height:64px}.user-board-empty-state-icon img{width:64px;height:64px;object-fit:contain}.user-board-empty-state-title{font-size:20px}.user-board-empty-state-description{font-size:14px;max-width:100%}.user-board-add-widget-btn{padding:.75rem 1.25rem;font-size:14px;width:100%;justify-content:center}.user-board-add-widget-btn svg{width:18px;height:18px}.user-board-steps{grid-template-columns:1fr;gap:.75rem;margin-top:1.5rem}.user-board-step-card{padding:1rem;gap:.75rem}.user-board-step-number{width:48px;height:48px;font-size:20px}.user-board-step-title{font-size:14px}.user-board-step-description{font-size:13px}.sidebar-section-title{font-size:14px}.sidebar-section-description{font-size:12px}.nav-item{padding:.5rem .625rem;font-size:13px}.board-item{padding:.375rem .625rem;font-size:13px}}@media(max-width:900px)and (min-width:769px){.user-board-sidebar{width:240px}}@media(max-width:480px){.user-board-main{gap:1rem}.user-board-title{font-size:20px}.user-board-empty-state{padding:1.5rem .75rem}.user-board-empty-state-icon{width:56px;height:56px}.user-board-empty-state-icon img{width:56px;height:56px;object-fit:contain}.user-board-empty-state-title{font-size:18px}.user-board-empty-state-description{font-size:13px}.user-board-add-widget-btn{padding:.625rem 1rem;font-size:13px}.user-board-step-card{padding:.875rem}.user-board-step-number{width:44px;height:44px;font-size:18px}.user-board-step-title{font-size:13px}.user-board-step-description{font-size:12px}}@media(max-width:768px)and (orientation:landscape){.user-board-sidebar{max-width:240px}.user-board-empty-state{padding:1.5rem}}.modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:var(--color-white);border-radius:12px;box-shadow:0 20px 25px -5px var(--color-black-alpha-10),0 10px 10px -5px var(--color-black-alpha-04);max-width:800px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.ai-insights-modal{max-width:700px}.delayed-activities-modal{max-width:1000px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 24px;border-bottom:1px solid var(--color-border-default);background:var(--color-white);flex-shrink:0;position:sticky;top:0;z-index:10}.modal-title-section{display:flex;align-items:flex-start;gap:.75rem}.modal-title-section svg{width:24px;height:24px;flex-shrink:0;margin-top:2px}.modal-title-section svg path{fill:var(--color-brand-primary);stroke:none}.schedule-insight-icon{width:40px;height:40px;margin:13px 0;flex-shrink:0;object-fit:contain}.attention-icon{width:36px;height:36px;margin:13px 0;flex-shrink:0;object-fit:contain}.modal-title{font-size:24px;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem}.modal-subtitle{font-size:16px;color:var(--color-text-icon);margin:0;font-weight:400}.modal-close-btn{background:none;border:none;cursor:pointer;padding:.25rem;color:var(--color-text-icon);display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;width:24px;height:24px}.modal-close-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-nav-hover)}.modal-close-btn svg{width:20px;height:20px}.modal-body{padding:1.5rem 2rem;flex:1;display:flex;flex-direction:column;gap:0;overflow:auto;background:var(--gradient-schedule-modal-body)}.ai-insights-loader-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;gap:1rem;color:var(--color-text-icon);font-size:14px}.ai-insights-api-error{padding:3rem 2rem;min-height:160px}.ai-insights-empty-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;gap:1rem;color:var(--color-text-icon);font-size:14px;text-align:center}.insight-card{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;margin-bottom:1rem;background:var(--color-white);border-radius:8px;border:1px solid var(--color-border-primary);box-shadow:0 1px 2px var(--color-black-alpha-05);transition:box-shadow .2s ease}.insight-card:hover{box-shadow:0 2px 4px var(--color-black-alpha-08)}.insight-card:last-child{margin-bottom:0}.insight-icon{width:32px;height:32px;min-width:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:6px;background:var(--color-bg-subtle)}.insight-icon svg{width:20px;height:20px}.insight-icon[data-icon=chart]{background:var(--color-bg-sky-100);color:var(--color-text-info)}.insight-icon[data-icon=warning]{background:var(--color-bg-warning-amber-wash);color:var(--color-text-warning)}.insight-icon[data-icon=check]{background:var(--color-bg-success-emerald-soft);color:var(--color-text-positive)}.insight-content{flex:1;min-width:0}.insight-title{font-size:14px;font-weight:600;color:var(--color-text-primary);margin:0 0 .5rem}.insight-description{font-size:16px;color:var(--color-text-icon);line-height:1.6;margin:0}.insight-impact{padding:.375rem .75rem;border-radius:6px;font-size:16px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;align-self:flex-start;margin-top:2px}.impact-high{color:var(--color-text-amber)}.impact-medium{color:var(--color-accent-blue)}.impact-low{color:var(--color-text-positive-bright)}.delayed-activities-btn:hover{background:var(--color-error-deep-alpha-10)!important;box-shadow:none;transform:translateY(-1px)}.delayed-activities-body{padding:1.5rem;background:var(--color-white);overflow-y:auto;flex:1}.delayed-activities-body::-webkit-scrollbar{width:8px}.delayed-activities-body::-webkit-scrollbar-track{background:var(--color-bg-neutral-mid-alt);border-radius:4px}.delayed-activities-body::-webkit-scrollbar-thumb{background:var(--color-scrollbar-light-thumb);border-radius:4px}.delayed-activities-body::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-light-thumb-hover)}.delayed-activities-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.pop-section-title{font-size:18px;font-weight:600;color:var(--color-text-primary);text-transform:none;letter-spacing:0;padding-bottom:1rem}.donut-chart-container{margin:.5rem 0;display:flex;justify-content:center}.donut-center-text-large{font-size:14px;font-weight:600;fill:var(--color-text-primary)}.donut-center-text-small{font-size:9.5px;fill:var(--color-text-primary);font-weight:400}.chart-legend{display:flex;flex-direction:column;gap:.5rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:16px;line-height:24px;color:var(--color-text-primary);font-weight:400}.legend-color{width:10px;height:10px;border-radius:50%;flex-shrink:0}.legend-label{font-size:14px;font-weight:400;color:var(--color-text-primary)}.legend-value{margin-left:auto;font-weight:400;color:var(--color-text-primary);font-size:16px!important;text-align:right}.legend-value-delayed{color:var(--color-text-error-soft)!important}.legend-value-critical{color:var(--color-error-deep)!important}.priority-section-wrapper{display:flex;flex-direction:column;gap:0rem}.priority-section{display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border-default);border-radius:8px;overflow:hidden;background:var(--color-white)}.priority-group{display:flex;flex-direction:column}.priority-group:last-child{border-bottom:none}.priority-header{display:flex;align-items:center;gap:.5rem;padding:8px;border-bottom:1px solid var(--color-border-strong-alt);margin:8px;cursor:pointer;background:var(--color-white)}.priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.priority-dot.critical-dot{background-color:var(--color-priority-critical-dot)}.priority-dot.near-critical-dot{background-color:var(--color-text-warning-amber)}.priority-dot.non-critical-dot{background-color:var(--color-bg-neutral-warm)}.priority-label{font-size:16px;font-weight:400;color:var(--color-text-primary);flex:1}.priority-expand-icon{color:var(--color-text-icon);flex-shrink:0;transition:transform .2s ease}.priority-expand-icon.expanded{transform:rotate(180deg)}.priority-header:hover{background:var(--color-bg-muted)}.priority-description{font-size:14px;color:var(--color-text-primary);margin:0;padding:0 1rem .75rem 1.75rem}.priority-activities{display:flex;flex-direction:column;gap:6px}.priority-activities.scrollable{max-height:200px;overflow-y:auto}.priority-activities.scrollable::-webkit-scrollbar{width:6px}.priority-activities.scrollable::-webkit-scrollbar-track{background:var(--color-bg-neutral-mid-alt);border-radius:3px}.priority-activities.scrollable::-webkit-scrollbar-thumb{background:var(--color-scrollbar-light-thumb);border-radius:3px}.priority-activities.scrollable::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-light-thumb-hover)}.activity-item{display:flex;justify-content:space-between;align-items:center;margin:0 8px;padding:8px;font-size:16px}.activity-item:last-child{border-bottom:none}.activity-item.critical{background:var(--color-danger-bg)}.activity-item.near-critical{background:var(--color-bg-warning)}.activity-item.near-critical .activity-delay{color:var(--color-text-warning-amber)}.activity-item.non-critical{background:var(--color-bg-muted)}.activity-item.non-critical .activity-delay{color:var(--color-text-success)}.activity-name{color:var(--color-text-primary);font-weight:400;font-size:14px}.activity-delay{color:var(--color-error-deep);font-weight:400;font-size:16px}.modal-footer{padding:1.5rem 2rem;border-top:1px solid var(--color-border-default);display:flex;justify-content:flex-end}.modal-close-button{padding:.625rem 1.5rem;background:var(--color-brand-primary);color:var(--color-white);border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s;min-width:100px}.modal-close-button:hover{background:var(--color-brand-purple-hover)}@media(max-width:1024px){.delayed-activities-layout{grid-template-columns:1fr}}@media(max-width:768px){.modal-content{margin:1rem;max-height:calc(100vh - 2rem)}.modal-header,.modal-body,.modal-footer{padding:1rem 1.5rem}.schedule-card-header{flex-direction:column;gap:1rem}.schedule-card-actions{width:100%;justify-content:flex-start}}.sia-container{background:var(--color-white);border-radius:12px;box-shadow:0 1px 3px var(--color-black-alpha-10);margin-top:1.5rem;margin-bottom:1.5rem;overflow:hidden;border:1px solid var(--color-border-primary)}.sia-header{display:flex;justify-content:space-between;align-items:center;padding:12px;cursor:pointer;background:var(--gradient-gantt-header-wash);transition:background-color .2s}.sia-header:hover{background:var(--gradient-gantt-header-wash-hover)}.sia-title-section{display:flex;align-items:center;gap:.75rem}.sia-icon{width:40px;height:40px;border-radius:8px;background:var(--color-brand-alpha-10);display:flex;align-items:center;justify-content:center;flex-shrink:0}.sia-icon img{width:44px;height:44px;object-fit:contain}.sia-title-row{display:flex;align-items:center;gap:8px}.sia-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem}.sia-count-badge{background:var(--color-brand-primary);color:var(--color-white);font-size:12px;font-weight:500;padding:2px 8px;border-radius:12px}.sia-subtitle{font-size:16px;font-weight:400;color:var(--color-text-icon);margin:0}.sia-toggle-btn{background:none;border:none;cursor:pointer;padding:8px;color:var(--color-text-icon);display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.sia-toggle-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-nav-hover)}.sia-toggle-icon{transition:transform .3s ease}.sia-toggle-icon.expanded{transform:rotate(180deg)}.sia-body{padding:0 24px 24px;display:flex;flex-direction:column;gap:12px;background:var( --color-white);border-top:1px solid var(--color-border-primary)}.sia-loader-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;gap:1rem;color:var(--color-text-icon);font-size:14px}.sia-api-error{padding:2rem 1rem;min-height:120px}.sia-empty-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;gap:1rem;color:var(--color-text-icon);font-size:14px;text-align:center}.sia-insight-card{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--color-white);border-radius:8px;border:1px solid var(--color-border-default);transition:box-shadow .2s ease}.sia-insight-card:first-child{margin-top:16px}.sia-insight-card:hover{box-shadow:0 2px 4px var(--color-black-alpha-06)}.sia-insight-icon{width:36px;height:36px;min-width:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:6px;background:var(--color-bg-subtle)}.sia-insight-icon.warning{background:var(--color-bg-error-soft);border:1px solid var(--color-error-deep)}.sia-insight-icon.caution{border:1px solid var(--color-chart-sky);background:var(--color-bg-sky-100);color:var(--color-text-link)}.sia-insight-icon.safe{color:var(--color-text-positive-deep);background:var(--color-bg-success-wash);border:1px solid var(--color-border-success-mint)}.sia-insight-content{flex:1;min-width:0}.sia-insight-title{font-size:14px;font-weight:600;color:var(--color-text-primary);margin:0 0 6px}.sia-insight-description{font-size:14px;color:var(--color-text-icon);line-height:1.5;margin:0}.sia-insight-impact{padding:4px 14px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap;margin-top:2px;border:1px solid;align-self:flex-start}.sia-impact-high{color:var(--color-error-deep);background:var(--color-bg-error-soft);border:1px solid var(--color-error-deep)}.sia-impact-medium{border:1px solid var(--color-chart-sky);background:var(--color-bg-sky-100);color:var(--color-text-link)}.sia-impact-low{color:var(--color-text-positive-deep);background:var(--color-bg-success-wash);border:1px solid var(--color-border-success-mint)}@media(max-width:768px){.sia-header{padding:12px 16px}.sia-body{padding:0 16px 16px}.sia-insight-card{flex-direction:column;gap:8px}}.gantt-chart-container{background:var(--color-white);border-radius:8px;padding:0;margin-top:1.5rem;box-shadow:0 1px 2px -1px var(--color-black-alpha-10),0 1px 3px 0 var(--color-black-alpha-10);overflow:hidden}.gantt-chart-header{padding:12px 12px 1px;background:var(--gradient-gantt-header-wash);border:1px solid var(--color-border-primary);margin-bottom:0}.gantt-chart-title-section{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.gantt-chart-icon{width:40px;height:40px;border-radius:8px;background:var(--color-brand-alpha-10);display:flex;align-items:center;justify-content:center;flex-shrink:0}.gantt-chart-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem}.gantt-chart-subtitle{font-size:16px;font-weight:400;color:var(--color-text-icon);margin:0}.gantt-chart-controls{padding:1rem 1.5rem;background:var(--color-white);border:1px solid var(--color-border-primary);border-top:none}.gantt-controls-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.gantt-controls-row-second{margin-top:.75rem;justify-content:space-between}.gantt-inline-legend{display:flex;align-items:center;gap:1.5rem;margin-left:auto}.gantt-filter-dropdown{position:relative}.gantt-filter-btn{min-width:78px;height:34px;padding-left:12px;padding-right:12px;background:var(--color-bg-neutral-wash-50);border:1px solid var(--color-border-primary);border-radius:8px;font-size:14px;color:var(--color-text-primary);cursor:pointer;transition:all .2s ease;font-weight:400;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;opacity:1}.gantt-filter-btn-label{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-filter-btn:hover{background:var(--color-border-primary-alpha-50);border-color:var(--color-border-primary)}.gantt-filter-btn.active{background:var(--color-brand-primary-alpha-10);border:1px solid var(--color-brand-primary-alpha-30);color:var(--color-brand-primary)}.gantt-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;box-shadow:0 4px 6px -1px var(--color-black-alpha-10),0 2px 4px -1px var(--color-black-alpha-06);min-width:200px;max-height:300px;overflow-y:auto;z-index:100}.gantt-dropdown-item{display:block;width:100%;padding:10px 16px;background:var(--color-white);border:none;text-align:left;font-size:14px;color:var(--color-text-nav-hover);cursor:pointer;transition:background .2s ease;border-bottom:1px solid var(--color-bg-subtle)}.gantt-dropdown-item:first-child{border-radius:8px 8px 0 0}.gantt-dropdown-item:last-child{border-bottom:none;border-radius:0 0 8px 8px}.gantt-dropdown-item:hover{background:var(--color-bg-neutral-wash-50)}.gantt-dropdown-item.active{background:var(--color-brand-primary-alpha-10);color:var(--color-brand-primary);font-weight:600}.gantt-date-range-center{display:flex;flex-direction:column;align-items:center;flex:none}.gantt-date-range-group{display:flex;align-items:center;gap:.5rem}.gantt-date-range-slider{width:100%;height:4px;background:var(--gradient-gantt-date-range-slider);border-radius:2px;margin-top:8px;position:relative}.gantt-date-range-slider:before,.gantt-date-range-slider:after{content:"";position:absolute;top:50%;transform:translateY(-50%);width:12px;height:12px;background:var(--color-brand-primary);border-radius:50%;border:2px solid var(--color-white);box-shadow:0 1px 3px var(--color-black-alpha-20)}.gantt-date-range-slider:before{left:0}.gantt-date-range-slider:after{right:0}.gantt-date-input{width:148px;height:34px;padding-left:12px;padding-right:12px;border:1px solid var(--color-border-primary);border-radius:8px;font-size:14px;line-height:24px;color:var(--color-text-primary);background:var(--color-bg-neutral-wash-50);transition:all .2s ease;opacity:1;position:relative}.gantt-date-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;padding:2px;margin-left:4px}.gantt-date-input::-webkit-calendar-picker-indicator:hover{opacity:1}.gantt-date-input:focus{outline:none;border-color:var(--color-brand-primary-alpha-30);background:var(--color-bg-neutral-wash-50);box-shadow:none}.gantt-date-separator{font-size:13px;color:var(--color-text-tertiary);font-weight:400;text-transform:lowercase}.gantt-today-btn{min-width:78px;height:34px;padding-left:12px;padding-right:12px;background:var(--color-bg-neutral-wash-50);border:1px solid var(--color-border-primary);border-radius:8px;font-size:14px;color:var(--color-text-primary);cursor:pointer;font-weight:400;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;opacity:1;flex-shrink:0}.gantt-today-btn:hover{background:var(--color-border-primary-alpha-50);border-color:var(--color-border-primary)}.gantt-today-btn.active{background:var(--color-brand-primary-alpha-10);border:1px solid var(--color-brand-primary-alpha-30);color:var(--color-brand-primary);font-weight:600}.gantt-today-btn.active:hover{background:var(--color-brand-primary-alpha-10);border-color:var(--color-brand-primary-alpha-30)}.gantt-search-group{position:relative;background:var(--color-bg-neutral-wash-50);border:1px solid var(--color-border-primary);border-radius:4px;padding-left:12px;padding-right:12px;display:flex;align-items:center;gap:6px;height:34px;opacity:1;width:280px}.gantt-search-group svg{color:var(--color-text-tertiary);flex-shrink:0;width:16px;height:16px}.gantt-search-input{border:none;outline:none;font-size:14px;color:var(--color-text-nav-hover);flex:1;min-width:0;background:transparent}.gantt-search-input::placeholder{color:var(--color-text-tertiary);font-size:14px}.gantt-search-group:focus-within{border-color:var(--color-brand-primary-alpha-30);background:var(--color-bg-neutral-wash-50)}.gantt-chart-container{--gantt-complete: #22a06b;--gantt-in-progress: #3b82f6;--gantt-not-started: #818cf8;--gantt-critical: var(--color-text-error-soft);--gantt-group: #94a3b8;--gantt-row-hover: var(--color-bg-muted);--gantt-row-selected: var(--color-brand-primary-alpha-10);--gantt-complete-base: color-mix(in srgb, var(--gantt-complete) 28%, white);--gantt-in-progress-base: color-mix(in srgb, var(--gantt-in-progress) 28%, white);--gantt-not-started-base: color-mix(in srgb, var(--gantt-not-started) 28%, white);--gantt-critical-base: color-mix(in srgb, var(--gantt-critical) 28%, white);--gantt-group-base: color-mix(in srgb, var(--gantt-group) 28%, white)}.gantt-controls-row-view{gap:1.5rem}.gantt-controls-row-filters{margin-top:.75rem}.gantt-view-group{display:inline-flex;align-items:center;gap:4px}.gantt-view-btn{height:32px;min-width:32px;padding:0 12px;background:var(--color-bg-neutral-wash-50);border:1px solid var(--color-border-primary);border-radius:8px;font-size:13px;color:var(--color-text-primary);cursor:pointer;white-space:nowrap;transition:background-color .15s ease,border-color .15s ease}.gantt-view-btn:hover:not(:disabled){background:var(--color-border-primary-alpha-50)}.gantt-view-btn:disabled{opacity:.4;cursor:not-allowed}.gantt-view-btn.active{background:var(--color-brand-primary-alpha-10);border-color:var(--color-brand-primary-alpha-30);color:var(--color-brand-primary);font-weight:600}.gantt-view-btn:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:1px}.gantt-view-btn--icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;background:var(--color-white);color:var(--color-text-secondary);line-height:1}.gantt-level-group{gap:2px;padding:3px;background:var(--color-bg-subtle);border-radius:8px}.gantt-view-btn--level{min-width:34px;height:28px;padding:0 8px;background:transparent;border:none;border-radius:6px;font-size:12px;font-weight:600;color:var(--color-text-tertiary)}.gantt-view-btn--level:hover:not(:disabled):not(.active){background:var(--color-border-primary-alpha-50)}.gantt-view-btn--level.active,.gantt-view-btn--level.active:hover:not(:disabled){background:var(--color-brand-primary);color:var(--color-white)}.gantt-zoom-group{gap:8px}.gantt-zoom-box{display:inline-flex;align-items:stretch;height:34px;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;overflow:hidden}.gantt-zoom-step{width:32px;padding:0;background:transparent;border:none;font-size:18px;line-height:1;color:var(--color-text-secondary);cursor:pointer}.gantt-zoom-step:hover:not(:disabled){background:var(--color-border-primary-alpha-50)}.gantt-zoom-step:disabled{opacity:.4;cursor:not-allowed}.gantt-zoom-step:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:-2px}.gantt-zoom-label{display:inline-flex;align-items:center;justify-content:center;min-width:78px;padding:0 8px;border-left:1px solid var(--color-border-primary);border-right:1px solid var(--color-border-primary);font-size:12px;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.gantt-view-btn--fit{height:34px;padding:0 16px;font-size:13px;font-weight:600}.gantt-view-btn--fit.active{background:var(--color-brand-primary);border-color:var(--color-brand-primary);color:var(--color-white);box-shadow:0 2px 6px var(--color-brand-primary-alpha-30)}.gantt-view-btn--fit.active:hover:not(:disabled){background:var(--color-brand-primary);filter:brightness(1.08)}.gantt-controls-row-view>*+*{position:relative}.gantt-controls-row-view>*+*:before{content:"";position:absolute;left:-.75rem;top:50%;width:1px;height:28px;transform:translateY(-50%);background:var(--color-border-primary)}.gantt-critical-dot{width:8px;height:8px;border-radius:50%;background:var(--color-error-deep);flex-shrink:0}.gantt-legend-diamond{width:11px;height:11px;margin:0 2px;background:var(--gantt-group);border-radius:1px;transform:rotate(45deg);flex-shrink:0}.gantt-today-icon{color:var(--color-brand-primary);flex-shrink:0}.gantt-legend-note{font-size:12px;color:var(--color-text-icon);white-space:nowrap}.gantt-chart-main{position:relative;overflow:auto;border:1px solid var(--color-border-primary);border-top:none;background:var(--color-white)}.gantt-grid{display:grid;position:relative}.gantt-list-header{grid-column:1;grid-row:1;position:sticky;top:0;left:0;z-index:5;display:flex;box-sizing:border-box;background:var(--color-bg-muted);border-bottom:1px solid var(--color-border-primary-alpha-50);border-right:1px solid var(--color-border-primary)}.gantt-list-head-cell{font-size:14px;font-weight:500;color:var(--color-text-icon);align-items:center;background:transparent;border:none;font-family:inherit}.gantt-list-sort{cursor:pointer;gap:4px;justify-content:flex-start}.gantt-list-sort:hover,.gantt-list-sort.active{color:var(--color-brand-primary)}.gantt-list-sort:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:-2px}.gantt-sort-arrow{font-size:9px;width:10px}.gantt-splitter{grid-column:1;grid-row:1 / span 2;justify-self:end;position:sticky;z-index:7;cursor:col-resize;touch-action:none;background:transparent}.gantt-splitter:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;margin-left:-1px;background:transparent;transition:background-color .15s}.gantt-splitter:hover:after,.gantt-splitter.is-dragging:after,.gantt-splitter:focus-visible:after{background:var(--color-brand-primary)}.gantt-splitter:focus{outline:none}.gantt-list-body{grid-column:1;grid-row:2;position:sticky;left:0;z-index:4;background:var(--color-white);border-right:1px solid var(--color-border-primary);box-shadow:2px 0 4px -2px var(--color-black-alpha-10);contain:layout style}.gantt-list-body:focus{outline:none}.gantt-list-body:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:-2px}.gantt-list-body:focus-visible .gantt-list-row.is-selected{box-shadow:inset 0 0 0 2px var(--color-brand-primary)}.gantt-list-row,.gantt-chart-row{position:absolute;left:0;right:0;box-sizing:border-box;border-bottom:1px solid var(--color-bg-subtle);background:var(--color-white);contain:layout style paint}.gantt-list-row{display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.gantt-list-row--group,.gantt-chart-row--group{background:var(--color-bg-violet-pale)}.gantt-list-row--group .gantt-chart-task-name{font-weight:600!important}.gantt-list-row.is-hover,.gantt-chart-row.is-hover{background:var(--gantt-row-hover)}.gantt-list-row.is-selected,.gantt-chart-row.is-selected{background:var(--gantt-row-selected)}.gantt-list-cell{display:flex;align-items:center;box-sizing:border-box;height:100%;min-width:0;padding:0 8px}.gantt-list-cell--name{flex:1 1 auto;gap:6px}.gantt-list-cell--date{flex:0 0 84px;font-size:13px;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.gantt-list-header .gantt-list-cell--name{padding-left:12px}.gantt-chart-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--color-text-icon)}.gantt-chart-task-name{flex:1 1 auto;min-width:0;font-size:14px;font-weight:400;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gantt-chart-task-count{flex-shrink:0;font-size:11px;color:var(--color-text-icon)}.gantt-chart-timeline-inner{grid-column:2;grid-row:1;position:sticky;top:0;z-index:3;box-sizing:border-box;background:var(--color-bg-muted);border-bottom:1px solid var(--color-border-primary-alpha-50)}.gantt-chart-timeline-tick{position:absolute;box-sizing:border-box;display:flex;align-items:center;justify-content:center;overflow:hidden;border-right:1px solid var(--color-border-primary-alpha-50)}.gantt-chart-timeline-tick--top{border-bottom:1px solid var(--color-border-primary-alpha-50);font-weight:600}.gantt-chart-timeline-date{font-size:12px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:clip;padding:0 2px}.gantt-chart-today-line{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--gradient-gantt-today-line-striped);z-index:5;pointer-events:none}.gantt-chart-today-label{position:absolute;top:2px;transform:translate(6px);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--color-white);background:var(--color-brand-grape);padding:1px 5px;border-radius:3px;z-index:6}.gantt-chart-inner{grid-column:2;grid-row:2;position:relative;z-index:1;background:var(--color-white);contain:layout style}.gantt-chart-today-line-cell{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--gradient-gantt-today-line-striped);z-index:3;pointer-events:none}.gantt-bar,.gantt-bar-milestone{--bar-color: var(--gantt-not-started);--bar-base: var(--gantt-not-started-base);position:absolute;top:50%;transform:translateY(-50%);box-sizing:border-box;cursor:pointer;z-index:2}.gantt-bar{border-radius:4px;background:var(--bar-base);border:1px solid var(--bar-color);overflow:hidden;min-width:2px}.gantt-bar-fill{height:100%;background:var(--bar-color);display:flex;align-items:center;justify-content:flex-start;overflow:hidden}.gantt-chart-bar-percentage{color:var(--color-white);font-size:11px;font-weight:600;white-space:nowrap;padding:0 6px}.gantt-bar-milestone{background:var(--bar-color);border:1px solid var(--color-white);transform:translateY(-50%) rotate(45deg) scale(.8);border-radius:2px}.gantt-bar--complete{--bar-color: var(--gantt-complete);--bar-base: var(--gantt-complete-base)}.gantt-bar--in_progress{--bar-color: var(--gantt-in-progress);--bar-base: var(--gantt-in-progress-base)}.gantt-bar--not_started{--bar-color: var(--gantt-not-started);--bar-base: var(--gantt-not-started-base)}.gantt-bar--critical{--bar-color: var(--gantt-critical);--bar-base: var(--gantt-critical-base)}.gantt-bar--group{--bar-color: var(--gantt-group);--bar-base: var(--gantt-group-base)}.gantt-bar:focus-visible,.gantt-bar-milestone:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px}.gantt-chart-row.is-selected .gantt-bar{box-shadow:0 0 0 2px var(--color-brand-primary-alpha-30)}.gantt-status-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding:8px 16px;font-size:13px;color:var(--color-text-icon);background:var(--color-bg-muted);border:1px solid var(--color-border-primary);border-top:none;border-radius:0 0 8px 8px}.gantt-status-item{display:inline-flex;align-items:center;gap:6px}.gantt-status-item strong{color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.gantt-status-item--critical{margin-left:auto}.gantt-status-dot{display:inline-block;width:10px;height:10px;border-radius:2px}.gantt-chart-no-rows{display:flex;align-items:center;justify-content:center;min-height:160px;border:1px solid var(--color-border-primary);border-top:none;color:var(--color-text-placeholder);font-size:14px}@media(prefers-reduced-motion:reduce){.gantt-view-btn,.gantt-filter-btn{transition:none}}.gantt-chart-tooltip{position:fixed;background:var(--color-white);border:1px solid var(--color-border-primary-alpha-50);border-radius:8px;padding:.75rem;box-shadow:0 4px 6px -1px var(--color-black-alpha-10),0 2px 4px -1px var(--color-black-alpha-06);z-index:1000;min-width:250px;max-width:320px;max-height:calc(100vh - 20px);overflow-y:auto;pointer-events:none}.gantt-chart-tooltip-title{font-weight:600;font-size:14px;color:var(--color-text-secondary);margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border-primary-alpha-50)}.gantt-chart-tooltip-row{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:12px;gap:1rem}.gantt-chart-tooltip-row:last-child{margin-bottom:0}.gantt-chart-tooltip-label{color:var(--color-text-icon);font-weight:500}.gantt-chart-tooltip-value{color:var(--color-text-secondary);font-weight:600;text-align:right}.gantt-chart-legend{padding:1rem 1.5rem;background:var(--color-bg-muted);border-top:1px solid var(--color-border-primary-alpha-50);border-radius:0 0 8px 8px}.gantt-legend-header{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:.75rem}.gantt-legend-content{display:flex;flex-direction:column;gap:1rem}.gantt-legend-row{display:flex;align-items:center}.gantt-legend-items{display:flex;flex-direction:row;gap:1.5rem;align-items:center}.gantt-legend-item{display:flex;align-items:center;gap:.5rem}.gantt-legend-color{width:14px;height:14px;border-radius:2px;flex-shrink:0}.gantt-legend-label{font-size:12px;font-weight:400;color:var(--color-text-primary);white-space:nowrap}.gantt-legend-examples{display:flex;gap:2rem;align-items:center}.gantt-legend-example{display:flex;flex-direction:column;gap:.5rem;align-items:center}.gantt-legend-example-title{font-size:14px;font-weight:400;color:var(--color-text-primary);text-align:center}.gantt-legend-bar{display:flex;width:120px;height:20px;border-radius:3px;overflow:hidden}.gantt-legend-bar-segment{height:100%}.gantt-legend-bar-complete{background:var(--color-border-success)}.gantt-legend-bar-baseline{background:var(--color-brand-lavender)}.gantt-legend-bar-critical{background:var(--color-text-error-soft)}.gantt-legend-bar-labels{display:flex;width:120px;justify-content:space-between;font-weight:400;font-size:12px;color:var(--color-text-primary)}.gantt-chart-loading,.gantt-chart-empty{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--color-text-placeholder);font-size:14px;padding:2rem}.gantt-chart-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:2rem;text-align:center}.gantt-chart-error-title{color:var(--color-error-deep);font-size:16px;margin:0 0 6px;font-weight:500}.gantt-chart-error-detail{color:var(--color-text-placeholder);font-size:14px;margin:0 0 12px}.gantt-chart-retry-btn{padding:8px 18px;background:var(--color-brand-primary);color:var(--color-white);border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background .2s}.gantt-chart-retry-btn:hover{background:var(--color-brand-purple-deep)}.gantt-search-spinner{animation:gantt-spin 1s linear infinite;color:var(--color-brand-primary)}@keyframes gantt-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gantt-search-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;color:var(--color-text-tertiary);cursor:pointer;padding:0 4px;line-height:1;transition:color .2s}.gantt-search-clear:hover{color:var(--color-text-placeholder)}.gantt-search-group{position:relative}.gantt-filtering-overlay{position:absolute;inset:0;background:var(--color-white)b3;display:flex;align-items:center;justify-content:center;z-index:50;font-size:14px;color:var(--color-text-dim)}.gantt-virtual-spacer{height:0;overflow:hidden}.schedule-dashboard{padding:1.5rem;min-height:calc(100vh - 60px);background:var(--color-bg-muted)}.schedule-dashboard.with-sidebar{padding-right:18px!important}.schedule-dashboard.full-width{margin-right:0}.schedule-content{max-width:1400px;margin:0 auto}.schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.schedule-title{font-size:32px;font-weight:600;color:var(--color-text-primary);margin:0}.schedule-overview-card{background:var(--color-white);border-radius:12px;box-shadow:0 1px 3px var(--color-black-alpha-10)}.schedule-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:12px;background:var(--gradient-schedule-card-header-wash);margin-bottom:0;border-radius:8px 8px 0 0;border:1px solid var(--color-border-primary)}.schedule-card-title-section{display:flex;align-items:flex-start;gap:1rem}.schedule-card-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.schedule-card-title{font-size:20px;font-weight:600;line-height:24px;color:var(--color-text-primary);margin:0 0 .5rem}.schedule-card-location{display:flex;align-items:center;gap:.375rem;font-size:14px;color:var(--color-text-icon)}.schedule-card-location-text{color:var(--color-text-dark-alt);font-size:16px;font-weight:400;line-height:24px}.schedule-card-actions{display:flex;gap:.75rem;align-items:center}.ai-insights-btn,.delayed-activities-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border:none;border-radius:8px;font-size:16px;font-weight:400;cursor:pointer;transition:all .2s ease;position:relative;box-shadow:0 2px 4px var(--color-black-alpha-10)}.ai-insights-btn{background:var(--gradient-schedule-ai-insights-btn);border:1px solid var(--color-brand-primary-alpha-20);color:var(--color-text-primary)}.ai-insights-btn img{width:16px;height:16px}.ai-insights-btn:hover{box-shadow:0 4px 8px var(--color-brand-alpha-30);transform:translateY(-1px)}.ai-insights-btn:active{transform:translateY(0);box-shadow:0 2px 4px var(--color-brand-alpha-20)}.ai-insights-btn:focus{outline:none;box-shadow:0 0 0 3px var(--color-brand-alpha-20)}.ai-insights-btn .badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;border-radius:50%;font-size:14px;font-weight:600;background:var(--color-brand-primary-alpha-20);color:var(--color-text-brand-deep);border:none;margin-left:.25rem}.delayed-activities-btn{background:var(--color-error-deep-alpha-10);border:1px solid var(--color-error-deep-alpha-20);color:var(--color-text-primary);box-shadow:none}.delayed-activities-btn svg{width:16px;height:16px}.delayed-activities-btn:hover{background:transparent;box-shadow:none;transform:translateY(-1px)}.delayed-activities-btn:active{background:transparent;transform:translateY(0);box-shadow:none}.delayed-activities-btn:focus{outline:none;box-shadow:0 0 0 3px var(--color-badge-alpha-33)}.delayed-activities-btn .badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;border-radius:50%;font-size:14px;font-weight:600;background:var(--color-error-deep-alpha-20);color:var(--color-error-deep);border:none;margin-left:.25rem}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;border-radius:50%;font-size:12px;font-weight:600;background:var(--color-white)40;color:var(--color-white);border:1.5px solid var(--color-white)4d}.schedule-metrics-row{display:flex;gap:2rem;margin:1.5rem 0rem;flex-wrap:wrap}.schedule-metric{display:flex;align-items:center;gap:.5rem;font-size:18px;color:var(--color-text-primary);font-weight:400}.schedule-metric svg{color:var(--color-text-icon);flex-shrink:0;width:16px;height:16px}.schedule-metric.spi-metric{display:flex;align-items:center;gap:.375rem;font-weight:400;color:var(--color-text-primary);font-size:18px}.completion-label{font-size:14px;font-weight:400;color:var(--color-text-dark-alt);margin-bottom:.75rem}.completion-section{width:100%}.completion-breakdown{display:flex;align-items:center;gap:.5rem;font-size:18px;color:var(--color-text-icon);margin-bottom:.25rem}.completion-progress{display:flex;align-items:center;gap:1rem}.progress-bar{flex:1;height:16px;background:var(--color-bg-subtle);border-radius:6px;overflow:hidden;display:flex}.progress-segment{height:100%;transition:width .3s ease}.progress-segment.completed{background:var(--color-text-positive)}.progress-segment.active{background:var(--color-brand-primary)}.progress-segment.remaining{background:var(--color-border-default)}.completion-percentage{display:block;text-align:right;font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.schedule-metrices-card{padding:1rem 0em;border-bottom:1px solid var(--color-border-default)}.schedule-metrices-container{padding:12px;border:1px solid var(--color-border-default);border-top:none}.schedule-metrics-table{display:grid;grid-template-columns:.6fr auto auto auto;gap:0}.schedule-metric-column{display:flex;flex-direction:column;position:relative;padding:0 20px 0 0}.schedule-metric-column:nth-child(-n+3):after{content:"";position:absolute;right:8px;top:0;bottom:0;width:1px;background:var(--color-border-default)}.schedule-metric-header{font-size:14px;font-weight:400;color:var(--color-text-dark-alt);margin-bottom:.5rem;text-transform:none}.schedule-metric-value{display:flex;align-items:center;gap:.5rem;font-size:18px;color:var(--color-text-primary)}.schedule-metric-value svg{color:var(--color-text-icon);flex-shrink:0;width:16px;height:16px}.schedule-gantt-card{background:var(--color-white);border-radius:12px;box-shadow:0 1px 3px var(--color-black-alpha-10);margin-top:2rem}.schedule-gantt-header{padding:1rem 1.5rem;border-bottom:1px solid var(--color-border-default)}.schedule-gantt-title{font-size:16px;font-weight:600;color:var(--color-text-secondary);margin:0}.schedule-gantt-content{display:flex;min-height:400px;overflow-x:auto}.gantt-wbs-panel{width:400px;min-width:400px;border-right:1px solid var(--color-border-default);background:var(--color-bg-muted)}.gantt-wbs-header{padding:.75rem 1rem;font-size:14px;font-weight:600;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-default);background:var(--color-white)}.gantt-wbs-tree{padding:.5rem 0;overflow-y:auto;max-height:calc(100vh - 300px)}.gantt-wbs-group{margin-bottom:.25rem}.gantt-wbs-group-header{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:14px;font-weight:600;color:var(--color-text-secondary);background:var(--color-white);border-bottom:1px solid var(--color-bg-subtle);cursor:pointer;transition:background .2s ease}.gantt-wbs-group-header:hover{background:var(--color-bg-muted)}.gantt-wbs-expand-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;cursor:pointer;color:var(--color-text-icon);padding:0;transition:transform .2s ease}.gantt-wbs-expand-btn:hover{color:var(--color-text-secondary)}.gantt-wbs-expand-btn svg{width:12px;height:12px}.gantt-wbs-group-name{flex:1;font-weight:600}.gantt-wbs-task-count{font-size:12px;font-weight:400;color:var(--color-text-icon)}.gantt-wbs-child{margin-left:1.5rem}.gantt-wbs-child-header{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:13px;font-weight:500;color:var(--color-text-nav-hover);background:var(--color-bg-muted);border-bottom:1px solid var(--color-bg-subtle);cursor:pointer;transition:background .2s ease}.gantt-wbs-child-header:hover{background:var(--color-bg-subtle)}.gantt-wbs-child-name{flex:1}.gantt-wbs-activity{padding:.5rem 1rem .5rem 3rem;font-size:13px;color:var(--color-text-body-secondary);background:var(--color-white);border-bottom:1px solid var(--color-bg-muted)}.gantt-wbs-activity-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-timeline-panel{flex:1;overflow-x:auto;overflow-y:auto;background:var(--color-white)}.gantt-timeline-header{padding:.75rem 1rem;border-bottom:1px solid var(--color-border-default);background:var(--color-bg-muted);min-width:800px}.gantt-timeline-content{padding:.5rem 1rem;min-width:800px}.gantt-task-row{display:flex;align-items:center;min-height:40px;border-bottom:1px solid var(--color-bg-subtle);padding:.5rem 0}.gantt-task-bar-container{position:relative;height:32px;display:flex;align-items:center}.gantt-task-bar{position:relative;height:24px;border-radius:4px;display:flex;align-items:center;padding:0 .5rem;font-size:12px;font-weight:500;color:var(--color-white);min-width:60px;overflow:hidden}.gantt-task-not-started{background:var(--color-border-default);color:var(--color-text-icon);border:1px solid var(--color-border-dotted)}.gantt-task-in-progress{background:var(--color-brand-primary);color:var(--color-white);border:1px solid var(--color-brand-purple-hover)}.gantt-task-completed{background:var(--color-text-positive);color:var(--color-white);border:1px solid var(--color-text-success-bright)}.gantt-task-progress{position:absolute;left:0;top:0;height:100%;background:var(--color-white)4d;border-radius:4px 0 0 4px;transition:width .3s ease}.gantt-task-label{position:relative;z-index:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.schedule-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:var(--color-white);border-radius:12px;box-shadow:0 1px 3px var(--color-black-alpha-10)}.schedule-loading .loading-spinner{width:40px;height:40px;border:3px solid var(--color-border-default);border-top-color:var(--color-brand-primary);border-radius:50%;animation:spin 1s linear infinite}.schedule-loading p{margin-top:16px;color:var(--color-text-placeholder);font-size:14px}.schedule-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:var(--color-white);border-radius:12px;box-shadow:0 1px 3px var(--color-black-alpha-10);padding:2rem;text-align:center}.schedule-error p{color:var(--color-badge);font-size:16px;margin:0 0 8px}.schedule-error .error-details{color:var(--color-text-placeholder);font-size:14px;margin-bottom:16px}.schedule-error button{padding:8px 24px;background:var(--color-brand-primary);color:var(--color-white);border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background .2s}.schedule-error button:hover{background:var(--color-brand-purple-deep)}.schedule-card-message{padding:1.25rem;border:1px solid var(--color-border-primary);border-top:none;border-radius:0 0 12px 12px;background:var(--color-white)}.schedule-card-message-title{font-size:16px;font-weight:600;color:var(--color-text-heading);margin-bottom:6px}.schedule-card-message-detail{font-size:14px;color:var(--color-text-placeholder);margin-bottom:12px}.schedule-card-retry-btn{padding:8px 18px;background:var(--color-brand-primary);color:var(--color-white);border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background .2s}.schedule-card-retry-btn:hover{background:var(--color-brand-purple-deep)}.ai-insights-btn:disabled,.delayed-activities-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.plotly-test-page{padding:24px;max-width:1400px;margin:0 auto;background-color:var(--color-bg-muted);min-height:100vh}.test-header{background:var(--gradient-plotly-test-header);color:var(--color-white);padding:32px;border-radius:12px;margin-bottom:24px;box-shadow:0 4px 6px var(--color-vivid-alpha-20)}.test-header h1{margin:0 0 8px;font-size:32px;font-weight:600}.test-header p{margin:0;font-size:16px;opacity:.9}.test-controls{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap;align-items:center;background:var(--color-white);padding:20px;border-radius:8px;box-shadow:0 1px 3px var(--color-black-alpha-10)}.control-group{display:flex;align-items:center;gap:12px}.control-group label{font-weight:500;color:var(--color-text-nav-hover);font-size:14px}.example-select{padding:8px 12px;border:1px solid var(--color-border-dotted);border-radius:6px;font-size:14px;background-color:var(--color-white);cursor:pointer;min-width:250px}.example-select:hover{border-color:var(--color-brand-vivid)}.example-select:focus{outline:none;border-color:var(--color-brand-vivid);box-shadow:0 0 0 3px var(--color-vivid-alpha-10)}.toggle-button{padding:8px 16px;background-color:var(--color-brand-vivid);color:var(--color-white);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.toggle-button:hover{background-color:var(--color-brand-vivid-dark);transform:translateY(-1px)}.toggle-button:active{transform:translateY(0)}.data-display{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.data-section,.code-section{background:var(--color-white);border-radius:8px;padding:20px;box-shadow:0 1px 3px var(--color-black-alpha-10)}.data-section h3,.code-section h3{margin:0 0 12px;color:var(--color-text-nav-hover);font-size:16px;font-weight:600}.data-section pre,.code-section pre{background-color:var(--color-bg-subtle);padding:16px;border-radius:6px;overflow-x:auto;font-size:12px;line-height:1.5;color:var(--color-text-secondary);max-height:400px;overflow-y:auto}.visualization-container{background:var(--color-white);border-radius:8px;padding:24px;box-shadow:0 1px 3px var(--color-black-alpha-10);margin-bottom:24px}.visualization-container h2{margin:0 0 16px;color:var(--color-text-nav-hover);font-size:20px;font-weight:600}.no-data{padding:60px 20px;text-align:center;color:var(--color-text-tertiary);font-size:16px;background-color:var(--color-bg-muted);border:2px dashed var(--color-border-default);border-radius:8px}.test-info{background:var(--color-white);border-radius:8px;padding:24px;box-shadow:0 1px 3px var(--color-black-alpha-10)}.test-info h3{margin:0 0 12px;color:var(--color-text-nav-hover);font-size:18px;font-weight:600}.test-info ul,.test-info ol{margin:12px 0;padding-left:24px;color:var(--color-text-body-secondary);line-height:1.8}.test-info li{margin:8px 0}.test-info code{background-color:var(--color-bg-subtle);padding:2px 8px;border-radius:4px;font-size:13px;color:var(--color-brand-vivid);font-family:Courier New,monospace}.test-info a{color:var(--color-brand-vivid);text-decoration:none;font-weight:500}.test-info a:hover{text-decoration:underline}@media(max-width:768px){.plotly-test-page{padding:16px}.test-header{padding:20px}.test-header h1{font-size:24px}.data-display{grid-template-columns:1fr}.test-controls{flex-direction:column;align-items:stretch}.example-select{width:100%}}.backend-diagnostics{padding:24px;max-width:1200px;margin:0 auto;background-color:var(--color-bg-muted);min-height:100vh}.diag-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:20px;background:var(--color-white);border-radius:8px;box-shadow:0 1px 3px var(--color-black-alpha-10)}.diag-header h2{margin:0;font-size:24px;color:var(--color-text-secondary)}.diag-button{padding:10px 24px;background-color:var(--color-brand-vivid);color:var(--color-white);border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.diag-button:hover:not(:disabled){background-color:var(--color-brand-vivid-dark);transform:translateY(-1px)}.diag-button:disabled{opacity:.6;cursor:not-allowed}.diag-results{background:var(--color-white);border-radius:8px;padding:24px;box-shadow:0 1px 3px var(--color-black-alpha-10)}.diag-info{padding:12px;background-color:var(--color-bg-subtle);border-radius:6px;margin-bottom:24px;font-size:14px;color:var(--color-text-body-secondary)}.diag-section{margin-bottom:32px}.diag-section h3{margin:0 0 16px;font-size:18px;color:var(--color-text-secondary);border-bottom:2px solid var(--color-border-default);padding-bottom:8px}.diag-test{margin-bottom:16px;border:2px solid var(--color-border-default);border-radius:8px;padding:16px;transition:all .2s}.diag-test.success{border-color:var(--color-text-positive);background-color:var(--color-bg-success-wash)}.diag-test.error{border-color:var(--color-badge);background-color:var(--color-danger-bg)}.test-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.test-icon{font-size:20px}.test-name{font-size:16px;font-weight:600;color:var(--color-text-secondary)}.test-details{font-size:13px;color:var(--color-text-body-secondary);line-height:1.8}.test-details>div{margin:4px 0}.test-error{color:var(--color-danger);font-weight:500}.test-details code{background-color:var(--color-bg-subtle);padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:12px}.analysis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.analysis-item{padding:16px;border-radius:8px;border:2px solid var(--color-border-default);display:flex;justify-content:space-between;align-items:center}.analysis-item.ok{border-color:var(--color-text-positive);background-color:var(--color-bg-success-wash)}.analysis-item.warning{border-color:var(--color-text-warning-amber);background-color:var(--color-bg-warning)}.analysis-item.error{border-color:var(--color-badge);background-color:var(--color-danger-bg)}.analysis-label{font-weight:500;color:var(--color-text-body-secondary);font-size:14px}.analysis-value{font-size:16px}.issue-item{padding:16px;border-radius:8px;border-left:4px solid var(--color-text-placeholder);background-color:var(--color-bg-muted);margin-bottom:12px}.issue-item.severity-critical{border-left-color:var(--color-danger);background-color:var(--color-danger-bg)}.issue-item.severity-high{border-left-color:var(--color-text-warning-amber);background-color:var(--color-bg-warning)}.issue-item.severity-medium{border-left-color:var(--color-text-info);background-color:#eff6ff}.issue-message{font-weight:600;color:var(--color-text-secondary);margin-bottom:8px;font-size:14px}.issue-details{color:var(--color-text-placeholder);font-size:13px;line-height:1.6}.recommendation-item{padding:16px;border-radius:8px;background-color:var(--color-bg-info-soft);border:1px solid var(--color-border-info-soft);margin-bottom:12px}.rec-priority{display:inline-block;padding:4px 12px;background-color:var(--color-brand-vivid);color:var(--color-white);border-radius:12px;font-size:11px;font-weight:600;margin-bottom:8px}.rec-action{font-size:15px;color:var(--color-text-secondary);margin-bottom:6px}.rec-details{font-size:13px;color:var(--color-text-body-secondary);line-height:1.6}@media(max-width:768px){.backend-diagnostics{padding:16px}.diag-header{flex-direction:column;gap:16px;align-items:stretch}.diag-button{width:100%}.analysis-grid{grid-template-columns:1fr}}.safety-dashboard{flex:1;overflow-y:auto;padding:1.5rem;min-height:calc(100vh - 60px);background:var(--color-bg-app);width:100%;transition:padding-right .3s ease;box-sizing:border-box}.safety-dashboard.with-sidebar{padding-right:18px!important}.safety-dashboard.full-width{padding-right:1.5rem}.safety-dashboard-content{max-width:1400px;margin:0 auto}.safety-dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.safety-dashboard-title{font-size:32px;font-weight:600;color:var(--color-text-primary);margin:0}.safety-kpi-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.safety-kpi-card{background:var(--color-white);border-radius:8px;padding:21px;display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;box-shadow:0 1px 3px var(--color-black-alpha-10);border:1px solid var(--color-brand-lavender);transition:box-shadow .2s;position:relative}.safety-kpi-card:hover{box-shadow:0 4px 6px var(--color-black-alpha-10)}.kpi-icon-value-row{width:100%;display:flex;flex-direction:row;gap:auto;justify-content:space-between}.kpi-icon{width:36px;height:36px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.incident-label{font-size:14px;color:var(--color-text-primary);font-weight:400;line-height:1.2;text-transform:capitalize}.incident-value{font-size:36px;font-weight:400;color:var(--color-text-primary);line-height:1.2}.safety-analytics-section{margin-bottom:1.5rem}.analytics-charts{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.analytics-chart-card{border-radius:12px;padding:1.5rem;box-shadow:0 2px 12px var(--color-black-alpha-06)}.incidents-by-type-card,.severity-card{padding:1rem 1.25rem .75rem}.incidents-by-type-card{background:var(--gradient-card-default);border:2px solid var(--color-brand-primary-alpha-20)}.severity-card{border:2px solid var(--color-accent-magenta-alpha-20);background:var(--gradient-card-danger)}.incidents-over-time-card{border:1px solid var(--color-accent-cyan-alpha-20);background:var(--gradient-card-success)}.chart-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:0rem}.chart-title-section{flex:1}.chart-title{font-size:16px;font-weight:600;color:var(--color-text-form-label);margin:0 0 .25rem;display:flex;align-items:center;gap:.5rem}.chart-description{font-size:12px;color:var(--color-text-icon);margin:0;font-weight:400}.add-types-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:transparent;border:1px solid var(--color-border-default);border-radius:6px;font-size:13px;color:var(--color-text-icon);cursor:pointer;transition:all .2s}.add-types-btn:hover{background:var(--color-bg-muted);border-color:var(--color-border-primary)}.add-types-btn svg{width:12px;height:8px}.chart-content{display:flex;flex-direction:column;gap:0;height:auto;align-items:stretch}.chart-and-legend{display:flex;flex-direction:row;align-items:center;gap:.25rem;width:100%;padding:0;height:auto}.chart-wrapper{flex:1;min-width:0;max-width:55%;display:flex;align-items:center;justify-content:center;padding:0}.chart-wrapper .recharts-responsive-container{width:100%!important}.chart-legend-custom{display:flex;flex-direction:column;gap:0px;padding:0 0 0 .25rem;flex:1;max-width:43%}.chart-legend-custom .chart-total{margin-top:.35rem;min-width:117px}.legend-item-custom{display:flex;align-items:center;gap:.5rem;font-size:14.5px;width:100%;padding:.15rem 0}.legend-color{width:14px;height:14px;border-radius:4px;flex-shrink:0;display:inline-block}.legend-dot{border-radius:50%}.legend-text{display:flex;font-size:14.5px;color:var(--color-text-icon);font-weight:400;text-align:left;align-items:center}.legend-value{color:var(--color-text-form-label);font-size:14.5px!important;font-weight:400;text-align:right}.chart-total{display:flex;justify-content:space-between;font-size:14.5px;font-weight:400;color:var(--color-text-primary);background:var(--gradient-brand-subtle);padding:8px}.section-header{margin-bottom:1.5rem}.section-title-group{display:flex;flex-direction:column;gap:.5rem}.section-title{font-size:24px!important;font-weight:600;margin:1.5rem 0rem!important;color:var(--color-text-primary);margin:1.5rem 0rem;display:flex;align-items:center;gap:.5rem}.section-description{font-size:14px;color:var(--color-text-icon);margin:0;font-weight:400}.incidents-chart-container{background:var(--gradient-card-success);border-radius:8px;padding:1rem 1.5rem .5rem;box-shadow:0 1px 3px var(--color-black-alpha-10);border:2px solid var(--color-accent-cyan-alpha-20);width:100%;display:flex;flex-direction:column;gap:1.5rem;height:480px}.incidents-chart-container .recharts-cartesian-axis-tick-value{font-size:14.5px;fill:var(--color-text-dark-alt)}.incidents-chart-container .recharts-legend-wrapper .recharts-legend-item-text{color:var(--color-text-primary)}.chart-header-with-legend .chart-title-section{width:100%}.chart-title-legend-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem;margin-bottom:.25rem}.chart-title-legend-row .chart-title{margin:0;flex-shrink:0}.incidents-over-time-legend{display:flex;align-items:center;gap:1rem;flex-shrink:0;font-size:12.5px;color:var(--color-text-form-label)}.incidents-over-time-legend .legend-item{display:flex;align-items:center;gap:.35rem}.incidents-over-time-legend .legend-icon{width:12px;height:12px;border-radius:2px;flex-shrink:0}.incidents-over-time-legend .legend-label{white-space:nowrap}.safety-incident-records-section{margin:.75rem 0rem}.incident-records-container{background:var(--color-white);border-radius:8px;padding:1rem;box-shadow:0 1px 3px var(--color-black-alpha-10);border:1px solid var(--color-border-default)}.incident-records-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.incident-records-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0}.safety-stage-gates-section{padding-bottom:.25rem}.stage-gates-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;border-bottom:1px solid var(--color-border-primary);padding:0 0 8px}.stage-gates-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0}.stage-gates-info{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;margin-bottom:.5rem}.stage-gates-info-right{display:flex;align-items:center;gap:.5rem}.selected-incident-id{font-size:16px;font-weight:600;color:var(--color-text-form-label)}.selected-incident-id:after{content:" · ";color:var(--color-text-icon);font-weight:400;margin:0 .25rem}.last-updated{font-size:16px;color:var(--color-text-icon);font-weight:400}.stage-gates-pipeline{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.75rem;padding:0 1rem;overflow:auto;position:relative}.stage-gates-pipeline:before{content:"";position:absolute;top:32px;left:1rem;right:1rem;height:10px;background:var(--color-border-default);z-index:0}.stage-gate.completed:first-child:before{content:"";position:absolute;top:32px;left:0rem;right:calc(50% + 32px);height:10px;background:var(--gradient-success-green-vertical);z-index:1}.stage-gate.completed:not(:last-child):after{content:"";position:absolute;top:32px;left:calc(50% + 32px);width:100%;height:10px;background:var(--gradient-success-green-vertical);z-index:1}.stage-gate.completed+.stage-gate.active:after{content:"";position:absolute;top:32px;right:calc(50% + 35.2px);width:calc(100% / 7);height:3px;z-index:1}.stage-gate{display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative;z-index:1;flex:1}.stage-circle{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid;position:relative}.stage-gate.active .stage-circle{width:70.4px;height:70.4px;box-shadow:0 4px 16px 0 var(--color-brand-primary-alpha-30)}.stage-gate.completed .stage-circle{background-color:var(--color-success-dark);border-color:var(--color-border-success)}.stage-gate:not(.active):not(.completed) .stage-circle{background-color:var(--color-white)!important;border-color:var(--color-border-primary)}.stage-gate:not(.active):not(.completed) .stage-label{color:var(--color-text-icon)}.stage-gate:not(.active):not(.completed) .stage-number{color:var(--color-text-icon)}.stage-number{font-size:16px;font-weight:400;color:var(--color-text-on-dark-muted);position:relative;z-index:1}.stage-label{font-size:16px;color:var(--color-text-icon);text-align:center;font-weight:400}.stage-gate.active .stage-label{color:var(--color-brand-primary);font-weight:600}.stage-gate.completed .stage-label{color:var(--color-text-success);font-weight:600}.stage-status{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);font-size:9px;color:var(--color-brand-primary);background:var(--color-white);padding:2px 6px;border-radius:4px;font-weight:600;text-transform:uppercase;white-space:nowrap;z-index:2}.stage-legend{display:flex;gap:1.5rem;font-size:12.5px}.stage-legend .legend-text{display:flex;align-items:center;color:var(--color-text-icon)}.stage-legend .legend-dot{width:12px;height:12px;border-radius:50%;margin-right:5px;display:inline-block}.stage-legend .legend-dot.completed{background-color:var(--color-success-dark);border:1px solid var(--color-border-success)}.stage-legend .legend-dot.in-progress{background:var(--gradient-brand-vertical);border:1px solid var(--color-brand-primary)}.stage-legend .legend-dot.upcoming{background:var(--color-white);border:1px solid var(--color-border-primary)}.records-table-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0 0 .5rem;padding-bottom:5px;border-bottom:1px solid var(--color-border-default)}.table-search-container{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.search-input-wrapper{display:flex;align-items:center;gap:.5rem;border:1px solid var(--color-border-primary);border-radius:8px;padding:8px 12px;background:var(--color-white);width:464px;max-width:100%}.search-icon{color:var(--color-text-tertiary);flex-shrink:0}.search-input{flex:1;border:none;outline:none;font-size:16px;color:var(--color-text-primary)}.search-input::placeholder{color:var(--color-text-icon);font-size:16px}.safety-filter-wrapper{position:relative;flex-shrink:0}.filter-icon-btn{background:transparent;border:none;cursor:pointer;padding:.25rem;display:flex;align-items:center;gap:.25rem;color:var(--color-text-tertiary);transition:color .2s,border-color .2s,background .2s;position:relative}.filter-icon-btn.records-filter-btn-bordered{border:1.5px solid var(--color-border-primary);border-radius:8px;padding:10px 12px;color:var(--color-brand-primary);background:var(--color-white)}.filter-icon-btn.records-filter-btn-bordered:hover{color:var(--color-brand-primary);border-color:var(--color-brand-primary);background:var(--color-white)}.filter-icon-btn.records-filter-btn-bordered.active{border-color:var(--color-brand-primary);color:var(--color-brand-primary);background:var(--color-bg-brand-subtle)}.filter-icon-btn:hover{color:var(--color-text-icon)}.filter-icon-btn.active{color:var(--color-brand-primary)}.safety-filter-count{position:absolute;top:-4px;right:-4px;background:var(--color-brand-primary);color:var(--color-white);border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600}.safety-filter-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:var(--color-white);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 4px 12px var(--color-black-alpha-15);min-width:250px;max-width:300px;z-index:1000;overflow:hidden;max-height:500px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.safety-filter-dropdown.safety-table-filter-dropdown{min-width:280px}.safety-filter-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;border-bottom:1px solid var(--color-border-default);position:sticky;top:0;background:var(--color-white);z-index:1}.safety-filter-dropdown-title{font-size:16px;font-weight:600;color:var(--color-text-primary)}.safety-filter-dropdown-clear-all{font-size:14px;font-weight:500;color:var(--color-brand-primary);background:transparent;border:1px solid var(--color-brand-primary);border-radius:6px;padding:.25rem .75rem;cursor:pointer;white-space:nowrap;transition:background .2s}.safety-filter-dropdown-clear-all:hover{background:var(--color-bg-brand-subtle)}.dashboard-active-filters{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#f2f2f2;border-radius:8px;margin-bottom:1rem;flex-wrap:wrap}.dashboard-active-filters-label{font-size:14px;font-weight:700;color:var(--color-text-primary);white-space:nowrap;flex-shrink:0}.dashboard-active-filters-tags{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;flex:1;min-width:0}.dashboard-active-filter-tag{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .5rem .375rem .75rem;background:var(--color-bg-brand-subtle);border-radius:8px;flex-shrink:0}.dashboard-active-filter-tag-label{font-size:13px;font-weight:500;color:#7500c0;line-height:1.2}.dashboard-active-filter-tag-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:50%;background:var(--color-brand-primary-alpha-20, rgba(161, 0, 255, .12));font-size:12px;font-weight:600;color:var(--color-brand-primary);line-height:1}.dashboard-active-filter-tag-remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin-left:.125rem;border:none;background:transparent;cursor:pointer;color:var(--color-brand-primary);transition:background .2s,opacity .2s;border-radius:50%;flex-shrink:0}.dashboard-active-filter-tag-remove:hover{background:var(--color-vivid-alpha-10);opacity:.9}.dashboard-active-filter-tag-remove svg{width:12px;height:12px}.dashboard-clear-all-filters{font-size:14px;font-weight:500;color:#7500c0;background:transparent;border:none;cursor:pointer;padding:0;white-space:nowrap;text-decoration:underline;text-underline-offset:2px;flex-shrink:0;transition:opacity .2s}.dashboard-clear-all-filters:hover{opacity:.85}.dashboard-filter-dropdown-empty{padding:1rem;font-size:14px;color:var(--color-text-placeholder);text-align:center}.safety-filter-dropdown::-webkit-scrollbar{width:4px}.safety-filter-dropdown::-webkit-scrollbar-track{background:transparent;border:none}.safety-filter-dropdown::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px;border:none}.safety-filter-group{padding:0;border-bottom:1px solid var(--color-bg-subtle)}.safety-filter-group:last-child{border-bottom:none}.safety-filter-group-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;background:none;border:none;cursor:pointer;text-align:left;transition:background .2s}.safety-filter-group-header:hover{background:var(--color-bg-muted)}.safety-filter-group-title{font-size:16px;font-weight:600;color:var(--color-text-dark)}.safety-filter-group-arrow{display:flex;align-items:center;justify-content:center;color:var(--color-text-placeholder);flex-shrink:0}.safety-filter-group-header .safety-filter-group-arrow svg{display:block}.safety-filter-group .safety-filter-dropdown-options{padding:0 1rem .75rem 1.5rem;background:var(--color-bg-purple-wash-50);border-top:1px solid var(--color-border-muted)}.safety-filter-dropdown-options{display:flex;flex-direction:column;gap:.25rem}.safety-filter-dropdown-option{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border-radius:6px;cursor:pointer;transition:background .2s;font-size:14px;color:var(--color-text-nav-hover)}.safety-filter-dropdown-option:hover{background:var(--color-bg-muted)}.safety-filter-dropdown-option input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-brand-primary)}.safety-filter-dropdown-option span{flex:1}.dashboard-filter-dropdown-options--scroll{max-height:200px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.dashboard-filter-dropdown-options--scroll::-webkit-scrollbar{width:4px}.dashboard-filter-dropdown-options--scroll::-webkit-scrollbar-track{background:transparent;border:none}.dashboard-filter-dropdown-options--scroll::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px;border:none}.dashboard-filter-panel{background:var(--color-white);border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px var(--color-black-alpha-10);border:1px solid var(--color-border-default)}.dashboard-filter-panel .dashboard-active-filters{margin-bottom:1rem}.safety-clear-all-filters{width:100%;padding:.75rem 1rem;background:var(--color-bg-muted);border:none;border-top:1px solid var(--color-border-default);color:var(--color-badge);font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.safety-clear-all-filters:hover{background:var(--color-bg-error-soft)}.records-table-container{overflow-x:auto;border:1px solid var(--color-border-default);border-radius:8px;background:var(--color-white);position:relative}.records-table-pagination{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--color-border-default);border-top:none;border-radius:0 0 8px 8px;background:var(--color-white);gap:12px;flex-wrap:wrap}.records-pagination-summary{font-size:13px;color:var(--color-text-secondary, #6b7280);white-space:nowrap}.records-pagination-controls{display:flex;align-items:center;gap:12px}.records-pagination-per-page{display:flex;align-items:center;gap:6px}.records-pagination-select{border:1px solid var(--color-border-default);border-radius:6px;padding:4px 24px 4px 8px;font-size:13px;color:var(--color-text-primary, #111827);background:var(--color-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 6px center;appearance:none;cursor:pointer;min-width:52px}.records-pagination-select:focus{outline:none;border-color:var(--color-brand-primary, #6c27be)}.records-pagination-per-page-label{font-size:13px;color:var(--color-text-secondary, #6b7280);white-space:nowrap}.records-pagination-nav{display:flex;align-items:center;gap:4px}.records-pagination-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--color-border-default);border-radius:6px;background:var(--color-white);color:var(--color-text-primary, #111827);cursor:pointer;transition:background .15s,border-color .15s}.records-pagination-btn:hover:not(:disabled){background:var(--color-bg-muted, #f3f4f6);border-color:var(--color-brand-primary, #6c27be)}.records-pagination-btn:disabled{opacity:.35;cursor:not-allowed}.records-table{width:100%;border-collapse:collapse;border-radius:8px;overflow:hidden;background:var(--color-white)}.records-table thead{background:var(--color-bg-muted)}.records-table th{padding:6px 2px 6px 8px;text-align:left;font-size:12px;font-weight:600;color:var(--color-text-icon);text-transform:capitalize;border:.5px solid var(--color-border-primary);white-space:nowrap;background:var(--color-bg-muted);height:40px}.records-table td{padding:6px 2px 6px 8px;font-size:14px;color:var(--color-text-heading-strong);height:44px;border:.5px solid var(--color-border-primary);background:var(--color-white)}.records-table td.type-column{color:var(--color-text-icon)}.records-table th.records-table-col-risk-id,.records-table td.records-table-col-risk-id{min-width:88px;width:88px;max-width:88px;box-sizing:border-box;vertical-align:middle}.records-table td.records-table-col-risk-id .incident-id-link{white-space:nowrap}.records-table th.records-table-col-risk-category,.records-table td.records-table-col-risk-category{max-width:112px;width:112px;box-sizing:border-box;vertical-align:middle}.records-table th.records-table-col-risk-category{white-space:normal;line-height:1.25;-webkit-hyphens:auto;hyphens:auto}.records-table td.records-table-col-risk-category{overflow:hidden}.records-table td.records-table-col-risk-category .severity-badge{max-width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.records-table th.records-table-col-schedule-impact,.records-table td.records-table-col-schedule-impact{max-width:96px;width:96px;box-sizing:border-box;vertical-align:middle}.records-table th.records-table-col-schedule-impact{white-space:normal;line-height:1.25;-webkit-hyphens:auto;hyphens:auto}.records-table td.records-table-col-schedule-impact{overflow:hidden}.records-table td.records-table-col-schedule-impact .severity-badge{max-width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.records-table td .severity-badge,.records-table td .status-badge{font-size:14px;padding:4px 8px;border-radius:16px}.records-table tbody tr:hover{background:var(--color-bg-muted)}.incident-id-link{background:none;border:none;color:var(--color-text-primary);text-decoration:underline;cursor:pointer;font-size:14px;padding:0;font-weight:600}.incident-id-link.selected,.incident-id-link:hover{color:var(--color-brand-primary)}.severity-badge,.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:16px;font-weight:400}.severity-badge.low-severity{color:var(--color-text-success);background:var(--color-success-bg-light)!important;border:1px solid var(--color-border-success)}.severity-badge.high-severity,.status-badge.high-status{color:var(--color-text-accent-red);background:var(--color-danger-bg);border:1px solid var(--color-error-border-light)}.severity-badge.medium-severity{color:var(--color-text-warning-emphasis);background:var(--color-bg-warning);border:1px solid var(--color-warning-border-light)}.status-badge.approved-status{color:var(--color-accent-blue);background:var(--color-accent-blue-alpha-10);border:1px solid var(--color-accent-blue-alpha-30)}.status-badge.pending-status{color:var(--color-text-warning-emphasis);background:var(--color-bg-warning);border:1px solid var(--color-warning-border-light)}.status-badge.rejected-status{color:var(--color-text-accent-red);background:var(--color-danger-bg);border:1px solid var(--color-error-border-light)}.records-table-loading-overlay{position:absolute;inset:0;background:#ffffffd9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:10;border-radius:8px}.records-table-loading-overlay span{color:var(--color-text-placeholder);font-size:14px;font-weight:500}@media(max-width:1024px){.safety-kpi-cards{grid-template-columns:repeat(2,1fr)}.analytics-charts{grid-template-columns:1fr}}@media(max-width:768px){.safety-dashboard{padding:1rem}.safety-dashboard-header{flex-direction:column;align-items:flex-start;gap:1rem}.safety-kpi-cards{grid-template-columns:1fr}.safety-dashboard-title{font-size:24px}.stage-gates-pipeline{flex-wrap:wrap;padding:0 1rem}.stage-gates-pipeline:before{display:none}.records-table-container{overflow-x:scroll}.records-table{min-width:1000px}}.ask-ct-ai-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-white);color:var(--color-brand-purple-dark);border:1.5px solid var(--color-brand-purple-dark);border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:background .2s}.ask-ct-ai-btn:hover{background:var(--color-white);color:var(--color-brand-purple-dark)}.ask-ct-ai-btn svg{width:16px;height:16px}.create-incident-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-white);color:var(--color-brand-purple-dark);border:1.5px solid var(--color-brand-purple-dark);border-radius:4px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.create-incident-btn:hover{background:var(--color-bg-purple-tint)}.create-incident-btn svg{width:16px;height:16px}.action-buttons{display:flex;gap:.5rem;align-items:center}.action-btn{background:transparent;border:none;cursor:pointer;padding:.25rem;display:flex;align-items:center;color:var(--color-text-icon);transition:color .2s;border-radius:4px}.action-btn:hover{color:var(--color-brand-primary);background:var(--color-bg-brand-subtle)}.edit-incident-modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.edit-incident-modal-content{background:var(--color-white);border-radius:12px;box-shadow:0 20px 25px -5px var(--color-black-alpha-10),0 10px 10px -5px var(--color-black-alpha-04);max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.edit-incident-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 24px;border-bottom:1px solid var(--color-border-default);background:var(--gradient-brand-blue-subtle);position:sticky;top:0;z-index:10;flex-shrink:0}.edit-incident-title-section{display:flex;align-items:flex-start;gap:12px}.edit-icon-box{width:40px;height:40px;background:var(--gradient-brand-to-blue);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.edit-incident-title{font-size:24px;font-weight:600;color:var(--color-text-primary);margin:0 0 4px}.edit-incident-id{font-size:16px;color:var(--color-text-icon);margin:0}.edit-modal-close-btn{background:none;border:none;cursor:pointer;padding:4px;color:var(--color-text-icon);display:flex;align-items:center;justify-content:center;border-radius:50%;width:32px;height:32px;transition:all .2s}.edit-modal-close-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-nav-hover)}.edit-incident-modal-body{padding:24px;flex:1;overflow-y:auto;overflow-x:hidden}.edit-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.form-field{display:flex;flex-direction:column;gap:8px}.form-field-full{grid-column:1 / -1}.form-field label{font-size:14px;font-weight:400;color:var(--color-text-dark)}.form-field input,.form-field textarea{padding:10px 12px;border:1px solid var(--color-border-dotted);border-radius:6px;font-size:14px;color:var(--color-text-dark);transition:border-color .2s}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:var(--color-brand-primary)}.form-field select,.edit-form-select{width:100%;padding:10px 12px;border:1px solid var(--color-border-dotted);border-radius:6px;font-size:14px;color:var(--color-text-dark);background-color:var(--color-white);cursor:pointer;appearance:auto}.form-field textarea{resize:vertical;min-height:100px}.attachments-section label{display:block;font-size:14px;font-weight:500;color:var(--color-text-nav-hover);margin-bottom:12px}.file-upload-box{border:2px dashed var(--color-border-dotted);border-radius:8px;padding:40px;text-align:center;position:relative;background:var(--color-bg-muted);transition:all .2s;cursor:pointer}.file-upload-box:hover{border-color:var(--color-brand-primary);background:var(--color-bg-subtle)}.file-upload-content{display:flex;flex-direction:column;align-items:center;gap:12px}.file-upload-content svg{width:48px;height:48px}.upload-text-primary{font-size:14px;font-weight:400;color:var(--color-brand-primary);margin:0}.upload-text-secondary{font-size:14px;color:var(--color-text-primary);margin:0}.file-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.attachments-list{margin-top:16px;display:flex;flex-direction:column;gap:12px}.attachment-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-bg-muted);border-radius:6px;border:1px solid var(--color-border-default)}.attachment-item svg{flex-shrink:0}.attachment-name{flex:1;font-size:14px;color:var(--color-text-heading)}.attachment-size{font-size:12px;color:var(--color-text-placeholder)}.remove-attachment-btn{background:none;border:none;cursor:pointer;padding:4px;color:var(--color-badge);display:flex;align-items:center;justify-content:center;border-radius:4px;width:24px;height:24px;transition:all .2s}.remove-attachment-btn:hover{background:var(--color-bg-error-soft)}.edit-incident-modal-footer{display:flex;justify-content:flex-start;gap:12px;padding:24px;border-top:1px solid var(--color-border-default);flex-direction:row-reverse;background:var(--color-white);position:sticky;bottom:0;z-index:10;flex-shrink:0}.cancel-btn{padding:10px 20px;background:var(--color-white);border:1px solid var(--color-border-dotted);border-radius:6px;font-size:14px;font-weight:500;color:var(--color-text-nav-hover);cursor:pointer;transition:all .2s}.cancel-btn:hover{background:var(--color-bg-muted);border-color:var(--color-text-tertiary)}.save-changes-btn{padding:8px 16px;background:var(--color-brand-purple-dark);border:none;border-radius:6px;font-size:16px;font-weight:500;color:var(--color-white);cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s}.save-changes-btn:hover{background:var(--color-brand-purple-bright)}.save-changes-btn svg{width:16px;height:16px}.add-documents-modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.add-documents-modal-content{background:var(--color-white);border-radius:12px;box-shadow:0 20px 25px -5px var(--color-black-alpha-10),0 10px 10px -5px var(--color-black-alpha-04);max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.add-documents-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 24px;border-bottom:1px solid var(--color-border-default);background:var(--gradient-brand-blue-subtle);position:sticky;top:0;z-index:10;flex-shrink:0}.add-documents-title-section{display:flex;align-items:flex-start;gap:12px}.add-documents-icon-box{width:40px;height:40px;background:var(--color-brand-primary);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.add-documents-title{font-size:24px;font-weight:600;color:var(--color-text-primary);margin:0 0 4px}.add-documents-id{font-size:16px;color:var(--color-text-icon);margin:0}.add-documents-modal-close-btn{background:none;border:none;cursor:pointer;padding:4px;color:var(--color-text-icon);display:flex;align-items:center;justify-content:center;border-radius:50%;width:32px;height:32px;transition:all .2s}.add-documents-modal-close-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-nav-hover)}.add-documents-modal-body{padding:24px;flex:1;overflow-y:auto;overflow-x:hidden}.add-documents-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid var(--color-border-default);background:var(--color-white);position:sticky;bottom:0;z-index:10;flex-shrink:0}.loading-dots-inline{display:inline-flex;align-items:center;gap:4px}.loading-dots-inline .dot{width:5px;height:5px;background-color:var(--color-text-primary);border-radius:50%;animation:pulse-dot-inline 1.4s ease-in-out infinite}.loading-dots-inline .dot:nth-child(1){animation-delay:0s}.loading-dots-inline .dot:nth-child(2){animation-delay:.2s}.loading-dots-inline .dot:nth-child(3){animation-delay:.4s}@keyframes pulse-dot-inline{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.no-data-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;padding:40px 20px}.no-data-title{font-size:16px;color:var(--color-text-placeholder);font-weight:500}.safety-error-container,.safety-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;padding:40px 20px;grid-column:1 / -1;background:var(--color-bg-app);border-radius:8px;min-height:200px}.safety-error-state svg{margin-bottom:16px}.safety-error-message{font-size:16px;color:var(--color-text-placeholder);font-weight:500;margin-bottom:16px}.safety-retry-btn{background:var(--gradient-brand-purple-vertical);color:var(--color-white);border:none;padding:10px 32px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.safety-kpi-error,.safety-chart-api-error,.safety-records-error{grid-column:1 / -1;width:100%}.safety-retry-btn:hover{opacity:.9}.success-toast{position:fixed;top:80px;right:24px;display:flex;align-items:center;gap:10px;background:var(--gradient-positive-success-vertical);color:var(--color-white);padding:14px 20px;border-radius:8px;box-shadow:0 4px 12px var(--color-text-positive-bright) 4d;z-index:10000;animation:slideInRight .3s ease-out,fadeOut .3s ease-in 2.7s forwards;font-size:14px;font-weight:500}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.date-picker-input{width:100%;padding:10px 12px;border:1px solid var(--color-border-default);border-radius:6px;font-size:14px;color:var(--color-text-nav-hover);background-color:var(--color-white);cursor:pointer}.date-picker-input:focus{outline:none;border-color:var(--color-brand-primary);box-shadow:0 0 0 2px var(--color-brand-alpha-10)}.date-picker-input::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(.5)}.date-picker-input::-webkit-datetime-edit-text,.date-picker-input::-webkit-datetime-edit-month-field,.date-picker-input::-webkit-datetime-edit-day-field,.date-picker-input::-webkit-datetime-edit-year-field{text-transform:uppercase}.date-picker-input.date-placeholder::-webkit-datetime-edit-text,.date-picker-input.date-placeholder::-webkit-datetime-edit-month-field,.date-picker-input.date-placeholder::-webkit-datetime-edit-day-field,.date-picker-input.date-placeholder::-webkit-datetime-edit-year-field{text-transform:uppercase;color:var(--color-text-tertiary)}.cost-dashboard{flex:1;overflow-y:auto;padding:1.5rem;min-height:calc(100vh - 60px);background:var(--color-bg-app);width:100%;transition:padding-right .3s ease;box-sizing:border-box}.cost-dashboard.with-sidebar{padding-right:18px!important}.cost-dashboard.full-width{padding-right:1.5rem}.cost-dashboard-content{max-width:1400px;margin:0 auto}.cost-dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.cost-dashboard-title{font-size:32px;font-weight:600;color:var(--color-text-primary);margin:0}.cost-kpi-stack{display:flex;flex-direction:column;gap:1rem}.cost-kpi-cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem}.cost-kpi-cards-no-data{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;min-height:140px;background:var(--color-white);border-radius:8px;border:1px solid var(--color-border-primary);box-shadow:0 1px 3px var(--color-black-alpha-10);box-sizing:border-box}.cost-kpi-cards-error{grid-column:1 / -1}@media(max-width:1200px){.cost-kpi-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:768px){.cost-kpi-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.cost-kpi-card{background:var(--color-white);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 1px 3px var(--color-black-alpha-10);border:1px solid var(--color-border-primary);box-sizing:border-box;min-height:90px;position:relative}.cost-kpi-card:hover{box-shadow:0 4px 6px var(--color-black-alpha-10)}.cost-kpi-card.cost-kpi-card--drill-open{border:1px solid var(--color-brand-primary);box-shadow:var(--color-black-alpha-08)}.cost-dashboard .cost-kpi-card .metric-card-title{font-size:14px;color:var(--color-text-primary);font-weight:400;line-height:1.2;margin:0}.cost-kpi-card-value-block{display:flex;flex-direction:column;align-items:flex-end;gap:10px;margin-top:auto;width:100%}.cost-dashboard .cost-kpi-card .metric-card-value{font-size:23px;font-weight:600;color:var(--color-text-primary);line-height:1;margin:0;align-self:stretch;text-align:left}.cost-kpi-card-expand{flex-shrink:0;width:24px;height:24px;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;line-height:0;transition:opacity .2s;position:relative}.cost-kpi-card-expand[data-tooltip]:hover:after,.cost-kpi-card-expand[data-tooltip]:focus-visible:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);color:var(--color-text-primary);background:var(--color-white);border:1px solid var(--color-border-primary);padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;line-height:1.2;white-space:nowrap;pointer-events:none;z-index:100}.cost-kpi-card-expand[data-tooltip]:hover:before,.cost-kpi-card-expand[data-tooltip]:focus-visible:before{content:"";position:absolute;bottom:calc(100% + 1px);left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--color-text-primary, #1d1823);pointer-events:none;z-index:100}.cost-kpi-card-expand:not(.cost-kpi-card-expand--expanded):hover{opacity:.85}.cost-kpi-card-expand svg{display:block;width:24px;height:24px}.cost-kpi-drill-panel{background:var(--color-white);border-radius:12px;border:1px solid var(--color-border-primary);padding:1rem 1.25rem 1.25rem;box-shadow:0 1px 3px var(--color-black-alpha-10);box-sizing:border-box}.cost-kpi-drill-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:1rem}.cost-kpi-drill-title{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary);line-height:1.25}.cost-kpi-drill-close{flex-shrink:0;background:none;border:none;cursor:pointer;padding:.25rem;color:var(--color-text-icon);display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;width:24px;height:24px}.cost-kpi-drill-close:hover{background:var(--color-bg-subtle);color:var(--color-text-nav-hover)}.cost-kpi-drill-close img{width:20px;height:20px;display:block}.cost-drill-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:3px;width:70%}.cost-drill-table{width:100%;min-width:0;border-collapse:collapse;font-size:13px;color:var(--color-text-primary)}.cost-drill-table thead th{text-align:left;font-weight:600;font-size:12px;color:var(--color-text-icon);padding:10px 12px;background:var(--color-bg-neutral-soft);border:1px solid var(--color-border-neutral-light);white-space:nowrap}.cost-drill-table tbody td{padding:10px 12px;font-size:14px;vertical-align:middle;border:1px solid var(--color-border-neutral-light);font-variant-numeric:tabular-nums}.cost-drill-table-empty{text-align:center;color:var(--color-text-secondary, #6b7280);padding:2rem 12px!important;font-weight:400!important}.cost-dashboard .sia-empty-container{font-weight:400}.cost-dashboard .cost-insight-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:6px}.cost-dashboard .cost-insight-title-row .sia-insight-title{margin:0}.cost-dashboard .cost-insight-impact-col{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;align-self:flex-start;margin-top:2px}.cost-dashboard .cost-insight-ai-sparkle{display:flex;line-height:0;flex-shrink:0}.cost-dashboard .cost-insight-ai-sparkle svg{display:block}.cost-dashboard-charts-row{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,6fr);gap:1.5rem;align-items:stretch;margin-top:1.5rem;width:100%;min-width:0}@media(max-width:1100px){.cost-dashboard-charts-row{grid-template-columns:1fr}}.budget-util-card{margin-top:0;margin-bottom:0;width:100%;min-width:0;background:var(--gradient-card-default);border-radius:12px;border:2px solid var(--color-brand-primary-alpha-20);box-shadow:0 1px 2px var(--color-black-alpha-08);padding:1rem 1.25rem 1.25rem;box-sizing:border-box;display:flex;flex-direction:column;flex:1;min-height:0}.budget-util-header{margin-bottom:.5rem}.budget-util-title{margin:0 0 .25rem;font-size:16px;font-weight:600;color:var(--color-text-primary);line-height:1.25}.budget-util-subtitle{margin:0;font-size:12px;font-weight:400;color:var(--color-text-secondary);line-height:1.35}.budget-util-donut-wrap{flex:1 1 auto;width:100%;display:flex;align-items:center;justify-content:center}.budget-util-no-data-wrap{flex:1 1 auto;width:100%}.budget-util-donut{position:relative;width:min(220px,100%);aspect-ratio:1;margin-inline:auto;box-sizing:border-box;flex-shrink:0}.budget-util-donut-ring{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 135deg,var(--bu-util) 0turn calc(var(--bu-pct) * 1turn),var(--bu-ring) calc(var(--bu-pct) * 1turn) 1turn);-webkit-mask:radial-gradient(farthest-side,transparent 54%,#000 55.5%);mask:radial-gradient(farthest-side,transparent 54%,#000 55.5%)}.budget-util-donut-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:1}.budget-util-pct{font-size:clamp(1.125rem,9vw,2rem);font-weight:700;color:var(--color-text-primary);line-height:1;font-size:24px}.budget-util-summary{margin-top:.75rem;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.budget-util-summary-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.budget-util-summary-label{font-size:14px;font-weight:400;color:var(--color-text-primary)}.budget-util-summary-value{font-size:14px;font-weight:700;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.budget-util-legend{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5rem;margin-top:1rem;padding-top:.25rem}.budget-util-legend-item{display:flex;align-items:center;gap:8px}.budget-util-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.budget-util-legend-text{font-size:13px;font-weight:500;color:var(--color-text-primary)}.cost-cashflow-card{background:var(--gradient-card-danger);border-radius:6px;padding:1rem;box-shadow:0 1px 2px var(--color-black-alpha-08);border:2px solid var(--color-accent-magenta-alpha-20);display:flex;flex-direction:column;min-width:0;flex:1;box-sizing:border-box}.cost-cashflow-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:1rem}.cost-cashflow-title-block{flex:1;min-width:0}.cost-cashflow-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:.25rem}.cost-cashflow-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0}.cost-cashflow-yearly-pill{font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--color-brand-purple-mid);color:var(--color-white);line-height:1;flex-shrink:0}.cost-cashflow-subtitle{font-size:12px;color:var(--color-text-icon);margin:0;font-weight:400}.cost-cashflow-view-toggle{flex-shrink:0;display:flex;background:var(--color-bg-subtle);border-radius:25px;padding:2px;gap:2px}.cost-cashflow-view-toggle .toggle-btn{padding:6px 14px;font-size:12px;font-weight:500;border:none;background:transparent;color:var(--color-text-placeholder);cursor:pointer;border-radius:25px;transition:all .2s ease}.cost-cashflow-view-toggle .toggle-btn:hover{color:var(--color-text-nav-hover)}.cost-cashflow-view-toggle .toggle-btn.active{background:var(--color-brand-purple-mid);color:var(--color-white);box-shadow:0 1px 3px var(--color-brand-purple-alpha-30)}.cost-cashflow-chart-wrap{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;border:none;border-radius:4px;overflow:hidden;background:var(--color-white)}.cost-cashflow-chart-wrap>.recharts-responsive-container{position:relative;z-index:2;width:100%!important}.cost-cashflow-legend{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;padding:8px 8px 10px;margin-top:4px;font-size:14px;color:var(--color-text-icon)}.cost-cashflow-legend-item{display:flex;align-items:center;gap:6px}.cost-cashflow-legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.cost-cashflow-no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;padding:40px 20px}.cost-cashflow-no-data-title{font-size:16px;font-weight:400;color:var(--color-text-night);margin:0}.cost-dashboard .cost-dashboard-charts-row .recharts-label{font-size:12px;fill:var(--color-text-primary);font-weight:400}.cost-wbs-card{margin-top:1.5rem;background:var(--color-white);border-radius:12px;border:1px solid var(--color-border-primary);box-shadow:0 1px 2px var(--color-black-alpha-08);padding:1rem 1.25rem 1.25rem;box-sizing:border-box}.cost-wbs-card-header{margin-bottom:1rem}.cost-wbs-title-block{display:flex;align-items:center;gap:10px;margin-bottom:.75rem}.cost-wbs-title-icon{display:flex;flex-shrink:0}.cost-wbs-title{margin:0;font-size:24px;font-weight:600;color:var(--color-text-primary);line-height:1.25}.cost-wbs-toolbar{display:flex;align-items:center;gap:10px}.cost-wbs-search{flex:1;min-width:0;max-width:414px;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--color-border-primary);border-radius:8px;background:var(--color-white)}.cost-wbs-search-icon{flex-shrink:0;color:var(--color-text-secondary, #6b7280)}.cost-wbs-search-input{flex:1;min-width:0;border:none;outline:none;font-size:14px;color:var(--color-text-primary);background:transparent}.cost-wbs-search-input::placeholder{color:var(--color-text-secondary, #9ca3af)}.cost-wbs-toolbar-filter-slot{position:relative;flex-shrink:0}.cost-wbs-legend{display:flex;margin-left:auto;align-items:center;gap:16px;flex-shrink:0}.cost-wbs-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-primary);white-space:nowrap}.cost-wbs-legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.cost-wbs-legend-dot--ontrack{background:var(--color-text-success)}.cost-wbs-legend-dot--over{background:var(--color-text-error-soft)}.cost-wbs-card .dashboard-active-filters{margin-bottom:1rem}.cost-error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;padding:40px 20px;border-radius:8px;min-height:200px;box-sizing:border-box}.cost-error-container--compact{min-height:auto;padding:16px 12px}.cost-error-container--inline{min-height:120px;padding:24px 16px}.cost-error-message{font-size:16px;color:var(--color-text-placeholder);font-weight:500;margin-bottom:16px}.cost-error-container--compact .cost-error-message{font-size:13px;margin-bottom:12px}.cost-retry-btn{background:var(--gradient-brand-purple-vertical);color:var(--color-white);border:none;padding:10px 32px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.cost-retry-btn:hover{opacity:.9}.cost-wbs-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--color-border-default);border-radius:8px}.cost-wbs-table{width:100%;min-width:1040px;table-layout:fixed;border-collapse:collapse;font-size:14px;color:var(--color-text-primary)}.cost-wbs-col-wbs-code{width:99px}.cost-wbs-col-label{width:auto}.cost-wbs-col-metric{width:5.5rem}.cost-wbs-col-eac{width:150px}.cost-wbs-col-status{width:79px}.cost-wbs-col-action{width:6.5rem}.cost-wbs-table thead th{text-align:left;font-weight:600;font-size:12px;color:var(--color-text-icon);padding:10px 12px;background:var(--color-bg-neutral-soft);border:1px solid var(--color-border-neutral-light);white-space:nowrap}.cost-wbs-table thead th:nth-child(n+2){padding-left:8px;padding-right:8px}.cost-wbs-empty-table-msg{text-align:center;color:var(--color-text-secondary, #6b7280);padding:2rem 12px!important;font-weight:400!important}.cost-wbs-row td{border:1px solid var(--color-border-neutral-light);border-right:none;padding:10px 12px;vertical-align:middle;font-size:14px;font-weight:400!important;text-align:left;background-color:var(--color-bg-neutral-soft)}.cost-wbs-row--depth-1 td{background-color:var(--color-text-neutral-pale);border-bottom:1px solid var(--color-border-neutral-light)}.cost-wbs-row--line-item td{background-color:var(--color-white)}.cost-wbs-cell--wbs-code,.cost-wbs-cell--category{display:table-cell}.cost-wbs-cell--parent-merged,.cost-wbs-cell--category{overflow:hidden;max-width:1px}.cost-wbs-cell--parent-merged{font-weight:600!important;overflow:visible;max-width:none}.cost-wbs-cell--parent-merged .cost-wbs-code-text{overflow:visible;text-overflow:clip}.cost-wbs-parent-code-wrap{display:flex;align-items:center;gap:4px;min-width:0;width:100%;overflow:hidden}.cost-wbs-cell--parent-merged .cost-wbs-expand,.cost-wbs-cell--wbs-code .cost-wbs-expand{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;margin-right:4px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--color-text-primary);cursor:pointer;flex-shrink:0}.cost-wbs-cell--parent-merged .cost-wbs-expand:hover,.cost-wbs-cell--wbs-code .cost-wbs-expand:hover{background:var(--color-bg-app)}.cost-wbs-chevron--tree{display:block;transition:transform .15s ease;transform:rotate(-90deg)}.cost-wbs-chevron--tree.is-open{transform:rotate(0)}.cost-wbs-chevron--view-more{display:block;transition:transform .15s ease;transform:rotate(0)}.cost-wbs-chevron--view-more.is-open{transform:rotate(180deg)}.cost-wbs-view-more .cost-wbs-chevron--view-more path{fill:#9d4edd}.cost-wbs-code-text{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:1.4}.cost-wbs-cell--category>.cost-wbs-code-text{display:block;width:100%}.cost-wbs-cell--category{box-sizing:border-box}.cost-wbs-cell--num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:8px;padding-right:8px}.cost-wbs-cell--status{text-align:center;overflow:visible;white-space:nowrap;padding-left:8px;padding-right:8px}.cost-wbs-cell--status .wbs-status-pill{display:inline-flex;max-width:none;overflow:visible;vertical-align:middle;box-sizing:border-box}.cost-wbs-cell--action{text-align:center;white-space:nowrap;padding-left:8px;padding-right:8px}.cost-wbs-cell--action:empty{padding-left:8px;padding-right:8px}.cost-wbs-var--alert{color:#e11d8f;font-weight:600}.wbs-status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.wbs-status-dot--under{background:var(--color-text-success)}.wbs-status-dot--over{background:var(--color-text-error-soft)}.wbs-status-pill{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.wbs-status-pill.wbs-status-under{color:#15803d;background:#ecfdf3;border:1px solid #86efac}.wbs-status-pill.wbs-status-ontrack{color:#1d4ed8;background:#eff6ff;border:1px solid #93c5fd}.wbs-status-pill.wbs-status-over{color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5}.wbs-status-pill.wbs-status-neutral{color:#4b5563;background:#f9fafb;border:1px solid #e5e7eb}.cost-wbs-view-more{display:inline-flex;align-items:center;gap:6px;border:none;background:none;padding:0;font-size:13px;font-weight:500;color:#9d4edd;cursor:pointer;text-decoration:none}.cost-wbs-view-more .cost-wbs-chevron{flex-shrink:0}.gantt-chart-activity-tooltip{position:fixed;color:var(--color-text-dark);background:var(--color-white);padding:8px 12px;border-radius:6px;font-size:12px;font-weight:400;max-width:400px;word-wrap:break-word;z-index:1002;pointer-events:none;box-shadow:0 4px 12px var(--color-black-alpha-15);margin-bottom:8px}.gantt-chart-activity-tooltip:after{content:"";position:absolute;top:100%;left:20px;border:6px solid transparent;border-top-color:var(--color-text-secondary)}*{margin:0;padding:0;box-sizing:border-box}.global-project-selector{display:flex;align-items:center;position:relative}.global-project-selector .project-select-btn{display:flex;align-items:center;gap:.5rem;min-width:0;padding:.625rem 1rem;background:var(--color-bg-elevated);color:var(--color-brand-primary);border:1px solid var(--color-brand-primary);border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px var(--color-brand-primary-alpha-20);width:180px;justify-content:space-between}.global-project-selector .project-select-btn .project-select-btn-label{min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.global-project-selector .project-select-btn:hover:not(:disabled){box-shadow:var(--shadow-brand-md);transform:translateY(-1px)}.global-project-selector .project-select-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px var(--color-brand-primary-alpha-20)}.global-project-selector .project-select-btn:focus{outline:none;box-shadow:var(--shadow-focus-brand)}.global-project-selector .project-select-btn:disabled{opacity:.6;cursor:not-allowed}.global-project-selector .project-select-btn svg{width:12px;height:8px;flex-shrink:0;stroke:var(--color-brand-primary)}.global-project-selector .project-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:var(--color-bg-elevated);border-radius:8px;box-shadow:0 4px 12px var(--color-black-alpha-15);min-width:200px;z-index:1000;overflow:hidden;border:1px solid var(--color-border-default)}.global-project-selector .project-dropdown-item{display:block;width:100%;padding:.75rem 1rem;background:var(--color-bg-elevated);border:none;text-align:left;font-size:14px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:background .2s ease}.global-project-selector .project-dropdown-item:hover{background:var(--color-bg-muted);background-color:var(--color-bg-muted)}.global-project-selector .project-dropdown-item.active{background:var(--color-bg-brand-subtle);color:var(--color-brand-primary);font-weight:600}.global-project-selector .project-dropdown-item.active:hover{background:var(--color-white);color:var(--color-text-primary)}.ld-backdrop{position:fixed;inset:0;z-index:1100;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#0a051e8c;pointer-events:all}.ld-dialog{position:fixed;z-index:1110;display:flex;flex-direction:column;margin:auto;inset:91% 0 0 50%;transform:translate(-50%,-50%);width:min(680px,92vw);height:94vh;max-height:94vh;border-radius:12px;overflow:hidden;box-shadow:0 24px 60px #00000059,0 4px 16px #0003;background:var(--color-white, #fff);font-family:inherit}.ld-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;background:linear-gradient(135deg,#5e259b,#7c3abf);color:#fff;flex-shrink:0}.ld-header-left{display:flex;align-items:center;gap:12px}.ld-shield-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:#ffffff2e;color:#fff;flex-shrink:0}.ld-header-title{font-size:16px;font-weight:700;line-height:1.2;color:#fff}.ld-header-subtitle{font-size:12px;color:#ffffffc7;margin-top:2px}.ld-required-badge{font-size:11px;font-weight:600;letter-spacing:.04em;color:#fff;border:1.5px solid rgba(255,255,255,.65);border-radius:999px;padding:3px 11px;white-space:nowrap;flex-shrink:0}.ld-scroll-hint{display:flex;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:500;padding:7px 22px;background:#fdf6ff;border-bottom:1px solid #e8d5f5;color:#7c3abf;flex-shrink:0;transition:background .3s,color .3s,border-color .3s}.ld-scroll-hint--done{background:#f0faf4;border-bottom-color:#b6dfca;color:#1d7a4a}.ld-privacy-highlight{color:#7c00c9;font-weight:500;text-decoration:none;cursor:pointer}.ld-privacy-highlight:hover,.ld-privacy-highlight:focus-visible{color:#5c0093}.ld-privacy{margin-bottom:14px}.ld-privacy-heading-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.ld-privacy-title{flex-shrink:0;margin:0;font-size:12px;line-height:1.3;font-weight:700;color:#1a1a2e}.ld-privacy-heading-line{width:100%;height:1px;background:#ddd7e7}.ld-privacy-box{padding:10px 12px;border:1px solid #e4d9ef;border-radius:9px;background:#f8f3fc;color:#252037;font-size:11.5px;line-height:1.38}.ld-content{flex:1;overflow-y:auto;padding:0 26px 10px;font-size:13.5px;line-height:1.7;color:var(--color-text-primary, #1a1a2e);outline:none;scroll-behavior:smooth}.ld-intro-banner{position:sticky;top:0;z-index:5;padding-top:16px;background:#fff;border-bottom:1px solid #d9d9d9;font-size:14px;line-height:1.6;color:#1a1a2e;font-weight:700}.ld-content::-webkit-scrollbar{width:5px}.ld-content::-webkit-scrollbar-track{background:transparent}.ld-content::-webkit-scrollbar-thumb{background:#cccbce;border-radius:99px}.ld-content::-webkit-scrollbar-thumb:hover{background:#b3b2b5}.ld-content h1{font-size:17px;font-weight:700;color:#3d1f72;margin:0 0 6px}.ld-content h2{font-size:14px;font-weight:700;color:#3d1f72;margin:18px 0 6px}.ld-content p{margin:0 0 10px}.ld-content ul,.ld-content ol{padding-left:20px;margin:6px 0 12px}.ld-content ul{list-style:none}.ld-content li{margin-bottom:6px}.ld-content ul li{position:relative}.ld-content ul li:before{content:"";position:absolute;left:-18px;top:6px;width:9px;height:9px;border-radius:3px;background:#a100ff}.ld-content ol li::marker{color:#a100ff;font-size:1.3em}.ld-content a{color:#7c3abf;text-decoration:underline}.ld-content strong{font-weight:600}.ld-loading{display:flex;align-items:center;justify-content:center;height:120px;color:#888;font-size:13px}.ld-scroll-footer{display:flex;align-items:center;gap:7px;flex-shrink:0;min-height:40px;padding:0 22px;border-top:1px solid #e8d5f5;background:#f9f5ff;color:#7c3abf;font-size:12px}.ld-scroll-footer span{font-weight:600}.ld-scroll-footer small{color:#958da1;font-size:10px}.ld-actions{flex-shrink:0;padding:14px 22px 16px;border-top:1px solid #ece5f5;background:#fff;animation:ld-slide-up .38s ease both}@keyframes ld-slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.ld-buttons{display:flex;gap:10px;margin-top:12px}.ld-btn{flex:1;padding:10px 18px;font-size:13.5px;font-weight:600;border-radius:7px;cursor:pointer;transition:opacity .18s,background .18s,box-shadow .18s;border:1.5px solid transparent;white-space:nowrap}.ld-btn:disabled{opacity:.6;cursor:not-allowed}.ld-btn--accept{background:#7500c0;color:#fff;border-color:#7500c0}.ld-btn--accept:hover:not(:disabled){background:#7c3abf;border-color:#7c3abf;box-shadow:0 2px 10px #7500c059}.ld-btn--decline{background:#fff;color:#5e259b;border-color:#c8aee8}.ld-btn--decline:hover:not(:disabled){background:#fdf0ff;border-color:#9b68d4}.ld-toggle-card{margin-top:10px;padding:12px 16px;border:1px solid #E6DCFF;border-radius:10px;background-color:#f8f5ff}.ld-toggle-label{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;cursor:pointer;-webkit-user-select:none;user-select:none}.ld-toggle-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0}.ld-toggle-title{display:block;color:#3d3d5c;font-size:14px;font-weight:700;line-height:1.3}.ld-toggle-hint{display:block;margin-top:2px;color:#666174;font-size:12px;line-height:1.3}.ld-toggle{position:relative;flex-shrink:0;align-self:center;width:46px;height:26px;border-radius:999px;background:#d0cce0;transition:background .25s;outline:none}.ld-toggle:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;transition:transform .25s cubic-bezier(.4,0,.2,1)}.ld-toggle--on{background:#90f}.ld-toggle--on:after{transform:translate(20px)}.ld-toggle:focus-visible{box-shadow:0 0 0 3px #9900ff40}.ld-version{margin:10px 0 0;font-size:11px;color:#bbb;text-align:center}@media(max-width:520px){.ld-dialog{width:96vw;max-height:94vh}.ld-buttons{flex-direction:column}.ld-header{padding:14px 16px}.ld-content{padding:16px 16px 8px}.ld-actions{padding:12px 16px 14px}.ld-scroll-footer{padding:0 16px}.ld-intro-banner{margin:-16px -16px 16px;padding:14px 16px 12px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes gradientFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.login-page{height:100vh;height:100dvh;width:100%;background:var(--color-white);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;box-sizing:border-box}.login-container{display:grid;grid-template-columns:1fr 1fr;width:100%;height:100%;position:relative;z-index:10;box-sizing:border-box}.login-left-panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(1.5rem,3vh,2.5rem) clamp(1.5rem,3vw,3rem);padding-right:clamp(1rem,2vw,2rem);background:var(--gradient-login-left-panel);height:100%;box-sizing:border-box;position:relative;z-index:10;border-right:1px solid var(--color-border-default);animation:fadeInLeft .6s ease-out;overflow:hidden}.login-left-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--gradient-login-top-bar);background-size:200% 100%;animation:gradientFlow 3s ease infinite}.login-branding{display:flex;align-items:center;gap:.75rem;margin-bottom:clamp(1rem,2vh,1.5rem);animation:fadeInUp .5s ease-out .1s both}.login-logo{flex-shrink:0;width:clamp(36px,5vw,44px);height:clamp(36px,5vw,44px);transition:transform .3s ease}.login-logo:hover{transform:scale(1.05) rotate(5deg)}.login-logo-img{width:100%;height:100%;object-fit:contain}.login-title-group{display:flex;flex-direction:row;align-items:center;gap:.5rem}.login-main-title{font-weight:600;font-size:clamp(14px,1.2vw + .5rem,20px);line-height:1.4;background:var(--gradient-login-main-title);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.login-subtitle{display:none}.login-heading-section{margin-bottom:clamp(.75rem,1.5vh,1rem);animation:fadeInUp .5s ease-out .2s both}.login-heading-title{font-weight:600;font-size:clamp(20px,2vw + .75rem,34px);line-height:1.15;letter-spacing:-.03em;color:var(--color-text-primary);margin:0 0 .4rem}.login-heading-title .highlight{color:var(--Global-Text-Headline-Color-100, var(--color-brand-primary));display:inline-block}.login-heading-description{font-weight:400;font-size:clamp(11px,.8vw + .4rem,14px);line-height:1.5;color:var(--color-text-nav);margin:0;max-width:100%}.login-features-list{display:flex;flex-direction:column;gap:clamp(.5rem,1vh,.75rem);margin-top:clamp(.75rem,1.5vh,1rem)}.login-feature-item{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem;border-radius:12px;cursor:default}.login-feature-item:nth-child(1){animation:fadeInUp .5s ease-out .3s both}.login-feature-item:nth-child(2){animation:fadeInUp .5s ease-out .4s both}.login-feature-item:nth-child(3){animation:fadeInUp .5s ease-out .5s both}.login-feature-icon{width:clamp(20px,1.5vw + .5rem,24px);height:clamp(20px,1.5vw + .5rem,24px);flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--color-brand-primary)}.login-feature-icon-img{width:100%;height:100%;object-fit:contain}.login-feature-icon svg{width:20px;height:20px}.login-feature-content{display:flex;flex-direction:column;gap:.125rem}.login-feature-title{font-weight:600;font-size:clamp(12px,.7vw + .5rem,15px);line-height:1.4;color:var(--color-text-primary);margin:0}.login-feature-description{font-weight:400;font-size:clamp(10px,.6vw + .4rem,13px);line-height:1.45;color:var(--color-text-nav);margin:0;max-width:100%}.login-right-panel{display:flex;align-items:center;justify-content:center;padding:clamp(1.5rem,3vw,3rem);background:var(--color-white);height:100%;box-sizing:border-box;position:relative;z-index:10;animation:fadeInRight .6s ease-out;overflow:hidden}.login-form-card{background:var(--color-white);padding:0;width:100%;max-width:400px;box-sizing:border-box;animation:fadeInUp .5s ease-out .3s both;overflow:visible}.login-form-title{font-weight:600;font-size:clamp(22px,3vw,28px);line-height:1.2;letter-spacing:-.03em;color:var(--color-text-login);margin:0 0 .5rem}.login-form-subtitle{font-weight:400;font-size:clamp(13px,1.5vw,14px);line-height:1.5;color:var(--color-text-login);margin:0 0 1.25rem}.login-form{display:flex;flex-direction:column;gap:1rem}.login-form>.ui-field{animation:fadeInUp .4s ease-out both}.login-form>.ui-field:nth-child(1){animation-delay:.4s}.login-form>.ui-field:nth-child(2){animation-delay:.5s}.login-form .ui-field__label{color:var(--color-text-login)}.login-button{width:100%;padding:.75rem 1.25rem;font-weight:600;font-size:15px;line-height:22px;color:var(--color-white);background:var(--color-brand-purple-dark);border:none;border-radius:8px;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.25rem;position:relative;overflow:hidden;animation:fadeInUp .4s ease-out .6s both}.login-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--gradient-button-shimmer);transition:left .5s ease}.login-button:hover:not(:disabled):before{left:100%}.login-button:hover:not(:disabled){background:var(--color-text-login-brand);transform:translateY(-2px);box-shadow:0 6px 20px var(--color-brand-purple-dark) 59}.login-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px var(--color-brand-purple-dark) 40}.login-button:disabled{opacity:1!important;cursor:not-allowed;background:#999!important;pointer-events:auto!important;color:#666!important;transform:none!important;box-shadow:none!important;position:relative;overflow:visible!important}.login-button:disabled:after{content:"Please select a value for user role";position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:10px;background:var(--color-white);color:var(--color-text-primary);padding:8px 12px;border-radius:4px;font-size:13px;font-weight:500;font-family:var(--font-family-sans);white-space:nowrap;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none;box-shadow:0 2px 8px #00000026;border:1px solid var(--color-border-subtle)}.login-button:disabled:hover:after{opacity:1;visibility:visible}.login-button:not(:disabled):after{display:none!important}.login-button-arrow{font-size:18px;transition:transform .3s ease}.login-button:hover:not(:disabled) .login-button-arrow{transform:translate(4px)}.login-error{padding:.75rem 1rem;background:var(--color-bg-error-soft);color:var(--color-danger);border-radius:8px;font-size:14px;border:1px solid var(--color-error-coral);animation:slideDown .3s ease-out}.login-access-expired{display:flex;flex-direction:column;gap:.25rem;margin-top:1rem;padding:.75rem 1rem;background:var(--color-danger-bg);color:var(--color-danger-strong);border:1px solid var(--color-danger);border-radius:8px;animation:slideDown .3s ease-out}.login-access-expired-header{display:flex;align-items:flex-start;gap:.5rem}.login-access-expired-icon{flex-shrink:0;color:var(--color-danger)}.login-access-expired-title{margin:0;font-weight:700;font-size:14px;line-height:1.4;color:var(--color-danger-strong)}.login-access-expired-message{margin:0;font-weight:400;font-size:13px;line-height:1.45;color:var(--color-danger-strong)}.azure-login-description{font-weight:400;font-size:clamp(13px,1.5vw,14px);line-height:1.5;color:var(--color-text-login);margin:0 0 1.25rem}.azure-login-button{width:100%;padding:.75rem 1.25rem;font-weight:600;font-size:15px;line-height:22px;color:var(--color-white);background:var(--color-brand-purple-dark);border:none;border-radius:8px;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;position:relative;overflow:hidden;animation:fadeInUp .4s ease-out .5s both}.azure-login-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--gradient-button-shimmer);transition:left .5s ease}.azure-login-button:hover:not(:disabled){background:var(--color-text-login-brand);transform:translateY(-2px);box-shadow:0 6px 20px var(--color-brand-purple-dark) 59}.azure-login-button:hover:not(:disabled):before{left:100%}.azure-login-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px var(--color-brand-purple-dark) 40}.azure-login-button:disabled{opacity:.7;cursor:not-allowed}.azure-login-button:disabled:after{content:"";position:absolute;width:20px;height:20px;border:2px solid transparent;border-top-color:var(--color-white);border-radius:50%;animation:spin .8s linear infinite;margin-left:8px}.azure-login-new-user{margin:1rem 0 0;font-size:14px;color:var(--color-text-login);text-align:center}.azure-login-new-user-link{background:none;border:none;padding:0;font-family:inherit;font-size:inherit;font-weight:600;color:var(--color-brand-purple-dark);cursor:pointer;text-decoration:underline;transition:color .2s ease}.azure-login-new-user-link:hover{color:var(--color-text-login-brand)}@media(max-width:1200px){.login-left-panel{padding:clamp(1.5rem,3vw,2.5rem);padding-right:clamp(1rem,2vw,1.5rem)}.login-right-panel{padding:clamp(1.5rem,3vw,2.5rem)}}@media(max-width:1024px){.login-container{grid-template-columns:1fr 1fr}.login-left-panel{padding:1.5rem 1.5rem 1.5rem 2rem}.login-right-panel{padding:2rem}.login-feature-item{padding:.4rem}}@media(max-width:900px){.login-page{height:auto;min-height:100vh;min-height:100dvh;overflow-y:auto}.login-container{grid-template-columns:1fr;grid-template-rows:auto auto;height:auto;min-height:100%}.login-left-panel{padding:1.5rem 1.5rem 1rem;height:auto;border-right:none;border-bottom:1px solid var(--color-border-default);animation:fadeInUp .5s ease-out;overflow:visible}.login-right-panel{padding:1.5rem;height:auto;animation:fadeInUp .5s ease-out .2s both;overflow:visible}.login-branding{margin-bottom:1rem}.login-heading-section{margin-bottom:.75rem}.login-features-list{margin-top:1rem;gap:.5rem}}@media(max-width:768px){.login-left-panel,.login-right-panel{padding:1.25rem}.login-heading-title{font-size:24px;line-height:1.2}.login-heading-title br{display:none}.login-form-card{max-width:100%}.login-form-title{font-size:22px}.login-feature-item{gap:.5rem;padding:.25rem 0}.login-feature-title{font-size:13px}.login-feature-description{font-size:12px}}@media(max-width:480px){.login-left-panel,.login-right-panel{padding:1.25rem}.login-branding{gap:.5rem;margin-bottom:1.25rem}.login-logo{width:32px;height:32px}.login-main-title{font-size:16px}.login-heading-title{font-size:22px;letter-spacing:-.02em}.login-heading-description{font-size:13px}.login-form-title{font-size:22px}.login-form-subtitle,.azure-login-description{font-size:13px;margin-bottom:1.5rem}.login-form{gap:1.25rem}.login-form .ui-field__control{padding:.75rem 1rem;height:44px;font-size:14px}.login-button,.azure-login-button{padding:.875rem 1.25rem;font-size:15px}.login-features-list{gap:.75rem}.login-feature-icon{width:20px;height:20px}.login-feature-icon svg{width:18px;height:18px}}@media(max-width:360px){.login-left-panel,.login-right-panel{padding:1rem}.login-heading-title,.login-form-title{font-size:20px}.login-feature-description{font-size:12px}}@media(max-height:600px)and (orientation:landscape){.login-container{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.login-left-panel{padding:1.5rem;border-right:1px solid var(--color-border-default);border-bottom:none;overflow-y:auto}.login-right-panel{padding:1.5rem;overflow-y:auto}.login-branding{margin-bottom:1rem}.login-heading-section{margin-bottom:.75rem}.login-heading-title{font-size:20px}.login-features-list{margin-top:1rem;gap:.5rem}.login-feature-item{padding:.25rem}.login-form-subtitle,.azure-login-description{margin-bottom:1rem}.login-form{gap:1rem}}@media(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.login-logo-img{image-rendering:-webkit-optimize-contrast}}@media(prefers-reduced-motion:reduce){.login-left-panel,.login-right-panel,.login-branding,.login-heading-section,.login-feature-item,.login-form-card,.login-form>.ui-field,.login-button,.azure-login-button,.login-error,.login-access-expired{animation:none!important}.login-left-panel:before{animation:none}.login-logo:hover,.login-button:hover:not(:disabled),.azure-login-button:hover:not(:disabled),.login-form .ui-field__control:focus{transform:none}.login-button:before,.azure-login-button:before{display:none}}@media print{.login-page{height:auto;overflow:visible}.login-container{display:block}.login-left-panel,.login-right-panel{padding:1rem}.login-button,.azure-login-button{background:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.sar-results{width:100%;min-height:calc(100vh - 60px);background:#f7f8fa;padding:1.5rem;transition:padding-right .3s ease;box-sizing:border-box;overflow-y:auto;font-family:Arial,sans-serif}.sar-results button,.sar-results input,.sar-results select,.sar-results textarea{font-family:inherit}.sar-results.sar-with-sidebar{padding-right:18px!important}.sar-results.sar-full-width{padding-right:1.5rem}.sar-results-content{display:flex;flex-direction:column;align-items:flex-start;max-width:1400px;margin:0 auto;width:100%;gap:24px}.sar-back-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;font-family:Arial,sans-serif;font-size:20px;font-weight:400;color:var(--color-text-primary);cursor:pointer;flex:none;align-self:flex-start;margin-top:4px;transition:background .2s ease,border-color .2s ease,color .2s ease}.sar-back-btn:hover{background-color:var(--color-bg-brand-accent-tint);padding:5px}.sar-back-btn svg{flex-shrink:0}.sar-scenario-header{display:flex;flex-direction:row;align-items:flex-start;gap:8px;width:100%;flex:none;order:0;align-self:stretch}.sar-scenario-heading{display:flex;flex-direction:column;align-items:flex-start;gap:8px;flex:1;min-width:0}.sar-scenario-title{margin:0;font-family:Arial,sans-serif;font-style:normal;font-weight:600;font-size:24px;line-height:120%;color:var(--color-text-primary)}.sar-scenario-meta{margin:0;width:476px;max-width:100%;height:17px;font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:14px;line-height:120%;color:var(--color-text-icon);flex:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sar-hypothetical-badge{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;padding:4px 12px;gap:6px;height:28px;background:var(--color-bg-warning);border:1px solid #FDE68A;border-radius:9999px;flex:none;font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:12px;line-height:120%;color:var(--color-text-amber-dark);white-space:nowrap}.sar-hypothetical-dot{width:6px;height:6px;border-radius:50%;background:var(--color-text-warning-amber);flex-shrink:0}.sar-overall-impact{box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;padding:24px;gap:24px;max-width:100%;max-height:100%;height:auto;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px;flex:none;order:1;align-self:stretch;flex-grow:0}.sar-overall-impact-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;width:100%}.sar-overall-impact-title-row{display:flex;flex-direction:row;align-items:center;gap:8px;min-width:0}.sar-overall-impact-icon{width:24px;height:24px;object-fit:contain;flex-shrink:0}.sar-overall-impact-title{margin:0;text-transform:capitalize;font-family:Arial,sans-serif;font-style:normal;font-weight:600;font-size:18px;line-height:120%;color:var(--color-text-primary)}.sar-overall-impact-subtitle{margin:0;font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:14px;line-height:120%;color:var(--color-text-icon);white-space:nowrap;flex-shrink:0}.sar-overall-impact-summary{margin:-12px 0;width:100%;font-family:Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.5;color:var(--color-text-primary)}.sar-impact-details-section{width:100%;border:1px solid var(--color-border-primary);border-radius:12px;overflow:hidden;background:var(--color-white)}.sar-impact-details-title{margin:0;padding:14px 16px;border-bottom:1px solid var(--color-border-primary);font-family:Arial,sans-serif;font-style:normal;font-weight:600;font-size:14px;line-height:120%;color:var(--color-text-primary)}.sar-impact-details{display:grid;grid-template-columns:repeat(4,1fr);width:100%}.sar-detail-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:16px;min-width:0;min-height:132px;border-right:1px solid var(--color-border-primary)}.sar-detail-card:last-child{border-right:none}.sar-detail-card-header{display:flex;flex-direction:row;align-items:center;gap:6px;width:100%}.sar-detail-label{margin:0;font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:13px;line-height:120%;color:var(--color-text-icon)}.sar-detail-card[data-detail-id=new-completion] .sar-detail-label,.sar-detail-card[data-detail-id=float-released] .sar-detail-label{text-transform:capitalize}.sar-detail-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;color:var(--color-text-icon)}.sar-detail-icon img{width:16px;height:16px;object-fit:contain}.sar-detail-icon-layers{color:var(--color-text-icon)}.sar-detail-value{margin:0;flex:1;display:flex;align-items:center;font-family:Arial,sans-serif;font-style:normal;font-weight:700;font-size:22px;line-height:120%;color:var(--color-text-primary)}.sar-detail-value-accent{color:var(--color-brand-primary)}.sar-detail-footnote{margin:0;font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:12px;line-height:140%;color:var(--color-text-icon)}.sar-milestones{display:flex;flex-direction:column;align-items:flex-start;gap:12px;width:100%;flex:1;min-height:0}.sar-milestones-title{margin:0;text-transform:capitalize;font-family:Arial,sans-serif;font-style:normal;font-weight:600;font-size:16px;line-height:120%;color:var(--color-text-primary)}.sar-milestones-table-wrap{width:100%;border:1px solid var(--color-border-primary);border-radius:12px;overflow:hidden;background:var(--color-white)}.sar-milestones-table{width:100%;border-collapse:collapse;table-layout:fixed}.sar-milestones-table th,.sar-milestones-table td{padding:12px 16px;text-align:left;font-family:Arial,sans-serif;line-height:140%;vertical-align:top}.sar-milestones-table th{font-size:12px;background:var(--color-bg-neutral-warm);font-weight:500;color:var(--color-text-icon);border-bottom:1px solid var(--color-border-primary)}.sar-milestones-table th:nth-child(1),.sar-milestones-table td:nth-child(1){width:48%}.sar-milestones-table th:nth-child(2),.sar-milestones-table td:nth-child(2){width:12%}.sar-milestones-table th:nth-child(3),.sar-milestones-table td:nth-child(3),.sar-milestones-table th:nth-child(4),.sar-milestones-table td:nth-child(4){width:20%}.sar-milestones-table td{font-weight:400;font-size:14px;color:var(--color-text-primary);border-bottom:1px solid var(--color-border-primary)}.sar-milestones-table tbody tr:last-child td{border-bottom:none}.sar-milestone-cell{display:flex;flex-direction:column;gap:2px;min-width:0}.sar-milestone-name{font-weight:500;color:var(--color-text-primary)}.sar-milestone-id{font-weight:400;font-size:12px;color:var(--color-text-icon)}.sar-milestone-delay{color:var(--color-text-success);font-weight:400}.sar-activity-impact{box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;padding:24px;gap:24px;max-width:100%;min-height:431px;height:auto;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px;flex:none;align-self:stretch;flex-grow:0}.sar-order-2{order:2}.sar-order-3{order:3}.sar-activity-impact-header{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;padding:0;gap:16px;width:100%;min-height:24px}.sar-activity-impact-title-row{display:flex;flex-direction:row;align-items:center;padding:0;gap:8px}.sar-activity-impact-icon{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:0;width:20px;height:20px;background:var(--color-brand-primary);border-radius:4px;flex:none;overflow:hidden}.sar-activity-impact-icon img,.sar-activity-impact-icon-image img{width:100%;height:100%;object-fit:contain}.sar-activity-impact-icon-image{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:0;width:20px;height:20px;border-radius:4px;flex:none;overflow:hidden}.sar-activity-impact-title{margin:0;text-transform:capitalize;width:auto;height:22px;font-family:Arial,sans-serif;font-style:normal;font-weight:700;font-size:16px;line-height:140%;color:#000;flex:none}.sar-activity-impact-subtitle{margin:0;font-family:Arial,sans-serif;font-style:normal;font-weight:500;font-size:14px;line-height:140%;color:var(--color-text-icon);flex:none;white-space:nowrap}.sar-activity-impact-body{display:flex;flex-direction:row;align-items:stretch;gap:20px;width:100%;min-height:358px}.sar-activity-summary{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;padding:20px;width:260px;flex:none;min-height:100%;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px}.sar-activity-summary-title{margin:0;width:100%;font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:14px;line-height:120%;color:#000;text-align:center}.sar-impact-donut-wrap{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:16px 0 0;width:100%}.sar-impact-donut{position:relative;display:flex;flex-direction:column;align-items:center;width:160px;height:160px;isolation:isolate}.sar-impact-donut svg{display:block}.sar-impact-donut-track{stroke:#e9d5ff}.sar-impact-donut-critical{stroke:var(--color-brand-primary);transform-origin:center}.sar-impact-donut-center{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0;z-index:1}.sar-impact-donut-total{font-family:Arial,sans-serif;font-style:normal;font-weight:500;font-size:28px;line-height:120%;color:#000}.sar-impact-donut-label{font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:12px;line-height:120%;color:var(--color-text-icon)}.sar-activity-legend{display:flex;flex-direction:column;align-items:stretch;padding:16px 0 0;width:100%;gap:0}.sar-activity-legend-row{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:0;width:100%;height:17px}.sar-activity-legend-row+.sar-activity-legend-row{padding-top:6px;height:26px}.sar-activity-legend-left,.sar-activity-legend-right{display:flex;flex-direction:row;align-items:center;gap:8px}.sar-activity-legend-right{gap:6px}.sar-activity-legend-swatch{width:12px;height:12px;border-radius:4px;flex:none}.sar-activity-legend-swatch-critical{background:var(--color-brand-primary)}.sar-activity-legend-swatch-non-critical{background:#e9d5ff}.sar-activity-legend-label{font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:12px;line-height:120%;color:#000}.sar-activity-legend-count{font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:14px;line-height:120%;color:#000}.sar-activity-legend-percent{font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:12px;line-height:120%;color:var(--color-text-icon)}.sar-activity-table-card{box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;padding:0 0 16px;gap:16px;flex:1;min-width:0;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px}.sar-activity-table-header{box-sizing:border-box;display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:14px 20px;width:100%;height:46px;border-bottom:1px solid var(--color-border-primary)}.sar-activity-table-title{margin:0;font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:14px;line-height:120%;color:#000}.sar-activity-table-wrap{box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;padding:0 20px;width:100%;gap:12px;min-height:0}.sar-activity-table-x-scroll{width:100%;overflow:auto;overscroll-behavior:contain;border:1px solid var(--color-border-primary);border-radius:12px;scrollbar-width:thin}.sar-activity-table-x-scroll-scroll-y{max-height:62vh}.sar-activity-table-x-scroll-capped{max-height:calc(var(--sar-thead-height, 48px) + var(--sar-visible-rows, 5) * var(--sar-row-height, 56px) + (var(--sar-visible-rows, 5) - 1) * 1px)}.sar-activity-table-x-scroll-capped .sar-activity-table tbody tr{height:var(--sar-row-height, 56px)}.sar-activity-table-x-scroll-capped .sar-activity-table tbody td{height:var(--sar-row-height, 56px);box-sizing:border-box;vertical-align:top}.sar-activity-table-x-scroll::-webkit-scrollbar{width:6px;height:6px}.sar-activity-table-x-scroll::-webkit-scrollbar-track{background:transparent}.sar-activity-table-x-scroll::-webkit-scrollbar-thumb{background:var(--color-border-dotted);border-radius:3px}.sar-activity-table-x-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.sar-activity-table{box-sizing:border-box;width:100%;min-width:860px;border-collapse:collapse;border:none;border-radius:0;table-layout:fixed}.sar-activity-col-activity{width:260px}.sar-activity-col-delay{width:96px}.sar-activity-col-date{width:132px}.sar-activity-col-float{width:140px}.sar-activity-col-critical{width:100px}.sar-activity-table thead{background:#f1f1ef}.sar-activity-table-head th{position:sticky;top:0;z-index:2;background:#f1f1ef}.sar-activity-table-body{display:table-row-group}.sar-activity-table th,.sar-activity-table td{padding:8px 12px;text-align:left;font-family:Arial,sans-serif}.sar-activity-table th{height:52px;min-height:52px;padding:8px 12px;font-weight:400;font-size:12px;line-height:120%;color:var(--color-text-icon);text-align:left;vertical-align:middle;border-bottom:1px solid var(--color-border-primary)}.sar-activity-th,.sar-activity-th-sortable{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;width:100%;min-height:100%;margin:0;text-align:left;gap:4px}.sar-activity-th-label{flex:1;min-width:0;text-align:left;line-height:120%}.sar-activity-th-sortable{padding:0;border:none;background:transparent;font:inherit;color:inherit;cursor:pointer}.sar-sort-icon{width:7px;height:14px;object-fit:contain;flex-shrink:0}.sar-activity-table th:nth-child(1),.sar-activity-table td:nth-child(1){width:260px}.sar-activity-table th:nth-child(2),.sar-activity-table td:nth-child(2){width:96px}.sar-activity-table th:nth-child(3),.sar-activity-table td:nth-child(3),.sar-activity-table th:nth-child(4),.sar-activity-table td:nth-child(4){width:132px}.sar-activity-table th:nth-child(5),.sar-activity-table td:nth-child(5){width:140px}.sar-activity-table th:nth-child(6),.sar-activity-table td:nth-child(6){width:100px}.sar-activity-table td{height:auto;vertical-align:top;font-weight:400;font-size:14px;line-height:120%;color:#000;border-top:1px solid var(--color-border-primary)}.sar-activity-table td:first-child{overflow:hidden}.sar-activity-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.sar-activity-table td:nth-child(3),.sar-activity-table td:nth-child(4),.sar-activity-table td:nth-child(5){white-space:nowrap}.sar-activity-table tbody tr:first-child td{border-top:none}.sar-activity-delay{color:#c2410c}.sar-activity-table-footer{margin:0;font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:12px;line-height:120%;color:var(--color-text-icon)}.sar-table-empty{text-align:center!important;padding:24px 16px!important;color:var(--color-text-icon, #6B7280);font-family:Arial,sans-serif;font-weight:400;font-size:14px;line-height:140%}.sar-criticality-pill{box-sizing:border-box;display:inline-flex;flex-direction:row;align-items:center;padding:2px 10px;gap:4px;height:24px;border-radius:9999px;font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:12px;line-height:120%;white-space:nowrap}.sar-criticality-dot{width:6px;height:6px;border-radius:9999px;flex:none}.sar-criticality-yes{width:52px;background:var(--color-danger-bg);border:1px solid #FECACA;color:var(--color-danger-strong)}.sar-criticality-yes .sar-criticality-dot{background:#dc2626}.sar-criticality-no{width:48px;background:#f0fdf4;border:1px solid #BBF7D0;color:#15803d}.sar-criticality-no .sar-criticality-dot{background:#16a34a}@media(max-width:1024px){.sar-activity-impact-body{flex-direction:column}.sar-activity-summary{width:100%}}@media(max-width:768px){.sar-results{padding:1rem}.sar-results.sar-with-sidebar{padding-right:1rem}.sar-scenario-title{font-size:20px}.sar-scenario-meta{width:100%;height:auto;white-space:normal}.sar-hypothetical-badge{width:auto;max-width:100%;height:auto;min-height:28px;white-space:normal}.sar-overall-impact,.sar-activity-impact{width:100%;height:auto;min-height:0}.sar-overall-impact-header,.sar-activity-impact-header{flex-direction:column;align-items:flex-start}.sar-overall-impact-subtitle,.sar-activity-impact-subtitle{white-space:normal}.sar-impact-details{grid-template-columns:1fr}.sar-detail-card{border-right:none;border-bottom:1px solid var(--color-border-primary)}.sar-detail-card:last-child{border-bottom:none}.sar-milestones-table-wrap,.sar-activity-table-wrap{overflow-x:auto}.sar-milestones-table{min-width:640px}.sar-activity-table{min-width:720px}}.wif-page{display:flex;height:calc(100vh - 60px);width:100%;background:var(--color-bg-neutral-light);box-sizing:border-box;position:relative;font-family:Arial,sans-serif}.wif-page button,.wif-page input,.wif-page select,.wif-page textarea{font-family:inherit}.wif-sidebar{width:190px;flex-shrink:0;background:var(--color-bg-muted);border-right:1px solid var(--color-border-light);transition:width .3s ease;overflow:hidden}.wif-sidebar.collapsed{width:60px}.wif-sidebar-content{display:flex;flex-direction:column;height:100%;padding:1.25rem 1rem;gap:1.25rem;box-sizing:border-box;transition:padding .3s ease}.wif-sidebar.collapsed .wif-sidebar-content{padding:1.25rem .75rem}.wif-sidebar-heading{display:flex;flex-direction:column;gap:.5rem}.wif-sidebar-title{margin:0;font-weight:400;font-size:18px;line-height:26px;color:var(--color-text-primary);white-space:nowrap}.wif-sidebar.collapsed .wif-sidebar-title,.wif-sidebar.collapsed .wif-themes-title,.wif-sidebar.collapsed .wif-themes-empty,.wif-sidebar.collapsed .wif-theme-item,.wif-sidebar.collapsed .wif-nav-item span{display:none}.wif-sidebar-nav{display:flex;flex-direction:column;gap:.25rem}.wif-nav-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;border:none;background:none;border-radius:6px;cursor:pointer;font-size:14px;line-height:22px;font-weight:400;color:var(--color-text-primary);text-align:left;transition:background .2s ease}.wif-nav-item:hover{background:var(--color-border-default)}.wif-nav-item-active{color:var(--color-brand-primary);font-weight:500}.wif-nav-item svg{flex-shrink:0}.wif-nav-item-icon{width:16px;height:16px;object-fit:contain;flex-shrink:0;display:block}.wif-sidebar.collapsed .wif-nav-item{justify-content:center;padding:.5rem}.wif-themes-section{display:flex;flex-direction:column;min-height:0;flex:1 1 auto;padding-top:1rem;border-top:1px solid var(--color-border-default)}.wif-themes-title{margin:0 0 .5rem;font-weight:400;font-size:14px;line-height:22px;letter-spacing:.8px;text-transform:uppercase;color:var(--color-text-icon)}.wif-themes-empty{margin:0;padding:0 .5rem;font-size:13px;line-height:20px;color:var(--color-text-tertiary)}.wif-themes-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem;overflow-y:auto;min-height:0}.wif-theme-item{padding:.25rem .5rem;font-size:14px;line-height:22px;color:var(--color-text-label-muted);border-radius:4px;cursor:pointer;transition:background .2s ease,color .2s ease}.wif-theme-item:hover{background:var(--color-border-default)}.wif-theme-item-active{background:var(--color-border-default);color:var(--color-brand-primary);font-weight:500}.wif-sidebar-footer{margin-top:auto;padding-top:1rem;flex-shrink:0;display:flex;flex-direction:column}.wif-collapse-btn{height:32px;width:100%;border:1.5px solid var(--color-border-primary, #e5e7eb);background:transparent;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-neutral-light, #9ca3af);transition:background .2s ease,color .2s ease}.wif-collapse-btn:hover{background:var(--color-border-primary, #eef0f3);color:var(--color-text-nav-hover)}.wif-sidebar.collapsed .wif-collapse-btn{transform:rotate(180deg)}.wif-main{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--color-bg-neutral-light);overflow-y:auto}.wif-main-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.75rem;background:var(--color-white, #fff);border-bottom:1px solid var(--color-border-default, #e5e7eb);flex-shrink:0}.wif-main-title{margin:0;font-weight:700;font-size:24px;line-height:32px;color:var(--color-text-primary)}.wif-create-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:var(--color-brand-purple-dark, #7c3aed);color:var(--color-white, #fff);border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .2s ease}.wif-create-btn:hover{opacity:.92}.wif-project-groups{display:flex;flex-direction:column;gap:2rem;padding:1.5rem 1.75rem}.wif-project-section{display:flex;flex-direction:column;gap:1rem}.wif-project-section-title{display:flex;align-items:center;gap:10px;margin:0;padding-bottom:.5rem;border-bottom:1px solid var(--color-border-light, #e5e7eb);font-size:14px;font-weight:600;color:var(--color-brand-vivid, #7c3aed)}.wif-project-section-title svg{color:var(--color-brand-vivid, #7c3aed)}.wif-project-count-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;padding:4px 10px;border-radius:12px;background:var(--gradient-publish-vivid, var(--color-brand-vivid, #7c3aed));color:var(--color-white, #ffffff);font-size:12px;font-weight:600}.wif-scenario-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;align-content:start}.wif-scenario-card{display:flex;flex-direction:column;gap:.875rem;padding:1rem;background:var(--color-white, #fff);border:1px solid var(--color-border-default, #e5e7eb);border-radius:12px;box-shadow:0 1px 2px #0f172a0a}.wif-scenario-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.wif-scenario-card-heading{min-width:0}.wif-scenario-card-title{margin:0 0 .25rem;font-weight:600;font-size:15px;line-height:22px;color:var(--color-text-primary, #111827);word-break:break-word}.wif-scenario-title-input{width:100%;margin:0 0 .25rem;padding:2px 6px;font-family:inherit;font-weight:600;font-size:15px;line-height:22px;color:var(--color-text-primary, #111827);background:var(--color-white, #fff);border:1px solid var(--color-brand-purple-dark, #7c3aed);border-radius:6px;outline:none}.wif-scenario-card-meta{margin:0;font-size:12px;line-height:18px;color:var(--color-text-icon, #6b7280)}.wif-scenario-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border:none;border-radius:6px;background:transparent;color:var(--color-text-icon, #6b7280);cursor:pointer;transition:background .2s ease,color .2s ease}.wif-scenario-delete-btn:hover{background:#fef2f2;color:#dc2626}.wif-scenario-stats{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding:.75rem;border:1px solid #DCAFFF;background:#e6dcff99;border-radius:8px}.wif-scenario-stat-label{margin:0 0 .25rem;font-size:12px;line-height:16px;color:var(--color-text-icon, #6b7280)}.wif-scenario-stat-value{margin:0;display:flex;align-items:baseline;gap:.375rem;font-weight:700;font-size:18px;line-height:24px;color:var(--color-text-primary, #111827)}.wif-scenario-stat-unit{font-weight:400;font-size:12px;line-height:16px;color:var(--color-text-icon, #6b7280)}.wif-scenario-card-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border-default, #e5e7eb)}.wif-scenario-view-btn{display:inline-flex;align-items:center;gap:.375rem;padding:0;border:none;background:none;color:var(--color-brand-primary, #a100ff);font-size:14px;font-weight:500;cursor:pointer}.wif-scenario-view-btn:hover{text-decoration:underline}.wif-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:4rem 1.5rem;text-align:center}.wif-empty-icon{color:var(--color-text-tertiary);line-height:0}.wif-empty-icon-image{width:34px;height:34px;object-fit:contain;display:block}.wif-empty-title{margin:0;font-weight:600;font-size:18px;line-height:26px;color:var(--color-text-primary)}.wif-empty-description{margin:0 0 .5rem;max-width:420px;font-size:14px;line-height:20px;color:var(--color-text-label-muted)}@media(max-width:768px){.wif-sidebar{width:60px}.wif-sidebar .wif-sidebar-title,.wif-sidebar .wif-themes-title,.wif-sidebar .wif-themes-empty,.wif-sidebar .wif-theme-item,.wif-sidebar .wif-nav-item span{display:none}.wif-main-header,.wif-project-groups{padding-left:1rem;padding-right:1rem}.wif-main-title{font-size:20px}}.arm-page{padding:1.5rem 1.5rem 2rem;max-width:100%;overflow-x:auto}.arm-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1.5rem}.arm-header-icon{flex-shrink:0;width:48px;height:48px;border-radius:12px;background:var(--color-brand-alpha-10);color:var(--color-brand-primary);display:flex;align-items:center;justify-content:center;margin:8px 0}.arm-header-text h1{font-size:32px;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem;line-height:1.3}.arm-header-text p{font-size:16px;color:var(--color-text-dark-alt);margin:0}.arm-summary-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.arm-card{display:flex;flex-direction:column;justify-content:flex-start;padding:12px;border-radius:10px;min-height:80px;box-shadow:0 2px 6px var(--color-black-alpha-06),0 1px 2px var(--color-black-alpha-04)}.arm-card-label{font-weight:400;font-size:14px;line-height:1.4;margin-bottom:.5rem;color:var(--color-text-icon)}.arm-card-value{font-weight:600;font-size:28px;line-height:1.2;letter-spacing:-.5px}.arm-card-total{background:var(--color-white);border:1px solid var(--color-border-primary)}.arm-card-total .arm-card-label,.arm-card-total .arm-card-value{color:var(--color-text-nav-hover)}.arm-card-pending{background:var(--color-orange-alpha-05);border:1px solid var(--color-orange-alpha-20)}.arm-card-pending .arm-card-label,.arm-card-pending .arm-card-value{color:var(--color-text-accent-orange)}.arm-card-approved{background:var(--color-teal-alpha-05);border:1px solid var(--color-teal-alpha-20)}.arm-card-approved .arm-card-label,.arm-card-approved .arm-card-value{color:var(--color-text-success-alt)}.arm-card-rejected{background:var(--color-error-alt-alpha-05);border:1px solid var(--color-error-alt-alpha-33)}.arm-card-rejected .arm-card-label,.arm-card-rejected .arm-card-value{color:var(--color-text-accent-red)}@media(max-width:1200px){.arm-summary-cards{grid-template-columns:repeat(4,1fr)}}@media(max-width:768px){.arm-summary-cards{grid-template-columns:1fr}.arm-card{padding:1rem 1.25rem;min-height:88px}}.arm-table-section-title{font-size:16px;font-weight:600;color:var(--color-text-dark);margin:0 0 .75rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border-neutral-light)}.arm-search-filter-row{display:flex;align-items:center;gap:1.25rem;margin-bottom:1.25rem;justify-content:space-between}.arm-search-bar{display:flex;align-items:center;width:320px;flex:0 0 320px;height:44px;padding:0 .75rem 0 1rem;background:var(--color-white);border:1px solid var(--color-border-neutral-light);border-radius:8px}.arm-search-icon{flex-shrink:0;color:var(--color-text-tertiary);margin-right:.5rem;display:flex;align-items:center;justify-content:center}.arm-search-input{flex:1;min-width:0;border:none;outline:none;font-size:.875rem;color:var(--color-text-heading);background:transparent}.arm-search-input::placeholder{color:var(--color-text-tertiary)}.arm-dashboard-active-filters{margin-bottom:1rem}.arm-table-wrap{width:100%;background:var(--color-white);border:1px solid var(--color-border-neutral-light);border-radius:10px;overflow:auto;box-shadow:0 2px 6px var(--color-black-alpha-06),0 1px 2px var(--color-black-alpha-04)}.arm-table-inner{display:flex;flex-direction:column;min-width:100%;width:max-content}.arm-table-inner .arm-table{width:100%;min-width:100%}.arm-table-inner .arm-pagination{width:100%;min-width:100%;box-sizing:border-box}.arm-table{width:100%;border-collapse:collapse;font-size:14px;table-layout:auto}.arm-table-th-sortable{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:transparent;font:inherit;font-weight:500;color:inherit;cursor:pointer;text-align:left}.arm-table-th-sortable-label{line-height:1.25}.arm-table-sort-icon{width:14px;height:14px;object-fit:contain;flex-shrink:0}.arm-table th{text-align:left;padding:14px;font-size:14px;font-weight:500;color:var(--color-text-label-muted);background:var(--color-bg-neutral-soft);border:1px solid var(--color-border-neutral-light);height:48px;box-sizing:border-box}.arm-table td{padding:14px;border:1px solid var(--color-border-neutral-light);font-size:14px;font-weight:400;color:var(--color-text-dark);vertical-align:middle;min-height:52px;box-sizing:border-box}.arm-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;width:100%;min-width:0;box-sizing:border-box;padding:.75rem 1rem;border-top:1px solid var(--color-border-neutral-light);background:var(--color-white);font-size:14px;color:var(--color-text-nav-hover)}.arm-pagination-summary{font-size:12px;color:var(--color-text-dark)}.arm-pagination-controls{display:flex;align-items:center;gap:.75rem}.arm-pagination-per-page{display:flex;align-items:center;gap:.5rem}.arm-pagination-select{padding:.35rem .5rem;border:1px solid var(--color-border-default);border-radius:6px;font-size:12px;color:var(--color-text-dark);background:var(--color-white);cursor:pointer;min-width:3rem}.arm-pagination-per-page-label{font-size:12px;color:var(--color-text-dark)}.arm-pagination-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--color-brand-purple-dark);color:var(--color-brand-purple-dark);border-radius:6px;background:var(--color-white);cursor:pointer;transition:background .2s,color .2s}.arm-pagination-btn:disabled{cursor:not-allowed;border:1px solid var(--color-brand-purple-dark);color:var(--color-brand-purple-dark)}.arm-cell-id{font-family:ui-monospace,monospace;font-size:.75rem}.arm-request-id-column{max-width:100px;width:130px;overflow-wrap:break-word;word-wrap:break-word}.arm-access-dates{margin-right:.35rem}.arm-edit-icon{display:inline-flex;align-items:center;color:var(--color-text-tertiary);cursor:pointer;vertical-align:middle}.arm-edit-icon:hover{color:var(--color-brand-primary)}.arm-access-dates-cell{white-space:nowrap}.arm-date-edit-wrap{display:inline-flex;align-items:center;gap:.5rem}.arm-date-input-group{position:relative;display:inline-flex;align-items:center}.arm-date-edit-input{width:110px;padding:.4rem 2rem .4rem .6rem;font-size:.8125rem;font-family:inherit;color:var(--color-text-primary);border:1px solid var(--color-border-dotted);border-radius:8px;background:var(--color-white)}.arm-date-edit-input::placeholder{color:var(--color-text-tertiary)}.arm-date-edit-input:focus{outline:none;border-color:var(--color-text-tertiary);box-shadow:0 0 0 1px var(--color-black-alpha-05)}.arm-date-native-input{position:absolute;right:0;top:0;width:32px;height:100%;opacity:0;cursor:pointer;font-size:0;border:none;background:transparent}.arm-date-calendar-icon{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;color:var(--color-text-placeholder);cursor:pointer;pointer-events:auto}.arm-date-calendar-icon:hover{color:var(--color-text-success-bright)}.arm-date-calendar-icon svg{display:block}.arm-date-edit-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:8px;cursor:pointer;transition:opacity .2s,transform .1s}.arm-date-edit-btn:hover{opacity:.9}.arm-date-edit-save{background:var(--color-bg-success-emerald-soft);color:var(--color-text-success-bright)}.arm-date-edit-cancel{background:var(--color-bg-error-soft);color:var(--color-danger)}.arm-date-edit-cancel:hover{background:var(--color-bg-error-red-200)}.arm-status{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .625rem;border-radius:4px;font-weight:500;font-size:.75rem}.arm-status-pending{border:1px solid var(--color-border-access-pending);background:var(--color-bg-access-pending);color:var(--color-text-accent-brown)}.arm-status-approved{color:var(--color-text-accent-forest);background:var(--color-success-bg-light);border:1px solid var(--color-border-success)}.arm-status-rejected{color:var(--color-error-deep);background:var(--color-bg-error-light);border:1px solid var(--color-text-error-soft)}.arm-status-cancelled{color:var(--color-text-secondary);background:var(--color-bg-muted, #f4f4f5);border:1px solid var(--color-border-default, #e4e4e7)}.arm-btn-view{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:14px;font-weight:500;color:var(--color-brand-purple-dark);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:background .2s,color .2s}.arm-btn-view-icon{flex-shrink:0;color:var(--color-brand-purple-dark)}.arm-btn-view:hover{background:transparent;color:var(--color-brand-purple-dark)}.arm-actions{display:flex;gap:.5rem}.arm-btn-approve,.arm-btn-reject{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .875rem;font-size:.75rem;font-weight:500;border:none;border-radius:6px;cursor:pointer;transition:opacity .2s,transform .1s}.arm-btn-approve{background:var(--color-brand-purple-dark);color:var(--color-white)}.arm-btn-approve:hover{opacity:.92}.arm-btn-reject{background:var(--color-coral-alpha-16);color:var(--color-text-accent-coral);border:1px solid var(--color-text-accent-coral)}.arm-btn-reject:hover{opacity:.92}.arm-no-action-required{font-size:.8125rem;font-weight:500;color:var(--color-text-primary);white-space:nowrap}.arm-modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-45);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.arm-modal{background:var(--color-white);border-radius:12px;width:100%;box-shadow:0 20px 40px var(--color-black-alpha-15),0 4px 12px var(--color-black-alpha-08)}.arm-modal-view{max-width:520px;padding:1.5rem}.arm-modal-view-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem}.arm-modal-view-icon{width:44px;height:44px;border-radius:10px;background:var(--color-brand-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;flex-shrink:0}.arm-modal-view-title-block{flex:1;min-width:0}.arm-modal-view-title{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin:0 0 .25rem;line-height:1.3}.arm-modal-view-request-id{font-size:.875rem;font-weight:400;color:var(--color-text-primary);margin:0}.arm-modal-close-circle{width:36px;height:36px;border-radius:50%;border:none;background:var(--color-border-default);color:var(--color-text-placeholder);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,color .2s}.arm-modal-close-circle:hover{background:var(--color-border-dotted);color:var(--color-text-heading)}.arm-modal-view-card{background:var(--color-white);border:1px solid var(--color-border-default);border-radius:10px;padding:1rem 1.25rem;box-shadow:0 1px 3px var(--color-black-alpha-06)}.arm-modal-view-card-heading{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.75rem}.arm-modal-view-card-icon{color:var(--color-brand-primary);flex-shrink:0}.arm-modal-view-label{display:block;font-size:.8125rem;font-weight:400;color:var(--color-text-placeholder);margin-bottom:.5rem}.arm-modal-view-justification-box{background:var(--color-bg-subtle);border:1px solid var(--color-border-default);border-radius:8px;padding:.875rem 1rem;font-size:.875rem;line-height:1.5;color:var(--color-text-primary);min-height:80px}.arm-modal-confirm{max-width:460px;border-radius:16px;box-shadow:0 24px 48px var(--color-text-primary-dark),0 8px 16px var(--color-black-alpha-10)}.arm-modal-confirm-header{display:flex;align-items:center;gap:1rem;margin-bottom:.25rem;padding:14px 24px;border-bottom:1px solid}.arm-modal-confirm-icon{width:48px;height:48px;min-width:48px;min-height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-error-alt-alpha-10)}.arm-modal-confirm-title{font-size:1.25rem;font-weight:700;color:var(--color-text-secondary);margin:0;line-height:1.35}.arm-modal-confirm-message{font-size:1rem;line-height:1.6;color:var(--color-text-body-secondary);padding:12px 24px}.arm-modal-confirm-message strong{color:var(--color-text-secondary);font-weight:600}.arm-modal-action-error{display:flex;align-items:flex-start;gap:8px;margin:0 24px 4px;padding:10px 14px;background:var(--color-error-bg, #fff5f5);border:1px solid var(--color-error-border, #fca5a5);border-radius:6px;color:var(--color-error-text, #b91c1c);font-size:.875rem;line-height:1.5}.arm-modal-action-error--standalone{margin:0 24px 4px}.arm-modal-action-error svg{flex-shrink:0;margin-top:2px}.arm-modal-confirm-icon-error{flex-shrink:0}.arm-modal-confirm-actions--single{justify-content:flex-end}.arm-conflict-toast{display:flex;align-items:flex-start;gap:10px;background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;padding:12px 12px 12px 14px;max-width:500px;width:100%;box-shadow:0 2px 12px #00000014}.arm-conflict-toast-icon{flex-shrink:0;color:#b91c1c;margin-top:2px}.arm-conflict-toast-body{flex:1;display:flex;flex-direction:column;gap:2px}.arm-conflict-toast-body strong{font-size:14px;font-weight:600;color:var(--color-text-dim);line-height:1.4}.arm-conflict-toast-body span{font-size:12px;font-weight:400;color:var(--color-text-label-muted);line-height:1.5}.arm-conflict-toast-close{flex-shrink:0;align-self:flex-start;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:none;cursor:pointer;color:#dc2626;border-radius:4px;padding:0;transition:color .15s}.arm-conflict-toast-close:hover{color:#b91c1c}.arm-modal-confirm-actions{display:flex;gap:1rem;padding:24px}.arm-modal-btn-cancel{padding:.5rem 1.25rem;width:100%;font-size:16px;font-weight:500;color:var(--color-text-secondary);background:var(--color-white);border:1px solid var(--color-text-tertiary);border-radius:4px;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.arm-modal-btn-cancel:hover{background:var(--color-bg-muted);border-color:var(--color-border-neutral-mid-gray);color:var(--color-text-icon)}.arm-modal-btn-confirm{padding:.5rem 1.25rem;font-size:16px;font-weight:500;color:var(--color-white);border:none;border-radius:4px;cursor:pointer;width:100%;transition:opacity .2s,background .2s}.arm-modal-btn-confirm:active{opacity:.95}.arm-modal-btn-approve{background:var(--color-btn-access-approve)}.arm-modal-btn-ok{background:var(--color-brand-primary)}.arm-modal-btn-ok:hover{opacity:.9}.arm-modal-btn-reject{background:var(--color-text-accent-coral)}.arm-email-column{max-width:172px;overflow-wrap:break-word;word-wrap:break-word}.arm-designation-column{max-width:124px;overflow-wrap:break-word;word-wrap:break-word}.arm-justification-column{max-width:110px;overflow-wrap:break-word;word-wrap:break-word}.cpp-page{min-height:calc(100vh - 64px);background:var(--gradient-cpp-page);padding:3rem 2.5rem;overflow-y:auto;display:flex;align-items:center;justify-content:center}.cpp-container{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;max-width:1200px;width:100%;margin:0 auto;align-items:center}.cpp-welcome-section{padding:.5rem 0}.cpp-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-brand-primary-alpha-10);border:1px solid var(--color-brand-alpha-20);color:var(--color-brand-primary);border-radius:20px;font-family:inherit;font-size:.875rem;font-weight:500;margin-bottom:1.75rem}.cpp-badge-icon{width:16px;height:16px;flex-shrink:0}.cpp-welcome-title{font-family:inherit;font-weight:700;font-size:40px;color:var(--color-text-primary);line-height:120%;letter-spacing:0%;margin:0}.cpp-brand-name{font-family:inherit;font-weight:400;font-size:16px;color:var(--color-brand-purple-dark);line-height:120%;letter-spacing:0%;margin:.25rem 0 1rem}.cpp-welcome-description{font-family:inherit;font-weight:400;font-size:16px;color:var(--color-text-icon);line-height:120%;letter-spacing:0%;margin:0 0 2rem}.cpp-features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.cpp-feature-card{display:flex;align-items:flex-start;gap:.875rem;padding:1rem;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px;box-shadow:0 1px 3px 0 var(--color-shadow-soft-alpha-10),0 4px 8px 3px var(--color-black-alpha-15);transition:all .2s ease;cursor:default}.cpp-feature-card:hover{border-color:var(--color-brand-alpha-20);transform:translateY(-1px)}.cpp-feature-icon{width:44px;height:44px;min-width:44px;display:flex;align-items:center;justify-content:center}.cpp-feature-icon svg{width:22px;height:22px}.cpp-feature-icon-img{width:44px;height:44px;border-radius:10px;object-fit:contain}.cpp-feature-content{flex:1;min-width:0}.cpp-feature-title{font-size:.9375rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem;line-height:1.3}.cpp-feature-description{font-size:.8125rem;color:var(--color-text-label-muted);line-height:1.45;margin:0}.cpp-form-section{display:flex;justify-content:flex-end;padding-top:.5rem}.cpp-form-card{width:100%;max-width:450px;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:16px;padding:1.5rem;box-shadow:0 1px 3px 0 var(--color-shadow-soft-alpha-10),0 4px 8px 3px var(--color-black-alpha-15)}.cpp-form-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.cpp-form-icon{width:44px;height:44px;min-width:44px;background:var(--color-brand-primary-alpha-05);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--color-brand-primary)}.cpp-form-icon svg{width:22px;height:22px}.cpp-form-header-text{flex:1}.cpp-form-title{font-size:1.125rem;font-weight:700;color:var(--color-text-primary);margin:0;line-height:1.3}.cpp-form-subtitle{font-size:.8125rem;color:var(--color-text-icon);margin:.125rem 0 0}.cpp-quick-tip{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem .875rem;background:var(--color-brand-primary-alpha-05);border-radius:10px;margin-bottom:1.25rem;border:1px solid var(--color-brand-alpha-20)}.cpp-tip-icon{width:18px;height:18px;min-width:18px;color:var(--color-brand-primary);display:flex;align-items:center;justify-content:center;margin-top:1px}.cpp-tip-icon svg{width:16px;height:16px}.cpp-tip-icon-img{width:18px;height:18px;min-width:18px;flex-shrink:0;margin-top:1px}.cpp-tip-text{font-size:.8125rem;color:var(--color-text-label-muted);line-height:1.5;margin:0}.cpp-tip-label{color:var(--color-brand-primary);font-weight:600}.cpp-form{display:flex;flex-direction:column;gap:1rem}.cpp-form-group{display:flex;flex-direction:column;gap:.375rem}.cpp-label{font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.cpp-required{color:var(--color-text-accent-red)}.cpp-input,.cpp-textarea{width:100%;padding:.75rem .875rem;font-size:.875rem;font-family:inherit;color:var(--color-text-primary);background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.cpp-input::placeholder,.cpp-textarea::placeholder{color:var(--color-text-tertiary)}.cpp-input:hover:not(:disabled),.cpp-textarea:hover:not(:disabled){border-color:var(--color-border-dotted)}.cpp-input:focus,.cpp-textarea:focus{outline:none;border-color:var(--color-brand-purple-dark);box-shadow:0 0 0 3px var(--color-brand-purple-dark-alpha-10)}.cpp-input:disabled,.cpp-textarea:disabled{background:var(--color-bg-muted);cursor:not-allowed}.cpp-textarea{resize:vertical;min-height:80px;line-height:1.5}.cpp-form-error{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;background:var(--color-danger-bg);border:1px solid #FECACA;border-radius:8px;color:var(--color-danger);font-size:.8125rem;line-height:1.5}.cpp-form-error svg{flex-shrink:0;margin-top:1px}.cpp-submit-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 1.25rem;font-size:.9375rem;font-weight:600;color:var(--color-white);background:var(--color-brand-purple-dark);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.cpp-submit-btn:hover:not(:disabled){background:var(--color-brand-purple-dark);opacity:.9;box-shadow:0 4px 12px var(--color-brand-purple-dark-alpha-4d)}.cpp-submit-btn:active:not(:disabled){opacity:.95;box-shadow:0 2px 6px var(--color-brand-purple-dark-alpha-33)}.cpp-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.cpp-submit-btn svg{width:18px;height:18px;flex-shrink:0}.cpp-spinner{width:18px;height:18px;border:2px solid var(--color-white-alpha-4d);border-top-color:var(--color-white);border-radius:50%;animation:cpp-spin .8s linear infinite}@keyframes cpp-spin{to{transform:rotate(360deg)}}@media(max-width:1200px){.cpp-page{padding:2.5rem 2rem}.cpp-container{gap:3rem}}@media(max-width:1024px){.cpp-page{padding:2rem 1.5rem;align-items:flex-start}.cpp-container{grid-template-columns:1fr;gap:2.5rem;max-width:600px;align-items:stretch}.cpp-welcome-section{text-align:center}.cpp-welcome-title{font-size:32px}.cpp-welcome-description{max-width:100%;margin-left:auto;margin-right:auto}.cpp-form-section{justify-content:center}.cpp-form-card{max-width:100%}}@media(max-width:768px){.cpp-page{padding:1.5rem 1rem}.cpp-container{gap:2rem}.cpp-welcome-title{font-size:28px}.cpp-features-grid{gap:.875rem}.cpp-feature-card{padding:.875rem}.cpp-feature-icon{width:40px;height:40px;min-width:40px}.cpp-feature-icon svg{width:20px;height:20px}.cpp-feature-icon-img{width:40px;height:40px}}@media(max-width:640px){.cpp-page{padding:1.25rem 1rem}.cpp-welcome-section{text-align:center}.cpp-badge{font-size:.75rem;padding:.4rem .875rem}.cpp-welcome-title{font-size:24px}.cpp-welcome-description{font-size:14px}.cpp-features-grid{grid-template-columns:1fr;gap:.75rem}.cpp-feature-card{padding:1rem;text-align:left}.cpp-form-card{padding:1.25rem}.cpp-form-title{font-size:1rem}.cpp-quick-tip{padding:.625rem .75rem}.cpp-tip-text{font-size:.75rem}.cpp-submit-btn{padding:.75rem 1rem;font-size:.875rem}}@media(max-width:480px){.cpp-page{padding:1rem .75rem}.cpp-container{gap:1.5rem}.cpp-badge{font-size:.6875rem;padding:.375rem .75rem}.cpp-welcome-title{font-size:22px}.cpp-form-card{padding:1rem;border-radius:12px}.cpp-form-header{gap:.625rem}.cpp-form-icon{width:40px;height:40px;min-width:40px}.cpp-form-icon svg{width:20px;height:20px}.cpp-input,.cpp-textarea{padding:.625rem .75rem;font-size:.8125rem}}@keyframes cpp-fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.cpp-welcome-section{animation:cpp-fadeInUp .5s ease-out}.cpp-form-card{animation:cpp-fadeInUp .5s ease-out .1s both}.cpp-feature-card{animation:cpp-fadeInUp .4s ease-out both}.cpp-feature-card:nth-child(1){animation-delay:.15s}.cpp-feature-card:nth-child(2){animation-delay:.2s}.cpp-feature-card:nth-child(3){animation-delay:.25s}.cpp-feature-card:nth-child(4){animation-delay:.3s}.cpp-input:focus-visible,.cpp-textarea:focus-visible,.cpp-submit-btn:focus-visible{outline:2px solid var(--color-brand-purple-dark);outline-offset:2px}@media(prefers-contrast:high){.cpp-feature-card,.cpp-form-card,.cpp-input,.cpp-textarea{border-width:2px}}@media(prefers-reduced-motion:reduce){.cpp-welcome-section,.cpp-form-card,.cpp-feature-card{animation:none}.cpp-feature-card:hover,.cpp-submit-btn:hover:not(:disabled){transform:none}.cpp-spinner{animation:none;border-style:dotted}}.cpp-success-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:700px;width:100%;margin:0 auto;padding:2rem;animation:cpp-fadeInUp .5s ease-out}.cpp-success-icon{margin-bottom:1.5rem}.cpp-success-tick-img{width:96px;height:96px;object-fit:contain}.cpp-success-title{font-size:32px;font-weight:700;color:var(--color-text-primary);margin:0 0 .75rem;line-height:1.2}.cpp-success-subtitle{font-size:16px;font-weight:400;color:var(--color-text-icon);margin:0 0 2rem;line-height:1.5}.cpp-success-card{width:100%;max-width:640px;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px;padding:1.25rem;margin-bottom:2rem;box-shadow:0 1px 3px 0 var(--color-shadow-soft),0 4px 8px 3px var(--color-black-alpha-05)}.cpp-success-card-header{display:flex;align-items:flex-start;gap:.875rem;margin-bottom:1rem}.cpp-success-card-icon{width:44px;height:44px;min-width:44px;background:var(--color-brand-primary-alpha-05);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--color-brand-purple-dark)}.cpp-success-card-icon-img{width:44px;height:44px;min-width:44px;border-radius:10px;object-fit:contain}.cpp-success-card-info{flex:1;text-align:left}.cpp-success-card-name{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem}.cpp-success-card-code{display:inline-block;font-size:.75rem;font-weight:600;color:var(--color-brand-purple-dark);background:var(--color-bg-brand-subtle);padding:.125rem .5rem;border-radius:4px;margin-bottom:.375rem}.cpp-success-card-desc{font-size:.875rem;color:var(--color-text-label-muted);margin:0;line-height:1.4}.cpp-success-card-footer{display:flex;align-items:center;gap:.75rem;padding-top:.875rem;border-top:1px solid var(--color-bg-subtle)}.cpp-success-card-projects{font-size:.8125rem;font-weight:500;color:var(--color-text-label-muted)}.cpp-success-card-divider{width:4px;height:4px;border-radius:50%;background:var(--color-border-dotted)}.cpp-success-card-time{font-size:.8125rem;color:var(--color-text-label-muted)}.cpp-success-actions{display:flex;gap:1rem;width:100%;max-width:640px}.cpp-success-btn-primary{display:flex;align-items:center;justify-content:center;gap:.5rem;flex:1;padding:.875rem 1.25rem;font-size:.9375rem;font-weight:600;color:var(--color-white);background:var(--color-brand-purple-dark);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.cpp-success-btn-primary:hover{background:var(--color-brand-purple-dark);opacity:.9;box-shadow:0 4px 12px var(--color-brand-purple-dark-alpha-4d)}.cpp-success-btn-primary svg{width:18px;height:18px;flex-shrink:0}.cpp-success-btn-secondary{display:flex;align-items:center;justify-content:center;flex:1;padding:.875rem 1.25rem;font-size:.9375rem;font-weight:600;color:var(--color-brand-purple-dark);background:var(--color-white);border:2px solid var(--color-brand-purple-dark);border-radius:8px;cursor:pointer;transition:all .2s ease}.cpp-success-btn-secondary:hover{background:var(--color-brand-primary-alpha-05)}@media(max-width:640px){.cpp-success-container{padding:1.5rem 1rem}.cpp-success-tick-img{width:80px;height:80px}.cpp-success-title{font-size:24px}.cpp-success-subtitle{font-size:14px}.cpp-success-actions{flex-direction:column}.cpp-success-btn-primary,.cpp-success-btn-secondary{width:100%}}@media(max-width:480px){.cpp-success-card{padding:1rem}.cpp-success-card-icon{width:40px;height:40px;min-width:40px}.cpp-success-btn-primary,.cpp-success-btn-secondary{padding:.75rem 1rem;font-size:.875rem}}.cpp-overview-page{background:var(--gradient-cpp-page-simple);padding:1.5rem 2rem;display:block;align-items:flex-start}.cpp-overview-container{max-width:100%;width:100%;margin:0}.cpp-overview-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.cpp-overview-header-left{flex:1}.cpp-overview-title{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 .375rem;line-height:1.2}.cpp-overview-subtitle{font-size:14px;font-weight:400;color:var(--color-text-icon);margin:0;line-height:1.4}.cpp-overview-create-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:14px;font-weight:600;color:var(--color-white);background:var(--color-brand-purple-dark);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.cpp-overview-create-btn:hover{opacity:.9;box-shadow:0 4px 12px var(--color-brand-purple-dark-alpha-4d)}.cpp-overview-create-btn svg{width:16px;height:16px}.cpp-overview-form-card{background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 1px 3px 0 var(--color-shadow-soft),0 4px 8px 3px var(--color-black-alpha-05)}.cpp-overview-form-card .cpp-form-header{position:relative}.cpp-form-close-btn{position:absolute;top:0;right:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-label-muted);cursor:pointer;border-radius:6px;transition:all .2s ease}.cpp-form-close-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-primary)}.cpp-form-actions{display:flex;gap:.75rem;margin-top:1rem;justify-content:flex-end}.cpp-form-cancel-btn{padding:.625rem 1.25rem;font-size:14px;font-weight:500;color:var(--color-text-primary);background:var(--color-white);border:1px solid var(--color-border-dotted);border-radius:8px;cursor:pointer;transition:all .2s ease}.cpp-form-cancel-btn:hover{background:var(--color-bg-muted);border-color:var(--color-text-tertiary)}.cpp-portfolio-list{display:flex;flex-direction:column;gap:1rem}.cpp-portfolio-item{background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px 0 var(--color-shadow-soft),0 4px 8px 3px var(--color-black-alpha-05)}.cpp-portfolio-item-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--color-white)}.cpp-portfolio-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;cursor:pointer;color:var(--color-text-label-muted);transition:color .2s ease}.cpp-portfolio-toggle:hover{color:var(--color-text-primary)}.cpp-portfolio-chevron{transition:transform .2s ease}.cpp-portfolio-chevron.expanded{transform:rotate(180deg)}.cpp-portfolio-item-icon{width:36px;height:36px;border-radius:8px;object-fit:contain}.cpp-portfolio-item-info{flex:1;min-width:0}.cpp-portfolio-item-name{font-size:15px;font-weight:600;color:var(--color-text-primary);margin:0 0 .125rem}.cpp-portfolio-item-count{display:flex;align-items:center;gap:.375rem;font-size:13px;color:var(--color-text-label-muted)}.cpp-portfolio-dot{width:6px;height:6px;border-radius:50%;background:var(--color-brand-purple-dark)}.cpp-portfolio-item-actions{display:flex;align-items:center;gap:.5rem}.cpp-portfolio-add-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;font-size:13px;font-weight:500;color:var(--color-brand-purple-dark);background:var(--color-white);border:1px solid var(--color-brand-purple-dark);border-radius:6px;cursor:pointer;transition:all .2s ease}.cpp-portfolio-add-btn:hover{background:var(--color-brand-primary-alpha-05)}.cpp-portfolio-add-btn svg{width:14px;height:14px}.cpp-portfolio-delete-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid var(--color-border-primary);border-radius:6px;cursor:pointer;color:var(--color-text-label-muted);transition:all .2s ease}.cpp-portfolio-delete-btn:hover:not(:disabled){background:var(--color-bg-error-soft);border-color:#fecaca;color:var(--color-danger)}.cpp-portfolio-delete-btn:disabled,.cpp-portfolio-delete-btn.disabled{opacity:.4;cursor:not-allowed}.cpp-portfolio-delete-btn:disabled:hover,.cpp-portfolio-delete-btn.disabled:hover{background:none;border-color:var(--color-border-primary);color:var(--color-text-label-muted)}.cpp-portfolio-item-content{border-top:1px solid var(--color-bg-subtle);background:var(--gradient-cpp-portfolio-item-content);padding:2rem}.cpp-portfolio-empty{text-align:center;padding:1rem 0}.cpp-portfolio-empty-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0 0 .5rem}.cpp-portfolio-empty-text{font-size:14px;color:var(--color-text-label-muted);margin:0;line-height:1.5}.cpp-portfolio-projects{display:flex;flex-direction:column;gap:0}.cpp-project-item{display:flex;flex-direction:column;border-left:3px solid var(--color-brand-purple-dark);background:var(--color-white);border-bottom:1px solid var(--color-bg-subtle)}.cpp-project-item-row{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem}.cpp-project-item:last-child{border-bottom:none}.cpp-project-item-left{display:flex;flex-direction:column;gap:.25rem}.cpp-project-item-name{font-size:14px;font-weight:600;color:var(--color-text-primary);margin:0}.cpp-project-item-date{display:flex;align-items:center;gap:.5rem;font-size:13px;color:var(--color-text-label-muted)}.cpp-project-item-date svg{color:var(--color-text-tertiary)}.cpp-project-item-actions{display:flex;align-items:center;gap:.75rem}.cpp-project-edit-btn{background:none;border:none;color:var(--color-brand-purple-dark);font-size:14px;font-weight:500;cursor:pointer;padding:0;transition:color .2s ease}.cpp-project-edit-btn:hover{color:var(--color-brand-cpp-accent);text-decoration:underline}.cpp-project-delete-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid var(--color-border-primary);border-radius:6px;color:var(--color-text-label-muted);cursor:pointer;transition:all .2s ease}.cpp-project-delete-btn:hover{background:var(--color-bg-error-soft);border-color:#fecaca;color:var(--color-danger)}.cpp-project-delete-btn:hover{color:var(--color-badge)}@media(max-width:768px){.cpp-overview-page{padding:1rem}.cpp-overview-header{flex-direction:column;align-items:stretch}.cpp-overview-create-btn{align-self:flex-start}.cpp-portfolio-item-header{flex-wrap:wrap;gap:.5rem}.cpp-portfolio-item-actions{width:100%;margin-top:.5rem;justify-content:flex-end}.cpp-project-item{padding:.875rem 1rem}}@media(max-width:480px){.cpp-overview-title{font-size:20px}.cpp-portfolio-item-header{padding:.875rem 1rem}.cpp-portfolio-add-btn{padding:.375rem .625rem;font-size:12px}.cpp-portfolio-delete-btn{width:32px;height:32px}.cpp-project-item{flex-wrap:wrap;gap:.5rem}.cpp-project-item-actions{width:100%;justify-content:flex-end}.cpp-project-item-name{font-size:13px}.cpp-project-item-date{font-size:12px}.cpp-portfolio-item-content{padding:1.5rem 1rem}}.cpp-project-page{background:var(--gradient-cpp-page-simple);padding:1.5rem 2rem;display:block;min-height:calc(100vh - 64px)}.cpp-project-container{max-width:100%;width:100%;display:flex;flex-direction:column;min-height:calc(100vh - 64px - 3rem)}.cpp-breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:14px}.cpp-breadcrumb svg{color:var(--color-text-label-muted)}.cpp-breadcrumb-link{color:var(--color-text-label-muted);cursor:pointer;border:none;background:transparent;transition:color .2s ease}.cpp-breadcrumb-link:hover{color:var(--color-brand-purple-dark)}.cpp-breadcrumb-current{color:var(--color-text-primary);font-weight:500}.cpp-stepper{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:2rem;padding:0 2rem}.cpp-step{display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative}.cpp-step-icon{width:40px;height:40px;border-radius:50%;background:var(--color-bg-neutral-warm);display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:8px;box-sizing:border-box}.cpp-step-icon-img{width:20px;height:20px;object-fit:contain;filter:grayscale(100%) brightness(.7);transition:filter .2s ease}.cpp-step.active .cpp-step-icon{background:var(--color-brand-primary)}.cpp-step.active .cpp-step-icon-img{filter:brightness(0) invert(1)}.cpp-step.completed .cpp-step-icon{background:#e8d5ff;border-color:var(--color-brand-purple-dark)}.cpp-step.completed .cpp-step-icon-img{filter:none}.cpp-step-label{font-size:12px;font-weight:500;color:var(--color-text-icon);text-align:center;white-space:nowrap}.cpp-step.active .cpp-step-label{color:var(--color-brand-primary);font-weight:600}.cpp-step.completed .cpp-step-label{color:var(--color-brand-purple-dark)}.cpp-step-line{width:80px;height:2px;background:var(--color-border-primary);margin:0 .5rem 1.5rem}.cpp-step-line.completed{background:var(--color-brand-purple-dark)}.cpp-project-form-card{flex:1;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:12px;padding:1.5rem 2rem;box-shadow:0 1px 3px 0 var(--color-shadow-soft),0 4px 8px 3px var(--color-black-alpha-05);margin-bottom:1.5rem}.cpp-project-form-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.cpp-project-form-icon{width:40px;height:40px;background:var(--color-brand-primary-alpha-10);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--color-brand-purple-dark)}.cpp-project-form-title{font-size:20px;font-weight:700;color:var(--color-text-primary);margin:0}.cpp-project-form-subtitle{font-size:14px;color:var(--color-text-icon);margin:0 0 1.5rem;line-height:1.5}.cpp-project-form{display:flex;flex-direction:column;gap:1.25rem}.cpp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.cpp-date-input-wrapper{position:relative}.cpp-date-input{width:100%;cursor:pointer}.cpp-date-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6}.cpp-step-placeholder{padding:3rem 2rem;text-align:center;color:var(--color-text-label-muted);background:var(--color-bg-muted);border-radius:8px;border:1px dashed var(--color-border-primary)}.cpp-import-instruction{background:var(--color-brand-primary-alpha-05);border:1px solid var(--color-brand-primary-alpha-20);border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.25rem}.cpp-import-instruction--collapsed{padding:.875rem 1.25rem}.cpp-import-instruction--collapsed .cpp-import-instruction-header{margin-bottom:.375rem}.cpp-import-instruction-header{display:flex;align-items:center;gap:.625rem;margin-bottom:.75rem}.cpp-import-instruction-header .cpp-project-form-icon{width:24px;height:24px;border-radius:6px;flex-shrink:0}.cpp-import-instruction-icon{width:20px;height:20px;border-radius:50%;background:var(--color-brand-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:12px;font-weight:700;font-style:italic;line-height:1}.cpp-import-instruction-title{font-size:14px;font-weight:700;color:var(--color-text-primary);margin:0}.cpp-import-instruction-list{list-style:none;counter-reset:import-instruction;margin:0 0 .75rem;padding:0;font-size:14px;font-weight:400;color:var(--color-text-primary);line-height:1.5}.cpp-import-instruction-list li{display:flex;align-items:flex-start;gap:.625rem;margin-bottom:.5rem;counter-increment:import-instruction}.cpp-import-instruction-list li:before{content:counter(import-instruction);flex-shrink:0;border-radius:50%;padding:2px;gap:10px;width:16px;height:16px;background:var(--color-white);border:1px solid var(--color-brand-core-100);font-size:10px;font-weight:400;line-height:1;display:flex;align-items:center;justify-content:center;margin-top:1px}.cpp-import-instruction-list li:last-child{margin-bottom:0}.cpp-import-instruction-note{font-size:12px;color:var(--color-text-icon);margin:0 0 .75rem;line-height:1.5;font-weight:400}.cpp-import-instruction-note-label{font-weight:500!important}.cpp-import-instruction-asterisk{color:var(--color-badge);font-weight:600}.cpp-import-instruction-toggle{display:inline-flex;align-items:center;gap:.375rem;background:none;border:none;padding:0;font-size:12px;font-weight:500;color:var(--color-brand-purple-dark);cursor:pointer;transition:color .2s ease}.cpp-import-instruction-toggle:hover{color:var(--color-brand-purple-dark)}.cpp-import-instruction-toggle svg{flex-shrink:0;transition:transform .2s ease}.cpp-import-instruction-chevron--up{transform:rotate(180deg)}.cpp-import-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem}.cpp-import-tab{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;background:var(--color-bg-neutral-silver);border:none;color:var(--color-text-neutral-pale)}.cpp-import-tab.active{background:var(--color-brand-purple-dark);color:var(--color-white)}.cpp-import-tab.uploaded:not(.active){background:var(--color-brand-purple-dark);color:var(--color-white)}.cpp-import-tab-checkbox{width:14px;height:14px;border:1.5px solid currentColor;border-radius:3px;display:flex;align-items:center;justify-content:center}.cpp-import-tab.active .cpp-import-tab-checkbox,.cpp-import-tab.uploaded .cpp-import-tab-checkbox{border-color:var(--color-white)}.cpp-import-tab.active .cpp-import-tab-checkbox svg,.cpp-import-tab.uploaded .cpp-import-tab-checkbox svg{color:var(--color-white)}.cpp-import-tab-required{color:var(--color-badge);margin-left:2px}.cpp-import-tab.active .cpp-import-tab-required{color:var(--color-error-coral)}.cpp-data-source-section{margin-bottom:1.5rem}.cpp-data-source-loading{font-size:13px;color:var(--color-text-secondary);margin:0}.cpp-data-source-error{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;font-size:13px;color:var(--color-text-error, #c0392b);background:var(--color-bg-error-light, #fdf2f2);border:1px solid var(--color-border-error, #e74c3c);border-radius:8px}.cpp-data-source-error-retry{margin-left:auto;padding:.25rem .75rem;font-size:12px;font-weight:500;color:var(--color-brand-purple-dark);background:transparent;border:1px solid var(--color-brand-purple-dark);border-radius:6px;cursor:pointer;white-space:nowrap;transition:background .15s ease}.cpp-data-source-error-retry:hover{background:var(--color-brand-purple-light, #f3e8ff)}.cpp-data-source-label{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:.5rem}.cpp-data-source-dropdown{position:relative}.cpp-data-source-trigger{display:flex;align-items:center;justify-content:space-between;width:467px;padding:.625rem .875rem;font-size:14px;font-weight:500;color:var(--color-brand-purple-dark);background:var(--color-white);border:1px solid var(--color-brand-purple-dark);border-radius:8px;cursor:pointer;transition:all .2s ease}.cpp-data-source-trigger:hover,.cpp-data-source-trigger--open{border-color:var(--color-brand-purple-dark);box-shadow:0 0 0 1px var(--color-brand-purple-dark)}.cpp-data-source-trigger-label{text-align:left}.cpp-data-source-trigger svg{flex-shrink:0;stroke:var(--color-brand-purple-dark)}.cpp-data-source-menu{position:absolute;top:calc(100% + 4px);left:0;width:467px;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;box-shadow:0 4px 12px var(--color-black-alpha-15);z-index:20;overflow:hidden}.cpp-data-source-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;font-size:14px;font-weight:500;color:var(--color-text-primary);background:var(--color-white);border:none;text-align:left;cursor:pointer;transition:background .2s ease}.cpp-data-source-option:hover{background:var(--color-bg-neutral-wash-50)}.cpp-data-source-option--active{color:var(--color-brand-purple-dark);background:var(--color-brand-primary-alpha-10)}.cpp-data-source-option--active:hover{background:var(--color-brand-primary-alpha-10)}.cpp-data-source-option svg{flex-shrink:0;stroke:var(--color-brand-purple-dark)}.cpp-api-config-section{margin-bottom:1.5rem}.cpp-api-config-title{margin:0 0 .75rem;font-size:14px;font-weight:600;color:var(--color-text-primary)}.cpp-api-config-divider{height:1px;background:var(--color-border-primary);margin-bottom:1.25rem}.cpp-api-config-field{margin-bottom:1rem}.cpp-api-config-label{display:block;margin-bottom:.5rem;font-size:14px;font-weight:500;color:var(--color-text-primary)}.cpp-api-config-required{color:var(--color-badge);margin-left:2px}.cpp-api-config-input{width:467px;max-width:100%;padding:.625rem .875rem;font-size:14px;color:var(--color-text-primary);background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;transition:border-color .2s ease,box-shadow .2s ease}.cpp-api-config-input::placeholder{color:var(--color-text-tertiary)}.cpp-api-config-input:disabled{background:var(--color-bg-neutral-silver);cursor:not-allowed}.cpp-api-config-actions{display:flex;align-items:center;gap:.75rem}.cpp-api-config-connect-btn{padding:.5rem 1.25rem;font-size:14px;font-weight:600;color:var(--color-brand-purple-dark);background:var(--color-white);border:1px solid var(--color-brand-purple-dark);border-radius:8px;cursor:pointer;transition:all .2s ease}.cpp-api-config-connect-btn:hover:not(:disabled){background:var(--color-brand-primary-alpha-10)}.cpp-api-config-connect-btn:disabled{opacity:.5;cursor:not-allowed}.cpp-api-config-status{display:inline-flex;align-items:center;padding:.25rem .75rem;font-size:13px;font-weight:500;color:var(--color-text-primary);background:var(--color-bg-neutral-silver);border-radius:999px}.cpp-api-config-status--connected{color:var(--color-brand-purple-dark);background:var(--color-brand-primary-alpha-10)}.cpp-api-config-status--connecting{color:var(--color-text-neutral-pale)}.cpp-api-config-status--error{color:var(--color-error-coral);background:var(--color-error-coral-alpha-10, #fde8e8)}.cpp-api-config-error{margin:.75rem 0 0;font-size:13px;color:var(--color-error-coral)}.cpp-upload-label{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:.5rem}.cpp-upload-dropzone{border:1px dashed var(--color-border-primary);border-radius:8px;background:var(--color-bg-muted);min-height:180px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:1.5rem}.cpp-upload-dropzone:hover{border-color:var(--color-brand-purple-dark);background:var(--color-brand-primary-alpha-05)}.cpp-upload-placeholder{display:flex;flex-direction:column;align-items:center;gap:.75rem}.cpp-upload-placeholder-text{font-size:14px;color:var(--color-text-label-muted)}.cpp-upload-select-link{display:flex;align-items:center;gap:.375rem;font-size:14px;font-weight:500;color:var(--color-brand-primary);cursor:pointer;text-decoration:underline}.cpp-upload-select-link:hover{color:var(--color-brand-cpp-accent)}.cpp-upload-input{display:none}.cpp-upload-files-action{margin-top:1rem}.cpp-upload-files-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:14px;font-weight:600;color:var(--color-brand-purple-dark);background:var(--color-white);border:1px solid var(--color-brand-purple-dark);border-radius:8px;cursor:pointer;transition:background .2s ease}.cpp-upload-files-btn:hover:not(:disabled){background:var(--color-brand-primary-alpha-10)}.cpp-upload-files-btn:disabled{opacity:.5;cursor:not-allowed}.cpp-upload-files-btn.loading{opacity:.85;cursor:wait}.cpp-upload-progress{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;width:100%;max-width:420px;padding:.5rem 0}.cpp-upload-progress-icon{display:flex;justify-content:center;color:var(--color-brand-purple-dark)}.cpp-upload-progress-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.cpp-upload-progress-text,.cpp-upload-progress-percent{font-size:14px;font-weight:500;color:var(--color-text-primary)}.cpp-upload-progress-bar{width:100%;height:6px;background:var(--color-border-primary);border-radius:999px;overflow:hidden}.cpp-upload-progress-fill{height:100%;background:var(--color-brand-purple-dark);border-radius:999px;transition:width .2s ease}.cpp-upload-attached,.cpp-upload-server-success{display:flex;flex-direction:column;align-items:center;gap:.75rem;width:100%}.cpp-upload-status-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center}.cpp-upload-status-icon--attached{background:var(--color-brand-primary-alpha-10);color:var(--color-brand-purple-dark)}.cpp-upload-status-icon--success{background:#e8f5e9;color:var(--color-text-positive)}.cpp-upload-status-label{font-size:14px;font-weight:600;color:var(--color-text-primary)}.cpp-upload-status-label--success{color:var(--color-text-positive)}.cpp-upload-file-chip{display:flex;align-items:center;gap:.75rem;width:100%;max-width:520px;padding:.75rem 1rem;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px}.cpp-upload-file-chip--uploaded{background:#f1faf3;border-color:#b7dfc3}.cpp-upload-file-chip-icon{flex-shrink:0;color:var(--color-brand-purple-dark)}.cpp-upload-file-chip-details{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.cpp-upload-file-chip-name{font-size:14px;font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cpp-upload-file-chip-meta,.cpp-upload-file-chip-status{font-size:12px;color:var(--color-text-icon)}.cpp-upload-file-chip-status{color:var(--color-text-positive)}.cpp-upload-replace-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:1px solid var(--color-brand-purple-dark);border-radius:6px;background:var(--color-white);color:var(--color-brand-purple-dark);font-size:13px;font-weight:500;cursor:pointer;flex-shrink:0;transition:all .2s ease}.cpp-upload-replace-btn:hover{background:var(--color-brand-primary-alpha-05)}.cpp-upload-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--color-border-primary);border-radius:6px;background:var(--color-white);color:var(--color-text-icon);cursor:pointer;flex-shrink:0;transition:all .2s ease}.cpp-upload-delete-btn:hover{color:var(--color-danger);border-color:#fecaca;background:var(--color-bg-error-soft)}.cpp-upload-info{display:flex;align-items:flex-start;gap:.5rem;margin-top:.75rem;font-size:13px;color:var(--color-text-icon)}.cpp-upload-info svg{flex-shrink:0;margin-top:1px;color:var(--color-text-icon)}.cpp-upload-info--success{color:var(--color-text-icon)}.cpp-upload-info--success svg{color:var(--color-text-positive)}.cpp-upload-success{display:flex;flex-direction:column;align-items:center;gap:.5rem}.cpp-upload-success-icon{width:48px;height:48px;border-radius:50%;background:var(--color-text-positive);color:var(--color-white);display:flex;align-items:center;justify-content:center}.cpp-upload-success-icon svg{stroke:var(--color-white)}.cpp-upload-success-text{font-size:14px;font-weight:500;color:var(--color-text-positive)}.cpp-upload-success.cpp-upload-readonly{padding:1rem}.cpp-upload-success-filename{font-size:13px;font-weight:500;color:var(--color-text-primary);word-break:break-all;text-align:center;max-width:100%}.cpp-upload-readonly-note{font-size:12px;color:var(--color-text-icon);font-style:italic;margin-top:.25rem;text-align:center}.cpp-upload-error-state{display:flex;flex-direction:column;align-items:center;gap:.5rem}.cpp-upload-error-icon{width:48px;height:48px;border-radius:50%;background:var(--color-bg-error-soft);color:var(--color-danger);display:flex;align-items:center;justify-content:center}.cpp-upload-error-icon svg{stroke:var(--color-danger)}.cpp-upload-error-filename{font-size:13px;font-weight:500;color:var(--color-text-primary);max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cpp-upload-error-text{font-size:13px;color:var(--color-danger)}.cpp-upload-replace-link{display:flex;align-items:center;gap:.375rem;font-size:14px;font-weight:500;color:var(--color-brand-purple-dark);cursor:pointer;text-decoration:underline;margin-top:.25rem}.cpp-upload-replace-link:hover{color:var(--color-brand-cpp-accent)}.cpp-upload-error-actions{display:flex;align-items:center;gap:1rem;margin-top:.25rem;flex-wrap:wrap;justify-content:center}.cpp-upload-error-delete-btn{display:flex;align-items:center;gap:.375rem;font-size:14px;color:var(--color-danger, #dc2626);background:none;border:none;cursor:pointer;padding:0;text-decoration:underline}.cpp-upload-error-delete-btn:hover{color:#b91c1c}.cpp-import-tab.error{background:var(--color-danger);color:var(--color-white)}.cpp-import-tab.error:not(.active){background:var(--color-danger);color:var(--color-white)}.cpp-import-tab.error .cpp-import-tab-checkbox{background:var(--color-white);border-color:var(--color-white)}.cpp-import-tab.error .cpp-import-tab-checkbox svg{color:var(--color-danger)}.cpp-import-tab.error .cpp-import-tab-required{color:var(--color-error-coral)}.cpp-import-warning{display:flex;align-items:center;gap:.375rem;padding:1rem 1.25rem;background:var(--color-brand-primary-alpha-05);border-radius:8px;border:1px solid var(--color-brand-primary-alpha-20);font-size:14px}.cpp-import-warning-asterisk{color:var(--color-badge);font-weight:600}.cpp-import-warning-label{font-weight:600;color:var(--color-text-primary)}.cpp-import-warning-text{color:var(--color-text-icon)}.cpp-import-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--color-danger-bg);border:1px solid #FECACA;border-radius:8px;color:var(--color-danger);font-size:14px;margin-top:1rem}.cpp-import-error svg{flex-shrink:0}.cpp-import-processing{display:flex;align-items:center;gap:.625rem;padding:.75rem 1rem;background:#eff6ff;border:1px solid #BFDBFE;border-radius:8px;color:#1d4ed8;font-size:14px;margin-top:1rem}.cpp-complete-header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:1.5rem}.cpp-complete-icon{width:56px;height:56px;border-radius:50%;background:var(--color-brand-purple-dark);color:var(--color-white);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.cpp-complete-title-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.cpp-complete-title-row svg{color:var(--color-brand-purple-dark)}.cpp-complete-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0}.cpp-complete-subtitle{font-size:14px;color:var(--color-text-label-muted);margin:0}.cpp-complete-card{background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;padding:1.25rem;margin-bottom:1rem}.cpp-complete-card-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0 0 1rem}.cpp-complete-details{display:flex;flex-direction:column;gap:1rem}.cpp-complete-detail-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem}.cpp-complete-detail-item{display:flex;flex-direction:column;gap:.25rem}.cpp-complete-detail-full{grid-column:1 / -1}.cpp-complete-detail-label{font-size:12px;color:var(--color-text-tertiary);font-weight:500}.cpp-complete-detail-value{font-size:14px;font-weight:600;color:var(--color-text-primary)}.cpp-complete-files{display:flex;flex-direction:column;gap:.5rem}.cpp-complete-file-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--color-bg-muted);border:1px solid var(--color-border-primary);border-radius:8px}.cpp-complete-file-icon{color:var(--color-brand-purple-dark)}.cpp-complete-file-info{flex:1;display:flex;flex-direction:column;gap:.125rem}.cpp-complete-file-name{font-size:14px;font-weight:500;color:var(--color-text-primary)}.cpp-complete-file-size{font-size:12px;color:var(--color-text-tertiary)}.cpp-complete-file-badge{display:inline-block;font-size:10px;font-weight:500;color:var(--color-brand-purple-dark);background:var(--color-bg-brand-subtle);padding:.125rem .5rem;border-radius:4px;margin-left:.5rem}.cpp-complete-file-badge--connected{color:#15803d;background:#dcfce7;margin-left:0}.cpp-complete-file-remove{background:none;border:none;color:var(--color-badge);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s ease}.cpp-complete-file-remove:hover{opacity:1}.cpp-complete-no-files{font-size:14px;color:var(--color-text-tertiary);text-align:center;padding:1rem;margin:0}.cpp-complete-actions{display:flex;justify-content:center;margin-top:1.5rem}.cpp-complete-dashboard-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--color-brand-purple-dark);color:var(--color-white);border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.cpp-complete-dashboard-btn:hover{background:var(--color-brand-cpp-accent)}.cpp-edit-page{min-height:100vh;background:var(--color-white);padding:2rem 3rem}.cpp-edit-container{width:100%;max-width:100%}.cpp-edit-header{margin-bottom:1.5rem}.cpp-edit-title{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 .25rem}.cpp-edit-subtitle{font-size:14px;color:var(--color-text-label-muted);margin:0}.cpp-edit-card{background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;padding:1.5rem;margin-bottom:1rem}.cpp-edit-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.cpp-edit-card-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0}.cpp-edit-btn{display:flex;align-items:center;gap:.375rem;background:none;border:none;color:var(--color-brand-purple-dark);font-size:14px;font-weight:500;cursor:pointer;padding:0;transition:color .2s ease}.cpp-edit-btn:hover{color:var(--color-brand-cpp-accent)}.cpp-edit-details{display:flex;flex-direction:column;gap:1rem}.cpp-edit-detail-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem}.cpp-edit-detail-item{display:flex;flex-direction:column;gap:.5rem}.cpp-edit-detail-full{grid-column:1 / -1}.cpp-edit-detail-label{font-size:12px;color:var(--color-text-tertiary);font-weight:500}.cpp-edit-input{font-size:14px;font-weight:600;color:var(--color-text-primary);background:none;border:none;border-bottom:1px solid transparent;padding:.25rem 0;transition:border-color .2s ease}.cpp-edit-input:focus{outline:none;border-bottom-color:var(--color-brand-purple-dark)}.cpp-edit-input::placeholder{color:var(--color-text-tertiary);font-weight:400}.cpp-edit-files{display:flex;flex-direction:column;gap:.5rem}.cpp-edit-files-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.cpp-edit-file-box{background:var(--color-bg-muted);border:1px solid var(--color-border-primary);border-radius:8px;overflow:hidden;display:flex;flex-direction:column}.cpp-edit-file-box-header{padding:.75rem 1rem;font-size:14px;font-weight:600;color:var(--color-text-primary);background:var(--color-white);border-bottom:1px solid var(--color-border-primary)}.cpp-edit-file-box-content{padding:1rem;background:var(--color-white);flex:1;display:flex;flex-direction:column;justify-content:center}.cpp-edit-file-box-filled-wrap{display:flex;flex-direction:column;gap:.5rem;background:var(--color-white)}.cpp-edit-file-box-filled{display:flex;align-items:center;gap:.75rem;background:var(--color-white)}.cpp-edit-file-error{display:flex;align-items:flex-start;gap:.375rem;padding:.5rem .75rem;border-radius:6px;background:var(--color-bg-danger-subtle, #fef2f2);color:var(--color-text-danger, #b91c1c);font-size:12px;line-height:1.4}.cpp-edit-file-box-empty{display:flex;flex-direction:column;gap:.75rem;background:var(--color-white)}.cpp-edit-file-box-label{font-size:14px;font-weight:500;color:var(--color-text-primary)}.cpp-edit-file-box-dropzone{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;border:1px dashed var(--color-border-primary);border-radius:6px;cursor:pointer;transition:all .2s ease}.cpp-edit-file-box-dropzone:hover{border-color:var(--color-brand-purple-dark);background:var(--color-bg-brand-subtle)}.cpp-edit-file-box-dropzone--loading{pointer-events:none;opacity:.75;cursor:default}.cpp-edit-file-box-droptext{font-size:13px;color:var(--color-text-tertiary)}.cpp-edit-file-box-select{display:inline-flex;align-items:center;gap:.375rem;background:none;border:none;color:var(--color-brand-purple-dark);font-size:13px;font-weight:500;cursor:pointer;padding:0;text-decoration:underline}.cpp-edit-file-box-select:hover{color:var(--color-brand-cpp-accent)}.cpp-edit-api-connection{padding:.75rem 0 0}.cpp-edit-api-connection-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--color-border-primary);border-radius:8px;background:var(--color-white)}.cpp-edit-api-connection-main{display:flex;align-items:flex-start;gap:.75rem;min-width:0}.cpp-edit-api-connection-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:var(--color-brand-primary-alpha-10);color:var(--color-brand-purple-dark);flex-shrink:0}.cpp-edit-api-connection-details{display:flex;flex-direction:column;gap:.375rem;min-width:0}.cpp-edit-api-connection-label{font-size:14px;font-weight:600;color:var(--color-text-primary)}.cpp-edit-api-connection-project-id{font-size:13px;color:var(--color-text-label-muted)}.cpp-edit-api-connection-project-id-row{display:flex;align-items:center;gap:.5rem;margin:.25rem 0}.cpp-edit-api-connection-project-id-label{font-size:12px;color:var(--color-text-label-muted);white-space:nowrap;flex-shrink:0}.cpp-edit-api-connection-project-id-input{flex:1;font-size:13px;padding:.3rem .6rem;border:1px solid var(--color-border-input, #d1d5db);border-radius:6px;background:var(--color-bg-input, #fff);color:var(--color-text-primary);outline:none;min-width:0}.cpp-edit-api-connection-project-id-input:focus{border-color:var(--color-primary, #7c3aed);box-shadow:0 0 0 2px #7c3aed1a}.cpp-edit-api-connection-project-id-input:disabled{background:var(--color-bg-disabled, #f3f4f6);color:var(--color-text-disabled, #9ca3af);cursor:not-allowed}.cpp-edit-api-connection-error{font-size:12px;color:var(--color-error, #dc2626);margin-top:.2rem}.cpp-edit-api-status{display:inline-flex;align-items:center;gap:.375rem;width:fit-content;padding:.2rem .65rem;font-size:12px;font-weight:500;color:var(--color-text-label-muted);background:var(--color-bg-neutral-silver);border-radius:999px}.cpp-edit-api-status-dot{width:7px;height:7px;border-radius:50%;background:var(--color-text-neutral-pale)}.cpp-edit-api-status--connected{color:#1a7f37;background:#e8f5e9}.cpp-edit-api-status--connected .cpp-edit-api-status-dot{background:#2e7d32}.cpp-edit-api-status--connecting{color:var(--color-text-neutral-pale)}.cpp-edit-api-status--error{color:var(--color-badge);background:#fdecea}.cpp-edit-api-status--error .cpp-edit-api-status-dot{background:var(--color-badge)}.cpp-edit-api-sync{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;font-size:13px;color:var(--color-text-label-muted)}.cpp-edit-api-sync svg{flex-shrink:0;stroke:var(--color-text-label-muted)}.cpp-edit-api-modal-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.cpp-edit-api-refresh-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:14px;font-weight:600;color:var(--color-brand-purple-dark);background:var(--color-white);border:1px solid var(--color-brand-purple-dark);border-radius:8px;cursor:pointer;transition:background .2s ease}.cpp-edit-api-refresh-btn:hover:not(:disabled){background:var(--color-brand-primary-alpha-10)}.cpp-edit-api-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.cpp-edit-file-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--color-bg-muted);border:1px solid var(--color-border-primary);border-radius:8px}.cpp-edit-file-icon{color:var(--color-brand-purple-dark)}.cpp-edit-file-info{flex:1;display:flex;flex-direction:column;gap:.125rem}.cpp-edit-file-name{font-size:14px;font-weight:500;color:var(--color-text-primary)}.cpp-edit-file-size{font-size:12px;color:var(--color-text-tertiary)}.cpp-edit-file-date{font-size:11px;color:var(--color-text-tertiary);margin-top:.125rem}.cpp-edit-file-badge{display:inline-block;font-size:10px;font-weight:500;color:var(--color-brand-purple-dark);background:var(--color-bg-brand-subtle);padding:.125rem .5rem;border-radius:4px;margin-left:.5rem}.cpp-edit-file-remove{background:none;border:none;color:var(--color-badge);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s ease}.cpp-edit-file-remove:hover{opacity:1}.cpp-edit-no-files{font-size:14px;color:var(--color-text-tertiary);text-align:center;padding:1rem;margin:0}.cpp-edit-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem}.cpp-edit-back-btn{display:flex;align-items:center;gap:.375rem;padding:.625rem 1.25rem;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;color:var(--color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.cpp-edit-back-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.cpp-edit-save-btn{display:flex;align-items:center;justify-content:center;padding:.75rem 2.5rem;background:var(--color-brand-purple-dark);color:var(--color-white);border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.cpp-edit-save-btn:hover{background:var(--color-brand-cpp-accent)}.cpp-edit-detail-value{font-size:14px;font-weight:600;color:var(--color-text-primary)}.cpp-edit-file-actions{display:flex;align-items:center;gap:.5rem}.cpp-edit-file-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:1px solid var(--color-brand-purple-dark);border-radius:6px;background:var(--color-white);color:var(--color-brand-purple-dark);font-size:13px;font-weight:500;cursor:pointer;flex-shrink:0;transition:all .2s ease}.cpp-edit-file-btn:hover{background:var(--color-brand-primary-alpha-05)}.cpp-edit-file-btn--loading{pointer-events:none;opacity:.8;cursor:default}.cpp-edit-file-btn--loading:hover{background:var(--color-white)}.cpp-modal-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.cpp-modal-stack{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:480px}.cpp-modal-page-title{margin:0;font-size:16px;font-weight:600;color:var(--color-brand-cpp-accent);text-align:center;width:100%}.cpp-modal{background:var(--color-white);border-radius:12px;box-shadow:0 20px 60px var(--color-black-alpha-20);width:100%;max-width:480px;max-height:90vh;overflow:auto}.cpp-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;border-bottom:1px solid var(--color-border-primary)}.cpp-modal-title-section{display:flex;align-items:flex-start;gap:1rem}.cpp-modal-icon{width:48px;height:48px;border-radius:10px;background:var(--color-bg-brand-subtle);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cpp-modal-icon img{width:28px;height:28px}.cpp-modal-icon svg{color:var(--color-brand-purple-dark)}.cpp-modal-header-text{flex:1}.cpp-modal-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem}.cpp-modal-subtitle{font-size:14px;color:var(--color-text-label-muted);margin:0}.cpp-modal-close-btn{background:none;border:none;padding:.5rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease;flex-shrink:0}.cpp-modal-close-btn:hover{background:var(--color-bg-muted)}.cpp-modal-close-btn:focus{outline:2px solid var(--color-brand-purple-dark);outline-offset:2px}.cpp-modal-body{padding:1.5rem}.cpp-modal-form-group{margin-bottom:1rem}.cpp-modal-form-group:last-child{margin-bottom:0}.cpp-modal-label{display:block;font-size:13px;font-weight:500;color:var(--color-text-primary);margin-bottom:.5rem}.cpp-modal-input{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border-primary);border-radius:8px;font-size:14px;color:var(--color-text-primary);transition:border-color .2s ease;box-sizing:border-box}.cpp-modal-input:focus{outline:none;border-color:var(--color-brand-purple-dark)}.cpp-modal-input.readonly{background:var(--color-bg-muted);color:var(--color-text-label-muted);cursor:not-allowed}.cpp-modal-textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border-primary);border-radius:8px;font-size:14px;color:var(--color-text-primary);resize:vertical;min-height:80px;font-family:inherit;box-sizing:border-box}.cpp-modal-textarea:focus{outline:none;border-color:var(--color-brand-purple-dark)}.cpp-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.cpp-modal-footer{display:flex;gap:.75rem;padding:1.25rem 1.5rem;border-top:1px solid var(--color-border-primary)}.cpp-modal-cancel-btn{flex:1;padding:.75rem 1rem;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;font-size:14px;font-weight:500;color:var(--color-text-primary);cursor:pointer;transition:all .2s ease}.cpp-modal-cancel-btn:hover{background:var(--color-bg-muted);border-color:var(--color-border-dotted)}.cpp-modal-save-btn{flex:1;padding:.75rem 1rem;background:var(--color-brand-purple-dark);border:none;border-radius:8px;font-size:14px;font-weight:500;color:var(--color-white);cursor:pointer;transition:all .2s ease}.cpp-modal-save-btn:hover{background:var(--color-brand-cpp-accent)}.cpp-delete-portfolio-dialog{max-width:420px;overflow:hidden}.cpp-delete-portfolio-header{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border-primary)}.cpp-delete-portfolio-icon-wrap{width:44px;height:44px;border-radius:10px;background:#fce7f3;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-danger)}.cpp-delete-portfolio-title{margin:0;font-size:18px;font-weight:700;color:var(--color-text-primary);line-height:1.3}.cpp-delete-portfolio-body{padding:1.25rem 1.5rem 1.5rem}.cpp-delete-portfolio-message{margin:0;font-size:14px;line-height:1.55;color:var(--color-text-label-muted)}.cpp-delete-portfolio-footer{display:flex;gap:.75rem;padding:0 1.5rem 1.5rem}.cpp-delete-portfolio-cancel-btn{flex:1;padding:.65rem 1rem;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;font-size:14px;font-weight:500;color:var(--color-text-primary);cursor:pointer;transition:background .2s ease,border-color .2s ease}.cpp-delete-portfolio-cancel-btn:hover:not(:disabled){background:var(--color-bg-muted)}.cpp-delete-portfolio-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.cpp-delete-portfolio-confirm-btn{flex:1;padding:.65rem 1rem;background:var(--color-badge);border:none;border-radius:8px;font-size:14px;font-weight:700;color:var(--color-white);cursor:pointer;transition:background .2s ease}.cpp-delete-portfolio-confirm-btn:hover:not(:disabled){background:var(--color-danger)}.cpp-delete-portfolio-confirm-btn:disabled{opacity:.75;cursor:not-allowed}.cpp-modal-current-file{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--color-bg-muted);border-radius:8px;margin-bottom:1rem}.cpp-modal-current-label{font-size:13px;color:var(--color-text-label-muted)}.cpp-modal-current-name{font-size:14px;font-weight:500;color:var(--color-text-primary)}.cpp-modal-upload-area{margin-bottom:1rem}.cpp-modal-upload-area.disabled{opacity:.6;pointer-events:none}.cpp-modal-error{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;background:var(--color-status-error-bg, #fef2f2);border:1px solid var(--color-status-error, #ef4444);border-radius:6px;margin-bottom:1rem;color:var(--color-status-error, #ef4444);font-size:13px;line-height:1.4}.cpp-modal-error svg{flex-shrink:0;margin-top:1px}.cpp-modal-upload-label{display:block;border:2px dashed var(--color-border-primary);border-radius:8px;padding:2rem;text-align:center;cursor:pointer;transition:all .2s ease}.cpp-modal-upload-label:hover{border-color:var(--color-brand-purple-dark);background:var(--color-brand-primary-alpha-05)}.cpp-modal-upload-label.drag-over{border-color:var(--color-brand-purple-dark);background:var(--color-brand-primary-alpha-05);border-style:solid}.cpp-modal-file-input{display:none}.cpp-modal-upload-placeholder{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--color-text-tertiary)}.cpp-modal-upload-placeholder svg{color:var(--color-text-tertiary)}.cpp-modal-file-selected{display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--color-brand-purple-dark)}.cpp-modal-file-selected svg{color:var(--color-brand-purple-dark)}.cpp-modal-file-size{font-size:12px;color:var(--color-text-tertiary)}.cpp-modal-note{font-size:13px;color:var(--color-text-label-muted);text-align:center;margin:0}@media(max-width:768px){.cpp-edit-page{padding:1.5rem 1rem}.cpp-edit-detail-row{grid-template-columns:1fr;gap:1rem}.cpp-edit-title{font-size:20px}.cpp-edit-files-grid{grid-template-columns:1fr}}@media(max-width:480px){.cpp-edit-page,.cpp-edit-card{padding:1rem}.cpp-edit-card-title{font-size:16px}.cpp-edit-title{font-size:18px}.cpp-edit-file-box-dropzone{flex-direction:column;gap:.25rem}}.cpp-project-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--color-border-primary);margin-top:auto}.cpp-project-back-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:14px;font-weight:500;color:var(--color-brand-purple-dark);background:var(--color-white);border:1px solid var(--color-brand-purple-dark);border-radius:8px;cursor:pointer;transition:all .2s ease}.cpp-project-back-btn:hover{background:var(--color-brand-primary-alpha-05)}.cpp-project-back-btn svg{width:16px;height:16px}.cpp-project-next-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:14px;font-weight:600;color:var(--color-white);background:var(--color-brand-purple-dark);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.cpp-project-next-btn:hover:not(:disabled){opacity:.9;box-shadow:0 4px 12px var(--color-brand-purple-dark-alpha-4d)}.cpp-project-next-btn:disabled{opacity:.5;cursor:not-allowed}.cpp-project-next-btn.loading{pointer-events:none}.cpp-loading-page{justify-content:center;align-items:center}.cpp-loading-container{display:flex;flex-direction:column;align-items:center;gap:1rem}.cpp-loading-spinner{width:36px;height:36px;border:3px solid #E5E7EB;border-top-color:#7500c0;border-radius:50%;animation:spin .8s linear infinite}.cpp-loading-text{font-size:14px;color:#6b7280;font-weight:500}.cpp-btn-spinner{width:16px;height:16px;border:2px solid var(--color-white-alpha-4d);border-top-color:var(--color-white);border-radius:50%;animation:spin .8s linear infinite}.cpp-btn-spinner--inline{border-color:#93c5fd;border-top-color:#1d4ed8;flex-shrink:0}.cpp-btn-spinner--sm{width:13px;height:13px}@keyframes spin{to{transform:rotate(360deg)}}.cpp-project-next-btn svg{width:16px;height:16px}@media(max-width:768px){.cpp-project-page{padding:1rem}.cpp-stepper{flex-wrap:wrap;gap:.5rem;padding:0}.cpp-step-line{width:40px}.cpp-step-label{font-size:10px}.cpp-step-icon{width:36px;height:36px;padding:6px}.cpp-step-icon-img{width:18px;height:18px}.cpp-form-row{grid-template-columns:1fr;gap:1rem}.cpp-project-form-card{padding:1.25rem}}@media(max-width:640px){.cpp-stepper{justify-content:flex-start;overflow-x:auto;padding-bottom:.5rem}.cpp-step-line{width:24px;min-width:24px}.cpp-project-footer{flex-direction:row;gap:1rem}.cpp-project-back-btn,.cpp-project-next-btn{flex:1;justify-content:center}.cpp-import-tabs{flex-wrap:wrap}.cpp-import-tab{padding:.375rem .75rem;font-size:13px}.cpp-upload-dropzone{min-height:120px}.cpp-import-warning{flex-wrap:wrap}.cpp-complete-detail-row{grid-template-columns:1fr;gap:1rem}.cpp-complete-icon{width:48px;height:48px}.cpp-complete-icon svg{width:24px;height:24px}}@media(max-width:480px){.cpp-breadcrumb{font-size:12px}.cpp-step-icon{width:32px;height:32px;padding:5px}.cpp-step-icon-img{width:16px;height:16px}.cpp-project-form-title{font-size:18px}.cpp-project-form-subtitle{font-size:13px}.cpp-import-tabs{gap:.375rem}.cpp-import-tab{padding:.375rem .625rem;font-size:12px}.cpp-import-tab-checkbox{width:12px;height:12px}}.cpp-p6-search-wrapper{position:relative;width:467px;max-width:100%}.cpp-p6-search-input{width:100%;box-sizing:border-box}.cpp-p6-search-spinner{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:14px;height:14px;border:2px solid var(--color-border-primary);border-top-color:var(--color-brand-primary, #6c27be);border-radius:50%;animation:cpp-spin .7s linear infinite;pointer-events:none}@keyframes cpp-spin{to{transform:translateY(-50%) rotate(360deg)}}.cpp-p6-search-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:200;margin:0;padding:4px 0;list-style:none;background:var(--color-white);border:1px solid var(--color-border-primary);border-radius:8px;box-shadow:0 4px 16px #0000001a;max-height:220px;overflow-y:auto}.cpp-p6-search-option{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:9px 14px;cursor:pointer;transition:background .12s}.cpp-p6-search-option:hover{background:var(--color-bg-muted, #f5f3ff)}.cpp-p6-search-option-name{font-size:14px;color:var(--color-text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cpp-p6-search-option-id{font-size:12px;color:var(--color-text-secondary, #6b7280);white-space:nowrap;flex-shrink:0}.cpp-bg-upload-card{border:1.5px solid #C4B5FD;border-radius:12px;background:linear-gradient(135deg,#f5f3ff,#ede9fe);padding:1.25rem 1.5rem 1rem;display:flex;flex-direction:column;gap:1rem}.cpp-bg-upload-card-header{display:flex;flex-direction:column;gap:.4rem}.cpp-bg-upload-card-title-row{display:flex;align-items:center;gap:.6rem}.cpp-bg-upload-card-icon{color:#7c3aed;flex-shrink:0;display:flex}.cpp-bg-upload-card-title{font-size:.95rem;font-weight:600;color:#4c1d95;flex:1}.cpp-bg-upload-spinner{border-color:#c4b5fd!important;border-top-color:#7c3aed!important}.cpp-bg-upload-card-subtitle{font-size:.82rem;color:#5b21b6;line-height:1.5;margin:0}.cpp-bg-upload-progress-row{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.cpp-bg-upload-file-chip-icon{color:#7c3aed;display:flex;flex-shrink:0}.cpp-bg-upload-filename{flex:1;color:#4c1d95;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cpp-bg-upload-filename em{font-style:italic;font-weight:400;color:#6d28d9}.cpp-bg-upload-time-remaining{font-size:.82rem;font-weight:600;color:#7c3aed;white-space:nowrap;flex-shrink:0}.cpp-bg-upload-progress-bar{height:6px;background:#ddd6fe;border-radius:999px;overflow:hidden}.cpp-bg-upload-progress-fill{height:100%;width:40%;background:linear-gradient(90deg,#7c3aed,#a78bfa);border-radius:999px;animation:cpp-bg-upload-slide 1.8s ease-in-out infinite}@keyframes cpp-bg-upload-slide{0%{transform:translate(-150%)}to{transform:translate(400%)}}.cpp-bg-upload-while-wait{display:flex;flex-direction:column;gap:.6rem}.cpp-bg-upload-while-wait-label{font-size:.82rem;font-weight:500;color:#5b21b6}.cpp-bg-upload-shortcuts{display:flex;gap:.6rem;flex-wrap:wrap}.cpp-bg-upload-shortcut{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #C4B5FD;border-radius:8px;padding:.55rem .85rem;cursor:pointer;text-align:left;transition:background .15s,border-color .15s;flex:1;min-width:130px}.cpp-bg-upload-shortcut:hover:not(:disabled){background:#ede9fe;border-color:#7c3aed}.cpp-bg-upload-shortcut:disabled{opacity:.5;cursor:not-allowed}.cpp-bg-upload-shortcut-icon{font-size:1.1rem;flex-shrink:0}.cpp-bg-upload-shortcut-title{font-size:.82rem;font-weight:600;color:#4c1d95}.cpp-bg-upload-shortcut-desc{font-size:.73rem;color:#6d28d9}.cpp-bg-upload-notify-note{font-size:.78rem;color:#6d28d9;margin:0;text-align:center}.cpp-bg-upload-tab-banner{display:flex;align-items:center;gap:.6rem;background:#f5f3ff;border-bottom:1px solid #E9D5FF;padding:.45rem 1.25rem;margin-bottom:1rem;font-size:.82rem}.cpp-bg-upload-tab-banner-icon{display:flex;flex-shrink:0}.cpp-bg-upload-tab-banner-text{flex:1;color:#4c1d95}.cpp-bg-upload-tab-banner-text strong{font-weight:600}.cpp-bg-upload-tab-banner-time{font-weight:600;color:#7c3aed;white-space:nowrap;flex-shrink:0}.cpp-project-upload-strip{display:flex;align-items:center;gap:.5rem;padding:.4rem 1.25rem;background:#f5f3ff;border-top:1px solid #E9D5FF;font-size:.8rem}.cpp-project-upload-strip-spinner{display:inline-block;width:13px;height:13px;border:2px solid #DDD6FE;border-top-color:#7c3aed;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.cpp-project-upload-strip-icon{font-size:.85rem;font-weight:700;flex-shrink:0}.cpp-project-upload-strip-icon--done{color:#16a34a}.cpp-project-upload-strip-icon--fail{color:#dc2626}.cpp-project-upload-strip-text{flex:1;color:#4c1d95;font-size:.8rem}.cpp-project-upload-strip-time{font-size:.78rem;font-weight:600;color:#7c3aed;white-space:nowrap;flex-shrink:0}.dcu-page{padding:1.5rem 1.5rem 2rem;max-width:100%}.dcu-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dcu-page-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.dcu-page-icon{width:40px;height:40px;border-radius:10px;background:var(--color-brand-primary-alpha-10);color:var(--color-brand-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.dcu-page-title{margin:0;font-size:32px;font-weight:600;line-height:1.3;color:var(--color-text-primary)}.dcu-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:1.25rem;align-items:start}.dcu-main{display:flex;flex-direction:column;gap:1.25rem;min-width:0}.dcu-sidebar{display:flex;flex-direction:column;gap:1rem;min-width:0}.dcu-card{background:var(--color-white);border:1px solid var(--color-border-default);border-radius:12px;box-shadow:0 1px 3px var(--color-black-alpha-06)}.dcu-muted{font-size:12px;color:var(--color-text-placeholder)}.dcu-tile{width:32px;height:32px;border-radius:8px;background:var(--color-brand-primary-alpha-10);color:var(--color-brand-primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.dcu-badge{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.dcu-badge--live{background:var(--color-success-bg-light);color:var(--color-text-success)}.dcu-badge--small{padding:1px 8px;font-size:11px}.dcu-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--color-text-success-alt)}.dcu-live-card{padding:14px 16px}.dcu-live-top,.dcu-history-top{display:flex;align-items:center;gap:10px}.dcu-live-heading{flex:1;min-width:0}.dcu-live-version{margin:0;font-size:14px;font-weight:600;color:var(--color-text-heading)}.dcu-meta{margin:12px 0 0;padding-top:10px;border-top:1px solid var(--color-border-default);display:flex;flex-direction:column;gap:6px}.dcu-meta-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-text-body-secondary)}.dcu-meta-row dd{margin:0}.dcu-history-card{padding:14px 12px 8px}.dcu-history-top{padding:0 4px 10px}.dcu-history-list{list-style:none;margin:0;padding:0}.dcu-history-list li+li{border-top:1px solid var(--color-border-default)}.dcu-history-item{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;border-radius:8px;background:transparent;text-align:left;cursor:pointer;font-family:inherit;color:var(--color-text-heading);transition:background .15s}.dcu-history-item:hover{background:var(--color-bg-muted)}.dcu-history-item:focus-visible,.dcu-btn:focus-visible,.dcu-add-btn:focus-visible,.dcu-remove-btn:focus-visible,.dcu-view-body:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px}.dcu-history-item--selected,.dcu-history-item--selected:hover{background:var(--color-bg-brand-subtle)}.dcu-history-dot{width:6px;height:6px;border-radius:50%;background:var(--color-text-tertiary);flex-shrink:0}.dcu-history-item--selected .dcu-history-dot{background:var(--color-text-success-alt)}.dcu-history-text{flex:1;display:flex;flex-direction:column;min-width:0}.dcu-history-name{font-size:13px;font-weight:600}.dcu-history-item--selected .dcu-history-name{color:var(--color-brand-purple-dark)}.dcu-history-date{font-size:11px;color:var(--color-text-placeholder)}.dcu-view-card{overflow:hidden;box-shadow:0 2px 8px var(--color-black-alpha-08)}.dcu-view-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;color:var(--color-white);background:linear-gradient(90deg,var(--color-brand-purple-hover),var(--color-brand-primary))}.dcu-view-header-left{display:flex;align-items:center;gap:12px}.dcu-view-shield{width:40px;height:40px;border-radius:10px;background:var(--color-white-alpha-4d);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.dcu-view-title{margin:0;font-size:16px;font-weight:600;line-height:1.3}.dcu-view-subtitle{font-size:12px;color:var(--color-text-on-dark-muted)}.dcu-required-pill{padding:3px 14px;border:1px solid var(--color-white-alpha-70);border-radius:999px;font-size:12px;font-weight:500}.dcu-view-body{max-height:440px;overflow-y:auto;padding:16px 20px 8px;font-size:13px;line-height:1.5;color:var(--color-text-secondary)}.dcu-intro{margin-bottom:16px;font-weight:700;color:var(--color-text-primary)}.dcu-intro p,.dcu-suffix p{margin:0 0 8px}.dcu-section-heading,.dcu-suffix h1,.dcu-suffix h2,.dcu-suffix h3{margin:0 0 12px;font-size:16px;font-weight:600;color:var(--color-brand-primary)}.dcu-bullets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.dcu-bullets li{position:relative;padding-left:14px}.dcu-bullets li:before{content:"";position:absolute;left:0;top:.45em;width:6px;height:6px;border-radius:1px;background:var(--color-brand-primary)}.dcu-suffix{margin-top:20px;padding-top:16px;border-top:1px solid var(--color-border-default)}.dcu-suffix a,.dcu-bullets a{color:var(--color-brand-primary)}.dcu-view-footer{padding:12px 20px 16px;border-top:1px solid var(--color-border-default)}.dcu-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:.5rem 1.25rem;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;border-radius:4px;border:1px solid transparent;cursor:pointer;transition:background .15s,opacity .15s,border-color .15s}.dcu-btn--block{width:100%}.dcu-btn--primary{background:var(--color-brand-purple-dark);color:var(--color-white)}.dcu-btn--primary:hover:not(:disabled){background:var(--color-brand-purple-hover)}.dcu-btn--primary:disabled{background:var(--color-border-primary);color:var(--color-text-neutral-pale);cursor:not-allowed}.dcu-btn--outline{background:var(--color-white);color:var(--color-text-secondary);border-color:var(--color-text-nav-hover)}.dcu-btn--outline:hover:not(:disabled){background:var(--color-bg-muted)}.dcu-btn--outline:disabled{opacity:.6;cursor:not-allowed}.dcu-btn--danger{background:var(--color-text-accent-coral);color:var(--color-white)}.dcu-btn--danger:hover{opacity:.9}.dcu-editor-header{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--color-border-default)}.dcu-editor-title{margin:0;font-size:14px;font-weight:600;color:var(--color-text-heading)}.dcu-editor-subtitle{margin:2px 0 0;font-size:11px;color:var(--color-text-placeholder)}.dcu-editor-body{padding:16px 20px 20px}.dcu-fieldset{border:none;margin:0 0 20px;padding:0}.dcu-label{display:block;padding:0;font-size:12px;font-weight:500;color:var(--color-text-form-label)}.dcu-required{color:var(--color-text-accent-red)}.dcu-hint{font-size:11px;color:var(--color-text-placeholder)}.dcu-radio-row{display:flex;gap:18px;margin-top:8px}.dcu-radio{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-heading);cursor:pointer}.dcu-radio input{accent-color:var(--color-brand-primary);margin:0;width:16px;height:16px}.dcu-template-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.dcu-template{border:1px solid var(--color-border-default);border-radius:8px;padding:14px 16px 12px}.dcu-template-heading{display:flex;align-items:center;gap:8px;margin-bottom:12px}.dcu-template-bar{width:3px;height:14px;border-radius:2px;background:var(--color-brand-primary)}.dcu-template-heading-text{font-size:13px;font-weight:500;color:var(--color-brand-primary)}.dcu-editor-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.dcu-editor-row{display:flex;align-items:flex-start;gap:10px}.dcu-editor-marker{width:6px;height:6px;margin-top:14px;border-radius:1px;background:var(--color-brand-primary);flex-shrink:0}.dcu-bullet-input{flex:1;min-width:0;box-sizing:border-box;resize:none;overflow:hidden;padding:8px 12px;font-family:inherit;font-size:12px;line-height:1.5;color:var(--color-text-secondary);background:var(--color-bg-violet-faint);border:1px solid var(--color-border-default);border-radius:6px}.dcu-bullet-input:focus{outline:none;border-color:var(--color-brand-primary);background:var(--color-white);box-shadow:0 0 0 2px var(--color-brand-primary-alpha-10)}.dcu-bullet-input--invalid{border-color:var(--color-error-coral)}.dcu-bullet-input:disabled{opacity:.7;cursor:not-allowed}.dcu-remove-btn{width:24px;height:24px;margin-top:6px;border:none;border-radius:50%;background:transparent;color:var(--color-text-tertiary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s,color .15s}.dcu-remove-btn:hover:not(:disabled){background:var(--color-bg-error-soft);color:var(--color-text-accent-red)}.dcu-add-btn{display:inline-flex;align-items:center;gap:6px;margin:14px 0 4px;padding:4px 2px;border:none;background:transparent;font-family:inherit;font-size:12px;font-weight:500;color:var(--color-brand-primary);cursor:pointer}.dcu-add-btn:hover:not(:disabled){text-decoration:underline}.dcu-add-btn:disabled{opacity:.6;cursor:not-allowed}.dcu-validation{margin:6px 0 0;font-size:12px;color:var(--color-text-accent-red)}.dcu-editor-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;padding-top:16px;border-top:1px solid var(--color-border-default)}.dcu-alert{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:8px;font-size:13px}.dcu-alert--success{background:var(--color-success-bg-light);border:1px solid var(--color-text-success-alt);color:var(--color-text-success)}.dcu-alert--error{margin-top:16px;background:var(--color-error-bg, #fff5f5);border:1px solid var(--color-error-border, #fca5a5);color:var(--color-error-text, #b91c1c)}.dcu-alert-close{border:none;background:transparent;color:inherit;font-size:18px;line-height:1;cursor:pointer}.dcu-state{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px 20px;color:var(--color-text-secondary);background:var(--color-white);border:1px solid var(--color-border-default);border-radius:12px}.dcu-state--error{color:var(--color-error-text, #b91c1c)}.dcu-spinner{width:20px;height:20px;border:2px solid var(--color-border-default);border-top-color:var(--color-brand-primary);border-radius:50%;animation:dcu-spin 1s linear infinite}@keyframes dcu-spin{to{transform:rotate(360deg)}}.dcu-modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:var(--color-black-alpha-45)}.dcu-modal{width:100%;max-width:340px;background:var(--color-white);border-radius:12px;box-shadow:0 20px 40px var(--color-black-alpha-15),0 4px 12px var(--color-black-alpha-08)}.dcu-modal-header{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--color-border-default)}.dcu-modal-icon{width:36px;height:36px;border-radius:8px;background:var(--color-error-alt-alpha-10);color:var(--color-text-accent-red);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.dcu-modal-title{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary)}.dcu-modal-message{margin:0;padding:14px 20px;font-size:13px;line-height:1.5;color:var(--color-text-body-secondary)}.dcu-modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:4px 20px 20px}@media(max-width:1024px){.dcu-layout{grid-template-columns:1fr}}.release-md{overflow-wrap:anywhere}.release-md p{margin:0 0 .4rem}.release-md>:last-child{margin-bottom:0}.release-md ul,.release-md ol{margin:0 0 .4rem;padding-left:1.1rem}.release-md code{padding:0 4px;border-radius:3px;background:var(--color-bg-elevated);font-size:11px}.release-md a{color:var(--color-brand-primary)}.rnu-view-card{overflow:hidden}.rnu-view-header,.rnu-editor-header{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--color-border-default)}.rnu-view-heading{flex:1;min-width:0}.rnu-edit-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;flex-shrink:0;font-family:inherit;font-size:12px;font-weight:600;color:var(--color-brand-purple-dark);background:var(--color-white);border:1px solid var(--color-brand-purple-dark);border-radius:4px;cursor:pointer;transition:background .15s}.rnu-edit-btn:hover{background:var(--color-bg-brand-subtle)}.rnu-edit-btn:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px}.rnu-view-summary{margin:2px 0 0;font-size:11px;color:var(--color-text-body-secondary);overflow-wrap:anywhere}.rnu-items{list-style:none;margin:0;padding:0 20px 4px}.rnu-item{display:flex;gap:14px;padding:12px 0}.rnu-item+.rnu-item{border-top:1px solid var(--color-border-default)}.rnu-item-number{width:12px;padding-top:2px;flex-shrink:0;font-size:11px;color:var(--color-text-placeholder)}.rnu-item-body{min-width:0}.rnu-item-title{margin:0 0 2px;font-size:13px;font-weight:600;color:var(--color-text-heading)}.rnu-item-description{margin:0;font-size:12px;line-height:1.5;color:var(--color-text-body-secondary);overflow-wrap:anywhere}.rnu-empty{margin:0;padding:24px 20px;font-size:13px;color:var(--color-text-placeholder)}.rnu-change-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.rnu-change-row{display:flex;align-items:flex-start;gap:10px}.rnu-change-number{width:22px;height:22px;margin-top:6px;border-radius:50%;background:var(--color-brand-primary-alpha-10);color:var(--color-brand-primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;font-weight:600}.rnu-change-fields{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.rnu-title-input{width:100%;box-sizing:border-box;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.5;color:var(--color-text-heading);background:var(--color-bg-violet-faint);border:1px solid var(--color-border-default);border-radius:6px}.rnu-title-input::placeholder,.rnu-change-fields .dcu-bullet-input::placeholder{font-weight:400;color:var(--color-text-placeholder)}.rnu-title-input:focus{outline:none;border-color:var(--color-brand-primary);background:var(--color-white);box-shadow:0 0 0 2px var(--color-brand-primary-alpha-10)}.rnu-title-input.dcu-bullet-input--invalid{border-color:var(--color-error-coral)}.rnu-title-input:disabled{opacity:.7;cursor:not-allowed}.rnu-validation{margin:6px 0 0}.rnu-release-title-field{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.rnu-release-title-field .dcu-label{margin:0}.rnu-header-action{margin-left:auto;flex-shrink:0}.rnu-editor-heading{flex:1;min-width:0}.rnu-new-version-pill{padding:2px 10px;border-radius:999px;background:var(--color-brand-primary-alpha-10);color:var(--color-brand-purple-dark);font-size:11px;font-weight:600;white-space:nowrap}.rnu-label-hint{font-size:11px;font-weight:400;color:var(--color-text-placeholder)}.rnu-summary-input{font-weight:400;background:var(--color-white);border-color:var(--color-brand-primary)}.rnu-template{background:var(--color-bg-violet-faint)}.rnu-template .dcu-template-heading-text{font-weight:600}.rnu-editor-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px 20px 20px;border-top:1px solid var(--color-border-default)}.request-access-page{min-height:100vh;width:100%;background:var(--gradient-request-access-page);display:flex;flex-direction:column;align-items:center;padding-top:60px;box-sizing:border-box}.ra-topbar{width:100%;height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;background:var(--gradient-header-horizontal);border-bottom:1px solid var(--color-border-default);box-sizing:border-box;flex-shrink:0;position:fixed;top:0;left:0;right:0;z-index:1000}.ra-topbar-left{display:flex;align-items:center;gap:.625rem}.ra-topbar-logo-img{width:40px;height:40px}.ra-topbar-text{display:flex;flex-direction:column}.ra-topbar-title{font-size:14px;font-weight:400;color:var(--color-text-primary);line-height:1.2}.ra-topbar-subtitle{font-size:12px;color:var(--color-text-muted);line-height:1.2}.ra-topbar-right{display:flex;align-items:center;gap:.75rem}.ra-topbar-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:10px;border-radius:4px;cursor:pointer;transition:background .2s}.ra-topbar-icon:hover{background:var(--color-bg-subtle)}.ra-topbar-icon img{width:16px;height:16px}.ra-topbar-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-border-default);display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;color:var(--color-text-icon)}.request-access-card{background:var(--color-white);border-radius:20px;box-shadow:0 4px 40px var(--color-brand-primary-alpha-08),0 1px 3px var(--color-black-alpha-06);width:100%;max-width:683px;padding:24px;margin:4% 0%;box-sizing:border-box;animation:raFadeInUp .5s ease-out}@keyframes raFadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes raScaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.ra-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.ra-header-icon{width:44px;height:44px;border-radius:12px;background:var(--gradient-request-access-icon);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ra-header-icon svg{width:22px;height:22px;color:var(--color-white)}.ra-header-text h1{font-weight:600;font-size:28px;color:var(--color-text-primary);margin:0 0 4px;line-height:1.3}.ra-header-text p{font-weight:400;font-size:14px;color:var(--color-text-dark-alt);margin:0;line-height:1.4}.ra-info-banner{display:flex;align-items:flex-start;gap:.75rem;background:var(--color-brand-primary-alpha-05);border:1px solid var(--color-brand-primary-alpha-20);border-radius:12px;padding:.875rem 1rem;margin-bottom:2rem}.ra-info-banner svg{width:18px;height:18px;color:var(--color-brand-primary);flex-shrink:0;margin-top:1px}.ra-info-banner p{font-weight:400;font-size:14px;color:var(--color-text-primary);margin:0;line-height:1.5}.ra-section{margin-bottom:1.75rem}.ra-section-title{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.ra-section-title svg{width:18px;height:18px;color:var(--color-brand-primary)}.ra-section-title span{font-weight:600;font-size:16px;color:var(--color-text-primary)}.ra-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.ra-form-row.full-width{grid-template-columns:1fr}.ra-form-group{display:flex;flex-direction:column;gap:6px}.ra-form-group label{font-weight:400;font-size:14px;color:var(--color-text-dark);line-height:1.4}.ra-form-group label .ra-required{color:red;margin-left:2px}.ra-form-group input,.ra-form-group textarea,.ra-form-group select{width:100%;padding:.625rem .875rem;font-weight:400;font-size:14px;line-height:1.5;border:1px solid var(--color-border-dotted);border-radius:8px;background:var(--color-white);color:var(--color-text-form-label);outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.ra-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 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.ra-form-group select.ra-select-placeholder{color:#9ca3af!important}.ra-form-group select,.ra-form-group select option{color:var(--color-text-form-label)}.ra-form-group select option[value=""]{color:#9ca3af}.ra-form-group input::placeholder,.ra-form-group textarea::placeholder{color:var(--color-text-tertiary)}.ra-form-group input:hover,.ra-form-group textarea:hover,.ra-form-group select:hover{border-color:var(--color-brand-primary)}.ra-form-group input:focus,.ra-form-group textarea:focus,.ra-form-group select:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-brand-alpha-10)}.ra-form-group input.ra-input-error,.ra-form-group textarea.ra-input-error,.ra-form-group select.ra-input-error{border-color:var(--color-badge)}.ra-form-group .ra-error-text{font-size:11px;color:var(--color-badge);margin:0}.ra-form-group textarea{resize:vertical;min-height:100px}.ra-textarea-counter{font-size:11px;color:var(--color-text-tertiary);text-align:right;margin-top:-2px}.ra-date-input-wrapper{position:relative}.ra-date-input-wrapper input[type=text]{padding-right:2.5rem}.ra-date-hidden{position:absolute;opacity:0;width:0;height:0;overflow:hidden;pointer-events:none}.ra-date-icon{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--color-text-tertiary);cursor:pointer;transition:color .2s}.ra-date-icon:hover{color:var(--color-brand-primary)}.ra-button-row{display:flex;gap:1rem;margin-top:.5rem}.ra-btn-cancel{flex:1;padding:.75rem 1.25rem;font-weight:600;font-size:14px;color:var(--color-text-nav-hover);background:var(--color-white);border:1.5px solid var(--color-border-dotted);border-radius:6px;cursor:pointer;transition:all .2s ease}.ra-btn-cancel:hover{background:var(--color-bg-muted);border-color:var(--color-text-tertiary)}.ra-btn-submit{flex:1;padding:.75rem 1.25rem;font-weight:600;font-size:14px;color:var(--color-white);background:var(--color-brand-purple-dark);border:none;border-radius:6px;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.ra-btn-submit:hover:not(:disabled){background:var(--gradient-request-access-btn-hover);transform:translateY(-1px);box-shadow:0 4px 16px var(--color-brand-alpha-30)}.ra-btn-submit:disabled{opacity:.6;cursor:not-allowed}.ra-btn-submit svg{width:16px;height:16px}.ra-success-card{background:var(--color-white);border-radius:20px;box-shadow:0 4px 40px var(--color-brand-primary-alpha-08),0 1px 3px var(--color-black-alpha-06);width:100%;max-width:560px;padding:2.5rem 2rem;margin:4% 0%;box-sizing:border-box;text-align:center;animation:raFadeInUp .5s ease-out}.ra-success-icon{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;animation:raScaleIn .4s ease-out .2s both}.ra-success-card h2{font-weight:600;font-size:28px;color:var(--color-text-primary);margin:0 0 .5rem}.ra-success-card>p{font-weight:400;font-size:14px;color:var(--color-text-primary);margin:0 0 1.5rem;line-height:1.5}.ra-request-id-badge{background:var(--color-bg-neutral-wash-50);border:1px solid var(--color-border-primary);border-radius:12px;padding:.75rem 1.5rem;display:inline-block;margin-bottom:1.5rem}.ra-request-id-badge span{display:block;font-size:12px;color:var(--color-text-icon);margin-bottom:4px}.ra-request-id-badge strong{font-weight:700;font-size:15px;color:var(--color-brand-primary);letter-spacing:.5px}.ra-info-tiles{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.75rem}.ra-info-tile{background:var(--color-brand-primary-alpha-05);border:1px solid var(--color-brand-primary-alpha-20);border-radius:12px;padding:1rem;display:flex;align-items:flex-start;gap:.75rem;text-align:left}.ra-info-tile-text h4{font-weight:600;font-size:14px;color:var(--color-text-primary);margin:0 0 2px}.ra-info-tile-text p{font-weight:400;font-size:12px;color:var(--color-text-dark-alt);margin:0;line-height:1.4}.ra-btn-return{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 2rem;font-weight:500;font-size:16px;color:var(--color-white);background:var(--color-brand-purple-dark);border:none;border-radius:4px;cursor:pointer;transition:all .25s ease}.ra-btn-return:hover{background:var(--gradient-request-access-btn-hover);transform:translateY(-1px);box-shadow:0 4px 16px var(--color-brand-alpha-30)}.ra-submit-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:16px}.ra-submit-error svg{flex-shrink:0}.ra-rate-limit-error{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff5f5;border:1px solid #b91c1c;border-radius:8px;margin-bottom:16px}.ra-rate-limit-error-icon{flex-shrink:0;color:#b91c1c;margin-top:1px}.ra-rate-limit-error-content{display:flex;flex-direction:column;gap:4px}.ra-rate-limit-error-title{margin:0;font-weight:600;font-size:14px;line-height:1.4;color:var(--color-text-primary, #1d1823)}.ra-rate-limit-error-message{margin:0;font-weight:400;font-size:14px;line-height:1.5;color:var(--color-text-primary, #1d1823)}.ra-rate-limit-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;margin-bottom:16px}.ra-rate-limit-banner-icon{flex-shrink:0;color:#b91c1c;margin-top:2px}.ra-rate-limit-banner-body{display:flex;flex-direction:column;gap:2px}.ra-rate-limit-banner-body strong{font-size:14px;font-weight:600;color:var(--color-text-dim, #374151);line-height:1.4}.ra-rate-limit-banner-body span{font-size:12px;font-weight:400;color:var(--color-text-label-muted, #6b7280);line-height:1.5}.ra-btn-submit:disabled,.ra-btn-cancel:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.request-access-card{padding:1.5rem;border-radius:16px}.ra-form-row{grid-template-columns:1fr}.ra-button-row{flex-direction:column}.ra-success-card{padding:1.5rem}.ra-info-tiles{grid-template-columns:1fr}.ra-header-text h1{font-size:19px}}@media(prefers-reduced-motion:reduce){.request-access-card,.ra-success-card,.ra-success-icon{animation:none!important}}.st-page{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:var(--color-bg-app);box-sizing:border-box}.st-header{display:flex;align-items:center;height:60px;padding:0 1.25rem;background:var(--gradient-header-horizontal, #fff);border-bottom:1px solid var(--color-border-default, #e5e7eb);flex-shrink:0;position:sticky;top:0;z-index:100;width:100%;box-sizing:border-box}.st-logo{display:flex;align-items:center;gap:.625rem}.st-logo-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.st-logo-img{width:40px;height:40px;object-fit:contain}.st-logo-text{display:flex;flex-direction:column}.st-logo-title{font-size:14px;font-weight:400;color:var(--color-text-primary, #111827);line-height:1.2}.st-logo-subtitle{font-size:12px;color:var(--color-text-muted, #6b7280);line-height:1.2}.st-main{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.st-card{background:var(--color-white, #fff);border-radius:16px;box-shadow:0 4px 24px #00000014,0 1px 4px #0000000a;padding:2.5rem 2.25rem 2.25rem;width:100%;max-width:446px;position:relative;overflow:hidden;box-sizing:border-box;border-top:4px solid var(--color-brand-purple-dark)}.st-badge{display:inline-flex;align-items:center;gap:.4rem;background:var(--color-brand-primary-alpha-10);color:var(--color-brand-purple-dark);font-size:16px;font-weight:500;padding:.4rem .875rem;border-radius:999px;margin-bottom:1.5rem;border:1px solid var(--color-brand-primary-alpha-44)}.st-badge svg{flex-shrink:0;color:inherit}.st-title{font-size:32px;font-weight:700;line-height:1.15;letter-spacing:-.02em;color:var(--color-text-primary);margin:0 0 1rem}.st-description{font-size:16px;font-weight:400;line-height:1.6;color:var(--color-text-dark);margin:0 0 2rem;max-width:360px}.st-login-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.8rem 1.25rem;font-size:16px;font-weight:500;color:var(--color-brand-purple-dark);background:transparent;border:1.5px solid var(--color-brand-purple-dark);border-radius:8px;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease;font-family:inherit}.st-login-btn:hover:not(:disabled){background:var(--color-bg-brand-subtle, #ede9fe);color:var(--color-brand-purple-dark, #5b21b6);border-color:var(--color-brand-purple-dark, #5b21b6);transform:translateY(-1px);box-shadow:0 4px 14px #7c3aed2e}.st-login-btn:active:not(:disabled){transform:translateY(0);box-shadow:none}.st-login-btn:disabled{opacity:.7;cursor:not-allowed}.st-login-btn svg{flex-shrink:0;transition:transform .2s ease}.st-login-btn:hover:not(:disabled) svg{transform:translate(3px)}@media(max-width:540px){.st-card{padding:2rem 1.5rem 1.75rem;border-radius:12px}.st-title{font-size:26px}}@media(prefers-reduced-motion:reduce){.st-login-btn,.st-login-btn svg{transition:none}.st-login-btn:hover{transform:none;box-shadow:none}}.fm-page{padding:1.5rem 1.5rem 2rem;max-width:100%;overflow-x:auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fm-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1.5rem}.fm-header-icon{flex-shrink:0;width:48px;height:48px;border-radius:12px;background:var(--color-brand-core-100);color:var(--color-brand-primary);display:flex;align-items:center;justify-content:center;margin:8px 0}.fm-header-text h1{font-size:32px;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem;line-height:1.3}.fm-header-text p{font-size:16px;color:var(--color-text-dark-alt);margin:0}.fm-summary-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.fm-card{display:flex;flex-direction:column;justify-content:flex-start;padding:12px;border-radius:10px;min-height:80px;box-shadow:0 2px 6px var(--color-black-alpha-06),0 1px 2px var(--color-black-alpha-04)}.fm-card-label{font-weight:400;font-size:14px;line-height:1.4;margin-bottom:.5rem;color:var(--color-text-icon)}.fm-card-value{font-weight:600;font-size:28px;line-height:1.2;letter-spacing:-.5px}.fm-card-total{background:var(--color-white);border:1px solid var(--color-border-primary)}.fm-card-total .fm-card-label,.fm-card-total .fm-card-value{color:var(--color-text-nav-hover)}.fm-card-received{background:var(--color-orange-alpha-05);border:1px solid var(--color-border-access-pending)}.fm-card-received .fm-card-label,.fm-card-received .fm-card-value{color:var(--color-text-accent-orange)}.fm-card-in-progress{background:var(--color-brand-primary-alpha-05);border:1px solid var(--color-brand-lavender)}.fm-card-in-progress .fm-card-label,.fm-card-in-progress .fm-card-value{color:var(--color-brand-primary)}.fm-card-closed{background:var(--color-teal-alpha-05);border:1px solid var(--color-border-success)}.fm-card-closed .fm-card-label,.fm-card-closed .fm-card-value{color:var(--color-text-success-alt)}@media(max-width:1200px){.fm-summary-cards{grid-template-columns:repeat(4,1fr)}}@media(max-width:768px){.fm-summary-cards{grid-template-columns:1fr}.fm-card{padding:1rem 1.25rem;min-height:88px}}.fm-table-section-title{font-size:16px;font-weight:600;color:var(--color-text-dark);margin:0 0 .75rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border-neutral-light)}.fm-dashboard-active-filters{margin-bottom:1rem}.fm-search-filter-row{display:flex;align-items:center;gap:1.25rem;margin-bottom:1.25rem;justify-content:space-between}.fm-search-bar{display:flex;align-items:center;width:320px;flex:0 0 320px;height:44px;padding:0 .75rem 0 1rem;background:var(--color-white);border:1px solid var(--color-border-neutral-light);border-radius:8px}.fm-search-icon{flex-shrink:0;color:var(--color-text-tertiary);margin-right:.5rem;display:flex;align-items:center;justify-content:center}.fm-search-input{flex:1;min-width:0;border:none;outline:none;font-size:.875rem;color:var(--color-text-heading);background:transparent}.fm-search-input::placeholder{color:var(--color-text-dark)}.fm-table-wrap{width:100%;background:var(--color-white);border:1px solid var(--color-border-neutral-light);border-radius:10px;overflow:auto;box-shadow:0 2px 6px var(--color-black-alpha-06),0 1px 2px var(--color-black-alpha-04)}.fm-table-inner{display:flex;flex-direction:column;min-width:100%;width:max-content}.fm-table-inner .fm-table{width:100%;min-width:100%}.fm-table-inner .fm-pagination{width:100%;min-width:100%;box-sizing:border-box}.fm-table{width:100%;border-collapse:collapse;font-size:14px;table-layout:auto}.fm-table-th-sortable{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:transparent;font:inherit;font-weight:500;color:inherit;cursor:pointer;text-align:left}.fm-table-th-sortable-label{line-height:1.25}.fm-table-sort-icon{width:14;height:14px;object-fit:contain;flex-shrink:0}.fm-table th{text-align:left;padding:14px;font-size:14px;font-weight:500;color:var(--color-text-label-muted);background:var(--color-bg-neutral-soft);border:1px solid var(--color-border-neutral-light);height:48px;box-sizing:border-box}.fm-table td{padding:14px;border:1px solid var(--color-border-neutral-light);font-size:14px;font-weight:400;color:var(--color-text-dark);vertical-align:middle;min-height:52px;box-sizing:border-box}.fm-cell-id{font-family:ui-monospace,monospace;font-size:.75rem}.fm-table-id{max-width:100px;width:100px;overflow-wrap:break-word;word-wrap:break-word;font-weight:600}.fm-table-name{width:130px;font-weight:500}.fm-table-email{width:160px;overflow-wrap:break-word;word-wrap:break-word}.fm-table-date{width:100px;white-space:normal}.fm-table-preview{width:200px;white-space:normal}.fm-preview-text{display:block;color:var(--color-text-dark);word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.fm-view-more-btn{background:none;border:none;color:var(--color-brand-purple-dark);font-weight:500;cursor:pointer;font-size:14px;padding:0;transition:color .2s ease}.fm-view-more-btn:hover{color:var(--color-brand-vivid)}.fm-table-attachments{width:90px;text-align:center}.fm-attachments-btn{background:none;border:none;color:var(--color-brand-purple-dark);font-weight:500;cursor:pointer;font-size:14px;padding:.25rem .5rem;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;gap:4px}.fm-attachment-icon-badge-img{width:20px;height:20px;display:block;object-fit:contain}.fm-attachments-btn .fm-attachments-table-pin-img{width:16px;height:16px}.fm-attachments-btn:hover{background:var(--color-brand-alpha-10);color:var(--color-brand-vivid)}.fm-no-attachments{color:var(--color-text-tertiary);font-size:12px}.fm-table-ado-id{width:80px;text-align:center;font-weight:600}.fm-ado-link{color:var(--color-text-primary);font-weight:400;text-decoration:none}.fm-table-ado-status{width:110px;text-align:center}.fm-status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:4px 8px;border-radius:8px;width:135px;font-size:14px;font-weight:500;white-space:nowrap;border:none;color:var(--color-white)}.fm-status-badge:before{width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0}.fm-status-received{background:var(--color-bg-access-pending);color:var(--color-text-accent-brown);border:1px solid var(--color-border-access-pending)}.fm-status-in-progress{background:var(--color-brand-core-100);color:var(--color-brand-primary);border:1px solid var(--color-brand-primary)}.fm-status-closed{background:var(--color-success-bg-light);color:var(--color-text-accent-forest);border:1px solid var(--color-border-success)}.fm-table-ado-history{width:90px;text-align:center}.fm-history-btn{background:none;border:none;color:var(--color-brand-purple-dark);font-weight:500;cursor:pointer;font-size:14px;padding:.25rem .5rem;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;gap:.4rem}.fm-history-btn-icon{width:16px;height:16px;display:block;object-fit:contain}.fm-history-btn:hover{background:var(--color-brand-alpha-10);color:var(--color-brand-vivid)}.fm-table-action{width:100px;text-align:center}.fm-table-action-delete-only{text-align:left}.fm-action-buttons{display:flex;flex-direction:row-reverse;flex-wrap:nowrap;align-items:center;justify-content:center;gap:8px}.fm-action-buttons-delete-only{justify-content:left}.fm-closure-email-btn{background:none;border:none;color:var(--color-brand-purple-dark);font-weight:500;cursor:pointer;font-size:14px;padding:.25rem .5rem;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;gap:.35rem;white-space:nowrap}.fm-closure-email-btn:hover:not(:disabled){background:var(--color-brand-alpha-10);color:var(--color-brand-vivid)}.fm-closure-email-btn:disabled{opacity:.65;cursor:not-allowed}.fm-closure-email-toast{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem;border-radius:8px;font-size:14px}.fm-closure-email-toast-success{background:var(--color-success-bg-light);color:var(--color-text-accent-forest);border:1px solid var(--color-border-success)}.fm-closure-email-toast-error{background:var(--color-error-alt-alpha-20);color:var(--color-danger-strong);border:1px solid var(--color-danger)}.fm-closure-email-toast-close{background:none;border:none;font-size:1.25rem;line-height:1;cursor:pointer;color:inherit;padding:0 .25rem}.fm-delete-btn{background:none;border:none;color:var(--color-danger);font-weight:500;cursor:pointer;font-size:14px;padding:.25rem .5rem;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;gap:4px}.fm-delete-btn-icon{width:16px;height:16px;display:block;object-fit:contain}.fm-delete-btn:hover{background:var(--color-error-alt-alpha-20);color:var(--color-danger-strong);font-weight:600;white-space:nowrap}.fm-action-btn{padding:.5rem 1rem;background:var(--color-brand-primary);color:var(--color-white);border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.fm-action-btn:hover{background:var(--color-brand-vivid);transform:translateY(-1px);box-shadow:0 2px 8px #0000001f}.fm-action-btn:active{transform:translateY(0);box-shadow:0 1px 4px #00000014}.fm-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;width:100%;min-width:0;box-sizing:border-box;padding:.75rem 1rem;border-top:1px solid var(--color-border-neutral-light);background:var(--color-white);font-size:14px;color:var(--color-text-nav-hover)}.fm-pagination-summary{font-size:12px;color:var(--color-text-dark)}.fm-pagination-controls{display:flex;align-items:center;gap:.75rem}.fm-pagination-per-page{display:flex;align-items:center;gap:.5rem}.fm-pagination-select{padding:.35rem .5rem;border:1px solid var(--color-border-default);border-radius:6px;font-size:12px;color:var(--color-text-dark);background:var(--color-white);cursor:pointer;min-width:3rem}.fm-pagination-per-page-label{font-size:12px;color:var(--color-text-dark)}.fm-pagination-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--color-brand-purple-dark);color:var(--color-brand-purple-dark);border-radius:6px;background:var(--color-white);cursor:pointer;transition:background .2s,color .2s}.fm-pagination-btn:disabled{cursor:not-allowed;border:1px solid var(--color-brand-purple-dark);color:var(--color-brand-purple-dark)}.fm-empty-row{text-align:center;padding:40px 20px;color:var(--color-text-secondary)}.fm-loading,.fm-error,.fm-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;padding:2rem;text-align:center;color:var(--color-text-secondary)}.fm-loading p,.fm-error p,.fm-empty-state p{margin:0;font-size:16px}.fm-error{background:var(--color-bg-error-soft);color:var(--color-danger);border:1px solid var(--color-error-coral);border-radius:8px}.fm-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.fm-modal{background:var(--color-white);border-radius:12px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.fm-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--color-border-neutral-light);background:var(--color-bg-subtle)}.fm-modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--color-text-primary)}.fm-modal-close{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease}.fm-modal-close:hover{opacity:.7}.fm-modal-close-icon{width:24px;height:24px;display:block}.fm-modal-content{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.fm-modal-field{display:flex;flex-direction:column;gap:.5rem}.fm-modal-field label{font-weight:600;font-size:13px;color:var(--color-text-heading);text-transform:uppercase;letter-spacing:.5px}.fm-modal-field span{font-size:14px;color:var(--color-text-body)}.fm-modal-description{font-size:14px;color:var(--color-text-body);margin:0;line-height:1.6;white-space:pre-wrap;word-break:break-word}.fm-modal-footer{display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem;border-top:1px solid var(--color-border-neutral-light);background:var(--color-bg-subtle)}.fm-modal-close-btn{padding:.625rem 1.5rem;background:var(--color-white);border:1px solid var(--color-border-neutral-light);border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;color:var(--color-text-heading);transition:all .2s ease}.fm-modal-close-btn:hover{background:var(--color-bg-subtle);border-color:var(--color-border-default)}.fm-attachments-modal{max-width:800px}.fm-attachment-modal-header{display:flex;align-items:center;gap:1rem;padding:1.5rem;border-bottom:1px solid var(--color-border-neutral-light);background:var(--color-white)}.fm-attachment-modal-header-icon{background:#c2a3ff33;width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fm-attachment-modal-header-content{flex:1;min-width:0}.fm-attachment-modal-header-content h2{margin:0 0 .25rem;font-size:18px;font-weight:600;color:var(--color-text-primary)}.fm-attachment-modal-subtitle{margin:0;font-size:13px;color:var(--color-text-secondary)}.fm-attachment-content{padding:1.5rem!important}.fm-attachment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.fm-attachment-card{display:flex;flex-direction:column;gap:.75rem;background:var(--color-white);border-radius:8px;border:1px solid var(--color-border-neutral-light)}.fm-attachment-preview{width:100%;height:180px;background:#e6dcff;border-radius:6px;display:flex;align-items:center;justify-content:center;overflow:hidden}.fm-attachment-preview-icon{width:48px;height:48px;object-fit:contain;opacity:.6}.fm-attachment-preview-image{width:100%;height:100%;object-fit:contain}.fm-attachment-details{display:flex;flex-direction:column;gap:.25rem;padding:0 12px 8px}.fm-attachment-name{font-size:14px;font-weight:600;color:var(--color-text-primary)}.fm-attachment-description{font-size:12px;color:var(--color-text-secondary)}.fm-feedback-statement-modal{max-width:700px}.fm-feedback-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--color-border-neutral-light);background:var(--color-white);gap:1rem}.fm-feedback-modal-title-section{display:flex;align-items:flex-start;gap:1rem;flex:1}.fm-feedback-modal-icon{flex-shrink:0;width:48px;height:48px;border-radius:8px;background:var(--color-brand-core-100);display:flex;align-items:center;justify-content:center}.fm-feedback-modal-icon-img{width:32px;height:32px;object-fit:contain}.fm-feedback-modal-titles{flex:1}.fm-feedback-modal-titles h2{margin:0 0 .25rem;font-size:18px;font-weight:600;color:var(--color-text-primary)}.fm-feedback-modal-subtitle{margin:0;font-size:13px;color:var(--color-text-secondary);font-weight:400}.fm-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--color-text-secondary);transition:color .2s ease;flex-shrink:0;padding:0}.fm-modal-close:hover{color:var(--color-text-primary)}.fm-feedback-modal-content{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.fm-feedback-section{display:flex;flex-direction:column;gap:.75rem}.fm-feedback-section h3{margin:0;font-size:16px;font-weight:700;color:var(--color-text-primary);text-transform:capitalize}.fm-feedback-text{margin:0;font-size:14px;color:var(--color-text-primary);line-height:1.6;white-space:pre-wrap;word-break:break-word;border:1px solid var(--color-border-neutral-light);border-radius:8px;padding:12px;background:var(--color-text-neutral-pale)}.fm-feedback-attachments-section{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:var(--color-bg-subtle);border-radius:8px}.fm-feedback-attachments-section h3{margin:0 0 .5rem;font-size:14px;font-weight:600;color:var(--color-text-primary)}.fm-feedback-attachments-list{display:flex;flex-direction:column;gap:.5rem}.fm-feedback-attachment-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--color-white);border-radius:6px;border:1px solid var(--color-border-neutral-light)}.fm-feedback-attachment-icon{font-size:16px;flex-shrink:0}.fm-feedback-attachment-name{font-size:13px;color:var(--color-text-body);word-break:break-word}.fm-admin-response-section{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:var(--color-teal-alpha-05);border-left:4px solid var(--color-text-success-alt);border-radius:6px}.fm-admin-response-section h3{margin:0;font-size:14px;font-weight:600;color:var(--color-text-primary)}.fm-admin-response-text{margin:0;font-size:14px;color:var(--color-text-body);line-height:1.6;white-space:pre-wrap;word-break:break-word}.fm-feedback-metadata{display:flex;flex-direction:column;gap:.75rem;padding-top:1rem;border-top:1px solid var(--color-border-neutral-light)}.fm-metadata-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.fm-metadata-label{font-size:13px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.fm-metadata-value{font-size:14px;color:var(--color-text-body)}.fm-ado-ticket-modal{width:min(680px,calc(100vw - 2rem));max-width:680px;border-radius:16px;overflow:hidden auto;box-shadow:0 16px 40px #0f172a29}.fm-ado-modal-header{display:flex;align-items:center;gap:14px;padding:16px 24px;border-bottom:1px solid var(--color-border-neutral-light);background:var(--color-white)}.fm-ado-modal-header-icon{flex-shrink:0;width:36px;height:36px;border-radius:10px;background:#f3e8ff;display:flex;align-items:center;justify-content:center}.fm-ado-modal-header-icon-img{width:20px;height:20px;display:block;object-fit:contain}.fm-ado-modal-header-content{flex:1;min-width:0}.fm-ado-modal-header-content h2{margin:0 0 2px;font-size:18px;font-weight:700;color:#111827;line-height:1.2}.fm-ado-modal-header-subtitle{margin:0;font-size:13px;font-weight:400;color:#6b7280}.fm-ado-modal-header .fm-modal-close-icon{width:20px;height:20px}.fm-ado-content{display:flex;flex-direction:column;gap:22px;padding:20px 24px 24px}.fm-ado-ticket-form{display:flex;flex-direction:column;gap:14px}.fm-ado-ticket-form-note{margin:0;color:var(--color-text-muted);font-size:14px}.fm-ado-field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--color-text-secondary)}.fm-ado-field select{padding:8px 10px;border:1px solid var(--color-border-default);border-radius:6px;background:var(--color-white);color:var(--color-text-dark);font-size:14px;font-weight:400}.fm-ado-ticket-create{align-self:flex-start;margin-top:4px;padding:8px 16px;border:none;border-radius:6px;background:var(--color-brand-primary);color:var(--color-white);font-size:14px;font-weight:600;cursor:pointer}.fm-ado-ticket-create:disabled{opacity:.55;cursor:not-allowed}.fm-ado-ticket-create:not(:disabled):hover{filter:brightness(.95)}.fm-ado-header-section{box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;padding:20px;width:622px;height:124.58px;background:#e5faf1;border:1px solid #34d399;border-radius:10px;flex:none;order:0;align-self:stretch;flex-grow:0}.fm-ado-header-section.fm-ado-status-closed,.fm-ado-header-section.fm-ado-status-resolved{background:#ecfdf5;border-color:#6ee7b7}.fm-ado-header-section.fm-ado-status-received{background:var(--color-bg-access-pending);border-color:var(--color-border-access-pending)}.fm-ado-header-section.fm-ado-status-in-progress{background:var(--color-brand-core-100);border-color:var(--color-brand-primary)}.fm-ado-status-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;margin-bottom:12px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;color:var(--color-white);background:#05f0a5}.fm-ado-status-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-border-default);flex-shrink:0}.fm-ado-status-pill-closed,.fm-ado-status-pill-resolved{background:#22c55e;color:#fff}.fm-ado-status-pill-closed:before,.fm-ado-status-pill-resolved:before{background:#14532d}.fm-ado-status-pill-received{background:var(--color-border-access-pending)}.fm-ado-status-pill-in-progress{background:var(--color-brand-primary)}.fm-ado-header-content{display:flex;flex-direction:column;gap:4px}.fm-ado-ticket-id{font-size:15px;font-weight:700;color:var(--color-text-dark);line-height:1.3}.fm-ado-ticket-title{font-size:16px;font-weight:700;color:var(--color-text-dark);line-height:1.35}.fm-ado-details-section{padding:0}.fm-ado-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 28px}.fm-ado-detail-item{display:flex;flex-direction:column;gap:4px}.fm-ado-detail-label{font-size:10px;font-weight:400;color:var(--color-border-neutral-mid-gray)}.fm-ado-detail-value{font-size:14px;font-weight:700;color:var(--color-text-dark-alt);line-height:1.35;overflow-wrap:anywhere}.fm-ado-activity-section h3{margin:0 0 14px;font-size:12px;font-weight:400;color:var(--color-border-neutral-mid-gray)}.fm-ado-activity-list{display:flex;flex-direction:column;gap:14px}.fm-ado-activity-item{display:flex;gap:10px;align-items:flex-start}.fm-ado-activity-bullet{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:#2563eb;margin-top:6px}.fm-ado-activity-content{flex:1;min-width:0}.fm-ado-activity-title{font-size:12px;font-weight:400;color:var(--color-text-icon);line-height:1.45;word-break:break-word}.fm-ado-activity-title-strong{font-weight:700}.fm-ado-activity-description{font-weight:400}.fm-ado-activity-timestamp{margin-top:2px;font-size:12px;color:var(--color-border-neutral-mid-gray);line-height:1.4}@media(max-width:768px){.fm-ado-details-grid{grid-template-columns:1fr 1fr}}.fm-delete-modal{background:var(--color-white);border-radius:12px;width:440px;max-width:calc(100vw - 2rem);box-shadow:0 10px 40px #0003;overflow:hidden}.fm-delete-modal-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--color-border-neutral-light)}.fm-delete-modal-icon{flex-shrink:0;width:40px;height:40px;border-radius:8px;background:var(--color-danger-bg);color:#ff4d5c;display:flex;align-items:center;justify-content:center}.fm-delete-modal-header h2{margin:0;flex:1;font-size:18px;font-weight:700;color:var(--color-text-primary)}.fm-delete-modal-close{margin-left:auto}.fm-delete-modal-close .fm-modal-close-icon{width:20px;height:20px}.fm-delete-modal-message{margin:0;padding:20px;font-size:14px;line-height:1.5;color:var(--color-text-muted)}.fm-delete-modal-error{margin:0 20px 12px;font-size:14px;line-height:1.4;color:var(--color-danger)}.fm-delete-modal-actions{display:flex;gap:12px;padding:0 20px 20px}.fm-delete-modal-cancel,.fm-delete-modal-confirm{flex:1;height:42px;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer}.fm-delete-modal-cancel{background:var(--color-white);color:var(--color-text-primary);border:1px solid var(--color-border-default)}.fm-delete-modal-cancel:hover{background:var(--color-bg-subtle)}.fm-delete-modal-confirm{background:#ff4d5c;color:var(--color-white);border:none}.fm-delete-modal-confirm:hover{background:#e84352}.rn-page{display:flex;flex:1;min-height:calc(100vh - 60px - var(--maintenance-banner-height, 0px));background:var(--color-bg-subtle)}.rn-sidebar{flex:0 0 180px;box-sizing:border-box;padding:1rem .75rem;background:var(--color-white);border-right:1px solid var(--color-border-default)}.rn-sidebar-heading{margin:0 0 .5rem .25rem;font-size:12px;font-weight:400;color:var(--color-text-muted)}.rn-sidebar-divider{height:1px;margin:1rem 0;background:var(--color-border-default)}.rn-nav-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem;border:none;border-radius:6px;background:transparent;color:var(--color-text-primary);font:inherit;font-size:13px;text-align:left;cursor:pointer;transition:background .15s,color .15s}.rn-nav-item:hover{background:var(--color-bg-muted)}.rn-nav-item--active,.rn-nav-item--active:hover{background:var(--color-bg-brand-subtle);color:var(--color-brand-primary);font-weight:500}.rn-nav-item:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:1px}.rn-nav-label{flex:1;min-width:0}.rn-badge{min-width:20px;padding:1px 6px;box-sizing:border-box;border-radius:10px;background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:11px;font-weight:600;line-height:16px;text-align:center}.rn-badge--unread{background:var(--color-danger);color:var(--color-white)}.rn-main{flex:1;min-width:0}.rn-main-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1.25rem;background:var(--color-white);border-bottom:1px solid var(--color-border-default)}.rn-main-title{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.rn-group-label{margin:0;padding:.5rem 1.25rem;background:var(--color-bg-subtle);color:var(--color-text-muted);font-size:12px;font-weight:400}.rn-list{margin:0;padding:0;list-style:none}.rn-state{margin:0;padding:2rem 1.25rem;background:var(--color-white);color:var(--color-text-muted);font-size:13px;text-align:center}.rn-error{margin:1rem 1.25rem}.rn-action-error{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 1.25rem;background:var(--color-danger-bg);color:var(--color-danger-strong);font-size:13px}.rn-action-error button{border:none;background:transparent;color:inherit;font-size:18px;line-height:1;cursor:pointer}.rn-item{background:var(--color-white);border-bottom:1px solid var(--color-border-default)}.rn-item-row{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem .75rem .5rem;cursor:pointer;transition:background .15s}.rn-item-row:hover,.rn-item-row:focus-within{background:var(--color-bg-brand-subtle)}.rn-unread-slot{flex:0 0 10px;display:flex;justify-content:center;padding-top:.5rem}.rn-unread-dot{width:6px;height:6px;border-radius:50%;background:var(--color-danger)}.rn-item-icon{flex:0 0 28px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:var(--color-bg-brand-subtle);color:var(--color-brand-primary)}.rn-item-text{flex:1;min-width:0}.rn-item-title{margin:0;font-size:13px;font-weight:600;line-height:1.4;color:var(--color-text-primary)}.rn-item-bullets{margin:4px 0 0;padding-left:1.1rem;list-style:disc;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.rn-item-meta{display:flex;align-items:center;gap:.5rem;margin-top:6px}.rn-item-time{font-size:11px;color:var(--color-text-muted)}.rn-tag{display:inline-flex;align-items:center;gap:4px;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:600;line-height:14px}.rn-tag--release{background:var(--color-bg-brand-tint);color:var(--color-brand-primary)}.rn-chevron{flex:0 0 20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer}.rn-chevron:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:1px}.rn-changes{padding:.5rem 1.25rem .75rem;background:var(--color-bg-muted)}.rn-changes-heading{margin:0 0 .25rem;font-size:12px;font-weight:400;color:var(--color-text-muted)}.rn-changes-list{margin:0;padding:0;list-style:none}.rn-change{display:flex;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--color-border-default)}.rn-change:last-child{border-bottom:none}.rn-change-number{flex:0 0 14px;font-size:11px;color:var(--color-text-muted);padding-top:2px}.rn-change-body{flex:1;min-width:0}.rn-change-title{margin:0;font-size:13px;font-weight:600;color:var(--color-text-primary)}.rn-change-description{margin:2px 0 6px;font-size:12px;line-height:1.45;color:var(--color-text-secondary);overflow-wrap:anywhere}.rn-changes-empty{margin:.5rem 0;font-size:12px;color:var(--color-text-muted)}
