body{margin:0;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:var(--tg-bg-color, #ffffff);color:var(--tg-text-color, #000000);overflow-x:hidden}*{box-sizing:border-box}.container{padding:20px;max-width:400px;margin:0 auto}.step-card{background:var(--tg-secondary-bg-color, #f8f9fa);border-radius:12px;padding:20px;margin-bottom:20px;border:1px solid var(--tg-hint-color, #e9ecef)}.step-title{font-size:18px;font-weight:600;margin-bottom:12px;color:var(--tg-text-color, #000000)}.step-description{font-size:14px;color:var(--tg-hint-color, #6c757d);margin-bottom:16px}.button{background:var(--tg-button-color, #007aff);color:var(--tg-button-text-color, #ffffff);border:none;border-radius:8px;padding:12px 20px;font-size:16px;font-weight:500;cursor:pointer;width:100%;margin-bottom:12px}.button:disabled{background:var(--tg-hint-color, #ccc);cursor:not-allowed}.button:hover:not(:disabled){opacity:.9}.input{width:100%;padding:12px;border:1px solid var(--tg-hint-color, #ddd);border-radius:8px;font-size:16px;background:var(--tg-bg-color, #ffffff);color:var(--tg-text-color, #000000);margin-bottom:12px}.file-input{display:none}.file-upload-button{background:var(--tg-secondary-bg-color, #f8f9fa);border:2px dashed var(--tg-hint-color, #ddd);border-radius:8px;padding:20px;text-align:center;cursor:pointer;margin-bottom:12px}.file-upload-button:hover{border-color:var(--tg-button-color, #007aff)}.preview-image{width:100%;max-width:200px;border-radius:8px;margin:10px 0}.status{padding:8px 12px;border-radius:6px;font-size:14px;font-weight:500;text-align:center;margin-bottom:12px}.status.created{background:#e3f2fd;color:#1976d2}.status.user_photo_uploaded{background:#f3e5f5;color:#7b1fa2}.status.processing{background:#fff3e0;color:#f57c00}.status.completed{background:#e8f5e8;color:#2e7d32}.status.failed{background:#ffebee;color:#c62828}.product-selector{margin-bottom:16px}.product-item{padding:12px;border:1px solid var(--tg-hint-color, #ddd);border-radius:8px;margin-bottom:8px;cursor:pointer;background:var(--tg-bg-color, #ffffff)}.product-item.selected{border-color:var(--tg-button-color, #007aff);background:rgba(0,122,255,.1)}.loading{display:flex;justify-content:center;align-items:center;padding:20px;font-size:14px;color:var(--tg-hint-color, #6c757d)}.primerka-page{padding:0}.header{display:flex;align-items:center;margin-bottom:20px}.back-button{background:none;border:none;font-size:16px;color:var(--tg-button-color, #007aff);cursor:pointer;padding:8px;margin-right:12px}.back-button:hover{opacity:.7}.status-section{text-align:center;margin-bottom:24px}.status-badge{display:inline-block;padding:8px 16px;border-radius:20px;color:#fff;font-size:14px;font-weight:500;margin-bottom:16px}.processing-indicator{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--tg-hint-color, #6c757d);font-size:14px}.spinner{width:16px;height:16px;border:2px solid var(--tg-hint-color, #ddd);border-top:2px solid var(--tg-button-color, #007aff);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.result-section{text-align:center;margin-bottom:24px}.result-section h3{margin-bottom:16px;color:var(--tg-text-color, #000)}.result-image{margin-bottom:16px}.share-section{margin-top:16px}.share-section p{margin-bottom:12px;color:var(--tg-hint-color, #6c757d);font-size:14px}.button.secondary{background:var(--tg-secondary-bg-color, #f8f9fa);color:var(--tg-text-color, #000);border:1px solid var(--tg-hint-color, #ddd)}.error-section{text-align:center;margin-bottom:24px}.error-section h3{color:#c62828;margin-bottom:12px}.error-section p{color:var(--tg-hint-color, #6c757d);margin-bottom:16px}.images-section{margin-bottom:24px}.images-section h3{margin-bottom:16px;color:var(--tg-text-color, #000);font-size:16px}.images-grid{display:flex;flex-direction:column;gap:16px}.image-item{text-align:center}.image-item h4{margin-bottom:8px;color:var(--tg-hint-color, #6c757d);font-size:14px;font-weight:500}.product-images{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.info-section{border-top:1px solid var(--tg-hint-color, #e9ecef);padding-top:16px;font-size:12px;color:var(--tg-hint-color, #6c757d)}.info-section p{margin:4px 0}.error{text-align:center;padding:20px}.error h2{color:#c62828;margin-bottom:12px}.error p{color:var(--tg-hint-color, #6c757d);margin-bottom:16px}
