:root{--background-color: linear-gradient(135deg, #f4f7f9 0%, #e3e6f3 100%);--text-primary: #121212;--text-secondary: #555;--accent-color: #ff6f61;--accent-gradient: linear-gradient(90deg, #ff6f61 0%, #6b4216 100%);--card-bg: rgba(255, 255, 255, .85);--card-border: rgba(0, 0, 0, .08);--dropzone-border: rgba(255, 111, 97, .5);--button-shadow: rgba(255, 111, 97, .2);--text-box-bg: rgba(255, 183, 108, .08);--pulse-color: #ffb86c;--bg-shape1: rgba(255, 111, 97, .15);--bg-shape2: rgba(255, 184, 108, .15)}body.dark-theme{--background-color: linear-gradient(135deg, #0f0c29 0%, #302b63 100%);--text-primary: #f0f0f0;--text-secondary: #a0aec0;--accent-color: #8A2BE2;--accent-gradient: linear-gradient(90deg, #8A2BE2 0%, #00BFFF 100%);--card-bg: rgba(45, 55, 72, .7);--card-border: rgba(255, 255, 255, .08);--dropzone-border: rgba(138, 43, 226, .4);--button-shadow: rgba(138, 43, 226, .25);--text-box-bg: rgba(138, 43, 226, .1);--pulse-color: #00BFFF;--bg-shape1: rgba(138, 43, 226, .2);--bg-shape2: rgba(0, 191, 255, .2)}body{margin:0;font-family:Poppins,sans-serif;color:var(--text-secondary);background:var(--background-color);min-height:100vh;transition:background .5s,color .3s;overflow-x:hidden;position:relative}body:before,body:after{content:"";position:fixed;border-radius:50%;filter:blur(100px);z-index:-1;transition:background-color .5s}body:before{width:400px;height:400px;background:var(--bg-shape1);top:-100px;left:-100px}body:after{width:500px;height:500px;background:var(--bg-shape2);bottom:-150px;right:-150px}.app-container{max-width:850px;margin:40px auto;padding:24px;text-align:center;animation:fadeInApp 1s;position:relative;z-index:1}@keyframes fadeInApp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.app-header{display:flex;flex-direction:column;align-items:center;margin-bottom:28px}.app-logo{width:120px;height:auto;margin-bottom:18px;animation:logoPulse 2s infinite}@keyframes logoPulse{0%,to{filter:drop-shadow(0 0 0 var(--pulse-color))}50%{filter:drop-shadow(0 0 12px var(--pulse-color))}}.animated-title{font-size:2.8rem;font-weight:700;color:var(--text-primary);min-height:80px;letter-spacing:1px;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:gradientMove 3s linear infinite,titleGlow 2.5s infinite;filter:drop-shadow(0 0 8px var(--accent-color))}@keyframes titleGlow{0%,to{filter:drop-shadow(0 0 8px var(--accent-color))}50%{filter:drop-shadow(0 0 16px var(--accent-color))}}@keyframes gradientMove{0%{background-position:0%}to{background-position:100%}}.app-header .subtitle{font-size:1.4rem;font-weight:600;margin-top:8px;min-height:50px;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;filter:drop-shadow(0 0 4px var(--accent-color))}.dropzone,.results-container,.example-section{background:var(--card-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:22px;border:1.5px solid var(--card-border);box-shadow:0 8px 32px #00000021;animation:cardFadeIn 1s;position:relative}@keyframes cardFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.dropzone{padding:54px 22px;color:var(--text-secondary);cursor:pointer;transition:background-color .3s,border-color .3s;border:2.5px dashed var(--dropzone-border)}.dropzone .file-info{font-weight:700;color:var(--accent-color);animation:fadeInApp 1s}.dropzone.active{border-color:var(--accent-color);background-color:#ffb76c1f}.dropzone.disabled{cursor:not-allowed;opacity:.5}.image-preview{width:120px;height:120px;border-radius:8px;object-fit:cover;margin-bottom:15px;border:1.5px solid var(--card-border)}.upload-section{margin-top:28px}.upload-btn{background:var(--accent-gradient);color:#fff;border:none;padding:15px 34px;font-size:1.15rem;font-weight:700;border-radius:50px;cursor:pointer;transition:transform .2s,box-shadow .2s,background .3s;box-shadow:0 4px 20px var(--button-shadow);position:relative;overflow:hidden}.upload-btn:after{content:"";position:absolute;inset:0;border-radius:50px;background:var(--accent-gradient);opacity:.2;z-index:0;transition:opacity .3s}.upload-btn:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 30px var(--button-shadow);background:linear-gradient(90deg,#ffb86c,#ff6f61)}.upload-btn:active{transform:scale(.98)}.spinner-container{margin:40px 0;display:flex;flex-direction:column;align-items:center;gap:15px}.spinner{border:6px solid rgba(255,255,255,.2);border-top:6px solid var(--accent-color);border-radius:50%;width:54px;height:54px;animation:spin .8s linear infinite;box-shadow:0 0 16px 0 var(--accent-color)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message,.success-message{margin-top:22px;padding:16px;border-radius:14px;font-weight:600;animation:fadeInApp .8s}.error-message{background:linear-gradient(90deg,#f8d7da,#fce4ec);color:#721c24;border-left:5px solid #ff6f61}.success-message{background:linear-gradient(90deg,#d4edda,#e0f7fa);color:#155724;border-left:5px solid #ffb86c}.results-container{margin-top:44px;text-align:left;padding:34px;animation:cardFadeIn 1.2s}.suggestions-box{background:var(--text-box-bg);padding:22px;border-radius:12px;white-space:pre-wrap;word-wrap:break-word;max-height:420px;overflow-y:auto;color:var(--text-secondary);font-family:Poppins,sans-serif!important;line-height:1.7;animation:fadeInApp 1.2s;box-shadow:0 2px 12px 0 var(--accent-color)}.footer{margin-top:64px;padding-top:22px;border-top:1px solid var(--card-border);text-align:center;color:var(--text-secondary);animation:fadeInApp 1.5s}.footer a{color:var(--accent-color);text-decoration:none;font-weight:700;transition:color .2s}.footer a:hover{color:#ffb86c;text-decoration:underline}.theme-switcher{position:absolute;top:22px;right:22px;background:var(--card-bg);border:1.5px solid var(--card-border);border-radius:50px;padding:10px;cursor:pointer;font-size:1.6rem;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000001f;transition:background .3s,box-shadow .3s}.theme-switcher:hover{background:var(--accent-gradient);color:#fff;box-shadow:0 8px 24px var(--button-shadow)}.result-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--card-border);padding-bottom:16px;margin-bottom:22px;animation:fadeDown 1s}.result-header h2{margin:0;border-bottom:none;padding-bottom:0}.copy-btn{background:var(--accent-gradient);color:#fff;border:none;padding:9px 18px;font-size:1rem;font-weight:700;border-radius:50px;cursor:pointer;transition:background .3s,transform .2s;box-shadow:0 2px 8px var(--button-shadow);position:relative;overflow:hidden}.copy-btn:hover{background:linear-gradient(90deg,#ffb86c,#ff6f61);transform:scale(1.07)}@media (max-width: 600px){.app-container{padding:10px;margin:12px auto}.results-container{padding:14px}.animated-title{font-size:2rem;min-height:50px}.dropzone{padding:32px 8px}.suggestions-box{padding:12px}}.landing-container{max-width:960px;margin:40px auto;padding:24px;text-align:center}.how-it-works-section{margin:80px 0}.how-it-works-section h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:50px}.steps-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;text-align:left}.step-card{background:var(--card-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:22px;border:1.5px solid var(--card-border);padding:30px;position:relative}.step-card .step-number{position:absolute;top:-25px;left:30px;background:var(--accent-gradient);color:#fff;font-weight:700;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 4px 20px var(--button-shadow)}.step-card h3{margin-top:40px;color:var(--text-primary);font-size:1.4rem}.step-card p{color:var(--text-secondary);line-height:1.7}.try-now-btn{background:var(--accent-gradient);color:#fff;border:none;padding:20px 50px;font-size:1.25rem;font-weight:700;border-radius:50px;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 20px var(--button-shadow)}.try-now-btn:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 10px 30px var(--button-shadow)}
