:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;min-height:100vh}*{margin:0;padding:0;box-sizing:border-box}.app{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#667eea,#764ba2);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.header{padding:2rem 1rem;text-align:center;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.2)}.header-content{max-width:1200px;margin:0 auto}.logo{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:.5rem;display:flex;align-items:center;justify-content:center;gap:.75rem}.logo-icon{font-size:3rem}.tagline{color:#ffffffe6;font-size:1.1rem;font-weight:300;margin-bottom:1rem}.logo-link{text-decoration:none;display:inline-block}.logo-link:hover .logo{transform:scale(1.02)}.logo{transition:transform .2s ease}.nav{display:flex;justify-content:center;gap:2rem;margin-top:1.5rem}.nav-link{color:#ffffffe6;text-decoration:none;font-weight:500;font-size:1rem;padding:.5rem 1.5rem;border-radius:8px;transition:all .3s ease;position:relative}.nav-link:hover{color:#fff;background:#ffffff1a}.nav-link.active{color:#fff;background:#fff3}.nav-link.active:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60%;height:2px;background:#fff;border-radius:2px}.main-content{flex:1;padding:2rem 1rem;max-width:1200px;width:100%;margin:0 auto;position:relative}.upload-card{background:#fff;border-radius:24px;padding:2.5rem;box-shadow:0 20px 60px #0000004d;max-width:800px;margin:0 auto}.upload-header{text-align:center;margin-bottom:2rem}.upload-header h2{font-size:2rem;color:#333;margin-bottom:.5rem}.upload-header p{color:#666;font-size:1rem}.error-message{background:#fee;border:1px solid #fcc;color:#c33;padding:1rem;border-radius:12px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;font-size:.95rem}.upload-area{border:3px dashed #667eea;border-radius:16px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;background:#f8f9ff}.upload-area:hover{border-color:#764ba2;background:#f0f2ff;transform:translateY(-2px)}.upload-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.upload-icon{color:#667eea;margin-bottom:.5rem}.upload-text{font-size:1.25rem;font-weight:600;color:#333;margin:0}.upload-subtext{font-size:1rem;color:#666;margin:0}.upload-formats{font-size:.875rem;color:#999;margin-top:.5rem}.preview-section{display:flex;flex-direction:column;gap:1.5rem}.preview-container{position:relative;width:100%;max-width:500px;margin:0 auto;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #0003}.preview-image{width:100%;height:auto;display:block}.remove-btn{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border-radius:50%;background:#ffffffe6;border:none;font-size:1.5rem;color:#333;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 8px #0003}.remove-btn:hover{background:#fff;transform:scale(1.1)}.analyze-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:all .3s ease;max-width:300px;margin:0 auto;box-shadow:0 4px 15px #667eea66}.analyze-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.analyze-btn:disabled{opacity:.7;cursor:not-allowed}.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-card{background:#fff;border-radius:24px;padding:2.5rem;box-shadow:0 20px 60px #0000004d;max-width:800px;margin:0 auto}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.results-header h2{font-size:2rem;color:#333}.status-badge{padding:.5rem 1.25rem;border-radius:20px;font-weight:600;font-size:.95rem}.status-badge.healthy{background:#d4edda;color:#155724}.status-badge:not(.healthy){background:#f8d7da;color:#721c24}.results-content{display:flex;flex-direction:column;gap:1.5rem}.confidence-meter{background:#f8f9fa;padding:1.5rem;border-radius:12px}.confidence-label{display:flex;justify-content:space-between;margin-bottom:.75rem;font-weight:600;color:#333}.confidence-bar{height:12px;background:#e9ecef;border-radius:6px;overflow:hidden}.confidence-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:6px;transition:width .5s ease}.description-box,.recommendations-box{background:#f8f9fa;padding:1.5rem;border-radius:12px}.description-box h3,.recommendations-box h3{font-size:1.25rem;color:#333;margin-bottom:.75rem}.description-box p{color:#666;line-height:1.6}.recommendations-box ul{list-style:none;padding:0}.recommendations-box li{color:#666;padding:.5rem 0 .5rem 1.5rem;position:relative;line-height:1.6}.recommendations-box li:before{content:"✓";position:absolute;left:0;color:#667eea;font-weight:700}.new-analysis-btn{width:100%;margin-top:1.5rem;background:#f8f9fa;color:#667eea;border:2px solid #667eea;padding:1rem 2rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.new-analysis-btn:hover{background:#667eea;color:#fff;transform:translateY(-2px)}.loading-overlay{position:fixed;inset:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.loading-overlay p{color:#fff;font-size:1.25rem;font-weight:500}.loading-spinner{width:60px;height:60px;border:5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.footer{padding:1.5rem;text-align:center;color:#fffc;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.2)}.footer p{margin:0;font-size:.9rem}@media(max-width:768px){.logo{font-size:2rem}.logo-icon{font-size:2.5rem}.tagline{font-size:1rem}.upload-card,.results-card{padding:1.5rem}.upload-header h2,.results-header h2{font-size:1.5rem}.upload-area{padding:2rem 1rem}.results-header{flex-direction:column;align-items:flex-start}.nav{gap:1rem}.nav-link{font-size:.9rem;padding:.4rem 1rem}}.about-section{max-width:800px;margin:0 auto}.about-card{background:#fff;border-radius:24px;padding:2.5rem;box-shadow:0 20px 60px #0000004d}.about-card h2{font-size:2rem;color:#333;margin-bottom:1.5rem;text-align:center}.about-content{color:#666;line-height:1.8}.about-content h3{color:#333;font-size:1.5rem;margin-top:2rem;margin-bottom:1rem}.about-content p{margin-bottom:1rem}.features-list,.how-it-works{list-style:none;padding:0;margin:1.5rem 0}.features-list li,.how-it-works li{padding:.75rem 0 .75rem 2rem;position:relative;color:#666;font-size:1.05rem}.features-list li:before{content:"";position:absolute;left:0;top:1rem;width:8px;height:8px;border-radius:50%;background:#667eea}.how-it-works{counter-reset:step-counter}.how-it-works li{counter-increment:step-counter;padding-left:3rem}.how-it-works li:before{content:counter(step-counter);position:absolute;left:0;top:.5rem;width:2rem;height:2rem;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}@media(max-width:768px){.about-card{padding:1.5rem}.about-card h2{font-size:1.5rem}.about-content h3{font-size:1.25rem}}
