@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";.dashboard{flex-direction:column;gap:16px;height:100%;display:flex}.import-bar{background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:8px;padding:12px;display:flex}.import-bar textarea{font-family:var(--font-ui);resize:vertical;min-height:80px}.import-controls{justify-content:flex-end;align-items:center;gap:12px;display:flex}.import-controls select,.import-controls button{padding:6px 12px;font-size:12px}.import-controls button{background-color:var(--green);color:#fff;font-weight:600}.import-controls button:hover:not(:disabled){background-color:#27ae60}.import-controls button:disabled{opacity:.5;cursor:not-allowed}.metrics-row{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.metric-card{background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:16px}.metric-card[data-color=blue]{border-left:3px solid var(--blue)}.metric-card[data-color=amber]{border-left:3px solid var(--amber)}.metric-card[data-color=green]{border-left:3px solid var(--green)}.metric-card[data-color=purple]{border-left:3px solid var(--purple)}.metric-value{color:var(--text-0);margin-bottom:4px;font-size:24px;font-weight:700}.metric-label{color:var(--text-2);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.dashboard-grid{flex:1;grid-template-columns:2fr 1fr;gap:12px;min-height:0;display:grid}.grid-col-2{grid-area:1/1/3}.grid-col-1{flex-direction:column;display:flex}.grid-col-1:last-child{grid-area:2/2}.opp-list,.queue-list,.activity-list{flex-direction:column;gap:8px;display:flex}.opp-row,.queue-row,.activity-row{border-radius:var(--radius);background-color:#ffffff05;border:1px solid #0000;align-items:center;padding:8px;transition:all .15s;display:flex}.opp-row:hover,.queue-row:hover,.activity-row:hover{border-color:var(--border-active);background-color:#ffffff0a}.opp-score{margin-right:12px}.opp-details{flex:1}.opp-match{margin-bottom:2px;font-size:12px}.activity-dot{border-radius:50%;width:8px;height:8px;margin-right:10px;display:inline-block}.activity-dot[data-type=import]{background-color:var(--blue)}.activity-dot[data-type=match]{background-color:var(--green)}.activity-dot[data-type=error]{background-color:var(--red)}.import-result-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.import-result-modal{background:var(--bg-1,var(--surface));border-radius:10px;width:min(520px,95vw);max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0006}.import-result-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.import-result-header h2{color:var(--text-0,var(--text-primary));margin:0;font-size:1rem;font-weight:600}.import-result-close{cursor:pointer;color:var(--text-2,var(--text-muted));background:0 0;border:none;padding:0 4px;font-size:1.4rem;line-height:1}.import-result-body{flex-direction:column;gap:14px;padding:20px 24px 24px;display:flex}.import-result-kpi-row{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;display:grid}.import-result-kpi-card{background-color:var(--bg-2);border-radius:var(--radius,6px);text-align:center;padding:12px}.import-result-kpi-value{color:var(--text-0,var(--text-primary));margin-bottom:4px;font-size:18px;font-weight:600}.import-result-kpi-label{color:var(--text-2,var(--text-muted));text-transform:uppercase;letter-spacing:.5px;font-size:10px}.import-result-errors{background-color:var(--bg-2);border-radius:var(--radius,6px);padding:12px}.import-result-errors h3{color:var(--text-1,var(--text-primary));text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px;font-size:11px;font-weight:600}.import-result-errors-list{max-height:200px;overflow-y:auto}.import-result-errors-list p{color:var(--text-2,var(--text-muted));margin:0 0 4px;font-size:.8rem}.import-result-actions{justify-content:flex-end;display:flex}.import-result-done{background:var(--accent,#6366f1);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:.85rem;font-weight:600}.import-result-done:hover{opacity:.9}.import-page{flex-direction:column;gap:24px;display:flex}.upload-sections{background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.upload-sections h2{margin:0 0 16px;font-size:16px}.upload-section{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px;overflow:hidden}.section-header{background-color:var(--bg-2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:12px;display:flex}.section-header:hover{background-color:var(--bg-3)}.section-toggle{color:var(--text-2);font-size:10px}.section-header h3{margin:0;font-size:13px;font-weight:600}.section-content{background-color:var(--bg-1);padding:12px}.file-dropzone{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;padding:32px;transition:all .15s}.file-dropzone:hover{border-color:var(--amber);background-color:var(--amber-glow)}.dropzone-label{color:var(--text-1);cursor:pointer;font-size:12px;display:block}.message{border-radius:var(--radius);padding:8px 12px;font-size:12px}.message.success{color:var(--green);border:1px solid var(--green);background-color:#2ecc711a}.message.error{color:var(--red);border:1px solid var(--red);background-color:#e74c3c1a}.recent-imports{background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.recent-imports h2{margin:0 0 16px;font-size:16px}.imports-table{border-collapse:collapse;width:100%;font-size:12px}.imports-table th{text-align:left;border-bottom:1px solid var(--border);color:var(--text-2);padding:8px;font-weight:600}.imports-table td{border-bottom:1px solid var(--border);color:var(--text-0);padding:8px}.imports-table tbody tr:hover{background-color:#ffffff05}.whatsapp-inbox-page{flex-direction:column;gap:16px;height:100%;padding:24px;display:flex}.whatsapp-inbox-page .page-header h1{color:var(--text-0);margin:0;font-size:1.25rem;font-weight:600}.whatsapp-inbox-layout{flex:1;grid-template-columns:320px 1fr;gap:16px;min-height:0;display:grid}.whatsapp-chat-list{border-right:1px solid var(--border);flex-direction:column;gap:6px;padding-right:12px;display:flex;overflow-y:auto}.whatsapp-chat-row{text-align:left;cursor:pointer;font-family:var(--font-ui);background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.whatsapp-chat-row:hover{background-color:var(--bg-2)}.whatsapp-chat-row.active{background-color:var(--bg-2);border-color:var(--border-active)}.whatsapp-chat-row-main{justify-content:space-between;align-items:center;gap:8px;display:flex}.whatsapp-chat-row-main strong{color:var(--text-0);font-size:.88rem}.whatsapp-chat-count{background-color:var(--bg-3);color:var(--text-2);border-radius:10px;padding:1px 7px;font-size:.7rem;font-weight:600;display:inline-block}.whatsapp-chat-row-time{color:var(--text-2);font-size:.72rem}.whatsapp-transcript-panel{flex-direction:column;min-height:0;display:flex;overflow-y:auto}.whatsapp-transcript{flex-direction:column;gap:12px;height:100%;min-height:0;display:flex}.whatsapp-transcript-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:8px;display:flex}.whatsapp-transcript-header h2{color:var(--text-0);margin:0;font-size:1.05rem}.whatsapp-transcript-count{color:var(--text-2);font-size:.75rem}.whatsapp-transcript-body{flex-direction:column;flex:1;gap:10px;min-height:0;padding:4px 4px 12px;display:flex;overflow-y:auto}.whatsapp-bubble-row{display:flex}.whatsapp-bubble{background-color:var(--bg-2);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:3px;max-width:70%;padding:8px 12px;display:flex}.whatsapp-bubble-sender{color:var(--purple);align-items:center;gap:6px;font-size:.72rem;font-weight:600;display:flex}.whatsapp-media-tag{color:var(--text-2);font-size:.68rem;font-weight:500}.whatsapp-bubble-text{color:var(--text-1);white-space:pre-wrap;word-break:break-word;font-size:.85rem}.whatsapp-bubble-time{color:var(--text-2);align-self:flex-end;font-size:.68rem}.whatsapp-system-note{color:var(--text-2);background-color:var(--bg-3);border-radius:10px;align-self:center;padding:3px 10px;font-size:.72rem;font-style:italic}.whatsapp-inbox-page .loading-state,.whatsapp-inbox-page .empty-state{text-align:center;color:var(--text-2);padding:32px}.whatsapp-inbox-page .empty-state.small{padding:16px}.whatsapp-inbox-page .empty-state small{margin-top:4px;font-size:.8rem;display:block}.review-queue{flex-direction:column;gap:16px;height:100%;display:flex}.toolbar{background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:16px;padding:12px;display:flex}.filter-group,.search-group{align-items:center;gap:8px;display:flex}.filter-group label{color:var(--text-1);font-size:12px}.search-group input{min-width:200px}.review-all-btn{background-color:var(--amber);color:var(--bg-0);margin-left:auto;padding:6px 12px;font-size:12px;font-weight:600}.review-all-btn:hover{background-color:#e8941a}.import-filter-banner{background-color:var(--amber-glow,#f0ad4e1f);border:1px solid var(--amber);border-radius:var(--radius);color:var(--text-1);align-items:center;gap:12px;padding:8px 12px;font-size:12px;display:flex}.import-filter-banner button{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-1);cursor:pointer;background:0 0;padding:3px 10px;font-size:11px}.import-filter-banner button:hover{background-color:var(--bg-2)}.queue-table{border-collapse:collapse;background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);width:100%;font-size:12px;overflow:hidden}.queue-table thead{background-color:var(--bg-2)}.queue-table th{text-align:left;border-bottom:1px solid var(--border);color:var(--text-2);text-transform:uppercase;letter-spacing:.5px;padding:10px 12px;font-size:11px;font-weight:600}.queue-table td{border-bottom:1px solid var(--border);color:var(--text-0);padding:10px 12px}.queue-table tbody tr{transition:all .15s}.queue-table tbody tr:hover{background-color:#ffffff0a}.queue-table tbody tr.new-row{border-left:3px solid var(--amber)}.actions{gap:6px;display:flex}.approve-btn,.reject-btn{border-radius:var(--radius);cursor:pointer;padding:4px 8px;font-size:11px}.approve-btn{color:var(--green);border:1px solid var(--green);background-color:#2ecc711a}.approve-btn:hover{background-color:#2ecc7133}.reject-btn{color:var(--red);border:1px solid var(--red);background-color:#e74c3c1a}.reject-btn:hover{background-color:#e74c3c33}.expanded-row td{padding:0}.edit-panel{background-color:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;gap:16px;padding:16px;display:flex}.form-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.form-group{flex-direction:column;gap:4px;min-width:0;display:flex}.form-group.full-width{grid-column:1/-1}.form-group label{color:var(--text-2);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.form-group input,.form-group select,.form-group textarea{border-radius:var(--radius);border:1px solid var(--border);background-color:var(--bg-0);width:100%;color:var(--text-0);box-sizing:border-box;padding:6px 8px;font-size:12px}.form-group textarea{resize:vertical}.supplier-dropdown{z-index:20;background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);max-height:180px;margin-top:2px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000004d}.supplier-dropdown-item{color:var(--text-0);cursor:pointer;padding:6px 10px;font-size:12px}.supplier-dropdown-item:hover{background-color:var(--bg-2)}.supplier-dropdown-create{color:var(--amber);border-top:1px solid var(--border)}.ean-suggestion{border:1px solid var(--amber);border-radius:var(--radius);color:var(--text-0);background-color:#f5a62314;margin-top:6px;padding:8px;font-size:12px}.button-row{flex-wrap:wrap;gap:10px;display:flex}.button-row button{border-radius:var(--radius);cursor:pointer;border:1px solid #0000;padding:7px 14px;font-size:12px;font-weight:600}.button-row button:disabled{opacity:.5;cursor:not-allowed}.approve-changes-btn,.approve-asIs-btn{color:var(--green);border-color:var(--green);background-color:#2ecc711a}.approve-changes-btn:hover:not(:disabled),.approve-asIs-btn:hover:not(:disabled){background-color:#2ecc7133}.reject-btn-panel{color:var(--red);border-color:var(--red);background-color:#e74c3c1a}.reject-btn-panel:hover:not(:disabled){background-color:#e74c3c33}.cancel-btn{background-color:var(--bg-0);color:var(--text-1);border-color:var(--border)}.cancel-btn:hover:not(:disabled){background-color:var(--bg-1)}.pagination{background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);justify-content:center;align-items:center;gap:16px;padding:12px;font-size:12px;display:flex}.pagination button{padding:6px 12px;font-size:12px}.pagination button:disabled{opacity:.5;cursor:not-allowed}.empty-state{background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);height:300px;color:var(--text-2);justify-content:center;align-items:center;font-size:14px;display:flex}.offers-page{flex-direction:column;gap:16px;padding:24px;display:flex}.offers-page .page-header{justify-content:space-between;align-items:center;display:flex}.offers-page .page-header h1{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600}.offers-page .filter-bar{flex-wrap:wrap;gap:8px;display:flex}.offers-page .filter-bar select{border:1px solid var(--border);background:var(--surface);color:var(--text-primary);border-radius:6px;padding:6px 10px;font-size:.85rem}.offers-page .table-wrap{width:100%;overflow-x:hidden}.offers-page .offers-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:.82rem}.offers-page .offers-table th{text-align:left;border-bottom:2px solid var(--border);color:var(--text-muted);padding:8px 10px;font-weight:600}.offers-page .offers-table td{border-bottom:1px solid var(--border);color:var(--text-primary);padding:8px 10px}.offers-page .offers-table tr[data-status=expired] td{opacity:.6}.offers-page .offers-table td.price{font-weight:600}.offers-page .offers-table .col-supplier{width:20%}.offers-page .offers-table .col-product{width:35%}.offers-page .offers-table .col-qty{width:8%}.offers-page .offers-table .col-price{width:12%}.offers-page .offers-table .col-status{width:10%}.offers-page .offers-table .col-actions{width:15%}.offers-page .offers-table td.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.offers-page .actions{flex-wrap:wrap;gap:6px;display:flex}.offers-page .status-chip{text-transform:uppercase;border-radius:12px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-block}.offers-page .status-chip.active{background:color-mix(in srgb, var(--success,#22c55e) 15%, transparent);color:var(--success,#22c55e)}.offers-page .status-chip.expired{background:color-mix(in srgb, var(--text-muted,#94a3b8) 15%, transparent);color:var(--text-muted,#94a3b8)}.offers-page .status-chip.withdrawn{background:color-mix(in srgb, var(--danger,#ef4444) 15%, transparent);color:var(--danger,#ef4444)}.offers-page .btn-primary{background:var(--accent,#6366f1);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:.85rem;font-weight:600}.offers-page .btn-primary:hover{opacity:.9}.offers-page .btn-expire{border:1px solid var(--warning,#f59e0b);color:var(--warning,#f59e0b);cursor:pointer;background:0 0;border-radius:4px;padding:3px 10px;font-size:.78rem}.offers-page .btn-expire:hover{background:color-mix(in srgb, var(--warning,#f59e0b) 10%, transparent)}.offers-page .btn-delete{border:1px solid var(--danger,#ef4444);color:var(--danger,#ef4444);cursor:pointer;background:0 0;border-radius:4px;padding:3px 10px;font-size:.78rem}.offers-page .btn-delete:hover{background:color-mix(in srgb, var(--danger,#ef4444) 10%, transparent)}.offers-page .btn-expire:disabled,.offers-page .btn-delete:disabled{opacity:.4;cursor:not-allowed}.offers-page .loading-state,.offers-page .empty-state{text-align:center;color:var(--text-muted);padding:48px}.offers-page .empty-state small{margin-top:4px;font-size:.8rem;display:block}.action-menu{display:inline-block;position:relative}.action-menu-trigger{border:1px solid var(--border);cursor:pointer;color:var(--text-2);letter-spacing:0;background:0 0;border-radius:6px;padding:2px 8px;font-size:18px;line-height:1.2;transition:background .12s,color .12s}.action-menu-trigger:hover{background:var(--bg-2);color:var(--text-0)}.action-menu-dropdown{z-index:200;position:absolute;top:calc(100% + 4px);right:0}.action-menu-dropdown--fixed{z-index:9999;background:var(--bg-1);border:1px solid var(--border);border-radius:8px;min-width:140px;margin:0;padding:4px 0;list-style:none;position:fixed;box-shadow:0 8px 24px #0000002e}.action-menu-item{cursor:pointer;width:100%;color:var(--text-1);text-align:left;white-space:nowrap;background:0 0;border:none;align-items:center;gap:8px;padding:8px 14px;font-size:13px;transition:background .1s;display:flex}.action-menu-item:hover:not(:disabled){background:var(--bg-2);color:var(--text-0)}.action-menu-item:disabled{opacity:.4;cursor:not-allowed}.action-menu-item.danger{color:var(--danger,#ef4444)}.action-menu-item.danger:hover:not(:disabled){color:var(--danger,#ef4444);background:#ef44441a}.action-menu-icon{text-align:center;flex-shrink:0;width:16px;font-size:14px}.action-menu-divider{background:var(--border);height:1px;margin:4px 0}.products-page{flex-direction:column;gap:12px;height:100%;padding:16px;display:flex;overflow-y:auto}.products-toolbar{align-items:center;gap:8px;display:flex}.products-search-wrap{flex:1;align-items:center;display:flex;position:relative}.products-search{width:100%}.search-clear-btn{cursor:pointer;color:var(--text-2);background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1;position:absolute;right:8px}.products-table-wrapper{border:1px solid var(--border);border-radius:var(--radius);background-color:var(--bg-1);overflow-x:auto}.products-table{border-collapse:collapse;width:100%;font-size:13px}.products-table thead{background-color:var(--bg-2);border-bottom:2px solid var(--border);position:sticky;top:0}.products-table thead th{text-align:left;color:var(--text-1);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;padding:12px 10px;font-size:11px;font-weight:600}.products-table tbody tr.product-row{border-bottom:1px solid var(--border);transition:background-color .15s}.products-table tbody tr.product-row:hover{background-color:var(--bg-2)}.products-table td{color:var(--text-1);vertical-align:middle;padding:10px}.products-table td.mono{color:var(--text-2);font-family:monospace;font-size:12px}.col-brand{min-width:200px}.col-brand-only{min-width:130px}.col-model{min-width:160px}.col-part{min-width:120px}.col-created{white-space:nowrap;min-width:110px}.products-table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.products-table thead th.sortable:hover{color:var(--amber,#f59e0b)}.sort-icon{opacity:.35;margin-left:4px;font-size:10px}.sort-icon.active{opacity:1;color:var(--amber,#f59e0b)}.col-filter-row th{background:var(--surface-1,var(--bg-1));border-bottom:2px solid var(--border);padding:3px 4px}.col-filter-row input,.col-filter-row select{box-sizing:border-box;border:1px solid var(--border);background:var(--bg-0,#fff);width:100%;color:var(--text-1);border-radius:3px;outline:none;padding:3px 5px;font-size:11px}.col-filter-row input:focus,.col-filter-row select:focus{border-color:var(--accent,#2563eb);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent,#2563eb) 20%, transparent)}.col-ean{min-width:140px}.col-category,.col-capacity{min-width:100px}.col-status{min-width:80px}.col-actions{min-width:140px}.brand-model-cell{color:var(--text-0);align-items:center;gap:10px;font-weight:500;display:flex}.action-buttons{gap:6px;display:flex}.product-offers-row td{border-bottom:1px solid var(--border);padding:0}.offers-section{background-color:var(--bg-0,var(--bg-2));padding:12px}.accordion-loading,.accordion-empty{text-align:center;color:var(--text-2);padding:16px;font-size:12px}.left-panel{background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:12px;width:400px;min-width:0;padding:12px;display:flex}.chip{border:1px solid var(--border);background-color:var(--bg-2);color:var(--text-1);cursor:pointer;border-radius:12px;padding:4px 12px;font-size:11px;transition:all .15s}.chip:hover:not(:disabled){border-color:var(--amber);color:var(--amber)}.chip.active{border-color:var(--amber);color:var(--amber);background-color:#f5a6231a}.products-list{flex-direction:column;flex:1;gap:8px;display:flex;overflow-y:auto}.product-card{background-color:var(--bg-2);border-radius:var(--radius);cursor:pointer;border:1px solid #0000;padding:12px;transition:all .15s}.product-card:hover{border-color:var(--border-active);background-color:var(--bg-3)}.product-card.selected{border-left:3px solid var(--amber);background-color:var(--bg-3)}.product-name{color:var(--text-0);margin-bottom:4px;font-size:13px;font-weight:500}.product-brand{color:var(--text-2);margin-bottom:6px;font-size:11px}.product-stats{flex-wrap:wrap;gap:4px;display:flex}.product-detail{height:100%;overflow-y:auto}.product-detail h2{color:var(--text-0);margin:0 0 16px;font-size:16px}.detail-grid{flex-direction:column;gap:16px;display:flex}.detail-block{background-color:var(--bg-2);border-radius:var(--radius);padding:12px}.detail-table{border-collapse:collapse;width:100%;font-size:12px}.detail-table td{border-bottom:1px solid var(--border);color:var(--text-1);padding:6px}.detail-table td:first-child{color:var(--text-2);width:70px;font-weight:500}.price-row{align-items:center;gap:8px;padding:8px;font-size:12px;display:flex}.price-row span{min-width:70px}.price-row .small{margin-left:4px;font-size:10px}.product-avatar{background-color:var(--amber,#f59e0b);width:32px;height:32px;color:var(--bg-0,#fff);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.product-info{flex:1;min-width:0}.product-meta{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:6px;font-size:10px;display:flex}.meta-item.mono{font-family:monospace}.supplier-offers-page{flex-direction:column;gap:16px;padding:24px;display:flex}.filter-bar{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius,8px);flex-wrap:wrap;align-items:flex-end;gap:12px;padding:10px 12px;display:flex}.filter-group{flex-direction:column;gap:4px;display:flex}.filter-label{color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:600}.filter-select{border:1px solid var(--border);background:var(--bg-0,var(--bg-2));color:var(--text-1);border-radius:6px;min-width:130px;padding:6px 10px;font-size:.85rem}.filter-select:focus{border-color:var(--accent,#6366f1);outline:none}.filter-search-wrap{align-items:center;display:flex;position:relative}.filter-search{border:1px solid var(--border);background:var(--bg-0,var(--bg-2));color:var(--text-1);border-radius:6px;width:220px;padding:6px 28px 6px 10px;font-size:.85rem}.filter-search:focus{border-color:var(--accent,#6366f1);outline:none}.filter-clear-btn{cursor:pointer;color:var(--text-2);background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1;position:absolute;right:6px}.filter-clear-btn:hover{color:var(--text-1)}.filter-reset-btn{border:1px solid var(--border);color:var(--text-2);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;align-self:flex-end;padding:6px 12px;font-size:.82rem}.filter-reset-btn:hover{background:var(--bg-2);color:var(--text-1)}.offers-table{border-collapse:collapse;width:100%;font-size:.82rem}.offers-table th{text-align:left;border-bottom:2px solid var(--border);color:var(--text-2);white-space:nowrap;padding:8px 10px;font-weight:600}.offers-table td{border-bottom:1px solid var(--border);color:var(--text-1);white-space:nowrap;padding:8px 10px}.offers-table tr[data-status=expired] td{opacity:.5}.offers-table td.mono{font-family:monospace;font-size:.78rem}.offers-table td.price{font-weight:600}.offers-table td.age{color:var(--text-2);font-size:.78rem}.status-chip.active{background:color-mix(in srgb, var(--success,#22c55e) 15%, transparent);color:var(--success,#22c55e)}.status-chip.expired{background:color-mix(in srgb, var(--text-2) 15%, transparent);color:var(--text-2)}.btn-expire{border:1px solid var(--warning,#f59e0b);color:var(--warning,#f59e0b);cursor:pointer;background:0 0;border-radius:4px;padding:3px 10px;font-size:.78rem}.btn-expire:hover{background:color-mix(in srgb, var(--warning,#f59e0b) 10%, transparent)}.btn-expire:disabled{opacity:.4;cursor:not-allowed}.btn-icon{border:1px solid var(--border,#d1d5db);color:var(--text-2,#6b7280);cursor:pointer;background:0 0;border-radius:4px;padding:3px 6px;font-size:.82rem;line-height:1}.btn-icon:hover{background:color-mix(in srgb, var(--text-2,#6b7280) 10%, transparent);color:var(--text-1,#111827)}.btn-icon.btn-icon-danger{border-color:var(--danger,#ef4444);color:var(--danger,#ef4444)}.btn-icon.btn-icon-danger:hover{background:color-mix(in srgb, var(--danger,#ef4444) 10%, transparent)}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.offers-table tr[data-highlight=true] td{background:color-mix(in srgb, var(--accent,#3b82f6) 12%, transparent);animation:3s forwards highlight-fade}@keyframes highlight-fade{0%{background:color-mix(in srgb, var(--accent,#3b82f6) 25%, transparent)}to{background:0 0}}.suppliers-page{height:100%}.split-layout{gap:12px;height:100%;display:flex}.left-panel{background-color:#fff;border-right:1px solid #e2e8f0;border-radius:0;flex-direction:column;gap:12px;width:320px;min-width:0;padding:12px;display:flex}.search-container{flex-shrink:0;align-items:center;display:flex;position:relative}.search-icon{color:#94a3b8;pointer-events:none;position:absolute;left:12px}.search-input{color:#0f172a;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:8px 12px 8px 36px;font-family:inherit;font-size:13px}.search-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.left-panel input{flex-shrink:0}.left-panel-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.btn-add-company{color:#fff;cursor:pointer;white-space:nowrap;background-color:#2563eb;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.btn-add-company:hover{background-color:#1d4ed8}.btn-import{color:#0f172a;cursor:pointer;white-space:nowrap;background-color:#0000;border:1px solid #e2e8f0;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.btn-import.disabled{opacity:.5;cursor:not-allowed}.left-panel-actions .btn-primary,.left-panel-actions .btn-secondary{white-space:nowrap;text-align:center;flex:1}.btn-file{cursor:pointer;margin:0}.btn-file.disabled{opacity:.5;cursor:not-allowed}.filter-chips{flex-wrap:wrap;flex-shrink:0;gap:6px;display:flex}.chip{color:#0f172a;cursor:pointer;background-color:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:6px 14px;font-size:12px;transition:all .15s}.chip:hover:not(:disabled){background-color:#f8fafc;border-color:#cbd5e1}.chip.active{color:#fff;background-color:#2563eb;border-color:#2563eb}.chip:disabled{opacity:.5;cursor:not-allowed}.suppliers-list{flex-direction:column;flex:1;gap:0;display:flex;overflow-y:auto}.companies-grid{flex-direction:column;gap:0;display:flex}.company-row{cursor:pointer;background-color:#fff;border-bottom:1px solid #e2e8f0;border-left:3px solid #0000;align-items:center;gap:12px;padding:12px;transition:all .15s;display:flex}.company-row:hover{background-color:#f8fafc}.company-row.selected{background-color:#f8fafc;border-left-color:#2563eb}.company-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:600;display:flex}.company-info{flex:1;min-width:0}.company-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:14px;font-weight:600;overflow:hidden}.company-meta{color:#94a3b8;font-size:12px}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot.active{background-color:#10b981}.status-dot.inactive{background-color:#cbd5e1}.pagination{color:#94a3b8;border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:12px;font-size:11px;display:flex}.pagination-info{flex:1}.pagination-btn{cursor:pointer;color:#0f172a;background-color:#0000;border:1px solid #e2e8f0;border-radius:4px;padding:4px 8px;font-size:12px;transition:all .15s}.pagination-pages{color:#0f172a;text-align:center;min-width:50px;font-size:11px}.supplier-card{background-color:var(--bg-2);border-radius:var(--radius);cursor:pointer;border:1px solid #0000;align-items:center;gap:12px;padding:12px;transition:all .15s;display:flex}.supplier-card:hover{border-color:var(--border-active);background-color:var(--bg-3)}.supplier-card.selected{border-left:3px solid var(--amber);background-color:var(--bg-3)}.supplier-avatar{background-color:var(--amber);width:32px;height:32px;color:var(--bg-0);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.supplier-info{flex:1;min-width:0}.supplier-name{color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:13px;font-weight:500;overflow:hidden}.supplier-meta{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:6px;font-size:10px;display:flex}.meta-item{white-space:nowrap}.right-panel{background-color:#fff;border:1px solid #e2e8f0;border-radius:0;flex-direction:column;flex:1;min-width:0;padding:14px 24px;display:flex}.detail-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:20px;display:flex}.badge-active{color:#166534;background-color:#dcfce7;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.btn-header{color:#0f172a;cursor:pointer;background-color:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:8px 14px;font-size:13px;font-weight:500;transition:all .15s}.btn-header:hover{background-color:#f8fafc;border-color:#cbd5e1}.btn-header.btn-danger{color:#ef4444;border-color:#ef4444}.btn-header.btn-danger:hover:not(:disabled){background-color:#fef2f2}.btn-header:disabled{opacity:.5;cursor:not-allowed}.stat-cards{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px;display:grid}.stat-card{text-align:center;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px}.stat-icon{justify-content:center;align-items:center;height:24px;margin-bottom:6px;font-size:15px;display:flex}.stat-value{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:15px;font-weight:700;overflow:hidden}.stat-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;font-size:11px}.empty-state{height:100%;color:var(--text-2);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.loading{text-align:center;color:var(--text-2);padding:24px;font-size:13px}.supplier-detail{height:100%;overflow-y:auto}.supplier-detail h2{color:var(--text-0);margin:0 0 16px;font-size:16px}.kpi-row,.kpi-card,.kpi-value,.kpi-value.rank,.kpi-label{display:none}.detail-block{background-color:var(--bg-2);border-radius:var(--radius);margin-bottom:12px;padding:12px}.detail-block h3{color:var(--text-1);text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px;font-size:11px;font-weight:600}.detail-block p{color:var(--text-1);margin:0;font-size:13px}.detail-field-block{background-color:var(--bg-2);border-radius:var(--radius);margin-bottom:6px;padding:10px 12px}.detail-field-block h3{color:var(--text-1);text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px;font-size:11px;font-weight:600}.detail-field-block p{color:var(--text-1);margin:0;font-size:13px}.table-controls{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.table-actions{gap:8px;display:flex}.btn-import{color:#0f172a;cursor:pointer;background-color:#0000;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.btn-import:hover{background-color:#f8fafc;border-color:#cbd5e1}.btn-add-offer{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.btn-add-offer:hover{background-color:#1d4ed8}.table-search{min-width:200px;position:relative}.table-search .search-icon{color:#94a3b8;pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-field{color:#0f172a;background-color:#fff;border:1px solid #e2e8f0;border-radius:6px;width:100%;padding:8px 12px 8px 36px;font-family:inherit;font-size:13px}.search-field::placeholder{color:#94a3b8}.search-field:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1a}.filter-banner{color:#0f172a;background-color:#2563eb1a;border-radius:4px;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;font-size:13px;display:flex}.filter-banner button{color:#0f172a;cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0;font-size:1.2rem}.table-container{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;overflow-x:auto}.data-table{border-collapse:collapse;background-color:#fff;width:100%}.data-table thead{background-color:#f8fafc}.data-table th{text-align:left;text-transform:uppercase;color:#64748b;letter-spacing:.5px;border-bottom:1px solid #e2e8f0;padding:12px 16px;font-size:11px;font-weight:700}.data-table tbody tr{border-top:1px solid #e2e8f0}.data-table tbody tr:hover{background-color:#f8fafc}.data-table td{color:#0f172a;padding:12px 16px;font-size:13px}.price-cell{color:#64748b;font-family:JetBrains Mono,Courier New,monospace}.status-badge.expired{color:#64748b;background-color:#f1f5f9}.action-cell{text-align:right}.menu-container{display:inline-block;position:relative}.menu-button{cursor:pointer;color:#0f172a;background:0 0;border:1px solid #e2e8f0;border-radius:4px;justify-content:center;align-items:center;padding:4px 8px;transition:all .15s;display:flex}.menu-button:hover{background-color:#f8fafc;border-color:#cbd5e1}.dropdown-menu{z-index:10;background-color:#fff;border:1px solid #e2e8f0;border-radius:6px;min-width:120px;margin-top:4px;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #0000001a}.dropdown-menu button{text-align:left;color:#0f172a;cursor:pointer;background:0 0;border:none;width:100%;padding:8px 12px;font-size:13px;transition:all .15s;display:block}.dropdown-menu button:hover{background-color:#f8fafc}.dropdown-menu button:first-child{border-radius:6px 6px 0 0}.dropdown-menu button:last-child{border-radius:0 0 6px 6px}.dropdown-menu button.delete-option{color:#ef4444;border-top:1px solid #e2e8f0}.table-pagination{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:0 0 8px 8px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;display:flex}.pagination-info{color:#64748b;align-items:center;gap:16px;display:flex}.rows-selector{align-items:center;gap:8px;font-size:12px;display:flex}.rows-selector label{color:#64748b;margin:0}.rows-selector select{color:#0f172a;cursor:pointer;background-color:#fff;border:1px solid #e2e8f0;border-radius:4px;padding:4px 8px;font-size:12px}.pagination-controls{align-items:center;gap:8px;display:flex}.pagination-btn{color:#0f172a;cursor:pointer;background-color:#fff;border:1px solid #e2e8f0;border-radius:4px;padding:4px 8px;transition:all .15s}.pagination-btn:hover:not(:disabled){background-color:#fff;border-color:#cbd5e1}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-page{color:#0f172a;text-align:center;min-width:50px;font-size:12px}.modal-form input,.modal-form select{border:1px solid var(--border);background:var(--bg-0,var(--bg));color:var(--text-0,var(--text-primary));border-radius:6px;padding:7px 10px;font-size:.85rem}.g-sync-btn{cursor:pointer;letter-spacing:-.5px;border:1px solid;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:26px;padding:0;font-family:inherit;font-size:10px;font-weight:700;transition:background .12s,opacity .12s;display:inline-flex}.g-sync-btn:disabled{cursor:default}.g-sync-btn--gray{color:#475569;background:#f8fafc;border-color:#cbd5e1}.g-sync-btn--gray:not(:disabled):hover{background:#f1f5f9}.g-sync-btn--blue{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.g-sync-btn--green{color:#15803d;background:#f0fdf4;border-color:#86efac}.g-sync-btn--orange{color:#c2410c;background:#fff7ed;border-color:#fed7aa}.g-sync-btn--red{color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.g-sync-btn--red:not(:disabled):hover{background:#fee2e2}.g-sync-btn--purple{color:#7c3aed;background:#faf5ff;border-color:#d8b4fe}.g-sync-btn--purple:not(:disabled):hover{background:#f3e8ff}.g-sync-btn--busy{opacity:.65;cursor:wait}.watchlist-page{height:100%;padding:24px;overflow-y:auto}.watchlist-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.watchlist-header h1{color:var(--text-0);margin:0;font-size:24px}.count-badge{background-color:var(--amber);color:var(--bg-0);border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600}.watchlist-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:16px;display:grid}.watchlist-card{background-color:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);transition:all .2s;overflow:hidden}.watchlist-card:hover{border-color:var(--amber);box-shadow:0 4px 12px #39d3531a}.card-header{border-bottom:1px solid var(--border);background-color:var(--bg-2);justify-content:space-between;align-items:flex-start;padding:16px;display:flex}.card-header h3{color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-size:14px;font-weight:600;overflow:hidden}.remove-btn{color:var(--text-2);cursor:pointer;background:0 0;border:none;margin-left:8px;padding:0;font-size:18px;transition:color .2s}.remove-btn:hover{color:var(--red)}.card-content{flex-direction:column;gap:12px;padding:16px;display:flex}.price-block{grid-template-columns:1fr 1fr;gap:12px;display:grid}.price-item{flex-direction:column;gap:6px;display:flex}.label{color:var(--text-2);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:600}.score-badge{color:var(--purple);font-size:12px;font-weight:600}.stale-badge{color:var(--amber);white-space:nowrap;background-color:#ffc10733;border-radius:4px;padding:2px 6px;font-size:11px}.fresh-badge{color:var(--green);white-space:nowrap;background-color:#39d35333;border-radius:4px;padding:2px 6px;font-size:11px}.fields-block{flex-direction:column;gap:6px;display:flex}.fields-list{flex-wrap:wrap;gap:4px;display:flex}.field-tag{background-color:var(--bg-2);color:var(--text-1);border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-size:10px}.notes-block{flex-direction:column;gap:6px;display:flex}.notes-block p{color:var(--text-1);margin:0;font-size:12px;line-height:1.4}.card-footer{border-top:1px solid var(--border);background-color:var(--bg-2);padding:12px 16px}.date{color:var(--text-2);font-size:10px}.empty-state{text-align:center;height:100%;color:var(--text-2);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state p{color:var(--text-1);margin:0 0 8px;font-size:16px}.empty-state small{color:var(--text-2);font-size:12px;display:block}.loading{height:100%;color:var(--text-2);justify-content:center;align-items:center;font-size:14px;display:flex}.deal-tracker{padding:20px}.tracker-toolbar{margin-bottom:24px}.filter-chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--bg-2);border:1px solid var(--bg-3);color:var(--text-2);cursor:pointer;border-radius:3px;padding:6px 12px;font-size:12px;transition:all .2s}.chip:hover{border-color:var(--accent);color:var(--accent)}.chip.active{background:var(--accent);border-color:var(--accent);color:var(--bg-0)}.deal-columns{scrollbar-width:thin;grid-template-columns:repeat(4,minmax(220px,1fr));gap:16px;min-height:400px;display:grid;overflow-x:auto}.deal-columns::-webkit-scrollbar{height:8px}.deal-columns::-webkit-scrollbar-thumb{background:var(--bg-3);border-radius:4px}.deal-column{background:var(--bg-1);border:1px solid var(--bg-3);border-radius:3px;flex-direction:column;max-height:calc(100vh - 260px);padding:12px;display:flex}.deal-column h3{color:var(--text);border-bottom:1px solid var(--bg-3);margin-bottom:12px;padding-bottom:8px;font-size:13px;font-weight:600}.deals-stack{flex-direction:column;flex:1;gap:8px;display:flex;overflow-y:auto}.deal-card{background:var(--bg-0);border:1px solid var(--bg-2);border-radius:3px;padding:10px;font-size:12px;transition:all .2s}.deal-card:hover{border-color:var(--accent);box-shadow:0 2px 8px #39d3531a}.deal-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;display:flex}.deal-header h5{color:var(--text);word-break:break-word;flex:1;margin:0;font-size:12px;font-weight:600}.deal-content{margin-bottom:8px;line-height:1.4}.deal-prices{align-items:center;gap:4px;margin-bottom:4px;font-weight:500;display:flex}.buy-price{color:var(--text-2)}.sell-price{color:var(--accent);font-weight:600}.arrow{color:var(--text-2);font-size:10px}.margin{border-radius:2px;margin-left:4px;padding:2px 6px;font-size:11px;font-weight:600}.margin-green{color:#26a69a;background:#26a69a33}.margin-amber{color:#f59e0b;background:#f59e0b33}.margin-red{color:#ef5350;background:#ef535033}.deal-qty{color:var(--text-2);font-size:11px}.deal-notes{color:var(--text-2);margin-top:4px;font-size:11px;font-style:italic}.deal-footer{gap:4px;display:flex}.next-btn,.close-lost-btn{border:1px solid var(--bg-2);background:var(--bg-1);color:var(--text-2);cursor:pointer;border-radius:2px;flex:1;padding:4px 6px;font-size:11px;transition:all .15s}.next-btn:hover{background:var(--accent);color:var(--bg-0);border-color:var(--accent)}.close-lost-btn:hover{color:#fff;background:#ef5350;border-color:#ef5350}.empty-column{color:var(--text-2);text-align:center;padding:24px 8px;font-size:12px}.new-deal-form{background:var(--bg-0);border:1px dashed var(--bg-2);border-radius:3px;margin-bottom:8px;padding:8px}.new-deal-form h4{color:var(--text-2);margin:0 0 8px;font-size:11px;font-weight:600}.form-row{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.new-deal-form input,.new-deal-form textarea,.new-deal-form select{background:var(--bg-1);border:1px solid var(--bg-2);min-width:0;color:var(--text);border-radius:2px;flex:1;padding:4px 6px;font-family:inherit;font-size:11px}.new-deal-form input:focus,.new-deal-form textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 4px #39d35333}.new-deal-form button{background:var(--accent);width:100%;color:var(--bg-0);cursor:pointer;border:none;border-radius:2px;padding:6px;font-size:11px;font-weight:600;transition:all .15s}.new-deal-form button:hover:not(:disabled){background:#2ecc71;box-shadow:0 0 8px #39d3534d}.new-deal-form button:disabled{opacity:.6;cursor:not-allowed}@media (width<=1400px){.deal-columns{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.deal-columns{grid-template-columns:1fr}}.requirements-page{flex-direction:column;height:100%;padding:0;display:flex}.requirements-layout{gap:0;height:100%;display:flex}.req-left{flex-direction:column;flex:1;gap:16px;min-width:0;padding:24px;display:flex;overflow:hidden}.req-right{border-left:1px solid var(--border);background:var(--bg-1,var(--surface));flex-shrink:0;width:340px;padding:20px;overflow-y:auto}.req-toolbar{flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.req-toolbar h1{color:var(--text-primary,var(--text-0));margin:0;font-size:1.25rem;font-weight:600}.filter-select{border:1px solid var(--border);background:var(--surface,var(--bg-1));color:var(--text-primary,var(--text-0));border-radius:6px;padding:6px 10px;font-size:.85rem}.req-table-wrap{flex:1;overflow:auto}.req-table{border-collapse:collapse;width:100%;font-size:.82rem}.req-table th{text-align:left;border-bottom:2px solid var(--border);color:var(--text-muted,var(--text-2));white-space:nowrap;padding:8px 10px;font-weight:600}.req-table td{border-bottom:1px solid var(--border);color:var(--text-primary,var(--text-0));white-space:nowrap;padding:8px 10px}.req-table tr:hover td{background:color-mix(in srgb, var(--accent,#6366f1) 5%, transparent)}.req-table tr.selected-row td{background:color-mix(in srgb, var(--accent,#6366f1) 10%, transparent)}.req-table td.age{color:var(--text-muted,var(--text-2));font-size:.78rem}.req-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.req-table th.sortable:hover{color:var(--text-primary,var(--text-0))}.req-filter-row th{border-bottom:2px solid var(--border);padding:4px 10px 8px}.req-filter-input{border:1px solid var(--border);background:var(--bg-0,var(--bg));width:100%;color:var(--text-primary,var(--text-0));text-transform:none;box-sizing:border-box;border-radius:4px;padding:4px 6px;font-family:inherit;font-size:.76rem;font-weight:400}.req-inline-price{cursor:text;border:1px solid #0000;border-radius:4px;min-width:40px;padding:2px 4px;display:inline-block}.req-inline-price:hover{border-color:var(--border);background:var(--bg-0,var(--bg))}.req-inline-price-input{border:1px solid var(--accent,#6366f1);background:var(--bg-0,var(--bg));width:90px;color:var(--text-primary,var(--text-0));border-radius:4px;padding:3px 6px;font-family:inherit;font-size:.82rem}.req-trader-editor{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.req-trader-editor .req-filter-input{width:auto;max-width:120px}.req-trader-btn,.req-trader-btn-cancel{border:1px solid var(--border);background:var(--bg-0,var(--bg));color:var(--text-primary,var(--text-0));cursor:pointer;border-radius:4px;padding:3px 8px;font-size:.72rem}.req-trader-btn:disabled,.req-trader-btn-cancel:disabled{opacity:.5;cursor:not-allowed}.req-trader-btn-cancel{color:var(--text-muted,var(--text-2));padding:3px 6px}.status-chip{text-transform:uppercase;border-radius:12px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-block}.status-chip.open{color:#22c55e;background:#22c55e26}.status-chip.closed{background:color-mix(in srgb, var(--text-muted,#94a3b8) 15%, transparent);color:var(--text-muted,#94a3b8)}.match-badge{color:#6366f1;background:#6366f126;border-radius:10px;padding:1px 7px;font-size:.75rem;font-weight:600;display:inline-block}.match-panel{flex-direction:column;gap:12px;display:flex}.match-panel h3{color:var(--text-primary,var(--text-0));margin:0;font-size:.95rem;font-weight:600}.match-meta{color:var(--text-muted,var(--text-2));flex-wrap:wrap;gap:8px;font-size:.8rem;display:flex}.match-count{color:var(--text-muted,var(--text-2));font-size:.78rem}.match-table{border-collapse:collapse;width:100%;font-size:.8rem}.match-table th{text-align:left;border-bottom:2px solid var(--border);color:var(--text-muted,var(--text-2));white-space:nowrap;padding:6px 8px;font-weight:600}.match-table td{border-bottom:1px solid var(--border);color:var(--text-primary,var(--text-0));padding:6px 8px}.match-table td.price{font-weight:600}.score-badge{color:#fff;border-radius:10px;padding:1px 7px;font-size:.75rem;font-weight:700;display:inline-block}.detail-empty{height:100%;color:var(--text-muted,var(--text-2));text-align:center;justify-content:center;align-items:center;font-size:.85rem;display:flex}.modal-form input,.modal-form select,.modal-form textarea{border:1px solid var(--border);background:var(--bg-0,var(--bg));color:var(--text-primary,var(--text-0));border-radius:6px;padding:7px 10px;font-family:inherit;font-size:.85rem}.modal-form select[size]{height:90px}.req-group-header{background:var(--bg-2);cursor:pointer;border-top:2px solid var(--border);font-size:13px}.req-group-header:hover{background:var(--bg-3,color-mix(in srgb, var(--bg-2) 80%, var(--border)))}.req-group-chevron{opacity:.6;margin-right:6px;font-size:11px;display:inline-block}.req-group-brand{color:var(--text-2);font-weight:400}.req-group-count{color:var(--text-2);font-size:11px;font-style:italic}.req-group-child td:first-child{padding-left:24px}.req-group-child{background:color-mix(in srgb, var(--bg-0,var(--bg-1)) 60%, transparent)}.fx-rates-page{flex-direction:column;gap:16px;padding:24px;display:flex}.table-wrap{overflow-x:auto}.fx-table{border-collapse:collapse;width:100%;font-size:.82rem}.fx-table th{text-align:left;border-bottom:2px solid var(--border);color:var(--text-muted);white-space:nowrap;padding:8px 10px;font-weight:600}.fx-table td{border-bottom:1px solid var(--border);color:var(--text-primary);white-space:nowrap;padding:8px 10px}.fx-table td.rate{font-family:monospace;font-weight:600}.fx-table td.age{color:var(--text-muted);font-size:.78rem}.pair-badge{background:color-mix(in srgb, var(--accent,#6366f1) 15%, transparent);color:var(--accent,#6366f1);border-radius:12px;padding:2px 8px;font-size:.78rem;font-weight:600;display:inline-block}.form-row{gap:12px;display:flex}.form-row label{flex:1}.td-page{flex-direction:column;gap:20px;padding:24px;display:flex}.td-loading,.td-error{text-align:center;color:var(--text-2);padding:40px;font-size:14px}.td-error{color:var(--red)}.td-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.td-header h1{color:var(--text-0);margin:0 0 4px;font-size:22px;font-weight:700}.td-subtitle{color:var(--text-2);margin:0;font-size:12px}.td-show-dismissed{color:var(--text-2);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:flex}.td-views{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.td-view-chip{border:1px solid var(--border);background:var(--bg-2);color:var(--text-1);cursor:pointer;white-space:nowrap;border-radius:14px;padding:5px 14px;font-size:12px;transition:all .15s}.td-view-chip:hover{border-color:var(--amber);color:var(--amber)}.td-view-chip.active{border-color:var(--amber);color:var(--amber);background:#f5a6231f;font-weight:600}.td-filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.td-search-wrap{flex:200px;min-width:160px;max-width:320px;position:relative}.td-search{box-sizing:border-box;width:100%;padding-right:24px;font-size:12px}.td-search-clear{color:var(--text-2);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;line-height:1;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.td-filter-select{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-1);color:var(--text-1);cursor:pointer;white-space:nowrap;flex-shrink:0;padding:5px 8px;font-size:11px}.td-filter-select:focus{border-color:var(--amber);outline:none}.td-filter-status{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-height:24px;display:flex}.td-active-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.td-active-chip{border:1px solid var(--amber);color:var(--amber);cursor:pointer;background:#f5a62314;border-radius:12px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;transition:background .12s;display:inline-flex}.td-active-chip:hover{background:#f5a6232e}.td-clear-all{color:var(--text-2);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.td-clear-all:hover{color:var(--text-1)}.td-result-count{color:var(--text-2);white-space:nowrap;margin-left:auto;font-size:11px}.td-action-error{border:1px solid var(--red);color:var(--red);border-radius:var(--radius);background:#ef44441a;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:flex}.td-action-error-close{color:inherit;cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:14px;line-height:1}.td-empty-clear{border:1px solid var(--border);background:var(--bg-2);color:var(--text-1);cursor:pointer;border-radius:12px;margin-top:8px;padding:4px 14px;font-size:11px}.td-empty{text-align:center;color:var(--text-2);padding:20px;font-size:12px}.td-row-list{flex-direction:column;gap:8px;display:flex}.td-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-0);cursor:pointer;align-items:center;gap:16px;padding:12px;transition:border-color .15s;display:flex}.td-row:hover{border-color:var(--amber)}.td-row-main{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.td-row-product-line{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.td-row-product-name{color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;max-width:320px;font-size:13px;font-weight:600;overflow:hidden}.td-row-mpn{color:var(--text-2);background:var(--bg-2);white-space:nowrap;border-radius:4px;flex-shrink:0;padding:1px 5px;font-size:10px;font-weight:600}.td-row-supply,.td-row-demand{color:var(--text-1);flex-wrap:wrap;align-items:center;gap:5px;font-size:12px;display:flex}.td-row-supply:before{content:"↑";color:var(--text-2);flex-shrink:0;font-size:10px}.td-row-demand:before{content:"↓";color:var(--text-2);flex-shrink:0;font-size:10px}.td-row-party{white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-weight:600;overflow:hidden}.td-row-price{font-family:var(--font-data,monospace);color:var(--text-0);white-space:nowrap;font-size:12px}.td-row-currency{color:var(--text-2);font-size:10px}.td-row-qty{color:var(--text-2);white-space:nowrap;font-size:11px}.td-row-location{color:var(--text-2);white-space:nowrap;font-size:10px}.td-row-no-price{color:var(--text-2);font-size:11px;font-style:italic}.td-row-terms{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.td-row-gp{color:var(--green);font-size:12px;font-weight:600}.td-row-age{color:var(--text-2);font-size:12px;font-weight:600;font-family:var(--font-data,monospace)}.td-row-counterparties{color:var(--text-1);align-items:center;gap:6px;font-size:12px;display:flex}.td-row-arrow{color:var(--text-2)}.td-row-why{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.td-signals{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.td-signal{background-color:var(--bg-2);color:var(--text-1);white-space:nowrap;border-radius:10px;padding:2px 7px;font-size:10px;font-weight:600}.td-signal-offer_expiring{background-color:var(--amber-dim);color:#92400e}.td-signal-requirement_aging{color:#991b1b;background-color:#ef44441f}.td-signal-strong_match{color:#065f46;background-color:#10b9811f}.td-signal-unusual_margin{color:#6b21a8;background-color:#a855f71f}.td-row-econ{flex:none;gap:16px;display:flex}.td-row-econ-item{text-align:center;min-width:56px}.td-row-econ-label{color:var(--text-2);text-transform:uppercase;margin-bottom:2px;font-size:9px;font-weight:700}.td-row-econ-currency{color:var(--text-2);font-size:9px}.td-margin-ok{color:var(--green);font-size:12px;font-weight:700}.td-margin-warn{color:var(--red);font-size:12px;font-weight:700}.td-row-actions{flex:none;align-items:center;gap:6px;display:flex}.td-btn-primary{background-color:var(--amber);color:#fff;border-radius:var(--radius);white-space:nowrap;padding:7px 14px;font-size:12px;font-weight:600}.td-btn-primary:disabled{opacity:.6;cursor:default}.td-btn-icon{border:1px solid var(--border);background:var(--bg-0);width:28px;height:28px;color:var(--text-1);border-radius:var(--radius);justify-content:center;align-items:center;font-size:13px;display:flex}.td-btn-icon:hover{border-color:var(--border-active)}.td-attention-list{flex-direction:column;gap:8px;display:flex}.td-attention-item{border:1px solid var(--border);border-radius:var(--radius);background:var(--amber-glow);align-items:center;gap:10px;padding:8px 10px;display:flex}.td-attention-icon{font-size:14px}.td-attention-body{flex:1;min-width:0}.td-attention-title{color:var(--text-0);font-size:12px;font-weight:600}.td-attention-desc{color:var(--text-2);font-size:11px}.td-attention-link{color:var(--amber);white-space:nowrap;font-size:11px;font-weight:600}.td-collapsible-toggle{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-1);text-align:left;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:12px;font-weight:600;display:flex}.td-kpi-bar{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:0;padding:10px 16px;display:flex}.td-kpi-bar--loading,.td-kpi-bar--error{justify-content:center}.td-kpi-loading-text,.td-kpi-error-text{color:var(--text-2);font-size:11px}.td-kpi-error-text{color:var(--red)}.td-kpi-divider{background:var(--border);flex-shrink:0;width:1px;height:28px;margin:0 16px}.td-kpi-item{flex-direction:column;align-items:center;gap:2px;min-width:70px;display:flex}.td-kpi-item--action{cursor:pointer}.td-kpi-item--action:hover .td-kpi-value{opacity:.8}.td-kpi-value{color:var(--text-0);font-size:18px;font-weight:700;font-family:var(--font-data,monospace);line-height:1}.td-kpi-value--warn{color:var(--amber)}.td-kpi-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);white-space:nowrap;font-size:9px;font-weight:700}.td-collapsible{flex-direction:column;gap:8px;display:flex}.commercial-state-badge{white-space:nowrap;border:1px solid;border-radius:4px;margin-right:6px;padding:1px 6px;font-size:10px;font-weight:700;display:inline-block}.commercial-state-badge.in_progress{color:var(--amber)}.commercial-state-badge.resolved{color:var(--green)}.commercial-state-badge.conflicting{color:var(--red)}.commercial-state-badge.no_active_path,.commercial-state-badge.requirement_fulfilled_elsewhere{color:var(--text-2)}.traders-container{padding:24px}.traders-header{flex-direction:column;gap:16px;margin-bottom:24px;display:flex}.traders-header-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.traders-header-title h1{color:var(--text-0);margin:0 0 4px;font-size:24px;font-weight:600}.traders-count{color:var(--text-2);margin:0;font-size:12px}.traders-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.search-input-wrapper{flex:1;max-width:400px;position:relative}.search-clear-btn{color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:16px;transition:color .15s;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.search-clear-btn:hover{color:var(--text-1)}.toggle-group{border:1px solid var(--border);background-color:var(--bg-0);border-radius:4px;gap:8px;padding:4px;display:flex}.btn-add-trader{border:1px solid var(--amber);background-color:var(--bg-0);color:var(--amber);cursor:pointer;white-space:nowrap;border-radius:4px;padding:8px 16px;font-size:12px;font-weight:600;transition:all .15s}.btn-add-trader:hover{background-color:#f5a6231a}.search-input{border:1px solid var(--border);background-color:var(--bg-0);max-width:400px;color:var(--text-1);border-radius:4px;flex:1;padding:8px 12px;font-size:13px;transition:border-color .15s}.search-input:focus{border-color:var(--amber);outline:none}.search-input::placeholder{color:var(--text-2)}.toggle-btn{color:var(--text-1);cursor:pointer;white-space:nowrap;background-color:#0000;border:none;border-radius:3px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s}.toggle-btn:hover{background-color:var(--bg-1);color:var(--text-0)}.toggle-btn.active{color:var(--amber);background-color:#f5a62326}.empty-state{text-align:center;color:var(--text-2);padding:48px 24px}.empty-state h2{color:var(--text-1);margin:0 0 8px;font-size:18px}.empty-state p{margin:0;font-size:14px}.trader-row:hover{border-color:var(--amber)!important;background-color:var(--bg-1)!important;box-shadow:0 2px 8px #f5a6231a!important}.trader-table-row:hover{background-color:var(--bg-2)}.status-badge{text-transform:capitalize;border-radius:3px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-block}.status-badge.active{color:var(--green);background-color:#22c55e1a}.status-badge.inactive{color:var(--text-2);background-color:#6b72801a}.traders-modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.traders-modal{background-color:var(--bg-1);border-radius:8px;width:90%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.traders-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.traders-modal-header h2{color:var(--text-0);margin:0;font-size:16px;font-weight:600}.traders-modal-close{cursor:pointer;color:var(--text-2);background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:24px;transition:color .15s;display:flex}.traders-modal-close:hover{color:var(--text-1)}.traders-modal-content{flex-direction:column;gap:16px;padding:20px;display:flex}.traders-modal-field{flex-direction:column;gap:4px;display:flex}.traders-modal-field label{text-transform:uppercase;color:var(--text-2);letter-spacing:.5px;font-size:10px;font-weight:700}.traders-modal-field p{color:var(--text-1);margin:0;font-size:12px}.error{color:var(--red);font-size:12px}.add-trader-form{border:1px solid var(--border);background-color:var(--bg-0);border-radius:6px;margin-bottom:24px;padding:16px}.form-container{flex-direction:column;gap:16px;display:flex}.form-container h3{color:var(--text-0);margin:0 0 8px;font-size:14px;font-weight:600}.form-error{color:var(--red);background-color:#ef44441a;border-radius:4px;margin:0;padding:8px 12px;font-size:12px}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-1);font-size:12px;font-weight:600}.form-control{border:1px solid var(--border);background-color:var(--bg-1);color:var(--text-0);border-radius:4px;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .15s}.form-control:focus{border-color:var(--amber);outline:none}.form-actions{border-top:1px solid var(--border);gap:8px;padding-top:8px;display:flex}.btn-submit,.btn-cancel{border:1px solid var(--border);background-color:var(--bg-0);color:var(--text-1);cursor:pointer;border-radius:4px;flex:1;padding:8px 16px;font-size:12px;font-weight:600;transition:all .15s}.btn-submit{border-color:var(--amber);color:var(--amber)}.btn-submit:hover:not(:disabled){background-color:#f5a6231a}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.btn-cancel:hover{border-color:var(--text-1);background-color:var(--bg-1)}.threads-page{flex-direction:column;gap:16px;height:100%;padding:24px;display:flex}.page-header{justify-content:space-between;align-items:center;display:flex}.page-header h1{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600}.thread-tabs{border-bottom:1px solid var(--border);gap:4px;display:flex}.thread-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 14px;font-size:.85rem;font-weight:500}.thread-tab.active{color:var(--accent,#6366f1);border-bottom-color:var(--accent,#6366f1)}.threads-layout{flex:1;grid-template-columns:340px 1fr;gap:16px;min-height:0;display:grid}.thread-list{border-right:1px solid var(--border);flex-direction:column;gap:6px;padding-right:12px;display:flex;overflow-y:auto}.thread-row{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.thread-row:hover{background:var(--bg-2)}.thread-row.active{background:var(--bg-2);border-color:var(--border-active)}.thread-row-avatar{color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;margin-top:1px;font-size:.72rem;font-weight:700;display:flex}.thread-row-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.thread-row-main{justify-content:space-between;align-items:center;gap:8px;display:flex}.thread-row-name{align-items:center;gap:6px;min-width:0;display:flex}.thread-row-name strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.status-dot{background:var(--text-muted);border-radius:50%;flex:none;width:8px;height:8px}.status-dot.status-open{background:var(--blue,#3b82f6)}.status-dot.status-stalled{background:var(--amber,#f59e0b)}.status-dot.status-won{background:var(--green,#10b981)}.status-dot.status-lost{background:var(--red,#ef4444)}.status-dot.status-archived{background:var(--text-muted)}.thread-row-meta{flex:none;align-items:center;gap:4px;display:flex}.thread-row-sub{color:var(--text-muted);font-size:.78rem}.thread-row-subject{color:var(--text-muted);font-size:.78rem;font-style:italic}.thread-row-preview{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.thread-row-time{color:var(--text-muted);white-space:nowrap;font-size:.72rem}.channel-icon{cursor:pointer;background:0 0;border:none;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;font-size:.85rem;line-height:1;display:inline-flex}button.channel-icon:hover:not(:disabled){background:var(--bg-3)}button.channel-icon:disabled{opacity:.35;cursor:not-allowed;filter:grayscale()}.channel-icon-static{cursor:default}.thread-detail-panel{min-height:0;overflow-y:auto}.thread-detail{flex-direction:column;gap:16px;display:flex}.thread-detail-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.thread-detail-header h2{color:var(--text-primary);margin:0;font-size:1.1rem}.thread-detail-sub{color:var(--text-muted);font-size:.85rem}.thread-detail-subject{color:var(--text-muted);margin-top:4px;font-size:.82rem;font-style:italic}.status-select{border:1px solid var(--border);background:var(--bg-1);color:var(--text-primary);text-transform:capitalize;cursor:pointer;border-radius:6px;padding:5px 10px;font-size:.8rem}.log-activity-form{border:1px solid var(--border);background:var(--bg-2);border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.log-activity-row{gap:8px;display:flex}.log-activity-row select,.log-activity-row input{border:1px solid var(--border);background:var(--bg-1);color:var(--text-primary);border-radius:6px;padding:6px 8px;font-size:.82rem}.log-activity-form textarea{border:1px solid var(--border);background:var(--bg-1);color:var(--text-primary);resize:vertical;font-size:.85rem;font-family:var(--font-ui);border-radius:6px;padding:8px 10px}.log-activity-form .btn-primary{align-self:flex-end}.activity-timeline{flex-direction:column;gap:10px;display:flex}.activity-item{border:1px solid var(--border);background:var(--bg-1);border-radius:8px;padding:10px 12px}.activity-item-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.activity-type-header{align-items:center;gap:6px;display:flex}.activity-type-badge{text-transform:capitalize;background:var(--bg-3);color:var(--text-muted);border-radius:12px;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-block}.activity-time{color:var(--text-muted);font-size:.72rem}.activity-body{color:var(--text-primary);white-space:pre-wrap;font-size:.85rem}.activity-due{color:var(--amber,#f59e0b);margin-top:6px;font-size:.75rem}.loading-state,.empty-state{text-align:center;color:var(--text-muted);padding:32px}.empty-state.small{padding:16px}.empty-state small{margin-top:4px;font-size:.8rem;display:block}.contact-picker-results{border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:2px;max-height:180px;padding:4px;display:flex;overflow-y:auto}.contact-picker-row{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 8px;display:flex}.contact-picker-row:hover{background:var(--bg-2)}.contact-picker-row span{color:var(--text-muted);font-size:.75rem}.contact-picker-empty{color:var(--text-muted);padding:8px;font-size:.8rem}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:10px;width:min(420px,95vw);max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0006}.modal-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.modal-header h2{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:600}.modal-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:0 4px;font-size:1.4rem;line-height:1}.modal-form{flex-direction:column;gap:14px;padding:20px 24px 24px;display:flex}.modal-form label{color:var(--text-muted);flex-direction:column;gap:4px;font-size:.82rem;font-weight:500;display:flex}.modal-form input{border:1px solid var(--border);background:var(--bg);color:var(--text-primary);border-radius:6px;padding:7px 10px;font-size:.85rem}.form-error{color:var(--danger,#ef4444);font-size:.82rem}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.btn-primary{background:var(--accent,#6366f1);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:.85rem;font-weight:600}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{border:1px solid var(--border);color:var(--text-primary);cursor:pointer;background:0 0;border-radius:6px;padding:8px 16px;font-size:.85rem}.gc-card{border:1px solid var(--border,#e2e8f0);background:var(--bg,#fff);border-radius:8px;margin-bottom:24px;padding:16px}.gc-card-header{align-items:center;gap:12px;margin-bottom:14px;display:flex}.gc-card-icon{color:#fff;background:#4285f4;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:700;display:flex}.gc-card-title{color:var(--text-1,#0f172a);font-size:.95rem;font-weight:600}.gc-card-subtitle{color:var(--text-2,#64748b);margin-top:2px;font-size:.78rem}.gc-banner{border-radius:6px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;font-size:.83rem;display:flex}.gc-banner--success{color:#15803d;background:#f0fdf4;border:1px solid #86efac}.gc-banner--error{color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5}.gc-banner--info{color:#475569;background:#f8fafc;border:1px solid #cbd5e1}.gc-banner-close{cursor:pointer;color:inherit;opacity:.55;background:0 0;border:none;flex-shrink:0;padding:0;font-size:1rem;line-height:1}.gc-banner-close:hover{opacity:1}.gc-status{font-size:.88rem}.gc-connected{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.gc-check{color:#16a34a;font-size:1rem;font-weight:700}.gc-disconnected{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.gc-btn-connect{color:#fff;cursor:pointer;background:#4285f4;border:none;border-radius:6px;padding:7px 16px;font-family:inherit;font-size:.85rem;font-weight:500}.gc-btn-connect:not(:disabled):hover{background:#3574e2}.gc-btn-connect:disabled{opacity:.6;cursor:not-allowed}.gc-btn-disconnect{color:#b91c1c;cursor:pointer;background:#fef2f2;border:1px solid #fca5a5;border-radius:4px;padding:4px 10px;font-family:inherit;font-size:.8rem}.gc-btn-disconnect:not(:disabled):hover{background:#fee2e2}.gc-btn-disconnect:disabled{opacity:.6;cursor:not-allowed}.settings-users-container{padding:24px}.settings-users-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.settings-users-header h1{color:var(--text-0,var(--text-primary));margin:0;font-size:1.25rem}.settings-users-add-btn{background:var(--accent,#6366f1);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:.85rem;font-weight:600}.settings-users-add-btn:hover{opacity:.9}.settings-users-page-error{color:var(--danger,#f85149)}.settings-users-table{border-collapse:collapse;background:var(--bg-1,var(--surface));border-radius:8px;width:100%;overflow:hidden}.settings-users-table th,.settings-users-table td{text-align:left;border-bottom:1px solid var(--border,#ffffff14);color:var(--text-1,var(--text-primary));padding:10px 16px;font-size:.85rem}.settings-users-table th{color:var(--text-2,var(--text-muted));text-transform:uppercase;letter-spacing:.5px;font-size:.7rem;font-weight:600}.settings-users-badge{border-radius:999px;padding:2px 10px;font-size:.7rem;font-weight:600;display:inline-block}.settings-users-badge.active{color:#3fb950;background:#3fb95026}.settings-users-badge.inactive{color:#f85149;background:#f8514926}.settings-users-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-users-modal{background:var(--bg-1,var(--surface));border-radius:10px;width:min(420px,95vw);max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0006}.settings-users-modal-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.settings-users-modal-header h2{color:var(--text-0,var(--text-primary));margin:0;font-size:1rem;font-weight:600}.settings-users-modal-close{cursor:pointer;color:var(--text-2,var(--text-muted));background:0 0;border:none;padding:0 4px;font-size:1.4rem;line-height:1}.settings-users-form{flex-direction:column;gap:14px;padding:20px 24px 24px;display:flex}.settings-users-form label{color:var(--text-2,var(--text-muted));flex-direction:column;gap:6px;font-size:.8rem;display:flex}.settings-users-form input,.settings-users-form select{border:1px solid var(--border,#ffffff26);background:var(--bg-2,transparent);color:var(--text-0,var(--text-primary));border-radius:6px;padding:8px 10px;font-size:.85rem}.settings-users-error{color:var(--danger,#f85149);margin:0;font-size:.8rem}.settings-users-form-actions{justify-content:flex-end;gap:10px;display:flex}.settings-users-cancel{border:1px solid var(--border,#ffffff26);color:var(--text-1,var(--text-primary));cursor:pointer;background:0 0;border-radius:6px;padding:8px 16px;font-size:.85rem}.settings-users-submit{background:var(--accent,#6366f1);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:.85rem;font-weight:600}.settings-users-submit:hover{opacity:.9}.settings-users-badge.pending{color:#d29922;background:#d2992226}.settings-users-actions{flex-wrap:wrap;gap:6px;display:flex}.settings-users-action{border:1px solid var(--border,#ffffff26);color:var(--text-1,var(--text-primary));cursor:pointer;background:0 0;border-radius:5px;padding:3px 9px;font-size:.75rem}.settings-users-action:hover:not(:disabled){border-color:var(--accent,#6366f1)}.settings-users-action:disabled{opacity:.4;cursor:not-allowed}.settings-users-submit.danger{background:var(--danger,#f85149)}.settings-users-hint{color:var(--text-2,var(--text-muted));margin:0;font-size:.8rem}.settings-users-warning{color:#d29922;background:#d299221f;border-radius:6px;margin:0;padding:8px 10px;font-size:.8rem}.settings-users-notice{color:#3fb950;margin:0 0 12px;font-size:.85rem}.login-root{background:var(--bg-0,#0d1117);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--bg-1,#161b22);border:1px solid var(--border,#30363d);border-radius:8px;flex-direction:column;gap:1rem;width:100%;max-width:360px;padding:2.5rem 2rem;display:flex}.login-logo{color:var(--amber,#f0a443);letter-spacing:.05em;text-align:center;font-size:1.6rem;font-weight:700}.login-subtitle{color:var(--text-muted,#8b949e);text-align:center;margin:0;font-size:.8rem}.login-form{flex-direction:column;gap:1rem;margin-top:.5rem;display:flex}.login-form label{color:var(--text-muted,#8b949e);flex-direction:column;gap:.3rem;font-size:.8rem;display:flex}.login-form input{background:var(--bg-2,#21262d);border:1px solid var(--border,#30363d);color:var(--text,#c9d1d9);border-radius:4px;outline:none;padding:.45rem .6rem;font-size:.875rem;transition:border-color .15s}.login-form input:focus{border-color:var(--amber,#f0a443)}.login-error{color:var(--red,#f85149);margin:0;font-size:.8rem}.login-btn{background:var(--amber,#f0a443);color:#000;cursor:pointer;border:none;border-radius:4px;margin-top:.25rem;padding:.55rem;font-size:.875rem;font-weight:600;transition:opacity .15s}.login-btn:disabled{opacity:.6;cursor:default}.login-invite-note{color:var(--text-muted,#8b949e);text-align:center;margin:0;font-size:.72rem}:root{--bg-0:#eef2f7;--bg-1:#e4eaf3;--bg-2:#d7e1ee;--bg-3:#c8d5e6;--border:#b5c5d9;--border-active:#8daac8;--amber:#c47b1a;--amber-dim:#fef3dc;--amber-glow:#c47b1a1f;--green:#1f9c6e;--red:#d04f3c;--blue:#2f6eb8;--purple:#7850c8;--text-0:#18263a;--text-1:#253550;--text-2:#5e718a;--font-ui:"Inter", system-ui, sans-serif;--font-data:"JetBrains Mono", "Courier New", monospace;--radius:3px;--topbar-height:38px;--sidebar-width:220px;--statusbar-height:24px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{color:var(--text-0);font-family:var(--font-ui);background-color:#eef2f7;font-size:13px;line-height:1.5}a{color:var(--amber);text-decoration:none}button{font-family:var(--font-ui);border-radius:var(--radius);cursor:pointer;border:none;font-size:13px;transition:all .15s}input,textarea,select{font-family:var(--font-ui);background-color:var(--bg-2);color:var(--text-0);border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;font-size:13px}input:focus,textarea:focus,select:focus{border-color:var(--amber);box-shadow:0 0 0 2px var(--amber-glow);outline:none}.app{background-color:var(--bg-0);flex-direction:column;width:100vw;height:100vh;display:flex}.topbar{height:var(--topbar-height);border-bottom:1px solid var(--border);z-index:100;background-color:#eef2f7;align-items:center;gap:24px;padding:0 16px;display:flex;position:fixed;top:0;left:0;right:0}.topbar-logo{align-items:center;gap:8px;display:flex}.logo-text{font-family:var(--font-data);color:#f59e0b;letter-spacing:1px;font-size:14px;font-weight:700}.topbar-nav{flex:1;gap:16px;display:flex}.topbar-nav a{color:#18263a;padding:4px 8px;font-size:12px;transition:color .15s}.topbar-nav a:hover{color:#f59e0b}.topbar-right{align-items:center;gap:16px;margin-left:auto;display:flex}.clock{font-family:var(--font-data);color:#5e718a;font-size:11px}.import-btn{color:#fff;background-color:#f59e0b;padding:6px 12px;font-size:12px;font-weight:600}.import-btn:hover{background-color:#d97706}.signout-btn{color:#5e718a;cursor:pointer;background:0 0;border:1px solid #2a3a4f;padding:5px 10px;font-size:12px}.signout-btn:hover{color:#fff;border-color:#5e718a}.app-body{margin-top:var(--topbar-height);margin-bottom:var(--statusbar-height);flex:1;display:flex;overflow:hidden}.sidebar{left:0;top:var(--topbar-height);bottom:var(--statusbar-height);width:var(--sidebar-width);background-color:#1a2e4a;border-right:1px solid #00000040;flex-direction:column;padding:16px 0;display:flex;position:fixed;overflow-y:auto}.sidebar-section{padding:0}.sidebar-section-title{text-transform:uppercase;color:#5a7aaa;letter-spacing:.5px;padding:8px 16px;font-size:10px;font-weight:700}.sidebar-item{color:#8aaac8;border-left:3px solid #0000;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin:0 8px;padding:5px 12px;font-size:12px;transition:all .15s;display:flex}.sidebar-item:hover{color:#fff;background-color:#ffffff0d}.sidebar-item.active{color:#fff;background-color:#1e3d6e;border-left-color:#4a9fd4}.sidebar-badge{background-color:var(--red);color:#fff;border-radius:3px;padding:2px 6px;font-size:10px;font-weight:600}.sidebar-expandable{cursor:pointer;text-align:left;background:0 0;border:none;width:100%;margin:0 8px;padding:8px 16px}.sidebar-expandable span:first-child{flex:1;align-items:center;gap:12px;display:flex}.chevron{font-size:16px;line-height:1;transition:transform .15s;display:inline-block}.chevron.open{transform:rotate(90deg)}.sidebar-submenu{background-color:#0003}.sidebar-subitem{margin-left:32px!important;padding-left:16px!important}.sidebar-footer{color:#94a3b8;border-top:1px solid #ffffff1a;flex-direction:column;gap:12px;margin-top:auto;padding:16px;font-size:11px;display:flex}.workspace-badge{background-color:#ffffff0d;border-radius:4px;align-items:center;gap:8px;padding:8px;font-weight:500;display:flex}.workspace-badge-dot{background-color:#10b981;border-radius:50%;width:8px;height:8px}.sidebar-footer>div{margin-bottom:0}.app-main{top:var(--topbar-height);left:var(--sidebar-width);right:0;bottom:var(--statusbar-height);z-index:150;background-color:#eef2f7;padding:16px;position:fixed;overflow-y:auto}.statusbar{height:var(--statusbar-height);border-top:1px solid var(--border);color:#5e718a;background-color:#eef2f7;align-items:center;gap:24px;padding:0 16px;font-size:11px;display:flex;position:fixed;bottom:0;left:0;right:0}.status-item{margin-left:var(--sidebar-width);align-items:center;gap:6px;display:flex}.status-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.status-dot[data-status=ok]{background-color:#10b981}.status-dot[data-status=warning]{background-color:#f59e0b;animation:2s infinite pulse}.status-dot[data-status=error]{background-color:#ef4444}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}
