:root{--primary: #007AFF;--primary-dark: #0056CC;--primary-light: #5AC8FA;--primary-gradient: linear-gradient(135deg, #007AFF 0%, #5856D6 100%);--primary-gradient-hover: linear-gradient(135deg, #0056CC 0%, #4B48B8 100%);--accent-purple: #5856D6;--accent-pink: #FF2D55;--accent-orange: #FF9500;--accent-teal: #5AC8FA;--success: #34C759;--success-light: rgba(52, 199, 89, .12);--warning: #FF9500;--warning-light: rgba(255, 149, 0, .12);--danger: #FF3B30;--danger-light: rgba(255, 59, 48, .12);--info: #5AC8FA;--info-light: rgba(90, 200, 250, .12);--background: #F5F5F7;--background-secondary: #FFFFFF;--surface: #FFFFFF;--surface-elevated: #FFFFFF;--text: #1D1D1F;--text-secondary: #86868B;--text-tertiary: #AEAEB2;--border: rgba(0, 0, 0, .08);--border-strong: rgba(0, 0, 0, .12);--divider: rgba(0, 0, 0, .05);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .16);--shadow-glow: 0 0 20px rgba(0, 122, 255, .3);--shadow-inner: inset 0 1px 2px rgba(0, 0, 0, .06);--glass-bg: rgba(255, 255, 255, .72);--glass-bg-dark: rgba(255, 255, 255, .85);--glass-border: rgba(255, 255, 255, .5);--glass-blur: blur(20px);--glass-blur-strong: blur(40px);--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-full: 9999px;--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;--font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Inter", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", "Monaco", "Inconsolata", "Fira Code", monospace;--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .9375rem;--text-lg: 1.0625rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--font-regular: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.625;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--transition-spring: .4s cubic-bezier(.175, .885, .32, 1.275);--z-dropdown: 100;--z-sticky: 200;--z-modal-backdrop: 900;--z-modal: 1000;--z-toast: 2000}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-family);background:var(--background);color:var(--text);line-height:var(--leading-normal);font-size:var(--text-base);font-weight:var(--font-regular);overflow-x:hidden}::selection{background:var(--primary);color:#fff}.app-container{display:flex;min-height:100vh;background:var(--background)}.sidebar{width:260px;min-height:100vh;position:fixed;left:0;top:0;bottom:0;background:var(--glass-bg-dark);backdrop-filter:var(--glass-blur-strong);-webkit-backdrop-filter:var(--glass-blur-strong);border-right:1px solid var(--glass-border);padding:var(--space-6) 0;display:flex;flex-direction:column;z-index:var(--z-sticky);transition:transform var(--transition-slow)}.logo{padding:0 var(--space-6);margin-bottom:var(--space-8)}.logo img{max-width:180px;margin-bottom:var(--space-2);filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:transform var(--transition-base)}.logo img:hover{transform:scale(1.02)}.logo h1{font-size:var(--text-2xl);font-weight:var(--font-bold);background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}.logo p{font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--font-medium);margin-top:var(--space-1)}.nav-menu{list-style:none;padding:0 var(--space-3);flex:1}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-1);border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);font-size:var(--text-base);font-weight:var(--font-medium);border:none;background:transparent;width:100%;text-align:left;transition:all var(--transition-base);position:relative;overflow:hidden}.nav-item:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--primary-gradient);opacity:0;transition:opacity var(--transition-base);border-radius:var(--radius-md)}.nav-item:hover{color:var(--text);background:#0000000a}.nav-item.active{color:#fff;background:transparent}.nav-item.active:before{opacity:1}.nav-item.active .nav-icon,.nav-item.active span:not(.nav-icon){position:relative;z-index:1}.nav-icon{font-size:1.25rem;width:24px;text-align:center;flex-shrink:0}.nav-divider{padding:var(--space-4) var(--space-4) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);margin-top:var(--space-2)}.main-content{flex:1;margin-left:260px;padding:var(--space-8);min-height:100vh;background:var(--background)}.view-header{margin-bottom:var(--space-8)}.view-header h2{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text);letter-spacing:-.5px;margin-bottom:var(--space-2)}.view-header p{color:var(--text-secondary);font-size:var(--text-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);font-family:var(--font-family);cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden;white-space:nowrap}.btn:active{transform:scale(.97)}.btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:var(--shadow-sm),0 2px 8px #007aff40}.btn-primary:hover{background:var(--primary-gradient-hover);box-shadow:var(--shadow-md),0 4px 12px #007aff59;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0) scale(.98)}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:var(--background);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.btn-success{background:linear-gradient(135deg,#34c759,#30b350);color:#fff;box-shadow:var(--shadow-sm),0 2px 8px #34c75940}.btn-success:hover{background:linear-gradient(135deg,#30b350,#28a745);box-shadow:var(--shadow-md),0 4px 12px #34c75959;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#ff3b30,#e6352c);color:#fff;box-shadow:var(--shadow-sm),0 2px 8px #ff3b3040}.btn-danger:hover{background:linear-gradient(135deg,#e6352c,#cc2f28);box-shadow:var(--shadow-md),0 4px 12px #ff3b3059;transform:translateY(-1px)}.btn-warning{background:linear-gradient(135deg,#ff9500,#e68600);color:#fff;box-shadow:var(--shadow-sm),0 2px 8px #ff950040}.btn-warning:hover{background:linear-gradient(135deg,#e68600,#c70);box-shadow:var(--shadow-md),0 4px 12px #ff950059;transform:translateY(-1px)}.btn-won{background:linear-gradient(135deg,#34c759,#30b350)!important;color:#fff!important;box-shadow:var(--shadow-sm),0 2px 8px #34c75940}.btn-won:hover{background:linear-gradient(135deg,#30b350,#28a745)!important;box-shadow:var(--shadow-md),0 4px 12px #34c75959}.btn-lost{background:linear-gradient(135deg,#8e8e93,#636366)!important;color:#fff!important;box-shadow:var(--shadow-sm)}.btn-lost:hover{background:linear-gradient(135deg,#636366,#48484a)!important}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-sm)}.card{background:var(--surface);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm);border:1px solid var(--border);margin-bottom:var(--space-6);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}.card-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text);letter-spacing:-.3px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-5);margin-bottom:var(--space-8)}.stat-card{background:var(--surface);padding:var(--space-6);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:all var(--transition-base);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--primary-gradient);opacity:0;transition:opacity var(--transition-base)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-card:hover:before{opacity:1}.stat-value{font-size:var(--text-3xl);font-weight:var(--font-bold);background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--space-2);letter-spacing:-1px}.stat-label{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium)}.table-container{overflow-x:auto;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}thead{background:var(--background)}th{padding:var(--space-4);text-align:left;font-weight:var(--font-semibold);color:var(--text-secondary);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border)}td{padding:var(--space-4);border-bottom:1px solid var(--divider);color:var(--text);vertical-align:middle}tbody tr{transition:background var(--transition-fast)}tbody tr:hover{background:#007aff0a}tbody tr:last-child td{border-bottom:none}tbody tr.clickable-row{cursor:pointer}tbody tr.clickable-row:hover{background:#007aff14}.resizable-table{table-layout:fixed;width:100%}.resizable-table th{position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:50px}.resizable-table th.fixed-column{width:180px!important;min-width:180px;max-width:180px}.resizable-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resizable-table td.fixed-column{width:180px!important;min-width:180px;max-width:180px;overflow:visible}.resize-handle{position:absolute;right:0;top:0;bottom:0;width:6px;cursor:col-resize;background:transparent;z-index:10;transition:background var(--transition-fast)}.resize-handle:hover,.resize-handle.resizing{background:var(--primary)}.resizable-table.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.form-group{margin-bottom:var(--space-5)}.form-group-compact{margin-bottom:var(--space-3)}.form-label{display:block;margin-bottom:var(--space-2);font-weight:var(--font-medium);font-size:var(--text-sm);color:var(--text)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-3) var(--space-4);border:1.5px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--text-base);font-family:var(--font-family);background:var(--surface);color:var(--text);transition:all var(--transition-base);box-shadow:var(--shadow-inner)}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--text-tertiary)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #007aff1f,var(--shadow-inner)}.form-input::placeholder{color:var(--text-tertiary)}.quote-number-wrapper{position:relative}.quote-number-wrapper .form-input{width:100%;padding-right:24px}.quote-number-arrows{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:1px}.quote-arrow-btn{background:none;border:none;cursor:pointer;padding:0 3px;font-size:8px;line-height:1;height:12px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #6b7280);border-radius:2px}.quote-arrow-btn:hover{background:var(--bg-hover, #e5e7eb);color:var(--text-primary, #1f2937)}.form-textarea{resize:vertical;min-height:100px;line-height:var(--leading-relaxed)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.form-row-compact{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}.modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:var(--z-modal-backdrop);align-items:center;justify-content:center;padding:var(--space-4);animation:fadeIn var(--transition-base) ease-out}.modal.active{display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--surface);border-radius:var(--radius-2xl);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideUp var(--transition-slow) cubic-bezier(.175,.885,.32,1.275);border:1px solid var(--border)}@keyframes slideUp{0%{transform:translateY(30px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.modal-header{padding:var(--space-6);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;background:var(--background);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.modal-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text);letter-spacing:-.3px}.modal-close{background:var(--background);border:1px solid var(--border);font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:all var(--transition-fast)}.modal-close:hover{background:var(--danger-light);border-color:var(--danger);color:var(--danger);transform:rotate(90deg)}.modal-body{padding:var(--space-6)}.modal-footer{padding:var(--space-6);border-top:1px solid var(--border);display:flex;gap:var(--space-3);justify-content:flex-end;background:var(--background);border-radius:0 0 var(--radius-2xl) var(--radius-2xl)}.confirm-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:var(--z-toast);align-items:center;justify-content:center;padding:var(--space-4)}.confirm-modal.active{display:flex}.confirm-content{background:var(--surface);border-radius:var(--radius-2xl);max-width:400px;width:100%;box-shadow:var(--shadow-xl);animation:confirmBounce var(--transition-spring);overflow:hidden}@keyframes confirmBounce{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.confirm-body{padding:var(--space-8);text-align:center}.confirm-icon{width:64px;height:64px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-5);font-size:2rem}.confirm-icon.warning{background:linear-gradient(135deg,#fff3cd,#ffe69c);color:var(--warning);box-shadow:0 4px 16px #ff950033}.confirm-icon.danger{background:linear-gradient(135deg,#ffe5e5,#fcc);color:var(--danger);box-shadow:0 4px 16px #ff3b3033}.confirm-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text);margin-bottom:var(--space-2)}.confirm-message{color:var(--text-secondary);font-size:var(--text-base);line-height:var(--leading-relaxed)}.confirm-footer{display:flex;border-top:1px solid var(--border)}.confirm-btn{flex:1;padding:var(--space-4);border:none;font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:background var(--transition-fast);font-family:var(--font-family)}.confirm-btn-cancel{background:var(--surface);color:var(--text-secondary);border-right:1px solid var(--border)}.confirm-btn-cancel:hover{background:var(--background)}.confirm-btn-confirm{background:var(--surface);color:var(--danger)}.confirm-btn-confirm:hover{background:var(--danger-light)}.confirm-btn-confirm.primary{color:var(--primary)}.confirm-btn-confirm.primary:hover{background:#007aff14}.toast-container{position:fixed;top:var(--space-6);right:var(--space-6);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-3)}.toast{background:var(--surface);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:var(--space-3);min-width:320px;animation:toastSlideIn var(--transition-spring);border:1px solid var(--border)}@keyframes toastSlideIn{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{border-left:4px solid var(--success);background:linear-gradient(90deg,var(--success-light) 0%,var(--surface) 40%)}.toast-error{border-left:4px solid var(--danger);background:linear-gradient(90deg,var(--danger-light) 0%,var(--surface) 40%)}.toast-warning{border-left:4px solid var(--warning);background:linear-gradient(90deg,var(--warning-light) 0%,var(--surface) 40%)}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.02em;text-transform:capitalize}.badge-draft{background:#8e8e9326;color:#636366}.badge-sent{background:#007aff1f;color:#007aff}.badge-accepted{background:#34c7591f;color:#28a745;position:relative}.badge-accepted:before{content:"";width:6px;height:6px;background:#34c759;border-radius:var(--radius-full);margin-right:var(--space-2);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.badge-rejected{background:#ff3b301f;color:#dc3545}.stale-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:12px;font-weight:700;flex-shrink:0}.stale-badge.warning{background:#fbbf24;color:#78350f}.stale-badge.critical{background:#ef4444;color:#fff;animation:stalePulse 1.5s infinite}@keyframes stalePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.stale-leads-widget{border-left:3px solid #F59E0B}.stale-leads-widget .widget-title{color:#92400e}.search-bar{margin-bottom:var(--space-6)}.search-input{width:100%;max-width:400px;padding:var(--space-3) var(--space-5);padding-left:var(--space-10);border:1.5px solid var(--border);border-radius:var(--radius-full);font-size:var(--text-base);background:var(--surface);transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #007aff1f,var(--shadow-md)}.customer-tabs{display:flex;gap:var(--space-1);padding:var(--space-1);background:var(--background);border-radius:var(--radius-lg);margin-bottom:var(--space-6)}.customer-tab{flex:1;padding:var(--space-3) var(--space-5);border:none;background:transparent;cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--transition-base)}.customer-tab:hover{color:var(--text);background:#0000000a}.customer-tab.active{color:#fff;background:var(--primary-gradient);box-shadow:var(--shadow-sm)}.quote-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-5);flex-wrap:wrap}.quote-tab{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1.5px solid var(--border);background:var(--surface);color:var(--text-secondary);border-radius:var(--radius-full);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-base)}.quote-tab:hover{border-color:var(--primary);color:var(--primary);background:#007aff0a}.quote-tab.active{background:var(--primary-gradient);color:#fff;border-color:transparent;box-shadow:var(--shadow-sm),0 2px 8px #007aff40}.quote-tab-sent.active{background:linear-gradient(135deg,#ff9500,#ff8c00);box-shadow:var(--shadow-sm),0 2px 8px #ff950040}.quote-tab-won.active{background:linear-gradient(135deg,#34c759,#30b350);box-shadow:var(--shadow-sm),0 2px 8px #34c75940}.quote-tab-lost.active{background:linear-gradient(135deg,#8e8e93,#636366)}.quote-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 var(--space-2);background:#00000014;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-bold)}.quote-tab.active .quote-tab-count{background:#ffffff40}.sent-summary-bar{display:flex;gap:2rem;padding:1rem 1.5rem;background:var(--bg-secondary, #f8f9fa);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;margin-bottom:1rem}.sent-summary-item{display:flex;flex-direction:column;gap:.25rem}.sent-summary-label{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-secondary, #64748b);letter-spacing:.05em}.sent-summary-value{font-size:1.25rem;font-weight:700;color:var(--text-primary, #1e293b)}.sent-summary-value.commission{color:var(--success-color, #16a34a)}.empty-state{text-align:center;padding:var(--space-16) var(--space-8);color:var(--text-secondary)}.empty-state-icon{font-size:4rem;margin-bottom:var(--space-5);opacity:.6}.action-buttons{display:flex;gap:var(--space-2)}.quote-summary{background:linear-gradient(135deg,var(--background) 0%,rgba(0,122,255,.04) 100%);padding:var(--space-6);border-radius:var(--radius-lg);margin-top:var(--space-6);border:1px solid var(--border)}.summary-row{display:flex;justify-content:space-between;padding:var(--space-3) 0;font-size:var(--text-base)}.summary-row.total{border-top:2px solid var(--primary);margin-top:var(--space-3);padding-top:var(--space-4);font-size:var(--text-xl);font-weight:var(--font-bold);background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.line-item-row{display:grid;grid-template-columns:minmax(280px,1fr) 65px 85px 95px 36px;gap:var(--space-3);align-items:start;padding:var(--space-3);background:var(--background);border-radius:var(--radius-md);margin-bottom:var(--space-2);border:1px solid var(--border);transition:all var(--transition-fast)}.line-item-row:hover{border-color:var(--primary);box-shadow:var(--shadow-sm)}.line-item-input{width:100%;box-sizing:border-box;padding:var(--space-3);border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm);transition:all var(--transition-fast)}.line-item-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #007aff1a}.section-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:var(--space-4);background:var(--primary-gradient);color:#fff;border-radius:var(--radius-md);margin-bottom:var(--space-3);border:none;width:100%;transition:all var(--transition-base)}.section-header:hover{transform:translateY(-1px);box-shadow:var(--shadow-md),0 4px 12px #007aff40}.section-header h4{margin:0;font-size:var(--text-base);font-weight:var(--font-semibold);display:flex;align-items:center;gap:var(--space-2)}.section-toggle{font-size:1.2rem;transition:transform var(--transition-base)}.section-header.collapsed .section-toggle{transform:rotate(-90deg)}.section-content{max-height:2000px;overflow:visible;transition:max-height var(--transition-slow),opacity var(--transition-base);opacity:1}.section-content.collapsed{max-height:0;opacity:0}.reinstatement-checkbox-row{padding:.75rem 0;border-bottom:1px solid var(--border);margin-bottom:.75rem}.reinstatement-checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:600;font-size:var(--text-sm);color:var(--text)}.reinstatement-checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#10B981;cursor:pointer}.reinstatement-config{background:var(--background);border:1.5px solid var(--border);border-radius:var(--radius-md);padding:1rem;margin-bottom:1rem}.reinstatement-config-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:.75rem}.reinstatement-config-field .form-label{font-size:.75rem;margin-bottom:.25rem}.reinstatement-config-field .form-input{width:100%;box-sizing:border-box}.reinstatement-modules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.4rem}.reinstatement-module-checkbox{display:flex;align-items:center;gap:.4rem;padding:.35rem .5rem;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);transition:background var(--transition-fast)}.reinstatement-module-checkbox:hover{background:var(--hover-bg)}.reinstatement-module-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#10B981;cursor:pointer;flex-shrink:0}.reinstatement-module-name{flex:1;color:var(--text)}.reinstatement-module-price{color:var(--text-secondary);font-size:.75rem;white-space:nowrap}.reinstatement-section{border-radius:var(--radius-md);padding:.75rem;margin-bottom:.75rem}.reinstatement-section-back{border-left:4px solid #ef4444;background:#ef444408}.reinstatement-section-forward{border-left:4px solid #10b981;background:#10b98108}.reinstatement-section-title{margin:0 0 .5rem;font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.reinstatement-section-title-back{color:#ef4444}.reinstatement-section-title-forward{color:#10b981}.sticky-summary{position:sticky;bottom:0;background:var(--glass-bg-dark);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--border);padding:var(--space-4) var(--space-6);margin:var(--space-4) calc(-1 * var(--space-6)) calc(-1 * var(--space-6));box-shadow:0 -8px 32px #0000001a;display:grid;grid-template-columns:1fr auto auto;gap:var(--space-6);align-items:center;border-radius:0 0 var(--radius-xl) var(--radius-xl)}.sticky-summary .summary-totals{display:flex;gap:var(--space-8);font-size:var(--text-sm)}.sticky-summary .summary-totals .total-item{display:flex;flex-direction:column}.sticky-summary .summary-totals .total-label{color:var(--text-secondary);font-size:var(--text-xs);text-transform:uppercase;font-weight:var(--font-semibold);letter-spacing:.05em}.sticky-summary .summary-totals .total-value{font-weight:var(--font-semibold);color:var(--text);font-size:var(--text-lg)}.sticky-summary .summary-totals .total-value.grand-total{font-size:var(--text-2xl);font-weight:var(--font-bold);background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sticky-summary .summary-actions{display:flex;gap:var(--space-3)}.quick-add-container{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-4);background:#007aff0a;border-radius:var(--radius-md);border:1px dashed var(--border)}.quick-add-row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.quick-add-btn{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);font-weight:var(--font-medium);color:var(--text-secondary)}.quick-add-btn:hover{background:var(--primary-gradient);color:#fff;border-color:transparent;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.quick-add-label{font-size:var(--text-xs);color:var(--text-tertiary);font-weight:var(--font-medium);align-self:center}.quick-add-pair{display:inline-flex;margin-right:.75rem;border-radius:var(--radius-sm);overflow:hidden}.quick-add-pair .quick-add-btn{margin-right:0;border-radius:0}.quick-add-pair .quick-add-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:1px solid rgba(0,0,0,.1)}.quick-add-pair .quick-add-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.quick-add-pair .quick-add-btn:only-child{border-radius:var(--radius-sm)}.quick-add-perpetual{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border-color:transparent}.quick-add-perpetual:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);transform:translateY(-1px)}.quick-add-annual{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:transparent}.quick-add-annual:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px)}.quick-add-service,.quick-add-training{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none}.quick-add-service:hover,.quick-add-training:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf666}.autocomplete-container{position:relative;width:100%;z-index:100}.autocomplete-input{width:100%;box-sizing:border-box;padding:var(--space-3);border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);transition:all var(--transition-base)}.autocomplete-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #007aff1a}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;max-height:300px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-top:var(--space-2);box-shadow:var(--shadow-lg);z-index:99999;display:none;scroll-behavior:smooth}.autocomplete-dropdown.active{display:block;animation:dropdownFade var(--transition-fast) ease-out}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.autocomplete-item{padding:var(--space-4);cursor:pointer;border-bottom:1px solid var(--divider);transition:background var(--transition-fast)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background:#007aff0f}.autocomplete-item.selected,.autocomplete-item.highlighted{background:#007aff1a;outline:2px solid var(--primary);outline-offset:-2px;border-radius:var(--radius-md)}.autocomplete-item-name{font-weight:var(--font-semibold);color:var(--text);margin-bottom:var(--space-1);white-space:normal;word-wrap:break-word}.autocomplete-item-desc{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-normal)}.autocomplete-item-price{font-size:var(--text-sm);color:var(--primary);font-weight:var(--font-semibold);margin-top:var(--space-1)}.autocomplete-item mark{background:#007aff33;color:inherit;padding:0 2px;border-radius:2px}.item-description{font-size:var(--text-xs);color:var(--text-secondary);margin-top:var(--space-1);line-height:var(--leading-normal)}.filters-row{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-4);align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:var(--space-2)}.filter-label{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;font-weight:var(--font-semibold);letter-spacing:.05em}.filter-select,.filter-input{padding:var(--space-2) var(--space-3);border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);min-width:160px;background:var(--surface);transition:all var(--transition-fast)}.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #007aff1a}.filters-bar{display:flex;gap:var(--space-4);align-items:center;flex-wrap:wrap;padding:var(--space-4);background:var(--background);border-radius:var(--radius-lg);margin-bottom:var(--space-4);border:1px solid var(--border)}.filters-bar .filter-group{flex-direction:row;align-items:center}.filters-bar .filter-group label{font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap;font-weight:var(--font-medium)}.filter-count{font-size:var(--text-xs);color:var(--text-secondary);margin-left:auto;padding:var(--space-1) var(--space-2);background:var(--surface);border-radius:var(--radius-sm);font-weight:var(--font-medium)}.product-tags-container{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-2)}.product-tag{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--primary-gradient);color:#fff;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium)}.product-tag-remove{cursor:pointer;opacity:.8;transition:opacity var(--transition-fast)}.product-tag-remove:hover{opacity:1}.product-bubbles-container{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.product-bubble{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#007aff1a;border:1px solid rgba(0,122,255,.2);color:var(--primary);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-fast)}.product-bubble:hover{background:#007aff26;border-color:#007aff4d}.product-bubble-remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;background:#007aff26;border:none;border-radius:var(--radius-full);color:var(--primary);font-size:1rem;cursor:pointer;transition:all var(--transition-fast);padding:0}.product-bubble-remove:hover{background:var(--danger-light);color:var(--danger)}.type-toggle-container{display:flex;flex-wrap:wrap;gap:var(--space-1)}.type-toggle-bubble{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);background:#0000000a;border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.type-toggle-bubble:hover{background:#007aff14;border-color:#007aff33;color:var(--primary)}.type-toggle-bubble.active{background:#007aff1f;border-color:#007aff4d;color:var(--primary)}.type-display-container{display:flex;flex-wrap:wrap;gap:var(--space-1)}.type-display-bubble{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);background:#007aff1a;border:1px solid rgba(0,122,255,.2);color:var(--primary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium)}.product-add-container{position:relative}.product-dropdown{position:absolute;top:100%;left:0;right:0;max-height:250px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-top:var(--space-2);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown)}.product-dropdown-item{display:flex;flex-direction:column;padding:var(--space-3) var(--space-4);cursor:pointer;border-bottom:1px solid var(--divider);transition:background var(--transition-fast)}.product-dropdown-item:last-child{border-bottom:none}.product-dropdown-item:hover{background:#007aff0f}.product-dropdown-name{font-weight:var(--font-semibold);color:var(--text);font-size:var(--text-sm)}.product-dropdown-desc{font-size:var(--text-xs);color:var(--text-secondary);margin-top:var(--space-1)}.sales-customer-dropdown{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-top:var(--space-2);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown)}.sales-customer-dropdown-item{display:flex;flex-direction:column;padding:var(--space-3) var(--space-4);cursor:pointer;border-bottom:1px solid var(--divider);transition:background var(--transition-fast)}.sales-customer-dropdown-item:last-child{border-bottom:none}.sales-customer-dropdown-item:hover{background:#007aff0f}.sales-customer-name{font-weight:var(--font-semibold);color:var(--text);font-size:var(--text-sm)}.sales-customer-contact{font-size:var(--text-xs);color:var(--text-secondary)}.maintenance-section{background:linear-gradient(135deg,#34c7590f,#34c7591f);border:1px solid rgba(52,199,89,.2);border-radius:var(--radius-lg);padding:var(--space-5);margin-top:var(--space-4)}.maintenance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.maintenance-header h4{color:#1a7f37;font-size:var(--text-base);font-weight:var(--font-semibold);display:flex;align-items:center;gap:var(--space-2)}.maintenance-info{font-size:var(--text-xs);color:var(--text-secondary)}.maintenance-items{background:var(--surface);padding:var(--space-4);border-radius:var(--radius-md);min-height:50px}.maintenance-item{display:flex;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--divider);font-size:var(--text-sm)}.maintenance-item:last-child{border-bottom:none}.maintenance-item.header-item{font-weight:var(--font-semibold);background:var(--background);margin:0 calc(-1 * var(--space-4));padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm)}.maintenance-total{display:flex;justify-content:space-between;padding:var(--space-4);background:linear-gradient(135deg,#34c75926,#34c75940);border-radius:var(--radius-md);margin-top:var(--space-4);font-weight:var(--font-bold);color:#1a7f37}.loss-reason-preview{font-size:var(--text-xs);color:var(--text-secondary);margin-top:var(--space-1);font-style:italic;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-grid-container{width:100%}.dashboard-grid-controls{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);justify-content:flex-end}.dashboard-grid{position:relative}.dashboard-grid.editing{background:repeating-linear-gradient(0deg,transparent,transparent 79px,rgba(0,122,255,.08) 79px,rgba(0,122,255,.08) 80px),repeating-linear-gradient(90deg,transparent,transparent calc(8.333% - 1px),rgba(0,122,255,.08) calc(8.333% - 1px),rgba(0,122,255,.08) 8.333%);background-size:100% 96px,100% 100%;border-radius:var(--radius-lg);padding:var(--space-2);min-height:400px}.widget{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border);height:100%;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:all var(--transition-base)}.widget:hover{box-shadow:var(--shadow-md)}.dashboard-grid.editing .widget{border:2px dashed var(--primary);cursor:move}.widget-header{display:flex;align-items:center;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);background:var(--background);flex-shrink:0}.widget-drag-handle{cursor:grab;padding:var(--space-2) var(--space-3);margin-right:var(--space-3);color:#fff;background:var(--primary-gradient);border-radius:var(--radius-sm);display:none;transition:all var(--transition-base)}.widget-drag-handle:hover{transform:scale(1.05);box-shadow:var(--shadow-sm)}.dashboard-grid.editing .widget-drag-handle{display:flex;align-items:center;justify-content:center}.widget-drag-handle:active{cursor:grabbing;transform:scale(.95)}.widget-drag-handle-floating{position:absolute;top:var(--space-2);left:var(--space-2);cursor:grab;padding:var(--space-2) var(--space-3);color:#fff;background:var(--primary-gradient);border-radius:var(--radius-sm);display:none;z-index:10;box-shadow:var(--shadow-md);transition:all var(--transition-base)}.widget-drag-handle-floating:hover{transform:scale(1.05)}.dashboard-grid.editing .widget-drag-handle-floating{display:flex;align-items:center;justify-content:center}.drag-icon{font-size:1.1rem;letter-spacing:-2px;font-weight:var(--font-bold)}.widget-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text);flex:1}.widget-actions{display:flex;gap:var(--space-2)}.widget-content{flex:1;padding:var(--space-5);overflow:auto}.stats-row-widget{padding:0;position:relative}.stats-row-widget .widget-content{padding:0;display:flex;height:100%}.stats-row-widget .stat-card{flex:1;margin:0;border-radius:0;box-shadow:none;border:none;border-right:1px solid var(--border)}.stats-row-widget .stat-card:last-child{border-right:none}.widget.lost-revenue-widget{background:linear-gradient(135deg,#fff5f5,#fee2e2);border:1px solid rgba(255,59,48,.2)}.widget.lost-revenue-widget .widget-header{background:transparent;border-bottom:1px solid rgba(255,59,48,.15)}.widget.lost-revenue-widget .widget-title{color:var(--danger)}.lost-revenue-value{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--danger)}.mini-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;height:100%}.mini-stat-card{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--space-5);border-right:1px solid var(--border);text-align:center;transition:background var(--transition-fast)}.mini-stat-card:hover{background:#007aff0a}.mini-stat-card:last-child{border-right:none}.mini-stat-value{font-size:var(--text-3xl);font-weight:var(--font-bold);background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.mini-stat-label{font-size:var(--text-xs);color:var(--text-secondary);margin-top:var(--space-1);font-weight:var(--font-medium)}.monthly-sales-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-2);height:100%;min-height:150px}.monthly-sales-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);cursor:pointer;transition:all var(--transition-fast);padding:var(--space-1);border-radius:var(--radius-md)}.monthly-sales-item:hover{background:#007aff0f}.monthly-sales-item.current{background:#007aff1a;border-radius:var(--radius-md)}.monthly-bar-container{flex:1;width:100%;background:var(--background);border-radius:var(--radius-sm);display:flex;align-items:flex-end;min-height:80px;padding:2px;overflow:hidden}.monthly-bar{width:100%;background:var(--primary-gradient);border-radius:var(--radius-xs);min-height:4px;transition:height var(--transition-slow)}.monthly-label{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-secondary);text-transform:uppercase}.monthly-input{width:100%;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-xs);font-size:var(--text-xs);text-align:center;background:var(--surface);transition:all var(--transition-fast)}.monthly-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #007aff1a}.monthly-input::-webkit-outer-spin-button,.monthly-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.monthly-input[type=number]{-moz-appearance:textfield}.react-grid-item{transition:all .2s ease;transition-property:left,top}.react-grid-item.cssTransforms{transition-property:transform}.react-grid-item.resizing{z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform;opacity:.9;box-shadow:var(--shadow-xl)}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px;display:none}.dashboard-grid.editing .react-grid-item>.react-resizable-handle{display:block}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:8px;height:8px;border-right:2px solid var(--primary);border-bottom:2px solid var(--primary)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-placeholder{background:var(--primary);opacity:.15;border-radius:var(--radius-xl);transition-duration:.1s;z-index:2}.widget table{width:100%;font-size:var(--text-sm)}.widget th,.widget td{padding:var(--space-3)}.activity-timeline{padding:var(--space-4)}.activity-item{display:flex;gap:var(--space-4);padding:var(--space-4);border-bottom:1px solid var(--divider);transition:background var(--transition-fast)}.activity-item:hover{background:#007aff0a}.activity-item:last-child{border-bottom:none}.activity-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--background);border-radius:var(--radius-full);border:1px solid var(--border)}.activity-content{flex:1}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-1)}.activity-type{font-weight:var(--font-medium);color:var(--text);font-size:var(--text-sm)}.activity-date{font-size:var(--text-xs);color:var(--text-secondary)}.activity-actions{display:flex;gap:var(--space-2)}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--space-4);color:var(--text-secondary);font-size:var(--text-base);font-weight:var(--font-medium)}.loading-spinner .spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.mb-1{margin-bottom:var(--space-2)}.mb-2{margin-bottom:var(--space-4)}.mb-3{margin-bottom:var(--space-6)}.mt-2{margin-top:var(--space-4)}.text-secondary{color:var(--text-secondary)}.text-sm{font-size:var(--text-sm)}.font-bold{font-weight:var(--font-bold)}.flex{display:flex}.gap-2{gap:var(--space-2)}.items-center{align-items:center}.justify-between{justify-content:space-between}.shortcut-hint{font-size:var(--text-xs);color:var(--text-tertiary);margin-left:var(--space-2);opacity:.7}@media (max-width: 1024px){.sidebar{width:220px}.main-content{margin-left:220px;padding:var(--space-6)}}@media (max-width: 768px){.sidebar{transform:translate(-100%);width:280px}.sidebar.open{transform:translate(0)}.main-content{margin-left:0;padding:var(--space-4)}.stats-grid{grid-template-columns:1fr}.mini-stats-grid{grid-template-columns:repeat(2,1fr)}.line-item-row,.form-row,.form-row-compact{grid-template-columns:1fr}.sticky-summary{grid-template-columns:1fr;gap:var(--space-4);padding:var(--space-4)}.sticky-summary .summary-totals{flex-wrap:wrap;gap:var(--space-4)}.monthly-sales-grid{grid-template-columns:repeat(6,1fr)}.filters-row,.filters-bar{flex-direction:column;align-items:stretch}.quote-tabs{flex-wrap:wrap}.customer-tabs{flex-direction:column}.modal-content{max-width:100%;margin:var(--space-4);max-height:calc(100vh - var(--space-8))}.quick-actions,.company-actions,.row-actions{opacity:1!important}}@media (max-width: 480px){.view-header h2{font-size:var(--text-2xl)}.mini-stats-grid{grid-template-columns:1fr}.monthly-sales-grid{grid-template-columns:repeat(4,1fr)}.toast{min-width:auto;max-width:calc(100vw - var(--space-8))}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#00000040}.btn:focus-visible,button:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px #007aff33}.btn-primary:focus-visible{outline-color:#fff;box-shadow:0 0 0 4px #007aff66}.btn-success:focus-visible,.btn-won:focus-visible{outline-color:#fff;box-shadow:0 0 0 4px #34c75966}.btn-danger:focus-visible{outline-color:#fff;box-shadow:0 0 0 4px #ff3b3066}.btn-warning:focus-visible{outline-color:#fff;box-shadow:0 0 0 4px #ff950066}.quick-add-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px #007aff33}.nav-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:var(--radius-md)}.nav-item.active:focus-visible{outline-color:#fff}.customer-tab:focus-visible,.quote-tab:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px #007aff33}.customer-tab.active:focus-visible,.quote-tab.active:focus-visible{outline-color:#fff}.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible,.filter-select:focus-visible,.filter-input:focus-visible,.search-input:focus-visible,.autocomplete-input:focus-visible,.line-item-input:focus-visible,.monthly-input:focus-visible{outline:2px solid var(--primary);outline-offset:0;border-color:var(--primary);box-shadow:0 0 0 4px #007aff26}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px #007aff33}.card:focus-visible,.stat-card:focus-visible,.widget:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:var(--shadow-md),0 0 0 4px #007aff26}tbody tr:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;background:#007aff14}.autocomplete-item:focus-visible,.product-dropdown-item:focus-visible,.sales-customer-dropdown-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;background:#007aff14}.modal-close:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px #007aff33}.confirm-btn:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;background:#007aff14}.section-header:focus-visible{outline:2px solid white;outline-offset:2px;box-shadow:0 0 0 4px #007aff4d}.type-toggle-bubble:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px #007aff33}.product-bubble-remove:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px #007aff33}.version-dropdown{position:relative;display:inline-flex}.version-dropdown-trigger{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1.5px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-base)}.version-dropdown-trigger:hover{border-color:var(--primary);background:#007aff0a}.version-label{display:inline-flex;align-items:center;gap:var(--space-2)}.version-latest-badge{display:inline-flex;padding:.125rem .375rem;background:var(--success);color:#fff;border-radius:var(--radius-full);font-size:.65rem;font-weight:var(--font-bold);text-transform:uppercase}.version-dropdown-arrow{font-size:.65rem;color:var(--text-secondary)}.version-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:100;min-width:200px;padding:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);list-style:none;margin:0}.version-dropdown-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.version-dropdown-item:hover{background:var(--background)}.version-dropdown-item.active{background:#007aff14;font-weight:var(--font-medium)}.version-item-number{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--font-semibold);min-width:70px}.version-item-date{color:var(--text-secondary);font-size:var(--text-sm);flex:1}.version-readonly-badge{display:inline-flex;padding:.125rem .375rem;background:var(--text-tertiary);color:#fff;border-radius:var(--radius-full);font-size:.6rem;font-weight:var(--font-bold);text-transform:uppercase}.quote-readonly-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #F59E0B;border-radius:var(--radius-md);margin-bottom:var(--space-4);color:#92400e;font-size:var(--text-sm)}.quote-readonly-banner-icon{font-size:1.25rem}.quote-tab-archived.active{background:linear-gradient(135deg,#6b7280,#4b5563);box-shadow:var(--shadow-sm),0 2px 8px #6b728040}@media print{.sidebar,.btn,.toast-container,.dashboard-grid-controls{display:none!important}.main-content{margin-left:0;padding:0}.card,.widget{box-shadow:none;border:1px solid #ddd}}.import-quotes-view{max-width:900px;margin:0 auto}.import-steps{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6);padding:var(--space-4)}.step{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);opacity:.4;transition:opacity var(--transition-base)}.step.active,.step.completed{opacity:1}.step-number{width:36px;height:36px;border-radius:50%;background:var(--border);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);font-size:var(--text-sm);transition:all var(--transition-base)}.step.active .step-number{background:var(--primary-gradient);color:#fff;box-shadow:var(--shadow-sm),0 2px 8px #007aff4d}.step.completed .step-number{background:var(--success);color:#fff}.step.completed .step-number:after{content:"✓"}.step-label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--font-medium)}.step.active .step-label{color:var(--text)}.step-connector{width:40px;height:2px;background:var(--border);margin-bottom:var(--space-6)}.import-select-step{padding:var(--space-6)}.import-dropzone{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-6);text-align:center;cursor:pointer;transition:all var(--transition-base);background:var(--background)}.import-dropzone:hover{border-color:var(--primary);background:#007aff0a}.import-dropzone.dragging{border-color:var(--primary);background:#007aff14;border-style:solid}.import-dropzone.has-files{border-color:var(--success);background:#34c7590a}.dropzone-icon{font-size:3rem;margin-bottom:var(--space-4)}.dropzone-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text);margin-bottom:var(--space-2)}.dropzone-hint{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-2)}.dropzone-formats{font-size:var(--text-xs);color:var(--text-tertiary)}.dropzone-files{text-align:left;max-width:400px;margin:0 auto}.file-list{list-style:none;margin:var(--space-4) 0}.file-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--divider);font-size:var(--text-sm)}.file-item.more{color:var(--text-tertiary);font-style:italic}.file-icon{flex-shrink:0}.file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-actions{display:flex;justify-content:center;gap:var(--space-4);margin-top:var(--space-6)}.import-processing-step{padding:var(--space-12) var(--space-6);text-align:center}.processing-spinner{margin-bottom:var(--space-6)}.spinner.large{width:60px;height:60px;margin:0 auto}.import-processing-step h3{font-size:var(--text-xl);margin-bottom:var(--space-2)}.import-processing-step p{color:var(--text-secondary);margin-bottom:var(--space-6)}.progress-bar{width:100%;max-width:400px;height:8px;background:var(--background);border-radius:var(--radius-full);overflow:hidden;margin:0 auto var(--space-4)}.progress-fill{height:100%;background:var(--primary-gradient);border-radius:var(--radius-full);transition:width var(--transition-base)}.progress-text{font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--font-semibold)}.import-preview-step{padding:var(--space-4)}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--divider)}.preview-stats{display:flex;gap:var(--space-6)}.preview-stats .stat{font-size:var(--text-sm);color:var(--text-secondary)}.preview-stats .stat strong{color:var(--text);font-weight:var(--font-semibold)}.preview-stats .stat.error strong{color:var(--danger)}.preview-table-container{overflow-x:auto;margin-bottom:var(--space-4)}.preview-table{width:100%;border-collapse:collapse}.preview-table th{padding:var(--space-3);text-align:left;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);background:var(--background);border-bottom:1px solid var(--border)}.preview-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--divider);vertical-align:middle}.preview-table tr.selected{background:#007aff0a}.preview-table .file-cell{display:flex;align-items:center;gap:var(--space-2)}.preview-table .filename{font-size:var(--text-sm);color:var(--text-secondary)}.inline-edit{padding:var(--space-2);border:1px solid transparent;background:transparent;font-size:var(--text-sm);width:100%;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.inline-edit:hover{border-color:var(--border);background:var(--surface)}.inline-edit:focus{border-color:var(--primary);background:var(--surface);outline:none;box-shadow:0 0 0 3px #007aff1a}.inline-edit.amount{width:120px;text-align:right}.error-section{margin-top:var(--space-6);padding:var(--space-4);background:var(--danger-light);border-radius:var(--radius-md)}.error-section h4{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--danger);margin-bottom:var(--space-3)}.error-list{list-style:none}.error-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;font-size:var(--text-sm)}.error-item .filename{font-weight:var(--font-medium);color:var(--text)}.error-item .error-message{color:var(--text-secondary);font-size:var(--text-xs)}.import-complete-step{padding:var(--space-12) var(--space-6);text-align:center}.complete-icon{font-size:4rem;margin-bottom:var(--space-4)}.import-complete-step h3{font-size:var(--text-xl);margin-bottom:var(--space-2)}.import-complete-step p{color:var(--text-secondary);margin-bottom:var(--space-6)}.import-complete-step strong{color:var(--text)}.daily-tasks-list{display:flex;flex-direction:column;gap:1rem}.task-section-header{font-size:.75rem;font-weight:600;text-transform:uppercase;margin-bottom:.5rem;letter-spacing:.025em}.task-item{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem .75rem;background:#f9fafb;border-radius:4px;margin-bottom:.25rem}.task-checkbox{width:20px;height:20px;border:2px solid #D1D5DB;border-radius:50%;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.75rem;color:transparent;transition:all .15s ease}.task-checkbox:hover{border-color:#10b981;color:#10b981;background:#ecfdf5}.task-content{flex:1;min-width:0}.task-content:hover .task-subject{color:#2563eb}.task-subject{font-weight:500;font-size:.875rem;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .15s ease}.task-meta{display:flex;gap:.5rem;font-size:.75rem;color:#6b7280;margin-top:.125rem}.task-company{font-weight:500}.task-date{color:#9ca3af}.task-section.overdue .task-item{background:#fef2f2;border-left-color:#dc2626}.task-section.today .task-item{background:#eff6ff;border-left-color:#2563eb}.win-loss-content{display:flex;flex-direction:column;gap:1rem}.win-loss-stats{display:flex;gap:1.5rem;align-items:center}.win-loss-rate{flex-shrink:0}.rate-circle{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center}.rate-inner{width:60px;height:60px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.rate-value{font-size:1.125rem;font-weight:700;color:#111827}.rate-label{font-size:.625rem;color:#6b7280;text-transform:uppercase}.win-loss-counts{display:flex;gap:1rem;flex:1}.wl-stat{display:flex;flex-direction:column;padding:.5rem .75rem;border-radius:6px;flex:1}.wl-stat.won{background:#ecfdf5;border-left:3px solid #10B981}.wl-stat.lost{background:#fef2f2;border-left:3px solid #EF4444}.wl-count{font-size:1.25rem;font-weight:700}.wl-stat.won .wl-count{color:#10b981}.wl-stat.lost .wl-count{color:#ef4444}.wl-label{font-size:.75rem;color:#6b7280;font-weight:500}.wl-value{font-size:.75rem;color:#374151;margin-top:.25rem}.loss-reasons{border-top:1px solid #E5E7EB;padding-top:.75rem}.loss-reasons-header{font-size:.75rem;font-weight:600;color:#6b7280;margin-bottom:.5rem;text-transform:uppercase}.loss-reason-item{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.813rem}.loss-reason-text{color:#374151}.loss-reason-count{background:#f3f4f6;color:#6b7280;padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.forecast-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media (max-width: 1024px){.forecast-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.forecast-grid{grid-template-columns:1fr}}.forecast-bucket{background:#f9fafb;border-radius:.5rem;padding:1rem;border-top:3px solid #E5E7EB;transition:all .2s ease}.forecast-bucket:hover{background:#f3f4f6;box-shadow:0 2px 8px #0000000f}.forecast-bucket-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.forecast-bucket-label{font-weight:600;font-size:.875rem;color:#374151}.forecast-bucket-count{font-size:.75rem;color:#6b7280;background:#fff;padding:.125rem .5rem;border-radius:4px}.forecast-bucket-values{display:flex;flex-direction:column;gap:.5rem}.forecast-value-row{display:flex;justify-content:space-between;align-items:center}.forecast-value-label{font-size:.75rem;color:#6b7280}.forecast-value-amount{font-size:.875rem;font-weight:600;color:#374151}.forecast-value-row.weighted .forecast-value-amount{font-weight:700}
