:root{--sbi-red: #DA291C;--sbi-red-light: rgba(218, 41, 28, .12);--color-white: #FFFFFF;--color-off-white: #F8F9FA;--color-gray-50: #F1F3F5;--color-gray-100: #E9ECEF;--color-gray-200: #DEE2E6;--color-gray-300: #CED4DA;--color-gray-400: #ADB5BD;--color-gray-500: #8B8FA3;--color-gray-600: #6C757D;--color-gray-700: #495057;--color-gray-800: #343A40;--color-gray-900: #212529;--color-dark: #0F1117;--color-dark-surface: #1A1D27;--color-dark-elevated: #2A2D3A;--color-accent: #3B82F6;--color-accent-hover: #2563EB;--color-accent-light: rgba(59, 130, 246, .12);--color-accent-glow: rgba(59, 130, 246, .2);--color-success: #10B981;--color-success-light: rgba(16, 185, 129, .1);--color-success-bg: #ECFDF5;--color-warning: #F59E0B;--color-warning-light: rgba(245, 158, 11, .1);--color-warning-bg: #FFFBEB;--color-error: #EF4444;--color-error-light: rgba(239, 68, 68, .1);--color-error-bg: #FEF2F2;--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", ui-monospace, monospace;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .9375rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--leading-tight: 1.3;--leading-normal: 1.6;--tracking-tight: -.02em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .07);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .1);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .12);--shadow-glow: 0 0 24px rgba(59, 130, 246, .15);--glass-bg: rgba(255, 255, 255, .72);--glass-bg-strong: rgba(255, 255, 255, .85);--glass-bg-subtle: rgba(255, 255, 255, .55);--glass-border: rgba(255, 255, 255, .65);--glass-border-subtle: rgba(0, 0, 0, .06);--glass-blur: blur(16px);--glass-blur-light: blur(8px);--glass-dark-bg: rgba(255, 255, 255, .06);--glass-dark-border: rgba(255, 255, 255, .1);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--header-height: 64px;--max-width: 1400px;--sidebar-width: 320px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--leading-normal);color:var(--color-gray-900);background:var(--color-off-white);min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-4);background:linear-gradient(135deg,var(--color-dark) 0%,var(--color-dark-surface) 50%,#1e2235 100%);position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;width:600px;height:600px;background:radial-gradient(circle,rgba(218,41,28,.08) 0%,transparent 70%);top:-200px;right:-100px;pointer-events:none}.login-container:after{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(59,130,246,.06) 0%,transparent 70%);bottom:-150px;left:-100px;pointer-events:none}.login-card{background:var(--glass-dark-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-dark-border);border-radius:var(--radius-xl);padding:var(--space-10);width:100%;max-width:420px;text-align:center;position:relative;z-index:1;box-shadow:var(--shadow-xl),inset 0 1px #ffffff0d}.login-logo{width:200px;height:auto;margin-bottom:var(--space-6)}.login-card h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-white);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-1)}.subtitle{color:var(--color-gray-500);margin-bottom:var(--space-8);font-size:var(--font-size-sm);letter-spacing:.02em}.login-card form{display:flex;flex-direction:column;gap:var(--space-4)}.login-card input[type=password]{background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);padding:.75rem 1rem;color:var(--color-white);font-family:var(--font-sans);font-size:var(--font-size-base);outline:none;transition:border-color var(--transition-base),box-shadow var(--transition-base)}.login-card input[type=password]::placeholder{color:var(--color-gray-500)}.login-card input[type=password]:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-glow)}.login-card button[type=submit]{background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-md);padding:.75rem 1.5rem;font-family:var(--font-sans);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background var(--transition-base),box-shadow var(--transition-base),transform var(--transition-fast)}.login-card button[type=submit]:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.login-card button[type=submit]:active{transform:translateY(0)}.error{color:var(--color-error);font-size:var(--font-size-sm)}.bid-comparison-app{font-family:var(--font-sans);min-height:100vh;background:var(--color-off-white);color:var(--color-gray-900)}.bid-comparison-app .bc-loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:var(--font-size-base);color:var(--color-gray-500);gap:var(--space-3)}.bc-loading-spinner{width:20px;height:20px;border:2px solid var(--color-gray-200);border-top-color:var(--color-accent);border-radius:50%;animation:bc-spin .6s linear infinite}@keyframes bc-spin{to{transform:rotate(360deg)}}@keyframes bc-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.bc-skeleton{background:linear-gradient(90deg,var(--color-gray-100) 25%,var(--color-gray-50) 50%,var(--color-gray-100) 75%);background-size:200% 100%;animation:bc-shimmer 1.5s ease infinite;border-radius:var(--radius-sm)}.bid-comparison-app .bc-header{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);height:var(--header-height);background:var(--color-dark);border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:0;z-index:100}.bid-comparison-app .bc-header-left{display:flex;align-items:center;gap:var(--space-8)}.bid-comparison-app .bc-header-logo{display:flex;align-items:center;text-decoration:none;gap:var(--space-3);flex-shrink:0}.bid-comparison-app .bc-header-logo img{height:32px;width:auto}.bid-comparison-app .bc-header h1{display:none}.bid-comparison-app .bc-header-nav{display:flex;gap:var(--space-1)}.bid-comparison-app .bc-nav-link{padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);text-decoration:none;font-size:var(--font-size-sm);font-weight:500;color:#fff9;transition:color var(--transition-base),background var(--transition-base);position:relative}.bid-comparison-app .bc-nav-link:hover{color:#ffffffe6;background:#ffffff0f}.bid-comparison-app .bc-nav-link.active{color:var(--color-white);background:#ffffff14}.bid-comparison-app .bc-nav-link.active:after{content:"";position:absolute;bottom:-1px;left:var(--space-4);right:var(--space-4);height:2px;background:var(--color-accent);border-radius:1px}.bid-comparison-app .bc-header-actions{display:flex;gap:var(--space-2);align-items:center}.bid-comparison-app .bc-header-actions .bc-btn-icon{color:#ffffff80;font-size:var(--font-size-sm)}.bid-comparison-app .bc-header-actions .bc-btn-icon:hover{color:#ffffffe6;background:#ffffff0f}.bid-comparison-app .bc-header-actions .bc-btn-secondary{color:#fff9;border-color:#ffffff26;background:transparent;font-size:var(--font-size-sm)}.bid-comparison-app .bc-header-actions .bc-btn-secondary:hover{color:var(--color-white);border-color:#ffffff4d;background:#ffffff0f}.bid-comparison-app .bc-error-banner{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-6);background:var(--color-error-bg);color:var(--color-error);border-bottom:1px solid rgba(239,68,68,.2);font-size:var(--font-size-sm);font-weight:500}.bid-comparison-app .bc-error-banner button{background:none;border:none;font-size:var(--font-size-lg);cursor:pointer;color:var(--color-error);opacity:.6;transition:opacity var(--transition-fast);line-height:1}.bid-comparison-app .bc-error-banner button:hover{opacity:1}.bid-comparison-app .bc-success-banner{display:flex;align-items:center;justify-content:space-between;background:var(--color-success-bg);border:1px solid rgba(16,185,129,.2);color:#065f46;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.bid-comparison-app .bc-success-banner button{background:none;border:none;color:#065f46;font-size:var(--font-size-lg);cursor:pointer;opacity:.6;line-height:1}.bid-comparison-app .bc-success-banner button:hover{opacity:1}.bid-comparison-app .bc-content{display:flex;min-height:calc(100vh - var(--header-height))}.bid-comparison-app .bc-content-full{display:block}.bid-comparison-app .bc-main-area{flex:1;padding:var(--space-8) var(--space-6);overflow-y:auto}.bid-comparison-app .bc-content-full .bc-main-area{max-width:var(--max-width);margin:0 auto}.bid-comparison-app .bc-sidebar{width:var(--sidebar-width);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-light);-webkit-backdrop-filter:var(--glass-blur-light);border-right:1px solid var(--glass-border-subtle);display:flex;flex-direction:column}.bid-comparison-app .bc-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--glass-border-subtle)}.bid-comparison-app .bc-sidebar-header h2{font-size:var(--font-size-base);font-weight:600;letter-spacing:var(--tracking-tight)}.bid-comparison-app .bc-comparison-list{list-style:none;flex:1;overflow-y:auto}.bid-comparison-app .bc-comparison-item{display:flex;align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-50);transition:background var(--transition-fast)}.bid-comparison-app .bc-comparison-item:hover{background:var(--color-gray-50)}.bid-comparison-app .bc-comparison-item.active{background:var(--color-accent-light)}.bid-comparison-app .bc-comparison-name{flex:1;text-align:left;background:none;border:none;padding:0;font-size:var(--font-size-sm);cursor:pointer;color:inherit;font-family:var(--font-sans)}.bid-comparison-app .bc-empty-state-large{display:flex;flex-direction:column;align-items:center;justify-content:center;height:50vh;text-align:center;color:var(--color-gray-500)}.bid-comparison-app .bc-empty-state-large h2{color:var(--color-gray-700);font-size:var(--font-size-xl);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-2)}.bid-comparison-app .bc-empty-state-large p{margin-bottom:var(--space-6);font-size:var(--font-size-base)}.bid-comparison-app .bc-empty-state{padding:var(--space-8) var(--space-4);text-align:center;color:var(--color-gray-400);font-size:var(--font-size-sm)}.bid-comparison-app .bc-btn-primary{padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background var(--transition-base),box-shadow var(--transition-base),transform var(--transition-fast)}.bid-comparison-app .bc-btn-primary:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.bid-comparison-app .bc-btn-primary:active{transform:translateY(0)}.bid-comparison-app .bc-btn-primary:disabled{background:var(--color-gray-300);cursor:not-allowed;box-shadow:none;transform:none}.bid-comparison-app .bc-btn-secondary{padding:var(--space-2) var(--space-4);background:var(--glass-bg);backdrop-filter:var(--glass-blur-light);-webkit-backdrop-filter:var(--glass-blur-light);color:var(--color-gray-700);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-base)}.bid-comparison-app .bc-btn-secondary:hover{background:var(--color-white);border-color:var(--color-gray-300);box-shadow:var(--shadow-sm)}.bid-comparison-app .bc-btn-secondary:disabled{color:var(--color-gray-400);cursor:not-allowed}.bid-comparison-app .bc-btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs)}.bid-comparison-app .bc-btn-icon{padding:var(--space-2);background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-base);opacity:.5;transition:all var(--transition-fast);color:inherit;line-height:1}.bid-comparison-app .bc-btn-icon:hover{opacity:1;background:var(--color-gray-50)}.bid-comparison-app .bc-btn-danger:hover{color:var(--color-error);background:var(--color-error-light)}.bid-comparison-app .bc-input{width:100%;padding:var(--space-2) var(--space-3);background:var(--glass-bg);backdrop-filter:var(--glass-blur-light);-webkit-backdrop-filter:var(--glass-blur-light);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-gray-900);outline:none;transition:border-color var(--transition-base),box-shadow var(--transition-base)}.bid-comparison-app .bc-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-glow)}.bid-comparison-app .bc-input::placeholder{color:var(--color-gray-400)}.bid-comparison-app .bc-textarea{width:100%;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-sm);resize:vertical;outline:none;color:var(--color-gray-900);background:var(--glass-bg);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.bid-comparison-app .bc-textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-glow)}.bid-comparison-app .bc-form-group{margin-bottom:var(--space-5)}.bid-comparison-app .bc-form-group:last-child{margin-bottom:0}.bid-comparison-app .bc-form-group label{display:block;margin-bottom:var(--space-2);font-weight:500;font-size:var(--font-size-sm);color:var(--color-gray-700)}.bid-comparison-app .bc-test-result{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-gray-50);font-size:var(--font-size-sm);margin-top:var(--space-4)}.bid-comparison-app .bc-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:bc-fade-in .15s ease}@keyframes bc-fade-in{0%{opacity:0}to{opacity:1}}@keyframes bc-scale-in{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.bid-comparison-app .bc-modal{background:var(--color-white);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-xl);width:90%;max-width:480px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);animation:bc-scale-in .2s ease}.bid-comparison-app .bc-modal-wide{max-width:700px}.bid-comparison-app .bc-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-gray-100)}.bid-comparison-app .bc-modal-header h2{font-size:var(--font-size-lg);font-weight:600;letter-spacing:var(--tracking-tight)}.bid-comparison-app .bc-modal-body{padding:var(--space-6);overflow-y:auto}.bid-comparison-app .bc-modal-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-gray-100);background:var(--color-gray-50)}.bid-comparison-app .bc-breadcrumb{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-6);font-size:var(--font-size-sm)}.bid-comparison-app .bc-breadcrumb-link{color:var(--color-accent);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}.bid-comparison-app .bc-breadcrumb-link:hover{color:var(--color-accent-hover);text-decoration:underline}.bid-comparison-app .bc-breadcrumb-sep{color:var(--color-gray-300)}.bid-comparison-app .bc-breadcrumb-current{color:var(--color-gray-500)}.bc-glass-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.bid-comparison-app .bc-project-list-page{padding:0}.bid-comparison-app .bc-project-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.bid-comparison-app .bc-project-list-header h2{font-size:var(--font-size-2xl);font-weight:700;letter-spacing:var(--tracking-tight);color:var(--color-gray-900)}.bid-comparison-app .bc-project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-4)}.bid-comparison-app .bc-project-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-6);cursor:pointer;transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base);box-shadow:var(--shadow-xs);position:relative;overflow:hidden}.bid-comparison-app .bc-project-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);background:linear-gradient(135deg,transparent 60%,rgba(59,130,246,.02) 100%);pointer-events:none;transition:opacity var(--transition-base);opacity:0}.bid-comparison-app .bc-project-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-gray-200)}.bid-comparison-app .bc-project-card:hover:before{opacity:1}.bid-comparison-app .bc-project-card-header{display:flex;align-items:flex-start;justify-content:space-between}.bid-comparison-app .bc-project-card-header h3{font-size:var(--font-size-md);font-weight:600;letter-spacing:var(--tracking-tight);color:var(--color-gray-900)}.bid-comparison-app .bc-project-source{display:block;font-size:var(--font-size-xs);color:var(--color-gray-500);margin-top:var(--space-1)}.bid-comparison-app .bc-project-date{display:block;font-size:var(--font-size-xs);color:var(--color-gray-400);margin-top:var(--space-3)}.bid-comparison-app .bc-project-detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.bid-comparison-app .bc-project-detail-header h2{font-size:var(--font-size-2xl);font-weight:700;letter-spacing:var(--tracking-tight)}.bid-comparison-app .bc-file-upload-label{cursor:pointer;display:inline-block}.bid-comparison-app .bc-trade-list{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xs)}.bid-comparison-app .bc-trade-list-header{display:grid;grid-template-columns:80px 1fr 100px;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-gray-50);font-weight:600;font-size:var(--font-size-xs);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-gray-100)}.bid-comparison-app .bc-trade-row{display:grid;grid-template-columns:80px 1fr 100px;gap:var(--space-4);padding:var(--space-3) var(--space-4);align-items:center;border-bottom:1px solid var(--color-gray-50);cursor:pointer;transition:background var(--transition-fast)}.bid-comparison-app .bc-trade-row:hover{background:var(--color-gray-50)}.bid-comparison-app .bc-trade-row:last-child{border-bottom:none}.bid-comparison-app .bc-trade-code{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:500;color:var(--color-accent);background:var(--color-accent-light);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);display:inline-block}.bid-comparison-app .bc-trade-name{font-size:var(--font-size-sm);color:var(--color-gray-800)}.bid-comparison-app .bc-trade-bid-count{text-align:center;font-size:var(--font-size-sm);color:var(--color-gray-500)}.bid-comparison-app .bc-sheet-picker-note{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:var(--space-3)}.bid-comparison-app .bc-sheet-picker-controls{margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-gray-100)}.bid-comparison-app .bc-sheet-picker-toggle{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-weight:500;font-size:var(--font-size-sm)}.bid-comparison-app .bc-sheet-picker-list{max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-1)}.bid-comparison-app .bc-sheet-picker-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast)}.bid-comparison-app .bc-sheet-picker-item:hover{background:var(--color-gray-50)}.bid-comparison-app .bc-sheet-picker-info{display:flex;flex-direction:column;gap:2px}.bid-comparison-app .bc-sheet-picker-code{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-accent)}.bid-comparison-app .bc-sheet-picker-name{font-size:var(--font-size-sm)}.bid-comparison-app .bc-sheet-picker-count{font-size:var(--font-size-xs);color:var(--color-gray-400)}.bid-comparison-app .bc-comparison-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.bid-comparison-app .bc-comparison-header h2{font-size:var(--font-size-xl);font-weight:700;letter-spacing:var(--tracking-tight)}.bid-comparison-app .bc-comparison-actions{display:flex;gap:var(--space-2);align-items:center}.bid-comparison-app .bc-comparison-actions select{padding:var(--space-2) var(--space-4);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--glass-bg);font-family:var(--font-sans);font-size:var(--font-size-sm);cursor:pointer;outline:none}.bid-comparison-app .bc-upload-zones{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.bid-comparison-app .bc-drop-zone{position:relative;padding:var(--space-8);border:2px dashed var(--color-gray-200);border-radius:var(--radius-lg);background:var(--glass-bg);backdrop-filter:var(--glass-blur-light);-webkit-backdrop-filter:var(--glass-blur-light);text-align:center;transition:all var(--transition-base);cursor:pointer}.bid-comparison-app .bc-drop-zone:hover{border-color:var(--color-accent);background:#3b82f60a;box-shadow:0 0 0 4px var(--color-accent-glow)}.bid-comparison-app .bc-drop-zone.dragging{border-color:var(--color-accent);background:var(--color-accent-light);box-shadow:0 0 0 4px var(--color-accent-glow),var(--shadow-glow)}.bid-comparison-app .bc-drop-zone.has-file{border-style:solid;border-color:var(--color-success);background:var(--color-success-bg)}.bid-comparison-app .bc-drop-zone-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.bid-comparison-app .bc-drop-zone-content{pointer-events:none}.bid-comparison-app .bc-drop-zone-icon{font-size:2rem;margin-bottom:var(--space-2);display:block;opacity:.5}.bid-comparison-app .bc-drop-zone h4{margin:0 0 var(--space-1) 0;font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-800)}.bid-comparison-app .bc-drop-zone p{margin:0;font-size:var(--font-size-sm);color:var(--color-gray-500)}.bid-comparison-app .bc-drop-zone .file-name{color:var(--color-success);font-weight:600}.bid-comparison-app .bc-bid-status-list{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-6);box-shadow:var(--shadow-xs)}.bid-comparison-app .bc-bid-status-list h3{margin:0 0 var(--space-3) 0;font-size:var(--font-size-base);font-weight:600;letter-spacing:var(--tracking-tight)}.bid-comparison-app .bc-bids-container{display:flex;flex-direction:column;gap:var(--space-2)}.bid-comparison-app .bc-bid-item{border:1px solid var(--color-gray-100);border-radius:var(--radius-md);overflow:hidden;transition:border-color var(--transition-fast)}.bid-comparison-app .bc-bid-item:hover{border-color:var(--color-gray-200)}.bid-comparison-app .bc-bid-status{display:flex;align-items:center;padding:var(--space-3) var(--space-4);gap:var(--space-3)}.bid-comparison-app .bc-bid-status-pending{background:var(--color-gray-50)}.bid-comparison-app .bc-bid-status-ocr_processing,.bid-comparison-app .bc-bid-status-extracting{background:var(--color-accent-light)}.bid-comparison-app .bc-bid-status-completed{background:var(--color-success-bg)}.bid-comparison-app .bc-bid-status-error{background:var(--color-error-bg)}.bid-comparison-app .bc-bid-name{flex:1;font-weight:600;font-size:var(--font-size-sm)}.bid-comparison-app .bc-bid-file{font-size:var(--font-size-xs);color:var(--color-gray-500)}.bid-comparison-app .bc-bid-status-badge{font-size:var(--font-size-xs);font-weight:600;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);background:var(--color-gray-100);color:var(--color-gray-600)}.bid-comparison-app .bc-bid-status-completed .bc-bid-status-badge{background:var(--color-success-light);color:var(--color-success)}.bid-comparison-app .bc-bid-status-error .bc-bid-status-badge{background:var(--color-error-light);color:var(--color-error)}.bid-comparison-app .bc-bid-status-ocr_processing .bc-bid-status-badge,.bid-comparison-app .bc-bid-status-extracting .bc-bid-status-badge{background:var(--color-accent-light);color:var(--color-accent)}.bid-comparison-app .bc-bid-error{cursor:help;color:var(--color-error);font-weight:700}.bid-comparison-app .bc-comparison-table-wrapper{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);overflow-x:auto;margin-bottom:var(--space-6);box-shadow:var(--shadow-sm)}.bid-comparison-app .bc-comparison-table-empty{padding:var(--space-8);text-align:center;color:var(--color-gray-400);background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-6);font-size:var(--font-size-sm)}.bid-comparison-app .bc-comparison-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.bid-comparison-app .bc-comparison-table th,.bid-comparison-app .bc-comparison-table td{padding:var(--space-3) var(--space-4);border:1px solid var(--color-gray-100);text-align:left;vertical-align:top}.bid-comparison-app .bc-comparison-table th{background:var(--color-gray-50);font-weight:600;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-gray-600);position:sticky;top:0;z-index:1}.bid-comparison-app .bc-comparison-table .sticky-col{position:sticky;left:0;z-index:2;background:var(--color-gray-50);min-width:220px;max-width:320px;border-right:2px solid var(--color-gray-200)}.bid-comparison-app .bc-comparison-table tbody .sticky-col{background:var(--color-white)}.bid-comparison-app .bc-comparison-table tbody tr{transition:background var(--transition-fast)}.bid-comparison-app .bc-comparison-table tbody tr:hover .sticky-col,.bid-comparison-app .bc-comparison-table tbody tr:hover td{background:var(--color-gray-50)}.bid-comparison-app .bc-requirement-cell{display:flex;flex-direction:column;gap:2px}.bid-comparison-app .bc-requirement-label{font-weight:600;color:var(--color-gray-800);font-size:var(--font-size-sm)}.bid-comparison-app .bc-requirement-desc{font-size:var(--font-size-xs);color:var(--color-gray-500)}.bid-comparison-app .bc-value-cell{min-width:160px}.bid-comparison-app .bc-value-cell.status-found{background:var(--color-success-bg)}.bid-comparison-app .bc-value-cell.status-uncertain{background:var(--color-warning-bg)}.bid-comparison-app .bc-value-cell.status-not_found{background:var(--color-error-bg)}.bid-comparison-app .bc-value-content{display:flex;flex-direction:column;gap:2px}.bid-comparison-app .bc-status-icon{margin-right:var(--space-1)}.bid-comparison-app .bc-value-text{word-break:break-word;font-size:var(--font-size-sm)}.bid-comparison-app .bc-value-notes{font-size:var(--font-size-xs);color:var(--color-gray-500);font-style:italic}.bid-comparison-app .bc-section-header-row{cursor:pointer}.bid-comparison-app .bc-section-header{background:var(--color-gray-50);font-weight:600;font-size:var(--font-size-sm);padding:var(--space-3) var(--space-4);-webkit-user-select:none;user-select:none;color:var(--color-gray-700);transition:background var(--transition-fast)}.bid-comparison-app .bc-section-header:hover{background:var(--color-gray-100)}.bid-comparison-app .bc-section-toggle{display:inline-block;width:1.25rem;font-size:var(--font-size-xs);color:var(--color-gray-400)}.bid-comparison-app .bc-analysis-section{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-xs)}.bid-comparison-app .bc-analysis-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.bid-comparison-app .bc-analysis-header h3{font-size:var(--font-size-lg);font-weight:600;letter-spacing:var(--tracking-tight)}.bid-comparison-app .bc-analysis-panel{border:1px solid var(--color-gray-100);border-radius:var(--radius-md);overflow:hidden}.bid-comparison-app .bc-analysis-toggle{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-gray-50);border:none;text-align:left;font-family:var(--font-sans);font-weight:600;font-size:var(--font-size-sm);cursor:pointer;color:var(--color-gray-700);transition:background var(--transition-fast)}.bid-comparison-app .bc-analysis-toggle:hover{background:var(--color-gray-100)}.bid-comparison-app .bc-analysis-content{padding:var(--space-5)}.bid-comparison-app .bc-analysis-section-item{margin-bottom:var(--space-6)}.bid-comparison-app .bc-analysis-section-item:last-child{margin-bottom:0}.bid-comparison-app .bc-analysis-section-item h4{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-800);margin-bottom:var(--space-3);letter-spacing:var(--tracking-tight)}.bid-comparison-app .bc-analysis-section-item p{line-height:var(--leading-normal);color:var(--color-gray-700)}.bid-comparison-app .bc-analysis-section-item ul,.bid-comparison-app .bc-analysis-section-item ol{padding-left:var(--space-6)}.bid-comparison-app .bc-analysis-section-item li{margin-bottom:var(--space-2);line-height:1.5;color:var(--color-gray-700)}.bid-comparison-app .bc-confidence{font-size:var(--font-size-xs);color:var(--color-gray-500);margin-left:var(--space-2)}.bid-comparison-app .bc-red-flags li{padding-left:var(--space-3);border-left:3px solid transparent;margin-bottom:var(--space-3)}.bid-comparison-app .bc-red-flags li.severity-high{border-left-color:var(--color-error);color:var(--color-error)}.bid-comparison-app .bc-red-flags li.severity-medium{border-left-color:var(--color-warning);color:#b45309}.bid-comparison-app .bc-red-flags li.severity-low{border-left-color:#eab308;color:#a16207}.bid-comparison-app .bc-flag-details{margin-top:var(--space-1);font-size:var(--font-size-sm);color:var(--color-gray-500)}.bid-comparison-app .bc-affected-vendors{font-size:var(--font-size-xs);color:var(--color-gray-500);margin-left:var(--space-2)}.bid-comparison-app .bc-template-preview{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-6);overflow:hidden;box-shadow:var(--shadow-xs)}.bid-comparison-app .bc-template-preview-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--color-gray-50);cursor:pointer;transition:background var(--transition-fast)}.bid-comparison-app .bc-template-preview-header:hover{background:var(--color-gray-100)}.bid-comparison-app .bc-template-preview-header h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700)}.bid-comparison-app .bc-template-row-count{font-size:var(--font-size-xs);color:var(--color-gray-500);background:var(--color-gray-100);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-weight:500}.bid-comparison-app .bc-template-preview-content{padding:var(--space-4);max-height:400px;overflow-y:auto;background:var(--color-white)}.bid-comparison-app .bc-bid-carousel{background:var(--color-gray-50);border-top:1px solid var(--color-gray-100)}.bid-comparison-app .bc-bid-carousel-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);cursor:pointer;transition:background var(--transition-fast)}.bid-comparison-app .bc-bid-carousel-header:hover{background:var(--color-gray-100)}.bid-comparison-app .bc-expand-icon{font-size:var(--font-size-xs);color:var(--color-gray-400)}.bid-comparison-app .bc-bid-carousel-title{font-weight:600;font-size:var(--font-size-sm)}.bid-comparison-app .bc-bid-page-count{font-size:var(--font-size-xs);color:var(--color-gray-400)}.bid-comparison-app .bc-page-selector{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-gray-100);border-top:1px solid var(--color-gray-100)}.bid-comparison-app .bc-page-btn{min-width:36px;height:36px;padding:var(--space-1) var(--space-2);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;font-family:var(--font-sans);font-weight:500;font-size:var(--font-size-sm);transition:all var(--transition-fast);color:var(--color-gray-700)}.bid-comparison-app .bc-page-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.bid-comparison-app .bc-page-btn.active{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}.bid-comparison-app .bc-carousel-content{padding:var(--space-4);max-height:500px;overflow-y:auto;background:var(--color-white);border-top:1px solid var(--color-gray-100)}.bid-comparison-app .bc-carousel-page{min-height:200px}.bid-comparison-app .bc-page-header{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-gray-100);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.bid-comparison-app .bc-carousel-nav{display:flex;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--color-gray-50);border-top:1px solid var(--color-gray-100)}.bid-comparison-app .bc-nav-btn{padding:var(--space-2) var(--space-4);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-gray-700);transition:all var(--transition-fast)}.bid-comparison-app .bc-nav-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.bid-comparison-app .bc-nav-btn:disabled{opacity:.3;cursor:not-allowed}.bid-comparison-app .bc-markdown-viewer{font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-gray-700)}.bid-comparison-app .bc-markdown-viewer h1{font-size:var(--font-size-xl);font-weight:700;letter-spacing:var(--tracking-tight);margin:var(--space-4) 0 var(--space-2) 0;padding-bottom:var(--space-2);border-bottom:1px solid var(--color-gray-100);color:var(--color-gray-900)}.bid-comparison-app .bc-markdown-viewer h2{font-size:var(--font-size-lg);font-weight:600;margin:var(--space-4) 0 var(--space-2) 0;color:var(--color-gray-800)}.bid-comparison-app .bc-markdown-viewer h3{font-size:var(--font-size-base);font-weight:600;margin:var(--space-3) 0 var(--space-2) 0;color:var(--color-gray-800)}.bid-comparison-app .bc-markdown-viewer table{width:100%;border-collapse:collapse;margin:var(--space-4) 0;font-size:var(--font-size-xs)}.bid-comparison-app .bc-markdown-viewer table th,.bid-comparison-app .bc-markdown-viewer table td{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-100);text-align:left}.bid-comparison-app .bc-markdown-viewer table th{background:var(--color-gray-50);font-weight:600;color:var(--color-gray-600)}.bid-comparison-app .bc-markdown-viewer table tr:nth-child(2n){background:var(--color-gray-50)}.bid-comparison-app .bc-markdown-viewer hr{border:none;border-top:1px solid var(--color-gray-100);margin:var(--space-4) 0}.bid-comparison-app .bc-admin-page{padding:0}.bid-comparison-app .bc-admin-actions{display:flex;gap:var(--space-2);align-items:center}.bid-comparison-app .bc-admin-trade-header,.bid-comparison-app .bc-admin-trade-row{grid-template-columns:80px 1fr 60px 80px 40px}.bid-comparison-app .bc-admin-active-badge{font-size:var(--font-size-xs);font-weight:600;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);text-align:center}.bid-comparison-app .bc-admin-active-badge.active{background:var(--color-success-bg);color:var(--color-success)}.bid-comparison-app .bc-admin-active-badge.inactive{background:var(--color-error-bg);color:var(--color-error)}.bid-comparison-app .bc-admin-create-form{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-4);background:var(--glass-bg);backdrop-filter:var(--glass-blur-light);-webkit-backdrop-filter:var(--glass-blur-light);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);align-items:center}.bid-comparison-app .bc-admin-create-actions{display:flex;gap:var(--space-1)}.bid-comparison-app .bc-admin-form-section{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-6);box-shadow:var(--shadow-xs)}.bid-comparison-app .bc-admin-form-row{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-4);margin-bottom:var(--space-4)}.bid-comparison-app .bc-admin-line-items-section{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-xs)}.bid-comparison-app .bc-admin-line-items-section h3{margin:0 0 var(--space-4) 0;font-size:var(--font-size-lg);font-weight:600;letter-spacing:var(--tracking-tight)}.bid-comparison-app .bc-admin-section{margin-bottom:var(--space-6)}.bid-comparison-app .bc-admin-section:last-child{margin-bottom:0}.bid-comparison-app .bc-admin-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-gray-100)}.bid-comparison-app .bc-admin-section-header h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700)}.bid-comparison-app .bc-admin-line-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--color-gray-50)}.bid-comparison-app .bc-admin-line-item:last-child{border-bottom:none}.bid-comparison-app .bc-admin-item-number{min-width:2rem;font-weight:600;color:var(--color-gray-400);font-size:var(--font-size-xs);font-family:var(--font-mono)}.bid-comparison-app .bc-admin-item-desc{flex:1;cursor:pointer;font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:background var(--transition-fast)}.bid-comparison-app .bc-admin-item-desc:hover{background:var(--color-gray-50)}.bid-comparison-app .bc-admin-inline-edit{flex:1;display:flex;gap:var(--space-1);align-items:center}.bid-comparison-app .bc-admin-inline-edit .bc-input{flex:1}.bid-comparison-app .bc-admin-add-item{display:flex;gap:var(--space-1);padding:var(--space-2) 0;align-items:center}.bid-comparison-app .bc-admin-add-item .bc-input{flex:1}.bid-comparison-app .bc-eval-section{margin-top:var(--space-6)}.bid-comparison-app .bc-eval-section h3{margin-bottom:var(--space-3);font-weight:600;letter-spacing:var(--tracking-tight)}.bid-comparison-app .bc-eval-scores{display:flex;gap:var(--space-4);margin:var(--space-4) 0;flex-wrap:wrap}.bid-comparison-app .bc-eval-score-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur-light);-webkit-backdrop-filter:var(--glass-blur-light);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);padding:var(--space-5);min-width:180px;text-align:center;box-shadow:var(--shadow-xs)}.bid-comparison-app .bc-eval-score-card.bc-eval-pass{border-color:#10b9814d;background:var(--color-success-bg)}.bid-comparison-app .bc-eval-score-card.bc-eval-fail{border-color:#ef44444d;background:var(--color-error-bg)}.bid-comparison-app .bc-eval-score-label{font-size:var(--font-size-xs);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:var(--space-2)}.bid-comparison-app .bc-eval-score-value{font-size:2rem;font-weight:700;color:var(--color-gray-900);letter-spacing:var(--tracking-tight)}.bid-comparison-app .bc-eval-score-badge{font-size:var(--font-size-xs);font-weight:600;margin-top:var(--space-1)}.bid-comparison-app .bc-eval-pass .bc-eval-score-badge{color:var(--color-success)}.bid-comparison-app .bc-eval-fail .bc-eval-score-badge{color:var(--color-error)}.bid-comparison-app .bc-score-pass{color:var(--color-success);font-weight:600}.bid-comparison-app .bc-score-fail{color:var(--color-error);font-weight:600}.bid-comparison-app .bc-score-exact{color:var(--color-success)}.bid-comparison-app .bc-score-numeric,.bid-comparison-app .bc-score-text{color:#059669}.bid-comparison-app .bc-score-partial{color:var(--color-warning)}.bid-comparison-app .bc-score-miss{color:var(--color-error)}.bid-comparison-app .bc-score-false{color:#ea580c}.bid-comparison-app .bc-eval-progress{margin:var(--space-4) 0}.bid-comparison-app .bc-progress-bar{height:6px;background:var(--color-gray-100);border-radius:var(--radius-full);overflow:hidden;margin-top:var(--space-2)}.bid-comparison-app .bc-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-accent) 0%,#60A5FA 100%);border-radius:var(--radius-full);transition:width var(--transition-slow)}.bid-comparison-app .bc-eval-prompt-details{margin:var(--space-4) 0}.bid-comparison-app .bc-eval-prompt{background:var(--color-gray-50);padding:var(--space-4);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--font-size-xs);white-space:pre-wrap;max-height:300px;overflow-y:auto;border:1px solid var(--color-gray-100);color:var(--color-gray-700)}.bid-comparison-app .bc-eval-drilldown{margin-top:var(--space-6)}.bid-comparison-app .bc-eval-drilldown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.bid-comparison-app .bc-eval-filters{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-4)}.bid-comparison-app .bc-eval-filter-chip{padding:var(--space-1) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-full);background:var(--color-white);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:500;cursor:pointer;transition:all var(--transition-fast);color:var(--color-gray-600)}.bid-comparison-app .bc-eval-filter-chip:hover{border-color:var(--color-gray-300);background:var(--color-gray-50)}.bid-comparison-app .bc-eval-filter-chip.active{background:var(--color-dark);color:var(--color-white);border-color:var(--color-dark)}.bid-comparison-app .bc-eval-category-badge{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600}.bid-comparison-app .bc-table-row-clickable:hover{background:var(--color-gray-50)}.bid-comparison-app .bc-table-row-selected{background:var(--color-accent-light)!important}.bid-comparison-app .bc-table-compact td{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}.bid-comparison-app .bc-text-mono{font-family:var(--font-mono);font-size:var(--font-size-xs)}.bid-comparison-app .bc-text-muted{color:var(--color-gray-400)}.bid-comparison-app .bc-settings-status{display:flex;align-items:center;gap:var(--space-2)}.bid-comparison-app .bc-settings-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.bid-comparison-app .bc-settings-status-dot.connected{background:var(--color-success);box-shadow:0 0 6px var(--color-success)}.bid-comparison-app .bc-settings-status-dot.disconnected{background:var(--color-error)}.bid-comparison-app .bc-line-item-editor{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-6);overflow:hidden;box-shadow:var(--shadow-xs)}.bid-comparison-app .bc-export-menu{position:relative;display:inline-block}.bid-comparison-app .bc-export-dropdown{position:absolute;top:calc(100% + var(--space-1));right:0;background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:160px;z-index:50;overflow:hidden;animation:bc-scale-in .15s ease}.bid-comparison-app .bc-export-dropdown button{display:block;width:100%;padding:var(--space-2) var(--space-4);background:none;border:none;text-align:left;font-family:var(--font-sans);font-size:var(--font-size-sm);cursor:pointer;color:var(--color-gray-700);transition:background var(--transition-fast)}.bid-comparison-app .bc-export-dropdown button:hover{background:var(--color-gray-50)}@media (max-width: 768px){:root{--header-height: 56px}.bid-comparison-app .bc-header{padding:0 var(--space-4)}.bid-comparison-app .bc-header-left{gap:var(--space-4)}.bid-comparison-app .bc-header-logo img{height:24px}.bid-comparison-app .bc-nav-link{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.bid-comparison-app .bc-content{flex-direction:column}.bid-comparison-app .bc-sidebar{width:100%;max-height:200px;border-right:none;border-bottom:1px solid var(--glass-border-subtle)}.bid-comparison-app .bc-main-area{padding:var(--space-4)}.bid-comparison-app .bc-comparison-table .sticky-col{position:static}.bid-comparison-app .bc-project-grid{grid-template-columns:1fr}.bid-comparison-app .bc-trade-list-header,.bid-comparison-app .bc-trade-row{grid-template-columns:70px 1fr 80px}.bid-comparison-app .bc-comparison-header,.bid-comparison-app .bc-project-detail-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}}.bid-comparison-app .bc-trade-picker-list{max-height:400px;overflow-y:auto}.bid-comparison-app .bc-trade-picker-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast)}.bid-comparison-app .bc-trade-picker-item:hover{background:var(--color-gray-50)}.bc-workbench{display:grid;grid-template-rows:auto auto 1fr;height:calc(100vh - var(--header-height));overflow:hidden}.bc-workbench-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-light);-webkit-backdrop-filter:var(--glass-blur-light);border-bottom:1px solid var(--glass-border-subtle);min-height:52px}.bc-toolbar-left{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.bc-toolbar-back{background:none;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);cursor:pointer;font-size:var(--font-size-md);color:var(--color-gray-600);transition:all var(--transition-fast);line-height:1}.bc-toolbar-back:hover{background:var(--color-gray-50);color:var(--color-gray-900)}.bc-toolbar-title{display:flex;align-items:baseline;gap:var(--space-2)}.bc-toolbar-title h2{font-size:var(--font-size-md);font-weight:600;letter-spacing:var(--tracking-tight);white-space:nowrap}.bc-toolbar-trade-code{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:600;color:var(--color-accent);background:var(--color-accent-light);padding:2px var(--space-2);border-radius:var(--radius-sm)}.bc-toolbar-bids{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:1;justify-content:center;min-width:0}.bc-toolbar-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.bc-bid-pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);border:1px solid var(--color-gray-200);background:var(--color-white);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.bc-bid-pill:hover{border-color:var(--color-gray-300);box-shadow:var(--shadow-sm)}.bc-bid-pill-icon{font-size:.7rem}.bc-bid-pill-success{border-color:#10b9814d;background:var(--color-success-bg)}.bc-bid-pill-success .bc-bid-pill-icon{color:var(--color-success)}.bc-bid-pill-error{border-color:#ef44444d;background:var(--color-error-bg)}.bc-bid-pill-error .bc-bid-pill-icon{color:var(--color-error)}.bc-bid-pill-processing{border-color:#3b82f64d;background:var(--color-accent-light)}.bc-bid-pill-processing .bc-bid-pill-icon{color:var(--color-accent);animation:bc-spin 1s linear infinite}.bc-panel-toggle{border-radius:var(--radius-md)!important;font-size:var(--font-size-sm)!important}.bc-panel-toggle.active{background:var(--color-accent-light)!important;color:var(--color-accent)!important;opacity:1!important}.bc-workbench-summary{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-100);font-size:var(--font-size-xs);color:var(--color-gray-600);min-height:32px}.bc-summary-stats{display:flex;align-items:center;gap:var(--space-2)}.bc-summary-divider{color:var(--color-gray-300)}.bc-summary-stat strong{color:var(--color-gray-800)}.bc-summary-edited strong{color:var(--color-accent)}.bc-summary-flags strong{color:var(--color-error)}.bc-summary-processing{color:var(--color-accent);font-size:var(--font-size-xs)}.bc-summary-rec{font-size:var(--font-size-xs)}.bc-summary-rec strong{color:var(--color-success)}.bc-summary-confidence{color:var(--color-gray-400);margin-left:var(--space-1)}.bc-workbench-panels{display:grid;grid-template-columns:1fr var(--right-w, 0);overflow:hidden;min-height:0}.bc-workbench-panel-right{overflow-y:auto;border-left:1px solid var(--color-gray-100);background:var(--glass-bg-strong)}.bc-workbench-panel-center{overflow:auto;background:var(--color-white)}.bc-panel-close{background:none;border:none;font-size:var(--font-size-lg);color:var(--color-gray-400);cursor:pointer;padding:var(--space-1) var(--space-2);line-height:1;transition:color var(--transition-fast);margin-left:auto}.bc-panel-close:hover{color:var(--color-gray-700)}.bc-panel-content{overflow-y:auto;height:100%}.bc-panel-bottom-action{padding:var(--space-3);border-top:1px solid var(--color-gray-100);text-align:center}.bc-panel-tabs{display:flex;border-bottom:1px solid var(--color-gray-100);background:var(--color-gray-50)}.bc-panel-tab{flex:1;padding:var(--space-2) var(--space-3);background:none;border:none;border-bottom:2px solid transparent;font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-500);cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase;letter-spacing:.03em}.bc-panel-tab:hover{color:var(--color-gray-700);background:var(--color-gray-100)}.bc-panel-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.bc-workbench-right-panel{display:flex;flex-direction:column;height:100%}.bc-workbench-right-panel .bc-panel-content{flex:1;overflow-y:auto;padding:var(--space-3)}.bid-comparison-app .bc-value-content{cursor:pointer;position:relative;padding:var(--space-1);border-radius:var(--radius-sm);transition:background var(--transition-fast)}.bid-comparison-app .bc-value-content:hover{background:#00000008}.bid-comparison-app .bc-cell-edited{position:relative}.bid-comparison-app .bc-cell-edited:after{content:"";position:absolute;top:0;right:0;width:0;height:0;border-style:solid;border-width:0 8px 8px 0;border-color:transparent var(--color-accent) transparent transparent}.bc-cell-edit-panel{padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2);background:var(--color-white);border:2px solid var(--color-accent);border-radius:var(--radius-sm);box-shadow:var(--shadow-glow)}.bc-cell-edit-field label{display:block;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-500);margin-bottom:2px}.bc-cell-edit-price{width:100%;padding:var(--space-1) var(--space-2);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:600;outline:none;background:var(--color-white)}.bc-cell-edit-price:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-glow)}.bc-cell-edit-text{width:100%;padding:var(--space-1) var(--space-2);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--font-size-xs);outline:none;resize:vertical;background:var(--color-white)}.bc-cell-edit-text:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-glow)}.bc-cell-edit-actions{display:flex;gap:var(--space-1);justify-content:flex-end}.bc-cell-edit-price::-webkit-outer-spin-button,.bc-cell-edit-price::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.bc-cell-edit-price[type=number]{-moz-appearance:textfield}.bc-cell-reset{position:absolute;top:var(--space-1);right:var(--space-1);background:none;border:none;cursor:pointer;font-size:var(--font-size-sm);color:var(--color-gray-400);opacity:0;transition:opacity var(--transition-fast),color var(--transition-fast);padding:0;line-height:1}.bc-value-content:hover .bc-cell-reset{opacity:1}.bc-cell-reset:hover{color:var(--color-accent)}.bc-cell-edited-indicator{position:absolute;top:0;right:0;width:0;height:0;border-style:solid;border-width:0 8px 8px 0;border-color:transparent var(--color-accent) transparent transparent}.bc-value-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.bc-value-price{font-family:var(--font-mono);font-weight:700;font-size:var(--font-size-sm);color:var(--color-gray-900)}.bc-value-status{font-size:var(--font-size-xs);flex-shrink:0}.bc-value-page-link{font-size:.65rem;color:var(--color-accent);position:absolute;bottom:var(--space-1);right:var(--space-1);font-family:var(--font-mono);background:none;border:none;cursor:pointer;padding:1px 4px;border-radius:var(--radius-sm);transition:all var(--transition-fast);text-decoration:underline}.bc-value-page-link:hover{background:var(--color-accent-light);color:var(--color-accent-hover)}.bc-inline-add{display:flex;gap:var(--space-2);align-items:center;padding:var(--space-2) 0}.bc-inline-add .bc-input{flex:1}.bc-header-add,.bc-section-add{background:none;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);width:22px;height:22px;font-size:var(--font-size-sm);cursor:pointer;color:var(--color-gray-500);display:inline-flex;align-items:center;justify-content:center;margin-left:var(--space-2);transition:all var(--transition-fast);line-height:1}.bc-header-add:hover,.bc-section-add:hover{background:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-accent)}.bc-row-delete{position:absolute;top:var(--space-1);right:var(--space-1);background:none;border:none;cursor:pointer;font-size:var(--font-size-sm);color:var(--color-gray-300);opacity:0;transition:all var(--transition-fast);padding:0;line-height:1}.bid-comparison-app .bc-comparison-table tbody tr:hover .bc-row-delete{opacity:1}.bc-row-delete:hover{color:var(--color-error)}.bid-comparison-app .bc-comparison-table .sticky-col{position:relative}.bc-section-empty{padding:var(--space-4);text-align:center;color:var(--color-gray-400);font-size:var(--font-size-sm);font-style:italic}.bc-table-footer{padding:var(--space-2) var(--space-4);text-align:right;border-top:1px solid var(--color-gray-100)}.bc-no-bids-header{color:var(--color-gray-400);font-weight:400;font-style:italic}.bc-vendor-review{display:flex;flex-direction:column;gap:var(--space-4)}.bc-vendor-selector{padding:0}.bc-vendor-review-empty{text-align:center;padding:var(--space-8) var(--space-4);color:var(--color-gray-500)}.bc-vendor-review-empty p{margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.bc-vendor-review-content{display:flex;flex-direction:column;gap:var(--space-4)}.bc-vendor-coverage{padding:var(--space-3);background:var(--color-gray-50);border-radius:var(--radius-md)}.bc-vendor-coverage-label{font-size:var(--font-size-sm);margin-bottom:var(--space-2)}.bc-vendor-section h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700);margin-bottom:var(--space-2);letter-spacing:var(--tracking-tight)}.bc-vendor-section ul,.bc-vendor-section ol{padding-left:var(--space-5);margin:0}.bc-vendor-section li{font-size:var(--font-size-sm);line-height:1.5;margin-bottom:var(--space-2);color:var(--color-gray-700)}.bc-vendor-actions{display:flex;gap:var(--space-2)}.bc-vendor-email{border:1px solid var(--color-gray-100);border-radius:var(--radius-md);overflow:hidden}.bc-vendor-email-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-100)}.bc-vendor-email-header h4{font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-600);margin:0}.bc-vendor-email-content{padding:var(--space-3);font-family:var(--font-sans);font-size:var(--font-size-sm);line-height:1.6;white-space:pre-wrap;color:var(--color-gray-700);max-height:300px;overflow-y:auto;background:var(--color-white);margin:0}.bc-trade-bid-badge{font-size:var(--font-size-xs);font-weight:600;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);text-align:center;white-space:nowrap}.bc-badge-active{background:var(--color-success-bg);color:var(--color-success)}.bc-badge-empty{background:var(--color-gray-50);color:var(--color-gray-400)}.bc-trade-row-empty{opacity:.6}.bc-trade-row-empty:hover{opacity:1}.bc-project-avatar{width:40px;height:40px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--color-white);font-weight:700;font-size:var(--font-size-sm);flex-shrink:0}.bid-comparison-app .bc-project-card-header{display:flex;align-items:center;gap:var(--space-3)}.bc-project-card-info{flex:1;min-width:0}.bc-project-card-info h3{font-size:var(--font-size-md);font-weight:600;letter-spacing:var(--tracking-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bc-project-address{font-size:var(--font-size-xs);color:var(--color-gray-400);display:block;margin-top:2px}.bc-project-card-meta{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-gray-50)}.bc-bid-viewer-notice{padding:var(--space-2) var(--space-4);background:var(--color-warning-bg);color:#92400e;font-size:var(--font-size-xs);border-bottom:1px solid rgba(245,158,11,.2)}.bid-comparison-app .bc-modal-fullwidth{max-width:90vw;width:900px;max-height:85vh}@media (max-width: 1440px){.bc-workbench-panel-right{position:absolute;top:0;right:0;bottom:0;width:360px;z-index:50;box-shadow:var(--shadow-lg)}.bc-workbench-panels{position:relative;grid-template-columns:1fr!important}}@media (max-width: 768px){.bc-workbench-toolbar{flex-wrap:wrap;gap:var(--space-2)}.bc-toolbar-bids{order:3;width:100%;justify-content:flex-start}.bc-workbench-summary{flex-direction:column;align-items:flex-start;gap:var(--space-1)}}
