@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap');
:root{--bg:#f6f4ef;--ink:#272d28;--muted:#71776f;--line:#e2e3d9;--green:#273d32;--lime:#dafa85;--accent:#e86d4a;--white:#fffefa}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Noto Sans KR',-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px;line-height:1.65;word-break:keep-all}button,input{font:inherit}button,a,label,input,summary{-webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}[hidden]{display:none!important}.topbar,main,footer{max-width:1180px;margin:auto}.topbar{height:94px;display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--line)}.brand{font-family:Arial,sans-serif;letter-spacing:-3px;font-size:34px;font-weight:900;text-decoration:none;display:inline-flex;align-items:center}.brand-dot{width:8px;height:8px;background:var(--accent);border-radius:50%;margin-left:5px;margin-top:13px}.top-label,.edition{font-size:10px;letter-spacing:2px;font-weight:700}.edition{margin-left:auto;color:var(--muted)}.intro{padding:62px 0 42px}.eyebrow{font-size:10px;letter-spacing:1.9px;font-weight:700;display:flex;align-items:center;gap:8px}.eyebrow>span{height:6px;width:6px;background:var(--accent);border-radius:50%}h1{font-size:clamp(38px,5vw,61px);letter-spacing:-3px;line-height:1.26;margin:21px 0 22px;font-weight:800}h1>span{color:#637b4d}.intro>p{color:var(--muted);font-size:15px;margin:0;line-height:1.9}.intro-meta{display:flex;align-items:center;gap:12px;margin-top:22px;font-size:11px;color:var(--muted)}.intro-meta i{height:3px;width:3px;background:#b5bbae;border-radius:50%}.workspace{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:26px;align-items:start}.form-card{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:32px}.card-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:27px;border-bottom:1px solid var(--line);gap:10px}.card-top h2{font-size:19px;margin:0;font-weight:700;letter-spacing:-.7px}.pill{font:9px Arial,sans-serif;letter-spacing:1px;padding:6px 9px;background:#eff1e8;border-radius:30px;white-space:nowrap}.question{border:0;border-bottom:1px solid var(--line);margin:0;padding:27px 0 25px;min-width:0}.question legend{float:left;width:100%;margin-bottom:11px;padding:0;font-size:15px;font-weight:700;letter-spacing:-.4px}.question legend+.help,.question legend+.options{clear:both}.weight-question>label{font-size:15px;font-weight:700;display:block;letter-spacing:-.4px}.number{font-size:10px;color:#839176;font-family:Arial,sans-serif;margin-right:8px;letter-spacing:.5px;font-weight:700}.help{margin:0 0 15px;font-size:11px;color:var(--muted);font-weight:400;line-height:1.8}.weight-field{background:#f7f7f2;display:flex;align-items:center;border:1px solid #dadfd1;border-radius:10px;padding:8px 17px;margin:15px 0 9px}.weight-field:focus-within{outline:2px solid #728e51;outline-offset:2px}.weight-field input{width:100%;font-size:29px;border:0;background:none;font-weight:600;color:var(--green);outline:none;min-width:0}.weight-field input::placeholder{font-size:22px;font-weight:400;color:#b0b4a8}.weight-field>span{color:var(--muted);font-size:15px}.weight-question .help{margin-bottom:0}.frequency-options{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;clear:both}.frequency-options label,.options label{position:relative;cursor:pointer}.frequency-options input,.options input{position:absolute;opacity:0;width:1px;height:1px}.frequency-options label>span{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;min-height:45px;font-size:11px;background:#fffefa;white-space:nowrap}.frequency-options input:checked+span{border-color:var(--green);background:#edf2e4;color:var(--green);font-weight:700}.frequency-options input:focus-visible+span,.options input:focus-visible+span{outline:2px solid #779854;outline-offset:3px}.options{display:grid;gap:8px}.options label>span{display:block;border:1px solid var(--line);border-radius:10px;padding:12px 15px 12px 41px;font-size:12px;position:relative}.options label>span:before{content:'';width:14px;height:14px;border:1px solid #c5cabb;position:absolute;left:15px;top:16px;border-radius:50%}.options input:checked+span{border-color:#677b57;background:#f2f5eb}.options input:checked+span:before{border:4px solid var(--green);background:var(--lime)}.options small{display:block;font-size:10px;color:var(--muted);margin-top:3px;line-height:1.8}.question>.options+.help{margin-top:12px;margin-bottom:0}#athlete-question{background:#f5f7ed;padding:20px 12px;border-radius:10px;margin-top:16px;border-bottom:0}#athlete-question legend{font-size:13px}.calculate-button{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:var(--green);color:#fff;padding:17px 20px;border-radius:10px;margin-top:27px;font-size:13px;font-weight:600;transition:background .15s}.calculate-button:hover{background:#395340}.calculate-button>span{font-size:23px;font-weight:400;line-height:1}.form-footnote{font-size:9px;text-align:center;color:var(--muted);margin:12px 0 0}.error{font-size:12px;color:#a83e29;background:#fff0e9;padding:12px;border-radius:8px;margin:18px 0 0}.result-column{position:sticky;top:24px}.result-card{background:var(--green);color:#f6f8ed;border-radius:20px;padding:30px 32px;overflow:hidden;scroll-margin-top:20px}.result-header{display:flex;align-items:center;justify-content:space-between;color:var(--lime)}.result-header .eyebrow{font-size:9px;letter-spacing:1.8px}.result-card h2{font-size:26px;font-weight:500;letter-spacing:-1.1px;line-height:1.55;margin:34px 0 22px}.placeholder-amount{font-size:83px;line-height:1.2;font-family:Arial,sans-serif;color:var(--lime);letter-spacing:-5px}.placeholder-amount>span{font-family:'Noto Sans KR',sans-serif;font-size:17px;color:#b6c4b4;letter-spacing:-.3px}.result-card p{font-size:12px;line-height:1.9;color:#c3cfc0}#empty-result>p{margin-top:17px}.source-tag{font-size:8px!important;letter-spacing:1.8px;border-top:1px solid #52624f;padding-top:18px;margin:23px 0 0!important;color:#adc09f!important}.plate-art{height:174px;position:relative;display:flex;align-items:center;justify-content:center;margin-top:24px}.plate-inner{width:170px;height:170px;border-radius:50%;border:1px solid #6c8060;box-shadow:inset 0 0 0 14px var(--green),inset 0 0 0 15px #50674c;position:relative;transform:rotate(-12deg)}.bean{position:absolute;background:#e6a36e;border-radius:45% 45% 48% 48%;width:35px;height:65px;left:40px;top:49px;transform:rotate(-22deg)}.bean.two{left:69px;top:58px;height:57px;background:#d78861}.bean.three{left:48px;top:85px;transform:rotate(57deg);height:40px;width:28px;background:#eab886}.leaf{position:absolute;width:34px;height:58px;border-radius:100% 0 100% 0;background:var(--lime);left:99px;top:32px;transform:rotate(18deg)}.leaf-two{left:109px;top:68px;transform:rotate(58deg);background:#9bc65e}.art-plus{position:absolute;left:105px;top:117px;color:var(--lime);font-size:24px;font-family:Arial}.start-note{display:flex;gap:14px;padding:25px 10px}.small-icon{width:31px;height:31px;border-radius:50%;background:#e9ecdf;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:20px}.start-note h3{font-size:13px;margin:0 0 5px}.start-note p{font-size:11px;color:var(--muted);line-height:1.9;margin:0}.result-amount{display:flex;align-items:baseline;gap:8px;color:var(--lime);margin:14px 0 7px}.result-amount>#result-grams{font-family:Arial,sans-serif;font-size:clamp(48px,5.7vw,76px);line-height:1.2;letter-spacing:-4px;font-weight:600}.unit{font-family:Arial,sans-serif;font-size:25px}.unit>span{font-family:'Noto Sans KR',sans-serif;font-size:12px;color:#bdcdb4;margin-left:5px}.result-card #result-title{font-size:18px;margin-top:29px;margin-bottom:8px}.result-summary{margin-top:5px}.result-divider{height:1px;background:#52624f;margin:23px 0}.classification{color:var(--lime)!important;font-size:14px!important;font-weight:600;margin-bottom:7px}.formula-box{background:#354c3c;border-radius:9px;padding:16px;margin-top:19px}.formula-box>span{font-size:9px;color:#b3c2aa;display:block}.formula-box>strong{font-size:18px;font-weight:500;display:block;margin:5px 0;color:#eff5dd;letter-spacing:-.4px}.formula-box>small{font-size:9px;display:block;color:#b3c2aa;line-height:1.8}.result-note{font-size:10px!important;padding-left:12px;border-left:2px solid #9bbd6a;margin:18px 0}.meal-note{margin-top:22px}.meal-note strong{font-size:12px;font-weight:500}.meal-note p{font-size:10px;margin:5px 0}.copy-button{width:100%;margin-top:16px;background:var(--lime);color:var(--green);border:0;border-radius:8px;padding:13px 15px;font-size:12px;font-weight:700;display:flex;justify-content:space-between}.copy-button:hover{background:#e9ffb2}.copy-status{font-size:10px!important;margin-bottom:0;min-height:0}.changed{color:#f8c8a7!important;font-size:11px!important}#filled-result:focus{outline:none}.method-section{margin-top:75px;border-top:1px solid var(--line);padding:45px 0 60px}.method-heading h2{font-size:24px;letter-spacing:-1px;font-weight:700;margin:14px 0 7px}.method-heading p{font-size:12px;color:var(--muted);margin:0}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:32px 0}.method-index{font-size:9px;letter-spacing:1px;color:#839176}.method-grid h3{font-size:14px;letter-spacing:-.4px;margin:12px 0 8px}.method-grid p{font-size:11px;color:var(--muted);line-height:2;margin:0}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;font-size:12px;padding:19px 0}summary::-webkit-details-marker{display:none}summary>span{font-size:20px;color:var(--muted)}details[open] summary>span{transform:rotate(45deg)}.details-content{padding:0 0 24px;font-size:12px;color:var(--muted);max-width:850px}.details-content p{line-height:1.95}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:11px;text-align:left;margin:20px 0}caption{text-align:left;margin-bottom:10px;font-size:11px;color:var(--ink)}th,td{padding:12px;border-bottom:1px solid var(--line);white-space:nowrap}th{background:#eceee4;color:var(--ink);font-weight:500}.source-links{display:flex;gap:20px;flex-wrap:wrap}.source-links a{font-size:11px;color:var(--green);text-underline-offset:4px}footer{border-top:1px solid var(--line);display:flex;align-items:center;gap:23px;padding:25px 0 35px}footer .brand{font-size:25px}footer .brand-dot{width:5px;height:5px;margin-top:9px}footer>span{font-size:10px;color:var(--muted)}.footer-right{margin-left:auto;font-size:8px!important;letter-spacing:1.5px}:focus-visible{outline:2px solid #8aab62;outline-offset:4px}@media(min-width:1250px){.intro{position:relative}.intro>p{position:absolute;left:58%;top:121px;font-size:15px}.intro-meta{margin-top:27px}}@media(max-width:1240px){.topbar,main,footer{margin-left:30px;margin-right:30px}}@media(max-width:850px){.workspace{grid-template-columns:1fr;gap:22px}.result-column{position:static}.intro{padding:40px 0 32px}.intro h1{font-size:45px}.result-amount>#result-grams{font-size:74px}.result-card{padding:28px}.method-grid{gap:22px}.plate-art{display:none}.result-card h2{font-size:23px}.placeholder-amount{font-size:65px}.result-header svg{width:28px}.method-section{margin-top:40px}.intro-meta{flex-wrap:wrap}.form-card{padding:26px}}@media(max-width:500px){.topbar,main,footer{margin-left:18px;margin-right:18px}.topbar{height:75px;gap:15px}.top-label{font-size:8px;letter-spacing:1.5px}.edition{font-size:8px;letter-spacing:1px}.brand{font-size:30px}.intro h1{font-size:41px;letter-spacing:-2px}.intro>p{font-size:13px}.intro-meta{font-size:9px;gap:8px}.eyebrow{font-size:8px}.form-card{padding:21px 18px;border-radius:16px}.card-top h2{font-size:18px}.question legend,.weight-question>label{font-size:14px}.frequency-options{gap:4px}.frequency-options label>span{font-size:10px;min-height:43px}.help{font-size:10px}.options label>span{font-size:12px;padding-right:9px}.result-card{border-radius:16px;padding:25px}.result-amount>#result-grams{font-size:66px}.method-grid{grid-template-columns:1fr;gap:23px}.method-grid h3{margin-top:7px}.method-heading h2{font-size:21px}.method-section{padding-top:30px;padding-bottom:35px}.footer-right{display:none}footer{gap:17px}.unit{font-size:22px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
