@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Gaegu:wght@700&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap";body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:320px;margin:0;font-family:Noto Sans KR,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root{--ink:#282520;--muted:#777068;--cream:#f8f4ec;--paper:#fffdfa;--orange:#ed7a4b;--orange-dark:#d96236;--orange-light:#fff0e7;--line:#e8e0d5}*{box-sizing:border-box}html{scroll-behavior:smooth}button,input,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}.page-shell{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 15% 12%, #ed7a4b14, transparent 20rem), radial-gradient(circle at 89% 31%, #e5ae5217, transparent 18rem), var(--cream);position:relative;overflow:hidden}.navbar{border-bottom:1px solid #38302717;justify-content:space-between;align-items:center;width:min(1120px,100% - 48px);height:88px;margin:0 auto;display:flex}.brand{color:var(--ink);align-items:center;gap:12px;font-family:Gaegu,sans-serif;font-size:25px;font-weight:700;text-decoration:none;display:flex}.cat-mark{background:var(--orange);color:#fff;border-radius:45% 45% 48% 48%;place-items:center;width:38px;height:34px;display:grid;position:relative}.cat-mark__ear{z-index:0;background:var(--orange);border-radius:3px;width:14px;height:14px;position:absolute;top:-4px;transform:rotate(45deg)}.cat-mark__ear--left{left:3px}.cat-mark__ear--right{right:3px}.cat-mark__face{z-index:1;letter-spacing:-1px;font-size:12px}.step-label{color:#968f86;letter-spacing:.04em;font-size:13px;font-weight:600}.hero{text-align:center;width:min(720px,100% - 40px);margin:66px auto 42px}.eyebrow{color:var(--orange-dark);letter-spacing:.22em;margin-bottom:19px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:700;display:inline-block}.hero h1{letter-spacing:-.055em;margin:0;font-size:clamp(38px,5vw,58px);font-weight:800;line-height:1.25}.hero h1 em{color:var(--orange);font-style:normal;position:relative}.hero h1 em:after{content:"";border-top:3px solid #ed7a4b73;border-radius:50%;height:5px;position:absolute;bottom:-8px;left:2%;right:1%;transform:rotate(-1deg)}.hero p{color:var(--muted);margin:24px 0 26px;font-size:15px;line-height:1.7}.progress{justify-content:center;gap:7px;display:flex}.progress span{background:#d9d2c8;border-radius:99px;width:7px;height:7px}.progress .progress__active{background:var(--orange);width:25px}.profile-card{background:var(--paper);border:1px solid #5446371a;border-radius:24px;width:min(900px,100% - 40px);margin:0 auto;overflow:hidden;box-shadow:0 22px 70px #53443217}.form-section{padding:46px 58px}.section-heading{align-items:flex-start;gap:16px;margin-bottom:30px;display:flex}.section-number{background:var(--orange-light);min-width:36px;height:36px;color:var(--orange-dark);border-radius:50%;place-items:center;font-family:DM Sans,sans-serif;font-size:11px;font-weight:700;display:grid}.section-heading h2{letter-spacing:-.025em;margin:0 0 7px;font-size:20px}.section-heading p{color:var(--muted);margin:0;font-size:13px}.photo-uploader{width:100%;min-height:186px;color:var(--ink);cursor:pointer;background:#fdfaf5;border:1.5px dashed #d9cdbf;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;transition:all .2s;display:flex;position:relative;overflow:hidden}.photo-uploader:hover{border-color:var(--orange);background:#fff8f2;transform:translateY(-1px)}.upload-icon{background:var(--orange-light);border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.upload-icon svg{fill:none;width:21px;stroke:var(--orange-dark);stroke-width:1.7px}.photo-uploader strong{margin-top:3px;font-size:14px}.photo-uploader small{color:#aaa198;font-size:11px}.photo-uploader.has-photo{border-style:solid;min-height:260px}.photo-uploader img{object-fit:cover;width:100%;height:260px}.change-photo{color:#fff;background:#211e1bbf;border-radius:99px;padding:8px 13px;font-size:11px;position:absolute;bottom:14px;right:14px}.form-divider{background:var(--line);height:1px;margin:0 58px}.detail-section{padding-bottom:50px}.field-row{grid-template-columns:1fr 185px;gap:18px;margin-bottom:25px;display:grid}.field{color:#4b4640;flex-direction:column;gap:10px;font-size:13px;font-weight:600;display:flex}.field>span small,.personality-field legend small{color:#aaa198;margin-left:6px;font-size:10px;font-weight:500}.field input,.field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #ded6cc;border-radius:11px;outline:none;transition:all .2s}.field input{height:48px;padding:0 15px}.field textarea{resize:vertical;padding:14px 15px;line-height:1.6}.field input::placeholder,.field textarea::placeholder{color:#b5ada4;font-weight:400}.field input:focus,.field textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #ed7a4b1a}.age-input{position:relative}.age-input input{padding-right:42px}.age-input>span{color:#8c847a;font-weight:500;position:absolute;top:50%;right:15px;transform:translateY(-50%)}.age-input input::-webkit-inner-spin-button{appearance:none}.personality-field{border:0;margin:0 0 27px;padding:0}.personality-field legend{color:#4b4640;margin-bottom:12px;font-size:13px;font-weight:600}.personality-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.personality-grid button{color:#68615a;cursor:pointer;background:#fff;border:1px solid #ded6cc;border-radius:11px;height:46px;font-size:12px;font-weight:500;transition:all .18s}.personality-grid button span{color:#c0b7ad;margin-right:7px}.personality-grid button:hover{border-color:#e8a284}.personality-grid button.selected{border-color:var(--orange);background:var(--orange-light);color:var(--orange-dark);box-shadow:inset 0 0 0 1px var(--orange);font-weight:700}.personality-grid button.selected span{color:var(--orange)}.card-footer{border-top:1px solid var(--line);text-align:center;background:#fbf8f3;padding:28px 58px 35px}.card-footer p{color:#9a9289;margin:0 0 18px;font-size:11px}.card-footer p span{margin-right:5px}.submit-button{background:var(--orange);color:#fff;cursor:pointer;border:0;border-radius:13px;width:min(100%,370px);height:56px;font-size:14px;font-weight:700;transition:all .2s;box-shadow:0 10px 22px #dc613233}.submit-button span{margin-left:10px;font-size:18px}.submit-button:hover{background:var(--orange-dark);transform:translateY(-2px);box-shadow:0 13px 25px #dc613242}.success-message{color:#5b7961;margin:16px auto 0;font-size:12px}footer{color:#aaa299;letter-spacing:.04em;text-align:center;padding:38px 20px 44px;font-family:DM Sans,sans-serif;font-size:10px}footer span{color:var(--orange)}.decor{color:#ed7a4b2e;font-size:35px;position:absolute}.decor--left{top:230px;left:8%;transform:rotate(-15deg)}.decor--right{font-size:22px;top:360px;right:8%;transform:rotate(18deg)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=700px){.navbar{width:calc(100% - 32px);height:70px}.step-label{display:none}.hero{margin-top:48px}.hero h1{font-size:38px}.hero p{word-break:keep-all;width:90%;margin-left:auto;margin-right:auto}.profile-card{border-radius:19px;width:calc(100% - 24px)}.form-section{padding:34px 24px}.form-divider{margin:0 24px}.field-row{grid-template-columns:1fr}.personality-grid{grid-template-columns:repeat(2,1fr)}.card-footer{padding:25px 24px 30px}.decor{display:none}}@media (width<=390px){.hero h1{font-size:34px}.section-heading{gap:11px}.section-heading h2{font-size:18px}}
