@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap');
[hidden]{display:none!important}
:root{--paper:#f7f5ef;--surface:#fffefa;--ink:#17211d;--muted:#6d756f;--line:#dedfd8;--green:#0d5039;--green-2:#1b6b4e;--lime:#c6ed55;--lime-soft:#eff8cf;--danger:#b6463b;--shadow:0 18px 60px rgba(24,48,37,.09);color-scheme:light}:root[data-theme=dark]{--paper:#111714;--surface:#1a211d;--ink:#eff4ef;--muted:#a1aba4;--line:#344039;--green:#79d3ad;--green-2:#a3e2c4;--lime:#bde451;--lime-soft:#293a22;--danger:#f08a80;--shadow:0 20px 60px rgba(0,0,0,.28);color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans SC','Noto Sans JP',sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.topbar{position:sticky;top:0;z-index:30;height:72px;padding:0 max(28px,calc((100vw - 1380px)/2));display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;letter-spacing:-.04em}.brand-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--green);color:var(--paper);font-weight:800;font-style:italic}.brand b{font-size:17px}.desktop-nav{display:flex;align-self:stretch;gap:34px}.desktop-nav a{position:relative;display:flex;align-items:center;color:var(--muted);font-size:13px;font-weight:600;text-decoration:none}.desktop-nav a.active{color:var(--ink)}.desktop-nav a.active:after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--green);border-radius:2px}.top-actions{justify-self:end;display:flex;align-items:center;gap:9px}.language{display:flex;align-items:center;gap:8px;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:99px;background:var(--surface)}.language select{max-width:110px;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px;font-weight:600;cursor:pointer}.icon-button{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);font-size:18px;cursor:pointer}
main{max-width:1380px;margin:auto;padding:0 28px}.hero{padding:75px 0 44px;text-align:center}.eyebrow{margin:0 0 13px;color:var(--green);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hero h1{margin:0;font-size:clamp(44px,5vw,70px);line-height:1.08;letter-spacing:-.065em}.hero>p:last-child{max-width:620px;margin:22px auto 0;color:var(--muted);font-size:15px;line-height:1.75}
.workspace{display:grid;grid-template-columns:270px 1fr;gap:18px;align-items:start}.tool-sidebar{position:sticky;top:92px}.section-label{margin:0 0 12px;padding-left:10px;border-left:3px solid var(--green);font-size:12px;font-weight:700}.tool-list{display:grid;gap:8px}.tool-button{width:100%;min-height:70px;padding:13px 16px;display:grid;grid-template-columns:36px 1fr 20px;align-items:center;gap:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);cursor:pointer;text-align:left;transition:.2s}.tool-button>span{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--paper);font-size:18px;font-weight:700}.tool-button b{font-size:14px}.tool-button i{font-style:normal;color:var(--muted);opacity:0}.tool-button:hover{transform:translateX(3px)}.tool-button.active{border-color:var(--green);background:var(--green);color:#fff;box-shadow:0 12px 34px rgba(13,80,57,.18)}.tool-button.active>span{background:rgba(255,255,255,.13)}.tool-button.active i{opacity:1;color:#fff}.coach-card{min-height:88px;margin-top:18px;padding:16px;display:grid;grid-template-columns:36px 1fr 20px;align-items:center;gap:11px;border-radius:17px;background:linear-gradient(135deg,var(--lime-soft),color-mix(in srgb,var(--surface) 75%,var(--lime)));color:var(--ink);text-decoration:none}.coach-card>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50% 50% 50% 16%;background:var(--green);color:#fff;font-weight:700}.coach-card b,.coach-card small{display:block}.coach-card b{font-size:13px}.coach-card small{margin-top:4px;color:var(--muted);font-size:10px;line-height:1.4}.coach-card i{font-style:normal}.calculator-shell{display:grid;grid-template-columns:minmax(370px,.92fr) minmax(430px,1.08fr);gap:16px}.panel{min-width:0;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow)}.input-card{padding:28px}.panel-header{display:flex;align-items:center;gap:13px;margin-bottom:25px}.tool-symbol{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:14px;background:var(--lime-soft);color:var(--green);font-size:21px;font-weight:700}.panel-header h2,.panel-header p{margin:0}.panel-header h2{font-size:22px;letter-spacing:-.035em}.panel-header p{margin-top:5px;color:var(--muted);font-size:11px}.presets{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:18px}.presets button{height:43px;border:1px solid var(--line);border-radius:11px;background:var(--paper);color:var(--ink);font-size:12px;cursor:pointer}.presets button:hover,.presets button.active{border-color:var(--green);background:var(--green);color:#fff}.field,.field-group{display:block;margin-bottom:17px}.field>span,.field-group>label{display:block;margin-bottom:8px;font-size:11px;font-weight:700}.field>div{position:relative}.field input,.field select,.field>select{width:100%;height:52px;padding:0 48px 0 14px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);outline:0}.field input:focus,.field select:focus,.field>select:focus,.time-grid label:focus-within{border-color:var(--green)}.field i{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:11px;font-style:normal}.time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.time-grid label{height:52px;display:flex;align-items:center;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.time-grid input{min-width:0;width:100%;padding-left:12px;border:0;outline:0;background:transparent;color:var(--ink);font-size:18px;font-weight:600}.time-grid span{padding-right:10px;color:var(--muted);font-size:10px}.primary-button{width:100%;height:56px;margin-top:4px;border:0;border-radius:13px;background:var(--green);color:#fff;font-weight:700;cursor:pointer;transition:.2s}.primary-button:hover{background:var(--green-2);transform:translateY(-1px)}.form-error{min-height:18px;margin:0;color:var(--danger);font-size:11px}.tip{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:12px;border-radius:11px;background:var(--lime-soft);color:var(--muted)}.tip span{color:var(--green)}.tip p{margin:0;font-size:10px;line-height:1.5}.mobile-tools{display:none}
.result-card{padding:28px;min-height:540px}.result-header{display:flex;justify-content:space-between;align-items:center}.result-header>div{display:flex;align-items:center;gap:9px}.result-header>div>span{width:4px;height:22px;border-radius:9px;background:var(--lime)}.result-header h2{margin:0;font-size:15px}.text-button{border:0;background:transparent;color:var(--muted);font-size:11px;cursor:pointer}.result-empty{min-height:410px;display:grid;place-content:center;text-align:center;color:var(--muted)}.result-empty>span{font-size:55px;color:var(--line)}.result-empty h3{margin:14px 0 6px;color:var(--ink);font-size:16px}.result-empty p{margin:0;font-size:11px}.result-content{padding-top:25px}.metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.metrics.three{grid-template-columns:repeat(3,1fr)}.metric{position:relative;padding:22px 14px;border:1px solid var(--line);border-radius:15px;background:var(--paper);text-align:center}.metric small{display:block;color:var(--muted);font-size:10px}.metric strong{display:inline-block;margin-top:7px;color:var(--green);font-size:clamp(30px,3vw,48px);line-height:1;letter-spacing:-.05em}.metric span{margin-left:5px;color:var(--muted);font-size:11px}.result-content>h3{margin:24px 0 10px;font-size:12px}.result-content table{width:100%;border-collapse:collapse;font-size:11px}.result-content td{padding:9px 7px;border-bottom:1px solid var(--line)}.result-content td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.pace-tags{display:flex;flex-wrap:wrap;gap:7px}.pace-tags span{padding:8px 10px;border-radius:9px;background:var(--lime-soft);color:var(--green);font-size:10px}.notice{padding:40px 20px;text-align:center;color:var(--danger)}.bmi-result>.metric{max-width:290px;margin:auto}.bmi-result>p{text-align:center;color:var(--muted)}.bmi-result.normal .metric{background:#e7f4e8}.bmi-result.above .metric{background:#fff3c9}.bmi-result.obese .metric{background:#f9ded8}.result-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.result-actions button{height:44px;border:1px solid var(--green);border-radius:11px;background:transparent;color:var(--green);font-size:11px;font-weight:700;cursor:pointer}.result-actions button:last-child{background:var(--lime);border-color:var(--lime);color:#19331f}
.value-strip{margin:22px 0 100px;padding:20px 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.value-strip article{display:flex;align-items:center;gap:12px}.value-strip article+article{border-left:1px solid var(--line);padding-left:20px}.value-strip article>span{font-size:24px;color:var(--green)}.value-strip b,.value-strip p{display:block;margin:0}.value-strip b{font-size:12px}.value-strip p{margin-top:4px;color:var(--muted);font-size:9px}.history-section{padding:0 0 100px}.history-section>div:first-child{margin-bottom:22px}.history-section h2{margin:0;font-size:30px;letter-spacing:-.04em}.history-section>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.history-section article{min-width:0;padding:16px;display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.history-section article>span{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:12px;background:var(--lime-soft);color:var(--green);font-weight:700}.history-section article>div{min-width:0;flex:1}.history-section article b{font-size:11px}.history-section article p{margin:4px 0 0;color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-section time{color:var(--muted);font-size:9px}.history-empty{grid-column:1/-1;padding:35px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);text-align:center;font-size:12px}
footer{max-width:1324px;margin:auto;padding:30px 0 45px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);color:var(--muted);font-size:10px}footer .brand{opacity:.7}footer>p a{color:inherit;font-weight:700;text-decoration:none;border-bottom:1px solid var(--line)}footer>p a:hover{color:var(--green);border-color:var(--green)}.toast{position:fixed;left:50%;bottom:30px;z-index:50;transform:translate(-50%,20px);padding:11px 17px;border-radius:99px;background:var(--ink);color:var(--paper);font-size:11px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.workspace{grid-template-columns:220px 1fr}.calculator-shell{grid-template-columns:1fr}.result-card{min-height:400px}.result-empty{min-height:270px}.tool-sidebar{top:82px}}
@media(max-width:760px){.topbar{height:62px;padding:0 16px;grid-template-columns:1fr auto}.desktop-nav{display:none}.brand b{font-size:15px}.brand-icon{width:30px;height:30px}.language{height:38px;padding:0 9px}.language select{max-width:68px}.icon-button{width:38px;height:38px}main{padding:0 16px}.hero{padding:53px 6px 31px;text-align:left}.hero .eyebrow{font-size:9px}.hero h1{max-width:340px;font-size:39px;line-height:1.14}.hero>p:last-child{margin:16px 0 0;font-size:12px}.workspace{display:block}.tool-sidebar{display:none}.calculator-shell{display:block}.mobile-tools{display:flex;gap:7px;overflow:auto;margin:0 -16px 12px;padding:0 16px 5px;scrollbar-width:none}.mobile-tools::-webkit-scrollbar{display:none}.mobile-tools .tool-button{min-width:max-content;min-height:45px;padding:7px 12px;display:flex;border-radius:12px}.mobile-tools .tool-button>span{width:27px;height:27px;border-radius:8px;font-size:13px}.mobile-tools .tool-button b{font-size:11px}.mobile-tools .tool-button i{display:none}.panel{border-radius:18px}.input-card,.result-card{padding:20px}.panel-header{margin-bottom:20px}.panel-header h2{font-size:19px}.panel-header p{font-size:10px}.presets{gap:5px}.presets button{height:42px;font-size:11px}.time-grid input{font-size:16px}.primary-button{height:54px}.result-card{min-height:0;margin-top:12px;scroll-margin-top:72px}.result-empty{min-height:260px}.metrics,.metrics.three{grid-template-columns:1fr}.metric{padding:18px 12px}.metric strong{font-size:42px}.result-content table{font-size:10px}.value-strip{margin:16px 0 70px;padding:18px;grid-template-columns:1fr;gap:16px}.value-strip article+article{padding:16px 0 0;border-left:0;border-top:1px solid var(--line)}.history-section{padding-bottom:70px}.history-section h2{font-size:25px}.history-section>div:last-child{grid-template-columns:1fr}footer{margin:0 16px;padding:25px 0 calc(35px + env(safe-area-inset-bottom));display:block}footer>p{margin-top:18px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
