.color-swatch{width:30px;height:30px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;position:relative;border:1px solid #ddd}.color-swatch:hover{transform:scale(1.1);box-shadow:0 2px 4px #0000001a}.color-swatch.selected{border:2px solid #333;box-shadow:0 0 0 2px #0000001a}.check-mark{color:#fff;text-shadow:0px 0px 2px rgba(0,0,0,.8);font-weight:700;font-size:14px}.color-swatches-container{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.selected-color-display{display:flex;align-items:center;gap:8px;margin-top:4px}.color-swatches-wrapper{margin-top:16px;width:100%}.color-swatches-container{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.color-swatches-title{font-size:.875rem;font-weight:600;color:#555;margin-bottom:8px}.selected-color-display{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:.875rem;color:#333}.selected-color-swatch{width:20px;height:20px;border-radius:4px;border:1px solid #ddd}.image-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.image-modal-content{position:relative;max-width:90%;max-height:90%;background-color:#fff;border-radius:8px;padding:10px;box-shadow:0 4px 20px #0003}.image-modal-close{position:absolute;top:-15px;right:-15px;width:30px;height:30px;border-radius:50%;background-color:#333;color:#fff;border:none;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1001;box-shadow:0 2px 5px #0003}.image-modal-close:hover{background-color:#555}.image-modal-img{display:block;max-width:100%;max-height:80vh;object-fit:contain;border-radius:4px}.image-gallery{display:flex;flex-direction:column;width:100%;gap:12px}.main-image-container{width:100%;position:relative}.main-image{width:100%;object-fit:contain;max-height:250px;border-radius:4px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;background-color:#f9f9f9;padding:8px}.main-image:hover{transform:scale(1.02);box-shadow:0 4px 8px #0000001a}.image-placeholder{width:100%;height:200px;display:flex;align-items:center;justify-content:center;background-color:#f5f5f5;color:#999;font-size:.875rem;text-align:center;border-radius:4px}.thumbnails-container{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin;scrollbar-color:#ccc transparent}.thumbnails-container::-webkit-scrollbar{height:6px}.thumbnails-container::-webkit-scrollbar-track{background:transparent}.thumbnails-container::-webkit-scrollbar-thumb{background-color:#ccc;border-radius:3px}.thumbnail{flex:0 0 60px;height:60px;border-radius:4px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all .2s ease}.thumbnail:hover{transform:translateY(-2px)}.thumbnail.active{border-color:#4a90e2}.thumbnail-image{width:100%;height:100%;object-fit:contain;background-color:#f9f9f9;padding:2px}.main-image-wrapper{position:relative;width:100%}.delete-image-button{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background-color:#ff0000b3;color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:12px;font-weight:700;z-index:5;transition:background-color .2s ease}.delete-image-button:hover{background-color:#ff0000e6}.main-delete-button{top:12px;right:12px;width:28px;height:28px;font-size:14px}.thumbnail{position:relative}.thumbnail .delete-image-button{top:2px;right:2px;width:18px;height:18px;font-size:10px}.gadget-card{border:1px solid #e0e0e0;border-radius:8px;padding:16px;margin-bottom:24px;box-shadow:0 2px 4px #0000000d;background-color:#fff;transition:transform .2s ease,box-shadow .2s ease;width:100%;display:flex;flex-direction:column;height:100%;justify-content:space-between}.gadget-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.gadget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #f0f0f0}.gadget-header h3{margin:0;font-size:1.25rem;color:#333}.gadget-code{font-size:.875rem;color:#666;font-weight:500}.gadget-content{display:flex;gap:24px;margin-bottom:16px;flex-wrap:wrap;flex:1}.gadget-image-container{flex:0 0 200px;display:flex;flex-direction:column;gap:8px}.gadget-image,.gadget-image-placeholder{width:100%;border-radius:4px;overflow:hidden}.gadget-image{object-fit:contain;max-height:250px;width:100%;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.gadget-image:hover{transform:scale(1.02);box-shadow:0 4px 8px #0000001a}.gadget-image-placeholder{display:flex;align-items:center;justify-content:center;background-color:#f5f5f5;color:#999;font-size:.875rem;text-align:center;padding:16px}.image-upload{margin-top:8px}.upload-button{display:inline-block;padding:8px 12px;background-color:#f0f0f0;color:#333;border-radius:4px;font-size:.875rem;cursor:pointer;transition:background-color .2s ease;text-align:center;width:100%}.upload-button:hover{background-color:#e0e0e0}.file-input{display:none}.gadget-details{flex:1;display:flex;flex-direction:column;gap:12px;min-width:250px;overflow-wrap:break-word}.detail-row{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.detail-label{font-weight:600;color:#555;min-width:120px;flex-shrink:0}.detail-value{color:#333;word-break:break-word;max-width:100%}.selected-color-info{display:flex;align-items:center;gap:8px}.color-indicator{width:20px;height:20px;border-radius:4px;border:1px solid #ddd;display:inline-block}.detail-select,.quantity-input{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:.875rem;color:#333;background-color:#fff;min-width:120px;max-width:100%}.quantity-controls{display:flex;align-items:center;gap:8px}.quantity-control-button{padding:6px 10px;background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;font-weight:700;cursor:pointer;transition:background-color .2s ease}.quantity-control-button:hover:not(:disabled){background-color:#e0e0e0}.quantity-control-button:disabled{opacity:.5;cursor:not-allowed}.quantity-input{width:80px;max-width:100%;text-align:center}.admin-price-adjustment{margin-top:8px;padding:12px;background-color:#f9f9f9;border-radius:6px;border-left:3px solid #F402A1;flex-direction:column;align-items:flex-start}.price-adjustment-input{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:.875rem;color:#333;background-color:#fff;width:100px}.price-comparison{margin-top:8px;display:flex;flex-direction:column;gap:4px;width:100%}.original-price{color:#777;text-decoration:line-through;font-size:.875rem}.adjusted-price{color:#f402a1;font-weight:600;font-size:.875rem}.price-adjustment-indicator{margin-left:4px;color:#4caf50;font-weight:600}.gadget-footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:16px;border-top:1px solid #f0f0f0;flex-wrap:wrap;gap:10px}.price-action-container{display:flex;align-items:center;gap:16px;margin-left:auto}.unit-price{font-size:.875rem;color:#666;display:flex;align-items:center}.total-price{font-size:1.125rem;font-weight:600;color:#333;display:flex;align-items:center;white-space:nowrap}.add-to-quote-button{padding:10px 16px;background-color:#f402a1;color:#fff;border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:180px;height:40px;display:flex;align-items:center;justify-content:center}.add-to-quote-button:hover{background-color:#d1018a}.add-to-quote-button.added{background-color:#4caf50}@media (max-width: 768px){.gadget-content{flex-direction:column}.gadget-image-container{flex:0 0 auto;width:100%}.gadget-footer{flex-direction:column;align-items:flex-start;gap:16px}.price-action-container{width:100%;justify-content:space-between;margin-left:0}.add-to-quote-button{width:auto}}.gadget-list-container{width:100%;max-width:1200px;margin:0 auto;padding:20px 16px 24px}.gadget-list-header{margin-bottom:32px;width:100%;display:block;clear:both}.gadget-list-header h2{font-size:1.75rem;color:#333;margin-bottom:16px}.gadget-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.search-container{flex:1;min-width:250px}.search-input{width:100%;padding:10px 16px;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.filter-container{display:flex;align-items:center;gap:8px}.filter-container label{font-size:.875rem;color:#555;white-space:nowrap}.filter-select{padding:10px 16px;border:1px solid #ddd;border-radius:4px;font-size:.875rem;min-width:150px}.gadget-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px;width:100%}.no-results{grid-column:1 / -1;text-align:center;padding:48px 0;color:#666;background-color:#f9f9f9;border-radius:8px}@media (max-width: 768px){.gadget-list{grid-template-columns:1fr}.gadget-filters{flex-direction:column}}.quote-form-container{width:100%;max-width:1000px;margin:0 auto;padding:20px 16px 24px;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d}.quote-form-container h2{font-size:1.75rem;color:#333;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.quote-form-container h3{font-size:1.25rem;color:#444;margin-bottom:16px}.empty-quote{text-align:center;padding:48px 0;color:#666;background-color:#f9f9f9;border-radius:8px;margin-bottom:24px}.selected-items{margin-bottom:32px}.items-table{border:1px solid #e0e0e0;border-radius:4px;overflow:hidden}.table-header,.table-row,.table-footer{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr;align-items:center}.table-header{background-color:#f5f5f5;font-weight:600;padding:12px 16px;border-bottom:1px solid #e0e0e0}.table-row{padding:12px 16px;border-bottom:1px solid #e0e0e0}.table-row:nth-child(2n){background-color:#fafafa}.table-footer{padding:16px;background-color:#f5f5f5;font-weight:600;grid-template-columns:5fr 1fr}.total-label{text-align:right;padding-right:16px}.total-value{font-size:1.125rem}.quote-form{margin-top:32px}.form-row{display:flex;gap:16px;margin-bottom:16px}.form-group{flex:1;margin-bottom:16px}.form-group.full-width{flex:1 1 100%;width:100%}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#555}.form-group input,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.form-group input:disabled,.form-group textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-group input.error,.form-group textarea.error{border-color:#e53935}.error-message{color:#e53935;font-size:.75rem;margin-top:4px}.form-error-message{color:#e53935;background-color:#e539351a;padding:12px;border-radius:4px;margin-bottom:16px;font-size:.875rem;text-align:center}.form-group textarea{resize:vertical;min-height:100px}.form-actions{margin-top:24px;text-align:right}.submit-button{padding:12px 24px;background-color:#f402a1;color:#fff;border:none;border-radius:4px;font-weight:500;font-size:1rem;cursor:pointer;transition:background-color .2s ease}.submit-button:hover:not(:disabled){background-color:#d1018a}.submit-button:disabled{background-color:#f87bc7;cursor:not-allowed}@media (max-width: 768px){.form-row{flex-direction:column;gap:0}.table-header,.table-row{grid-template-columns:1fr;gap:8px}.table-header{display:none}.table-row{padding:16px;border-bottom:1px solid #e0e0e0}.table-row>div{display:flex;justify-content:space-between}.table-row>div:before{content:attr(data-label);font-weight:600}.table-footer{grid-template-columns:1fr;gap:8px}.total-label{text-align:left}}.quote-page{display:flex;flex-direction:column;min-height:100vh;width:100%;background-color:#f5f7fa;position:relative;padding-top:80px}.quote-header{background-color:#fff;padding:16px 24px;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center;max-width:1200px;width:100%;margin:0 auto;position:fixed;top:0;left:0;right:0;z-index:1000}.logo-container{display:flex;align-items:center;gap:16px}.company-logo{height:40px;width:auto}.logo-container h1{margin:0;font-size:1.5rem;color:#333}.header-title{margin:0;font-size:1.5rem;color:#333;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.tabs{display:flex;gap:8px}.tab-button{padding:10px 16px;background-color:transparent;border:none;border-radius:4px;font-size:.875rem;color:#555;cursor:pointer;transition:all .2s ease}.tab-button:hover{background-color:#f0f0f0}.tab-button.active{background-color:#f402a1;color:#fff}.quote-content{flex:1;padding:24px;width:100%;display:flex;flex-direction:column;margin-top:20px}.confirmation-container{max-width:800px;margin:0 auto;padding:24px 0}.confirmation-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:32px}.confirmation-card h2{color:#f402a1;margin-top:0;margin-bottom:24px;text-align:center}.confirmation-details{margin-bottom:32px}.confirmation-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #f0f0f0}.confirmation-section:last-child{border-bottom:none;padding-bottom:0}.confirmation-section h3{font-size:1.125rem;color:#444;margin-bottom:16px}.confirmation-info{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.info-row{display:flex;gap:8px}.info-label{font-weight:600;color:#555}.info-value{color:#333}.confirmation-items{display:flex;flex-direction:column;gap:16px}.confirmation-item{padding:16px;background-color:#f9f9f9;border-radius:4px;display:flex;flex-direction:column;gap:8px}.item-details{display:flex;justify-content:space-between;align-items:center}.item-name{font-weight:600;color:#333}.item-code{color:#666;font-size:.875rem}.item-specs{display:flex;gap:16px;color:#555;font-size:.875rem}.item-pricing{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:8px;border-top:1px dashed #e0e0e0}.item-quantity{font-size:.875rem;color:#555}.item-price{font-size:.875rem;color:#666}.item-total{font-weight:600;color:#333}.notes-text{background-color:#f9f9f9;padding:16px;border-radius:4px;color:#555;font-style:italic}.confirmation-actions{text-align:center;margin-top:32px}.new-quote-button{padding:12px 24px;background-color:#f402a1;color:#fff;border:none;border-radius:4px;font-weight:500;font-size:1rem;cursor:pointer;transition:background-color .2s ease;margin-top:16px}.new-quote-button:hover{background-color:#d1018a}.quote-footer{background-color:#f402a1;color:#fff;padding:24px;font-size:.875rem;width:100%}.footer-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.quote-footer p{margin:0}.company-info{display:flex;flex-direction:column;gap:4px;text-align:right}.company-info p{margin:0}@media (max-width: 768px){.footer-content{flex-direction:column;text-align:center}.company-info{text-align:center}}@media (max-width: 768px){.quote-header{padding:16px;flex-direction:column;justify-content:center;gap:24px;height:auto}.logo-container{justify-content:center;width:100%}.header-title{position:static;transform:none;margin:10px 0}.tabs{width:auto;justify-content:center}.tab-button{flex:1;text-align:center}.confirmation-info{grid-template-columns:1fr}.item-pricing{flex-direction:column;align-items:flex-start;gap:8px}}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow-x:hidden}body{font-family:Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#333;background-color:#f5f7fa;line-height:1.5}#root{width:100%;min-height:100vh;display:flex;flex-direction:column}button{cursor:pointer;font-family:inherit}input,select,textarea,button{font-family:inherit;font-size:inherit}.migration-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#ffffffe6;display:flex;justify-content:center;align-items:center;z-index:1000}.migration-message{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 12px #0000001a;text-align:center;max-width:500px}.migration-message h2{margin-bottom:1rem;color:#2c3e50}.migration-spinner{margin:2rem auto 0;width:40px;height:40px;border:4px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#3498db;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.migration-notification{position:fixed;top:20px;right:20px;background-color:#2ecc71;color:#fff;padding:1rem;border-radius:4px;box-shadow:0 2px 8px #0003;display:flex;align-items:center;z-index:900;animation:slideIn .3s ease-out;max-width:400px}.migration-notification p{flex:1;margin-right:1rem}.migration-notification button{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer;padding:0 .5rem}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 16px}.text-center{text-align:center}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:2rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:2rem}@media (max-width: 768px){.container{padding:0 12px}.migration-notification{left:20px;right:20px;max-width:calc(100% - 40px)}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
