@font-face{font-family:Outfit;src:url('/tools/static/outfit-800-eabf8cb2c0.woff2') format('woff2');font-weight:800;font-display:swap}
@font-face{font-family:Outfit;src:url('/tools/static/outfit-900-090bdae2e8.woff2') format('woff2');font-weight:900;font-display:swap}
:root{--c-primary-50:240 253 244;--c-primary-100:219 238 221;--c-primary-200:183 220 193;--c-primary-300:142 203 167;--c-primary-400:94 179 142;--c-primary-500:45 153 117;--c-primary-600:30 127 99;--c-primary-700:26 102 83;--c-primary-800:22 84 71;--c-primary-900:15 58 49;--c-primary-950:5 31 26;--c-accent:26 102 83;--c-secondary-50:248 248 248;--c-secondary-100:240 240 240;--c-secondary-200:232 232 232;--c-secondary-300:217 217 217;--c-secondary-400:184 184 184;--c-secondary-500:149 149 149;--c-secondary-600:112 112 112;--c-secondary-700:74 74 74;--c-secondary-800:45 45 45;--c-secondary-900:26 26 26;--c-secondary-950:13 13 13;--c-tertiary-50:253 246 227;--c-tertiary-100:250 237 197;--c-tertiary-200:244 220 140;--c-tertiary-300:233 195 80;--c-tertiary-400:222 168 40;--c-tertiary-500:202 142 28;--c-tertiary-600:166 110 22;--c-tertiary-700:130 84 18;--c-tertiary-800:99 63 15;--c-tertiary-900:74 48 13;--c-surface:255 255 255;--c-surface-muted:248 248 248;--c-canvas:255 255 255;--edge:rgb(15 58 49 / 0.12);--edge-soft:rgb(15 58 49 / 0.07);--logo-mark:#14584a;--logo-word:#0f2a23;--logo-accent:#ca8e1c;color-scheme:light}
:root.dark{--c-primary-50:24 52 40;--c-primary-100:32 68 52;--c-primary-200:42 88 67;--c-primary-300:48 112 85;--c-primary-400:42 140 104;--c-primary-500:36 150 112;--c-primary-600:22 104 78;--c-primary-700:27 118 88;--c-primary-800:64 178 137;--c-primary-900:120 212 178;--c-primary-950:188 236 218;--c-accent:110 231 183;--c-secondary-50:28 42 34;--c-secondary-100:35 50 41;--c-secondary-200:46 62 52;--c-secondary-300:62 82 70;--c-secondary-400:132 155 142;--c-secondary-500:155 176 164;--c-secondary-600:178 194 185;--c-secondary-700:202 214 207;--c-secondary-800:224 232 227;--c-secondary-900:240 245 242;--c-secondary-950:248 250 249;--c-tertiary-50:42 35 18;--c-tertiary-100:56 46 22;--c-tertiary-200:78 62 30;--c-tertiary-300:120 95 40;--c-tertiary-400:180 140 55;--c-tertiary-500:214 168 60;--c-tertiary-600:230 188 80;--c-tertiary-700:245 211 110;--c-tertiary-800:250 224 138;--c-tertiary-900:253 235 170;--c-surface:26 40 32;--c-surface-muted:33 49 41;--c-canvas:22 35 28;--edge:rgb(255 255 255 / 0.10);--edge-soft:rgb(255 255 255 / 0.06);--logo-mark:#6ee7b7;--logo-word:#ffffff;--logo-accent:#e9c350;color-scheme:dark}
/* Tokens, fonts and the logo colours are prepended from src/app.css at build time (render/assets.ts). */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:rgb(var(--c-canvas));color:rgb(var(--c-secondary-700));font:400 1.0625rem/1.65 system-ui,-apple-system,'Segoe UI',sans-serif}
a{color:rgb(var(--c-accent));text-underline-offset:.15em}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:2px solid rgb(var(--c-accent));outline-offset:3px}
img{max-width:100%;height:auto}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer}
h1,h2,h3{margin:0;color:rgb(var(--c-secondary-900));font-weight:800;letter-spacing:-.02em;line-height:1.18}
h1{font-family:Outfit,system-ui,sans-serif;font-size:clamp(2rem,4.6vw,3rem)}
h2{font-size:1.4rem}
h3{font-size:1.08rem}
p{margin:0}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.icon{width:16px;height:16px;flex:none}
.shell{width:min(100%,1120px);margin-inline:auto;padding-inline:20px}

/* Header */
.site-header{position:sticky;top:0;z-index:20;background:rgb(var(--c-surface) / .9);border-bottom:1px solid var(--edge);backdrop-filter:blur(10px)}
.header-inner{display:flex;align-items:center;gap:20px;min-height:64px}
.brand,.footer-brand>a{text-decoration:none}
.logo{display:inline-flex;align-items:baseline;gap:.16em;font-size:26px;line-height:1;white-space:nowrap}
.logo svg{width:.78em;height:.78em;flex:none;overflow:visible}
.logo .word{font-family:Outfit,sans-serif;font-weight:900;letter-spacing:-.02em;color:var(--logo-word)}
.site-nav{margin-left:auto;display:flex;align-items:center;gap:4px}
.site-nav>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:7px 12px;border-radius:11px;color:rgb(var(--c-secondary-700));font-size:.9rem;font-weight:600;text-decoration:none;white-space:nowrap}
.site-nav>a:hover,.site-nav>a[aria-current=page]{color:rgb(var(--c-accent));background:rgb(var(--c-secondary-100))}
.site-nav .nav-app{background:rgb(var(--c-primary-600));color:#fff;padding-inline:16px}
.site-nav .nav-app:hover{background:rgb(var(--c-primary-700));color:#fff}
.language-picker{position:relative;color:rgb(var(--c-secondary-700));font-size:.875rem}
.language-picker summary{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:7px 12px;border:1px solid var(--edge);border-radius:999px;cursor:pointer;list-style:none;white-space:nowrap}
.language-picker summary::-webkit-details-marker{display:none}
.language-picker summary:hover{color:rgb(var(--c-accent));border-color:rgb(var(--c-accent) / .5)}
.language-menu{position:absolute;right:0;z-index:30;min-width:180px;margin-top:8px;padding:5px;border:1px solid var(--edge);border-radius:14px;background:rgb(var(--c-surface));box-shadow:0 12px 32px rgb(0 0 0 / .13)}
.language-picker.up .language-menu{left:0;right:auto;bottom:calc(100% + 8px);margin-top:0}
.language-menu a{display:flex;align-items:center;min-height:44px;padding:8px 12px;border-radius:9px;color:rgb(var(--c-secondary-700));text-decoration:none}
.language-menu a:hover,.language-menu a[aria-current=page]{background:rgb(var(--c-secondary-100));color:rgb(var(--c-accent))}

/* Page head */
main{padding-block:28px 64px}
.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;font-size:.85rem;color:rgb(var(--c-secondary-600))}
.breadcrumb a{color:inherit}
.hero{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px 18px;max-width:820px;margin-bottom:28px}
.hero .lead{grid-column:1/-1;margin-top:4px;max-width:64ch;color:rgb(var(--c-secondary-600));font-size:1.08rem;line-height:1.55}
.index-hero{display:block;margin:28px 0 44px}
.eyebrow{margin-bottom:10px;color:rgb(var(--c-accent));font-size:.75rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.tool-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:15px;background:rgb(var(--c-accent) / .10);color:rgb(var(--c-accent));flex:none}
.tool-icon svg{width:26px;height:26px}

/* Workspace */
.workspace{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:24px;align-items:start;margin-bottom:64px}
.card{min-width:0;padding:26px;background:rgb(var(--c-surface));border:1px solid var(--edge);border-radius:20px;box-shadow:0 10px 32px rgb(15 58 49 / .05)}
.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}
.tool-result{position:sticky;top:84px;scroll-margin-top:82px}
.link-button{padding:4px 0;min-height:32px;border:0;background:none;color:rgb(var(--c-accent));font-size:.88rem;font-weight:600;text-decoration:underline;text-underline-offset:.2em}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px}
.field{display:flex;flex-direction:column;gap:6px;min-width:0;margin:0 0 16px;padding:0;border:0}
.field.wide,.rows{grid-column:1/-1}
.field[hidden],.result-row[hidden],[data-system][hidden]{display:none}
.field>label,.field>legend,.rows>legend,.cell label{padding:0;color:rgb(var(--c-secondary-900));font-size:.86rem;font-weight:700}
.field>legend{margin-bottom:6px}
.optional{color:rgb(var(--c-secondary-600));font-weight:500}
.input-wrap{display:flex;align-items:center;min-width:0;min-height:48px;border:1px solid rgb(var(--c-secondary-900) / .18);border-radius:12px;background:rgb(var(--c-surface))}
.input-wrap:focus-within{outline:2px solid rgb(var(--c-accent));outline-offset:2px}
.input-wrap input{flex:1;min-width:0;width:100%;min-height:46px;padding:10px 12px;border:0;border-radius:12px;background:transparent;color:rgb(var(--c-secondary-900));font-variant-numeric:tabular-nums}
.input-wrap input:focus-visible{outline:none}
.input-wrap .suffix{flex:none;padding-right:12px;color:rgb(var(--c-secondary-600));font-size:.9rem;white-space:nowrap}
.field select{width:100%;min-height:48px;padding:10px 12px;border:1px solid rgb(var(--c-secondary-900) / .18);border-radius:12px;background:rgb(var(--c-surface));color:rgb(var(--c-secondary-900))}
.input-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.input-wrap:has(input[aria-invalid=true]){border-color:light-dark(#b42318,#ff8f85);box-shadow:0 0 0 1px light-dark(#b42318,#ff8f85)}
.hint{color:rgb(var(--c-secondary-600));font-size:.84rem;line-height:1.45}
.field-error,.form-error{color:light-dark(#b42318,#ffaaa2);font-size:.86rem;font-weight:600;line-height:1.4}
.field-error[hidden],.form-error[hidden]{display:none}
.segmented{display:flex;gap:4px;padding:4px;border-radius:14px;background:rgb(var(--c-secondary-100))}
.segmented label{position:relative;flex:1;display:flex}
.segmented input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.segmented span{flex:1;display:flex;align-items:center;justify-content:center;min-height:40px;padding:6px 10px;border-radius:10px;color:rgb(var(--c-secondary-700));font-size:.9rem;font-weight:600;text-align:center;line-height:1.2}
.segmented input:checked+span{background:rgb(var(--c-surface));color:rgb(var(--c-secondary-900));box-shadow:0 1px 3px rgb(0 0 0 / .12)}
.segmented input:focus-visible+span{outline:2px solid rgb(var(--c-accent));outline-offset:1px}

/* A stacked list of choices, one tap each, with room for an example under each one */
.option-list{display:flex;flex-direction:column;gap:6px}
.option-list:not(:has(small)){display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.option-list label{position:relative;display:flex}
.option-list input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.option-list span{flex:1;display:flex;flex-direction:column;gap:2px;min-height:48px;justify-content:center;padding:10px 14px;border:1px solid rgb(var(--c-secondary-900) / .14);border-radius:12px;background:rgb(var(--c-surface))}
.option-list strong{color:rgb(var(--c-secondary-900));font-size:.93rem;font-weight:650}
.option-list small{color:rgb(var(--c-secondary-600));font-size:.82rem;line-height:1.35}
.option-list input:checked+span{border-color:rgb(var(--c-accent));box-shadow:0 0 0 1px rgb(var(--c-accent));background:rgb(var(--c-accent) / .06)}
.option-list input:focus-visible+span{outline:2px solid rgb(var(--c-accent));outline-offset:2px}

/* Starting values a tap applies */
.presets{grid-column:1/-1;margin-bottom:14px}
.presets-label{margin-bottom:6px;color:rgb(var(--c-secondary-900));font-size:.86rem;font-weight:700}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{min-height:40px;padding:8px 14px;border:1px solid rgb(var(--c-secondary-900) / .16);border-radius:999px;background:rgb(var(--c-surface));color:rgb(var(--c-secondary-900));font-size:.88rem;font-weight:600}
.chip[aria-pressed=true]{border-color:rgb(var(--c-accent));background:rgb(var(--c-accent) / .1);color:rgb(var(--c-accent))}

/* Repeated rows */
.rows{margin:0 0 12px;padding:0;border:0}
.rows>legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.rows>.hint{margin:0 0 12px}
.row-list{list-style:none;margin:0 0 12px;padding:0;counter-reset:row}
.row-item{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:14px 44px 14px 14px;margin-bottom:10px;border:1px solid var(--edge);border-radius:14px;background:rgb(var(--c-surface-muted))}
.cell{display:flex;flex-direction:column;justify-content:flex-end;gap:4px;min-width:0}
.cell-name{grid-column:1/-1}
.cell-weight,.cell-kcal{grid-column:span 3}
.cell-protein,.cell-carbs,.cell-fat{grid-column:span 2}
.cell label{font-size:.8rem}
.cell .input-wrap,.cell .input-wrap input{min-height:44px}
.cell .input-wrap input{padding-inline:10px}
.cell .suffix{padding-right:10px}
.remove-row{position:absolute;top:8px;right:6px;width:32px;height:32px;padding:0;border:0;border-radius:9px;background:none;color:rgb(var(--c-secondary-600));font-size:1.3rem;line-height:1}
.remove-row:hover{background:rgb(var(--c-secondary-100));color:rgb(var(--c-secondary-900))}
.row-list>.row-item:only-child .remove-row{display:none}
.row-item .field-error{grid-column:1/-1}

/* Buttons */
button.secondary{min-height:44px;padding:10px 16px;border:1px solid rgb(var(--c-secondary-900) / .16);border-radius:12px;background:rgb(var(--c-surface));color:rgb(var(--c-secondary-900));font-size:.92rem;font-weight:700}
button.secondary:hover{background:rgb(var(--c-secondary-100))}
button.secondary:disabled{opacity:.5;cursor:not-allowed}
button.small{min-height:40px;padding:8px 14px;font-size:.86rem}
.cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border-radius:12px;background:rgb(var(--c-primary-600));color:#fff;font-size:.93rem;font-weight:700;text-decoration:none}
.cta:hover{background:rgb(var(--c-primary-700));color:#fff}

/* Result */
.tool-result h2{margin-bottom:6px}
.result-body{transition:opacity .2s ease}
.result-body.is-stale{opacity:.45}
.result-row{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:10px 0;border-bottom:1px solid var(--edge)}
.result-row.primary{padding:14px 0}
.result-row.primary .result-label{color:rgb(var(--c-secondary-900));font-weight:700}
.result-row.primary .result-value{font-family:Outfit,system-ui,sans-serif;font-size:1.9rem;font-weight:800;letter-spacing:-.01em;line-height:1.1}
.result-row.primary .unit{font-size:1rem}
.result-label{min-width:0;overflow-wrap:anywhere}
.result-value{color:rgb(var(--c-secondary-900));font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.result-value .unit{font-weight:600}
.aside{margin-left:6px;color:rgb(var(--c-secondary-600));font-size:.82rem;font-weight:500}
.aside[hidden]{display:none}
.result-heading{margin:20px 0 4px;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgb(var(--c-secondary-600))}
.stale-note{margin-top:12px;color:rgb(var(--c-secondary-700));font-size:.88rem}
.stale-note[hidden]{display:none}
.macro-bar{display:flex;overflow:hidden;height:12px;margin-top:16px;border-radius:99px;background:rgb(var(--c-secondary-100))}
.macro-bar span{transition:width .45s ease}
.macro-bar span:nth-child(1){background:rgb(var(--c-primary-600))}
.macro-bar span:nth-child(2){background:rgb(var(--c-tertiary-500))}
.macro-bar span:nth-child(3){background:rgb(var(--c-accent) / .45)}
/* Where a number sits among published bands */
.scale{margin:14px 0 6px}
.scale-bar{position:relative;height:10px}
.scale-bands{display:flex;height:100%;overflow:hidden;border-radius:99px}
.tone-neutral{background:rgb(var(--c-secondary-200))}
.tone-good{background:rgb(var(--c-primary-600) / .55)}
.tone-warn{background:rgb(var(--c-tertiary-500) / .6)}
.tone-high{background:rgb(var(--c-tertiary-700) / .75)}
.marker{position:absolute;top:50%;width:18px;height:18px;border:3px solid rgb(var(--c-surface));border-radius:50%;background:rgb(var(--c-secondary-900));box-shadow:0 1px 4px rgb(0 0 0 / .3);transform:translate(-50%,-50%);transition:left .3s ease}
.scale-ticks{position:relative;height:18px;margin-top:4px;color:rgb(var(--c-secondary-600));font-size:.75rem;font-variant-numeric:tabular-nums}
.tick{position:absolute;transform:translateX(-50%)}
.result-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.copy-status{min-height:1.3em;margin-top:6px;color:rgb(var(--c-secondary-600));font-size:.84rem}
.handoffs ul{list-style:none;margin:0;padding:0}
.handoffs a{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 0;border-bottom:1px solid var(--edge);color:rgb(var(--c-secondary-900));font-size:.95rem;font-weight:600;text-decoration:none;line-height:1.35}
.handoffs a:hover span{color:rgb(var(--c-accent))}
.handoffs .tool-icon{width:36px;height:36px;border-radius:11px}
.handoffs .tool-icon svg{width:20px;height:20px}
.result-cta{margin-top:20px;padding:16px;border-radius:14px;background:rgb(var(--c-surface-muted))}
.result-cta p{margin-bottom:12px;font-size:.92rem}
.sticky-result{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:25;display:none;align-items:center;gap:10px;padding:12px 16px;border-radius:16px;background:rgb(var(--c-secondary-900));color:rgb(var(--c-surface));text-decoration:none;box-shadow:0 12px 32px rgb(0 0 0 / .25)}
.sticky-result [data-sticky-label]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;color:rgb(var(--c-secondary-300))}
.sticky-result strong{margin-left:auto;font-variant-numeric:tabular-nums;white-space:nowrap}
.sticky-more{display:none}

/* Front-of-pack style rating beside a result */
.flag{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:99px;font-size:.72rem;font-weight:700;letter-spacing:.02em;vertical-align:1px}
.flag[hidden]{display:none}
.flag[data-level=low]{background:light-dark(#dcfce7,rgb(34 197 94 / .16));color:light-dark(#166534,#86efac)}
.flag[data-level=medium]{background:light-dark(#fef3c7,rgb(245 158 11 / .16));color:light-dark(#92400e,#fcd34d)}
.flag[data-level=high]{background:light-dark(#fee2e2,rgb(239 68 68 / .18));color:light-dark(#991b1b,#fca5a5)}

/* Guide */
.guide{max-width:760px;margin:0 0 56px}
.guide section{margin-bottom:34px}
.guide h2{margin-bottom:12px}
.guide p+p{margin-top:12px}
.worked-example{padding:20px 22px;border-left:4px solid rgb(var(--c-accent) / .6);border-radius:4px 14px 14px 4px;background:rgb(var(--c-surface-muted))}
.guide-figure{margin:16px 0 20px;padding:18px;border:1px solid var(--edge);border-radius:16px;background:rgb(var(--c-surface-muted))}
.guide-figure img{display:block;width:min(100%,620px);margin:auto}
.guide-figure figcaption{margin-top:10px;color:rgb(var(--c-secondary-600));font-size:.86rem;text-align:center}
.table-wrap{overflow-x:auto;margin:16px 0 4px;border:1px solid var(--edge);border-radius:14px}
.table-wrap table{width:100%;border-collapse:collapse;font-size:.9rem;font-variant-numeric:tabular-nums}
.table-wrap caption{padding:12px 14px 4px;color:rgb(var(--c-secondary-700));font-size:.84rem;text-align:left}
.table-wrap th,.table-wrap td{padding:8px 10px;border-top:1px solid var(--edge);text-align:right;vertical-align:top}
.table-wrap td{min-width:4.5em}
.table-wrap th:first-child{text-align:left}
.table-wrap thead th{color:rgb(var(--c-secondary-900));font-size:.8rem;font-weight:700}
.table-wrap tbody th{color:rgb(var(--c-secondary-900));font-weight:600}
.app-note{margin:0 0 34px;padding:20px 22px;border:1px solid rgb(var(--c-accent) / .25);border-radius:16px;background:rgb(var(--c-accent) / .05)}
.app-note .eyebrow{margin-bottom:6px}
.app-note h2{margin-bottom:8px;font-size:1.15rem}
.app-note-link{display:inline-block;margin-top:12px;font-weight:700}
.faq-item{padding:14px 0;border-bottom:1px solid var(--edge)}
.faq-item h3{margin-bottom:6px}
.sources ol{padding-left:22px;font-size:.92rem}
.sources li+li{margin-top:6px}
.byline{margin-top:14px;color:rgb(var(--c-secondary-600));font-size:.86rem}

/* Tool cards */
.related{margin-bottom:24px}
.related>h2,.tool-group>h2{margin-bottom:16px}
.tool-group{margin-bottom:44px}
.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tool-card{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid var(--edge);border-radius:17px;background:rgb(var(--c-surface));text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.tool-card:hover{transform:translateY(-2px);border-color:rgb(var(--c-accent) / .45);box-shadow:0 12px 28px rgb(15 58 49 / .08)}
.tool-card h2,.tool-card h3{margin-top:4px;font-size:1.08rem}
.tool-card span:not(.tool-icon){color:rgb(var(--c-secondary-600));font-size:.88rem;line-height:1.5}

/* Footer */
.site-footer{padding:48px 0 26px;border-top:1px solid var(--edge);background:rgb(var(--c-surface))}
.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:32px}
.footer-brand p{max-width:260px;margin-top:12px;color:rgb(var(--c-secondary-600));font-size:.9rem}
.play-badge{display:inline-block;margin-top:14px}
.play-badge img{display:block;width:140px}
.site-footer h2,.site-footer h3{margin:0 0 12px;color:rgb(var(--c-secondary-600));font-size:.75rem;font-weight:600;line-height:1.4;letter-spacing:.1em;text-transform:uppercase}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li+li{margin-top:8px}
.site-footer a:not(.play-badge){font-size:.9rem;text-decoration:none;color:rgb(var(--c-secondary-600))}
.site-footer a:not(.play-badge):hover{color:rgb(var(--c-accent))}
.site-footer .language-menu a[aria-current=page]{color:rgb(var(--c-accent))}
.footer-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:36px;padding-top:24px;border-top:1px solid var(--edge)}
.footer-tools li+li{margin-top:5px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:36px;padding-top:18px;border-top:1px solid var(--edge);color:rgb(var(--c-secondary-600));font-size:.83rem}
.footer-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.theme-picker{display:flex;align-items:center;padding:3px;border:1px solid var(--edge);border-radius:999px}
.theme-picker button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:rgb(var(--c-secondary-600))}
.theme-picker button:hover{color:rgb(var(--c-secondary-900))}
.theme-picker button[aria-pressed=true]{background:rgb(var(--c-secondary-100));color:rgb(var(--c-accent))}

@media(max-width:900px){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){
  .workspace{grid-template-columns:1fr}
  .tool-result{position:static}
  .sticky-result:not([hidden]){display:flex}
  main{padding-bottom:96px}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .shell{padding-inline:16px}
  .header-inner{min-height:58px;gap:8px}
  .logo{font-size:23px}
  .site-nav{gap:0}
  .site-nav>a{padding-inline:8px;font-size:.84rem}
  .site-nav .nav-blog,.site-nav .nav-app{display:none}
  main{padding-top:18px}
  .breadcrumb{margin-bottom:12px}
  .hero{gap:12px;margin-bottom:18px}
  .hero .tool-icon{width:40px;height:40px;border-radius:12px}
  .hero .tool-icon svg{width:22px;height:22px}
  .hero .lead{font-size:.98rem}
  .card{padding:18px;border-radius:18px}
  .field-grid{grid-template-columns:1fr}
  .tool-grid{grid-template-columns:1fr}
  .result-row.primary .result-value{font-size:1.6rem}
  .footer-grid{gap:26px 18px}
  .footer-tools{grid-template-columns:1fr;gap:26px}
  .footer-brand{grid-column:1/-1}
  .footer-bottom{align-items:flex-start;flex-direction:column}
}
@media(max-width:380px){.cell-weight,.cell-kcal{grid-column:1/-1}.cell-protein,.cell-carbs,.cell-fat{grid-column:span 2}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tool-card,.macro-bar span,.result-body,.marker{transition:none}}
