*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#ebf2fa;--bg-card:#fff;--bg-input:#f5f7fb;--text-primary:#1a1a2e;--text-secondary:#6b7284;--text-muted:#9ca3af;--accent:#4361ee;--accent-hover:#3651d4;--accent-light:#eef1ff;--border-color:#e2e8f0;--success-bg:#f0fdf4;--success-text:#166534;--shadow:0 4px 24px #0000000f;--shadow-lg:0 8px 40px #00000014;--radius:16px;--radius-sm:12px;--radius-xs:8px}body{background-color:var(--bg-primary);color:var(--text-primary);justify-content:center;align-items:center;min-height:100vh;font-family:Poppins,Inter,-apple-system,sans-serif;display:flex}#root{justify-content:center;align-items:center;width:100%;min-height:100vh;padding:20px;display:flex}.app-container{width:100%;max-width:520px;margin:0 auto}.card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;padding:32px}.header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.logo{align-items:center;gap:14px;display:flex}.title{color:var(--text-primary);font-size:24px;font-weight:800;line-height:1.2}.subtitle{color:var(--text-muted);font-size:13px;font-weight:500}.world-badge{background:var(--accent-light);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.translate-form{flex-direction:column;gap:24px;display:flex}.form-section{flex-direction:column;gap:10px;display:flex}.section-label{color:var(--text-secondary);letter-spacing:-.01em;font-size:14px;font-weight:600}.text-input{border:2px solid var(--border-color);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);background:var(--bg-input);resize:vertical;outline:none;min-height:100px;padding:14px 16px;font-family:Poppins,sans-serif;font-size:15px;transition:border-color .2s}.text-input:focus{border-color:var(--accent);background:#fff}.text-input::placeholder{color:var(--text-muted)}.language-options{gap:10px;display:flex}.language-option{border:2px solid var(--border-color);border-radius:var(--radius-xs);cursor:pointer;background:#fff;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 8px;transition:all .2s;display:flex}.language-option input{display:none}.language-option:hover,.language-option.active{border-color:var(--accent);background:var(--accent-light)}.flag{font-size:22px;line-height:1}.lang-label{color:var(--text-primary);font-size:14px;font-weight:600}.error-message{color:#dc2626;border-radius:var(--radius-xs);background:#fef2f2;padding:10px 14px;font-size:13px;font-weight:500}.translate-btn{background:var(--accent);color:#fff;border-radius:var(--radius-xs);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 24px;font-family:Poppins,sans-serif;font-size:16px;font-weight:600;transition:background .2s,transform .1s;display:flex}.translate-btn:hover:not(:disabled){background:var(--accent-hover)}.translate-btn:active:not(:disabled){transform:scale(.98)}.translate-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.result-view{flex-direction:column;gap:20px;display:flex}.result-card{background:var(--bg-input);border-radius:var(--radius-sm);padding:18px 20px}.result-card.translated{background:var(--accent-light);border:1px solid #4361ee26}.result-header{align-items:center;gap:8px;margin-bottom:10px;display:flex}.result-label{color:var(--text-secondary);letter-spacing:-.01em;font-size:13px;font-weight:600}.result-text{color:var(--text-primary);word-wrap:break-word;font-size:15px;line-height:1.6}.result-text.accent{color:var(--accent)}.start-over-btn{width:100%;color:var(--accent);border:2px solid var(--accent);border-radius:var(--radius-xs);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:12px 24px;font-family:Poppins,sans-serif;font-size:15px;font-weight:600;transition:all .2s;display:flex}.start-over-btn:hover{background:var(--accent-light)}.start-over-btn:active{transform:scale(.98)}@media (width<=480px){.card{padding:24px 20px}.title{font-size:20px}.language-options{flex-direction:column}}
