:root{--bg:#f6f5f1;--surface:#fff;--ink:#1d2327;--muted:#5d676d;--line:#e2e0d9;--accent:#1f6f64;--accent-soft:#e3efec;--plus:#1f6f64;--minus:#a2412c;--cliff:#b5452b;--slope:#b8860b;--warn-bg:#fbf1e6;--radius:10px;--num:"SF Mono", "Menlo", "Consolas", ui-monospace, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#15191b;--surface:#1d2326;--ink:#e8ebe9;--muted:#9aa5a9;--line:#2f383c;--accent:#5fbfae;--accent-soft:#203330;--plus:#5fbfae;--minus:#e38b73;--cliff:#e8775b;--slope:#d9ae3f;--warn-bg:#2d251c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#15191b;--surface:#1d2326;--ink:#e8ebe9;--muted:#9aa5a9;--line:#2f383c;--accent:#5fbfae;--accent-soft:#203330;--plus:#5fbfae;--minus:#e38b73;--cliff:#e8775b;--slope:#d9ae3f;--warn-bg:#2d251c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);margin:0;font:15px/1.6 system-ui,-apple-system,Hiragino Sans,Yu Gothic UI,Meiryo,sans-serif}.top{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:baseline;gap:12px;padding:14px 24px;display:flex}.brand{letter-spacing:.02em;font-size:17px;font-weight:700}.brand .sub{color:var(--muted);margin-left:10px;font-size:13px;font-weight:400}.yr{color:var(--muted);font-size:13px}.layout{grid-template-columns:320px minmax(0,1fr);gap:24px;max-width:1280px;margin:0 auto;padding:24px;display:grid}.inputs{flex-direction:column;align-self:start;gap:14px;max-height:calc(100vh - 32px);padding-right:4px;display:flex;position:sticky;top:16px;overflow:auto}.mode{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.mode button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:9px}.mode button.on{background:var(--accent);color:#fff}fieldset{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:10px;margin:0;padding:12px 14px 14px;display:flex}legend{color:var(--muted);padding:0 6px;font-size:13px;font-weight:700}label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}input,select{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:7px;width:100%;min-width:0;padding:7px 9px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px}.yenin{align-items:center;gap:6px;display:flex}.yenin input{text-align:right;font-family:var(--num)}.yenin em{color:var(--muted);white-space:nowrap;font-style:normal}.hint{color:var(--muted);margin:0;font-size:12px}.ghost{font:inherit;border:1px dashed var(--line);color:var(--accent);cursor:pointer;background:0 0;border-radius:7px;padding:7px;font-size:13px}.kid{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"b a x""e e e";align-items:center;gap:4px 6px;display:grid}.kid input{grid-area:b}.kid .age{grid-area:a}.kid button{grid-area:x}.kid select{grid-area:e;font-size:13px}.kid+.kid{border-top:1px dashed var(--line);padding-top:6px}.kid .age{color:var(--muted);white-space:nowrap;font-size:12px}.kid button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px 6px;font-size:16px}body.easy .detail{display:none!important}.disclaimer{color:var(--muted);margin:0;font-size:12px}.result{flex-direction:column;gap:18px;min-width:0;display:flex}.hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px}.k{color:var(--muted);font-size:12px}.hero .v{font-family:var(--num);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:44px;font-weight:700;line-height:1.15}.hero .v small{color:var(--muted);margin-left:4px;font-size:16px;font-weight:400}.hero-sub{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px;padding-top:14px;display:grid}.v2{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.v2.plus{color:var(--plus)}.v2.minus{color:var(--minus)}.v2 .of{color:var(--muted);margin-left:4px;font-size:13px;font-weight:400}.sentence{margin:14px 0 0;font-size:15px}.sentence b{font-family:var(--num)}.slider-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 22px 14px}.slider-head{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;display:flex}.slider-head label{flex-direction:row;font-size:13px}.direct{align-items:baseline;gap:4px;display:flex}.direct input{width:11ch;font-family:var(--num);color:var(--accent);text-align:right;background:var(--bg);padding:4px 8px;font-size:24px;font-weight:700}.direct em{color:var(--muted);font-style:normal}.steps{grid-template-columns:repeat(8,1fr);gap:6px;margin-top:10px;display:grid}.steps button,.wall{font:inherit;font-size:13px;font-family:var(--num);border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;font-variant-numeric:tabular-nums;border-radius:7px;padding:7px 0}.steps button:nth-child(-n+4){color:var(--minus)}.steps button:nth-child(n+5){color:var(--plus)}.steps button:hover,.wall:hover:not(:disabled){border-color:var(--accent)}.steps button:active,.wall:active{transform:translateY(1px)}.walls{grid-template-columns:1fr 1fr;gap:6px;margin-top:6px;display:grid}.wall{text-align:left;color:var(--cliff);padding:7px 10px;font-family:inherit;line-height:1.35}.wall:last-child{text-align:right}.wall:disabled{color:var(--muted);cursor:default;opacity:.6}.wall small{color:var(--muted);font-size:11px;display:block}.slider-card .hint{margin-top:8px}input[type=range]{width:100%;accent-color:var(--accent);background:0 0;border:0;outline:none;height:36px;margin:6px 0 0;padding:0}.slider-scale{color:var(--muted);font-size:11px;font-family:var(--num);justify-content:space-between;display:flex}.cliff-warn{background:var(--warn-bg);border-left:3px solid var(--cliff);border-radius:4px;margin:10px 0 0;padding:8px 12px;font-size:13px}.cliff-warn.danger{border-left-color:var(--minus)}.warnings{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.warnings li{background:var(--warn-bg);border-radius:6px;padding:8px 12px;font-size:13px}.warnings:empty{display:none}.charts{grid-template-columns:1fr 1fr;gap:14px;display:grid}.charts figure{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;margin:0;padding:12px 14px 8px}figcaption{flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:13px;font-weight:700;display:flex}figcaption .unit{color:var(--muted);font-size:11px;font-weight:400}.chart-box{height:240px;position:relative}.legend{color:var(--muted);grid-column:1/-1;margin:-4px 0 0;font-size:12px}.lg{vertical-align:middle;border-top:2px dashed;width:14px;height:0;margin-right:4px;display:inline-block}.lg.cliff{border-color:var(--cliff)}.lg.slope{border-color:var(--slope);border-top-style:dotted}.table-wrap,.tips{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 18px}.table-head{justify-content:space-between;align-items:center;display:flex}h2{margin:0 0 8px;font-size:15px}.tgroup{margin-top:10px}.tgroup h3{color:var(--muted);letter-spacing:.04em;margin:12px 0 4px;font-size:12px;font-weight:700}.row{border-top:1px solid var(--line)}.row summary{cursor:pointer;grid-template-columns:minmax(0,1fr) 130px 170px 18px;align-items:baseline;gap:8px;padding:8px 0;list-style:none;display:grid}.row summary::-webkit-details-marker{display:none}.row summary:after{content:"▸";color:var(--muted);font-size:11px}.row[open] summary:after{content:"▾"}.row .amt,.row .d{font-family:var(--num);text-align:right;font-variant-numeric:tabular-nums}.row .d{color:var(--muted);white-space:nowrap;font-size:12px}.row .d.up{color:var(--minus)}.row .d.good{color:var(--plus)}.row.total summary{cursor:default;font-weight:700}.row.total summary:after{content:""}.notes{background:var(--bg);border-radius:6px;margin:0 0 10px;padding:8px 12px;font-size:12.5px}.note{border-bottom:1px dotted var(--line);padding:5px 0}.note:last-child{border-bottom:0}.note .nl{font-weight:700}.note .nf{color:var(--muted)}.note .ns{font-family:var(--num);word-break:break-all}.note .nr{color:var(--muted);font-size:11.5px}.tag{background:var(--accent-soft);color:var(--accent);white-space:nowrap;border-radius:99px;margin-left:6px;padding:1px 6px;font-size:10.5px}.tips ul{margin:0;padding-left:1.2em;font-size:13px}.tips li{margin:4px 0}@media (width<=1000px){.layout{grid-template-columns:1fr;padding:16px}.inputs{max-height:none;position:static}.charts{grid-template-columns:1fr}}@media (width<=640px){.top{flex-wrap:wrap;padding:12px 16px}.brand .sub{margin:0;display:block}.hero{padding:16px}.hero .v{font-size:34px}.hero-sub{grid-template-columns:1fr 1fr}.hero-sub>div:last-child{grid-column:1/-1}.v2{font-size:18px}.steps{grid-template-columns:repeat(4,1fr)}.slider-card .hint{display:none}.slider-card{z-index:5;border-radius:var(--radius) var(--radius) 0 0;padding:12px 16px;position:sticky;bottom:0;box-shadow:0 -4px 16px #00000014}.row summary{grid-template-columns:minmax(0,1fr) 96px 18px}.row .d{display:none}.chart-box{height:200px}}[hidden]{display:none!important}.side-type{flex-wrap:wrap;align-items:stretch;gap:6px;margin-bottom:10px;display:flex}.side-type button{min-width:0;font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;border-radius:7px;flex:1 1 0;padding:6px 4px;font-size:13px;line-height:1.3}.side-type button small{color:var(--muted);font-size:10.5px;display:block}.side-type button.on{background:var(--accent);border-color:var(--accent);color:#fff}.side-type button.on small{color:#ffffffd9}.side-type .side-blue{flex:100%;align-items:center;gap:8px;font-size:13px;display:flex}.side-type .side-blue[hidden]{display:none}.trio{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.trio .trio-h{color:var(--muted);grid-column:1/-1;font-size:13px}.trio label{font-size:12px}.tag.later{border:1px solid var(--accent);background:0 0}@media print{:root{--bg:#fff;--surface:#fff;--ink:#000;--muted:#444;--line:#bbb}body{font-size:11px}.top{padding:0 0 6px}.layout{padding:0;display:block}.inputs,.mode,.ghost,#toggleNotes,input[type=range],.slider-scale,.cliff-warn,.steps,.walls,.slider-card .hint,.side-type button:not(.on),.side-type .side-blue{display:none!important}.side-type button.on{color:#000;background:0 0;border-color:#bbb}.slider-card{box-shadow:none;padding:6px 10px;position:static}.hero,.slider-card,.charts figure,.table-wrap,.tips{break-inside:avoid;border-color:#bbb}.result{gap:8px}.charts{grid-template-columns:1fr 1fr}.chart-box{height:170px}.row .notes{display:block!important}details.row>.notes{display:block}.row summary:after{content:""}}
