@import "https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Noto+Sans+KR:wght@400;500;600;700&display=swap";:root{--ink:#173329;--cream:#f5f0e7;--paper:#fbfaf6;--green:#315f4c;--sage:#9db49a;--lime:#d9e7a6;--orange:#eb8f51;--line:#dcd8cd}button{cursor:pointer}.site-shell{min-height:100vh;color:var(--ink);background:var(--paper)}.nav{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbfaf6eb;border-bottom:1px solid #1733291f;align-items:center;height:76px;padding:0 clamp(24px,5vw,76px);display:flex;position:sticky;top:0}.brand{color:var(--ink);align-items:center;gap:10px;font-family:DM Serif Display,serif;font-size:26px;text-decoration:none;display:flex}.brand-mark{color:#fff;background:var(--green);border-radius:50% 50% 50% 10%;place-items:center;width:34px;height:34px;font-style:italic;display:grid}.nav-note{letter-spacing:.03em;color:#718077;margin:auto;font-size:13px}.text-button{color:var(--green);background:0 0;border:0;font-weight:700}.hero{background:var(--cream);grid-template-columns:1.05fr .95fr;min-height:570px;display:grid;overflow:hidden}.hero-copy{align-self:center;padding:90px clamp(28px,8vw,130px)}.eyebrow,.step-label,.small-label{color:#708375;letter-spacing:.16em;font-size:11px;font-weight:700}.hero h1{letter-spacing:-.045em;margin:18px 0 24px;font-family:DM Serif Display,Noto Sans KR,serif;font-size:clamp(48px,5.3vw,82px);font-weight:400;line-height:1.12}.hero h1 em{color:var(--green);font-weight:400}.hero-copy>p{color:#66736c;max-width:560px;font-size:17px;line-height:1.8}.hero-points{align-items:center;gap:18px;margin-top:48px;font-size:13px;font-weight:600;display:flex}.hero-points b{color:var(--orange);margin-right:6px}.hero-points i{background:#c8c4ba;width:34px;height:1px}.hero-visual{background:var(--green);place-items:center;display:grid;position:relative;overflow:hidden}.hero-visual:after{content:"";border:1px solid #ffffff1f;border-radius:50%;width:420px;height:420px;position:absolute}.sun{background:var(--orange);border-radius:50%;width:220px;height:220px;position:absolute;top:-75px;right:-45px}.plate{aspect-ratio:1;z-index:2;background:#e9e2d5;border:28px solid #fff;border-radius:50%;grid-template-columns:1fr 1fr;place-items:center;width:min(360px,65%);font-size:64px;display:grid;transform:rotate(-8deg);box-shadow:0 30px 70px #00000047}.hero-visual p{color:#ffffffb8;text-align:right;font-family:DM Serif Display,serif;font-size:20px;font-style:italic;line-height:1.25;position:absolute;bottom:28px;right:38px}.planner,.results{max-width:1500px;margin:auto;padding:90px clamp(22px,7vw,110px)}.planner-collapsed{padding:32px clamp(22px,7vw,110px)}.section-heading,.content-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px;display:flex}.section-heading h2,.content-heading h2{letter-spacing:-.035em;margin:7px 0 0;font-family:DM Serif Display,Noto Sans KR,serif;font-size:36px}.section-heading>p,.content-heading p{color:#819087;font-size:13px}.form-card{border:1px solid var(--line);background:#fff;box-shadow:0 18px 55px #283c320f}.form-section{border-bottom:1px solid #e8e4db;padding:32px 38px}.form-section h3{align-items:center;gap:10px;margin:0 0 24px;font-size:14px;display:flex}.form-section h3 span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;display:grid}.form-section.split{grid-template-columns:1fr 1fr;gap:60px;display:grid}.form-grid{gap:20px;display:grid}.form-grid.four{grid-template-columns:repeat(4,1fr)}.form-grid.three{grid-template-columns:repeat(3,1fr)}.form-grid.two{grid-template-columns:1fr 1fr}.field{flex-direction:column;gap:9px;min-width:0;display:flex}.field>span,.difficulty-row>span{color:#53675e;font-size:12px;font-weight:700}.field small{color:#9a9f9b;font-size:10px}.field input,.field select{width:100%;height:48px;color:var(--ink);background:#fbfaf7;border:1px solid #d9d7cf;border-radius:2px;outline:none;padding:0 14px}.field input:focus,.field select:focus{border-color:var(--green);box-shadow:0 0 0 3px #315f4c14}.input-unit{background:#fbfaf7;border:1px solid #d9d7cf;align-items:center;height:48px;display:flex}.input-unit input{background:0 0;border:0;height:100%}.input-unit b{color:#839087;padding-right:14px;font-size:12px}.segmented{border:1px solid #d9d7cf;grid-template-columns:1fr 1fr;height:48px;display:grid}.segmented button{color:#8a958f;background:#fbfaf7;border:0}.segmented button.active{background:var(--green);color:#fff;font-weight:700}.difficulty-row{align-items:center;gap:8px;margin-top:24px;display:flex}.difficulty-row>span{margin-right:10px}.difficulty-row button{color:#728078;background:#fff;border:1px solid #d8d7d0;border-radius:30px;padding:8px 16px;font-size:12px}.difficulty-row button.active{border-color:var(--green);color:var(--green);background:#edf2e9;font-weight:700}.primary-button{background:var(--green);color:#fff;border:0;justify-content:center;align-items:center;gap:12px;width:100%;height:66px;font-size:15px;font-weight:700;display:flex}.primary-button:hover{background:#244c3c}.primary-button:disabled{opacity:.65}.primary-button span:last-child{font-size:21px}.error-message{color:#a74435;text-align:center;margin:14px;font-size:13px}.spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;height:18px;animation:.8s linear infinite spin;width:18px!important}.spinner.dark{border-color:#cad2ca;border-top-color:var(--green)}@keyframes spin{to{transform:rotate(360deg)}}.loading-panel{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:430px;display:flex}.loading-panel .spinner{height:36px;margin-bottom:12px;width:36px!important}.loading-panel h2{margin:0;font-family:DM Serif Display,Noto Sans KR,serif;font-size:30px}.loading-panel p{color:#7e8b84}.results{padding-top:70px}.outline-button{border:1px solid var(--green);color:var(--green);background:0 0;padding:12px 18px;font-size:12px;font-weight:700}.summary-grid{border:1px solid var(--line);background:#fff;grid-template-columns:.85fr 1.65fr .9fr;display:grid}.summary-grid article{padding:34px}.profile-summary{background:var(--green);color:#fff}.profile-summary .small-label{color:#b8cabd}.profile-summary h3,.period-summary h3{margin:10px 0 28px;font-size:18px}.calorie strong{font-family:DM Serif Display,serif;font-size:56px;font-weight:400}.calorie span{color:#bacbc0;letter-spacing:.1em;font-size:11px;display:block}.profile-summary>p{color:#c6d4cb;margin:28px 0 0;font-size:11px}.nutrient-summary{grid-template-columns:repeat(4,1fr);align-items:center;gap:22px;display:grid}.nutrient-icon{background:#e9efdf;border-radius:50%;place-items:center;width:34px;height:34px;font-family:DM Serif Display,serif;display:grid}.nutrient-summary p{color:#74817a;margin:16px 0 5px;font-size:12px}.nutrient-summary strong{font-family:DM Serif Display,serif;font-size:29px;font-weight:400}.nutrient-summary small,.period-summary small{color:#849088;margin-left:3px;font-family:Noto Sans KR;font-size:10px}.bar{background:#e7e8e3;height:3px;margin-top:14px}.bar i{background:var(--orange);height:100%;display:block}.period-summary{border-left:1px solid var(--line)}.period-summary p{border-top:1px solid #e7e5de;justify-content:space-between;margin:0;padding:10px 0;font-size:12px;display:flex}.period-summary p strong{font-size:13px}.disclaimer{color:#8a918d;margin:12px 0 90px;font-size:11px}.content-heading{align-items:end}.content-heading h2{margin-bottom:9px}.item-count{background:#edf1e8;border-radius:20px;padding:8px 14px;font-size:12px}.ingredient-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.ingredient-card{border:1px solid var(--line);background:#fff;min-height:260px;padding:23px;transition:all .2s;position:relative}.ingredient-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px #20372d14}.ingredient-top{justify-content:space-between;display:flex}.food-emoji{font-size:38px}.ingredient-number{color:#b1b8b2;font-family:DM Serif Display,serif;font-size:16px}.ingredient-card h3{margin:24px 0 5px;font-size:17px}.ingredient-card>strong{color:var(--orange);font-size:14px}.ingredient-card>p{color:#6e7c74;min-height:40px;font-size:12px;line-height:1.65}.tags{flex-wrap:wrap;gap:5px;display:flex}.tags span{color:#627168;background:#f0f2ec;padding:5px 8px;font-size:10px}.recipe-title{margin-top:100px}.recipe-layout{border:1px solid var(--line);background:#fff;grid-template-columns:330px 1fr;min-height:570px;display:grid}.recipe-list{border-right:1px solid var(--line);padding:10px}.recipe-list button{text-align:left;width:100%;color:var(--ink);background:#fff;border:0;grid-template-columns:35px 1fr 20px;align-items:center;gap:8px;padding:17px 12px;display:grid}.recipe-list button>span{color:#a9b0ab;font-family:DM Serif Display}.recipe-list button strong{font-size:13px;display:block}.recipe-list button small{color:#8b938e;font-size:10px}.recipe-list button i{opacity:0;font-style:normal}.recipe-list button.active{background:#edf1e7}.recipe-list button.active i{opacity:1}.recipe-detail{padding:40px 48px}.recipe-hero{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;padding-bottom:28px;display:flex}.recipe-hero h3{margin:7px 0;font-family:DM Serif Display,Noto Sans KR;font-size:31px}.recipe-hero p{color:#738078;max-width:500px;font-size:12px}.recipe-meta{gap:8px;display:flex}.recipe-meta span{border:1px solid var(--line);padding:8px 10px;font-size:11px}.recipe-columns{grid-template-columns:.8fr 1.2fr;gap:55px;padding-top:28px;display:grid}.recipe-columns h4{margin:0 0 17px;font-size:13px}.recipe-columns ul,.recipe-columns ol{margin:0;padding:0;list-style:none}.recipe-columns ul li{border-bottom:1px dotted #d9d9d2;justify-content:space-between;padding:8px 0;font-size:12px;display:flex}.recipe-columns ul b{color:#738078;font-weight:500}.recipe-columns ol li{gap:12px;margin-bottom:15px;font-size:12px;line-height:1.6;display:flex}.recipe-columns ol li span{background:var(--green);color:#fff;border-radius:50%;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.recipe-columns ol p{margin:1px 0}.extra-title{margin-top:25px!important}.extras{color:#7b8780;background:#f4f2eb;padding:10px;font-size:11px}.adjust-card{background:var(--cream);border-left:4px solid var(--orange);justify-content:space-between;align-items:center;gap:30px;margin-top:70px;padding:28px 32px;display:flex}.adjust-card>div:first-child{align-items:center;gap:15px;display:flex}.adjust-card>div:first-child>span{color:var(--orange);font-size:28px}.adjust-card h3{margin:0 0 5px;font-size:15px}.adjust-card p{color:#75817a;margin:0;font-size:11px}.adjust-input{width:min(520px,48%);display:flex}.adjust-input input{border:1px solid #d0cec6;outline:none;flex:1;height:46px;padding:0 14px}.adjust-input button{background:var(--green);color:#fff;border:0;padding:0 20px;font-size:12px;font-weight:700}.adjust-card>.error-message{position:absolute}footer{color:#fff;background:#142e25;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:50px clamp(24px,7vw,110px);display:grid}footer .brand{color:#fff}footer p{text-align:center;color:#becdc4;font-family:DM Serif Display;font-style:italic}footer small{text-align:right;color:#839b8e;font-size:10px}@media (width<=1000px){.hero{grid-template-columns:1fr}.hero-visual{min-height:400px}.summary-grid{grid-template-columns:1fr}.period-summary{border-left:0}.ingredient-grid{grid-template-columns:repeat(2,1fr)}.form-grid.four{grid-template-columns:1fr 1fr}.form-section.split{grid-template-columns:1fr;gap:35px}.recipe-layout{grid-template-columns:1fr}.recipe-list{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.adjust-card{flex-direction:column;align-items:stretch}.adjust-input{width:100%}}@media (width<=650px){.nav{height:64px}.nav-note{display:none}.hero-copy{padding:65px 24px}.hero h1{font-size:46px}.hero-points{flex-wrap:wrap;gap:9px}.hero-points i{display:none}.planner,.results{padding:60px 16px}.section-heading{flex-direction:column;align-items:start}.section-heading>p{display:none}.form-section{padding:25px 18px}.form-grid.four,.form-grid.three,.form-grid.two{grid-template-columns:1fr}.form-section.split{gap:30px}.difficulty-row{flex-wrap:wrap;align-items:flex-start}.summary-grid{display:block}.nutrient-summary{grid-template-columns:1fr 1fr}.ingredient-grid{grid-template-columns:1fr 1fr;gap:8px}.ingredient-card{min-height:245px;padding:17px}.recipe-list{display:block}.recipe-detail{padding:27px 20px}.recipe-hero{flex-direction:column;gap:14px}.recipe-columns{grid-template-columns:1fr;gap:32px}.adjust-card{padding:24px 18px}.adjust-input{flex-direction:column}.adjust-input button{height:44px}footer{text-align:center;grid-template-columns:1fr;gap:12px}footer p,footer small{text-align:center}}:root{font-synthesis:none;text-rendering:optimizelegibility;font-family:Noto Sans KR,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}
