*{box-sizing:border-box}body{margin:0;display:flex;justify-content:center;align-items:center;min-width:320px;min-height:100vh;background-color:#f2f4f6;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Pretendard,Roboto,Helvetica Neue,Arial,sans-serif}#root{width:100%;max-width:480px;height:100vh;margin:0 auto;background-color:#fff;box-shadow:0 4px 20px #0000000d;display:flex;flex-direction:column;overflow-y:auto}:root{--primary-color: #00d26a;--primary-hover: #00b85c;--bg-color: #ffffff;--text-dark: #191f28;--text-muted: #8b95a1;--border-color: #e5e8eb;--input-bg: #f2f4f6;--card-bg: #ffffff}.app-container{display:flex;flex-direction:column;width:100%;min-height:100vh;padding:40px 24px;box-sizing:border-box}.form-card{background-color:var(--card-bg);width:100%;animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-card h1{margin:0 0 8px;font-size:28px;font-weight:800;text-align:left;color:var(--text-dark);letter-spacing:-.5px}.subtitle{text-align:left;color:var(--text-muted);font-size:15px;margin-bottom:32px;font-weight:500}.profile-form{display:flex;flex-direction:column;gap:24px}.input-group{display:flex;flex-direction:column;gap:10px}.input-group label{font-size:14px;font-weight:600;color:#4e5968}.gender-toggle{display:flex;gap:0;background-color:var(--input-bg);border-radius:12px;padding:4px}.gender-toggle input[type=radio]{display:none}.gender-btn{flex:1;text-align:center;padding:14px;border-radius:10px;color:var(--text-muted);cursor:pointer;transition:all .2s ease;font-weight:600;font-size:15px}.gender-toggle input[type=radio]:checked+.gender-btn{background-color:#fff;color:var(--text-dark);box-shadow:0 2px 8px #00000014}.input-group input[type=number],.input-group input[type=text]{padding:16px;font-size:16px;border:none;border-radius:12px;background-color:var(--input-bg);transition:all .2s ease;font-family:inherit;color:var(--text-dark);font-weight:500}.input-group input:focus{outline:none;background-color:#fff;box-shadow:0 0 0 2px var(--primary-color) inset}.input-group input::placeholder{color:#b0b8c1;font-weight:400}.submit-btn{margin-top:10px;padding:18px;font-size:16px;font-weight:700;color:#fff;background-color:var(--primary-color);border:none;border-radius:14px;cursor:pointer;transition:background-color .2s ease}.submit-btn:hover:not(:disabled){background-color:var(--primary-hover)}.submit-btn:disabled{background-color:#d1d6db;cursor:not-allowed;color:#fff}.error-message{color:#f04452;font-size:14px;font-weight:500}.recommendation-result{margin-top:40px;padding:24px;background-color:var(--input-bg);border-radius:16px;text-align:left;white-space:pre-wrap;line-height:1.6;font-size:15px;color:#333d4b}.recommendation-result h2{font-size:20px;font-weight:700;color:var(--text-dark);margin-top:0;margin-bottom:20px}.feedback-section{margin-top:32px;border-top:1px solid var(--border-color);padding-top:24px}.feedback-section label{display:block;margin-bottom:12px;font-size:15px;font-weight:600;color:#4e5968}.feedback-section textarea{width:100%;padding:16px;border-radius:12px;border:none;background-color:var(--card-bg);box-shadow:0 0 0 1px var(--border-color) inset;min-height:100px;margin-bottom:16px;font-family:inherit;font-size:15px;resize:vertical;color:var(--text-dark);box-sizing:border-box}.feedback-section textarea:focus{outline:none;background-color:#fff;box-shadow:0 0 0 2px var(--primary-color) inset}
