:root{color:#272320;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f7f3ee;font-family:Trebuchet MS,Noto Sans KR,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}#root{min-height:100svh}.app-shell{background:#f7f3ee;max-width:1120px;min-height:100svh;margin:0 auto;padding:0 7.5%}.topbar{border-bottom:1px solid #ded8d0;justify-content:space-between;align-items:center;padding:28px 0;display:flex}.brand{color:#272320;letter-spacing:-1px;align-items:center;gap:9px;font:700 20px Georgia,serif;text-decoration:none;display:flex}.brand-mark{color:#f7f3ee;background:#e46e5f;border-radius:50%;place-items:center;width:27px;height:27px;font:700 18px Georgia,serif;display:grid}.step-indicator{color:#a49b91;letter-spacing:1px;font:12px Trebuchet MS,sans-serif}.step-indicator i{background:#c8beb4;width:42px;height:1px;margin:0 10px 4px;display:inline-block}.intro{max-width:650px;padding:78px 0 54px}.eyebrow{color:#d06053;letter-spacing:2px;margin:0 0 21px;font-size:11px;font-weight:700}h1{color:#272320;letter-spacing:-2.5px;margin:0;font:400 clamp(39px,5.2vw,68px)/1.12 Georgia,serif}h1 em{color:#d06053;font-style:italic}.intro-copy{color:#817870;margin-top:24px;font-size:15px;line-height:1.8}.profile-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px 7%;padding-bottom:34px;display:grid}.section-heading{align-items:flex-start;gap:15px;margin-bottom:22px;display:flex}.number{color:#d06053;letter-spacing:1px;padding-top:3px;font:12px Georgia,serif}h2{color:#332d29;margin:0 0 5px;font-size:18px;font-weight:700}.section-heading p{color:#9c9188;margin:0;font-size:12px}.photo-dropzone{color:#857970;cursor:pointer;border:1px dashed #c9bdb2;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:265px;transition:background .2s,border-color .2s;display:flex;position:relative}.photo-dropzone:hover{background:#faf5f0;border-color:#d06053}.photo-dropzone.is-dragging{background:#fbece8;border-color:#d06053;box-shadow:inset 0 0 0 2px #d0605333}.photo-dropzone input{opacity:0;width:1px;height:1px;position:absolute}.photo-icon{color:#d06053;border:1px solid #d7c9be;border-radius:50%;place-items:center;width:43px;height:43px;font-size:25px;font-weight:300;display:grid}.photo-dropzone>span:not(.photo-icon){font-size:13px}.photo-dropzone small{color:#b0a39a;font-size:11px}.photo-dropzone.has-photo{border-style:solid;padding:0;overflow:hidden}.photo-dropzone.has-photo img{object-fit:cover;width:100%;height:100%;min-height:265px}.field-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field,.gender-field{color:#6e645d;font-size:12px}.field>span{margin-bottom:9px;display:block}.field small{color:#aaa098;font-size:10px}.field input{color:#332d29;background:#fbf8f4;border:1px solid #d8cec5;border-radius:2px;outline:none;width:100%;padding:14px 13px}.field input:focus{border-color:#d06053;box-shadow:0 0 0 3px #d060531a}.field input::placeholder{color:#b9afa7}.gender-field{border:0;margin:0;padding:25px 0 0}.gender-field legend{padding:0 0 9px}.gender-options{gap:8px;display:flex}.gender-options label{color:#8a7e75;text-align:center;cursor:pointer;background:#fbf8f4;border:1px solid #d8cec5;border-radius:2px;flex:1;padding:13px 7px;font-size:12px}.gender-options label.selected{color:#d06053;background:#fbece8;border-color:#d06053}.gender-options input{opacity:0;position:absolute}.analyze-button{color:#fffaf7;cursor:pointer;letter-spacing:.2px;background:#d06053;border:0;border-radius:2px;grid-column:1/-1;width:100%;padding:18px 24px;font-size:14px;font-weight:700;transition:background .2s,transform .2s}.analyze-button:hover{background:#bc5145;transform:translateY(-2px)}.analyze-button span{float:right;font-size:20px;line-height:15px}.success-message{color:#51816a;text-align:center;grid-column:1/-1;margin:-24px 0 0;font-size:12px}.privacy-note{color:#a49a91;text-align:center;border-top:1px solid #ded8d0;margin:0;padding:22px 0 35px;font-size:11px}.privacy-note span{color:#d06053;margin-right:5px}.site-footer{color:#f7f3ee;background:#302925;margin:0;padding:52px 28px 28px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr;gap:7%;padding-bottom:42px;display:grid}.footer-logo{color:#f7f3ee;letter-spacing:-1px;font:700 25px Georgia,serif;text-decoration:none;display:inline-block}.footer-brand p{color:#bdb1a7;margin:13px 0 0;font-size:12px;line-height:1.8}.footer-links{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.footer-links h2{color:#d98678;letter-spacing:1.5px;text-transform:uppercase;margin:0 0 8px;font-size:11px}.footer-links a{color:#c9beb5;font-size:12px;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#fff}.footer-bottom{color:#958981;border-top:1px solid #514842;justify-content:space-between;gap:20px;padding-top:20px;font-size:10px;line-height:1.6;display:flex}@media (width<=700px){.app-shell{padding:0 20px}.topbar{padding:19px 0}.intro{padding:55px 0 42px}h1{letter-spacing:-1.5px}.profile-form{display:block}.photo-section{margin-bottom:42px}.photo-dropzone,.photo-dropzone.has-photo img{min-height:220px}.details-section{margin-bottom:36px}.analyze-button{margin-bottom:25px}.success-message{margin:-8px 0 22px}.site-footer{margin:0;padding:40px 16px 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:34px 20px;padding-bottom:32px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:7px}}
