@keyframes rainbow{0%{color:red}16%{color:#f80}33%{color:#ff0}50%{color:#0c0}66%{color:#06f}83%{color:#80f}to{color:red}}.dev-badge{font-size:.8em;font-family:Dina,monospace;font-weight:700;margin-left:6px;vertical-align:baseline;animation:rainbow 2s linear infinite}html,body{height:100%;margin:0;padding:0;overflow:hidden}body{font-family:system-ui,sans-serif;padding:0;box-sizing:border-box}#root{height:100%;display:flex;flex-direction:column}.header-bar{display:flex;justify-content:space-between;align-items:center;padding:0 2rem;background:#f9f9f9;border-bottom:2px solid #ddd;flex-shrink:0;gap:2rem;box-sizing:border-box}.header-bar h1{margin:0;font-size:1.3rem;white-space:nowrap;flex-shrink:0}.toast-container{position:fixed;top:60px;right:2rem;z-index:2000;display:flex;flex-direction:column;gap:.5rem;max-width:400px;max-height:calc(100vh - 80px);overflow-y:auto;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-radius:8px;border-left:4px solid;font-size:.9rem;line-height:1.4;box-shadow:0 4px 12px #00000026;animation:slideInRight .3s ease-out;background:#fff}@keyframes slideInRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.toast-success{border-left-color:#28a745}.toast-warning{border-left-color:#ffc107}.toast-error{border-left-color:#dc3545}.toast-message{flex:1;margin-right:1rem;color:#333}.toast-close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:#666;opacity:.6;transition:opacity .2s;flex-shrink:0}.toast-close:hover{opacity:1}.notification-bell-container{position:relative;z-index:1500;flex-shrink:0}.notification-bell{background:transparent;border:none;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#333;transition:all .2s;position:relative}.notification-bell:hover{color:#06c;transform:scale(1.1)}.notification-badge{position:absolute;top:4px;right:4px;background:#dc3545;border-radius:50%;width:10px;height:10px;box-shadow:0 2px 4px #0003}.notification-dropdown{position:absolute;top:48px;right:0;width:360px;max-height:500px;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;animation:dropdownFadeIn .2s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notification-header{padding:1rem;border-bottom:1px solid #eee;background:#f9f9f9;border-radius:8px 8px 0 0}.notification-list{overflow-y:auto;max-height:400px;flex:1}.notification-empty{padding:2rem;text-align:center;color:#999;font-style:italic}.notification-item{padding:.75rem 1rem;border-bottom:1px solid #eee;transition:background .2s;cursor:default}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:#f9f9f9}.notification-item.notification-read{opacity:.6}.notification-item-success{border-left:3px solid #28a745}.notification-item-warning{border-left:3px solid #ffc107}.notification-item-error{border-left:3px solid #dc3545}.notification-time{font-size:.75rem;color:#999;margin-bottom:.25rem}.notification-message{font-size:.9rem;color:#333;line-height:1.4}.tabs{display:flex;gap:.25rem;flex:1;justify-content:center;align-items:center}.tab{padding:.5rem 1rem;background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;font-weight:500;font-size:.9rem;color:#666;transition:all .2s;white-space:nowrap}.tab:hover{color:#06c;background:#0066cc0d}.tab.active{color:#06c;border-bottom-color:#06c;font-weight:600}.tab-content{display:none;margin:0;flex:1;min-height:0}.tab-content.active{display:flex;flex-direction:column}table{width:100%;border-collapse:collapse;margin-top:0;font-size:.8em}tbody tr:nth-child(2n){background-color:#f9f9f9}tbody tr:nth-child(2n) td{background-color:#f9f9f9}th,td{border:1px solid #ccc;padding:1px 4px;text-align:left;vertical-align:middle;line-height:1.2;height:26px;max-height:26px;overflow:hidden}th{background:#f0f0f0;padding:.15rem .5rem}td input[type=text],td input[type=number],td input[type=date],td input[type=file]{width:100%;box-sizing:border-box;padding:.1rem .2rem;border:none;background:transparent;font:inherit;line-height:1.2}.file-cell{position:relative;padding:0!important}.file-input{opacity:0;position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;cursor:pointer}.file-label{display:block;padding:.1rem .2rem;background:#f9f9f9;border-radius:4px;text-align:center;font-size:.8em;line-height:1.2}.file-count{color:#06c;font-weight:700}.delete-btn{background:#f44;color:#fff;border:none;padding:.1rem .3rem;margin:0;cursor:pointer;border-radius:4px;font-size:.7rem}.add-row{padding:.6rem 1rem;background:#06c;color:#fff;border:none;cursor:pointer;border-radius:4px}.total{font-weight:700;text-align:right;padding:.5rem 0}.table-container{overflow:auto;white-space:nowrap;flex:1;min-height:0;padding:1rem 0;background:#fff}.bottom-controls{flex-shrink:0;padding:.75rem 2rem;background:#f9f9f9;border-top:2px solid #ddd;display:flex;align-items:center;gap:2rem}.button-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.bottom-controls .export-section{flex-shrink:0;margin:0;padding:0}.bottom-controls .totals-section{flex:1;display:flex;justify-content:flex-end;gap:2rem;margin:0;padding:0;background:transparent}#product-table th,#product-table td{min-width:120px;text-align:left}#product-table th:nth-child(1),#product-table td:nth-child(1){min-width:130px}#product-table th:nth-child(3),#product-table td:nth-child(3){min-width:150px}#product-table th:nth-child(4),#product-table td:nth-child(4),#product-table th:nth-child(5),#product-table td:nth-child(5),#product-table th:nth-child(8),#product-table td:nth-child(8){min-width:auto}#product-table th:nth-child(9),#product-table td:nth-child(9),#product-table th:nth-child(14),#product-table td:nth-child(14){min-width:70px}#product-table th:nth-child(15),#product-table td:nth-child(15),#product-table th:nth-child(16),#product-table td:nth-child(16),#product-table th:nth-child(17),#product-table td:nth-child(17){min-width:auto}td input[type=number]::-webkit-inner-spin-button,td input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}td input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:#fff;padding:2rem;border-radius:8px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 6px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #ddd}.modal-header h2{margin:0;font-size:1.5rem}.modal-close{background:none;border:none;font-size:2rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:#000}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.25rem;font-weight:700;font-size:.9rem}.form-group input{width:100%;padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #0066cc1a}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #eee}.modal-actions button{padding:.6rem 1.2rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;font-weight:500}.modal-actions button[type=button]{background:#f0f0f0;color:#333}.modal-actions button[type=button]:hover{background:#e0e0e0}.modal-actions button[type=submit]{background:#06c;color:#fff}.modal-actions button[type=submit]:hover{background:#0052a3}.modal-actions button:disabled{opacity:.5;cursor:not-allowed}.photos-cell{padding:1px 4px!important;min-width:100px}.photo-drop-active{background:#e0f0ff!important;outline:2px dashed #4a90d9;outline-offset:-2px}.photo-drop-gap{width:3px;min-width:3px;height:24px;background:#06c;border-radius:2px;flex-shrink:0}.photo-wrapper--draggable{cursor:grab}.photo-wrapper--draggable:active{cursor:grabbing;opacity:.7}.photo-icons{display:flex;gap:.15rem;flex-wrap:nowrap;align-items:center;margin:0;overflow-x:hidden;overflow-y:hidden}.photo-icon{width:24px;height:24px;border:1px solid #ddd;border-radius:3px;overflow:hidden;cursor:pointer;transition:transform .2s}.photo-icon:hover{transform:scale(1.1);border-color:#06c;box-shadow:0 2px 4px #0003}.photo-icon img{width:100%;height:100%;object-fit:cover}.no-photos{color:#999;font-style:italic}.photo-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:3000;cursor:pointer}.photo-preview-content{max-width:90%;max-height:90%;display:flex;flex-direction:column;align-items:center;gap:.75rem;cursor:default}.photo-preview-sku{color:#fff;font-family:monospace;font-size:1.1rem;font-weight:700;letter-spacing:.5px;text-shadow:0 1px 4px rgba(0,0,0,.6)}.photo-preview-content img{max-width:100%;max-height:calc(90vh - 100px);object-fit:contain;border-radius:8px;box-shadow:0 4px 20px #00000080}.photo-preview-nav{display:flex;align-items:center;gap:1rem}.photo-preview-nav button{padding:.4rem 1rem;background:#fff;color:#333;border:none;border-radius:4px;cursor:pointer;font-weight:700;font-size:1.2rem}.photo-preview-nav button:hover{background:#f0f0f0}.photo-preview-counter{color:#ccc;font-size:.9rem;font-family:monospace}.edit-btn,.save-btn,.cancel-btn{padding:.1rem .3rem;margin:0;border:none;cursor:pointer;border-radius:4px;font-size:.7rem}.edit-btn{background:#06c;color:#fff}.edit-btn:hover{background:#0052a3}.save-btn{background:#0a4;color:#fff}.save-btn:hover{background:#083}.cancel-btn{background:#999;color:#fff}.cancel-btn:hover{background:#777}#inventory-table th,#inventory-table td{min-width:120px;text-align:left}#inventory-table th:nth-child(3),#inventory-table td:nth-child(3){min-width:150px}#inventory-table th:nth-child(4),#inventory-table td:nth-child(4),#inventory-table th:nth-child(5),#inventory-table td:nth-child(5),#inventory-table th:nth-child(8),#inventory-table td:nth-child(8),#inventory-table th:nth-child(9),#inventory-table td:nth-child(9),#inventory-table th:nth-child(14),#inventory-table td:nth-child(14){min-width:90px}#inventory-table th:nth-child(1),#inventory-table td:nth-child(1){min-width:160px}#inventory-table th:nth-child(16),#inventory-table td:nth-child(16){min-width:150px}#inventory-table th:nth-child(17),#inventory-table td:nth-child(17){min-width:130px}.photo-management{display:flex;flex-direction:row;gap:0;padding:0}.photo-wrapper{position:relative;display:inline-block}.photo-delete-btn{position:absolute;top:-4px;right:-4px;width:14px;height:14px;border-radius:50%;background:#f44;color:#fff;border:1px solid white;cursor:pointer;font-size:10px;line-height:1;padding:0;display:flex;align-items:center;justify-content:center;font-weight:700;box-shadow:0 2px 4px #0003;z-index:10}.photo-delete-btn:hover{background:#c00;transform:scale(1.1)}.new-photo{background:#e8f4ff;border:2px dashed #0066cc;display:flex;align-items:center;justify-content:center}.new-photo-label{font-size:16px;color:#06c;font-weight:700}.photo-upload-wrapper{margin-top:.1rem}.photo-file-input{display:none}.photo-upload-label{display:inline-block;padding:.1rem .3rem;background:#06c;color:#fff;border-radius:4px;cursor:pointer;font-size:.7rem;font-weight:500;transition:background .2s}.photo-upload-label:hover{background:#0052a3}.photo-add-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px dashed #0066cc;border-radius:3px;background:#f0f8ff;color:#06c;cursor:pointer;font-size:16px;font-weight:700;transition:all .2s}.photo-add-btn:hover{background:#06c;color:#fff;border-style:solid;transform:scale(1.1)}.filter-controls{display:flex;justify-content:space-between;align-items:center;margin:1rem;padding:1rem;background:#f7f7f7;border-radius:4px;gap:1rem;flex-wrap:wrap;flex-shrink:0}.date-filters{display:flex;gap:1rem;align-items:center}.date-input-group{display:flex;align-items:center;gap:.5rem}.date-input-group label{font-weight:500;font-size:.9rem}.date-input-group input[type=date]{padding:.4rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem}.quick-filters{display:flex;gap:.5rem}.filter-btn{padding:.5rem 1rem;background:#06c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500}.filter-btn:hover{background:#0052a3}.column-filter{position:relative;display:inline-block}.column-filter-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:1000;min-width:200px;max-height:360px;overflow-y:auto;background:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 8px #00000026;padding:.25rem}.column-filter-showall{display:block;width:100%;padding:.35rem .5rem;margin-bottom:.25rem;background:#f0f0f0;border:none;border-radius:4px;cursor:pointer;font-size:.85rem;text-align:left}.column-filter-showall:hover:not(:disabled){background:#e0e0e0}.column-filter-showall:disabled{color:#aaa;cursor:default}.column-filter-option{display:flex;align-items:center;gap:.5rem;padding:.3rem .5rem;font-size:.85rem;cursor:pointer;white-space:nowrap}.column-filter-option:hover{background:#f5f5f5}.column-filter-option input{cursor:pointer}#transaction-view-table th,#transaction-view-table td{min-width:100px}#transaction-view-table th:first-child,#transaction-view-table td:first-child{min-width:110px}#transaction-view-table th:nth-child(2),#transaction-view-table td:nth-child(2){min-width:180px}#transaction-view-table th:nth-child(3),#transaction-view-table td:nth-child(3){min-width:120px}.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable:hover{background:#e0e0e0}.positive{color:#083;font-weight:500}.negative{color:#c00;font-weight:500}.no-data{text-align:center;padding:2rem;color:#666;font-style:italic}.total-item{display:flex;gap:.5rem;align-items:center;font-size:.95rem}.negative-currency{color:#d32f2f}.currency-cell,.currency-input,.quantity-cell{text-align:right!important;padding-right:4px!important}.computed-field{font-style:italic}.sku-preview-cell{white-space:nowrap}.sku-preview{color:#666;font-size:.96em;font-family:monospace}.filter-panel{background:#f7f7f7;padding:1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #ddd}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.filter-item{display:flex;flex-direction:column;gap:.25rem}.filter-item label{font-weight:700;font-size:.9rem;color:#333}.filter-item input{padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem}.filter-item input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #0066cc1a}.listings-container{display:flex;flex-direction:column;gap:1.5rem;margin:1.5rem 0}.listing-row{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid #ddd;border-radius:4px;background:#f9f9f9}.listing-site-name{font-size:1rem}.listing-actions{display:flex;gap:.5rem;align-items:center}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.95rem}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.btn-goto,.btn-delete{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background .2s}.btn-goto{background:#06c;color:#fff}.btn-goto:hover{background:#0052a3}.btn-delete{background:#f44;color:#fff}.btn-delete:hover{background:#c00}.modal-buttons{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #eee}.btn-primary,.btn-secondary{padding:.6rem 1.2rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;font-weight:500;transition:background .2s}.btn-primary{background:#06c;color:#fff}.btn-primary:hover{background:#0052a3}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#f0f0f0;color:#333}.btn-secondary:hover{background:#e0e0e0}.description-cell{cursor:pointer;max-width:200px;padding:4px 8px!important}.description-cell:hover{background:#f5f5f5}.description-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.description-text{color:#333}.description-empty{color:#999;font-style:italic}.description-modal{min-width:600px;max-width:800px}.description-textarea{width:100%;min-height:200px;padding:.75rem;border:1px solid #ccc;border-radius:4px;font-family:inherit;font-size:.9rem;line-height:1.5;resize:vertical;margin-bottom:1rem}.description-textarea:focus{outline:none;border-color:#4caf50}.description-textarea:disabled{background:#f5f5f5;cursor:not-allowed}.listings-cell{padding:1px 4px!important;min-width:120px}.listing-icons{display:flex;gap:.25rem;flex-wrap:nowrap;align-items:center}.listing-icon{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:#fff;text-decoration:none;transition:transform .2s,box-shadow .2s;cursor:pointer}.listing-icon:hover{transform:scale(1.15);box-shadow:0 2px 6px #0000004d}.woo-icon{background:#7f54b3}.woo-icon:hover{background:#6a3fa3}.ebay-icon{background:#e53238}.ebay-icon:hover{background:#cc1f1f}.no-listings{color:#999;font-style:italic}.listing-warning-icon{font-size:1rem;margin-left:.25rem;cursor:help;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.master-checkbox{width:16px;height:16px;cursor:pointer}.master-checkbox:indeterminate{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;border:2px solid #666;border-radius:3px;background:#fff;position:relative}.master-checkbox:indeterminate:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:2px;background:#666}.bulk-actions-bar{display:flex;align-items:center;gap:1rem;padding:.75rem 2rem;background:#e8f4ff;border-bottom:2px solid #0066cc;margin-bottom:.5rem}.bulk-count{font-weight:600;color:#06c;margin-right:auto}.bulk-listings-modal{max-width:600px;width:90%}.modal-subtitle{color:#666;margin-top:-.5rem;margin-bottom:1.5rem}.action-selector{display:flex;gap:2rem;margin-bottom:1.5rem;padding:1rem;background:#f7f7f7;border-radius:4px}.action-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:1rem}.action-option input[type=radio]{cursor:pointer;width:18px;height:18px}.platform-selector{margin-bottom:1.5rem}.platform-selector h3{margin-bottom:.75rem;font-size:1rem;color:#333}.platform-checkboxes{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#f7f7f7;border-radius:4px}.platform-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.95rem}.platform-option input[type=checkbox]{cursor:pointer;width:18px;height:18px}.selected-items-preview{margin-bottom:1.5rem}.selected-items-preview h3{margin-bottom:.75rem;font-size:1rem;color:#333}.items-list{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem;background:#f7f7f7;border-radius:4px;max-height:150px;overflow-y:auto}.item-chip{padding:.25rem .75rem;background:#fff;border:1px solid #ddd;border-radius:12px;font-size:.85rem;color:#333}.item-chip.more-items{background:#06c;color:#fff;border-color:#06c;font-weight:600}.action-summary{padding:1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;margin-bottom:1.5rem;font-size:.95rem}.action-summary strong{color:#856404}.listings-cell-content{display:flex;align-items:center;gap:.5rem}.listing-checkbox{cursor:pointer;width:16px;height:16px;flex-shrink:0}.party-link{color:#06c;cursor:pointer;text-decoration:underline;text-decoration-style:dotted}.party-link:hover{color:#049;text-decoration-style:solid}.form-field-display{padding:.5rem;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;min-height:38px;display:flex;align-items:center}.form-field-display a{color:#06c;text-decoration:none}.form-field-display a:hover{text-decoration:underline}.cost-breakdown-tooltip{visibility:hidden;opacity:0;position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;background-color:#333;color:#fff;padding:8px 12px;border-radius:4px;white-space:nowrap;font-size:.875rem;z-index:1000;pointer-events:none;transition:opacity .2s,visibility .2s;box-shadow:0 2px 8px #0003}.cost-breakdown-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#333}.cost-with-tooltip:hover .cost-breakdown-tooltip{visibility:visible;opacity:1}
