:root{--color-purple-50: #faf5ff;--color-purple-100: #f3e8ff;--color-purple-200: #e9d5ff;--color-purple-300: #d8b4fe;--color-purple-400: #c084fc;--color-purple-500: #a855f7;--color-purple-600: #8B5CF6;--color-purple-700: #7c3aed;--color-purple-800: #6d28d9;--color-purple-900: #4C1D95;--color-success: #059669;--color-success-bg: #d1fae5;--color-success-dark: #047857;--color-warning: #f59e0b;--color-warning-bg: #fef3c7;--color-warning-dark: #d97706;--color-danger: #ef4444;--color-danger-bg: #fee2e2;--color-danger-dark: #dc2626;--color-info: #3b82f6;--color-info-bg: #dbeafe;--color-info-dark: #2563eb;--regime-high-tide: linear-gradient(135deg, #059669 0%, #047857 100%);--regime-tailwind: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);--regime-neutral: linear-gradient(135deg, #64748b 0%, #475569 100%);--regime-low-tide: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--regime-high-tide-solid: #059669;--regime-tailwind-solid: #3b82f6;--regime-neutral-solid: #64748b;--regime-low-tide-solid: #f59e0b;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-text-primary: var(--color-gray-900);--color-text-secondary: var(--color-gray-700);--color-text-tertiary: var(--color-gray-600);--color-text-inverse: #ffffff;--color-text-muted: var(--color-gray-500);--color-bg-primary: #ffffff;--color-bg-secondary: var(--color-gray-50);--color-bg-tertiary: var(--color-gray-100);--color-bg-elevated: #ffffff;--color-bg-overlay: rgba(0, 0, 0, .5);--color-border-light: var(--color-gray-200);--color-border-medium: var(--color-gray-300);--color-border-dark: var(--color-gray-400);--color-border-focus: var(--color-purple-600);--focus-color: #0066cc;--focus-color-invert: #60a5fa;--focus-outline-width: 2px;--focus-outline-offset: 2px;--font-family-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", system-ui, sans-serif;--font-family-mono: "SF Mono", "Monaco", "Consolas", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--size-icon-xs: 12px;--size-icon-sm: 16px;--size-icon-md: 20px;--size-icon-lg: 24px;--size-icon-xl: 32px;--size-avatar-sm: 32px;--size-avatar-md: 40px;--size-avatar-lg: 48px;--size-button-sm: 32px;--size-button-md: 40px;--size-button-lg: 48px;--size-nav-height: 64px;--size-sidebar-width: 280px;--size-sidebar-collapsed: 64px;--size-ai-drawer-width: 420px;--size-bottom-bar-height: 40px;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1), 0 10px 10px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px rgba(0, 0, 0, .25);--shadow-inner: inset 0 2px 4px rgba(0, 0, 0, .06);--duration-instant: .1s;--duration-fast: .15s;--duration-base: .2s;--duration-slow: .3s;--duration-slower: .5s;--ease-spring: cubic-bezier(.16, 1, .3, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--z-base: 1;--z-dropdown: 100;--z-sticky: 500;--z-sidebar: 800;--z-nav: 900;--z-modal: 1000;--z-drawer: 1100;--z-toast: 2000;--z-tooltip: 3000;--breakpoint-xs: 767px;--breakpoint-sm: 768px;--breakpoint-md: 1024px;--breakpoint-lg: 1440px;--breakpoint-xl: 1920px}[data-theme=dark]{--color-text-primary: var(--color-gray-50);--color-text-secondary: var(--color-gray-400);--color-text-tertiary: var(--color-gray-500);--color-text-inverse: var(--color-gray-900);--color-text-muted: var(--color-gray-600);--color-bg-primary: var(--color-gray-900);--color-bg-secondary: var(--color-gray-800);--color-bg-tertiary: var(--color-gray-700);--color-bg-elevated: var(--color-gray-800);--color-bg-overlay: rgba(0, 0, 0, .7);--color-border-light: var(--color-gray-700);--color-border-medium: var(--color-gray-600);--color-border-dark: var(--color-gray-500);--focus-color: #60a5fa;--focus-color-invert: #0066cc;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .5), 0 2px 4px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .6), 0 4px 6px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .7), 0 10px 10px rgba(0, 0, 0, .6)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*:focus-visible{outline:var(--focus-outline-width) solid var(--focus-color);outline-offset:var(--focus-outline-offset)}button:focus-visible,[role=button]:focus-visible,[type=button]:focus-visible,[type=submit]:focus-visible,[type=reset]:focus-visible{outline:var(--focus-outline-width) solid var(--focus-color);outline-offset:var(--focus-outline-offset)}a:focus-visible{outline:var(--focus-outline-width) solid var(--focus-color);outline-offset:var(--focus-outline-offset);text-decoration:underline}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:var(--focus-outline-width) solid var(--focus-color);outline-offset:0;border-color:var(--focus-color)}[role=menuitem]:focus-visible{outline:var(--focus-outline-width) solid var(--focus-color);outline-offset:-2px;background:var(--color-gray-100)}[data-theme=dark] [role=menuitem]:focus-visible{background:var(--color-gray-700)}.card:focus-visible,.action-card:focus-visible{outline:var(--focus-outline-width) solid var(--focus-color);outline-offset:var(--focus-outline-offset);box-shadow:0 0 0 4px rgba(0,102,204,.1)}[data-theme=dark] .card:focus-visible,[data-theme=dark] .action-card:focus-visible{box-shadow:0 0 0 4px rgba(96,165,250,.2)}.sr-only,.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}body{font-family:var(--font-family-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-secondary);transition:background-color var(--duration-base) var(--ease-spring),color var(--duration-base) var(--ease-spring)}.top-nav{position:fixed;top:0;left:0;right:0;height:var(--size-nav-height);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);background:var(--color-bg-elevated);border-bottom:1px solid var(--color-border-light);z-index:var(--z-nav);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.top-nav-logo{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-purple-600);text-decoration:none;transition:transform var(--duration-fast) var(--ease-spring)}.top-nav-logo:hover{transform:translateY(-2px)}.command-palette-trigger{flex:1;max-width:600px;height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-4);margin:0 var(--space-8);background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-tertiary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-spring)}.command-palette-trigger:hover{border-color:var(--color-border-medium);box-shadow:var(--shadow-sm)}.command-palette-trigger kbd{padding:var(--space-1) var(--space-2);background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.top-nav-controls{display:flex;align-items:center;gap:var(--space-3)}.hamburger-icon{display:none;width:var(--size-button-md);height:var(--size-button-md);align-items:center;justify-content:center;background:transparent;border:none;font-size:var(--font-size-xl);color:var(--color-text-primary);cursor:pointer;border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-spring)}.hamburger-icon:hover{background:var(--color-bg-secondary)}.sidebar{position:fixed;top:var(--size-nav-height);left:0;bottom:0;width:var(--size-sidebar-width);display:flex;flex-direction:column;background:var(--color-bg-elevated);border-right:1px solid var(--color-border-light);padding:var(--space-6);z-index:var(--z-sidebar);overflow-y:auto;transition:width var(--duration-base) var(--ease-spring),transform var(--duration-base) var(--ease-spring)}.sidebar.collapsed{width:var(--size-sidebar-collapsed)}.sidebar-section{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6)}.sidebar-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--duration-fast) var(--ease-spring)}.sidebar-item:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.sidebar-item.active{background:var(--color-purple-100);color:var(--color-purple-700);font-weight:var(--font-weight-semibold)}[data-theme=dark] .sidebar-item.active{background:var(--color-purple-900);color:var(--color-purple-200)}.sidebar-item-icon{font-size:var(--font-size-lg);flex-shrink:0}.sidebar-item-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar.collapsed .sidebar-item-label,.sidebar.collapsed .sidebar-item-badge{display:none}.sidebar-item-badge{padding:var(--space-1) var(--space-2);background:var(--color-purple-600);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full)}.sidebar-divider{height:1px;background:var(--color-border-light);margin:var(--space-4) 0}.sidebar-collapse-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3);margin-top:auto;background:transparent;border:1px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--duration-fast) var(--ease-spring)}.sidebar-collapse-btn:hover{background:var(--color-bg-secondary);border-color:var(--color-border-medium)}.sidebar.collapsed #collapse-icon{transform:rotate(180deg)}.sidebar.collapsed #collapse-label{display:none}.main-canvas{margin-left:var(--size-sidebar-width);margin-top:var(--size-nav-height);padding:var(--space-8);min-height:calc(100vh - var(--size-nav-height) - var(--size-bottom-bar-height));transition:margin-left var(--duration-base) var(--ease-spring)}.sidebar.collapsed~.main-canvas{margin-left:var(--size-sidebar-collapsed)}.canvas-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-6);width:100%}.canvas-module{background:var(--color-bg-elevated);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);position:relative;transition:all var(--duration-fast) var(--ease-spring)}.canvas-module:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.span-1{grid-column:span 1}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-9{grid-column:span 9}.span-10{grid-column:span 10}.span-11{grid-column:span 11}.span-12{grid-column:span 12}.canvas-module-drag-handle{position:absolute;top:var(--space-3);right:var(--space-3);color:var(--color-text-tertiary);font-size:var(--font-size-xs);cursor:move;opacity:0;transition:opacity var(--duration-fast) var(--ease-spring)}.canvas-module:hover .canvas-module-drag-handle{opacity:1}.regime-banner{display:flex;align-items:center;justify-content:space-between;padding:var(--space-8);margin-bottom:var(--space-8);border-radius:var(--radius-xl);color:#fff;box-shadow:var(--shadow-lg)}.regime-banner.high-tide{background:var(--regime-high-tide)}.regime-banner.tailwind{background:var(--regime-tailwind)}.regime-banner.neutral{background:var(--regime-neutral)}.regime-banner.low-tide{background:var(--regime-low-tide)}.regime-banner-icon{font-size:var(--font-size-5xl);margin-bottom:var(--space-4)}.regime-banner-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-2)}.regime-banner-subtitle{font-size:var(--font-size-lg);opacity:.9;max-width:600px}.confidence-bar-container{text-align:right}.confidence-bar{width:200px;height:8px;background:rgba(255,255,255,.3);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-2)}.confidence-bar-fill{height:100%;background:#fff;border-radius:var(--radius-full);transition:width var(--duration-slow) var(--ease-spring)}.confidence-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);opacity:.9}.metric-card{background:var(--color-bg-elevated);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-6);transition:all var(--duration-fast) var(--ease-spring)}.metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.metric-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.metric-card-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.metric-card-badge{padding:var(--space-1) var(--space-2);background:var(--color-success);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);border-radius:var(--radius-sm);text-transform:uppercase}.metric-card-value{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);color:var(--color-purple-600);line-height:var(--line-height-tight);margin-bottom:var(--space-3)}.metric-card-change{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-4)}.metric-card-change.positive{color:var(--color-success)}.metric-card-change.negative{color:var(--color-danger)}.metric-card-footer{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-xs);color:var(--color-text-tertiary);border-top:1px solid var(--color-border-light);padding-top:var(--space-4)}.metric-card-footer a{color:var(--color-purple-600);text-decoration:none;font-weight:var(--font-weight-semibold);transition:color var(--duration-fast) var(--ease-spring)}.metric-card-footer a:hover{color:var(--color-purple-700)}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.data-table thead{background:var(--color-bg-secondary)}.data-table th{padding:var(--space-3) var(--space-4);text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);font-size:var(--font-size-xs);border-bottom:2px solid var(--color-border-light)}.data-table td{padding:var(--space-4);border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary)}.data-table tbody tr{transition:background var(--duration-fast) var(--ease-spring)}.data-table tbody tr:hover{background:var(--color-bg-secondary)}.command-palette-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:var(--z-modal);display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;transition:opacity var(--duration-fast) var(--ease-spring)}.command-palette-modal.hidden{display:none;opacity:0}.command-palette-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--color-bg-overlay);backdrop-filter:blur(4px)}.command-palette-content{position:relative;width:100%;max-width:640px;background:var(--color-bg-elevated);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);overflow:hidden}.command-palette-input-wrapper{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border-light)}.command-palette-input-wrapper .search-icon{font-size:var(--font-size-xl)}.command-palette-input-wrapper input{flex:1;border:none;outline:none;font-size:var(--font-size-lg);color:var(--color-text-primary);background:transparent}.command-palette-results{max-height:400px;overflow-y:auto;padding:var(--space-2)}.command-palette-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-spring)}.command-palette-item:hover,.command-palette-item.selected{background:var(--color-bg-secondary)}.command-palette-item .item-icon{font-size:var(--font-size-xl)}.command-palette-item .item-title{flex:1;font-size:var(--font-size-base);color:var(--color-text-primary)}.command-palette-item .item-shortcut{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-tertiary);padding:var(--space-1) var(--space-2);background:var(--color-bg-tertiary);border-radius:var(--radius-sm)}.ai-drawer{position:fixed;top:var(--size-nav-height);right:-440px;bottom:0;width:var(--size-ai-drawer-width);background:var(--color-bg-elevated);border-left:1px solid var(--color-border-light);box-shadow:var(--shadow-xl);z-index:var(--z-drawer);display:flex;flex-direction:column;transition:right var(--duration-base) var(--ease-spring)}.ai-drawer.open{right:0}.ai-drawer-header{padding:var(--space-6);border-bottom:1px solid var(--color-border-light)}.ai-drawer-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.ai-drawer-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ai-drawer-content{flex:1;overflow-y:auto;padding:var(--space-6)}.ai-drawer-section{margin-bottom:var(--space-8)}.ai-drawer-section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-bottom:var(--space-4)}.ai-drawer-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border-light);display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.bottom-bar{position:fixed;bottom:0;left:var(--size-sidebar-width);right:0;height:var(--size-bottom-bar-height);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);background:var(--color-bg-elevated);border-top:1px solid var(--color-border-light);font-size:var(--font-size-xs);color:var(--color-text-tertiary);z-index:var(--z-sticky);transition:left var(--duration-base) var(--ease-spring)}.sidebar.collapsed~.bottom-bar{left:var(--size-sidebar-collapsed)}.bottom-bar-section{display:flex;align-items:center;gap:var(--space-4)}.bottom-bar-status{display:flex;align-items:center;gap:var(--space-2)}.status-indicator{width:8px;height:8px;border-radius:50%;background:var(--color-success)}.status-indicator.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}#hamburger-menu{position:fixed;top:0;left:0;right:0;bottom:0;z-index:var(--z-modal);transition:opacity var(--duration-fast) var(--ease-spring)}#hamburger-menu.hidden{display:none}.hamburger-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--color-bg-overlay);backdrop-filter:blur(4px)}.hamburger-panel{position:absolute;top:0;right:0;width:90%;max-width:400px;height:100%;background:var(--color-bg-elevated);box-shadow:var(--shadow-2xl);overflow-y:auto;transform:translate(100%);transition:transform var(--duration-base) var(--ease-spring)}#hamburger-menu:not(.hidden) .hamburger-panel{transform:translate(0)}.hamburger-section{padding:var(--space-6)}.hamburger-section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-bottom:var(--space-4)}.hamburger-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);background:transparent;border:none;border-radius:var(--radius-md);text-decoration:none;color:var(--color-text-primary);font-size:var(--font-size-base);cursor:pointer;transition:background var(--duration-fast) var(--ease-spring)}.hamburger-item:hover{background:var(--color-bg-secondary)}.hamburger-item-icon{font-size:var(--font-size-xl)}.hamburger-item-label{flex:1;text-align:left}.hamburger-divider{height:1px;background:var(--color-border-light)}.hamburger-footer{padding:var(--space-6);border-top:1px solid var(--color-border-light)}@media(max-width:1024px){.canvas-grid{grid-template-columns:repeat(8,1fr)}.span-9,.span-10,.span-11,.span-12{grid-column:span 8}.hamburger-icon{display:flex}.sidebar{transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.main-canvas{margin-left:0}.bottom-bar{left:0}}@media(max-width:768px){:root{--size-nav-height: 56px}.canvas-grid{grid-template-columns:1fr;gap:var(--space-4)}.span-1,.span-2,.span-3,.span-4,.span-5,.span-6,.span-7,.span-8,.span-9,.span-10,.span-11,.span-12{grid-column:span 1}.main-canvas{padding:var(--space-4);margin-left:0;margin-top:var(--size-nav-height)}.regime-banner{flex-direction:column;align-items:flex-start;gap:var(--space-6)}.confidence-bar-container{width:100%;text-align:left}.command-palette-trigger span{display:none}.top-nav{padding:0 var(--space-4);height:var(--size-nav-height)}.top-nav-logo{gap:.375rem}.logo-icon{font-size:1.25rem}.logo-text{font-size:1rem}.logo-badge{font-size:.5rem;padding:.125rem .25rem}.sidebar{top:0;width:85%;max-width:320px;padding:0;box-shadow:2px 0 10px rgba(0,0,0,.2);z-index:1001}.sidebar-item{padding:var(--space-4);min-height:52px;font-size:var(--font-size-base);gap:var(--space-3);border-bottom:none}.sidebar-item:hover{background:var(--color-bg-secondary)}.sidebar-item.active{background:var(--color-purple-100);color:var(--color-purple-700);border-left:4px solid var(--color-purple-600);padding-left:calc(var(--space-4) - 4px)}.sidebar-item-icon{font-size:22px;min-width:28px}.sidebar-item-label{flex:1;font-size:var(--font-size-base);font-weight:500}.sidebar-section-toggle{padding:var(--space-4);min-height:52px;font-size:var(--font-size-base)}.sidebar-section-icon{font-size:22px;min-width:28px}.sidebar-section-label{font-size:var(--font-size-base);font-weight:600}.sidebar-subsection .sidebar-item{padding-left:calc(var(--space-4) + 36px)}.sidebar-subsection .sidebar-item.active{padding-left:calc(var(--space-4) + 32px)}.sidebar-divider{margin:var(--space-4) 0}.sidebar-collapse-btn{display:none}.sidebar-section{margin-bottom:var(--space-2)}.search-container{padding:var(--space-4);border-bottom:1px solid var(--color-border-light);background:var(--color-bg)}.search-input{width:100%;padding:12px;font-size:16px;border:2px solid var(--color-border-light);border-radius:8px}.sidebar-header.mobile-only{display:flex!important;justify-content:flex-end;padding:var(--space-4);border-bottom:1px solid var(--color-border-light);background:var(--color-bg)}.close-menu{background:none;border:none;font-size:28px;line-height:1;cursor:pointer;padding:var(--space-2);min-width:48px;min-height:48px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);border-radius:var(--radius-md)}.close-menu:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}#hamburger-overlay,.mobile-overlay{z-index:1000}.hamburger-icon{min-width:48px;min-height:48px}body.menu-open{overflow:hidden;position:fixed;width:100%}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}.sidebar{overflow-y:auto;-webkit-overflow-scrolling:touch}.plotly,[id*=chart],[class*=chart-container],.js-plotly-plot{background:transparent!important;min-height:0!important}.plotly:empty,[id*=chart]:empty{display:none!important}.plotly>div,[id*=chart]>div{background:transparent!important}}@media(min-width:768px){.mobile-only{display:none!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--size-button-md);padding:0 var(--space-4);border:none;border-radius:var(--radius-md);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-decoration:none;cursor:pointer;transition:all var(--duration-fast) var(--ease-spring);white-space:nowrap}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:2px solid var(--color-purple-600);outline-offset:2px}.btn-primary{background:var(--color-purple-600);color:#fff}.btn-primary:hover{background:var(--color-purple-700)}.btn-secondary{background:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border-light)}.btn-secondary:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-medium)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover{background:var(--color-success-dark)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover{background:var(--color-danger-dark)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-purple-600);color:#fff;padding:var(--space-4);text-decoration:none;z-index:var(--z-toast);border-radius:var(--radius-md)}.skip-link:focus{top:var(--space-4);left:var(--space-4)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.font-semibold{font-weight:var(--font-weight-semibold)}.text-sm{font-size:var(--font-size-sm)}.text-lg{font-size:var(--font-size-lg)}@media(max-width:768px){.main-canvas,.command-center{padding:1rem!important}body{font-size:15px!important;line-height:1.6!important}h1,.welcome-title{font-size:1.75rem!important;line-height:1.3!important;margin-bottom:.75rem!important}h2{font-size:1.4rem!important;line-height:1.3!important}h3,.intel-card-title{font-size:1.125rem!important;margin-bottom:1rem!important}.hero-zone,.action-zone,.intelligence-zone,section{margin-bottom:2rem!important}.welcome-header-zone{margin-bottom:1.5rem!important}.gauge-circle{background:none!important}.gauge-background{fill:none!important;stroke:rgba(255,255,255,.2)!important;stroke-width:8!important}.gauge-progress{fill:none!important;stroke:#fff!important;stroke-width:8!important}.metric-gauge{background:transparent!important}.regime-indicator-enhanced svg{background:transparent!important}.plotly,[id*=chart],[class*=chart-container],.js-plotly-plot{background:transparent!important;min-height:0!important}.plotly:empty,[id*=chart]:empty{display:none!important}.glass-card{padding:1.25rem!important;margin-bottom:1.25rem!important;border-radius:1rem!important}.quick-actions-grid{grid-template-columns:1fr!important;gap:.875rem!important}.action-card{padding:1rem!important;text-align:left!important;flex-direction:row!important;gap:1rem!important}.action-icon{font-size:1.75rem!important;flex-shrink:0}.action-label{font-size:.9375rem!important;font-weight:600!important}.action-description{font-size:.8125rem!important;opacity:.7}.intelligence-grid,.intelligence-zone{grid-template-columns:1fr!important;gap:1.25rem!important}.intel-card{padding:1.25rem!important}.alert-item{padding:1rem!important;margin-bottom:.75rem!important}.alert-title{font-size:.9375rem!important}.alert-description{font-size:.8125rem!important}.setup-progress-widget{width:100%!important;min-width:auto!important}.setup-steps{grid-template-columns:1fr!important;gap:.5rem!important}.setup-step{padding:.625rem!important}.bottom-bar{display:none!important}.main-canvas{margin-bottom:0!important;padding-bottom:1rem!important}}:root{--breakpoint-mobile: 480px;--breakpoint-tablet: 768px;--breakpoint-desktop: 1024px;--breakpoint-wide: 1440px;--container-mobile: 100%;--container-tablet: 720px;--container-desktop: 960px;--container-wide: 1200px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 30px;--text-4xl: 36px;--touch-target-min: 44px;--touch-target-comfortable: 48px;--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 9999;--z-sidebar: 10000;--z-modal: 10001;--z-toast: 10002}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:var(--space-md);padding-right:var(--space-md)}@media(min-width:768px){.container{max-width:var(--container-tablet);padding-left:var(--space-lg);padding-right:var(--space-lg)}:root{--space-md: 20px;--space-lg: 32px}}@media(min-width:1024px){.container{max-width:var(--container-desktop)}:root{--space-lg: 40px;--space-xl: 48px}}@media(min-width:1440px){.container{max-width:var(--container-wide)}}.hide-mobile{display:none}.show-mobile{display:block}@media(min-width:768px){.hide-mobile{display:block}.show-mobile,.hide-tablet{display:none}.show-tablet{display:block}}@media(min-width:1024px){.hide-desktop{display:none}.show-desktop{display:block}}.grid{display:grid;gap:var(--space-md);grid-template-columns:1fr}@media(min-width:480px){.grid-sm-2{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){.grid-md-2{grid-template-columns:repeat(2,1fr)}.grid-md-3{grid-template-columns:repeat(3,1fr)}.grid-md-4{grid-template-columns:repeat(4,1fr)}}@media(min-width:1024px){.grid-lg-3{grid-template-columns:repeat(3,1fr)}.grid-lg-4{grid-template-columns:repeat(4,1fr)}.grid{gap:var(--space-lg)}}.text-responsive{font-size:var(--text-base)}@media(min-width:768px){.text-responsive{font-size:var(--text-lg)}}@media(min-width:1024px){.text-responsive{font-size:var(--text-xl)}}.spacing-responsive{padding:var(--space-md)}@media(min-width:768px){.spacing-responsive{padding:var(--space-lg)}}@media(min-width:1024px){.spacing-responsive{padding:var(--space-xl)}}:root{--color-bg: #f5f7fb;--color-surface: #ffffff;--color-surface-alt: #eff3f9;--color-border: #e2e8f0;--color-divider: rgba(255, 255, 255, .12);--color-sidebar: #7d2148;--color-sidebar-hover: #8d2d58;--color-sidebar-active: #9d3868;--color-text: #0f172a;--color-text-muted: #64748b;--color-text-inverse: #ffffff;--color-primary: #2563eb;--color-primary-soft: rgba(37, 99, 235, .14);--color-success: #059669;--color-warning: #f59e0b;--color-danger: #ef4444;--shadow-sm: 0 2px 6px rgba(15, 23, 42, .08);--shadow-md: 0 12px 32px rgba(15, 23, 42, .12);--shadow-lg: 0 24px 60px rgba(15, 23, 42, .16);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--sidebar-width: 268px;--sidebar-width-collapsed: 88px;--header-height: 70px;--transition-fast: .18s ease;--transition-base: .3s cubic-bezier(.25, .8, .25, 1);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}[data-theme=dark]{--color-bg: #0f172a;--color-surface: #111c32;--color-surface-alt: #0c1426;--color-border: rgba(148, 163, 184, .24);--color-text: #e2e8f0;--color-text-muted: #94a3b8;--shadow-sm: 0 2px 6px rgba(2, 6, 23, .24);--shadow-md: 0 12px 32px rgba(2, 6, 23, .4);--shadow-lg: 0 24px 60px rgba(2, 6, 23, .5)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);line-height:1.55;-webkit-font-smoothing:antialiased;transition:background-color var(--transition-base),color var(--transition-base)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover,a:focus{color:#1d4ed8}img,svg{max-width:100%;height:auto}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:4px}*:focus:not(:focus-visible){outline:none}@media(prefers-contrast:high){*:focus-visible{outline:3px solid currentColor;outline-offset:3px}}.sidebar *:focus-visible{outline-color:rgba(255,255,255,.9)}button:focus-visible,.hs-btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;box-shadow:0 0 0 4px rgba(37,99,235,.1)}.skip-link{display:none}.app-shell{min-height:100vh;display:flex;background:var(--color-bg)}.sidebar{width:var(--sidebar-width);background:var(--color-sidebar);color:var(--color-text-inverse);display:flex;flex-direction:column;gap:18px;padding:24px 20px;position:sticky;top:0;height:100vh;box-shadow:var(--shadow-lg);overflow-y:auto;transition:width var(--transition-base),transform var(--transition-base);z-index:1100}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:999px}.sidebar__brand{display:flex;align-items:center;gap:12px;font-weight:600;letter-spacing:-.01em}.sidebar__brand-icon{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.12);display:grid;place-items:center;font-weight:700}.sidebar__brand-text{display:flex;flex-direction:column;gap:2px}.sidebar__brand-text span:first-child{font-size:.8rem;text-transform:uppercase;opacity:.7}.sidebar__brand-text span:last-child{font-size:1.05rem}.sidebar__search{background:rgba(255,255,255,.08);border-radius:var(--radius-md);display:flex;align-items:center;gap:10px;padding:10px 12px}.sidebar__search input{width:100%;border:none;outline:none;background:transparent;color:var(--color-text-inverse);font-size:.92rem}.sidebar__sections{display:flex;flex-direction:column;gap:18px}.sidebar__section{display:flex;flex-direction:column;gap:6px}.sidebar__section-title{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;opacity:.65}.nav-list{display:flex;flex-direction:column;gap:4px}.nav-link{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-md);color:rgba(255,255,255,.95);font-size:.96rem;transition:background-color var(--transition-fast),color var(--transition-fast)}.nav-link svg{width:18px;height:18px;color:inherit}.nav-link:hover,.nav-link:focus{background:var(--color-sidebar-hover);color:var(--color-text-inverse)}.nav-link--active{background:rgba(255,255,255,.14);color:var(--color-text-inverse);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}.sidebar__footer{margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:8px;font-size:.82rem;opacity:.75}.sidebar__collapse{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:rgba(255,255,255,.14);color:var(--color-text-inverse);cursor:pointer;font-size:.82rem;transition:background-color var(--transition-fast)}.sidebar__collapse:hover{background:rgba(255,255,255,.22)}.sidebar.is-collapsed{width:var(--sidebar-width-collapsed);align-items:center;padding-inline:16px;transition:width var(--transition-base)}.sidebar.is-collapsed:hover{width:var(--sidebar-width)}.sidebar.is-collapsed .sidebar__brand-text,.sidebar.is-collapsed .sidebar__search,.sidebar.is-collapsed .sidebar__section-title,.sidebar.is-collapsed .nav-link span,.sidebar.is-collapsed .sidebar__footer{display:none;transition:opacity var(--transition-fast),visibility var(--transition-fast)}.sidebar.is-collapsed:hover .sidebar__brand-text,.sidebar.is-collapsed:hover .sidebar__section-title,.sidebar.is-collapsed:hover .nav-link span,.sidebar.is-collapsed:hover .sidebar__footer{display:block;opacity:1;visibility:visible}.sidebar.is-collapsed .nav-link{justify-content:center;padding:12px 10px;position:relative}.sidebar.is-collapsed:hover .nav-link{justify-content:flex-start;gap:12px}.sidebar.is-collapsed .nav-link svg{width:22px;height:22px}.sidebar.is-collapsed:not(:hover) .nav-link:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:rgba(0,0,0,.9);color:#fff;padding:6px 12px;border-radius:6px;font-size:.85rem;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--transition-fast),visibility var(--transition-fast);z-index:1000}.sidebar.is-collapsed:not(:hover) .nav-link:hover:after{opacity:1;visibility:visible}.app-main{flex:1;display:flex;flex-direction:column;min-height:100vh;background:var(--color-bg);transition:margin var(--transition-base)}.app-header{min-height:var(--header-height);display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:1000}.app-header__left{display:flex;align-items:center;gap:20px}.hamburger{width:44px;height:44px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);display:none;align-items:center;justify-content:center;cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.hamburger__lines,.hamburger__lines:before,.hamburger__lines:after{content:"";display:block;width:18px;height:2px;background:var(--color-text);border-radius:2px;transition:transform var(--transition-fast),opacity var(--transition-fast)}.hamburger__lines{position:relative}.hamburger__lines:before{position:absolute;top:-6px;left:0}.hamburger__lines:after{position:absolute;top:6px;left:0}.hamburger.is-active .hamburger__lines{background:transparent}.hamburger.is-active .hamburger__lines:before{transform:rotate(45deg);top:0}.hamburger.is-active .hamburger__lines:after{transform:rotate(-45deg);top:0}.page-heading{display:flex;flex-direction:column;gap:4px}.page-heading__title{font-size:1.5rem;font-weight:600;letter-spacing:-.015em;margin:0}.page-heading__subtitle{font-size:.95rem;color:var(--color-text-muted);margin:0}.app-header__actions{display:flex;align-items:center;gap:12px}.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-size:.9rem;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background-color var(--transition-fast)}.icon-button svg{width:18px;height:18px}.icon-button:hover,.icon-button:focus{border-color:var(--color-primary);color:var(--color-primary)}.theme-toggle{background:rgba(37,99,235,.12);border-color:transparent;color:var(--color-primary)}.theme-toggle:hover,.theme-toggle:focus{background:rgba(37,99,235,.2)}.account-menu{position:relative}.account-menu__trigger{display:inline-flex;align-items:center;gap:10px;border-radius:var(--radius-sm);border:1px solid var(--color-border);padding:8px 14px;background:var(--color-surface);cursor:pointer}.account-menu__trigger-avatar{width:30px;height:30px;border-radius:999px;background:var(--color-primary);color:#fff;display:grid;place-items:center;font-weight:600}.account-menu__panel{position:absolute;top:calc(100% + 10px);right:0;min-width:220px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-md);padding:12px 0;display:none;flex-direction:column;gap:2px;outline:none;opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .2s,transform .2s,visibility .2s}.account-menu__panel:not([hidden]){display:flex;opacity:1;visibility:visible;transform:translateY(0)}.account-menu__panel[hidden]{display:none!important}.account-menu__panel a,.account-menu__panel button{padding:10px 18px;text-align:left;font-size:.92rem;color:var(--color-text);background:none;border:none;cursor:pointer}.account-menu__panel a:hover,.account-menu__panel button:hover{background:var(--color-surface-alt)}.app-content{flex:1;display:flex;flex-direction:column;gap:24px;padding:32px}.section-title{font-size:1.1rem;font-weight:600;margin:0}.card{background:var(--color-surface);border-radius:var(--radius-lg);padding:24px;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:16px}.card--highlight{border-color:rgba(37,99,235,.2);box-shadow:0 16px 40px rgba(37,99,235,.18)}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-title{font-size:1.1rem;font-weight:600;margin:0}.card-subtitle{font-size:.9rem;color:var(--color-text-muted);margin:0}.card-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.metric{display:flex;flex-direction:column;gap:6px}.metric__label{font-size:.85rem;color:var(--color-text-muted)}.metric__value{font-size:1.6rem;font-weight:600;color:var(--color-text)}.metric__trend{font-size:.85rem;display:inline-flex;align-items:center;gap:6px}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.02em}.badge--success{background:rgba(16,185,129,.16);color:#047857}.badge--warning{background:rgba(245,158,11,.16);color:#b45309}.badge--danger{background:rgba(239,68,68,.16);color:#b91c1c}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:var(--radius-sm);border:1px solid transparent;font-weight:600;font-size:.92rem;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.btn-primary{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-surface-alt);color:var(--color-text);border-color:var(--color-border)}.table{width:100%;border-collapse:collapse;border-radius:var(--radius-md);border:1px solid var(--color-border);overflow:hidden}.table thead{background:var(--color-surface-alt);text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.table th,.table td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--color-border)}.table tbody tr:hover{background:rgba(37,99,235,.06)}.form-grid{display:grid;gap:18px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;font-size:.92rem}.form-group input,.form-group select,.form-group textarea{padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);font-size:.95rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.input-help{font-size:.82rem;color:var(--color-text-muted)}.app-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(15,23,42,.55);opacity:0;pointer-events:none;transition:opacity var(--transition-base);z-index:900}.app-overlay.is-active{opacity:1;pointer-events:auto}body.is-nav-open{overflow:hidden}.empty-state{padding:60px 20px;text-align:center;border:2px dashed var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-muted)}.empty-state h3{margin-bottom:8px}[data-theme=dark] .sidebar__search{background:rgba(255,255,255,.1)}[data-theme=dark] .nav-link:hover,[data-theme=dark] .nav-link:focus{background:rgba(255,255,255,.16)}[data-theme=dark] .app-header,[data-theme=dark] .card,[data-theme=dark] .account-menu__trigger,[data-theme=dark] .icon-button,[data-theme=dark] .btn-secondary,[data-theme=dark] .table thead{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] .app-header{box-shadow:none}[data-theme=dark] .card{box-shadow:var(--shadow-sm)}[data-theme=dark] .table tbody tr:hover{background:rgba(37,99,235,.25)}@media(max-width:1280px){.app-header,.app-content{padding-inline:24px}}@media(max-width:1024px){.app-shell{flex-direction:column}.sidebar{position:fixed;left:0;top:0;bottom:0;transform:translate(-100%);border-top-right-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.sidebar.is-open{transform:translate(0)}.hamburger{display:inline-flex}.app-content{padding:24px}}@media(max-width:768px){.app-header{flex-direction:column;align-items:flex-start;gap:18px}.app-header__actions{width:100%;justify-content:space-between}.account-menu__trigger span{display:none}.card-grid{grid-template-columns:1fr}.app-content{padding:20px}}@media(max-width:480px){.icon-button{padding:8px 12px}.btn,.account-menu__trigger{width:100%;justify-content:center}.app-header__actions{flex-direction:column;gap:10px}}*{margin:0;padding:0;box-sizing:border-box}.container{max-width:1400px;margin:0 auto;background:var(--light-bg);border-radius:16px;box-shadow:var(--shadow-lg);overflow:hidden}header{background:var(--dark-bg);color:#fff;padding:32px;text-align:center}header h1{font-size:2.5rem;font-weight:700;margin-bottom:8px}.subtitle{font-size:1.1rem;opacity:.9;font-weight:300}.main-content{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:32px}@media(max-width:1024px){.main-content{grid-template-columns:1fr}}section{background:var(--card-bg);padding:24px;border-radius:12px;box-shadow:var(--shadow)}h2{font-size:1.5rem;margin-bottom:20px;color:var(--text-primary);border-bottom:2px solid var(--primary-color);padding-bottom:8px}h3{font-size:1.2rem;margin:24px 0 12px;color:var(--text-primary)}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:600;margin-bottom:8px;color:var(--text-primary)}.form-group input,.form-group select{width:100%;padding:12px;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color)}.help-text{display:block;font-size:.875rem;color:var(--text-secondary);margin-top:4px}.forecast-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:768px){.forecast-inputs{grid-template-columns:1fr}}.channel-row{display:grid;grid-template-columns:160px 1fr;align-items:center;gap:12px;margin-bottom:12px}.channel-row label{font-weight:500;color:var(--text-primary)}.channel-input-wrapper{display:flex;align-items:center;gap:12px}.channel-input-wrapper input{flex:1;padding:10px;border:2px solid var(--border-color);border-radius:6px;font-size:1rem;transition:background-color .3s ease,border-color .3s ease}.channel-input-wrapper input:focus{outline:none;border-color:var(--primary-color)}.channel-input-wrapper input.changed{background-color:#e0f2fe;border-color:var(--primary-color)}.channel-input-wrapper input.constraint-warning{background-color:#fff4e5;border-color:var(--warning-color)}.percentage-display{min-width:70px;text-align:right;font-weight:600;color:var(--text-secondary)}.percentage-display.constraint-warning{color:var(--danger-color)}.constraint-hint{display:inline-block;margin-left:6px;font-size:.75rem;color:var(--text-secondary)}.total-budget-group .total-percentage-display{margin-top:8px;font-size:.9rem;color:var(--text-secondary)}#total-percentage{font-weight:600;color:var(--text-primary);margin-left:4px}#total-percentage.error{color:var(--danger-color)}.btn-primary,.btn-secondary{padding:14px 28px;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s;margin-right:12px;margin-top:12px}.btn-primary{background:var(--primary-color);color:#fff;width:100%}.btn-primary:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--secondary-color);color:#fff}.btn-secondary:hover{background:#6d28d9;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.integration-buttons{margin-top:20px;padding:18px;background:#f1f5f9;border-radius:10px;border:1px solid var(--border-color)}.integration-helper{font-size:.95rem;color:var(--text-secondary);margin-bottom:12px}.integration-button-row{display:flex;flex-wrap:wrap;gap:12px}.btn-integration{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:8px;font-weight:600;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;box-shadow:var(--shadow)}.btn-integration .integration-text{font-size:.95rem}.btn-integration:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-integration.hubspot{background:#ffeadb;color:#b75100}.btn-integration.salesforce{background:#e0f2ff;color:#0b69c7}@media(max-width:768px){.integration-button-row{flex-direction:column}.btn-integration{justify-content:center}}#loading{text-align:center;padding:60px 20px}.spinner{border:4px solid var(--border-color);border-top:4px solid var(--primary-color);border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.summary-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px;border-radius:12px;margin-bottom:24px}.regime-badge{display:inline-block;padding:8px 16px;border-radius:20px;background:rgba(255,255,255,.2);font-weight:600;font-size:1.1rem;margin-bottom:16px}.summary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media(max-width:768px){.summary-stats{grid-template-columns:1fr}}.stat{text-align:center}.stat-label{display:block;font-size:.875rem;opacity:.9;margin-bottom:4px}.stat-value{display:block;font-size:1.5rem;font-weight:700}.channel-card{background:var(--light-bg);padding:16px;border-radius:8px;margin-bottom:12px;border-left:4px solid var(--primary-color)}.channel-card.positive{border-left-color:var(--success-color)}.channel-card.negative{border-left-color:var(--danger-color)}.channel-card.neutral{border-left-color:var(--text-secondary)}.channel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.channel-name{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.channel-change{font-size:1.2rem;font-weight:700}.channel-change.positive{color:var(--success-color)}.channel-change.negative{color:var(--danger-color)}.channel-change.neutral{color:var(--text-secondary)}.channel-amounts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:12px}.amount-item{font-size:.9rem;padding:8px;background:rgba(0,0,0,.02);border-radius:4px}.amount-label{color:var(--text-secondary);display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.amount-value{font-weight:600;color:var(--text-primary);font-size:1rem}.amount-value.positive{color:#4caf50}.amount-value.negative{color:#f44336}.amount-value.neutral{color:#ff9800}.channel-rationale{font-size:.9rem;color:var(--text-secondary);font-style:italic;margin-top:8px}.notes-section{background:#fef3c7;padding:20px;border-radius:8px;margin-top:24px;border-left:4px solid var(--warning-color)}.notes-section h3{color:#92400e;margin-top:0}#notes-list{list-style-position:inside;color:#78350f}#notes-list li{margin-bottom:8px}.error-message{background:#fee2e2;color:#991b1b;padding:16px;border-radius:8px;border-left:4px solid var(--danger-color);font-weight:500}footer{background:var(--dark-bg);color:#fff;text-align:center;padding:20px;font-size:.9rem;opacity:.8}.hidden{display:none!important}.text-center{text-align:center}.mb-2{margin-bottom:12px}.mt-2{margin-top:12px}#industry{background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #e0e0e0;border-radius:8px;padding:12px;font-size:14px;font-weight:500;transition:all .2s ease;width:100%}#industry:focus{border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.1);outline:none}#industry option{padding:10px}.industry-badge{display:inline-block;padding:4px 12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.industry-insights{background:linear-gradient(135deg,#e0f2fe,#ddd6fe);border:2px solid #a5b4fc;border-radius:12px;padding:16px;margin-top:12px;margin-bottom:24px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.insights-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:#4338ca;font-size:14px}.insights-icon{font-size:20px}.insights-content{background:#fff;border-radius:8px;padding:12px}.insight-row{margin-bottom:12px;font-size:13px;line-height:1.6}.insight-row:last-child{margin-bottom:0}.insight-row strong{color:#1e293b;display:block;margin-bottom:4px}.channel-priority-list{margin:8px 0 0 20px;padding:0}.channel-priority-list li{margin-bottom:4px;color:#475569}.insight-tip{background:#fef3c7;border-left:4px solid #f59e0b;padding:8px 12px;border-radius:6px;margin-top:12px}.insight-tip strong{color:#92400e}.hs-card{background:#fff;border-radius:8px;padding:var(--space-md);box-shadow:0 1px 3px rgba(0,0,0,.08);transition:box-shadow .2s ease}.hs-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.12)}.hs-card--metric{display:flex;flex-direction:column;gap:var(--space-xs)}.hs-card__label{font-size:var(--text-xs);font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.hs-card__value{font-size:28px;font-weight:700;color:#1f2937;line-height:1.2}.hs-card__change{font-size:var(--text-sm);font-weight:500}.hs-card__change--positive{color:#059669}.hs-card__change--negative{color:#ef4444}.hs-card__footer{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid rgba(0,0,0,.08);font-size:var(--text-sm);color:#6b7280}.hs-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:12px 20px;font-size:var(--text-sm);font-weight:500;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease;min-height:var(--touch-target-min);-webkit-tap-highlight-color:transparent}.hs-btn--primary{background:#ff7a59;color:#fff}.hs-btn--primary:hover{background:#ff6842}.hs-btn--primary:active{transform:scale(.98)}.hs-btn--secondary{background:#f3f4f6;color:#1f2937}.hs-btn--secondary:hover{background:#e5e7eb}.hs-btn--outline{background:transparent;border:1px solid #D1D5DB;color:#1f2937}.hs-btn--outline:hover{background:#f9fafb}.hs-btn--sm{padding:8px 16px;font-size:var(--text-xs)}.hs-btn--lg{padding:16px 24px;font-size:var(--text-base)}.hs-btn--full{width:100%}.hs-btn:disabled{opacity:.5;cursor:not-allowed}.hs-form-group{margin-bottom:var(--space-md)}.hs-label{display:block;font-size:var(--text-sm);font-weight:500;color:#374151;margin-bottom:var(--space-xs)}.hs-input{width:100%;padding:12px 16px;font-size:16px;border:1px solid #D1D5DB;border-radius:8px;background:#fff;transition:all .2s ease;min-height:var(--touch-target-min)}.hs-input:focus{outline:none;border-color:#ff7a59;box-shadow:0 0 0 3px rgba(255,122,89,.1)}.hs-input::placeholder{color:#9ca3af}.hs-input--error{border-color:#ef4444}.hs-form-error{font-size:var(--text-xs);color:#ef4444;margin-top:var(--space-xs)}.hs-select{-webkit-appearance:none;appearance:none;width:100%;padding:12px 40px 12px 16px;font-size:16px;border:1px solid #D1D5DB;border-radius:8px;background:#fff 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'/%3E%3C/svg%3E") no-repeat right 16px center;cursor:pointer;min-height:var(--touch-target-min)}.hs-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.5);z-index:var(--z-modal);display:flex;align-items:flex-end;justify-content:center;opacity:0;visibility:hidden;transition:all .3s ease}.hs-modal-overlay.active{opacity:1;visibility:visible}.hs-modal{background:#fff;border-radius:16px 16px 0 0;width:100%;max-height:90vh;overflow-y:auto;transform:translateY(100%);transition:transform .3s ease}.hs-modal-overlay.active .hs-modal{transform:translateY(0)}.hs-modal__header{padding:var(--space-md);border-bottom:1px solid rgba(0,0,0,.08);display:flex;align-items:center;justify-content:space-between}.hs-modal__title{font-size:var(--text-lg);font-weight:600;color:#1f2937}.hs-modal__close{width:var(--touch-target-min);height:var(--touch-target-min);border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:background .2s ease}.hs-modal__close:hover{background:rgba(0,0,0,.05)}.hs-modal__body{padding:var(--space-md)}.hs-modal__footer{padding:var(--space-md);border-top:1px solid rgba(0,0,0,.08);display:flex;gap:var(--space-sm)}@media(min-width:768px){.hs-modal-overlay{align-items:center}.hs-modal{border-radius:16px;max-width:500px;max-height:80vh;transform:scale(.9);opacity:0}.hs-modal-overlay.active .hs-modal{transform:scale(1);opacity:1}}.hs-list{background:#fff;border-radius:8px;overflow:hidden}.hs-list-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);border-bottom:1px solid rgba(0,0,0,.08);transition:background .2s ease;text-decoration:none;color:inherit;min-height:var(--touch-target-min)}.hs-list-item:last-child{border-bottom:none}.hs-list-item:active{background:rgba(0,0,0,.03)}.hs-list-item__icon{flex-shrink:0;width:40px;height:40px;border-radius:8px;background:#f3f4f6;display:flex;align-items:center;justify-content:center}.hs-list-item__content{flex:1;min-width:0}.hs-list-item__title{font-weight:500;color:#1f2937;margin-bottom:2px}.hs-list-item__subtitle{font-size:var(--text-sm);color:#6b7280}.hs-list-item__action{flex-shrink:0}.hs-badge{display:inline-flex;align-items:center;padding:4px 12px;font-size:var(--text-xs);font-weight:500;border-radius:12px;white-space:nowrap}.hs-badge--primary{background:#dbeafe;color:#1e40af}.hs-badge--success{background:#d1fae5;color:#065f46}.hs-badge--warning{background:#fef3c7;color:#92400e}.hs-badge--danger{background:#fee2e2;color:#991b1b}[data-theme=dark] .hs-card{background:#1f2937;box-shadow:0 1px 3px rgba(0,0,0,.3)}[data-theme=dark] .hs-card__label{color:#9ca3af}[data-theme=dark] .hs-card__value{color:#f9fafb}[data-theme=dark] .hs-input,[data-theme=dark] .hs-select{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .hs-modal,[data-theme=dark] .hs-list{background:#1f2937}[data-theme=dark] .hs-list-item{border-bottom-color:rgba(255,255,255,.1)}[data-theme=dark] .hs-list-item__title{color:#f9fafb}:root{--particle-primary: rgba(102, 126, 234, .6);--particle-success: rgba(16, 185, 129, .6);--particle-warning: rgba(245, 158, 11, .6);--particle-danger: rgba(239, 68, 68, .6);--glow-subtle: 0 0 10px rgba(102, 126, 234, .3);--glow-medium: 0 0 20px rgba(102, 126, 234, .5);--glow-intense: 0 0 30px rgba(102, 126, 234, .7);--glow-extreme: 0 0 40px rgba(102, 126, 234, .9);--spring-smooth: cubic-bezier(.34, 1.56, .64, 1);--spring-bounce: cubic-bezier(.68, -.55, .265, 1.55);--spring-gentle: cubic-bezier(.25, .46, .45, .94);--perspective-near: 1000px;--perspective-far: 2000px}.particle-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.particle{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--particle-primary);opacity:0;animation:float-particle 15s infinite ease-in-out;filter:blur(1px)}.particle:nth-child(2n){animation-duration:20s;animation-delay:-5s;background:var(--particle-success)}.particle:nth-child(3n){animation-duration:25s;animation-delay:-10s;width:6px;height:6px}.particle:nth-child(5n){animation-duration:18s;animation-delay:-7s;filter:blur(2px)}@keyframes float-particle{0%{transform:translateY(100vh) translate(0) scale(0);opacity:0}10%{opacity:.6}90%{opacity:.6}to{transform:translateY(-100px) translate(100px) scale(1);opacity:0}}.glass-card{background:rgba(26,31,53,.7);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(148,163,184,.15);border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.37),inset 0 1px rgba(255,255,255,.05);position:relative;overflow:hidden;transition:all .4s var(--spring-smooth)}[data-theme=light] .glass-card{background:rgba(255,255,255,.9);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(226,232,240,.8);box-shadow:0 8px 32px rgba(0,0,0,.08),inset 0 1px rgba(255,255,255,.8)}.glass-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .6s}[data-theme=light] .glass-card:before{background:linear-gradient(90deg,transparent,rgba(102,126,234,.05),transparent)}.glass-card:hover:before{left:100%}.glass-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 0 1px rgba(148,163,184,.2),inset 0 1px rgba(255,255,255,.1)}[data-theme=light] .glass-card:hover{box-shadow:0 20px 60px rgba(0,0,0,.12),0 0 0 1px rgba(148,163,184,.3),inset 0 1px rgba(255,255,255,.9)}.regime-indicator-enhanced{position:relative;padding:3rem 2rem;background:linear-gradient(135deg,rgba(10,14,26,.95),rgba(26,31,53,.9));border-radius:24px;overflow:hidden;perspective:var(--perspective-far);transform-style:preserve-3d}[data-theme=light] .regime-indicator-enhanced{background:linear-gradient(135deg,#fff,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;box-shadow:0 4px 20px rgba(0,0,0,.08)}[data-theme=light] .regime-indicator-enhanced .regime-name{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}[data-theme=light] .regime-indicator-enhanced .gauge-label,[data-theme=light] .regime-indicator-enhanced .gauge-value{color:#1e293b}[data-theme=light] .regime-indicator-enhanced .last-update-time{color:#64748b}.regime-indicator-enhanced:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg,rgba(102,126,234,.1),rgba(118,75,162,.2),rgba(102,126,234,.1));animation:rotate-gradient 20s linear infinite}[data-theme=light] .regime-indicator-enhanced:before{background:conic-gradient(from 0deg,rgba(102,126,234,.03),rgba(118,75,162,.05),rgba(102,126,234,.03))}@keyframes rotate-gradient{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.regime-wave-background{position:absolute;bottom:0;left:0;width:100%;height:200px;opacity:.15;pointer-events:none}.regime-wave{position:absolute;bottom:0;left:0;width:200%;height:100%;background:linear-gradient(90deg,transparent,var(--particle-primary),transparent);animation:wave-flow 8s ease-in-out infinite}.regime-wave:nth-child(2){animation-delay:-2s;opacity:.5;animation-duration:10s}.regime-wave:nth-child(3){animation-delay:-4s;opacity:.3;animation-duration:12s}@keyframes wave-flow{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-25%) translateY(-20px)}}.gauge-container-enhanced{position:relative;width:140px;height:140px;filter:drop-shadow(var(--glow-medium));transition:all .4s var(--spring-smooth)}.gauge-container-enhanced:hover{transform:scale(1.1) rotateY(5deg);filter:drop-shadow(var(--glow-intense))}.gauge-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:120%;height:120%;border-radius:50%;background:radial-gradient(circle,rgba(102,126,234,.4),transparent 70%);animation:pulse-glow 3s ease-in-out infinite}@keyframes pulse-glow{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.8}}.gauge-value-enhanced{font-size:2rem;font-weight:700;background:linear-gradient(135deg,#818cf8,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 2px 4px rgba(102,126,234,.5));animation:shimmer 3s linear infinite}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.action-button-enhanced{position:relative;padding:1rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;overflow:hidden;transition:all .3s var(--spring-smooth);box-shadow:0 4px 12px rgba(102,126,234,.3),inset 0 1px rgba(255,255,255,.2)}.action-button-enhanced:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .6s,height .6s}.action-button-enhanced:hover:before{width:300px;height:300px}.action-button-enhanced:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(102,126,234,.5),inset 0 1px rgba(255,255,255,.3)}.action-button-enhanced:active{transform:translateY(0) scale(.98)}.ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,.6);transform:scale(0);animation:ripple-animation .6s ease-out;pointer-events:none}@keyframes ripple-animation{to{transform:scale(4);opacity:0}}.data-card-enhanced{position:relative;padding:1.5rem;background:rgba(26,31,53,.8);backdrop-filter:blur(12px);border:1px solid rgba(148,163,184,.1);border-radius:16px;transition:all .4s var(--spring-smooth);transform-style:preserve-3d}[data-theme=light] .data-card-enhanced{background:rgba(255,255,255,.95);border:1px solid rgba(226,232,240,.8);box-shadow:0 4px 16px rgba(0,0,0,.08)}.data-card-enhanced:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--cc-accent-purple),transparent);transform:scaleX(0);transition:transform .4s var(--spring-smooth)}.data-card-enhanced:hover:after{transform:scaleX(1)}.data-card-enhanced:hover{transform:translateZ(10px) rotateX(2deg);border-color:rgba(102,126,234,.3);box-shadow:0 12px 40px rgba(0,0,0,.4),0 0 20px rgba(102,126,234,.2)}.sparkline-container{position:relative;height:60px;margin:.5rem 0;overflow:hidden}.sparkline-path{fill:none;stroke:url(#sparkline-gradient);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 4px rgba(102,126,234,.4));animation:draw-sparkline 1s ease-out forwards}@keyframes draw-sparkline{0%{stroke-dashoffset:1000}to{stroke-dashoffset:0}}.sparkline-area{fill:url(#sparkline-area-gradient);opacity:0;animation:fade-in-area 1s .5s ease-out forwards}@keyframes fade-in-area{to{opacity:.3}}.sparkline-dot{fill:var(--cc-accent-purple);stroke:#fff;stroke-width:2;filter:drop-shadow(0 2px 6px rgba(102,126,234,.6));animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{r:4;opacity:1}50%{r:6;opacity:.7}}.toast-container{position:fixed;top:5rem;right:2rem;z-index:10000;pointer-events:none}.toast{position:relative;margin-bottom:1rem;padding:1rem 1.5rem;min-width:300px;background:rgba(26,31,53,.95);backdrop-filter:blur(12px);border-radius:12px;border-left:4px solid var(--cc-accent-purple);box-shadow:0 8px 24px rgba(0,0,0,.3),0 0 20px rgba(102,126,234,.2);pointer-events:all;animation:toast-slide-in .4s var(--spring-smooth)}[data-theme=light] .toast{background:rgba(255,255,255,.98);border-left:4px solid #667eea;box-shadow:0 8px 24px rgba(0,0,0,.12),0 0 20px rgba(102,126,234,.15)}@keyframes toast-slide-in{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.toast.toast-exit{animation:toast-slide-out .3s ease-in forwards}@keyframes toast-slide-out{to{transform:translate(400px);opacity:0}}.toast-success{border-left-color:var(--cc-accent-green);box-shadow:0 8px 24px rgba(0,0,0,.3),0 0 20px rgba(72,187,120,.2)}.toast-warning{border-left-color:var(--cc-accent-orange);box-shadow:0 8px 24px rgba(0,0,0,.3),0 0 20px rgba(246,173,85,.2)}.toast-danger{border-left-color:var(--cc-accent-red);box-shadow:0 8px 24px rgba(0,0,0,.3),0 0 20px rgba(252,129,129,.2)}.skeleton{background:linear-gradient(90deg,rgba(45,53,72,.5) 25%,rgba(51,65,85,.7),rgba(45,53,72,.5) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:8px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1rem;margin-bottom:.5rem}.skeleton-text:last-child{width:70%}.progress-bar-enhanced{position:relative;height:8px;background:rgba(45,53,72,.5);border-radius:9999px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--cc-accent-purple),var(--cc-accent-blue),var(--cc-accent-purple));background-size:200% 100%;border-radius:9999px;transition:width .6s var(--spring-smooth);animation:progress-shimmer 2s linear infinite;box-shadow:0 0 10px rgba(102,126,234,.5)}@keyframes progress-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.hover-lift{transition:all .3s var(--spring-smooth)}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,0,0,.3)}.hover-glow{transition:all .3s ease}.hover-glow:hover{filter:drop-shadow(0 0 15px rgba(102,126,234,.6))}.hover-scale{transition:transform .3s var(--spring-smooth)}.hover-scale:hover{transform:scale(1.05)}.fade-in-up{opacity:0;transform:translateY(30px);transition:all .6s var(--spring-smooth)}.fade-in-up.visible{opacity:1;transform:translateY(0)}.fade-in-left{opacity:0;transform:translate(-30px);transition:all .6s var(--spring-smooth)}.fade-in-left.visible{opacity:1;transform:translate(0)}.fade-in-right{opacity:0;transform:translate(30px);transition:all .6s var(--spring-smooth)}.fade-in-right.visible{opacity:1;transform:translate(0)}.gpu-accelerated{transform:translateZ(0);will-change:transform;backface-visibility:hidden;perspective:1000px}.theme-toggle-button{position:relative;transition:all .3s var(--spring-smooth)!important}.theme-toggle-button:hover{transform:scale(1.15) rotate(20deg);filter:drop-shadow(0 0 8px rgba(102,126,234,.6))}.theme-toggle-button:active{transform:scale(.95) rotate(-10deg)}.theme-toggle-button #theme-icon{display:inline-block;transition:transform .6s var(--spring-bounce)}.theme-toggle-button:hover #theme-icon{transform:rotateY(180deg)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:768px){.glass-card:hover{transform:none}.gauge-container-enhanced:hover{transform:scale(1.05)}.particle-container{display:none}}button,.btn,.touch-target,input[type=button],input[type=submit],input[type=reset],.icon-btn,.nav-link,a,.chip,.close-btn,.action-btn{min-width:44px;min-height:44px;padding:8px 12px;font-size:1rem;line-height:1.2;border-radius:6px;margin:4px}button+button,.btn+.btn,.touch-target+.touch-target,a+a,.chip+.chip{margin-left:8px}body,.text,.label,.form-label,.stat-value,.stat-label,.card,.alert,.modal,.dropdown,.nav-link,.sidebar-link,.chip,.badge{color:#1a1a1a;background-color:#fff}button,.btn,.alert,.chip,.badge,.nav-link,a{color:#fff;background-color:#2563eb;border:1px solid #1e40af}button:focus-visible,.btn:focus-visible,a:focus-visible,.nav-link:focus-visible,.chip:focus-visible,.close-btn:focus-visible{outline:3px solid #2563eb;outline-offset:2px;border-radius:6px}:root{--font-base: clamp(14px, 2.5vw, 16px);--font-sm: clamp(12px, 2vw, 14px);--font-lg: clamp(18px, 3vw, 20px);--font-xl: clamp(22px, 4vw, 28px);--font-2xl: clamp(28px, 5vw, 36px);--font-3xl: clamp(36px, 6vw, 48px);--text-sm: clamp(12px, 2vw, 14px);--text-base: clamp(14px, 2.5vw, 16px);--text-lg: clamp(18px, 3vw, 20px);--text-xl: clamp(22px, 4vw, 28px);--text-2xl: clamp(28px, 5vw, 36px);--text-3xl: clamp(36px, 6vw, 48px);--touch-target: 44px;--touch-target-lg: 56px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .05);--shadow-md: 0 2px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .15);--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--icon-sm: 16px;--icon-md: 20px;--icon-lg: 24px;--color-primary: #667eea;--color-primary-dark: #5568d3;--color-secondary: #764ba2;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-text: #1f2937;--color-text-light: #6b7280;--color-bg: #ffffff;--color-bg-alt: #f9fafb;--color-border: #e5e7eb;--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-toast: 400}[data-theme=dark]{--color-text: #f9fafb;--color-text-light: #d1d5db;--color-bg: #111827;--color-bg-alt: #1f2937;--color-border: #374151}*{margin:0;padding:0;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translateZ(0);transform:translateZ(0)}html{font-size:var(--font-base);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;overflow-x:hidden;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;color:var(--color-text);background:var(--color-bg);overflow-x:hidden;margin:0;padding:0;min-height:100vh;overscroll-behavior-y:contain;-webkit-tap-highlight-color:transparent}button,a,input,select,textarea,.touch-target{min-height:var(--touch-target);min-width:var(--touch-target)}a,button,input,select,textarea{touch-action:manipulation}button:active,a:active,.btn:active{transform:scale(.98);opacity:.9}.no-select{-webkit-user-select:none;-moz-user-select:none;user-select:none}.container{width:100%;max-width:1440px;margin:0 auto;padding:0 var(--spacing-md)}@media(min-width:768px){.container{padding:0 var(--spacing-lg)}}@media(min-width:1024px){.container{padding:0 var(--spacing-xl)}}.container-fluid{width:100%;padding:0 var(--spacing-md)}.row{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin:0 calc(var(--spacing-md) * -.5)}.col{flex:1;padding:0 calc(var(--spacing-md) * .5)}.col-12{flex:0 0 100%;max-width:100%}.col-6{flex:0 0 50%;max-width:50%}.col-4{flex:0 0 33.333%;max-width:33.333%}.col-3{flex:0 0 25%;max-width:25%}@media(max-width:768px){.col-sm-12{flex:0 0 100%;max-width:100%}.col-sm-6{flex:0 0 50%;max-width:50%}}@media(min-width:768px){.col-md-12{flex:0 0 100%;max-width:100%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-4{flex:0 0 33.333%;max-width:33.333%}.col-md-3{flex:0 0 25%;max-width:25%}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:12px var(--spacing-lg);font-size:var(--font-base);font-weight:600;line-height:1.5;border:none;border-radius:8px;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;white-space:nowrap;touch-action:manipulation;min-height:var(--touch-target);min-width:var(--touch-target)}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;box-shadow:0 2px 8px rgba(102,126,234,.3)}.btn-primary:hover{box-shadow:0 4px 12px rgba(102,126,234,.4);transform:translateY(-1px)}.btn-secondary{background:var(--color-bg-alt);color:var(--color-text);border:1px solid var(--color-border)}.btn-lg{padding:16px var(--spacing-xl);font-size:var(--font-lg);min-height:var(--touch-target-lg)}.btn-sm{padding:8px var(--spacing-md);font-size:var(--font-sm)}.btn-block{display:flex;width:100%}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--color-text)}.form-control{width:100%;padding:12px var(--spacing-md);font-size:var(--font-base);line-height:1.5;color:var(--color-text);background:var(--color-bg);border:2px solid var(--color-border);border-radius:8px;transition:border-color var(--transition-fast);min-height:var(--touch-target);touch-action:manipulation;font-size:16px}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(102,126,234,.1)}textarea.form-control{min-height:120px;resize:vertical}select.form-control{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:0 1px 3px rgba(0,0,0,.05);transition:box-shadow var(--transition-base)}.card:hover{box-shadow:0 4px 12px rgba(0,0,0,.1)}.card-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.card-title{font-size:var(--font-xl);font-weight:700;color:var(--color-text);margin:0}.card-body{padding:var(--spacing-md) 0}.card-footer{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.mobile-header{position:fixed;top:0;left:0;right:0;height:56px;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;display:none;align-items:center;justify-content:space-between;padding:0 var(--spacing-md);box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:var(--z-sticky)}@media(max-width:768px){.mobile-header{display:flex}}.hamburger-menu{background:none;border:none;padding:8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;min-width:var(--touch-target);min-height:var(--touch-target);justify-content:center;align-items:center}.hamburger-line{width:24px;height:3px;background:#fff;border-radius:2px;transition:all var(--transition-fast)}.hamburger-menu.active .hamburger-line:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger-menu.active .hamburger-line:nth-child(2){opacity:0}.hamburger-menu.active .hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-logo{font-size:var(--font-lg);font-weight:700;color:#fff}.mobile-refresh{background:none;border:none;font-size:24px;cursor:pointer;min-width:var(--touch-target);min-height:var(--touch-target);display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast)}.mobile-refresh:active{transform:scale(.9)}.sidebar,.nav-sidebar{position:fixed;top:0;left:-100%;width:85%;max-width:320px;height:100vh;background:var(--color-bg);box-shadow:2px 0 10px rgba(0,0,0,.1);z-index:calc(var(--z-sticky) + 1);transition:left var(--transition-base);overflow-y:auto;-webkit-overflow-scrolling:touch}.sidebar.mobile-open,.nav-sidebar.mobile-open{left:0}@media(min-width:768px){.sidebar,.nav-sidebar{position:static;width:auto;max-width:none;left:0;box-shadow:none}}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:1px solid var(--color-border)}.close-menu{background:none;border:none;font-size:24px;cursor:pointer;min-width:var(--touch-target);min-height:var(--touch-target);display:flex;align-items:center;justify-content:center}.search-container{padding:var(--spacing-md);border-bottom:1px solid var(--color-border)}.search-input{width:100%;padding:12px var(--spacing-md);font-size:16px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-bg-alt);transition:border-color var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--color-primary)}.nav-section{padding:var(--spacing-sm) 0}.nav-item,.sidebar-item{display:flex;align-items:center;gap:12px;padding:14px var(--spacing-md);color:var(--color-text);text-decoration:none;font-weight:500;font-size:var(--font-base);border-bottom:1px solid var(--color-border);transition:background var(--transition-fast);min-height:var(--touch-target)}.nav-item:hover,.sidebar-item:hover{background:var(--color-bg-alt)}.nav-item.active,.sidebar-item.active{background:rgba(102,126,234,.1);color:var(--color-primary);border-left:3px solid var(--color-primary)}.nav-item .icon,.sidebar-item .icon,.nav-item-icon,.sidebar-item-icon{font-size:20px;min-width:24px;text-align:center;flex-shrink:0}.nav-item .label,.sidebar-item .label,.nav-item-label,.sidebar-item-label{flex:1}.sidebar-item-badge{margin-left:auto;flex-shrink:0}.sidebar-section-toggle{display:flex;align-items:center;gap:12px;width:100%;padding:14px var(--spacing-md);background:transparent;border:none;color:var(--color-text);font-weight:600;font-size:var(--font-base);text-align:left;cursor:pointer;transition:background var(--transition-fast);min-height:var(--touch-target)}.sidebar-section-toggle:hover{background:var(--color-bg-alt)}.sidebar-section-icon{font-size:20px;min-width:24px;flex-shrink:0}.sidebar-section-label{flex:1}.sidebar-section-arrow{font-size:12px;flex-shrink:0;transition:transform var(--transition-fast)}.sidebar-section-toggle[aria-expanded=false] .sidebar-section-arrow{transform:rotate(-90deg)}.sidebar-subsection{overflow:hidden;transition:max-height var(--transition-base);max-height:1000px}.sidebar-subsection.collapsed{max-height:0}.sidebar-subsection .sidebar-item{padding-left:calc(var(--spacing-md) + 24px)}.sidebar-divider{height:1px;background:var(--color-border);margin:var(--spacing-md) 0}.sidebar-collapse-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:var(--spacing-md);background:var(--color-bg-alt);border:none;border-top:1px solid var(--color-border);color:var(--color-text-light);font-size:var(--font-sm);font-weight:500;cursor:pointer;transition:background var(--transition-fast)}.sidebar-collapse-btn:hover{background:var(--color-border)}@media(max-width:768px){.sidebar-collapse-btn{display:none}}.badge-new,.badge-hot{display:inline-block;padding:2px 8px;border-radius:12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-left:auto;flex-shrink:0}.badge-new{background:var(--color-success);color:#fff}.badge-hot{background:var(--color-error);color:#fff}.nav-divider{height:1px;background:var(--color-border);margin:var(--spacing-md) 0}.mobile-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:var(--z-sticky);opacity:0;pointer-events:none;transition:opacity var(--transition-base)}.mobile-overlay.active{opacity:1;pointer-events:auto}.pull-to-refresh{position:fixed;top:-60px;left:50%;transform:translate(-50%);width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:24px;background:var(--color-bg);border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:var(--z-toast);opacity:0;transition:all var(--transition-base)}.pull-to-refresh.visible{opacity:1}.pull-to-refresh.refreshing{animation:spin 1s linear infinite}.mobile-nav,.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;background:var(--color-bg);border-top:1px solid var(--color-border);display:none;justify-content:space-around;padding:var(--spacing-sm) 0;box-shadow:0 -2px 10px rgba(0,0,0,.1);z-index:var(--z-sticky);padding-bottom:max(var(--spacing-sm),env(safe-area-inset-bottom))}@media(max-width:768px){.mobile-nav,.mobile-bottom-nav{display:flex}}.mobile-nav-item,.bottom-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--spacing-sm);min-width:var(--touch-target);color:var(--color-text-light);text-decoration:none;transition:color var(--transition-fast);font-size:11px;font-weight:500}.mobile-nav-item.active,.bottom-nav-item.active{color:var(--color-primary)}.mobile-nav-icon,.bottom-nav-icon{font-size:24px}.mobile-nav-label{font-size:11px;font-weight:500}@media(max-width:768px){.main-content,.content-wrapper,.executive-container{margin-top:56px;margin-bottom:60px;padding:var(--spacing-md)}}@media(min-width:768px){.mobile-nav,.mobile-bottom-nav,.mobile-header{display:none}}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:flex-end;justify-content:center;z-index:var(--z-modal);opacity:0;pointer-events:none;transition:opacity var(--transition-base)}.modal.active{opacity:1;pointer-events:auto}.modal-content{background:var(--color-bg);border-radius:20px 20px 0 0;padding:var(--spacing-lg);width:100%;max-width:600px;max-height:90vh;overflow-y:auto;transform:translateY(100%);transition:transform var(--transition-base);-webkit-overflow-scrolling:touch}.modal.active .modal-content{transform:translateY(0)}@media(min-width:768px){.modal{align-items:center}.modal-content{border-radius:20px;max-height:80vh;transform:scale(.9)}.modal.active .modal-content{transform:scale(1)}}.skeleton{background:linear-gradient(90deg,var(--color-bg-alt) 25%,var(--color-border) 50%,var(--color-bg-alt) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.loading-spinner{width:40px;height:40px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.toast{position:fixed;bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom,0px));left:var(--spacing-md);right:var(--spacing-md);background:var(--color-text);color:var(--color-bg);padding:var(--spacing-md);border-radius:12px;display:flex;align-items:center;gap:var(--spacing-md);box-shadow:0 4px 12px rgba(0,0,0,.3);z-index:var(--z-toast);transform:translateY(200%);transition:transform var(--transition-base)}.toast.active{transform:translateY(0)}.toast-success{background:var(--color-success)}.toast-error{background:var(--color-error)}.toast-warning{background:var(--color-warning)}.m-0{margin:0!important}.mt-1{margin-top:var(--spacing-sm)!important}.mt-2{margin-top:var(--spacing-md)!important}.mt-3{margin-top:var(--spacing-lg)!important}.mb-1{margin-bottom:var(--spacing-sm)!important}.mb-2{margin-bottom:var(--spacing-md)!important}.mb-3{margin-bottom:var(--spacing-lg)!important}.p-0{padding:0!important}.p-1{padding:var(--spacing-sm)!important}.p-2{padding:var(--spacing-md)!important}.p-3{padding:var(--spacing-lg)!important}.d-none{display:none!important}.d-block{display:block!important}.d-flex{display:flex!important}.d-grid{display:grid!important}.flex-column{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.justify-center{justify-content:center!important}.justify-between{justify-content:space-between!important}.align-center{align-items:center!important}.gap-1{gap:var(--spacing-sm)!important}.gap-2{gap:var(--spacing-md)!important}.gap-3{gap:var(--spacing-lg)!important}.text-center{text-align:center!important}.text-right{text-align:right!important}.text-left{text-align:left!important}.text-sm{font-size:var(--font-sm)!important}.text-base{font-size:var(--font-base)!important}.text-lg{font-size:var(--font-lg)!important}.text-xl{font-size:var(--font-xl)!important}.font-bold{font-weight:700!important}.font-semibold{font-weight:600!important}.font-medium{font-weight:500!important}.text-primary{color:var(--color-primary)!important}.text-secondary{color:var(--color-secondary)!important}.text-success{color:var(--color-success)!important}.text-warning{color:var(--color-warning)!important}.text-error{color:var(--color-error)!important}.visible-mobile{display:block!important}.hidden-mobile{display:none!important}@media(min-width:768px){.visible-mobile{display:none!important}.hidden-mobile{display:block!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:#fff;padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;z-index:9999}@media(max-width:768px){.enterprise-toolbar{flex-direction:column;align-items:stretch;gap:var(--spacing-md);padding:16px}.enterprise-toolbar__actions{width:100%;display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory}.enterprise-toolbar__actions::-webkit-scrollbar{display:none}.enterprise-toolbar__actions .toolbar-btn{flex:0 0 auto;min-width:44px;scroll-snap-align:start}.enterprise-toolbar__hint{text-align:center;font-size:var(--font-sm);line-height:1.4}.channel-row{grid-template-columns:1fr;gap:6px}.channel-input-wrapper{flex-direction:column;align-items:stretch;gap:8px}.channel-input-wrapper input,.channel-input-wrapper .percentage-display{width:100%}.channel-input-wrapper .percentage-display{text-align:left;font-size:var(--font-sm)}.action-buttons{flex-direction:column}.action-buttons>*{width:100%}.integration-button-row{flex-direction:column;gap:12px}.integration-button-row .btn-integration{width:100%;justify-content:center}}@media(max-width:480px){.enterprise-toolbar__actions{gap:8px}.enterprise-toolbar__actions .toolbar-btn,.action-buttons>*{font-size:var(--font-sm);padding:10px}}.will-transform{will-change:transform}.will-opacity{will-change:opacity}.contain-layout{contain:layout}.contain-paint{contain:paint}.gpu-accelerate{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}@supports (padding: max(0px)){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.safe-top{padding-top:max(var(--spacing-md),env(safe-area-inset-top))}.safe-bottom{padding-bottom:max(var(--spacing-md),env(safe-area-inset-bottom))}}@media print{.no-print,.mobile-nav,.btn,.modal{display:none!important}body{font-size:12pt;line-height:1.5;color:#000;background:#fff}.card{page-break-inside:avoid}}.hamburger{display:none;position:fixed;top:12px;left:12px;z-index:10001;width:44px;height:44px;padding:0;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:8px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.08);transition:all .2s ease;align-items:center;justify-content:center;flex-direction:column;gap:4px}.hamburger:active{transform:scale(.95)}.hamburger span{display:block;width:20px;height:2px;background:#1a1a1a;border-radius:2px;transition:all .3s ease}body.is-nav-open .hamburger span:nth-child(1){transform:translateY(6px) rotate(45deg)}body.is-nav-open .hamburger span:nth-child(2){opacity:0}body.is-nav-open .hamburger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}@media(max-width:768px){.hamburger{display:flex!important}.sidebar{position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:85vw!important;max-width:320px!important;height:100vh!important;height:calc(var(--vh, 1vh) * 100)!important;background:#fff!important;box-shadow:2px 0 16px rgba(0,0,0,.1)!important;transform:translate(-110%)!important;transition:transform .3s cubic-bezier(.4,0,.2,1)!important;z-index:10000!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}.sidebar.is-open{transform:translate(0)!important}.sidebar__close{display:flex!important;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:none;cursor:pointer;color:#666;border-radius:6px;transition:all .2s ease}.sidebar__close:hover{background:rgba(0,0,0,.05);color:#1a1a1a}.sidebar__close:active{transform:scale(.95)}.sidebar__brand{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.08)}.app-content{transition:transform .3s cubic-bezier(.4,0,.2,1)}body.is-nav-open .app-content{transform:translate(0)}}.app-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:9999;opacity:0;transition:opacity .3s ease;-webkit-tap-highlight-color:transparent}.app-overlay.active{display:block!important;opacity:1}body.is-nav-open{overflow:hidden;position:fixed;width:100%;height:100vh}@media(max-width:768px){.nav-link,.sidebar__section-title,button,a{min-height:44px;display:flex;align-items:center;padding:12px 16px}.nav-link{padding:14px 20px;gap:12px}.nav-link svg{width:20px;height:20px;flex-shrink:0}}.hamburger:focus,.sidebar__close:focus,.nav-link:focus{outline:3px solid #0066cc;outline-offset:2px}.skip-link{position:absolute;top:-40px;left:0;background:#000;color:#fff;padding:8px 16px;z-index:100000;text-decoration:none;border-radius:0 0 4px}@media(max-width:768px){input,select,textarea{font-size:16px!important}html,body{overflow-x:hidden;max-width:100vw}.sidebar{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.hamburger{top:calc(12px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left))}}@media(min-width:768px){.hamburger,.app-overlay,.sidebar__close{display:none!important}.sidebar{position:static!important;transform:none!important;width:260px!important;height:100vh!important}body.is-nav-open{overflow:auto;position:static;width:auto;height:auto}}@media(prefers-reduced-motion:reduce){.sidebar,.app-overlay,.hamburger,.hamburger span,.app-content{transition:none!important}}@media(max-width:768px){.sidebar__sections{padding:8px 0}.sidebar__section{margin-bottom:24px}.sidebar__section-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:8px 20px;margin:0}.nav-link{color:#1a1a1a;text-decoration:none;font-weight:500;border-radius:0;margin:0;border-left:3px solid transparent;transition:all .15s ease}.nav-link:hover,.nav-link:focus{background:rgba(0,102,204,.08);border-left-color:#06c}.nav-link.active{background:rgba(0,102,204,.12);border-left-color:#06c;color:#06c}.sidebar__search{margin:12px 16px;padding:10px 14px;background:#f5f5f5;border-radius:8px;border:1px solid transparent;transition:all .2s ease}.sidebar__search:focus-within{background:#fff;border-color:#06c;box-shadow:0 0 0 3px rgba(0,102,204,.1)}.sidebar__search input{background:transparent;border:none;outline:none;width:100%;font-size:14px}}.sidebar:not(.is-open),.app-overlay:not(.active){will-change:auto}.hamburger{display:none;position:fixed;top:16px;left:16px;z-index:10001;width:44px;height:44px;padding:8px;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:8px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.08);flex-direction:column;align-items:center;justify-content:center;gap:5px;transition:all .2s cubic-bezier(.4,0,.2,1)}.hamburger:hover{background:#f8f9fa;box-shadow:0 4px 12px rgba(0,0,0,.12)}.hamburger:active{transform:scale(.96)}.hamburger:focus{outline:2px solid #0066cc;outline-offset:2px}.hamburger span{display:block;width:22px;height:2px;background:#1a1a1a;border-radius:2px;transition:all .3s cubic-bezier(.4,0,.2,1)}.menu-is-open .hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-is-open .hamburger span:nth-child(2){opacity:0;transform:translate(-10px)}.menu-is-open .hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.sidebar{position:static;width:260px;height:100vh}.app-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:9999;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.app-overlay.is-visible{display:block;opacity:1}@media(max-width:768px){.hamburger{display:flex!important}.sidebar{position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:85vw!important;max-width:320px!important;height:100vh!important;background:#fff!important;box-shadow:2px 0 16px rgba(0,0,0,.1)!important;transform:translate(-100%)!important;transition:transform .3s cubic-bezier(.4,0,.2,1)!important;z-index:10000!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}.sidebar.is-open{transform:translate(0)!important}.menu-is-open{overflow:hidden!important;position:fixed!important;width:100%!important}.sidebar__close{display:flex!important;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:none;cursor:pointer;color:#666;border-radius:6px;transition:all .2s ease}.sidebar__close:hover{background:rgba(0,0,0,.05);color:#1a1a1a}.sidebar__close:focus{outline:2px solid #0066cc;outline-offset:2px}}@media(min-width:768px){.hamburger,.app-overlay,.sidebar__close{display:none!important}.sidebar{position:static!important;transform:none!important;width:260px!important}.menu-is-open{overflow:auto!important;position:static!important;width:auto!important}}.skip-link{position:absolute;top:-40px;left:0;background:#000;color:#fff;padding:8px 16px;z-index:100000;text-decoration:none}.skip-link:focus{top:0}@media(prefers-reduced-motion:reduce){.hamburger,.hamburger span,.sidebar,.app-overlay{transition:none!important}}.sidebar,.app-overlay,.hamburger span{will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.sidebar:not(.is-open){will-change:auto}.app-overlay:not(.is-visible){will-change:auto}@media(max-width:768px){form{width:100%}.form-group{margin-bottom:24px}.form-label{display:block;font-size:14px;font-weight:600;margin-bottom:8px;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .form-label{color:#fff}.form-label-required:after{content:" *";color:var(--error, #dc2626)}.form-help-text{font-size:12px;color:var(--text-secondary, #666);margin-top:4px;line-height:1.4}input[type=text],input[type=email],input[type=tel],input[type=url],input[type=password],input[type=search],input[type=number],input[type=date],input[type=time],select,textarea{min-height:44px!important;font-size:16px!important;padding:12px!important;border-radius:8px;border:1px solid var(--neutral-300, #d1d5db);width:100%;background:#fff;color:var(--text-primary, #1a1a1a);font-family:inherit;transition:all .2s ease;-webkit-appearance:none;appearance:none;touch-action:manipulation}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:#1a1a1a;border-color:#333;color:#fff}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-500, #667eea);box-shadow:0 0 0 3px rgba(102,126,234,.1)}input.valid,select.valid,textarea.valid{border-color:var(--success, #10b981)}input.invalid,select.invalid,textarea.invalid{border-color:var(--error, #dc2626);box-shadow:0 0 0 3px rgba(220,38,38,.1)}input:disabled,select:disabled,textarea:disabled{opacity:.6;background:var(--neutral-100, #f3f4f6);cursor:not-allowed}input[type=date]{position:relative;padding-right:40px}.mobile-date-input::-webkit-calendar-picker-indicator{opacity:0;position:absolute;right:0;width:44px;height:44px;cursor:pointer}.date-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;font-size:18px}.number-stepper-wrapper{display:flex;align-items:center;gap:8px}.number-stepper-btn{flex-shrink:0;width:44px;height:44px;border-radius:8px;background:var(--primary-100, #e0e7ff);border:1px solid var(--primary-200, #c7d2fe);font-size:24px;font-weight:600;color:var(--primary-700, #4338ca);cursor:pointer;touch-action:manipulation;transition:all .2s ease;display:flex;align-items:center;justify-content:center}[data-theme=dark] .number-stepper-btn{background:rgba(102,126,234,.2);border-color:rgba(102,126,234,.3);color:#818cf8}.number-stepper-btn:active{transform:scale(.95);background:var(--primary-200, #c7d2fe)}.number-stepper-wrapper input[type=number]{text-align:center;font-weight:600;-moz-appearance:textfield}.number-stepper-wrapper input[type=number]::-webkit-outer-spin-button,.number-stepper-wrapper input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.select-wrapper{position:relative}select{padding-right:40px!important;cursor:pointer}.select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;font-size:12px;color:var(--text-secondary, #666);transition:transform .2s ease}select:focus+.select-icon{transform:translateY(-50%) rotate(180deg)}.input-clear-wrapper{position:relative}.input-clear-wrapper input{padding-right:40px!important}.input-clear-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;background:rgba(128,128,128,.2);border:none;font-size:14px;cursor:pointer;display:none;align-items:center;justify-content:center;transition:all .2s ease;color:var(--text-secondary, #666)}.input-clear-btn:active{transform:translateY(-50%) scale(.9);background:rgba(128,128,128,.3)}textarea{min-height:100px;resize:vertical;line-height:1.5;font-family:inherit}textarea.auto-expand{resize:none;overflow:hidden}.character-counter{font-size:12px;color:var(--text-secondary, #666);margin-top:4px;text-align:right;font-weight:500}.character-counter.warning{color:var(--warning, #f59e0b)}.character-counter.error{color:var(--error, #dc2626)}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:44px;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-track{height:6px;background:var(--neutral-200, #e5e7eb);border-radius:3px}input[type=range]::-moz-range-track{height:6px;background:var(--neutral-200, #e5e7eb);border-radius:3px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;background:var(--primary-500, #667eea);border-radius:50%;margin-top:-11px;box-shadow:0 2px 6px rgba(0,0,0,.2);cursor:pointer;transition:all .2s ease}input[type=range]::-moz-range-thumb{width:28px;height:28px;background:var(--primary-500, #667eea);border-radius:50%;border:none;box-shadow:0 2px 6px rgba(0,0,0,.2);cursor:pointer;transition:all .2s ease}input[type=range]:active::-webkit-slider-thumb{width:32px;height:32px;margin-top:-13px}input[type=range]:active::-moz-range-thumb{width:32px;height:32px}.slider-value-display{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.slider-label{font-size:14px;font-weight:500;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .slider-label{color:#fff}.slider-value{font-size:16px;font-weight:600;color:var(--primary-600, #4f46e5);min-width:60px;text-align:right}.slider-markers{display:flex;justify-content:space-between;margin-top:4px;font-size:11px;color:var(--text-secondary, #666)}.autocomplete-wrapper{position:relative}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--neutral-300, #d1d5db);border-top:none;border-radius:0 0 8px 8px;max-height:200px;overflow-y:auto;z-index:1000;box-shadow:0 4px 12px rgba(0,0,0,.15);-webkit-overflow-scrolling:touch}[data-theme=dark] .autocomplete-dropdown{background:#1a1a1a;border-color:#333}.autocomplete-item{padding:12px;cursor:pointer;border-bottom:1px solid var(--neutral-200, #e5e7eb);transition:background .15s ease;font-size:16px}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:active{background:var(--primary-50, #f5f7ff)}[data-theme=dark] .autocomplete-item{border-bottom-color:#333}[data-theme=dark] .autocomplete-item:active{background:rgba(102,126,234,.1)}.form-error{color:var(--error, #dc2626);font-size:12px;margin-top:4px;font-weight:500;display:flex;align-items:center;gap:4px}.form-error:before{content:"⚠";font-size:14px}.form-success{color:var(--success, #10b981);font-size:12px;margin-top:4px;font-weight:500;display:flex;align-items:center;gap:4px}.form-success:before{content:"✓";font-size:14px}input[type=checkbox],input[type=radio]{width:24px;height:24px;min-height:24px;cursor:pointer;accent-color:var(--primary-500, #667eea)}.checkbox-wrapper,.radio-wrapper{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;cursor:pointer}.checkbox-wrapper label,.radio-wrapper label{cursor:pointer;font-size:16px;user-select:none;flex:1}button[type=submit],button.form-submit,input[type=submit]{width:100%;min-height:48px;padding:14px 24px;font-size:16px;font-weight:600;border-radius:8px;border:none;background:var(--primary-500, #667eea);color:#fff;cursor:pointer;transition:all .2s ease;touch-action:manipulation;box-shadow:0 2px 4px rgba(102,126,234,.2)}button[type=submit]:active,button.form-submit:active,input[type=submit]:active{transform:scale(.98);box-shadow:0 1px 2px rgba(102,126,234,.2)}button[type=submit]:disabled,button.form-submit:disabled,input[type=submit]:disabled{opacity:.5;cursor:not-allowed;transform:none}button[type=button],button.form-secondary{width:100%;min-height:48px;padding:14px 24px;font-size:16px;font-weight:600;border-radius:8px;border:1px solid var(--neutral-300, #d1d5db);background:#fff;color:var(--text-primary, #1a1a1a);cursor:pointer;transition:all .2s ease;touch-action:manipulation}[data-theme=dark] button[type=button],[data-theme=dark] button.form-secondary{background:#1a1a1a;border-color:#333;color:#fff}button[type=button]:active,button.form-secondary:active{transform:scale(.98);background:var(--neutral-50, #f9fafb)}.form-button-group{display:flex;gap:12px;margin-top:24px}.form-button-group button{flex:1}.form-row{display:grid;grid-template-columns:1fr;gap:16px}.form-row.two-col{grid-template-columns:1fr 1fr}.form-inline-group{display:flex;gap:8px;align-items:center}.form-inline-group input{flex:1}.form-inline-group .form-addon{padding:12px;background:var(--neutral-100, #f3f4f6);border:1px solid var(--neutral-300, #d1d5db);border-radius:8px;font-size:16px;white-space:nowrap}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:3px solid var(--primary-500, #667eea);outline-offset:2px}.sr-only{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}button.loading{position:relative;color:transparent;pointer-events:none}button.loading:after{content:"";position:absolute;width:20px;height:20px;top:50%;left:50%;margin-left:-10px;margin-top:-10px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:button-spin .6s linear infinite}@keyframes button-spin{to{transform:rotate(360deg)}}@media(max-width:480px){.form-row.two-col{grid-template-columns:1fr}.form-button-group{flex-direction:column}.form-inline-group{flex-direction:column;align-items:stretch}}}[data-theme=dark] .form-help-text{color:#999}[data-theme=dark] input[type=range]::-webkit-slider-track,[data-theme=dark] input[type=range]::-moz-range-track{background:#333}[data-theme=dark] .slider-markers{color:#999}[data-theme=dark] .form-addon{background:#2a2a2a;border-color:#333;color:#fff}@media print{input[type=range],.number-stepper-btn,.input-clear-btn,.autocomplete-dropdown,.character-counter{display:none!important}input,select,textarea{border:1px solid #000!important;background:#fff!important;color:#000!important}}@media(max-width:768px){.chart-gesture-container{position:relative;touch-action:none;-webkit-user-select:none;user-select:none;overflow:hidden;border-radius:12px;background:rgba(255,255,255,.03);margin-bottom:16px}.chart-wrapper-mobile{position:relative;background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px rgba(0,0,0,.08);margin-bottom:16px}[data-theme=dark] .chart-wrapper-mobile{background:#1a1a1a;box-shadow:0 2px 8px rgba(0,0,0,.3)}.chart-legend-toggle{position:absolute;top:8px;right:8px;z-index:10;padding:6px 12px;background:rgba(255,255,255,.95);border:1px solid rgba(0,0,0,.1);border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;box-shadow:0 2px 4px rgba(0,0,0,.1);transition:all .2s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-theme=dark] .chart-legend-toggle{background:rgba(26,26,26,.95);border-color:rgba(255,255,255,.1);color:#fff}.chart-legend-toggle:active{transform:scale(.95);box-shadow:0 1px 2px rgba(0,0,0,.1)}.chart-gallery-container{position:relative;margin-bottom:24px}.chart-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;gap:16px;margin:0 -16px;padding:16px}.chart-gallery::-webkit-scrollbar{display:none}.chart-gallery-item{flex:0 0 calc(100vw - 48px);scroll-snap-align:center;border-radius:12px;background:rgba(255,255,255,.05);padding:16px;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:transform .2s ease}[data-theme=dark] .chart-gallery-item{background:rgba(255,255,255,.03);box-shadow:0 2px 8px rgba(0,0,0,.3)}.chart-gallery-item:active{transform:scale(.98)}.chart-gallery-indicators{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:12px;padding:8px 0}.gallery-indicator{width:8px;height:8px;border-radius:4px;background:rgba(128,128,128,.3);transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;touch-action:manipulation}.gallery-indicator.active{width:24px;background:var(--primary-500, #667eea)}.gallery-indicator:active{transform:scale(.9)}.chart-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;padding:40px 20px;text-align:center}.chart-loading-spinner{width:40px;height:40px;border:4px solid rgba(102,126,234,.1);border-top-color:var(--primary-500, #667eea);border-radius:50%;animation:chart-spin .8s linear infinite}@keyframes chart-spin{to{transform:rotate(360deg)}}.chart-loading-text{margin-top:16px;font-size:14px;color:var(--text-secondary, #666);font-weight:500}.chart-pinch-hint{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:rgba(0,0,0,.8);color:#fff;padding:8px 16px;border-radius:20px;font-size:11px;font-weight:500;opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:20}.chart-gesture-container:active .chart-pinch-hint{opacity:1}.chart-zoom-controls{position:absolute;bottom:16px;right:16px;display:flex;gap:8px;z-index:10}.chart-zoom-btn{width:36px;height:36px;background:rgba(255,255,255,.95);border:1px solid rgba(0,0,0,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.15);transition:all .2s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-theme=dark] .chart-zoom-btn{background:rgba(26,26,26,.95);border-color:rgba(255,255,255,.1);color:#fff}.chart-zoom-btn:active{transform:scale(.9);box-shadow:0 1px 3px rgba(0,0,0,.15)}.chart-fullscreen{position:fixed!important;top:0;left:0;right:0;bottom:0;z-index:9999;background:#fff;padding:60px 16px 16px;overflow:auto}[data-theme=dark] .chart-fullscreen{background:#0a0e1a}.chart-fullscreen-close{position:fixed;top:16px;right:16px;z-index:10000;width:40px;height:40px;background:rgba(0,0,0,.8);color:#fff;border:none;border-radius:50%;font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.3)}.chart-fullscreen-close:active{transform:scale(.9)}.plotly-graph-div{width:100%!important;max-width:100%!important;height:auto!important;min-height:300px}.plotly .main-svg{border-radius:8px}.plotly .modebar{display:none!important}.plotly .hoverlayer .hovertext{font-size:11px!important;padding:6px 8px!important}.chart-title-mobile{font-size:16px;font-weight:600;margin-bottom:12px;color:var(--text-primary, #1a1a1a);display:flex;align-items:center;justify-content:space-between}[data-theme=dark] .chart-title-mobile{color:#fff}.chart-subtitle-mobile{font-size:12px;color:var(--text-secondary, #666);margin-top:4px;font-weight:400}.canvas-grid,.chart-grid,.analytics-charts{display:flex;flex-direction:column;gap:16px}.canvas-module,.chart-card{width:100%!important;max-width:100%!important;grid-column:span 1!important}.chart-data-toggle{margin-top:12px;text-align:center}.chart-data-toggle-btn{padding:8px 16px;background:rgba(102,126,234,.1);color:var(--primary-600, #5a67d8);border:1px solid rgba(102,126,234,.2);border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.chart-data-toggle-btn:active{transform:scale(.95);background:rgba(102,126,234,.15)}.chart-data-table{margin-top:12px;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px;background:rgba(255,255,255,.05);padding:12px}@media(max-width:768px)and (prefers-reduced-motion:reduce){.chart-gesture-container,.chart-gallery-item,.gallery-indicator,.chart-zoom-btn{transition:none!important;animation:none!important}}.chart-gesture-container,.chart-gallery,.chart-fullscreen{will-change:transform;transform:translateZ(0);-webkit-transform:translateZ(0)}.chart-legend-toggle:focus-visible,.chart-zoom-btn:focus-visible,.gallery-indicator:focus-visible{outline:3px solid var(--primary-500, #667eea);outline-offset:2px}.chart-sr-only{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.chart-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;padding:40px 20px;text-align:center;background:rgba(239,68,68,.05);border:1px solid rgba(239,68,68,.2);border-radius:12px}.chart-error-icon{font-size:48px;margin-bottom:16px;opacity:.6}.chart-error-text{font-size:14px;color:#dc2626;font-weight:500;margin-bottom:8px}.chart-error-retry{margin-top:16px;padding:10px 20px;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.chart-error-retry:active{transform:scale(.95);background:#b91c1c}}@media(max-width:768px)and (orientation:landscape){.chart-gallery-item{flex:0 0 calc(50vw - 24px)}.plotly-graph-div{min-height:250px}.chart-zoom-controls{bottom:8px;right:8px}}@media(min-width:768px)and (max-width:1024px){.chart-gallery-item{flex:0 0 calc(50vw - 32px)}.canvas-grid,.chart-grid{grid-template-columns:repeat(2,1fr)}.plotly-graph-div{min-height:350px}}[data-theme=dark] .chart-loading-text{color:#999}[data-theme=dark] .chart-data-toggle-btn{background:rgba(102,126,234,.2);color:#818cf8;border-color:rgba(102,126,234,.3)}[data-theme=dark] .chart-error{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3)}[data-theme=dark] .chart-error-text{color:#f87171}@media print{.chart-legend-toggle,.chart-zoom-controls,.chart-gallery-indicators,.chart-fullscreen-close{display:none!important}.chart-gallery{display:block!important;overflow:visible!important}.chart-gallery-item{page-break-inside:avoid;margin-bottom:20px}}.hs-pull-refresh{position:absolute;top:-60px;left:50%;transform:translate(-50%);width:40px;height:40px;z-index:10003}.hs-pull-indicator{width:100%;height:100%;border:3px solid #E5E7EB;border-top-color:#ff7a59;border-radius:50%;opacity:0;transition:opacity .3s ease}.hs-pull-refresh.active .hs-pull-indicator{animation:spin 1s linear infinite;opacity:1}@keyframes spin{to{transform:rotate(360deg)}}.hs-fab{position:fixed;bottom:88px;right:16px;width:56px;height:56px;border-radius:50%;background:#ff7a59;color:#fff;border:none;box-shadow:0 4px 12px rgba(255,122,89,.4);display:flex;align-items:center;justify-content:center;z-index:999;cursor:pointer;transition:all .3s ease;-webkit-tap-highlight-color:transparent}.hs-fab:hover{transform:scale(1.1);box-shadow:0 6px 16px rgba(255,122,89,.5)}.hs-fab:active{transform:scale(.95)}.hs-fab.hidden{transform:translateY(150px);opacity:0}.hs-fab svg{width:24px;height:24px}.hs-mobile-container{position:relative;min-height:100vh;padding-bottom:80px;transition:transform .3s ease}.hs-mobile-grid{display:grid;grid-template-columns:1fr;gap:12px;padding:16px 16px 72px}@media(min-width:480px){.hs-mobile-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){.hs-mobile-grid{grid-template-columns:repeat(3,1fr);gap:16px;padding:24px}.hs-bottom-nav{display:none}.hs-fab{bottom:24px}.hs-mobile-container{padding-bottom:24px}}:root{--hs-space-xs: 4px;--hs-space-sm: 8px;--hs-space-md: 16px;--hs-space-lg: 24px;--hs-space-xl: 32px;--hs-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--hs-orange: #FF7A59;--hs-blue: #00A4BD;--hs-navy: #2D3E50;--hs-gray-100: #F5F8FA;--hs-gray-200: #CBD6E2;--hs-green: #10B981;--hs-red: #EF4444;--safe-area-inset-top: env(safe-area-inset-top, 0);--safe-area-inset-bottom: env(safe-area-inset-bottom, 0)}.is-mobile{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.hs-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:768px){input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],input[type=number],textarea,select{font-size:16px!important}}.swipe-indicator{position:fixed;top:50%;transform:translateY(-50%);width:40px;height:40px;background:rgba(0,0,0,.5);border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s ease}.swipe-indicator.left{left:20px}.swipe-indicator.right{right:20px}.swipe-indicator.active{opacity:1}@keyframes longpress-scale{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}.longpress-active{animation:longpress-scale .3s ease}[data-theme=dark]{--hs-gray-100: #1F2937;--hs-gray-200: #4B5563;--hs-navy: #F9FAFB}[data-theme=dark] .hs-fab{background:#ff6842;box-shadow:0 4px 12px rgba(255,104,66,.4)}[data-theme=dark] .hs-skeleton{background:linear-gradient(90deg,#374151 25%,#4b5563,#374151 75%)}@media(prefers-reduced-motion:reduce){.hs-fab,.hs-pull-indicator,.hs-mobile-container,.swipe-indicator{transition:none!important;animation:none!important}}@media print{.hs-bottom-nav,.hs-fab,.hs-pull-refresh{display:none!important}}.hs-bottom-nav{position:fixed;bottom:0;left:0;right:0;height:64px;background:#fff;border-top:1px solid rgba(0,0,0,.08);display:none;justify-content:space-around;align-items:center;z-index:1000;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -2px 10px rgba(0,0,0,.05)}.hs-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 12px;color:#6b7280;text-decoration:none;font-size:11px;font-weight:500;transition:all .2s ease;position:relative;min-width:64px;-webkit-tap-highlight-color:transparent}.hs-nav-item svg{width:24px;height:24px;stroke-width:1.5;transition:all .2s ease}.hs-nav-item.active{color:#ff7a59}.hs-nav-item.active svg{transform:scale(1.1)}.hs-nav-item:active{transform:scale(.95);background:rgba(0,0,0,.03);border-radius:8px}.hs-nav-badge{position:absolute;top:6px;right:8px;background:#ef4444;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}@media(max-width:768px){.hs-bottom-nav{display:flex}.app-content{padding-bottom:80px!important}.sidebar{transform:translate(-110%)}}[data-theme=dark] .hs-bottom-nav{background:#1f2937;border-top-color:rgba(255,255,255,.1)}[data-theme=dark] .hs-nav-item{color:#9ca3af}[data-theme=dark] .hs-nav-item.active{color:#ff7a59}

/* High contrast fix for sidebar links */
.sidebar .nav-link { color: #ffffff !important; }
.sidebar .nav-link:hover { color: #ffffff !important; background-color: rgba(255, 255, 255, 0.1) !important; }
.sidebar .nav-link svg { color: #ffffff !important; }
