@import"https://fonts.googleapis.com/css2?family=Cairo:wght@300;400;600;700&display=swap";html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh;font-family:Cairo,sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Cairo,sans-serif;direction:rtl;text-align:right;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:#333}#root{width:100%}.app-container{max-width:1400px;margin:0 auto;padding:20px;min-height:100vh;display:flex;flex-direction:column}.app-header{background:#fff;border-radius:15px;padding:30px;margin-bottom:30px;box-shadow:0 10px 30px #0000001a;text-align:center}.app-title{font-size:2.5rem;font-weight:700;color:#667eea;margin-bottom:10px;display:flex;align-items:center;justify-content:center;gap:15px}.title-icon{font-size:3rem}.app-subtitle{font-size:1.2rem;color:#666;font-weight:400}.app-main{flex:1;display:flex;flex-direction:column;gap:30px}.form-container{background:#fff;border-radius:15px;padding:30px;box-shadow:0 10px 30px #0000001a}.form-card{display:flex;flex-direction:column;gap:25px}.form-section{display:flex;flex-direction:column;gap:12px}.form-label{font-size:1.2rem;font-weight:600;color:#333;display:flex;align-items:center;gap:10px}.label-icon{font-size:1.5rem}.form-select,.form-input{width:100%;padding:12px 15px;font-size:1rem;font-family:Cairo,sans-serif;border:2px solid #e0e0e0;border-radius:8px;transition:all .3s ease;background:#fff}.form-select:focus,.form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-input:disabled{background:#f5f5f5;cursor:not-allowed}.dimensions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.dimensions-grid.three-columns{grid-template-columns:repeat(3,1fr)}.dimension-input{display:flex;flex-direction:column;gap:8px}.input-label{font-size:.95rem;font-weight:500;color:#555}.info-text{color:#999;font-size:1rem;padding:15px;background:#f9f9f9;border-radius:8px;text-align:center}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px}.product-card{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:10px;padding:20px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:10px;position:relative}.product-card:hover{transform:translateY(-3px);box-shadow:0 5px 15px #0000001a}.product-card.selected{background:#667eea;border-color:#667eea;color:#fff}.product-icon{font-size:2.5rem}.product-label{font-size:1rem;font-weight:600;text-align:center}.product-checkbox{position:absolute;top:10px;left:10px;width:20px;height:20px;cursor:pointer}.error-container{background:#ffebee;border:2px solid #ef5350;border-radius:8px;padding:15px;display:flex;flex-direction:column;gap:8px}.error-message{color:#c62828;font-size:1rem;font-weight:500;display:flex;align-items:center;gap:8px}.button-group{display:flex;gap:15px;margin-top:10px}.btn{flex:1;padding:15px 25px;font-size:1.1rem;font-weight:600;font-family:Cairo,sans-serif;border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.btn-secondary:hover:not(:disabled){background:#f5f7ff}.btn-icon{font-size:1.3rem}.spinner{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.results-section{display:flex;flex-direction:column;gap:30px}.results-container{background:#fff;border-radius:15px;padding:30px;box-shadow:0 10px 30px #0000001a}.results-title{font-size:2rem;font-weight:700;color:#667eea;margin-bottom:25px;display:flex;align-items:center;gap:15px}.section-title{font-size:1.5rem;font-weight:600;color:#333;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #e0e0e0}.dimensions-summary{margin-bottom:30px}.dimensions-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px}.dimension-card{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:10px;padding:20px}.product-name{font-size:1.2rem;font-weight:600;color:#667eea;margin-bottom:15px}.dimension-detail,.wrapping-type{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e0e0e0}.dimension-detail:last-child,.wrapping-type:last-child{border-bottom:none}.detail-label,.type-label{font-weight:500;color:#666}.detail-value,.type-value{font-weight:600;color:#333}.wrapping-types{display:flex;flex-direction:column;gap:8px}.optimization-options{display:flex;flex-direction:column;gap:20px}.option-card{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:10px;overflow:hidden}.option-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;transition:all .3s ease}.option-header.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.option-header.clickable:hover{background:linear-gradient(135deg,#5568d3,#653a8b)}.option-header-content{width:100%}.option-title{font-size:1.4rem;font-weight:600;display:flex;align-items:center;gap:10px;margin-bottom:10px}.toggle-icon{font-size:1.2rem;transition:transform .3s ease;display:inline-block}.best-badge{background:#4caf50;padding:5px 12px;border-radius:20px;font-size:.9rem;font-weight:600}.option-stats{display:flex;gap:20px;flex-wrap:wrap}.stat-item{display:flex;align-items:center;gap:8px;background:#fff3;padding:8px 15px;border-radius:8px}.stat-label{font-weight:500;font-size:.95rem}.stat-value{font-weight:700;font-size:1.1rem}.option-body{padding:20px;background:#fff;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.option-visualization{margin-top:20px;padding-top:20px;border-top:2px solid #e0e0e0}.results-table{width:100%;border-collapse:collapse;margin-bottom:15px}.results-table thead{background:#667eea;color:#fff}.results-table th,.results-table td{padding:12px;text-align:center;border:1px solid #e0e0e0}.results-table th{font-weight:600;font-size:1rem}.results-table tbody tr:nth-child(2n){background:#f9f9f9}.results-table tbody tr:hover{background:#f0f4ff}.product-name-cell{font-weight:600;color:#667eea}.count-cell{font-weight:700;color:#4caf50;font-size:1.1rem}.arrangement-info{background:#f0f4ff;padding:12px;border-radius:8px;margin-bottom:10px}.arrangement-text{font-weight:500;color:#667eea}.waste-info{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#fff3e0;border-radius:8px}.waste-label{font-weight:500;color:#f57c00}.waste-value{font-weight:700;color:#e65100;font-size:1.1rem}.visualization-container{background:#fff;border-radius:15px;padding:30px;box-shadow:0 10px 30px #0000001a}.visualization-container-inline{background:#f9f9f9;border-radius:10px;padding:20px}.visualization-title{font-size:1.2rem;font-weight:600;color:#667eea;margin-bottom:15px;text-align:center}.plate-container{display:flex;flex-direction:column;align-items:center;gap:20px}.plate-svg{border-radius:10px;box-shadow:0 5px 15px #0000001a}.visualization-legend{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:8px;font-weight:500}.legend-color{width:30px;height:20px;border-radius:4px;border:1px solid #ccc}.plate-info{text-align:center;color:#666;font-size:.95rem}.plate-info p{margin:5px 0}.app-footer{background:#fff;border-radius:15px;padding:20px;margin-top:30px;box-shadow:0 10px 30px #0000001a;text-align:center;color:#666;font-size:.95rem}@media(max-width:768px){.app-title{font-size:1.8rem}.title-icon{font-size:2rem}.app-subtitle{font-size:1rem}.dimensions-grid,.dimensions-grid.three-columns{grid-template-columns:1fr}.products-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.button-group{flex-direction:column}.dimensions-cards{grid-template-columns:1fr}.results-table{font-size:.85rem}.results-table th,.results-table td{padding:8px}.option-stats{flex-direction:column;gap:10px}.form-container,.results-container,.visualization-container{padding:20px}}@media(max-width:480px){.app-container{padding:10px}.app-header{padding:20px}.app-title{font-size:1.5rem;flex-direction:column}.products-grid{grid-template-columns:1fr}.results-table{display:block;overflow-x:auto}}
