*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#121212;min-height:100vh;color:#fff}.App{min-height:100vh;display:flex;flex-direction:column}.App-header{background:#121212;padding:16px 20px;display:flex;justify-content:space-between;align-items:center}.App-header h1{font-size:1.5rem;color:#fff;margin-bottom:0}.tagline{font-size:.875rem;color:#ffffff80}.App-main{flex:1;padding:2rem;max-width:1200px;width:100%;margin:0 auto}.App-footer{background:#0000001a;color:#fff;text-align:center;padding:1rem;font-size:.9rem}.App-footer p{margin:.25rem 0}.upload-screen{display:flex;flex-direction:column;gap:3rem}.upload-container{display:flex;flex-direction:column;gap:1.5rem;align-items:center}.upload-area{background:#fff;border:3px dashed #667eea;border-radius:20px;padding:4rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;width:100%;max-width:600px;min-height:400px;display:flex;flex-direction:column;justify-content:center;align-items:center}.upload-area:hover{border-color:#764ba2;background:#f8f9ff;transform:translateY(-5px);box-shadow:0 10px 30px #667eea33}.upload-area.drag-active{border-color:#764ba2;background:#f0f3ff;transform:scale(1.02)}.upload-area.has-preview{padding:1rem}.upload-icon{font-size:5rem;margin-bottom:1rem}.upload-text{font-size:1.3rem;color:#333;margin-bottom:.5rem}.upload-hint{color:#999;font-size:.9rem}.preview-container{position:relative;width:100%;max-width:500px}.preview-image{width:100%;height:auto;border-radius:10px;display:block}.preview-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(102,126,234,.9),transparent);color:#fff;padding:1rem;border-bottom-left-radius:10px;border-bottom-right-radius:10px}.camera-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 3rem;font-size:1.2rem;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 5px 15px #667eea66}.camera-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea99}.info-section{background:#fff;padding:3rem;border-radius:20px;box-shadow:0 5px 20px #0000001a}.info-section h2{text-align:center;color:#667eea;margin-bottom:2rem;font-size:2rem}.info-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.info-step{text-align:center}.step-number{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1rem}.info-step p{color:#666;font-size:1rem}.style-selection{background:#fff;padding:3rem;border-radius:20px;box-shadow:0 5px 20px #0000001a;position:relative}.back-button{position:absolute;top:2rem;left:2rem;background:#f0f0f0;border:none;padding:.5rem 1rem;border-radius:10px;cursor:pointer;font-size:1rem;transition:all .3s ease}.back-button:hover{background:#e0e0e0;transform:translate(-5px)}.style-selection h2{text-align:center;color:#667eea;font-size:2rem;margin-bottom:.5rem}.subtitle{text-align:center;color:#999;margin-bottom:2rem}.category-tabs{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem}.category-tab{background:#f0f0f0;border:none;padding:1rem 2rem;border-radius:50px;cursor:pointer;font-size:1rem;transition:all .3s ease}.category-tab:hover{background:#e0e0e0;transform:translateY(-2px)}.category-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 5px 15px #667eea66}.styles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.style-card{background:#fff;border:2px solid #e0e0e0;border-radius:15px;padding:2rem 1rem;text-align:center;cursor:pointer;transition:all .3s ease}.style-card:hover{border-color:#667eea;transform:translateY(-5px);box-shadow:0 10px 25px #667eea33}.style-card h3{color:#333;margin-bottom:.5rem;font-size:1.2rem}.style-name-en{color:#999;font-size:.9rem;margin-bottom:.5rem}.style-description{color:#666;font-size:.85rem;line-height:1.4}.processing-screen{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#121212}.processing-container{background:#121212;padding:20px;border-radius:16px;text-align:center;max-width:400px;width:100%}.processing-container h2{color:#fff;font-size:1.35rem;margin-bottom:.5rem}.processing-subtitle{color:#999;margin-bottom:2rem}.photo-preview{margin-bottom:2rem}.photo-preview img{max-width:400px;width:100%;border-radius:15px;box-shadow:0 5px 15px #0000001a}.progress-container{margin-bottom:2rem}.progress-bar{background:#f0f0f0;height:10px;border-radius:10px;overflow:hidden;margin-bottom:1rem}.progress-fill{background:linear-gradient(90deg,#667eea,#764ba2);height:100%;transition:width .5s ease}.progress-message{color:#666;font-size:1rem}.processing-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.processing-step{opacity:.3;transition:all .3s ease}.processing-step.active{opacity:1}.processing-step.completed .step-icon{background:#4caf50}.processing-step .step-icon{width:50px;height:50px;background:#667eea;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto .5rem;font-weight:700}.processing-step p{font-size:.85rem;color:#666}.loading-animation{margin-top:2rem}.spinner{width:50px;height:50px;border:5px solid #f0f0f0;border-top:5px solid #667eea;border-radius:50%;margin:0 auto;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.result-screen{display:flex;justify-content:center;background:#121212;min-height:100vh}.result-container{background:#121212;padding:16px;max-width:400px;width:100%}.result-container h2{text-align:center;color:#fff;font-size:1.35rem;margin-bottom:1rem}.result-images{margin-bottom:2rem}.result-image-container{text-align:center}.result-image{max-width:100%;border-radius:15px;box-shadow:0 10px 30px #0003}.artwork-info-card{background:#f8f9ff;padding:2rem;border-radius:15px;margin-bottom:2rem}.artwork-info-card h3{color:#667eea;margin-bottom:1.5rem;font-size:1.5rem}.artwork-details{display:flex;flex-direction:column;gap:1rem}.artwork-header h4{color:#333;font-size:1.5rem;margin-bottom:.25rem}.artwork-title-en{color:#999;font-style:italic}.artwork-meta p{color:#666;font-size:1rem}.artwork-explanation{background:#fff;padding:1.5rem;border-radius:10px;border-left:4px solid #667eea}.explanation-title{font-weight:700;color:#667eea;margin-bottom:.5rem}.explanation-text{color:#666;line-height:1.6}.result-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:1rem}.download-button,.reset-button{padding:1rem 2.5rem;font-size:1.1rem;border:none;border-radius:50px;cursor:pointer;transition:all .3s ease}.download-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 5px 15px #667eea66}.download-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea99}.reset-button{background:#f0f0f0;color:#666}.reset-button:hover{background:#e0e0e0;transform:translateY(-2px)}.share-info{text-align:center;color:#999;margin-top:1rem}@media(max-width:768px){.App-header h1{font-size:2rem}.tagline{font-size:1rem}.info-steps{grid-template-columns:1fr}.styles-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.processing-steps{grid-template-columns:repeat(2,1fr)}.result-actions,.category-tabs{flex-direction:column}}.education-content{margin-top:2rem;padding:1.5rem;background:#fffffff2;border-radius:12px;box-shadow:0 4px 6px #0000001a;text-align:left;animation:fadeIn .5s ease-in}.artwork-info{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.artwork-info h3{font-size:1.3rem;color:#667eea;margin-bottom:.8rem}.artwork-title{font-size:1.2rem;color:#333;margin-bottom:.3rem;font-weight:600}.artwork-artist{font-size:1rem;color:#666}.style-info,.matching-reason,.fun-fact{margin-top:1.5rem}.style-info h4,.matching-reason h4,.fun-fact h4{font-size:1.1rem;color:#764ba2;margin-bottom:.5rem;font-weight:600}.style-description-text,.reason-text,.fact-text{font-size:.95rem;line-height:1.6;color:#555}.fun-fact{background:linear-gradient(135deg,#ffeaa7,#fdcb6e);padding:1rem;border-radius:8px;margin-top:1.5rem}.fun-fact h4{color:#d63031}.fun-fact .fact-text{color:#2d3436}.view-mode-selector{display:flex;gap:.5rem;justify-content:center;margin-bottom:2rem}.mode-btn{padding:.8rem 1.5rem;border:2px solid #667eea;background:#fff;color:#667eea;border-radius:25px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.mode-btn:hover{background:#667eea1a;transform:translateY(-2px)}.mode-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.result-image-container{margin:2rem 0;background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a}.compare-slider{position:relative;width:100%}.compare-slider>div{border-radius:8px;overflow:hidden;max-height:600px}.slider-hint{text-align:center;margin-top:1rem;color:#667eea;font-size:.9rem;font-weight:600}.single-image{width:100%;display:flex;justify-content:center;align-items:center}.single-image img{max-width:100%;max-height:600px;border-radius:8px;object-fit:contain}.artwork-details{display:flex;flex-direction:column;gap:1.5rem;margin:2rem 0}.artwork-info-card{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a}.artwork-info-card h3{font-size:1.3rem;color:#667eea;margin-bottom:1rem}.artwork-info-content{display:flex;flex-direction:column;gap:1rem}.artwork-title-section .artwork-title{font-size:1.4rem;color:#333;font-weight:600;margin-bottom:.3rem}.artwork-title-section .artwork-title-en{font-size:1rem;color:#999;font-style:italic}.artwork-meta{display:flex;flex-direction:column;gap:.5rem}.artwork-meta p{font-size:1rem;color:#666}.artwork-meta .label{font-weight:600;color:#764ba2;margin-right:.5rem}.style-description{background:linear-gradient(135deg,#667eea1a,#764ba21a);padding:1.5rem;border-radius:12px}.style-description h4{font-size:1.1rem;color:#764ba2;margin-bottom:.8rem}.style-description .style-name{font-size:1.2rem;font-weight:600;color:#667eea;margin-bottom:.5rem}.style-description .style-desc{font-size:.95rem;color:#666;line-height:1.6}.share-hint{text-align:center;margin-top:2rem;padding:1.5rem;background:linear-gradient(135deg,#ffeaa74d,#fdcb6e4d);border-radius:12px}.share-hint p:first-child{font-size:1.2rem;font-weight:600;color:#667eea;margin-bottom:.5rem}.hint-text{font-size:.95rem;color:#666}@media(max-width:768px){.view-mode-selector{flex-direction:column;gap:.8rem}.mode-btn{width:100%;padding:1rem}.education-content{padding:1rem}.artwork-info h3,.style-info h4,.matching-reason h4,.fun-fact h4{font-size:1rem}.style-description-text,.reason-text,.fact-text{font-size:.9rem}.compare-slider>div,.single-image img{max-height:400px}}.category-tabs{display:flex;gap:1rem;margin:2rem 0;justify-content:center}.category-tab{padding:1rem 2rem;background:#fff;border:2px solid #ddd;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.category-tab:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.category-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.style-icon{font-size:3rem;margin-bottom:1rem}.comparison-container{position:relative;max-width:800px;margin:2rem auto;border-radius:16px;overflow:hidden;box-shadow:0 8px 32px #0003}.comparison-labels{display:flex;justify-content:space-between;padding:1rem 2rem;background:#fffffff2;margin-top:-4px}.label-left,.label-right{font-weight:600;color:#667eea;font-size:1.1rem}.tip{text-align:center;color:#fff;margin:1.5rem 0;font-size:1.1rem;opacity:.9}.result-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.btn-download,.btn-reset{padding:1rem 3rem;font-size:1.2rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .3s ease}.btn-download{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-download:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-reset{background:#fff;color:#667eea;border:2px solid #667eea}.btn-reset:hover{background:#f8f9fa;transform:translateY(-2px)}@media(max-width:768px){.category-tabs{flex-direction:column;gap:.5rem}.category-tab{padding:.8rem 1.5rem;font-size:1rem}.result-actions{flex-direction:column}.btn-download,.btn-reset{width:100%}}.card-header,.card-header h2,.card-header .technique-subtitle,.card-header .artist-name{text-align:left}.info-toggle{text-align:center;margin:1rem 0}.toggle-button{background:#f5f5f5;color:#333;border:1px solid #ddd;padding:.5rem 1.2rem;border-radius:20px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.toggle-button:hover{background:#667eea;color:#fff;border-color:#667eea}[dir=rtl]{text-align:right}[dir=rtl] .back-btn svg,[dir=rtl] .header-back svg,[dir=rtl] .back-arrow svg,[dir=rtl] .select-header-back svg{transform:scaleX(-1)}[dir=rtl] .screen-header,[dir=rtl] .header,[dir=rtl] .top-bar{flex-direction:row-reverse}[dir=rtl] .header-right{left:16px;right:auto}[dir=rtl] .header-left{right:16px;left:auto}[dir=rtl] .menu-item,[dir=rtl] .menu-item-row{flex-direction:row-reverse}[dir=rtl] .menu-item svg:first-child{margin-left:12px;margin-right:0}[dir=rtl] .chevron-right,[dir=rtl] .menu-chevron{transform:scaleX(-1)}[dir=rtl] .category-card,[dir=rtl] .style-card{flex-direction:row-reverse}[dir=rtl] .subscription-info,[dir=rtl] .card-description{text-align:right}[dir=rtl] .result-actions,[dir=rtl] .action-buttons{flex-direction:row-reverse}[dir=rtl] .single-loading-edu,[dir=rtl] .edu-content{text-align:right}[dir=rtl] .watermark-bottom-right{right:auto;left:12px}[dir=rtl] .gallery-checkbox{right:auto;left:8px}[dir=rtl] .close-btn,[dir=rtl] .popup-close{left:auto;right:16px}[dir=rtl] input,[dir=rtl] textarea{text-align:right}[dir=rtl] .progress-bar{direction:ltr}[dir=rtl] .select-checkbox{left:auto;right:6px}[dir=rtl] .image-modal-close{right:10px;left:auto}[dir=rtl] .category-card{flex-direction:row-reverse}[dir=rtl] .card-image{margin-left:0;margin-right:0}[dir=rtl] .lang-dash{margin-right:0;margin-left:10px}[dir=rtl] .menu-value{margin-right:0;margin-left:4px}[dir=rtl] .style-item{flex-direction:row-reverse}[dir=rtl] .progress-text,[dir=rtl] .status-text{text-align:right}[dir=rtl] .chat-input-row{flex-direction:row-reverse}[dir=rtl] .chat-message.user{align-items:flex-start}[dir=rtl] .chat-message.assistant{align-items:flex-end}[dir=rtl] body,[dir=rtl] *{font-family:Noto Sans Arabic,Arabic UI Text,Geeza Pro,Segoe UI,sans-serif}
