*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f8f9fb;color:#1a1d26;line-height:1.5}a{color:inherit;text-decoration:none}.app-layout{display:flex;min-height:100vh}.app-loading{display:flex;align-items:center;justify-content:center;min-height:100vh}.sidebar{width:240px;background:#111318;color:#a0a4b0;display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:width .2s ease}.sidebar-collapsed .sidebar{width:64px}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid rgba(255,255,255,.06)}.sidebar-logo{display:flex;align-items:center;gap:10px}.logo-mark{width:32px;height:32px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;color:#fff;flex-shrink:0}.logo-text{font-weight:700;font-size:18px;color:#fff;letter-spacing:-.3px}.sidebar-toggle{background:none;border:none;color:#606470;cursor:pointer;padding:6px;border-radius:6px;transition:background .15s}.sidebar-toggle:hover{background:#ffffff0f;color:#a0a4b0}.sidebar-nav{flex:1;overflow-y:auto;padding:12px 0}.nav-section{padding:0 12px;margin-bottom:8px}.nav-section-label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#4a4d58;padding:8px 12px 4px}.nav-link{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;font-size:13px;font-weight:500;color:#8b8fa0;transition:all .15s ease;margin-bottom:2px}.nav-link:hover{background:#ffffff0f;color:#d0d3dd}.nav-link.active{background:#6366f11f;color:#a5b4fc}.nav-link svg{flex-shrink:0;opacity:.7}.nav-link.active svg{opacity:1}.sidebar-footer{padding:12px 16px;border-top:1px solid rgba(255,255,255,.06)}.sidebar-user{display:flex;align-items:center;gap:10px}.user-avatar{width:32px;height:32px;border-radius:8px;background:#2a2d38;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;color:#a0a4b0;flex-shrink:0}.user-info{display:flex;flex-direction:column;gap:2px;min-width:0}.user-name{font-size:13px;font-weight:500;color:#d0d3dd}.btn-logout{background:none;border:none;font-size:11px;color:#606470;cursor:pointer;text-align:left;padding:0}.btn-logout:hover{color:#ef4444}.main-content{flex:1;margin-left:240px;min-height:100vh;transition:margin-left .2s ease}.sidebar-collapsed .main-content{margin-left:64px}.page{padding:28px 32px;max-width:1280px}.page-loading{display:flex;align-items:center;justify-content:center;min-height:400px}.spinner{width:32px;height:32px;border:3px solid #e2e5eb;border-top-color:#6366f1;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.page-title{font-size:22px;font-weight:700;color:#1a1d26;letter-spacing:-.3px}.page-subtitle{font-size:13px;color:#6b7080;margin-top:2px}.page-actions,.page-actions-row{display:flex;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border:1px solid #d0d4dd;border-radius:8px;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;background:#fff;color:#3a3f4b;transition:all .15s ease;white-space:nowrap}.btn:hover{background:#f5f6f8;border-color:#b0b4c0}.btn-primary{background:#6366f1;color:#fff;border-color:#6366f1}.btn-primary:hover{background:#5558e6;border-color:#5558e6}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#f0f0ff;color:#6366f1;border-color:#ddddf7}.btn-secondary:hover{background:#e6e6ff}.btn-danger{background:#fff;color:#ef4444;border-color:#fecaca}.btn-danger:hover{background:#fef2f2}.btn-ghost{background:transparent;border-color:transparent;color:#6b7080}.btn-ghost:hover{background:#f0f1f3;color:#3a3f4b}.btn-action{background:#f8f9fb;text-align:left}.btn-action:hover{background:#f0f1f3}.btn-sm{padding:4px 10px;font-size:12px}.btn-full{width:100%}.card{background:#fff;border:1px solid #e5e7ee;border-radius:12px;padding:20px;margin-bottom:16px}.card--flush{padding:0}.card--flush .data-table thead th:first-child{border-radius:12px 0 0}.card--flush .data-table thead th:last-child{border-radius:0 12px 0 0}.card__title{font-size:14px;font-weight:600;color:#3a3f4b;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f0f1f3}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:20px}.stats-card{background:#fff;border:1px solid #e5e7ee;border-radius:12px;padding:20px;border-left:3px solid transparent;transition:transform .15s ease}.stats-card:hover{transform:translateY(-1px)}.stats-card--primary{border-left-color:#6366f1}.stats-card--blue{border-left-color:#3b82f6}.stats-card--green{border-left-color:#22c55e}.stats-card--neutral{border-left-color:#94a3b8}.stats-card__value{font-size:28px;font-weight:800;color:#1a1d26;letter-spacing:-.5px;line-height:1.1}.stats-card__label{font-size:12px;font-weight:500;color:#6b7080;margin-top:4px;text-transform:uppercase;letter-spacing:.3px}.stats-card__sub{font-size:12px;color:#94a3b8;margin-top:2px}.stats-row{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.stat-pill{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e5e7ee;border-radius:10px;padding:8px 16px;font-size:13px}.stat-pill__label{font-weight:600;color:#3a3f4b}.stat-pill__value{color:#6b7080}.stat-pill__sep{color:#d0d4dd}.stat-pill__conversion{font-weight:700;color:#22c55e;background:#f0fdf4;padding:2px 8px;border-radius:6px;font-size:12px}.chart-bars{display:flex;align-items:flex-end;gap:8px;height:180px;padding:0 4px;margin-bottom:12px}.chart-bar-group{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%}.chart-bars-container{flex:1;display:flex;align-items:flex-end;gap:3px;width:100%}.chart-bar{flex:1;min-height:2px;border-radius:4px 4px 0 0;transition:height .4s ease}.chart-bar--leads{background:#6366f1}.chart-bar--interactions{background:#c7d2fe}.chart-bar-label{font-size:10px;color:#94a3b8;font-weight:500}.chart-legend{display:flex;gap:16px;justify-content:center}.chart-legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7080}.chart-dot{width:8px;height:8px;border-radius:2px}.chart-dot--leads{background:#6366f1}.chart-dot--interactions{background:#c7d2fe}.data-table{width:100%;border-collapse:collapse}.data-table thead th{padding:10px 16px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7080;background:#fafbfc;border-bottom:1px solid #e5e7ee}.data-table tbody td{padding:10px 16px;border-bottom:1px solid #f0f1f3;vertical-align:middle}.data-table tbody tr:hover{background:#fafbfc}.data-table tbody tr:last-child td{border-bottom:none}.text-right{text-align:right}.text-sm{font-size:12px}.text-xs{font-size:11px}.text-muted{color:#94a3b8}.font-medium{font-weight:600}.cell-truncate{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-name{color:#6366f1;font-weight:500}.link-name:hover{text-decoration:underline}.link{color:#6366f1}.link:hover{text-decoration:underline}.conversion-bar{position:relative;height:20px;background:#f0f1f3;border-radius:10px;overflow:hidden;min-width:100px}.conversion-bar--sm{height:16px;min-width:60px}.conversion-bar__fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:10px;transition:width .5s ease}.conversion-bar__text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:10px;font-weight:700;color:#3a3f4b}.status-badge{display:inline-block;padding:3px 10px;border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.2px}.status-badge--new{background:#eff6ff;color:#2563eb}.status-badge--contacted{background:#fef9c3;color:#a16207}.status-badge--qualified{background:#dcfce7;color:#16a34a}.status-badge--lost{background:#fee2e2;color:#dc2626}.status-grid{display:flex;gap:16px;flex-wrap:wrap}.status-block{display:flex;align-items:center;gap:8px}.status-block__count{font-size:18px;font-weight:700;color:#1a1d26}.filters-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 16px;background:#fff;border:1px solid #e5e7ee;border-radius:12px;margin-bottom:16px}.filter-input{padding:6px 12px;border:1px solid #d0d4dd;border-radius:8px;font-size:13px;font-family:inherit;background:#fafbfc;color:#1a1d26;min-width:120px}.filter-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.filter-search{min-width:180px}.pagination{display:flex;align-items:center;gap:4px;margin-top:16px;padding-top:12px}.pagination-btn{padding:4px 10px;border:1px solid #d0d4dd;border-radius:6px;background:#fff;cursor:pointer;font-size:13px;font-family:inherit;transition:all .1s}.pagination-btn:hover{background:#f5f6f8}.pagination-btn.active{background:#6366f1;color:#fff;border-color:#6366f1}.pagination-ellipsis{color:#94a3b8;padding:0 4px}.pagination-info{margin-left:12px;font-size:12px;color:#94a3b8}.detail-grid{display:grid;grid-template-columns:1fr 340px;gap:16px}@media (max-width: 1024px){.detail-grid{grid-template-columns:1fr}}.detail-main,.detail-sidebar{min-width:0}.meta-grid{display:flex;flex-direction:column;gap:0}.meta-row{display:flex;padding:8px 0;border-bottom:1px solid #f5f6f8}.meta-row:last-child{border-bottom:none}.meta-label{width:100px;flex-shrink:0;font-size:12px;color:#94a3b8;font-weight:500}.meta-value{font-size:13px;color:#3a3f4b;word-break:break-word}.field-value-cell{word-break:break-word}.status-select{display:grid;grid-template-columns:1fr 1fr;gap:6px}.status-option{padding:8px 12px;border:1px solid #e5e7ee;border-radius:8px;background:#fafbfc;cursor:pointer;font-size:12px;font-weight:500;font-family:inherit;color:#6b7080;transition:all .15s}.status-option:hover{border-color:#c0c4d0}.status-option.active{font-weight:600}.status-option--new.active{background:#eff6ff;border-color:#93c5fd;color:#2563eb}.status-option--contacted.active{background:#fef9c3;border-color:#fcd34d;color:#a16207}.status-option--qualified.active{background:#dcfce7;border-color:#86efac;color:#16a34a}.status-option--lost.active{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.quick-actions{display:flex;flex-direction:column;gap:6px}.form-group label{display:block;font-size:12px;font-weight:500;color:#6b7080;margin-bottom:6px}.form-input{width:100%;padding:8px 12px;border:1px solid #d0d4dd;border-radius:8px;font-size:13px;font-family:inherit;background:#fff;color:#1a1d26}.form-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-textarea{width:100%;padding:10px 12px;border:1px solid #d0d4dd;border-radius:8px;font-size:13px;font-family:inherit;resize:vertical;color:#1a1d26}.form-textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-error{color:#ef4444;font-size:13px;margin-top:8px}.form-message{font-size:13px;margin-top:8px}.form-message.success{color:#22c55e}.form-message.error{color:#ef4444}.inline-message{padding:8px 12px;border-radius:8px;font-size:13px;margin-bottom:12px}.inline-message.success{background:#f0fdf4;color:#16a34a}.inline-message.error{background:#fef2f2;color:#dc2626}.code-inline{background:#f0f1f3;padding:2px 6px;border-radius:4px;font-size:11px;font-family:JetBrains Mono,Fira Code,monospace;color:#6b7080}.add-site-form{display:flex;gap:8px;align-items:flex-end}.add-site-form .form-input{max-width:280px}.password-form{max-width:400px}.sites-list{display:flex;flex-direction:column;gap:12px}.site-item{border:1px solid #e5e7ee;border-radius:10px;padding:16px;transition:border-color .15s}.site-item:hover{border-color:#d0d4dd}.site-item__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.site-item__name{font-size:15px;font-weight:600;color:#1a1d26}.site-item__domain{font-size:12px;color:#94a3b8}.site-item__stats{display:flex;gap:12px;font-size:12px;color:#6b7080}.site-item__key{margin-bottom:12px}.site-item__key label{font-size:11px;font-weight:500;color:#94a3b8;text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px;display:block}.key-row{display:flex;align-items:center;gap:8px}.api-key-display{background:#f5f6f8;padding:6px 10px;border-radius:6px;font-family:JetBrains Mono,monospace;font-size:11px;color:#6b7080;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-item__instructions{margin-bottom:12px}.site-item__instructions summary{font-size:12px;color:#6366f1;cursor:pointer;font-weight:500}.install-steps{margin-top:8px;padding:12px;background:#fafbfc;border-radius:8px;font-size:13px;color:#3a3f4b}.install-steps ol{margin:8px 0 0 20px}.install-steps li{margin-bottom:4px}.install-steps code{background:#e5e7ee;padding:1px 5px;border-radius:3px;font-size:12px}.site-item__actions{display:flex;gap:8px}.empty-state{text-align:center;padding:40px 20px;color:#94a3b8}.empty-state__icon{font-size:24px;margin-bottom:8px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#111318}.login-card{width:380px;background:#fff;border-radius:16px;padding:40px;box-shadow:0 20px 60px #0000004d}.login-header{text-align:center;margin-bottom:32px}.login-header h1{font-size:24px;font-weight:700;color:#1a1d26;margin-top:16px}.login-header p{font-size:13px;color:#94a3b8;margin-top:4px}.login-logo{display:flex;justify-content:center}.login-logo .logo-mark{width:48px;height:48px;font-size:22px;border-radius:12px}.login-form{display:flex;flex-direction:column;gap:16px}.login-error{padding:10px 14px;background:#fef2f2;color:#dc2626;border-radius:8px;font-size:13px}@media (max-width: 768px){.sidebar{display:none}.main-content{margin-left:0}.page{padding:16px}.stats-grid{grid-template-columns:1fr 1fr}.add-site-form{flex-direction:column}.add-site-form .form-input{max-width:none}.filters-bar{flex-direction:column}.filter-input{min-width:auto;width:100%}}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.product-card{background:#fff;border:1px solid #e5e7ee;border-radius:12px;overflow:hidden;transition:all .2s ease;display:block}.product-card:hover{border-color:#c7c9d9;box-shadow:0 4px 20px #0000000f;transform:translateY(-2px)}.product-image{aspect-ratio:4/3;background:#f5f6f8;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}.product-image .no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#c7c9d9}.product-info{padding:16px}.product-site{font-size:11px;font-weight:500;color:#6366f1;text-transform:uppercase;letter-spacing:.5px}.product-name{font-size:15px;font-weight:600;color:#1a1d26;margin:6px 0 4px;line-height:1.3}.product-sku{font-size:12px;color:#94a3b8}.product-meta{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.product-price{font-size:16px;font-weight:700;color:#1a1d26}.product-suppliers{font-size:12px;color:#6b7080;background:#f0f1f5;padding:3px 8px;border-radius:4px}.suppliers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.supplier-card{background:#fff;border:1px solid #e5e7ee;border-radius:12px;display:flex;align-items:center;position:relative;transition:all .2s ease}.supplier-card:hover{border-color:#c7c9d9;box-shadow:0 4px 16px #0000000d}.supplier-card-content{display:flex;align-items:center;gap:16px;padding:16px;flex:1}.supplier-avatar{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;flex-shrink:0}.supplier-info{flex:1;min-width:0}.supplier-name{font-size:15px;font-weight:600;color:#1a1d26;margin:0 0 2px}.supplier-country{font-size:12px;color:#94a3b8}.supplier-stats{font-size:12px;color:#6b7080;margin-top:4px}.supplier-rating{display:flex;gap:2px;margin-top:6px}.supplier-card>.btn-icon{position:absolute;top:8px;right:8px;opacity:0;transition:opacity .15s}.supplier-card:hover>.btn-icon{opacity:1}.detail-layout{display:grid;grid-template-columns:1fr 380px;gap:24px;align-items:start}.detail-main{display:flex;flex-direction:column;gap:20px}.detail-sidebar{position:sticky;top:24px}.detail-card{background:#fff;border:1px solid #e5e7ee;border-radius:16px;padding:24px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-header h2{font-size:16px;font-weight:600;color:#1a1d26}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#6b7080;margin-bottom:16px}.back-link:hover{color:#6366f1}.product-header{display:flex;gap:24px}.product-image-large{width:200px;height:200px;border-radius:12px;overflow:hidden;background:#f5f6f8;flex-shrink:0}.product-image-large img{width:100%;height:100%;object-fit:cover}.product-image-large .no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#c7c9d9}.product-header-info{flex:1}.product-site-badge{display:inline-block;font-size:11px;font-weight:600;color:#6366f1;background:#6366f11a;padding:4px 10px;border-radius:6px;text-transform:uppercase;letter-spacing:.5px}.product-header-info h1{font-size:24px;font-weight:700;color:#1a1d26;margin:12px 0 4px}.product-prices{display:flex;align-items:baseline;gap:10px;margin:12px 0}.price-main{font-size:28px;font-weight:700;color:#1a1d26}.price-regular{font-size:16px;color:#94a3b8;text-decoration:line-through}.product-stock{display:flex;align-items:center;gap:8px;margin-bottom:16px}.stock-badge{font-size:12px;font-weight:600;padding:4px 10px;border-radius:6px}.stock-badge.instock{background:#dcfce7;color:#16a34a}.stock-badge.outofstock{background:#fee2e2;color:#dc2626}.suppliers-list{display:flex;flex-direction:column;gap:16px}.supplier-item{border:1px solid #e5e7ee;border-radius:12px;padding:16px}.supplier-item-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.supplier-item-name{font-size:15px;font-weight:600;color:#1a1d26}.supplier-item-name .country{font-weight:400;color:#94a3b8;margin-left:4px}.badge-preferred{font-size:11px;font-weight:600;color:#f59e0b;background:#fef3c7;padding:3px 8px;border-radius:4px}.supplier-item-details{margin-bottom:12px}.alibaba-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:#f97316;margin-bottom:8px}.alibaba-link:hover{text-decoration:underline}.supplier-item-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:#6b7080}.supplier-notes{font-size:13px;color:#6b7080;background:#f8f9fb;padding:10px 12px;border-radius:8px;margin-top:10px}.shipping-rates{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7ee}.shipping-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.shipping-header h4{font-size:13px;font-weight:600;color:#3a3f4b}.shipping-table{width:100%;font-size:13px;border-collapse:collapse}.shipping-table th{text-align:left;padding:6px 10px;font-weight:500;color:#94a3b8;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.shipping-table td{padding:8px 10px;border-top:1px solid #f0f1f5;color:#3a3f4b}.empty-small{font-size:13px;color:#94a3b8}.empty-inline{padding:24px;text-align:center;color:#94a3b8}.supplier-header{display:flex;gap:24px}.supplier-avatar-large{width:80px;height:80px;border-radius:16px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;flex-shrink:0}.supplier-header-info{flex:1}.supplier-header-info h1{font-size:24px;font-weight:700;color:#1a1d26;margin:0 0 4px}.supplier-country-large{font-size:14px;color:#94a3b8;margin-bottom:12px}.supplier-contacts{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:#6b7080;margin-bottom:16px}.supplier-contacts a:hover{color:#6366f1}.supplier-notes-large{font-size:14px;color:#6b7080;background:#f8f9fb;padding:12px 16px;border-radius:10px;margin-top:16px}.edit-btn{margin-top:12px}.edit-form-inline{display:flex;flex-direction:column;gap:12px}.edit-form-inline .input-title{font-size:20px;font-weight:600}.edit-actions{display:flex;gap:10px;margin-top:8px}.linked-products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.linked-product-card{display:flex;align-items:center;gap:12px;padding:12px;background:#f8f9fb;border-radius:10px;transition:all .15s}.linked-product-card:hover{background:#f0f1f5}.linked-product-card img{width:56px;height:56px;border-radius:8px;object-fit:cover}.no-image-sm{width:56px;height:56px;border-radius:8px;background:#e5e7ee;display:flex;align-items:center;justify-content:center;font-size:20px}.linked-product-info{flex:1;min-width:0}.linked-product-info .site-badge{font-size:10px;color:#6366f1;font-weight:500;text-transform:uppercase}.linked-product-info h4{font-size:13px;font-weight:600;color:#1a1d26;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.linked-product-info .sku{font-size:11px;color:#94a3b8}.linked-product-info .prices{display:flex;gap:8px;font-size:12px;margin-top:4px}.linked-product-info .supplier-price{font-weight:600;color:#1a1d26}.linked-product-info .woo-price{color:#94a3b8}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;padding:10px 12px;font-weight:500;color:#94a3b8;font-size:11px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e5e7ee}.data-table td{padding:12px;border-bottom:1px solid #f0f1f5;color:#3a3f4b}.data-table tr:last-child td{border-bottom:none}.data-table a{color:#6366f1}.data-table a:hover{text-decoration:underline}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:#fff;border-radius:16px;width:100%;max-width:500px;max-height:90vh;overflow:auto;box-shadow:0 20px 60px #0003}.modal-lg{max-width:700px}.modal-sm{max-width:400px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7ee}.modal-header h2{font-size:18px;font-weight:600;color:#1a1d26}.btn-close{background:none;border:none;font-size:24px;color:#94a3b8;cursor:pointer;line-height:1}.btn-close:hover{color:#6b7080}.modal-body{padding:24px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #e5e7ee;background:#fafbfc;border-radius:0 0 16px 16px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:500;color:#3a3f4b;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border:1px solid #e5e7ee;border-radius:8px;font-size:14px;color:#1a1d26;transition:border-color .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#6366f1}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.form-row .form-group{margin-bottom:0}.quote-products-list{display:flex;flex-direction:column;gap:10px}.quote-product-row{display:flex;gap:10px;align-items:center}.quote-product-row select{flex:2;padding:8px 12px;border:1px solid #e5e7ee;border-radius:8px;font-size:13px}.quote-product-row input{flex:1;padding:8px 12px;border:1px solid #e5e7ee;border-radius:8px;font-size:13px}.file-manager{background:#fff;border:1px solid #e5e7ee;border-radius:16px;padding:20px}.file-manager h3{font-size:16px;font-weight:600;color:#1a1d26;margin-bottom:16px}.file-categories{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.category-tab{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #e5e7ee;border-radius:8px;background:#fff;font-size:12px;color:#6b7080;cursor:pointer;transition:all .15s}.category-tab:hover{border-color:#c7c9d9;background:#f8f9fb}.category-tab.active{border-color:#6366f1;background:#6366f10f;color:#6366f1}.category-icon{font-size:14px}.category-count{background:#e5e7ee;padding:1px 6px;border-radius:10px;font-size:10px;font-weight:600}.category-tab.active .category-count{background:#6366f126}.file-dropzone{border:2px dashed #d0d3dd;border-radius:12px;padding:28px;text-align:center;color:#94a3b8;transition:all .2s;margin-bottom:16px}.file-dropzone:hover,.file-dropzone.drag-over{border-color:#6366f1;background:#6366f108;color:#6366f1}.file-dropzone svg{margin-bottom:10px}.file-dropzone span{display:block;font-size:13px}.dropzone-or{font-size:12px;color:#c7c9d9;margin:8px 0}.dropzone-uploading{display:flex;flex-direction:column;align-items:center;gap:10px}.file-dropzone.uploading{border-color:#6366f1;background:#6366f108}.files-list{display:flex;flex-direction:column;gap:8px}.file-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#f8f9fb;border-radius:10px;transition:all .15s}.file-item:hover{background:#f0f1f5}.file-item.dragging{background:#fff;box-shadow:0 8px 24px #0000001f;border-radius:10px;padding:10px 12px}.file-drag-handle{cursor:grab;color:#c7c9d9;padding:4px}.file-drag-handle:hover{color:#94a3b8}.file-preview{width:40px;height:40px;border-radius:6px;overflow:hidden;background:#e5e7ee;flex-shrink:0}.file-preview img{width:100%;height:100%;object-fit:cover}.file-icon{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:18px}.file-info{flex:1;min-width:0}.file-name{display:block;font-size:13px;font-weight:500;color:#1a1d26;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-size{font-size:11px;color:#94a3b8}.file-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.file-item:hover .file-actions{opacity:1}.files-empty{text-align:center;color:#94a3b8;font-size:13px;padding:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.btn-primary{background:#6366f1;color:#fff}.btn-primary:hover{background:#4f46e5}.btn-secondary{background:#f0f1f5;color:#3a3f4b}.btn-secondary:hover{background:#e5e7ee}.btn-sm{padding:6px 12px;font-size:12px}.btn-icon{padding:6px;background:none;border:none;color:#94a3b8;cursor:pointer;border-radius:6px;transition:all .15s}.btn-icon:hover{background:#f0f1f5;color:#6b7080}.btn-delete:hover{background:#fee2e2;color:#dc2626}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px;padding-top:24px;border-top:1px solid #e5e7ee}.pagination button{padding:8px 16px;border:1px solid #e5e7ee;border-radius:8px;background:#fff;font-size:13px;color:#3a3f4b;cursor:pointer;transition:all .15s}.pagination button:hover:not(:disabled){border-color:#6366f1;color:#6366f1}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination span{font-size:13px;color:#6b7080}.search-box{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e5e7ee;border-radius:10px;padding:0 14px;flex:1;max-width:400px}.search-box svg{color:#94a3b8;flex-shrink:0}.search-box input{flex:1;padding:10px 0;border:none;font-size:14px;color:#1a1d26;background:transparent}.search-box input:focus{outline:none}.search-box input::placeholder{color:#c7c9d9}.filter-select{padding:10px 14px;border:1px solid #e5e7ee;border-radius:10px;font-size:14px;color:#3a3f4b;background:#fff;cursor:pointer}.filter-select:focus{outline:none;border-color:#6366f1}.filters-bar{display:flex;gap:12px;margin-bottom:24px}.loading-state{display:flex;align-items:center;justify-content:center;min-height:300px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;color:#94a3b8}.empty-state svg{margin-bottom:16px;opacity:.5}.empty-state h3{font-size:18px;font-weight:600;color:#6b7080;margin-bottom:8px}.empty-state p{font-size:14px;max-width:300px;margin-bottom:20px}@media (max-width: 1024px){.detail-layout{grid-template-columns:1fr}.detail-sidebar{position:static}}
