@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap');
:root{font-family:'Noto Sans KR',sans-serif;color:#18302b;background:#f5f6f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.topbar{height:86px;border-bottom:1px solid #dfe4dc;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;background:#fafbf8}.brand{font-size:19px;letter-spacing:1.4px;font-weight:800;display:flex;align-items:center;gap:10px}.brand-icon{background:#214c3c;color:#fff;width:32px;height:34px;border-radius:6px;display:grid;place-items:center;font-size:24px}.brand-sub{font-size:12px;font-weight:500;letter-spacing:0;color:#77827a;margin-left:16px;border-left:1px solid #d6ddd6;padding-left:20px}.top-note{font-size:12px;color:#5b6e60;display:flex;align-items:center;gap:8px}i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#9cba69}main{max-width:1180px;margin:auto;padding:0 34px}.intro{padding:51px 0 35px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#5e795f;display:flex;gap:16px;align-items:center}.eyebrow span{font-size:10px;padding:3px 6px;border:1px solid #bdcbb9;border-radius:4px;letter-spacing:0}h1{font-size:40px;line-height:1.42;letter-spacing:-1.8px;margin:15px 0 15px;font-weight:800}.intro>p{font-size:14px;color:#718078;line-height:1.9;margin:0}.mobile-break{display:none}.workspace{display:grid;grid-template-columns:1fr 1.12fr;gap:24px;align-items:stretch}.panel{border:1px solid #e0e5dd;border-radius:18px;background:#fff;padding:29px 30px 0}.section-title{display:flex;justify-content:space-between;align-items:center;gap:8px}h2{font-size:18px;letter-spacing:-.5px;margin:0}.step{font-size:10px;color:#6a816b;background:#eff3e9;padding:4px 6px;border-radius:4px;margin-right:7px;vertical-align:3px}.text-button{background:none;border:0;color:#78857a;font-size:12px;padding:5px}.text-button:hover{color:#1f503c}.helper{font-size:12px;color:#869087;margin:10px 0 25px}.field{margin-bottom:22px}label{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:13px;margin-bottom:10px}label span{font-size:11px;font-weight:400;color:#8b938c}.number-box{display:flex;align-items:center;border:1px solid #dfe5dc;border-radius:9px;padding:0 15px;background:#fbfcf9;transition:.2s}.number-box:focus-within{outline:2px solid #4f7e56;outline-offset:2px;background:#fff}.number-box input{width:100%;min-width:0;border:0;outline:0;background:none;color:#243d32;font-size:25px;font-weight:700;letter-spacing:-.5px;padding:10px 0;font-variant-numeric:tabular-nums}.number-box>span{font-size:14px;color:#8b958d}input[type=range]{width:100%;accent-color:#59794a;margin:17px 0 0;height:5px;cursor:pointer}.range-labels{display:flex;justify-content:space-between;font-size:10px;color:#8c978d;margin-top:7px}.quick-buttons{display:flex;gap:6px;margin-top:10px}.quick-buttons button{flex:1;white-space:nowrap;font-size:10px;color:#72826e;border:1px solid #e2e8dc;background:#fff;padding:7px 2px;border-radius:5px}.quick-buttons button.active{background:#edf3e5;border-color:#a9bc92;color:#375332}.quick-buttons button:hover{background:#edf3e5}.last{margin-bottom:26px}.error{color:#b13f2c;font-size:11px;margin:5px 0 0;min-height:0}.error:empty{display:none}[aria-invalid=true]{color:#b13f2c!important}.preset{border-top:1px solid #e7ebe3;padding:18px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#85907f}.preset button{font-size:11px;font-weight:700;color:#43613e;background:none;border:0}.preset button span{margin-left:4px}.results{display:flex;flex-direction:column;gap:14px}.result-card{background:#1e493c;border-radius:18px;padding:28px 32px 0;color:#f4f7ef;position:relative;overflow:hidden;flex:1}.result-card:before{content:'';position:absolute;width:260px;height:260px;border:1px solid #ffffff07;border-radius:50%;right:-160px;top:70px;box-shadow:0 0 0 35px #ffffff03,0 0 0 70px #ffffff03;pointer-events:none}.result-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.pill{font-size:9px;letter-spacing:1.1px;color:#c5d4bb;border:1px solid #527060;border-radius:5px;padding:5px 8px}.live{font-size:10px;color:#b2c5b4;display:flex;align-items:center;gap:5px}.result-card h2{font-size:22px;line-height:1.6;margin:19px 0 24px;font-weight:500;letter-spacing:-.7px}.result-label{font-size:12px;color:#c4d1c4;display:flex;align-items:center;gap:10px}.result-label>span{font-size:10px;color:#a5b9a6}.amount{display:flex;align-items:baseline;gap:7px;white-space:nowrap;margin-top:6px}.amount strong{font-size:clamp(26px,3.45vw,45px);font-weight:700;letter-spacing:-1.5px;font-variant-numeric:tabular-nums;color:#ddedaa}.amount>span{font-size:20px;color:#d6e5c5}.monthly>p,.annual>p{font-size:11px;color:#a8c097;margin:5px 0 0}.monthly{padding-bottom:23px;border-bottom:1px solid #ffffff20}.annual{padding:20px 0 24px}.annual-amount{display:flex;align-items:baseline;gap:6px;margin-top:8px;white-space:nowrap}.annual-amount strong{font-size:clamp(24px,2.6vw,34px);font-weight:600;letter-spacing:-.8px;font-variant-numeric:tabular-nums}.annual-amount>span{font-size:16px}.annual>p{color:#a5bca9}.result-bottom{background:#183e32;display:flex;justify-content:space-between;align-items:center;margin:0 -32px;padding:15px 32px;font-size:11px;color:#a7bba9}.result-bottom strong{font-size:14px;font-weight:500;color:#e4e9dd}.formula-card{display:flex;align-items:center;gap:15px;background:#e9eee2;border:1px solid #dce5d2;border-radius:12px;padding:18px 23px}.formula-icon{width:30px;height:37px;display:grid;place-items:center;font-size:25px;color:#789362;border-right:1px solid #cedac1;padding-right:14px}.formula-card h3{font-size:12px;font-weight:700;margin:0 0 4px}.formula-card p{font-size:11px;color:#7b8973;margin:0}.formula-card #formula{font-size:11px;font-weight:600;color:#526949;margin-top:7px;overflow-wrap:anywhere}.notes{margin-top:28px;border:1px solid #e0e4da;border-radius:12px;padding:22px 27px;background:#f9faf6}.note-heading{display:flex;gap:8px;align-items:center}.note-heading>span{color:#7b8d6c}.note-heading h2{font-size:13px;font-weight:700}.note-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:17px}.note-index{font-size:10px;font-weight:700;color:#81916e;letter-spacing:.3px}.note-grid p{font-size:11px;line-height:1.9;color:#7b8578;margin:7px 0 0}.note-foot{font-size:10px;color:#89917e;padding-top:14px;margin-top:16px;border-top:1px solid #e4e8dd;line-height:1.8}footer{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#97a08f;padding:29px 0 30px}.footer-brand{font-weight:800;letter-spacing:1.3px;color:#89977e}button:focus-visible,a:focus-visible{outline:2px solid #63864f;outline-offset:4px}@media(min-width:1400px){.amount strong{font-size:45px}}@media(max-width:800px){main{padding:0 22px}.topbar{padding:0 22px;height:70px}.brand-sub{display:none}.intro{padding:34px 0 27px}h1{font-size:34px}.workspace{gap:16px}.panel{padding:24px 20px 0}.result-card{padding:24px 23px 0}.result-bottom{margin:0 -23px;padding:15px 23px}.amount strong{font-size:32px}.annual-amount strong{font-size:27px}.live{display:none}.preset{gap:6px;flex-wrap:wrap}.quick-buttons{gap:4px}.formula-card{padding:16px}.note-grid{gap:22px}}@media(max-width:650px){.workspace{grid-template-columns:1fr}.intro>p{font-size:12px}.mobile-break{display:block}.top-note{font-size:10px}.brand{font-size:15px}.brand-icon{width:28px;height:30px}.panel{padding:25px 23px 0}.field{margin-bottom:24px}.helper{margin-bottom:25px}.result-card{padding:26px 25px 0}.result-card h2{font-size:22px;margin-bottom:25px}.amount strong{font-size:clamp(25px,8vw,43px)}.annual-amount strong{font-size:clamp(23px,7vw,34px)}.live{display:flex}.result-bottom{margin:0 -25px;padding:16px 25px}.notes{padding:20px}.note-grid{grid-template-columns:1fr;gap:17px}.note-grid p{font-size:12px}.note-foot{font-size:11px}.note-heading h2{font-size:12px}footer{gap:20px;font-size:9px}.quick-buttons button{font-size:11px}.preset{padding:18px 0}h1{font-size:33px}.intro{padding-top:32px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media print{.topbar,.text-button,.quick-buttons,.preset,footer,input[type=range],.range-labels{display:none}body{background:white}main{padding:0}.intro{padding-top:10px}.workspace{grid-template-columns:1fr 1fr}.result-card{print-color-adjust:exact;-webkit-print-color-adjust:exact}.notes{break-inside:avoid}}
