:root{font-family:Pretendard,Noto Sans KR,sans-serif;line-height:1.4;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 0% 0%,rgba(255,236,173,.9),transparent 38%),radial-gradient(circle at 100% 100%,rgba(190,235,210,.8),transparent 36%),linear-gradient(160deg,#f4f8f1,#ecf3ef 45%,#ecf7f0)}.screen{width:min(920px,calc(100% - 2.4rem));margin:2.6rem auto;display:grid;grid-template-columns:1fr;gap:1.25rem}.intro{color:#1b2d21}.badge{display:inline-flex;align-items:center;padding:.3rem .72rem;border-radius:999px;font-weight:700;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;background:#ffeeb4;color:#4c3a00;margin:0}.intro h1{margin:.8rem 0 .5rem;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.15}.intro p{margin:0;color:#385947;max-width:62ch}.profile-card{background:#ffffffb8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:24px;padding:clamp(1rem,3vw,1.8rem);box-shadow:0 22px 50px -36px #0b1b12cc;border:1px solid rgba(255,255,255,.8);display:grid;gap:1.05rem}.photo-field{position:relative;min-height:240px;border-radius:16px;overflow:hidden;border:1.5px dashed #95af9f;background:#f4fbf6;cursor:pointer;transition:border-color .14s ease}.photo-field:hover{border-color:#3e7e59}.photo-field input{position:absolute;inset:0;opacity:0;cursor:pointer}.photo-placeholder{width:100%;height:100%;display:grid;place-content:center;text-align:center;gap:.35rem;color:#2a4a39}.photo-title{font-size:1.1rem;font-weight:700}.photo-description{font-size:.92rem;color:#5a7a69}.photo-preview{display:block;width:100%;height:100%;min-height:240px;object-fit:cover}.metrics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.input-field{display:grid;gap:.4rem;color:#1f3b2f;font-weight:600}.input-field span{font-size:.94rem}.input-field input{height:44px;border-radius:12px;border:1px solid #b8cabd;padding:0 .72rem;font-size:1rem;color:#12271e;background:#fff}.input-field input:focus{outline:2px solid #4f9a6f;outline-offset:1px;border-color:#4f9a6f}button[type=submit]{height:48px;border:0;border-radius:12px;font-weight:700;font-size:1rem;color:#0f251b;background:linear-gradient(120deg,#ffe78c,#ffcf5f 48%,#f4bb37);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;box-shadow:0 12px 20px -16px #9d7406}button[type=submit]:hover{transform:translateY(-1px);box-shadow:0 16px 24px -14px #9d7406}button[type=submit]:disabled{cursor:not-allowed;opacity:.72;transform:none;box-shadow:none}.error-message{margin:0;border-radius:12px;padding:.8rem 1rem;background:#ffe3df;color:#7e1505;font-weight:600}.report-card{margin-top:.3rem;border-radius:18px;padding:clamp(1rem,3vw,1.4rem);background:#fff;border:1px solid #d8e4dd;box-shadow:0 14px 28px -24px #0b1b12e6}.report-card h2{margin:0 0 .7rem;color:#173528;font-size:1.16rem}.report-card pre{margin:0;white-space:pre-wrap;word-break:keep-all;line-height:1.58;font-size:.96rem;color:#273e33;font-family:inherit}@media(max-width:640px){.screen{margin:1.3rem auto 2.1rem}.metrics-grid{grid-template-columns:1fr}.photo-field,.photo-preview{min-height:210px}}
